Re: [tcpm] tcp-auth-opt issue: replay protection

Joe Touch <touch@ISI.EDU> Wed, 30 July 2008 23:18 UTC

Return-Path: <tcpm-bounces@ietf.org>
X-Original-To: tcpm-archive@megatron.ietf.org
Delivered-To: ietfarch-tcpm-archive@core3.amsl.com
Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 3CE5A3A67E5; Wed, 30 Jul 2008 16:18:38 -0700 (PDT)
X-Original-To: tcpm@core3.amsl.com
Delivered-To: tcpm@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 1A4493A68A1 for <tcpm@core3.amsl.com>; Wed, 30 Jul 2008 16:18:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8lS-tRblx0L1 for <tcpm@core3.amsl.com>; Wed, 30 Jul 2008 16:18:36 -0700 (PDT)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) by core3.amsl.com (Postfix) with ESMTP id 104913A67AA for <tcpm@ietf.org>; Wed, 30 Jul 2008 16:18:36 -0700 (PDT)
Received: from [128.9.176.37] (c1-vpn7.isi.edu [128.9.176.37]) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id m6UNIPTi023868 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Wed, 30 Jul 2008 16:18:28 -0700 (PDT)
Message-ID: <4890F69E.9060206@isi.edu>
Date: Wed, 30 Jul 2008 16:17:50 -0700
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.16 (Windows/20080708)
MIME-Version: 1.0
To: Adam Langley <agl@imperialviolet.org>
References: <20080728042451.C7A174B7AD3@kilo.rtfm.com> <488D6968.9010102@isi.edu> <20080728131254.3DD764B88F7@kilo.rtfm.com> <488DD77D.9070608@isi.edu> <20080728144721.AC9184B905A@kilo.rtfm.com> <488DE021.7070307@isi.edu> <20080728164013.422D14B9600@kilo.rtfm.com> <F32F8EC5-70C9-4A7B-A2D2-B00CA43AECFA@nokia.com> <20080730213253.B347F4D52E1@kilo.rtfm.com> <4890E9AE.3000607@isi.edu> <396556a20807301610g35e77244wc4f6a24576b56ea0@mail.gmail.com>
In-Reply-To: <396556a20807301610g35e77244wc4f6a24576b56ea0@mail.gmail.com>
X-Enigmail-Version: 0.95.6
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tcpm@ietf.org
Subject: Re: [tcpm] tcp-auth-opt issue: replay protection
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://www.ietf.org/mailman/private/tcpm>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Sender: tcpm-bounces@ietf.org
Errors-To: tcpm-bounces@ietf.org

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1



Adam Langley wrote:
...
| The ESN is just a 64-bit sequence number. The SEQ field in the TCP
| header is just the lower 32-bits of this counter. Thus, for the
| half-connection from A to B, A knows the ESN exactly for every packet.
| For a packet recved by B, it guesses the ESN based on the closest
| value to it's last understanding. An example for B:
|
| At the beginning of the connection, B knows the ESN for the A->B half
| connection exactly: top 32-bits are 0, bottom 32-bits from the
| handshake.
| For each packet recved it gets the low 32-bits of the ESN, now assume
| that that the ESN is the closest of the 2**32 possible ESN's to the
| previous value of the ECN.

Can you explain the algorithm for "closest"?

| Update the previous value with this new guess.
|
| This is very easy code.
|
| Any packets which are reordered > 2**32 sequence bytes will be
| misclassified and dropped, but 2**32 sequence bytes is a long way.

<individual hat on>

If you update the ESN on the first packet whose Seqno causes you to
determine a rollover, won't any packets that are reordered around it be
dropped? i.e.:

	packets with higher seqnos that arrive earlier cause
	the ESN to be updated earlier; all subsequent packets
	with the pre-increment ESN would be droppped

<individual hat off>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkiQ9p4ACgkQE5f5cImnZruJuQCgieqH6F4onLrTZeM1876Leq5Z
sYwAoK3LVtQ/Ow3uiJ9Ntl5JKH3JQ1Hk
=hP94
-----END PGP SIGNATURE-----
_______________________________________________
tcpm mailing list
tcpm@ietf.org
https://www.ietf.org/mailman/listinfo/tcpm