Use of Edwards-Curve Digital Signature Algorithm (EdDSA) Signatures in the Cryptographic Message Syntax (CMS)
RFC 8419

Document Type RFC - Proposed Standard (August 2018; No errata)
Last updated 2018-08-06
Replaces draft-housley-cms-eddsa-signatures
Stream IETF
Formats plain text pdf html bibtex
Reviews GENART will not review this version
Stream WG state Submitted to IESG for Publication
Document shepherd Daniel Migault
Shepherd write-up Show (last changed 2017-04-11)
IESG IESG state RFC 8419 (Proposed Standard)
Consensus Boilerplate Yes
Telechat date
Responsible AD Eric Rescorla
Send notices to Daniel Migault <daniel.migault@ericsson.com>
IANA IANA review state Version Changed - Review Needed
IANA action state No IANA Actions
Internet Engineering Task Force (IETF)                        R. Housley
Request for Comments: 8419                                Vigil Security
Category: Standards Track                                    August 2018
ISSN: 2070-1721

  Use of Edwards-Curve Digital Signature Algorithm (EdDSA) Signatures
               in the Cryptographic Message Syntax (CMS)

Abstract

   This document specifies the conventions for using the Edwards-curve
   Digital Signature Algorithm (EdDSA) for curve25519 and curve448 in
   the Cryptographic Message Syntax (CMS).  For each curve, EdDSA
   defines the PureEdDSA and HashEdDSA modes.  However, the HashEdDSA
   mode is not used with the CMS.  In addition, no context string is
   used with the CMS.

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.

   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/rfc8419.

Copyright Notice

   Copyright (c) 2018 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
   (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.

Housley                      Standards Track                    [Page 1]
RFC 8419             Using EdDSA Signatures with CMS         August 2018

Table of Contents

   1. Introduction ....................................................2
      1.1. Terminology ................................................2
      1.2. ASN.1 ......................................................2
   2. EdDSA Signature Algorithm .......................................3
      2.1. Algorithm Identifiers ......................................3
      2.2. EdDSA Algorithm Identifiers ................................3
      2.3. Message Digest Algorithm Identifiers .......................4
      2.4. EdDSA Signatures ...........................................4
   3. Signed-data Conventions .........................................5
      3.1. Signed-data Conventions with Signed Attributes .............5
      3.2. Signed-data Conventions without Signed Attributes ..........6
   4. Implementation Considerations ...................................6
   5. Security Considerations .........................................6
   6. IANA Considerations .............................................7
   7. References ......................................................7
      7.1. Normative References .......................................7
      7.2. Informative References .....................................8
   Acknowledgments ....................................................9
   Author's Address ...................................................9

1.  Introduction

   This document specifies the conventions for using the Edwards-curve
   Digital Signature Algorithm (EdDSA) [RFC8032] for curve25519
   [CURVE25519] and curve448 [CURVE448] with the Cryptographic Message
   Syntax (CMS) [RFC5652] signed-data content type.  For each curve,
   [RFC8032] defines the PureEdDSA and HashEdDSA modes; however, the
   HashEdDSA mode is not used with the CMS.  In addition, no context
   string is used with CMS.  EdDSA with curve25519 is referred to as
   "Ed25519", and EdDSA with curve448 is referred to as "Ed448".  The
   CMS conventions for PureEdDSA with Ed25519 and Ed448 are described in
   this document.

1.1.  Terminology

   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.

1.2.  ASN.1

   CMS values are generated using ASN.1 [X680], which uses the Basic
   Encoding Rules (BER) and the Distinguished Encoding Rules (DER)
   [X690].

Housley                      Standards Track                    [Page 2]
RFC 8419             Using EdDSA Signatures with CMS         August 2018

2.  EdDSA Signature Algorithm

   The Edwards-curve Digital Signature Algorithm (EdDSA) [RFC8032] is a
   variant of Schnorr's signature system with (possibly twisted) Edwards
Show full document text