RE: [IPsec] Re: Last call comments for draft-lepinski-dh-groups-01

Tero Kivinen <kivinen@iki.fi> Wed, 17 October 2007 12:25 UTC

Return-path: <ipsec-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1Ii7xX-0001tT-UP; Wed, 17 Oct 2007 08:25:11 -0400
Received: from ipsec by megatron.ietf.org with local (Exim 4.43) id 1Ii7xW-0001rk-PS for ipsec-confirm+ok@megatron.ietf.org; Wed, 17 Oct 2007 08:25:10 -0400
Received: from [10.90.34.44] (helo=chiedprmail1.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1Ii7xV-0001pb-Uo for ipsec@ietf.org; Wed, 17 Oct 2007 08:25:09 -0400
Received: from fireball.acr.fi ([83.145.195.1] helo=mail.kivinen.iki.fi) by chiedprmail1.ietf.org with esmtp (Exim 4.43) id 1Ii7xV-0003F5-6y for ipsec@ietf.org; Wed, 17 Oct 2007 08:25:09 -0400
Received: from fireball.kivinen.iki.fi (localhost [127.0.0.1]) by mail.kivinen.iki.fi (8.13.8/8.12.10) with ESMTP id l9HCOdA3007565 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Wed, 17 Oct 2007 15:24:39 +0300 (EEST)
Received: (from kivinen@localhost) by fireball.kivinen.iki.fi (8.13.8/8.12.11) id l9HCOYtE023326; Wed, 17 Oct 2007 15:24:34 +0300 (EEST)
X-Authentication-Warning: fireball.kivinen.iki.fi: kivinen set sender to kivinen@iki.fi using -f
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Message-ID: <18197.65282.740214.291883@fireball.kivinen.iki.fi>
Date: Wed, 17 Oct 2007 15:24:34 +0300
From: Tero Kivinen <kivinen@iki.fi>
To: Scott Fluhrer <sfluhrer@cisco.com>
Subject: RE: [IPsec] Re: Last call comments for draft-lepinski-dh-groups-01
In-Reply-To: <013301c8102d$2e14ffc0$53f4200a@amer.cisco.com>
References: <47137114.1040906@certicom.com> <OFF45F7C07.11EACC37-ON85257375.00593EEC-85257375.005ABA13@certicom.com> <B356D8F434D20B40A8CEDAEC305A1F2404B92291@esebe105.NOE.Nokia.com> <4714DABE.3020404@certicom.com> <013301c8102d$2e14ffc0$53f4200a@amer.cisco.com>
X-Mailer: VM 7.19 under Emacs 21.4.1
X-Edit-Time: 30 min
X-Total-Time: 37 min
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 244a2fd369eaf00ce6820a760a3de2e8
Cc: kent@bbn.com, mlepinski@bbn.com, DBrown@certicom.com, Pasi.Eronen@nokia.com, paul.hoffman@vpnc.org, ipsec@ietf.org
X-BeenThere: ipsec@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Discussion of IPsec protocols <ipsec.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/ipsec>, <mailto:ipsec-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:ipsec@ietf.org>
List-Help: <mailto:ipsec-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/ipsec>, <mailto:ipsec-request@ietf.org?subject=subscribe>
Errors-To: ipsec-bounces@ietf.org

Scott Fluhrer writes:
> > With regards to our IKE implementation, we default to RFC 
> > 4753 for groups 19/20/21 as initiator and use the other 
> > format for the other curves.
> > 
> > Perhaps it should explicitly state this fact ("MUST"?) in 
> > ecc-groups-10-WGLC-0.
> 
> That, at least to me, would seems to be reasonable.

As we do have one specified way how to format for the KE and shared
secrets defined as RFC (RFC4753), I see no point of using any other
format now. I think the draft-ietf-ipsec-ike-ecc-groups-10.txt should
be fixed to use the same format too, and not to define new formats.

If we want to add support for point compression, I see that only way
to do that is to add duplicate numbers for those elliptic curves one
with point compression and another without. We cannot really negotiate
the support for point compression as KE payload is already used in the
first packet we send from initiator to the responder. With separate
group numbers we could get interoperability by using
INVALID_KE_PAYLOAD notification with one extra round trip.

On the other hand if I have understood correctly the benefit from
point compression is saving less than 64 bytes from the final payload.
The first packet is 28 bytes of header + 44 bytes of SA payload (one
exact alogorithm set) + 8 (KE payload header len) + KE payload len +
36 (32 byte nonce payload) + 2 * 28 (2 * NAT detection payloads) = 172
bytes + KE data length. I.e using 512 bit elliptic curve that makes
the first packet 300 bytes without point compressioon and 236 bytes
with point compression. Both will still keep the packet length way
below the threshold that would start causing fragmentation and so on.
Bandwidth saving concerns for packets which are sent once for every 8
hours or so is not really meaningful.

> > As I noted in a previous e-mail, (non)-interoperability 
> > extends to the shared secret. In the other standards, as well 
> > as the current draft-lepinski-dh-groups-01, the shared secret 
> > is the x-coordinate. This is not the case with RFC 4753 which 
> > includes both x and y. Compare the shared-secret of the 
> > 256-bit curve in draft-lepinski-dh-groups-01 page
> > 21 and rfc 4753 page 9.
> > 
> > draft-lepinski-dh-groups-01 should also describe the format 
> > of the shared secret.

The current text in draft-lepinski-dh-groups-01.txt says you use
formatting specified in the RFC2409. It does not really say anything
about IKEv2. RFC4306 does not specify how to use it with elliptic
curves. RFC2409 says we only send and use x (no mention of padding,
and only has EC2N groups). RFC4753 says we use both x and y (padded
and concatenated, and only has ECP groups).

Draft-lepinski-dh-groups-01.txt should be updated to refer to RFC4753
for IKEv2 case and use that formatting specified there.

The test vectors should be provided in format where both x and y of
the secret is given (even if some protocols referenced there do use
only x of it). There is no need to have exact payload encodings as is
done in RFC4753 as this draft defines groups for other use than IKEv2
too, but it would be useful to have both girx and giry and perhaps
g^ir too (using RFC4753 terminology to refer those values here).
-- 
kivinen@safenet-inc.com


_______________________________________________
IPsec mailing list
IPsec@ietf.org
https://www1.ietf.org/mailman/listinfo/ipsec