<?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-02" 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="October" day="20"/>

    <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-03'>
   <front>
      <title>Classic McEliece</title>
      <author fullname='Simon Josefsson' initials='S.' surname='Josefsson'>
         </author>
      <date day='7' month='July' 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-03'/>
   
</reference>


<reference anchor='I-D.josefsson-chempat' target='https://datatracker.ietf.org/doc/html/draft-josefsson-chempat-04'>
   <front>
      <title>Chempat: Generic Instantiated PQ/T Hybrid Key Encapsulation Mechanisms</title>
      <author fullname='Simon Josefsson' initials='S.' surname='Josefsson'>
         </author>
      <date day='20' month='October' year='2025'/>
      <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 some
   combinations of traditional Diffie-Hellman key agreement using curves
   P-256, P-384, X25519, X448, brainpoolP256, brainpoolP384 and
   brainpoolP512 combined with post quantum methods ML-KEM-768, ML-KEM-
   1024, Streamlined NTRU Prime sntrup761, Classic McEliece and
   FrodoKEM.

	 </t>
      </abstract>
   </front>
   <seriesInfo name='Internet-Draft' value='draft-josefsson-chempat-04'/>
   
</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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
AVnFJAUfJQAA

-->

</rfc>

