Subject: [secdir] secdir review of draft-harkins-ipsecme-spsk-auth-03

From: Richard L. Barnes <[email-masked]>
Date: Wed, 20 Apr 2011 14:55:33 -0400

I have reviewed this document as part of the security directorate's ongoing effort to review all IETF documents being processed by the IESG.  These comments were written primarily for the benefit of the security area directors.  Document editors and WG chairs should treat these comments just like any other last call comments.

This document defines a new mechanism for using pre-shared keys for IPsec authentication in IKE, in a way that addresses some vulnerabilities of the current mechanism.

I am not a cryptographer, but the cryptographic protocol described in this document seems basically sound, and its security properties are explained well in the Security Considerations.

A question and couple of minor comments follow.
--Richard

Question: I haven't thought deeply about it, but it's not clear to me what the advantage is over this cryptographic protocol vs. the SRP protocol that has been used for TLS [RFC5054], besides the fact that SRP requires a user "identity" in addition to a password.

Minor: There appears to be a typo at the top of Page 7.  It seems that the equation should be as follows:
scalar-op(x,Y) = element-op(Y, scalar-op(x-1), Y)), for x > 1
Also, for completeness, you might note that scalar-op(0,Y) is the identity element of the group.

Minor: It might be helpful to mention somewhere that scalars are always non-negative integers.

---

From: "Dan Harkins" <[email-masked]>
Date: Thu, 21 Apr 2011 17:12:01 -0700 (PDT)

Hi Richard,

  Thank you for reviewing my draft. Responses inline....

On Wed, April 20, 2011 11:55 am, Richard L. Barnes wrote:
> I have reviewed this document as part of the security directorate's
> ongoing effort to review all IETF documents being processed by the IESG.
> These comments were written primarily for the benefit of the security area
> directors.  Document editors and WG chairs should treat these comments
> just like any other last call comments.
>
> This document defines a new mechanism for using pre-shared keys for IPsec
> authentication in IKE, in a way that addresses some vulnerabilities of the
> current mechanism.
>
> I am not a cryptographer, but the cryptographic protocol described in this
> document seems basically sound, and its security properties are explained
> well in the Security Considerations.
>
> Question: I haven't thought deeply about it, but it's not clear to me what
> the advantage is over this cryptographic protocol vs. the SRP protocol
> that has been used for TLS [RFC5054], besides the fact that SRP requires a
> user "identity" in addition to a password.

  SRP is a client-server protocol in which one side has salt and a
verifier and the other has a password. Since IKE is not a client-server
protocol, and either side can initiate to the other, each side needs
access to the password. To implement SRP though, they would have to agree
on some salt and produce a verifier to store along with the password.
That sort of defeats the whole point of using a verifier protocol like
SRP. And it seems like we'd be shoehorning in a protocol that isn't really
a good fit.

> Also, for completeness, you might note that scalar-op(0,Y) is the identity

  Yes, thanks for catching that.

> Minor: It might be helpful to mention somewhere that scalars are always

  You're right; that would be helpful. I'll do that.

  Thanks again for the review,

  Dan.

---

From: "Richard L. Barnes" <[email-masked]>
Date: Fri, 22 Apr 2011 04:58:12 -0400

Hi Dan,

> SRP. And it seems like we'd be shoehorning in a protocol that isn't really

Thanks, that answer makes sense.  Consider my comments resolved!

--Richard