<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc SYSTEM "rfc2629-xhtml.ent">
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>

<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="bcp" updates="4253"
     docName="draft-ietf-curdle-rc4-die-die-die-18" ipr="trust200902"
     obsoletes="" submissionType="IETF" xml:lang="en" tocInclude="true"
     tocDepth="4" symRefs="true" sortRefs="true" version="3" number="8758" consensus="true" >

<!-- xml2rfc v2v3 conversion 2.40.1 -->
  <front>

   <title abbrev="Deprecating RC4 in SSH">Deprecating RC4 in Secure Shell (SSH)</title>
    <seriesInfo name="RFC" value="8758"/>
    <seriesInfo name="BCP" value="227"/>

   <author fullname="Loganaden Velvindron" initials="L." surname="Velvindron">
      <organization>cyberstorm.mu</organization>
      <address>
        <postal>
          <street/>
         <city/>
          <region/>
          <code/>
          <country>Mauritius</country>
        </postal>
        <phone/>
        <email>logan@cyberstorm.mu</email>

     </address>
    </author>
    <date year="2020" month="April"/>

   <area>Security</area>
    <workgroup>curdle</workgroup>

   <abstract>
      <t>This document deprecates RC4 in Secure Shell (SSH).  Therefore, this
   document formally moves RFC 4345 to Historic status.
      </t>
    </abstract>
  </front>
  <middle>
    <section numbered="true" toc="default">
      <name>Introduction</name>
      <t>The usage of RC4 suites (also designated as "arcfour") for SSH is
      specified in <xref target="RFC4253" format="default"/> and <xref
      target="RFC4345" format="default"/>. 
     <xref target="RFC4253" format="default"/> specifies the allocation of the "arcfour" cipher for SSH. <xref target="RFC4345" format="default"/> specifies and allocates
     the "arcfour128" and "arcfour256" ciphers for SSH. 
     RC4 encryption has known weaknesses <xref target="RFC7465"
     format="default"/> <xref target="RFC8429" format="default"/>; therefore,
     this document starts the deprecation process for their use in Secure Shell
     (SSH) <xref target="RFC4253" format="default"/>. Accordingly, <xref
     target="RFC4253" format="default"/> is 
     updated to note the deprecation of the RC4 ciphers, and <xref
     target="RFC4345" format="default"/> is moved to Historic status, as all ciphers
      it specifies <bcp14>MUST NOT</bcp14> be used.  </t>
      <section numbered="true" toc="default">
        <name>Requirements Language</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&nbsp;14 <xref target="RFC2119"/>
    <xref target="RFC8174"/> 
    when, and only when, they appear in all capitals, as shown here.
        </t>

      </section>
    </section>
    <section numbered="true" toc="default">
      <name>Updates to RFC 4253</name>
      <t>
<xref target="RFC4253" format="default"/> is updated to prohibit arcfour's use in SSH.
<xref target="RFC4253" sectionFormat="comma" section="6.3"/> allocates the
"arcfour" cipher by defining a list of defined ciphers in which the "arcfour"
cipher appears as optional, as shown in <xref target="OPTIONAL" />.
</t>
      <table align="center" anchor="OPTIONAL">
        <tbody>
          <tr>
            <td align="left">arcfour</td>
            <td align="left"><bcp14>OPTIONAL</bcp14></td>
            <td align="left">the ARCFOUR stream cipher with a 128-bit key</td>
          </tr>
        </tbody>
      </table>
      <t>
This document updates the status of the "arcfour" ciphers in the list
found in <xref target="RFC4253" sectionFormat="comma" section="6.3"/> by moving it
from <bcp14>OPTIONAL</bcp14> to <bcp14>MUST NOT</bcp14>. 
</t>
      <table align="center">
        <tbody>
          <tr>
            <td align="left"> arcfour </td>
            <td align="left"><bcp14>MUST NOT</bcp14> </td>
            <td align="left"> the ARCFOUR stream cipher with a 128-bit key</td>
          </tr>
        </tbody>
      </table>
      <t>
<xref target="RFC4253" format="default"/> defines the "arcfour" ciphers with
the following text: 
</t>
<blockquote>
   The "arcfour" cipher is the Arcfour stream cipher with 128-bit keys. The
   Arcfour cipher is believed to be compatible with the RC4 cipher <xref target="SCHNEIER"
   format="default"/>.  Arcfour (and RC4) has problems with weak keys, and
   should be used with caution.</blockquote>

      <t>
This document updates <xref target="RFC4253" sectionFormat="comma"
section="6.3"/> by replacing the text above with the following text:
</t>
<blockquote>
  The "arcfour" cipher is the Arcfour stream cipher with 128-bit keys.
   The Arcfour cipher is compatible with the RC4 cipher
   <xref target="SCHNEIER" format="default"/>.  Arcfour (and RC4) has known weaknesses <xref target="RFC7465" format="default"/> <xref target="RFC8429" format="default"/> and
   <bcp14>MUST NOT</bcp14> be used.
</blockquote>
    </section>


   <section numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>The IANA has updated the "Encryption Algorithm Names"
      subregistry in the "Secure Shell (SSH) Protocol Parameters" registry <xref
      target="IANA" format="default"/>. The registration procedure is IETF
      review, which is achieved by this document. The registry has been
      updated as follows:</t>
      <table align="center">
        <thead>
          <tr>
            <th align="left">Encryption Algorithm Name</th>
            <th align="left">Reference</th>
            <th align="left">Note</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="left">arcfour</td>
            <td align="left">RFC 8758</td>
            <td align="left">HISTORIC</td>
          </tr>
          <tr>
            <td align="left">arcfour128 </td>
            <td align="left">RFC 8758</td>
            <td align="left">HISTORIC</td>
          </tr>
          <tr>
            <td align="left">arcfour256 </td>
            <td align="left">RFC 8758</td>
            <td align="left">HISTORIC</td>
          </tr>
        </tbody>
      </table>

</section>
    <section anchor="Security" numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>This document only prohibits the use of RC4 in SSH; it introduces no
   new security considerations.</t>
    </section>

  </middle>
  <!--  *****BACK MATTER ***** -->

 <back>
   <references>
      <name>References</name>
      <references>
        <name>Normative References</name>

     <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml"/>
     <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml"/>
      </references>
      <references>

        <name>Informative References</name>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4345.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.4253.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.7465.xml"/>
        <xi:include href="https://xml2rfc.tools.ietf.org/public/rfc/bibxml/reference.RFC.8429.xml"/>

   <reference anchor="SCHNEIER" target="">
          <front>
            <title>Applied Cryptography Second Edition: Protocols, Algorithms,
	    and Source in Code in C </title>
            <seriesInfo name="John Wiley and Sons" value="New York, NY"/>
            <author initials="B." surname="Schneier" fullname="Bruce Schneier">
              <organization/>
            </author>
            <date month="" year="1996"/>
          </front>
        </reference>

        <reference anchor="IANA"
		   target="https://www.iana.org/assignments/ssh-parameters">
          <front>
            <title>Secure Shell (SSH) Protocol Parameters</title>
            <author/>
          </front>
        </reference>
      </references>
    </references>

    <section anchor="Acknowledgements" numbered="false" toc="default">
      <name>Acknowledgements</name>
      <t>The author would like to thank <contact fullname="Eric Rescorla"/>,
      <contact fullname="Daniel Migault"/>, and <contact fullname="Rich Salz"/>.</t>
    </section>

 </back>
</rfc>
