Re: [tcpm] question about TCP-AO and rekeying

Joe Touch <touch@ISI.EDU> Wed, 17 June 2009 15:42 UTC

Return-Path: <touch@ISI.EDU>
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 F1FDC28C28B for <tcpm@core3.amsl.com>; Wed, 17 Jun 2009 08:42:05 -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 tbDCZCM-Eygh for <tcpm@core3.amsl.com>; Wed, 17 Jun 2009 08:42:04 -0700 (PDT)
Received: from vapor.isi.edu (vapor.isi.edu [128.9.64.64]) by core3.amsl.com (Postfix) with ESMTP id 85EDA3A6D65 for <tcpm@ietf.org>; Wed, 17 Jun 2009 08:42:00 -0700 (PDT)
Received: from [75.215.131.214] (214.sub-75-215-131.myvzw.com [75.215.131.214]) by vapor.isi.edu (8.13.8/8.13.8) with ESMTP id n5HFfqGH003033; Wed, 17 Jun 2009 08:41:54 -0700 (PDT)
Message-ID: <4A390EC0.6070003@isi.edu>
Date: Wed, 17 Jun 2009 08:41:52 -0700
From: Joe Touch <touch@ISI.EDU>
User-Agent: Thunderbird 2.0.0.21 (Windows/20090302)
MIME-Version: 1.0
To: Eric Rescorla <ekr@networkresonance.com>
References: <4A2AB973.3030203@isi.edu> <20090616131807.75C481BC6EB@kilo.networkresonance.com> <4A37A202.9020500@isi.edu> <20090617054551.A4E0C1BCA23@kilo.networkresonance.com> <4A388C37.3030703@isi.edu> <20090617140939.A3AB61BCC72@kilo.networkresonance.com>
In-Reply-To: <20090617140939.A3AB61BCC72@kilo.networkresonance.com>
X-Enigmail-Version: 0.95.7
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
X-ISI-4-43-8-MailScanner: Found to be clean
X-MailScanner-From: touch@isi.edu
Cc: tcpm Extensions WG <tcpm@ietf.org>
Subject: Re: [tcpm] question about TCP-AO and rekeying
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: <http://www.ietf.org/mail-archive/web/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>
X-List-Received-Date: Wed, 17 Jun 2009 15:42:06 -0000

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



Eric Rescorla wrote:
> At Tue, 16 Jun 2009 23:24:55 -0700,
> Joe Touch wrote:
>> Eric Rescorla wrote:
>> ...
>>>> However, the invariant is twofold:
>>>>
>>>> 	a) for a given packet, only one MKT applies
>>>>
>>>> 	b) for two endpoints with multiple MKTs,
>>>> 	the *same* MKT applies.
>>> I don't see that this is true. As I understand the current design
>>> there's no reason that both sides can't use different MKTs
>>> indefinitely.
>> Each side can use a different MKT to transmit. However, if side A uses
>> MKT X to transmit, then side B needs to know to use MKT X to receive. If
>> side A matches MKT X on transmit and side B matches MKT Y on receive,
>> then there's a problem for that connection.
>>
>> So let's rephrase, recognizing that there are two MKTs at any given time
>> (one for transmit on each side, and the same pair for receive on the
>> opposite side).
>>
>> b) for two endpoints, if a given packet matches MKT on one side during
>> transmit, it must match the corresponding MKT on the other side during
>> receive.
> 
> Right, but this doesn't require ordering or non-overlapping, as far as
> I can tell.  It merely requires that at any time there only be one MKT
> corresponding to any given socketpair/key-id.

That is only possible with either non-overlapping or ordering to resolve
overlaps. Note that the MKT has to be unique for incoming packets given
a socketpair/keyid. For outgoing SYNs, the MKT has to be unique within
just a socketpair, because the keyid hasn't been determined yet.

If we prevent overlaps altogether, we may impact utility. We won't be
able to have things like:

	A -> B use MKT X

	A -> * use MKT Y

	* -> * use MKT Z

In this case, A->B matches all three, but having a default 'catchall'
can be very useful, if not expected.

If we allow overlap resolution, then we need to ensure that both sides
resolve to the same result.

Joe
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAko5Dr8ACgkQE5f5cImnZrvSwQCg5ptXoi+HwGLED8kuPVNZt23I
PHYAn0xmUSP1/wo7rfrzHptIXTxwzTgk
=2uVO
-----END PGP SIGNATURE-----