Re: [Cfrg] new authenticated encryption draft

David McGrew <mcgrew@cisco.com> Fri, 15 September 2006 11:47 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1GOCAe-0001fP-8Y; Fri, 15 Sep 2006 07:47:48 -0400
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1GOCAd-0001fF-8f for cfrg@ietf.org; Fri, 15 Sep 2006 07:47:47 -0400
Received: from sj-iport-6.cisco.com ([171.71.176.117]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1GOCAc-0001oN-FL for cfrg@ietf.org; Fri, 15 Sep 2006 07:47:47 -0400
Received: from sj-dkim-1.cisco.com ([171.71.179.21]) by sj-iport-6.cisco.com with ESMTP; 15 Sep 2006 04:47:46 -0700
Received: from sj-core-2.cisco.com (sj-core-2.cisco.com [171.71.177.254]) by sj-dkim-1.cisco.com (8.12.11.20060308/8.12.11) with ESMTP id k8FBlje6025449; Fri, 15 Sep 2006 04:47:45 -0700
Received: from xbh-sjc-221.amer.cisco.com (xbh-sjc-221.cisco.com [128.107.191.63]) by sj-core-2.cisco.com (8.12.10/8.12.6) with ESMTP id k8FBljYp007082; Fri, 15 Sep 2006 04:47:45 -0700 (PDT)
Received: from xfe-sjc-211.amer.cisco.com ([171.70.151.174]) by xbh-sjc-221.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 15 Sep 2006 04:47:45 -0700
Received: from [192.168.1.100] ([10.32.254.211]) by xfe-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Fri, 15 Sep 2006 04:47:44 -0700
In-Reply-To: <D68500C6C35614498F63C0AE96BBC6A5CE53E7@CLDXCH02.tbu.com>
References: <74A5A0C3-8E6E-47B4-A67B-C51ED97B2897@mindspring.com><da7b3ce30608201147u12c0c2f6s61694713e59cfa4a@mail.gmail.com><p06230910c10e98a55c4c@10.30.1.9><f207274d0608221905t2797ca6ew2a769dd5d9e3d410@mail.gmail.com><3D640F53-58F3-4AE4-AEFC-145BBD9BC9A0@cisco.com><f207274d0609011652m3bb76587xdd6cd9e1d3140e63@mail.gmail.com><7BA4156B-14B4-4BB1-BEAD-2237F5B3834D@cisco.com><f207274d0609111132w655f9b7er2e55c20e67973da5@mail.gmail.com><1C7CA0AE-3BCC-437B-891F-0D2831BFBFBC@cisco.com><20060914135834.90452.qmail@cr.yp.to> <D219FE3C-0E02-4EFD-B0B6-7EE85A675EE4@cisco.com> <D68500C6C35614498F63C0AE96BBC6A5CE53E7@CLDXCH02.tbu.com>
Mime-Version: 1.0 (Apple Message framework v752.2)
Message-Id: <9FEA39E2-6B8C-48E6-A725-4E11B4EE0966@cisco.com>
From: David McGrew <mcgrew@cisco.com>
Subject: Re: [Cfrg] new authenticated encryption draft
Date: Fri, 15 Sep 2006 04:47:42 -0700
To: Doug Whiting <DWhiting@hifn.com>
X-Mailer: Apple Mail (2.752.2)
X-OriginalArrivalTime: 15 Sep 2006 11:47:44.0619 (UTC) FILETIME=[C1F5A3B0:01C6D8BC]
DKIM-Signature: a=rsa-sha1; q=dns; l=12536; t=1158320865; x=1159184865; c=relaxed/simple; s=sjdkim1002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=mcgrew@cisco.com; z=From:David=20McGrew=20<mcgrew@cisco.com> |Subject:Re=3A=20[Cfrg]=20new=20authenticated=20encryption=20draft; X=v=3Dcisco.com=3B=20h=3DAcRp9F5KlZMnVMl8WSYFhCpbBdA=3D; b=gmpXhPEHE7DgRKF/QmO7roeyfObITB1N1KOFX/FZelh7/nkmJ/+2jOuPOglELKq/5WLQEwnK mM5+lqYYPlswrZLwoIzHjvU23YpzYWQ/JZAX7YLgW5hboiAh+2Z1mBV6;
Authentication-Results: sj-dkim-1.cisco.com; header.From=mcgrew@cisco.com; dkim=pass ( 29 extraneous bytes; sig from cisco.com verified; );
X-Spam-Score: 0.5 (/)
X-Scan-Signature: ed68cc91cc637fea89623888898579ba
Cc: cfrg@ietf.org
X-BeenThere: cfrg@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Crypto Forum Research Group <cfrg.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:cfrg@ietf.org>
List-Help: <mailto:cfrg-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/cfrg>, <mailto:cfrg-request@ietf.org?subject=subscribe>
Content-Type: multipart/mixed; boundary="===============0721301072=="
Errors-To: cfrg-bounces@ietf.org

Hi Doug,

On Sep 14, 2006, at 7:17 PM, Doug Whiting wrote:

> David, I have heard this argument as well for years. I guess I  
> understand it in the abstract, but I still don't fully get how/ 
> where it would really work or be needed. Do we currently have a  
> "segmented" seqNum version of ESP?
> If not, I don't understand how you can make the sequence numbers  
> work across "uncoordinated" crypto modules. That is, anti-replay  
> will cause problems it seems to me, both on transmit and receive,  
> if there is no coordination. If there is a coordination, why can't  
> the IV space just be divided among them (e.g., for N modules, use  
> log2(N) bits in the IV to distinguish among the modules). Seems  
> like that one-time setup would be very easy to do in a multi-module  
> system, and it avoids the need for random IVs to avoid collisions,  
> since each module can then just use a counter.
>
> So I guess that, like Dan, I'm asking for a little better  
> explanation of how a system requiring random IVs might actually be  
> structured. If I can't picture at least one realistic scenario, I  
> have a hard time seeing the need for it in a standard. Hopefully  
> somebody can turn on the light bulb for me.

I'm not sure that ESP does needs to have random IVs. A better example  
of an application that would benefit from their use of would be an  
one that uses long-term shared secrets, especially a challenge/ 
response protocol.  Perhaps the draft didn't make it clear that it  
was intended for use in this sort of protocol as well.

In a C/R application, in order to use a sequence number as a nonce,  
there will be a need to have those values checkpointed into non- 
volatile memory, and there will be a need for the application to  
coordinate an "IV contribution" among the devices that share the  
secret.  If we require this sort of coordination, it makes it harder  
to distribute the application across multiple nodes.  In particular,  
there are existing applications (like mirrored servers) that don't do  
this sort of coordination because they don't currently need it.  If  
we require additional coordination, we'll give those applications a  
motivation to not use our spec, even if it is theoretically possible  
to provide that coordination.

David

>
> Doug Whiting
>
> From: David McGrew [mailto:mcgrew@cisco.com]
> Sent: Thu 9/14/2006 5:01 PM
> To: D. J. Bernstein
> Cc: cfrg@ietf.org
> Subject: Re: [Cfrg] new authenticated encryption draft
>
> Hi Dan,
>
> On Sep 14, 2006, at 6:58 AM, D. J. Bernstein wrote:
>
> > David McGrew writes:
> >> When a single key is used by multiple encryptors, a unique IV needs
> >> to have a distinct IV contribution for each encryptor.  In some
> >> cases, it may not be convenient for the encryptors to coordinate
> >> among themselves to agree on the values of the IV contribution.
> >
> > Specific references, please. What are those cases?
>
> from my earlier mail: "For example, consider the case in which there
> is a cluster of devices that share an encryption key in order to
> provide a load balancing or failover capability."  For that matter,
> any protocol which uses a long-term shared secret key, and which is
> not explicitly designed to support a distributed implementation, but
> which ends up being implemented in a distributed manner anyway.
>
> > Why can't the key
> > generator hand out a counter along with the key?
>
> You're assuming that there is a central entity distributing the key;
> why should we enforce that limitation on our systems?  Distributed
> systems are non-trivial, and forcing the use of unique IVs on them
> would create a need for coordination that could otherwise be
> avoided.  If a central authority coordinates all of the counters,
> this would force a single point of failure on the system.  If the
> counters are managed in a distributed manner (e.g. a VRRP like
> election), there is a chance of failure due to a network partition
> that bifurcates a cluster.
>
> > Who exactly is sharing
> > a single secret key among a large number of parties without having a
> > list of the parties? What's the name of the software or hardware?  
> How
> > exactly does the promiscuous key sharing work? Is it secure? If it
> > isn't
> > actually secure, why should we even consider screwing up our APIs to
> > support it?
>
> Allowing random IVs is screwing up our APIs?
>
> Your final question neglects the first rationale that I gave for
> random IVs: with deterministic IVs, a provision must be made in order
> to ensure that the IV maintains its uniqueness across reboots, and it
> is not always convenient or desirable to do so.  That reason alone is
> sufficient.
>
> David
>
> >
> > ---D. J. Bernstein, Professor, Mathematics, Statistics,
> > and Computer Science, University of Illinois at Chicago
> >
> > _______________________________________________
> > Cfrg mailing list
> > Cfrg@ietf.org
> > https://www1.ietf.org/mailman/listinfo/cfrg
>
> _______________________________________________
> Cfrg mailing list
> Cfrg@ietf.org
> https://www1.ietf.org/mailman/listinfo/cfrg
>

_______________________________________________
Cfrg mailing list
Cfrg@ietf.org
https://www1.ietf.org/mailman/listinfo/cfrg