K2K 3G5
K2K 3G5
10969
SIGNATUREALGORITHM element  Definition 

IDENTIFIER  The Object ID used to identify the composite Signature Algorithm 
VALUE  The Sequence of BIT STRINGS for each component signature value 
PARAMS  Parameters are absent 
PUBLICKEYS  The composite key required to produce the composite signature 
Composite Signature AlgorithmID  OID  First AlgorithmID  Second AlgorithmID  PreHash 

idMLDSA44RSA2048PSSSHA256  <CompSig>.1  idMLDSA44  idRSASAPSS with idsha256  idsha256 
idMLDSA44RSA2048PKCS15SHA256  <CompSig>.2  idMLDSA44  sha256WithRSAEncryption  idsha256 
idMLDSA44Ed25519SHA512  <CompSig>.3  idMLDSA44  idEd25519  idsha512 
idMLDSA44ECDSAP256SHA256  <CompSig>.4  idMLDSA44  ecdsawithSHA256 with secp256r1  idsha256 
idMLDSA44ECDSAbrainpoolP256r1SHA256  <CompSig>.5  idMLDSA44  ecdsawithSHA256 with brainpoolP256r1  idsha256 
idMLDSA65RSA3072PSSSHA512  <CompSig>.6  idMLDSA65  idRSASAPSS with idsha512  idsha512 
idMLDSA65RSA3072PKCS15SHA512  <CompSig>.7  idMLDSA65  sha512WithRSAEncryption  idsha512 
idMLDSA65ECDSAP256SHA512  <CompSig>.8  idMLDSA65  ecdsawithSHA512 with secp256r1  idsha512 
idMLDSA65ECDSAbrainpoolP256r1SHA512  <CompSig>.9  idMLDSA65  ecdsawithSHA512 with brainpoolP256r1  idsha512 
idMLDSA65Ed25519SHA512  <CompSig>.10  idMLDSA65  idEd25519  idsha512 
idMLDSA87ECDSAP384SHA512  <CompSig>.11  idMLDSA87  ecdsawithSHA512 with secp384r1  idsha512 
idMLDSA87ECDSAbrainpoolP384r1SHA512  <CompSig>.12  idMLDSA87  ecdsawithSHA512 with brainpoolP384r1  idsha512 
idMLDSA87Ed448SHA512  <CompSig>.13  idMLDSA87  idEd448  idsha512 
Composite Signature AlgorithmID  Domain Separator (in Hex encoding) 

idMLDSA44RSA2048PSSSHA256  060B6086480186FA6B50080101 
idMLDSA44RSA2048PKCS15SHA256  060B6086480186FA6B50080102 
idMLDSA44Ed25519SHA512  060B6086480186FA6B50080103 
idMLDSA44ECDSAP256SHA256  060B6086480186FA6B50080104 
idMLDSA44ECDSAbrainpoolP256r1SHA256  060B6086480186FA6B50080105 
idMLDSA65RSA3072PSSSHA512  060B6086480186FA6B50080106 
idMLDSA65RSA3072PKCS15SHA512  060B6086480186FA6B50080107 
idMLDSA65ECDSAP256SHA512  060B6086480186FA6B50080108 
idMLDSA65ECDSAbrainpoolP256r1SHA512  060B6086480186FA6B50080109 
idMLDSA65Ed25519SHA512  060B6086480186FA6B5008010A 
idMLDSA87ECDSAP384SHA512  060B6086480186FA6B5008010B 
idMLDSA87ECDSAbrainpoolP384r1SHA512  060B6086480186FA6B5008010C 
idMLDSA87Ed448SHA512  060B6086480186FA6B5008010D 
RSAPSS Parameter  Value 

Mask Generation Function  mgf1 
Mask Generation params  SHA256 
Message Digest Algorithm  SHA256 
Salt Length in bits  256 
RSAPSS Parameter  Value 

Mask Generation Function  mgf1 
Mask Generation params  SHA512 
Message Digest Algorithm  SHA512 
Salt Length in bits  512 
Composite Signature AlgorithmID  Secure Hash 

idMLDSA44RSA2048PSSSHA256  SHA256 
idMLDSA44RSA2048PKCS15SHA256  SHA256 
idMLDSA44Ed25519SHA512  SHA512 
idMLDSA44ECDSAP256SHA256  SHA256 
idMLDSA44ECDSAbrainpoolP256r1SHA256  SHA256 
idMLDSA65RSA3072PSSSHA512  SHA512 
idMLDSA65RSA3072PKCS15SHA512  SHA512 
idMLDSA65ECDSAP256SHA512  SHA512 
idMLDSA65ECDSAbrainpoolP256r1SHA512  SHA512 
idMLDSA65Ed25519SHA512  SHA512 
idMLDSA87ECDSAP384SHA512  SHA512 
idMLDSA87ECDSAbrainpoolP384r1SHA512  SHA512 
idMLDSA87Ed448SHA512  SHA512 
]]>
IANA Considerations
IANA is requested to allocate a value from the "SMI Security for PKIX Module Identifier" registry for the included ASN.1 module, and allocate values from "SMI Security for PKIX Algorithms" to identify the fourteen Algorithms defined within.
Object Identifier Allocations
EDNOTE to IANA: OIDs will need to be replaced in both the ASN.1 module and in .
Module Registration  SMI Security for PKIX Module Identifier

Decimal: IANA Assigned  Replace TBDMOD

Description: CompositeSignatures2023  idmodcompositesignatures

References: This Document
Object Identifier Registrations  SMI Security for PKIX Algorithms

idMLDSA44RSA2048PSSSHA256

Decimal: IANA Assigned

Description: idMLDSA44RSA2048PSSSHA256

References: This Document

idMLDSA44RSA2048PKCS15SHA256

Decimal: IANA Assigned

Description: idMLDSA44RSA2048PKCS15SHA256

References: This Document

idMLDSA44Ed25519SHA512

Decimal: IANA Assigned

Description: idMLDSA44Ed25519SHA512

References: This Document

idMLDSA44ECDSAP256SHA256

Decimal: IANA Assigned

Description: idMLDSA44ECDSAP256SHA256

References: This Document

idMLDSA44ECDSAbrainpoolP256r1SHA256

Decimal: IANA Assigned

Description: idMLDSA44ECDSAbrainpoolP256r1SHA256

References: This Document

idMLDSA65RSA3072PSSSHA512

Decimal: IANA Assigned

Description: idMLDSA65RSA3072PSSSHA512

References: This Document

idMLDSA65RSA3072PKCS15SHA512

Decimal: IANA Assigned

Description: idMLDSA65RSA3072PKCS15SHA512

References: This Document

idMLDSA65ECDSAP256SHA512

Decimal: IANA Assigned

Description: idMLDSA65ECDSAP256SHA512

References: This Document

idMLDSA65ECDSAbrainpoolP256r1SHA512

Decimal: IANA Assigned

Description: idMLDSA65ECDSAbrainpoolP256r1SHA512

References: This Document

idMLDSA65Ed25519SHA512

Decimal: IANA Assigned

Description: idMLDSA65Ed25519SHA512

References: This Document

idMLDSA87ECDSAP384SHA512

Decimal: IANA Assigned

Description: idMLDSA87ECDSAP384SHA512

References: This Document

idMLDSA87ECDSAbrainpoolP384r1SHA512

Decimal: IANA Assigned

Description: idMLDSA87ECDSAbrainpoolP384r1SHA512

References: This Document

idMLDSA87Ed448SHA512

Decimal: IANA Assigned

Description: idMLDSA87Ed448SHA512

References: This Document
Security Considerations
Public Key Algorithm Selection Criteria
The composite algorithm combinations defined in this document were chosen according to the following guidelines:

A single RSA combination is provided at a key size of 3072 bits, matched with NIST PQC Level 3 algorithms.

Elliptic curve algorithms are provided with combinations on each of the NIST , Brainpool , and Edwards curves. NIST PQC Levels 1  3 algorithms are matched with 256bit curves, while NIST levels 4  5 are matched with 384bit elliptic curves. This provides a balance between matching classical security levels of postquantum and traditional algorithms, and also selecting elliptic curves which already have wide adoption.

NIST level 1 candidates are provided, matched with 256bit elliptic curves, intended for constrained use cases.
If other combinations are needed, a separate specification should be submitted to the IETF LAMPS working group. To ease implementation, these specifications are encouraged to follow the construction pattern of the algorithms specified in this document.
The composite structures defined in this specification allow only for pairs of algorithms. This also does not preclude future specification from extending these structures to define combinations with three or more components.
PreHashing Algorithm Selection Criteria
As noted in the composite signature generation process and composite signature verification process, the Message should be prehashed into M' with the digest algorithm specified in the composite signature algorithm identifier. The selection of the digest algorithm was chosen with the following criteria:

For composites paired with RSA or ECDSA, the hashing algorithm SHA256 or SHA512 is used as part of the RSA or ECDSA signature algorithm and is therefore also used as the composite prehashing algorithm.

For MLDSA signing a digest of the message is allowed as long as the hash function provides at least y bits of classical security strength against both collision and second preimage attacks. For MLDSA44 y is 128 bits, for MLDSA65 y is 192 bits and for MLDSA87 y is 256 bits. Therefore SHA256 is paired with RSA and ECDSA with MLDSA44 and SHA512 is paired with RSA and ECDSA with MLDSA65 and MLDSA87 to match the appropriate security strength.

Ed25519 uses SHA512 internally, therefore SHA512 is used to prehash the message when Ed25519 is a component algorithm.

Ed448 uses SHAKE256 internally, but to reduce the set of prehashing algorihtms, SHA512 was selected to prehash the message when Ed448 is a component algorithm.
Policy for Deprecated and Acceptable Algorithms
Traditionally, a public key, certificate, or signature contains a single cryptographic algorithm. If and when an algorithm becomes deprecated (for example, RSA512, or SHA1), then clients performing signatures or verifications should be updated to adhere to appropriate policies.
In the composite model this is less obvious since implementers may decide that certain cryptographic algorithms have complementary security properties and are acceptable in combination even though one or both algorithms are deprecated for individual use. As such, a single composite public key or certificate may contain a mixture of deprecated and nondeprecated algorithms.
Since composite algorithms are registered independently of their component algorithms, their deprecation can be handled independently from that of their component algorithms. For example a cryptographic policy might continue to allow idMLDSA65ECDSAP256SHA512 even after ECDSAP256 is deprecated.
When considering stripping attacks, one need consider the case where an attacker has fully compromised one of the component algorithms to the point that they can produce forged signatures that appear valid under one of the component public keys, and thus fool a victim verifier into accepting a forged signature. The protection against this attack relies on the victim verifier trusting the pair of public keys as a single composite key, and not trusting the individual component keys by themselves.
Specifically, in order to achieve this nonseparability property, this specification makes two assumptions about how the verifier will establish trust in a composite public key:

This specification assumes that all of the component keys within a composite key are freshly generated for the composite; ie a given public key MUST NOT appear as a component within a composite key and also within singlealgorithm constructions.

This specification assumes that composite public keys will be bound in a structure that contains a signature over the public key (for example, an X.509 Certificate ), which is chained back to a trust anchor, and where that signature algorithm is at least as strong as the composite public key that it is protecting.
There are mechanisms within Internet PKI where trusted public keys do not appear within signed structures  such as the Trust Anchor format defined in [RFC5914]. In such cases, it is the responsibility of implementers to ensure that trusted composite keys are distributed in a way that is tamperresistant and does not allow the component keys to be trusted independently.
References
Normative References
Key words for use in RFCs to Indicate Requirement Levels
In many standards track documents several words are used to signify the requirements in the specification. These words are often capitalized. This document defines these words as they should be interpreted in IETF documents. This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.
PKCS #10: Certification Request Syntax Specification Version 1.7
This memo represents a republication of PKCS #10 v1.7 from RSA Laboratories' PublicKey Cryptography Standards (PKCS) series, and change control is retained within the PKCS process. The body of this document, except for the security considerations section, is taken directly from the PKCS #9 v2.0 or the PKCS #10 v1.7 document. This memo provides information for the Internet community.
Internet X.509 Public Key Infrastructure Certificate Management Protocol (CMP)
This document describes the Internet X.509 Public Key Infrastructure (PKI) Certificate Management Protocol (CMP). Protocol messages are defined for X.509v3 certificate creation and management. CMP provides online interactions between PKI components, including an exchange between a Certification Authority (CA) and a client system. [STANDARDSTRACK]
Internet X.509 Public Key Infrastructure Certificate Request Message Format (CRMF)
This document describes the Certificate Request Message Format (CRMF) syntax and semantics. This syntax is used to convey a request for a certificate to a Certification Authority (CA), possibly via a Registration Authority (RA), for the purposes of X.509 certificate production. The request will typically include a public key and the associated registration information. This document does not define a certificate request protocol. [STANDARDSTRACK]
Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet. An overview of this approach and model is provided as an introduction. The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms. Standard certificate extensions are described and two Internetspecific extensions are defined. A set of required certificate extensions is specified. The X.509 v2 CRL format is described in detail along with standard and Internetspecific extensions. An algorithm for X.509 certification path validation is described. An ASN.1 module and examples are provided in the appendices. [STANDARDSTRACK]
Elliptic Curve Cryptography Subject Public Key Information
This document specifies the syntax and semantics for the Subject Public Key Information field in certificates that support Elliptic Curve Cryptography. This document updates Sections 2.3.5 and 5, and the ASN.1 module of "Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile", RFC 3279. [STANDARDSTRACK]
Elliptic Curve Cryptography (ECC) Brainpool Standard Curves and Curve Generation
This memo proposes several elliptic curve domain parameters over finite prime fields for use in cryptographic applications. The domain parameters are consistent with the relevant international standards, and can be used in X.509 certificates and certificate revocation lists (CRLs), for Internet Key Exchange (IKE), Transport Layer Security (TLS), XML signatures, and all applications or protocols based on the cryptographic message syntax (CMS). This document is not an Internet Standards Track specification; it is published for informational purposes.
Cryptographic Message Syntax (CMS)
This document describes the Cryptographic Message Syntax (CMS). This syntax is used to digitally sign, digest, authenticate, or encrypt arbitrary message content. [STANDARDSTRACK]
Internet X.509 Public Key Infrastructure: Additional Algorithms and Identifiers for DSA and ECDSA
This document updates RFC 3279 to specify algorithm identifiers and ASN.1 encoding rules for the Digital Signature Algorithm (DSA) and Elliptic Curve Digital Signature Algorithm (ECDSA) digital signatures when using SHA224, SHA256, SHA384, or SHA512 as the hashing algorithm. This specification applies to the Internet X.509 Public Key infrastructure (PKI) when digital signatures are used to sign certificates and certificate revocation lists (CRLs). This document also identifies all four SHA2 hash algorithms for use in the Internet X.509 PKI. [STANDARDSTRACK]
Asymmetric Key Packages
This document defines the syntax for privatekey information and a content type for it. Privatekey information includes a private key for a specified publickey algorithm and a set of attributes. The Cryptographic Message Syntax (CMS), as defined in RFC 5652, can be used to digitally sign, digest, authenticate, or encrypt the asymmetric key format content type. This document obsoletes RFC 5208. [STANDARDSTRACK]
Fundamental Elliptic Curve Cryptography Algorithms
This note describes the fundamental algorithms of Elliptic Curve Cryptography (ECC) as they were defined in some seminal references from 1994 and earlier. These descriptions may be useful for implementing the fundamental algorithms without using any of the specialized methods that were developed in following years. Only elliptic curves defined over fields of characteristic greater than three are in scope; these curves are those used in Suite B. This document is not an Internet Standards Track specification; it is published for informational purposes.
US Secure Hash Algorithms (SHA and SHAbased HMAC and HKDF)
Federal Information Processing Standard, FIPS
Elliptic Curves for Security
This memo specifies two elliptic curves over prime fields that offer a high level of practical security in cryptographic applications, including Transport Layer Security (TLS). These curves are intended to operate at the ~128bit and ~224bit security level, respectively, and are generated deterministically based on a list of required properties.
EdwardsCurve Digital Signature Algorithm (EdDSA)
This document describes elliptic curve signature scheme Edwardscurve Digital Signature Algorithm (EdDSA). The algorithm is instantiated with recommended parameters for the edwards25519 and edwards448 curves. An example implementation and test vectors are provided.
Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words
RFC 2119 specifies common key words that may be used in protocol specifications. This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.
Algorithm Identifiers for Ed25519, Ed448, X25519, and X448 for Use in the Internet X.509 Public Key Infrastructure
This document specifies algorithm identifiers and ASN.1 encoding formats for elliptic curve constructs using the curve25519 and curve448 curves. The signature algorithms covered are Ed25519 and Ed448. The key agreement algorithms covered are X25519 and X448. The encoding for public key, private key, and Edwardscurve Digital Signature Algorithm (EdDSA) structures is provided.
IANA Registration for the Cryptographic Algorithm Object Identifier Range
When the Curdle Security Working Group was chartered, a range of object identifiers was donated by DigiCert, Inc. for the purpose of registering the Edwards Elliptic Curve key agreement and signature algorithms. This donated set of OIDs allowed for shorter values than would be possible using the existing S/MIME or PKIX arcs. This document describes the donated range and the identifiers that were assigned from that range, transfers control of that range to IANA, and establishes IANA allocation policies for any future assignments within that range.
Information technology  ASN.1 encoding Rules: Specification of Basic Encoding Rules (BER), Canonical Encoding Rules (CER) and Distinguished Encoding Rules (DER)
ITUT
Informative References
Algorithms and Identifiers for the Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile
This document specifies algorithm identifiers and ASN.1 encoding formats for digital signatures and subject public keys used in the Internet X.509 Public Key Infrastructure (PKI). Digital signatures are used to sign certificates and certificate revocation list (CRLs). Certificates include the public key of the named subject. [STANDARDSTRACK]
PKCS #12: Personal Information Exchange Syntax v1.1
PKCS #12 v1.1 describes a transfer syntax for personal identity information, including private keys, certificates, miscellaneous secrets, and extensions. Machines, applications, browsers, Internet kiosks, and so on, that support this standard will allow a user to import, export, and exercise a single set of personal identity information. This standard supports direct transfer of personal information under several privacy and integrity modes.
This document represents a republication of PKCS #12 v1.1 from RSA Laboratories' Public Key Cryptography Standard (PKCS) series. By publishing this RFC, change control is transferred to the IETF.
Internet Key Exchange Protocol Version 2 (IKEv2)
This document describes version 2 of the Internet Key Exchange (IKE) protocol. IKE is a component of IPsec used for performing mutual authentication and establishing and maintaining Security Associations (SAs). This document obsoletes RFC 5996, and includes all of the errata for it. It advances IKEv2 to be an Internet Standard.
Object Identifier Registry for the PKIX Working Group
When the PublicKey Infrastructure using X.509 (PKIX) Working Group was chartered, an object identifier arc was allocated by IANA for use by that working group. This document describes the object identifiers that were assigned in that arc, returns control of that arc to IANA, and establishes IANA allocation policies for any future assignments within that arc.
The Transport Layer Security (TLS) Protocol Version 1.3
This document specifies version 1.3 of the Transport Layer Security (TLS) protocol. TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.
This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961. This document also specifies new requirements for TLS 1.2 implementations.
Secure/Multipurpose Internet Mail Extensions (S/MIME) Version 4.0 Message Specification
This document defines Secure/Multipurpose Internet Mail Extensions (S/MIME) version 4.0. S/MIME provides a consistent way to send and receive secure MIME data. Digital signatures provide authentication, message integrity, and nonrepudiation with proof of origin. Encryption provides data confidentiality. Compression can be used to reduce data size. This document obsoletes RFC 5751.
PKCS #1: RSA Cryptography Specifications Version 2.2
This document provides recommendations for the implementation of publickey cryptography based on the RSA algorithm, covering cryptographic primitives, encryption schemes, signature schemes with appendix, and ASN.1 syntax for representing keys and for identifying the schemes.
This document represents a republication of PKCS #1 v2.2 from RSA Laboratories' PublicKey Cryptography Standards (PKCS) series. By publishing this RFC, change control is transferred to the IETF.
This document also obsoletes RFC 3447.
Hybrid signature spectrums
SandboxAQ
Naval Postgraduate School
SandboxAQ
UK National Cyber Security Centre
This document describes classification of design goals and security considerations for hybrid digital signature schemes, including proof composability, nonseparability of the ingredient signatures given a hybrid signature, backwards/forwards compatiblity, hybrid generality, and simultaneous verification. Discussion of this work is encouraged to happen on the IETF PQUIP mailing list pqc@ietf.org or on the GitHub repository which contains the draft: https://github.com/dconnolly/drafthalepquiphybrid signaturespectrums
Composite KEM For Use In Internet PKI
Entrust Limited
Entrust Limited
The migration to postquantum cryptography is unique in the history of modern digital cryptography in that neither the old outgoing nor the new incoming algorithms are fully trusted to protect data for the required data lifetimes. The outgoing algorithms, such as RSA and elliptic curve, may fall to quantum cryptalanysis, while the incoming postquantum algorithms face uncertainty about both the underlying mathematics as well as hardware and software implementations that have not had sufficient maturing time to rule out classical cryptanalytic attacks and implementation bugs. Cautious implementers may wish to layer cryptographic algorithms such that an attacker would need to break all of them in order to compromise the data being protected using either a PostQuantum / Traditional Hybrid, PostQuantum / PostQuantum Hybrid, or combinations thereof. This document, and its companions, defines a specific instantiation of hybrid paradigm called "composite" where multiple cryptographic algorithms are combined to form a single key, signature, or key encapsulation mechanism (KEM) such that they can be treated as a single atomic object at the protocol level. This document defines the structure CompositeCiphertextValue which is a sequence of the respective ciphertexts for each component algorithm. Explicit pairings of algorithms are defined which should meet most Internet needs. The generic composite key type is also defined which allows arbitrary combinations of key types to be placed in the CompositePublicKey and CompositePrivateKey structures without needing the combination to be preregistered or preagreed. For the purpose of combining KEMs, the combiner function from [ID.ounsworthcfrgkemcombiners] is used. This document is intended to be coupled with the composite keys structure define in [ID.ounsworthpqcompositekeys] and the CMS KEMRecipientInfo mechanism in [ID.housleylampscmskemri].
NonComposite Hybrid Authentication in PKIX and Applications to Internet Protocols
National Security Agency
National Security Agency
National Security Agency
The advent of cryptographically relevant quantum computers (CRQC) will threaten the public key cryptography that is currently in use in today's secure internet protocol infrastructure. To address this, organizations such as the National Institute of Standards and Technology (NIST) will standardize new postquantum cryptography (PQC) that is resistant to attacks by both classical and quantum computers. After PQC algorithms are standardized, the widespread implementation of this cryptography will be contingent upon adapting current protocols to accommodate PQC. Hybrid solutions are one way to facilitate the transition between traditional and PQ algorithms: they use both a traditional and a PQ algorithm in order to perform encryption or authentication, with the guarantee that the given security property will still hold in the case that one algorithm fails. Hybrid solutions can be constructed in many ways, and the cryptographic community has already begun to explore this space. This document introduces noncomposite hybrid authentication, which requires updates at the protocol level and limits impact to the certificateissuing infrastructure.
Hybrid NonComposite Authentication in IKEv2
National Security Agency
This document describes how to extend the Internet Key Exchange Protocol Version 2 (IKEv2) to allow hybrid noncomposite authentication. The intended purpose for this extension is to enable the use of a PostQuantum (PQ) digital signature and X.509 certificate in addition to the use of a traditional authentication method. This document enables peers to signify support for hybrid noncomposite authentication, and send additional CERTREQ, AUTH, and CERT payloads to perform multiple authentications.
Kthreshold Composite Signatures for the Internet PKI
CableLabs Inc.
DTrust GmbH
With the need to evolve the cryptography used in today applications, devices, and networks, there might be many scenarios where the use of a singlekey certificate is not sufficient. For example, there might be the need for migrating between two existing algorithms (e.g., from classic to postquantum) or there might be the need to test the capabilities of devices via test drivers and/or nonstandard algorithms. Differently from the situation where algorithms are not yet (or no more) trusted to be used by themselves, this document addresses the use of multiple keys and signatures that can be individually trusted to implement a generic 1threshold and Kthreshold signature validation procedures. This document provides the definition of a new type of multi algorithm public key and relies on the definition of CompositePrivateKey, and CompositeSignature which are sequences of the respective structure for each component algorithm as defined in [ID.ounsworthpqcompositesigs] and [ID.ounsworthpqcompositesigs].
Terminology for PostQuantum Traditional Hybrid Schemes
UK National Cyber Security Centre
One aspect of the transition to postquantum algorithms in cryptographic protocols is the development of hybrid schemes that incorporate both postquantum and traditional asymmetric algorithms. This document defines terminology for such schemes. It is intended to ensure consistency and clarity across different protocols, standards, and organisations.
Postquantum cryptography use cases
Siemens
Siemens
Siemens
Entrust
Entrust
This document focuses on the critical challenge of migrating long term security assertions with security requirements spanning over a decade, encompassing X.509 certificates, including those that serve as manufacturer issued certificates (IDevID), signed firmware/ software, and other electronic artifacts. We investigate a range of migration strategies, specifically hybrid cryptography and the feasibility of stateful HashBased Signatures (HBS) schemes, including its pros and cons. To offer a comprehensive context, we present a list of use cases centered around longlived security assertions, categorize them, and evaluate them against the various migration strategies identified. We also aim at listing pros and cons associated with each method.
Algorithms and Identifiers for PostQuantum Algorithms
AWS
AWS
sn3rd
Cloudflare
Digital signatures are used within X.509 certificates, Certificate Revocation Lists (CRLs), and to sign messages. This document describes the conventions for using Dilithium quantumresistant signatures in Internet X.509 certificates and certifiate revocation lists. The conventions for the associated postquantum signatures, subject public keys, and private key are also described.
Internet X.509 Public Key Infrastructure: Algorithm Identifiers for Dilithium
AWS
AWS
sn3rd
Cloudflare
Digital signatures are used within X.509 certificates, Certificate Revocation Lists (CRLs), and to sign messages. This document describes the conventions for using Dilithium quantumresistant signatures in Internet X.509 certificates and certificate revocation lists. The conventions for the associated postquantum signatures, subject public keys, and private key are also described.
Transitioning to a quantumresistant public key infrastructure
Quantumsafe cryptography  fundamentals, current developments and recommendations
Federal Office for Information Security (BSI)
Position Paper on Quantum Key Distribution
French Cybersecurity Agency (ANSSI)
Federal Office for Information Security (BSI)
Netherlands National Communications Security Agency (NLNCSA)
Swedish National Communications Security Authority, Swedish Armed Forces
n.d.
Component Algorithm Reference
This section provides references to the full specification of the algorithms used in the composite constructions.
Component Signature Algorithms used in Composite Constructions
Component Signature Algorithm ID
OID
Specification
idMLDSA44
1.3.6.1.4.1.2.267.12.4.4
MLDSA: and [FIPS.204ipd]
idMLDSA65
1.3.6.1.4.1.2.267.12.6.5
MLDSA: and [FIPS.204ipd]
idMLDSA87
1.3.6.1.4.1.2.267.12.8.7
MLDSA: and [FIPS.204ipd]
idEd25519
iso(1) identifiedorganization(3) thawte(101) 112
Ed25519 / Ed448:
idEd448
iso(1) identifiedorganization(3) thawte(101) idEd448(113)
Ed25519 / Ed448:
ecdsawithSHA256
iso(1) memberbody(2) us(840) ansiX962(10045) signatures(4) ecdsawithSHA2(3) 2
ECDSA:
ecdsawithSHA512
iso(1) memberbody(2) us(840) ansiX962(10045) signatures(4) ecdsawithSHA2(3) 4
ECDSA:
sha256WithRSAEncryption
iso(1) memberbody(2) us(840) rsadsi(113549) pkcs(1) pkcs1(1) 11
RSAESPKCSv1_5:
sha512WithRSAEncryption
iso(1) memberbody(2) us(840) rsadsi(113549) pkcs(1) pkcs1(1) 13
RSAESPKCSv1_5:
idRSASAPSS
iso(1) memberbody(2) us(840) rsadsi(113549) pkcs(1) pkcs1(1) 10
RSASSAPSS:
Elliptic Curves used in Composite Constructions
Elliptic CurveID
OID
Specification
secp256r1
iso(1) memberbody(2) us(840) ansix962(10045) curves(3) prime(1) 7
secp384r1
iso(1) identifiedorganization(3) certicom(132) curve(0) 34
brainpoolP256r1
iso(1) identifiedorganization(3) teletrust(36) algorithm(3) signatureAlgorithm(3) ecSign(2) ecStdCurvesAndGeneration(8) ellipticCurve(1) versionOne(1) 7
brainpoolP384r1
iso(1) identifiedorganization(3) teletrust(36) algorithm(3) signatureAlgorithm(3) ecSign(2) ecStdCurvesAndGeneration(8) ellipticCurve(1) versionOne(1) 11
Hash algorithms used in Composite Constructions
HashID
OID
Specification
idsha256
jointisoitut(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashAlgs(2) 1
idsha512
jointisoitut(2) country(16) us(840) organization(1) gov(101) csor(3) nistAlgorithms(4) hashAlgs(2) 3
Samples
Explicit Composite Signature Examples
MLDSA44ECDSAP256SHA256 Public Key
MLDSA44ECDSAP256 Private Key
MLDSA44ECDSAP256 SelfSigned X509 Certificate
Implementation Considerations
FIPS certification
One of the primary design goals of this specification is for the overall composite algorithm to be able to be considered FIPSapproved even when one of the component algorithms is not.
Implementors seeking FIPS certification of a composite Signature algorithm where only one of the component algorithms has been FIPSvalidated or FIPSapproved should credit the FIPSvalidated component algorithm with full security strength, the nonFIPSvalidated component algorithm with zero security, and the overall composite should be considered at least as strong and thus FIPSapproved.
The authors wish to note that this gives composite algorithms great future utility both for future cryptographic migrations as well as bridging across jurisdictions, for example defining composite algorithms which combine FIPS cryptography with cryptography from a different national standards body.
Backwards Compatibility
The term "backwards compatibility" is used here to mean something more specific; that existing systems as they are deployed today can interoperate with the upgraded systems of the future. This draft explicitly does not provide backwards compatibility, only upgraded systems will understand the OIDs defined in this document.
If backwards compatibility is required, then additional mechanisms will be needed. Migration and interoperability concerns need to be thought about in the context of various types of protocols that make use of X.509 and PKIX with relation to digital signature objects, from online negotiated protocols such as TLS 1.3 and IKEv2 , to nonnegotiated asynchronous protocols such as S/MIME signed email , document signing such as in the context of the European eIDAS regulations [eIDAS2014], and publicly trusted code signing [codeSigningBRsv2.8], as well as myriad other standardized and proprietary protocols and applications that leverage CMS signed structures. Composite simplifies the protocol design work because it can be implemented as a signature algorithm that fits into existing systems.
Hybrid Extensions (Keys and Signatures)
The use of Composite Crypto provides the possibility to process multiple algorithms without changing the logic of applications but updating the cryptographic libraries: onetime change across the whole system. However, when it is not possible to upgrade the crypto engines/libraries, it is possible to leverage X.509 extensions to encode the additional keys and signatures. When the custom extensions are not marked critical, although this approach provides the most backwardcompatible approach where clients can simply ignore the postquantum (or extra) keys and signatures, it also requires all applications to be updated for correctly processing multiple algorithms together.
Intellectual Property Considerations
The following IPR Disclosure relates to this draft:
https://datatracker.ietf.org/ipr/3588/
Contributors and Acknowledgements
This document incorporates contributions and comments from a large group of experts. The Editors would especially like to acknowledge the expertise and tireless dedication of the following people, who attended many long meetings and generated millions of bytes of electronic mail and VOIP traffic over the past few years in pursuit of this document:
Daniel Van Geest (CryptoNext),
Britta Hale,
Tim Hollebeek (Digicert),
Panos Kampanakis (Cisco Systems),
Richard Kisley (IBM),
Serge Mister (Entrust),
Francois Rousseau,
Falko Strenzke,
Felipe Ventura (Entrust),
Alexander Ralien (Siemens),
Jose Ignacio Escribano and
Jan Oupicky
We are grateful to all, including any contributors who may have been inadvertently omitted from this list.
This document borrows text from similar documents, including those referenced below. Thanks go to the authors of those
documents. "Copying always makes things easier and less error prone"  .
Making contributions
Additional contributions to this draft are welcome. Please see the working copy of this draft at, as well as open issues at:
https://github.com/lampswg/draftcompositesigs