Re: [tcpm] TCP-AO: Text for New_Key Process
Eric Rescorla <ekr@networkresonance.com> Tue, 03 February 2009 03:54 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 CF3FD3A6BDE; Mon, 2 Feb 2009 19:54:32 -0800 (PST)
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 603D13A6B46 for <tcpm@core3.amsl.com>; Mon, 2 Feb 2009 19:54:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.564
X-Spam-Level:
X-Spam-Status: No, score=-2.564 tagged_above=-999 required=5 tests=[AWL=0.035, 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 03q4F+C4Yq68 for <tcpm@core3.amsl.com>; Mon, 2 Feb 2009 19:54:30 -0800 (PST)
Received: from romeo.rtfm.com (romeo.rtfm.com [74.95.2.173]) by core3.amsl.com (Postfix) with ESMTP id 56FC23A6A00 for <tcpm@ietf.org>; Mon, 2 Feb 2009 19:54:30 -0800 (PST)
Received: from romeo.rtfm.com (localhost.rtfm.com [127.0.0.1]) by romeo.rtfm.com (Postfix) with ESMTP id 83BCF50822; Mon, 2 Feb 2009 20:10:52 -0800 (PST)
Date: Mon, 02 Feb 2009 20:10:52 -0800
From: Eric Rescorla <ekr@networkresonance.com>
To: touch@ISI.EDU
In-Reply-To: <1233596612.498730c436efe@webmail.isi.edu>
References: <7.1.0.9.2.20081219010400.02bfd3d8@gmail.com> <496d9941.18038e0a.5558.ffffd3a6@mx.google.com> <497F7DDC.70309@isi.edu> <20090128162756.3799450822@romeo.rtfm.com> <B33C7F84-66B7-4F2C-9B04-2BC1716C7994@cisco.com> <498618DA.1070308@isi.edu> <20090202162602.D178450822@romeo.rtfm.com> <1233596612.498730c436efe@webmail.isi.edu>
User-Agent: Wanderlust/2.14.0 (Africa) Emacs/21.3 Mule/5.0 (SAKAKI)
MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka")
Message-Id: <20090203041052.83BCF50822@romeo.rtfm.com>
Cc: tcpm@ietf.org, Allison Mankin <mankin@psg.com>, skonduru@juniper.net
Subject: Re: [tcpm] TCP-AO: Text for New_Key Process
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-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Sender: tcpm-bounces@ietf.org
Errors-To: tcpm-bounces@ietf.org
At Mon, 2 Feb 2009 09:43:32 -0800, touch@ISI.EDU wrote: > > Quoting Eric Rescorla <ekr@networkresonance.com>: > > > At Sun, 01 Feb 2009 13:49:14 -0800, > > Joe Touch wrote: > > > > > > -----BEGIN PGP SIGNED MESSAGE----- > > > Hash: SHA1 > > > > > > FYI - there's an important reason not to use a separate flag bit. Doing > > > so requires parsing the bits of the incoming packet, i.e., this adds > > > extra processing. It also indicates to everyone on the wire that a key > > > change is pending; when using only the KeyID, no extra parsing is needed > > > and the meaning of a changing key is opaque to those on the wire. > > > > The extra parsing hardly strikes me as a severe burden and I don't > > really understand why we would care if an observer knows that a key > > change is imminent. > > > > > > > Using a key flag means that one side can only ever tell the other end > > > "ready to use the new key", not which key (if there could be more than > > > one). That means that if you try it once and it fails and you want to > > > try it again, you might have to wait MSL (a few minutes) to try it > > > again, otherwise an old packet might indicate 'ready to receive the new > > > key" for the wrong key. > > > > Well, I don't really favor they ke flag approach, but it occurs to > > me that this is easily fixed by replacing the key flag with a > > "ready to use" byte. Recall that the length of the MAC is tied > > to the key so if you know the key-id you know the length of the > > MAC. This makes the Length byte partly redundant. Accordingly, > > you could have the following format: > > > > - Kind (1) > > - Length (1) > > - Key-ID (1) > > - Ready-keys [variable] > > - MAC > > That is variable length, even when the active key has not changed; that means > conditional parsing is required, which is cumbersome. s/cumbersome/trivial/ > We wanted to avoid > conditional parsing even to save a single byte (the odd/even mechanism I > suggested in earlier drafts). This seems even more awkward and unnecessary. I'm not sure what you mean "we". I wanted to avoid the odd/even mechanism because I thought it was kludgy, but necause I wanted to avoid conditional parsing. > > > Overall, using just the keyID value as the indicator seems much more > > > flexible to and simple to me. > > > > It's marginally simpler for the implementor of AO and a huge pain for > > everyone else. > > It is simpler for the AO specification, simpler for the implementer, and exactly > the same effort for everyone else (i.e., the user/process changing over the > keys). Well, obviously people can differ about what's simpler, but I don't agree with this. Either the user has to create bogus keys used solely as a key change signal or there has to be logic pulled up into some putative (i.e., nonexistent) application layer key management logic to do the signally you suggest. I don't consider that simpler. -Ekr _______________________________________________ tcpm mailing list tcpm@ietf.org https://www.ietf.org/mailman/listinfo/tcpm
- Re: [tcpm] TCP-AO: Text for New_Key Process Gregory M. Lebovitz
- Re: [tcpm] TCP-AO: Text for New_Key Process Alfred Hönes
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Lars Eggert
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Brian Weis
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Brian Weis
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Eddy, Wesley M. (GRC-RCN0)[VZ]
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Caitlin Bestler
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Ron Bonica
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla
- Re: [tcpm] TCP-AO: Text for New_Key Process Joe Touch
- Re: [tcpm] TCP-AO: Text for New_Key Process Eric Rescorla