Per Paul's request, here is an evaluation of the HUSH proposal (http://tools.ietf.org/html/draft-sheffer-ipsecme-hush-00) according to Dan's criteria draft. Comments and questions are more than welcome.

In summary, HUSH is an adaptation of Bellovin's and Merritt's Encrypted Key Exchange (EKE) protocol into IKEv2. As such, it benefits from the two major advantages associated with EKE:

- EKE was published in 1992 and since then has had very extensive, published, review by eminent cryptographers. Although some protocol variants described in the original paper were broken, the variant we are using has been repeatedly analyzed and is believed secure to this day.

- EKE was promptly patented by AT&T. However the patent is due to expire by Oct. 2, 2011, which is probably around the time we can get the RFC published. In other words, the IPR situation is crystal clear and rather advantageous.

To save you the trouble (:-), I consider the protocol's two main disadvantages to be:

- The protocol has never been proven secure, while more recent protocols were designed with formal security proof in mind.

- Due to its cryptographic structure, new MODP DH groups have to be defined; EC groups are not supported, at least not currently.

And now to the criteria:

SEC1: The protocol is based on a zero-knowledge proof. It is resistant to passive attack, active attack, and off-line dictionary attack.

SEC2: The protocol supports perfect forward secrecy and protection against the Denning-Sacco attack.

SEC3: The protocol does not require the loss of identity protection afforded by IKEv2 today. However if the WG so prefers, HUSH can be modified to eliminate one round trip at the cost of identity protection.

SEC4: The protocol does not constrain the "crypto agility" of IKEv2. It must not require fixed and unchangeable cryptographic primitives or Diffie-Hellman groups. HUSH does define its own selection of DH groups, which provides crypto agility for this portion as well (see MISC5 below).

SEC5: The base protocol (i.e. EKE) has received very extensive review. e.g. Patel's paper of 1997 and others. It has not been proven secure.

SEC6: This feature (deriving a long term shared credential, so that the password does not need to be reused) is not specified in HUSH but would be a simple change.

SEC7: A one-way hash of the password can be stored, instead of the cleartext password.

IPR1: The EKE protocol was published by Bellovin and Merritt in 1992.

IPR2: US patent 5,241,599 for EKE was filed Oct. 2, 1991, and issued Aug. 31, 1993. It is due to expire Oct. 2, 2011.

IPR3: I am in the process of filing an IPR statement related to the HUSH draft. I have no idea what licensing policy, if any, Lucent might have regarding this protocol.

MISC1: HUSH adds one round trip to the base IKEv2 exchange. This is comparable with or better than the IKEv2-with-EAP alternative.

MISC2: Compared with the base IKEv2 exchange, each of the HUSH peers performs two additional exponentiations, and a small number of symmetric crypto operations.

MISC3: Performance is independent of the password's length.

MISC4: Internationalization of character-based passwords is supported.

MISC5: The HUSH protocol defines its own DH groups, which use the same primes as IKE's group, but with different generators. As a result, an equivalent-strength group can be negotiated for each IKE MODP group. Sec. 6.1 of the draft explains the cryptographic motivation and provides an initial list of groups. The use of EC groups with EKE is at the moment unsupported, but may be possible in the future, following a paper by Black and Rogaway.

MISC6: HUSH perfectly fits into the request/response nature of IKE.

MISC7: The actual use of the protocol needs to be negotiated, and so does the HUSH-specific DH group.

MISC8: No need for a trusted third party, nor for clock synchronization.

MISC9: The protocol is crypto-agile. To the extent that long-term credential storage requires the use of one-time hash functions, this agility may be harder to implement. But the protocol's strength does *not* depend on the strength of this hash function, simply because guessing the password itself is easier than breaking a hash function, even if it's badly broken.

MISC10: As noted above, at the moment only MODP groups are supported.

MISC11: The related EAP-EKE (http://tools.ietf.org/html/draft-sheffer-emu-eap-eke-06) was implemented by two students as a term project. I do not expect any particular difficulties in implementing HUSH.

Thanks,
        Yaron
_______________________________________________
IPsec mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/ipsec

Reply via email to