<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version  -->

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
]>


<rfc ipr="trust200902" docName="draft-josefsson-ssh-mceliece-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="Classic McEliece for SSH">Secure Shell Key Exchange Method Using Chempat Hybrid of Classic McEliece and X25519 with SHA-512: mceliece6688128x25519-sha512</title>

    <author fullname="Simon Josefsson">
      <organization></organization>
      <address>
        <email>simon@josefsson.org</email>
      </address>
    </author>

    <date year="2025" month="March" day="18"/>

    <area>int</area>
    
    <keyword>Internet-Draft</keyword>

    <abstract>


<t>This document specify a hybrid key exchange method in the Secure Shell (SSH) protocol based on Classic McEliece (mceliece6688128) and X25519 with SHA-512 using Chempat as the combiner.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-josefsson-ssh-mceliece/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://gitlab.com/jas/ietf-ssh-mceliece"/>.</t>
    </note>


  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>Secure Shell (SSH) <xref target="RFC4251"/> is a secure remote login protocol.
The key exchange protocol described in <xref target="RFC4253"/> supports an extensible set of methods.
<xref target="RFC5656"/> defines how elliptic curves are integrated into this extensible SSH framework, and <xref target="RFC8731"/> specify "curve25519-sha256" to support the pre-quantum elliptic-curve Diffie-Hellman X25519 function <xref target="RFC7748"/>.
In <xref target="I-D.josefsson-ntruprime-ssh"/> it is described how the post-quantum lattice-based Streamlined NTRU Prime is combined with X25519 for SSH, and we base our protocol and document on it but replace sntrup761 with mceliece6688128 and use Chempat <xref target="I-D.josefsson-chempat"/> for the combiner.</t>

<t>Classic McEliece <xref target="I-D.josefsson-mceliece"/> <xref target="CM-spec"/> provides a code-based Key Encapsulation Method (KEM) designed to be safe even against quantum computers.
The variant "mceliece6688128" offers a balance between performance and output sizes.</t>

<t>To hedge against attacks on either of mceliece6688128 or X25519 a hybrid construction Chempat is used, with the intention that the hybrid would be secure if either of the involved algorithms are flawed.</t>

<t>This document specify how to implement key exchange based on a Chempat hybrid between Classic McEliece mceliece6688128 and X25519 <xref target="RFC6234"/> in SSH.</t>

<t>The SHA-512 in the name of this method refers to the HASH used in Section <xref target="RFC4253" section="7.2" sectionFormat="bare">Output from Key Exchange</xref> of <xref target="RFC4253"/>, not that of the hybrid KEM combiner.</t>

</section>
<section anchor="conventions-definitions"><name>Conventions and Definitions</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

</section>
<section anchor="mceliece6688128x25519-sha512"><name>Key Exchange Method: mceliece6688128x25519-sha512</name>

<t>The key-agreement is done by the X25519 Diffie-Hellman protocol as described in Section <xref target="RFC8731" section="3" sectionFormat="bare">Key Exchange Methods</xref> of <xref target="RFC8731"/>, and the mceliece6688128 key encapsulation method described in <xref target="I-D.josefsson-mceliece"/> <xref target="CM-spec"/>.</t>

<t>The key exchange procedure reuse the Elliptic Curve Diffie-Hellman (ECDH) key exchange defined in Sections <xref target="RFC5656" section="4" sectionFormat="bare">ECDH Key Exchange</xref> and <xref target="RFC5656" section="7.1" sectionFormat="bare">ECDH Message Numbers</xref> of <xref target="RFC5656"/>.
The protocol flow and the <spanx style="verb">SSH_MSG_KEX_ECDH_INIT</spanx> and <spanx style="verb">SSH_MSG_KEX_ECDH_REPLY</spanx> messages are identical, except that we use different ephemeral public values Q_C and Q_S and shared secret K as described below.</t>

<t>The <spanx style="verb">SSH_MSG_KEX_ECDH_INIT</spanx> value <spanx style="verb">Q_C</spanx> that holds the client's ephemeral public key <bcp14>MUST</bcp14> be constructed by concatenating the 1044992 byte public key output from the key generator of mceliece6688128 (or mceliece6688128f, see <xref target="mceliece6688128f"/>) with the 32 byte K_A = X25519(a, 9) as described in <xref target="I-D.josefsson-mceliece"/> <xref target="CM-spec"/> and <xref target="RFC8731"/>.
The Q_C value is thus 1045024 bytes.</t>

<t>The <spanx style="verb">SSH_MSG_KEX_ECDH_REPLY</spanx> value <spanx style="verb">Q_S</spanx> that holds the server's ephemeral public key <bcp14>MUST</bcp14> be constructed by concatenating the 208 byte ciphertext output from the key encapsulation mechanism of mceliece6688128 (or mceliece6688128f, see <xref target="mceliece6688128f"/>) with the 32 byte K_B = X25519(b, 9) as described in <xref target="I-D.josefsson-mceliece"/> <xref target="CM-spec"/> and <xref target="RFC8731"/>.
The <spanx style="verb">Q_S</spanx> value is thus 240 bytes.</t>

<t>Clients and servers <bcp14>MUST</bcp14> abort if the length of the received public keys <spanx style="verb">Q_C</spanx> or <spanx style="verb">Q_S</spanx> are not the expected lengths.
An abort for these purposes is defined as a disconnect (<spanx style="verb">SSH_MSG_DISCONNECT</spanx>) of the session and <bcp14>SHOULD</bcp14> use the <spanx style="verb">SSH_DISCONNECT_KEY_EXCHANGE_FAILED</spanx> reason for the message, see Section <xref target="RFC4253" section="11.1" sectionFormat="bare">Disconnection Message</xref> of <xref target="RFC4253"/>.
No further validation is required beyond what is described in <xref target="RFC7748"/>, <xref target="RFC8731"/> and <xref target="I-D.josefsson-mceliece"/> <xref target="CM-spec"/>.</t>

<t>The <spanx style="verb">SSH_MSG_KEX_ECDH_REPLY</spanx> signature value is computed as described in <xref target="RFC5656"/> with the following changes.
Instead of encoding the shared secret <spanx style="verb">K</spanx> as 'mpint', it <bcp14>MUST</bcp14> be encoded as 'string'.
The shared secret K value <bcp14>MUST</bcp14> be the 32-byte output octet string computed by Chempat-X25519-mceliece6688128 <xref target="I-D.josefsson-chempat"/>.</t>

</section>
<section anchor="mceliece6688128f"><name>mceliece6688128f</name>

<t>The f and non-f versions are interoperable.
The f versions have faster key generation, while the non-f versions have simpler key generation.
For example, a key generated with mceliece6688128f can decapsulate ciphertexts that were encapsulated with mceliece6688128, and vice versa.
The secret-key sizes (and formats) are the same, the encapsulation functions are the same, and the decapsulation functions are the same.</t>

<t>Implementations of this protocol can chose between mceliece6688128 or mceliece6688128f, however the name of this protocol is "mceliece6688128x25519-sha512" even for implementations that use mceliece6688128f internally.</t>

<t>Choosing mceliece6688128 generally reduce code size and complexity (at the expense of performance), and choosing mceliece6688128f generally improve performance (at the expense of code size and complexity).</t>

</section>
<section anchor="acknowledgments"><name>Acknowledgments</name>

<t>The protocol and document is based on <xref target="I-D.josefsson-ntruprime-ssh"/>.
The authors would like to thank <contact fullname="Daniel J. Bernstein"/> for discussion and suggesting the mceliece6688128 variant.</t>

</section>
<section anchor="implementation-status"><name>Implementation Status</name>

<t>An earlier implementation of this protocol is available as a patch <xref target="OpenSSH-McEliece-patch"/> for OpenSSH <xref target="OpenSSH"/>, released under a BSD-style license.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The security considerations of <xref target="RFC4251"/>, <xref target="RFC5656"/>, <xref target="RFC7748"/>, <xref target="RFC8731"/>, <xref target="I-D.josefsson-chempat"/> and <xref target="I-D.josefsson-mceliece"/> <xref target="CM-spec"/> <xref target="CM-security"/> <xref target="CM-impl"/> are inherited.</t>

<t>Classic McEliece is a KEM designed for IND-CCA2 security at a very high security level, even against quantum computers.
The algorithm has been studied by researchers for many years, and there are implementations in the public domain for a wide range of architectures.
Chempat is a conservatively designed way to combine a classical and post-quantum method.
However new cryptographic primitives should be introduced and trusted conservatively, and new research findings may be published at any time that may warrant implementation reconsiderations.</t>

<t>The increase in communication size and computational requirements may be a concern for limited computational devices, which would then not be able to take advantage of the improved security properties offered by this work.</t>

<t>As discussed in the security considerations of Curve25519-sha256 <xref target="RFC8731"/>, the X25519 shared secret <spanx style="verb">K</spanx> is used bignum-encoded in that document, and this raise a potential for a hash-processing time side-channel that could leak one bit of the secret due to different length of the bignum sign pad.
This document resolve that problem by using string-encoding instead of bignum-encoding.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>IANA is requested to add a new "Method Name" of "mceliece6688128x25519-sha512" to the "Key Exchange Method Names" registry for Secure Shell (SSH) Protocol Parameters <xref target="IANA-KEX"/> with a "reference" field to this RFC and the "OK to implement" field of "<bcp14>MUST</bcp14>".</t>

</section>


  </middle>

  <back>

    <references title='Normative References'>



<reference anchor='RFC4251' target='https://www.rfc-editor.org/info/rfc4251'>
  <front>
    <title>The Secure Shell (SSH) Protocol Architecture</title>
    <author fullname='T. Ylonen' initials='T.' surname='Ylonen'/>
    <author fullname='C. Lonvick' initials='C.' role='editor' surname='Lonvick'/>
    <date month='January' year='2006'/>
    <abstract>
      <t>The Secure Shell (SSH) Protocol is a protocol for secure remote login and other secure network services over an insecure network. This document describes the architecture of the SSH protocol, as well as the notation and terminology used in SSH protocol documents. It also discusses the SSH algorithm naming system that allows local extensions. The SSH protocol consists of three major components: The Transport Layer Protocol provides server authentication, confidentiality, and integrity with perfect forward secrecy. The User Authentication Protocol authenticates the client to the server. The Connection Protocol multiplexes the encrypted tunnel into several logical channels. Details of these protocols are described in separate documents. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='4251'/>
  <seriesInfo name='DOI' value='10.17487/RFC4251'/>
</reference>

<reference anchor='RFC4253' target='https://www.rfc-editor.org/info/rfc4253'>
  <front>
    <title>The Secure Shell (SSH) Transport Layer Protocol</title>
    <author fullname='T. Ylonen' initials='T.' surname='Ylonen'/>
    <author fullname='C. Lonvick' initials='C.' role='editor' surname='Lonvick'/>
    <date month='January' year='2006'/>
    <abstract>
      <t>The Secure Shell (SSH) is a protocol for secure remote login and other secure network services over an insecure network.</t>
      <t>This document describes the SSH transport layer protocol, which typically runs on top of TCP/IP. The protocol can be used as a basis for a number of secure network services. It provides strong encryption, server authentication, and integrity protection. It may also provide compression.</t>
      <t>Key exchange method, public key algorithm, symmetric encryption algorithm, message authentication algorithm, and hash algorithm are all negotiated.</t>
      <t>This document also describes the Diffie-Hellman key exchange method and the minimal set of algorithms that are needed to implement the SSH transport layer protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='4253'/>
  <seriesInfo name='DOI' value='10.17487/RFC4253'/>
</reference>

<reference anchor='RFC5656' target='https://www.rfc-editor.org/info/rfc5656'>
  <front>
    <title>Elliptic Curve Algorithm Integration in the Secure Shell Transport Layer</title>
    <author fullname='D. Stebila' initials='D.' surname='Stebila'/>
    <author fullname='J. Green' initials='J.' surname='Green'/>
    <date month='December' year='2009'/>
    <abstract>
      <t>This document describes algorithms based on Elliptic Curve Cryptography (ECC) for use within the Secure Shell (SSH) transport protocol. In particular, it specifies Elliptic Curve Diffie-Hellman (ECDH) key agreement, Elliptic Curve Menezes-Qu-Vanstone (ECMQV) key agreement, and Elliptic Curve Digital Signature Algorithm (ECDSA) for use in the SSH Transport Layer protocol. [STANDARDS-TRACK]</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='5656'/>
  <seriesInfo name='DOI' value='10.17487/RFC5656'/>
</reference>

<reference anchor='RFC8731' target='https://www.rfc-editor.org/info/rfc8731'>
  <front>
    <title>Secure Shell (SSH) Key Exchange Method Using Curve25519 and Curve448</title>
    <author fullname='A. Adamantiadis' initials='A.' surname='Adamantiadis'/>
    <author fullname='S. Josefsson' initials='S.' surname='Josefsson'/>
    <author fullname='M. Baushke' initials='M.' surname='Baushke'/>
    <date month='February' year='2020'/>
    <abstract>
      <t>This document describes the specification for using Curve25519 and Curve448 key exchange methods in the Secure Shell (SSH) protocol.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='8731'/>
  <seriesInfo name='DOI' value='10.17487/RFC8731'/>
</reference>

<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
  <front>
    <title>Key words for use in RFCs to Indicate Requirement Levels</title>
    <author fullname='S. Bradner' initials='S.' surname='Bradner'/>
    <date month='March' year='1997'/>
    <abstract>
      <t>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.</t>
    </abstract>
  </front>
  <seriesInfo name='BCP' value='14'/>
  <seriesInfo name='RFC' value='2119'/>
  <seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>

<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
  <front>
    <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
    <author fullname='B. Leiba' initials='B.' surname='Leiba'/>
    <date month='May' year='2017'/>
    <abstract>
      <t>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.</t>
    </abstract>
  </front>
  <seriesInfo name='BCP' value='14'/>
  <seriesInfo name='RFC' value='8174'/>
  <seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>




    </references>

    <references title='Informative References'>



<reference anchor='RFC6234' target='https://www.rfc-editor.org/info/rfc6234'>
  <front>
    <title>US Secure Hash Algorithms (SHA and SHA-based HMAC and HKDF)</title>
    <author fullname='D. Eastlake 3rd' initials='D.' surname='Eastlake 3rd'/>
    <author fullname='T. Hansen' initials='T.' surname='Hansen'/>
    <date month='May' year='2011'/>
    <abstract>
      <t>Federal Information Processing Standard, FIPS</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='6234'/>
  <seriesInfo name='DOI' value='10.17487/RFC6234'/>
</reference>

<reference anchor='RFC7748' target='https://www.rfc-editor.org/info/rfc7748'>
  <front>
    <title>Elliptic Curves for Security</title>
    <author fullname='A. Langley' initials='A.' surname='Langley'/>
    <author fullname='M. Hamburg' initials='M.' surname='Hamburg'/>
    <author fullname='S. Turner' initials='S.' surname='Turner'/>
    <date month='January' year='2016'/>
    <abstract>
      <t>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 ~128-bit and ~224-bit security level, respectively, and are generated deterministically based on a list of required properties.</t>
    </abstract>
  </front>
  <seriesInfo name='RFC' value='7748'/>
  <seriesInfo name='DOI' value='10.17487/RFC7748'/>
</reference>


<reference anchor='I-D.josefsson-mceliece' target='https://datatracker.ietf.org/doc/html/draft-josefsson-mceliece-02'>
   <front>
      <title>Classic McEliece</title>
      <author fullname='Simon Josefsson' initials='S.' surname='Josefsson'>
         </author>
      <date day='17' month='March' year='2025'/>
      <abstract>
	 <t>   This document specifies Classic McEliece, a Key Encapsulation Method
   (KEM) designed for IND-CCA2 security, even against quantum computers.

About This Document

   This note is to be removed before publishing as an RFC.

   Status information for this document may be found at
   https://datatracker.ietf.org/doc/draft-josefsson-mceliece/.

   Source for this draft and an issue tracker can be found at
   https://gitlab.com/jas/ietf-mceliece.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-josefsson-mceliece-02'/>
   
</reference>


<reference anchor='I-D.josefsson-chempat' target='https://datatracker.ietf.org/doc/html/draft-josefsson-chempat-02'>
   <front>
      <title>Chempat: Generic Instantiated PQ/T Hybrid Key Encapsulation Mechanisms</title>
      <author fullname='Simon Josefsson' initials='S.' surname='Josefsson'>
         </author>
      <date day='9' month='December' year='2024'/>
      <abstract>
	 <t>   This document specify Chempat as a generic family of instantiated
   Post-Quantum/Traditional (PQ/T) Hybrid Key Exchange Methods (KEMs).
   The goal is to provide a generic combiner construct that can be
   analysed separately for security assurance, and to offer concrete
   instantiated algorithms for integration into protocol and
   implementations.  Identified instances are provided based on
   traditional Diffie-Hellman key agreement using curves P-256, P-384,
   X25519, X448, brainpoolP256, brainpoolP384 combined with post quantum
   methods ML-KEM-768, ML-KEM-1024, Streamlined NTRU Prime sntrup761,
   and Classic McEliece.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-josefsson-chempat-02'/>
   
</reference>


<reference anchor='I-D.josefsson-ntruprime-ssh' target='https://datatracker.ietf.org/doc/html/draft-josefsson-ntruprime-ssh-03'>
   <front>
      <title>Secure Shell (SSH) Key Exchange Method Using Hybrid Streamlined NTRU Prime sntrup761 and X25519 with SHA-512: sntrup761x25519-sha512</title>
      <author fullname='Markus Friedl' initials='M.' surname='Friedl'>
         <organization>OpenSSH</organization>
      </author>
      <author fullname='Jan Mojzis' initials='J.' surname='Mojzis'>
         <organization>TinySSH</organization>
      </author>
      <author fullname='Simon Josefsson' initials='S.' surname='Josefsson'>
         </author>
      <date day='17' month='August' year='2024'/>
      <abstract>
	 <t>   This document describe a widely deployed hybrid key exchange method
   in the Secure Shell (SSH) protocol that is based on Streamlined NTRU
   Prime sntrup761 and X25519 with SHA-512.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-josefsson-ntruprime-ssh-03'/>
   
</reference>


<reference anchor="CM-spec" target="https://classic.mceliece.org/mceliece-spec-20221023.pdf">
  <front>
    <title>Classic McEliece: conservative code-based cryptography: cryptosystem specification</title>
    <author >
      <organization>Classic McEliece Team</organization>
    </author>
    <date year="2022" month="October"/>
  </front>
</reference>
<reference anchor="CM-impl" target="https://classic.mceliece.org/mceliece-impl-20221023.pdf">
  <front>
    <title>Classic McEliece: conservative code-based cryptography: guide for implementors</title>
    <author >
      <organization>Classic McEliece Team</organization>
    </author>
    <date year="2022" month="October"/>
  </front>
</reference>
<reference anchor="CM-security" target="https://classic.mceliece.org/mceliece-security-20221023.pdf">
  <front>
    <title>Classic McEliece: conservative code-based cryptography: guide for security reviewers</title>
    <author >
      <organization>Classic McEliece Team</organization>
    </author>
    <date year="2022" month="October"/>
  </front>
</reference>
<reference anchor="IANA-KEX" target="https://www.iana.org/assignments/ssh-parameters/">
  <front>
    <title>Secure Shell (SSH) Protocol Parameters: Key Exchange Method Names</title>
    <author >
      <organization>IANA</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="OpenSSH" target="https://www.openssh.com/">
  <front>
    <title>OpenSSH</title>
    <author >
      <organization>OpenSSH team</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>
<reference anchor="OpenSSH-McEliece-patch" target="https://gitlab.com/jas/openssh-portable/-/tree/jas/mceliece">
  <front>
    <title>GitLab branch of OpenSSH with McEliece support</title>
    <author >
      <organization>OpenSSH team, Simon Josefsson</organization>
    </author>
    <date year="n.d."/>
  </front>
</reference>


    </references>



  </back>

<!-- ##markdown-source:
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
/wIOXr+fHyUAAA==

-->

</rfc>

