Network Working Group Y. Nir Internet-Draft Check Point Intended status: Standards TrackApril 8,June 11, 2016 Expires:October 10,December 13, 2016 Using Edwards-curve Digital Signature Algorithm (EdDSA) in the Internet Key Exchange (IKEv2)draft-nir-ipsecme-eddsa-00draft-nir-ipsecme-eddsa-01 Abstract This document describes the use of the Edwards-curve digital signature algorithm in the IKEv2 protocol. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire onOctober 10,December 13, 2016. Copyright Notice Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Conventions Used in This Document . . . . . . . . . . . .23 2. The "Identity" Hash Identifier . . . . . . . . . . . . . . . 3 3. Security Considerations . . . . . . . . . . . . . . . . . . . 3 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 3 5. Normative References . . . . . . . . . . . . . . . . . . . . 3 Appendix A. ASN.1 Objects . . . . . . . . . . . . . . . . . . . 5 A.1. ASN.1 Object for Ed25519 . . . . . . . . . . . . . . . . 5 A.2. ASN.1 Object for Ed448 . . . . . . . . . . . . . . . . . 5 Author's Address . . . . . . . . . . . . . . . . . . . . . . . .45 1. Introduction The Internet Key Exchange protocol [RFC7296] can use arbitrary signature algorithms as described in [RFC7427]. The latter RFC defines the SIGNATURE_HASH_ALGORITHMS notification where each side of the IKE negotiation lists its supported hash algorithms. This assumes that all signature schemes involve a hashing phasebeforefollowed by a signaturephase, which makesphase. This made sense because most signature algorithms either cannot sign messages bigger than their key or truncate messages bigger than their key.[I.D-eddsa]EdDSA ([I.D-eddsa]) defines signaturealgorithmsmethods that do not requirepre- hashingpre-hashing of the message. Unlike other methods, thesesignature algorithmsaccept arbitrary-sized messages, so no pre-hashing is required. These methods are called Ed25519 and Ed448, which respectively use the Edwards 25519 and the Edwards 448 ("Goldilocks") curves. Although that document also defines pre-hashed versions of these algorithm, those versions are not recommended for protocols where the entireto-be-signedto- be-signed message is available at once.[I.D-eddsa]EdDSA defines the binary format of the signatures that should be used in the "Signature Value" field of the Authentication Data Format in section 3.[I.D-pkix-newcurves] definedThe "EdDSA, Ed25519, Ed448, Curve25519 and Curve448 for X.509" document ([I.D-curdle-pkix]) defines theOIDsobject identifiers (OIDs) for thesetwosignature methods.ToFor convenience, these OIDs are repeated in Appendix A. In order to signal within IKE that no hashing needs to bedone. Adone, we define a new value hasto be signalledin the SIGNATURE_HASH_ALGORITHMS notification, one that indicates that no hashing is performed. 1.1. Conventions Used in This Document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. 2. The "Identity" Hash Identifier This document defines a new value called "Identity" (value TBA by IANA) in the hash algorithm registry for use in the SIGNATURE_HASH_ALGORITHMS notification. Inserting this new value into the notification indicates that the receiver supports at least one signature algorithm that accepts arbitrary-sized messages such as Ed25519 and Ed448. Ed25519 and Ed448 are only defined with the Identity hash, and MUST NOT be sent to a receiver that has not indicated support for the "Identity" hash. The pre-hashed versions of Ed25519 and Ed448 (Ed25519ph and Ed448ph respectively) SHOULD NOT be used in IKE. 3. Security Considerations The new "Identity" value is needed only for signature algorithms that accept an arbitrary-sized input. It MUST NOT be used if none of the supported algorithms has this property.OTOHOn the other hand there is no good reason tohashpre-hash the inputs where the signature algorithm either does not require it(or does it internally), soor performs a hash internally. For this reason implementations SHOULD have the "Identity" value in the SIGNATURE_HASH_ALGORITHMS notification when they support EdDSA. Implementations SHOULDbeNOT have other hash algorithms in theonly one usednotification if allof the supportedsignature algorithms have this property. 4. IANA Considerations IANA is requested to assign a new value from the "IKEv2 Hash Algorithms" registry with name "Identity" and this document as reference. 5. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <http://www.rfc-editor.org/info/rfc2119>. [RFC7296] Kaufman, C., Hoffman, P., Nir, Y., Eronen, P., and T. Kivinen, "Internet Key Exchange Protocol Version 2 (IKEv2)", STD 79, RFC 7296, DOI 10.17487/RFC7296, October 2014, <http://www.rfc-editor.org/info/rfc7296>. [RFC7427] Kivinen, T. and J. Snyder, "Signature Authentication in the Internet Key Exchange Version 2 (IKEv2)", RFC 7427, DOI 10.17487/RFC7427, January 2015, <http://www.rfc-editor.org/info/rfc7427>. [I.D-eddsa] Josefsson, S. and I. Liusvaara, "Edwards-curve Digital Signature Algorithm (EdDSA)", March 2016, <https://tools.ietf.org/id/draft-irtf-cfrg-eddsa-05.html>.[I.D-pkix-newcurves][I.D-curdle-pkix] Josefsson, S.,"Using"EdDSA, Ed25519, Ed448, Curve25519 and Curve448in PKIX", Marchfor X.509", April 2016,<https://tools.ietf.org/html/draft-ietf- curdle-pkix-newcurves-00>.<https://tools.ietf.org/html/draft-ietf-curdle-pkix-00>. Appendix A. ASN.1 Objects The normative reference for the ASN.1 objects for Ed25519 and Ed448 is in [I.D-curdle-pkix]. They are repeated below for convenience. A.1. ASN.1 Object for Ed25519 id-Curve25519 OBJECT IDENTIFIER ::= { 1.3.101.110 } Parameters are absent. Binary encoding: TBA A.2. ASN.1 Object for Ed448 id-Curve448 OBJECT IDENTIFIER ::= { 1.3.101.111 } Parameters are absent. Binary encoding: TBA Author's Address Yoav Nir Check Point Software Technologies Ltd. 5 Hasolelim st. Tel Aviv 6789735 Israel EMail: ynir.ietf@gmail.com