Internet Engineering Task Force (IETF) Y. Nir Request for Comments: 8420 Dell EMC Category: Standards Track August 2018 ISSN: 2070-1721
Internet Engineering Task Force (IETF) Y. Nir Request for Comments: 8420 Dell EMC Category: Standards Track August 2018 ISSN: 2070-1721
Using the Edwards-Curve Digital Signature Algorithm (EdDSA) in the Internet Key Exchange Protocol Version 2 (IKEv2)
在Internet密钥交换协议版本2(IKEv2)中使用Edwards曲线数字签名算法(EdDSA)
Abstract
摘要
This document describes the use of the Edwards-curve Digital Signature Algorithm (EdDSA) in the Internet Key Exchange Protocol Version 2 (IKEv2).
本文档描述了爱德华兹曲线数字签名算法(EdDSA)在Internet密钥交换协议版本2(IKEv2)中的使用。
Status of This Memo
关于下段备忘
This is an Internet Standards Track document.
这是一份互联网标准跟踪文件。
This document is a product of the Internet Engineering Task Force (IETF). It represents the consensus of the IETF community. It has received public review and has been approved for publication by the Internet Engineering Steering Group (IESG). Further information on Internet Standards is available in Section 2 of RFC 7841.
本文件是互联网工程任务组(IETF)的产品。它代表了IETF社区的共识。它已经接受了公众审查,并已被互联网工程指导小组(IESG)批准出版。有关互联网标准的更多信息,请参见RFC 7841第2节。
Information about the current status of this document, any errata, and how to provide feedback on it may be obtained at https://www.rfc-editor.org/info/rfc8420.
有关本文件当前状态、任何勘误表以及如何提供反馈的信息,请访问https://www.rfc-editor.org/info/rfc8420.
Copyright Notice
版权公告
Copyright (c) 2018 IETF Trust and the persons identified as the document authors. All rights reserved.
版权所有(c)2018 IETF信托基金和确定为文件作者的人员。版权所有。
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://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.
本文件受BCP 78和IETF信托有关IETF文件的法律规定的约束(https://trustee.ietf.org/license-info)自本文件出版之日起生效。请仔细阅读这些文件,因为它们描述了您对本文件的权利和限制。从本文件中提取的代码组件必须包括信托法律条款第4.e节中所述的简化BSD许可证文本,并提供简化BSD许可证中所述的无担保。
Table of Contents
目录
1. Introduction ....................................................2 1.1. Conventions Used in This Document ..........................3 2. The "Identity" Hash Identifier ..................................3 3. Security Considerations .........................................3 4. IANA Considerations .............................................3 5. Normative References ............................................3 Appendix A. ASN.1 Objects .........................................4 A.1. ASN.1 Object for Ed25519 ...................................4 A.2. ASN.1 Object for Ed448 .....................................4 Author's Address ...................................................5
1. Introduction ....................................................2 1.1. Conventions Used in This Document ..........................3 2. The "Identity" Hash Identifier ..................................3 3. Security Considerations .........................................3 4. IANA Considerations .............................................3 5. Normative References ............................................3 Appendix A. ASN.1 Objects .........................................4 A.1. ASN.1 Object for Ed25519 ...................................4 A.2. ASN.1 Object for Ed448 .....................................4 Author's Address ...................................................5
The Internet Key Exchange Protocol Version 2 [RFC7296] can use arbitrary signature algorithms as described in [RFC7427]. [RFC7427] 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 phase followed by a signature phase. This made sense because most signature algorithms either cannot sign messages bigger than their key or truncate messages bigger than their key.
Internet密钥交换协议版本2[RFC7296]可以使用[RFC7427]中所述的任意签名算法。[RFC7427]定义签名散列算法通知,其中IKE协商的每一方列出其支持的散列算法。这假设所有签名方案都包含一个哈希阶段,然后是签名阶段。这是有意义的,因为大多数签名算法要么不能对大于其密钥的消息进行签名,要么不能截断大于其密钥的消息。
EdDSA [RFC8032] defines signature methods that do not require prehashing of the message. Unlike other methods, these accept messages of arbitrary size, so no prehashing is required. These methods are called Ed25519 and Ed448; they use the Edwards 25519 and the Edwards 448 ("Goldilocks") curves, respectively. Although that document also defines prehashed versions of these algorithms, those versions are not recommended for protocols where there is minimal burden in buffering the entire message so as to make it practical to make two passes over the message. This is true of IKEv2. See Section 8.5 of [RFC8032] for that recommendation.
EdDSA[RFC8032]定义了不需要对消息进行预灰化的签名方法。与其他方法不同,这些方法接受任意大小的消息,因此不需要预灰化。这些方法称为Ed25519和Ed448;他们分别使用Edwards 25519和Edwards 448(“金发姑娘”)曲线。尽管该文件还定义了这些算法的预灰化版本,但对于缓冲整个消息的负担最小的协议,不建议使用这些版本,以便在消息上进行两次传递。IKEv2也是如此。该建议见[RFC8032]第8.5节。
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 of RFC 8032. [RFC8410] defines the object identifiers (OIDs) for these signature methods. For convenience, these OIDs are repeated in Appendix A.
EdDSA定义了应在RFC 8032第3节认证数据格式的“签名值”字段中使用的签名的二进制格式。[RFC8410]定义这些签名方法的对象标识符(OID)。为方便起见,附录A中重复了这些OID。
In order to signal within IKE that no hashing needs to be done, we define a new value in the SIGNATURE_HASH_ALGORITHMS notification to indicate that no hashing is performed.
为了在IKE内发出无需进行散列的信号,我们在SIGNATURE_HASH_ALGORITHMS通知中定义了一个新值,以指示未执行散列。
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.
本文件中的关键词“必须”、“不得”、“必需”、“应”、“不应”、“建议”、“不建议”、“可”和“可选”在所有大写字母出现时(如图所示)应按照BCP 14[RFC2119][RFC8174]所述进行解释。
This document defines a new value called "Identity" (5) in the "IKEv2 Hash Algorithms" 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 messages of arbitrary size such as Ed25519 and Ed448.
本文档在“IKEv2哈希算法”注册表中定义了一个名为“Identity”(5)的新值,用于签名哈希算法通知。将此新值插入通知中表示接收器至少支持一种签名算法,该算法接受任意大小的消息,如Ed25519和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.
Ed25519和Ed448仅使用“标识”散列定义,不得发送给未表示支持“标识”散列的接收器。
The prehashed versions of Ed25519 and Ed448 (Ed25519ph and Ed448ph, respectively) MUST NOT be used in IKE.
不得在IKE中使用Ed25519和Ed448的预灰化版本(分别为Ed25519ph和Ed448ph)。
The new "Identity" value is needed only for signature algorithms that accept an input of arbitrary size. It MUST NOT be used if none of the supported and configured algorithms have this property. On the other hand, there is no good reason to prehash the inputs where the signature algorithm has that property. For this reason, implementations MUST have the "Identity" value in the SIGNATURE_HASH_ALGORITHMS notification when EdDSA is supported and configured. Implementations SHOULD NOT have other hash algorithms in the notification if all supported and configured signature algorithms have this property.
只有接受任意大小输入的签名算法才需要新的“标识”值。如果支持和配置的算法均不具有此属性,则不得使用此属性。另一方面,如果签名算法具有该属性,则没有充分的理由对输入进行预灰化。因此,在支持和配置EdDSA时,实现必须在签名\u哈希\u算法通知中具有“Identity”值。如果所有支持和配置的签名算法都具有此属性,则实现不应在通知中包含其他哈希算法。
IANA has assigned the value 5 for the algorithm with the name "Identity" in the "IKEv2 Hash Algorithms" registry with this document as reference.
IANA已在“IKEv2哈希算法”注册表中为名为“Identity”的算法分配了值5,并以本文档为参考。
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, <https://www.rfc-editor.org/info/rfc2119>.
[RFC2119]Bradner,S.,“RFC中用于表示需求水平的关键词”,BCP 14,RFC 2119,DOI 10.17487/RFC2119,1997年3月<https://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, <https://www.rfc-editor.org/info/rfc7296>.
[RFC7296]Kaufman,C.,Hoffman,P.,Nir,Y.,Eronen,P.,和T.Kivinen,“互联网密钥交换协议版本2(IKEv2)”,STD 79,RFC 7296,DOI 10.17487/RFC72962014年10月<https://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, <https://www.rfc-editor.org/info/rfc7427>.
[RFC7427]Kivinen,T.和J.Snyder,“互联网密钥交换版本2(IKEv2)中的签名认证”,RFC 7427,DOI 10.17487/RFC7427,2015年1月<https://www.rfc-editor.org/info/rfc7427>.
[RFC8032] Josefsson, S. and I. Liusvaara, "Edwards-Curve Digital Signature Algorithm (EdDSA)", RFC 8032, DOI 10.17487/RFC8032, January 2017, <https://www.rfc-editor.org/info/rfc8032>.
[RFC8032]Josefsson,S.和I.Liusvaara,“爱德华兹曲线数字签名算法(EdDSA)”,RFC 8032,DOI 10.17487/RFC8032,2017年1月<https://www.rfc-editor.org/info/rfc8032>.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, <https://www.rfc-editor.org/info/rfc8174>.
[RFC8174]Leiba,B.,“RFC 2119关键词中大写与小写的歧义”,BCP 14,RFC 8174,DOI 10.17487/RFC8174,2017年5月<https://www.rfc-editor.org/info/rfc8174>.
[RFC8410] Josefsson, S. and J. Schaad, "Algorithm Identifiers for Ed25519, Ed448, X25519, and X448 for Use in the Internet X.509 Public Key Infrastructure", RFC 8410, DOI 10.17487/RFC8410, August 2018, <https://www.rfc-editor.org/info/rfc8410>.
[RFC8410]Josefsson,S.和J.Schaad,“用于互联网X.509公钥基础设施的Ed25519、Ed448、X25519和X448的算法标识符”,RFC 8410,DOI 10.17487/RFC8410,2018年8月<https://www.rfc-editor.org/info/rfc8410>.
[RFC8410] is the normative reference for the ASN.1 objects for Ed25519 and Ed448. They are repeated below for convenience.
[RFC8410]是Ed25519和Ed448 ASN.1对象的标准参考。为了方便起见,下面重复这些步骤。
id-Ed25519 OBJECT IDENTIFIER ::= { 1.3.101.112 }
id-Ed25519 OBJECT IDENTIFIER ::= { 1.3.101.112 }
Parameters are absent. Length is 7 bytes.
没有参数。长度为7字节。
Binary encoding: 3005 0603 2B65 70
二进制编码:300506032B65 70
id-Ed448 OBJECT IDENTIFIER ::= { 1.3.101.113 }
id-Ed448 OBJECT IDENTIFIER ::= { 1.3.101.113 }
Parameters are absent. Length is 7 bytes.
没有参数。长度为7字节。
Binary encoding: 3005 0603 2B65 71
二进制编码:300506032B6571
Author's Address
作者地址
Yoav Nir Dell EMC 9 Andrei Sakharov St Haifa 3190500 Israel
Yoav Nir戴尔EMC 9 Andrei Sakharov St Haifa 3190500以色列
Email: ynir.ietf@gmail.com
Email: ynir.ietf@gmail.com