<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
<!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.5.26 (Ruby 2.6.8) -->
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" ipr="trust200902" docName="draft-dekok-radext-deprecating-radius-01" category="std" consensus="true" submissionType="IETF" tocInclude="true" sortRefs="true" symRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.13.0 -->
  <front>
    <title abbrev="Deprecating RADIUS">Deprecating RADIUS/UDP and RADIUS/TCP</title>
    <seriesInfo name="Internet-Draft" value="draft-dekok-radext-deprecating-radius-01"/>
    <author initials="A." surname="DeKok" fullname="Alan DeKok">
      <organization>FreeRADIUS</organization>
      <address>
        <email>aland@freeradius.org</email>
      </address>
    </author>
    <date year="2023" month="March" day="03"/>
    <area>Internet</area>
    <workgroup>RADEXT Working Group</workgroup>
    <keyword>Internet-Draft</keyword>
    <abstract>
      <t>RADIUS crypto-agility was first mandated as future work by RFC 6421.  The outcome of that work was the publication of RADIUS over TLS (RFC 6614) and RADIUS over DTLS (RFC 7360) as experimental documents.  Those transport protocols have been in wide-spread use for many years in a wide range of networks.  They have proven their utility as replacements for the previous UDP (RFC 2865) and TCP (RFC 6613) transports.  With that knowledge, the continued use of insecure transports for RADIUS has serious and negative implications for privacy and security.</t>
      <t>This document formally deprecates the use of the User Datagram Protocol (UDP) and of the Transport Congestion Protocol (TCP) as transport protocols for RADIUS. These transports are permitted inside of secure networks, but their use even in that environment is strongly discouraged.  For all other environments, the use of secure transports such as IPsec or TLS is mandated.</t>
    </abstract>
    <note removeInRFC="true">
      <name>About This Document</name>
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-dekok-radext-deprecating-radius/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        RADEXT Working Group mailing list (<eref target="mailto:radext@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/radext/"/>.
      </t>
      <t>Source for this draft and an issue tracker can be found at
        <eref target="https://github.com/freeradius/deprecating-radius.git"/>.</t>
    </note>
  </front>
  <middle>
    <section anchor="introduction">
      <name>Introduction</name>
      <t>The RADIUS protocol <xref target="RFC2865"/> was first standardized in 1997, though its roots go back much earlier to 1993.  The protocol uses MD5 <xref target="RFC1321"/> to sign some packets types, and to obfsucate certain attributes such as User-Password.  As originally designed, Access-Request packets were entirely unauthenticated, and could be trivially spoofed as discussed in <xref target="RFC3579"/> Section 4.3.2.  In order to prevent such spoofing, that specification defined the Message-Authenticator attribute (<xref target="RFC3579"/> Section 3.2) which allowed for packets to carry a signature based on HMAC-MD5.</t>
      <t>The state of MD5 security was discussed in <xref target="RFC6151"/>, which led to the state of RADIUS security being reviewed in <xref target="RFC6421"/> Section 3.  The outcome of that review was the remainder of <xref target="RFC6421"/>, which created crypto-agility requirements for RADIUS.</t>
      <t>RADIUS was traditionally secured with IPSec, as described in <xref target="RFC3579"/> Section 4.2:</t>
      <ul empty="true">
        <li>
          <t>To address the security vulnerabilities of RADIUS/EAP,
implementations of this specification SHOULD support IPsec
(RFC2401) along with IKE (RFC2409) for key management.  IPsec ESP
(RFC2406) with non-null transform SHOULD be supported, and IPsec
ESP with a non-null encryption transform and authentication
support SHOULD be used to provide per-packet confidentiality,
authentication, integrity and replay protection.  IKE SHOULD be
used for key management.</t>
        </li>
      </ul>
      <t>The use of IPSec allowed RADIUS to be sent privately, and securely, across the Internet.  However, experience showed that TLS was in many ways simpler (implementation and deployment) than IPSec.</t>
      <t>RADIUS/TLS <xref target="RFC6614"/> and RADIUS/DTLS <xref target="RFC7360"/> were then defined in order to meet the crypto-agility requirements of <xref target="RFC6421"/>.  RADIUS/TLS has been in wide-spread use for about a decade, including eduroam, and more recently OpenRoaming.  RADIUS/DTLS has seen less use across the public Internet, but it nonetheless has multiple implementations.</t>
      <t>As of the writing of this specification, RADIUS/UDP is still widely used, even though it depends on MD5 and "ad hoc" constructions for security.  While MD5 has been broken, it is a testament to the design of RADIUS that there have been (as yet) no attacks on RADIUS Authenticator signatures which are stronger than brute-force.</t>
      <t>However, the problens with MD5 means that if a someone can view unencrypted RADIUS traffic, even a hobbyist attacker can crack all possible RADIUS shared secrets of eight characters or less.  Such attacks can also result in compromise of all passwords carried in the User-Password attribute.</t>
      <t>Even if a stronger packet signature method was used as in <xref target="RFC6218"/>, it would not fully address the issues with RADIUS.  Most information in RADIUS is sent in cleartext, and only a few attributes are hidden via obfuscation methods which rely on more "ad hoc" MD5 constructions.  The privacy implications of this openness are severe.</t>
      <t>Any observer of non-TLS RADIUS traffic is able to tell who is logging in to the network, what devices they are using, where they are logging in from, and their approximate location (usually city).  With location-based attributes as defined in <xref target="RFC5580"/>, a users location may be determined to within 15 or so meters.  An observer can use RADIUS accounting packets to determine how long a user is online, and to track a summary of their total traffic (upload and download totals).</t>
      <t>When RADIUS/UDP is used across the public Internet, the location of corporate executives can potentially be tracked in real-time (usually 10 minute intervals), to within 15 meters.  Their devices can be identified, and tracked.  Any passwords they send via the User-Password attribute can be be compromised.  The negative implications for security and individual safety are obvious.</t>
      <t>These issues are only partly mitigated when the attributes RADIUS is carrying define their own increased security and privacy.  For example, some authentication methods such EAP-TLS, EAP-TTLS, etc. allow for User-Name privacy and for more secure transport of passwords.  The use of MAC address randomization can limit device informationidentification to a particular manufacterer, instead of to a unique device.</t>
      <t>However, these authentication methods are not always used or are not always available.  Even if these methods were used ubiquitously, they do not protect all of the information which is publicly available when RADIUS/UDP or RADIUS/TCP is used.</t>
      <t>It is no longer acceptable for RADIUS to rely on MD5 for security.  It is no longer acceptable to send device or location information in clear text.  This document therefore deprecates insecure uses of RADIUS, and mandates the use of secure TLS-based transport layers.</t>
      <t>The use of a secure transport such as IPSec or TLS ensures complete privacy and security for all RADIUS traffic.  An observer is limited to knowing rough activity levels of a client or server.  That is, an observer can tell if there are a few users on a NAS, or many users on a NAS.  All other information is hidden from all observers.</t>
      <section anchor="overview">
        <name>Overview</name>
        <t>The rest of this document begins a summary of issues with RADIUS, and shows just how trivial it is to crack RADIUS/UDP security.  We then mandate the use of secure transport, and describe what that means.  We give recommendations on how current systems can be migrated to using TLS.  We conclude with privacy and security considerations.</t>
        <t>As IPSec has been discussed previously in the context of RADIUS, we devote little time to it here, other than to say it is an acceptable solution.  As the bulk of the current efforts are focussed on TLS, this document likewise focusses on TLS.</t>
      </section>
    </section>
    <section anchor="terminology">
      <name>Terminology</name>
      <t>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 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>
      <ul spacing="normal">
        <li>RADIUS</li>
      </ul>
      <ul empty="true">
        <li>
          <t>The Remote Authentication Dial-In User Service protocol, as defined in <xref target="RFC2865"/>, <xref target="RFC2865"/>, and <xref target="RFC5176"/> among others.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>RADIUS/UDP</li>
      </ul>
      <ul empty="true">
        <li>
          <t>RADIUS over the User Datagram Protocol as define above.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>RADIUS/TCP</li>
      </ul>
      <ul empty="true">
        <li>
          <t>RADIUS over the Transport Congestion Protocol <xref target="RFC6613"/></t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>RADIUS/TLS</li>
      </ul>
      <ul empty="true">
        <li>
          <t>RADIUS over the Transport Layer Security protocol <xref target="RFC6614"/></t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>RADIUS/DTLS</li>
      </ul>
      <ul empty="true">
        <li>
          <t>RADIUS over the Datagram Transport Layer Security protocol  <xref target="RFC7360"/></t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>TLS</li>
      </ul>
      <ul empty="true">
        <li>
          <t>the Transport Layer Security protocol.  Generally when we refer to TLS in this document, we are referring to RADIUS/TLS and/or RADIUS/DTLS.</t>
        </li>
      </ul>
      <ul spacing="normal">
        <li>NAS</li>
      </ul>
      <ul empty="true">
        <li>
          <t>Network Access Server, which is a RADIUS client.</t>
        </li>
      </ul>
    </section>
    <section anchor="overview-of-issues-with-radius">
      <name>Overview of issues with RADIUS</name>
      <t>There are a number of issues with RADIUS.   For one, RADIUS sends most information "in the clear", with obvious privacy implications.</t>
      <t>Further, MD5 has been broken for over a decade, as summarized in <xref target="RFC6151"/>.  No protocol should be using MD5 for anything.  Even if MD5 was not broken, computers have gotten substantially faster in the past thirty years.  This speed increase makes it possible for the average hobbyist to perform brute-force attacks to crack even seemingly complex shared secrets.</t>
      <t>We address each of these issues in detail below.</t>
      <section anchor="information-is-sent-in-clear-text">
        <name>Information is sent in Clear Text</name>
        <t>Other than a few attributes such as User-Password, all RADIUS traffic is sent "in the clear".  The resulting traffic has a large number of privacy issues.  We refer to <xref target="RFC6973"/>, and specifically to Section 5 of that document for detailed discussion.  RADIUS is vulnerable to all of the issues raised by <xref target="RFC6973"/>.</t>
        <t>There are clear privacy and security information with sending user identifiers, and user locations <xref target="RFC5580"/> in clear-text across the Internet.  As such, the use of clear-text protocols across insecure networks is no longer acceptable.</t>
      </section>
      <section anchor="md5-has-been-broken">
        <name>MD5 has been broken</name>
        <t>Attacks on MD5 are summarized in part in <xref target="RFC6151"/>. While there have not been many new attacks in the decade since <xref target="RFC6151"/> was published, that does not mean that further attacks do not exist.  It is more likely that no one is looking for new attacks.</t>
        <t>It is reasonable to expect that new research can further break MD5, but also that such research may not be publicly available.</t>
      </section>
      <section anchor="complexity-of-cracking-radius-shared-secrets">
        <name>Complexity of cracking RADIUS shared secrets</name>
        <t>The cost of cracking a a shared secret can only go down over time as computation becomes cheaper.  The issue is made worse because of the way MD5 is used in RADIUS.  The attacker does not have to calculate the hash over the entire packet, as that can be precalculated, and cached.  The attacker can simply begin with that precalculated portion, and brute-force only the shared secret portion.</t>
        <t>At the time of writing this document, an "off the shelf" commodity computer can calculate at least 100M MD5 hashes per second.  If we limit shared secrets to upper/lowercase letters, numbers, and a few "special" characters, we have 64 possible characters for shared secrets.  Which means that for 8-character passwords, there are 2^48 possible password combinations.</t>
        <t>The result is that using one readily available machine, it takes approximately 32 days to brute-force the entire 8 octet / 64 character password space.  The problem is even worse when graphical processing units (GPUs) are used. A high-end GPU is capable of performing more than 64 billion hashes per second.  At that rate, the entire 8 character space described above can be searched in approximately 90 minutes.</t>
        <t>This is an attack which is feasible today for a hobbyist. Increasing the size of the character set raises the cost of cracking, but not enough to be secure.  Increasing the character set to 93 characters means that the hobbyist using a GPU could search the entire 8 character space in about a day.</t>
        <t>Increasing the length of the shared secret a bit helps.  For secrets ten characters long, a GPU can search a 64-character space in about six months, and a 93 character space would take approximately 24 years.</t>
        <t>The brute-force attack is also trivially parallelizable.  Nation-states have sufficient resources to deploy hundreds to thousands of systems dedicated to these attacks.  That realization means that a "time to crack" of 24 years is simply expensive, but is not particularly difficult.</t>
        <t>Whether the above numbers  exactly correct, or only approximate is immaterial.  These attacks will only get better over time.  The cost to crack shared secrets will only go down.</t>
        <t>Even worse, administrators do not always derive shared secrets from secure sources of random numbers.  The "time to crack" numbers given above are the absolute best case, assuming administrators follow best practices for creating secure shared secrets.  For shared secrets created manually by a person, the search space is orders of magnitude smaller than the best case outlined above.</t>
        <t>It should be assumed that an average attacker with modest resource can crack most human-derived shared secrets in minutes, if not seconds.</t>
        <t>Despite the ease of attacking MD5, it is still a common practice for some "cloud" and other RADIUS providers to send RADIUS/UDP packets over the Internet "in the clear".  It is also common practice for administrators to use "short" shared secrets, and to use shared secrets created by a person, or derived from a limited character set.  Theses practice are followed for ease of use of administrators, but they are also highly insecure.</t>
      </section>
      <section anchor="tunnel-password-and-coa-request-packets">
        <name>Tunnel-Password and CoA-Request packets</name>
        <t>There are similar security issues for the Tunnel-Password attribute, at least in CoA-Request and Disconnect-Request packets.</t>
        <t><xref target="RFC5176"/> Section 2.3 says:</t>
        <artwork><![CDATA[
Request Authenticator

   In Request packets, the Authenticator value is a 16-octet MD5
   [RFC1321] checksum, called the Request Authenticator.  The
   Request Authenticator is calculated the same way as for an
   Accounting-Request, specified in [RFC2866].
]]></artwork>
        <t>Where <xref target="RFC2866"/> Section 3 says:</t>
        <artwork><![CDATA[
  The NAS and RADIUS accounting server share a secret.  The Request
  Authenticator field in Accounting-Request packets contains a one-
  way MD5 hash calculated over a stream of octets consisting of the
  Code + Identifier + Length + 16 zero octets + request attributes +
  shared secret (where + indicates concatenation).  The 16 octet MD5
  hash value is stored in the Authenticator field of the
  Accounting-Request packet.
]]></artwork>
        <t>Taken together, these defintions means that for CoA-Request packets, all attribute obfuscation is calculated with the Reply Authenticator being all zeroes.</t>
        <t><xref target="RFC5176"/> Section 3.6 allows for Tunnel-Password in CoA-Request packets:</t>
        <artwork><![CDATA[
  ...
  Change-of-Authorization Messages
  
  Request   ACK      NAK   #   Attribute
  ...
  0+        0        0    69   Tunnel-Password (Note 5)
  ...
  (Note 5) When included within a CoA-Request, these attributes
  represent an authorization change request.  Where tunnel attributes
  are included within a successful CoA-Request, all existing tunnel
  attributes are removed and replaced by the new attribute(s).
]]></artwork>
        <t>However, <xref target="RFC2868"/> Section 3.5 says that Tunnel-Password is encrypted with the Request Authenticator:</t>
        <artwork><![CDATA[
  Call the shared secret S, the pseudo-random 128-bit Request
  Authenticator (from the corresponding Access-Request packet) R,
]]></artwork>
        <t>The assumption that the Request Authenticator is random data is true for Access-Request packets.  It is not true for CoA-Request packets</t>
        <t>That is, when the Tunnel-Password attribute is used in CoA-Request packets, the only source of randomness in the obfuscation is the salt, as defined in <xref target="RFC2868"/> Section 3.5;</t>
        <artwork><![CDATA[
Salt
  The Salt field is two octets in length and is used to ensure the
  uniqueness of the encryption key used to encrypt each instance of
  the Tunnel-Password attribute occurring in a given Access-Accept
  packet.  The most significant bit (leftmost) of the Salt field
  MUST be set (1).  The contents of each Salt field in a given
  Access-Accept packet MUST be unique.
]]></artwork>
        <t>Which means that there is only 15 bits of entropy in the Tunnel-Password obfuscation (plus the secret).  It is not known if this limitation makes it easier to determine the contents of the Tunnel-Password.  However, it cannot be a good thing, and it is one more reason to deprecate RADIUS/UDP.</t>
      </section>
    </section>
    <section anchor="all-short-shared-secrets-have-been-compromised">
      <name>All short Shared Secrets have been compromised</name>
      <t>Unless RADIUS packets are sent over a secure network (IPsec, TLS, etc.), administrators should assume that any shared secret of 8 characters or less has been immediately compromised.  Administrators should assume that any shared secret of 10 characters or less has been compromised by an attacker with significant resources.  Administrators should also assume that any private information (such as User-Password) which depends on such shared secrets has also been compromised.</t>
      <t>Further, if a User-Password has been sent over the Internet via RADIUS/UDP or RADIUS/TCP in the last decade, you should assume that password has been compromised by an attacker with sufficient resources.</t>
    </section>
    <section anchor="deprecating-insecure-transports">
      <name>Deprecating Insecure transports</name>
      <t>The solution to an insecure protocol using thirty year-old cryptography is to deprecate the insecure cryptography, and to mandate modern cryptographic transport.</t>
      <section anchor="deprecating-udp-and-tcp-as-transports">
        <name>Deprecating UDP and TCP as transports</name>
        <t>RADIUS/UDP and RADIUS/TCP MUST NOT be used outside of secure networks.  A secure network is one which is known to be safe from eavesdroppers, attackers, etc.</t>
        <t>For example, if IPsec is used between two systems, then those systems may use RADIUS/UDP or RADIUS/TCP over the IPsec connection.</t>
        <t>Similarly, RADIUS/UDP and RADIUS/TCP may be used in secure management networks.  However, administrators should not assume that such uses are secure.</t>
        <t>Using RADIUS/UDP and RADIUS/TCP in any environment is still NOT RECOMMENDED.  A network misconfiguration could result in the RADIUS traffic being sent over an insecure network.  Neither the RADIUS client nor the RADIUS server would be aware of this misconfiguration.</t>
        <t>In contrast, when TLS is used, the RADIUS endpoints are aware of all security issues, and can enforce security for themselves.</t>
      </section>
      <section anchor="mandating-secure-transports">
        <name>Mandating Secure transports</name>
        <t>All systems sending RADIUS packets outside of secure networks MUST use either IPSec, or RADIUS/TLS, or RADIUS/DTLS.</t>
      </section>
      <section anchor="crypto-agility">
        <name>Crypto-Agility</name>
        <t>The crypto-agility requirements of <xref target="RFC6421"/> are addressed in <xref target="RFC6614"/> Appendix C, and in Section 10.1 of <xref target="RFC7360"/>.  For clarity, we repeat the text of <xref target="RFC7360"/> here, with some minor modifications to update references, but not content.</t>
        <t>Section 4.2 of <xref target="RFC6421"/> makes a number of recommendations about security properties of new RADIUS proposals.  All of those recommendations are satisfied by using TLS or DTLS as the transport layer.</t>
        <t>Section 4.3 of <xref target="RFC6421"/> makes a number of recommendations about backwards compatibility with RADIUS.  <xref target="RFC7360"/> Section 3 addresses these concerns in detail.</t>
        <t>Section 4.4 of <xref target="RFC6421"/> recommends that change control be ceded to the IETF, and that interoperability is possible.  Both requirements are satisfied.</t>
        <t>Section 4.5 of <xref target="RFC6421"/> requires that the new security methods apply to all packet types.  This requirement is satisfied by allowing TLS and DTLS to be used for all RADIUS traffic.  In addition, <xref target="RFC7360"/> Section 3, addresses concerns about documenting the transition from legacy RADIUS to crypto-agile RADIUS.</t>
        <t>Section 4.6 of <xref target="RFC6421"/> requires automated key management.  This requirement is satisfied by using TLS or DTLS key management.</t>
        <t>We can now finalize the work began in <xref target="RFC6421"/>.  We now state that new RADIUS specifications MUST NOT create any new cryptographic primitives to sign individual packets, or to obfuscate the contents of any attributes.  All security and privacy MUST instead be provided by a secure transport layer such as TLS.  Simply using IPsec is not enough, as the use (or not) of IPsec is unknown to the RADIUS application.  For example, when the IPsec connection is down, the RADIUS application sees 100% packet loss for no reason which can be determined.  In constrast, a failed TLS connection may return a "connection refused" error to the application, or any one of many TLS errors indicating which exact part of the TLS conversion failed during negotiation.</t>
        <t>It is NOT RECOMMENDED to define new attributes which use the content obfuscation methods defined for User-Password or Tunnel-Password.  We would like to forbid such constructs entirely.  We recognize that RADIUS/UDP will still be in use for many years, and that new standards may require some modicrum of privacy.  As a result, it is difficult to forbid the use of these constructs.</t>
        <t>That being said, there has been no need since <xref target="RFC2868"/> in 2000 for new attribute which use these obfuscation methods.  We believe therefore that there will be no demand for this kind of new attribute.</t>
      </section>
    </section>
    <section anchor="migration-path-and-recommendations">
      <name>Migration Path and Recommendations</name>
      <t>We recognize that it is difficult to upgrade legacy devices with new cryptographic protocols and user interfaces.  The problem is made worse because the volume of RADIUS devices which are in use.  The exact number is unknown, and can only be approximated.  Our best guesses would be in the order of hundreds of thousands, if not millions of RADIUS/UDP devices are in daily use.</t>
      <t>We therefore need to define a migration path to using secure transports.  We give a few migration steps by making stronger recommendations for shared secrets.  Where <xref target="RFC6614"/> Section 2.3 makes support for TLS-PSK optional, we suggest that RADIUS/TLS and RADIUS/DTLS implementations SHOULD support TLS-PSK.  Implementation and operational considerations for TLS-PSK are given in <xref target="I-D.dekok-radext-tls-psk"/>, and we do not repeat them here.</t>
      <section anchor="shared-secrets">
        <name>Shared Secrets</name>
        <t><xref target="RFC2865"/> Section 3 says:</t>
        <ul empty="true">
          <li>
            <t>It is preferred that the secret be at least 16
octets.  This is to ensure a sufficiently large range for the
secret to provide protection against exhaustive search attacks.
The secret MUST NOT be empty (length 0) since this would allow
packets to be trivially forged.</t>
          </li>
        </ul>
        <t>This recommendation is no longer adequate, so we strengthen it here.</t>
        <t>RADIUS implementations MUST support shared secrets of at least 32 octets, and SHOULD support shared secrets of 64 octets.  Implementations MUST warn administrators that the shared secret is insecure if it is 10 octets or less in length.</t>
        <t>Administrators SHOULD use shared secrets of at least 24 octets, generated using a source of secure random numbers.   Any other practice is likely to lead to compromise of the shared secret, user information, and possibly of the entire network.</t>
        <t>Creating secure shared secrets is not difficult.  One solution is to use a simple script given below.  While the script is not portable to all possible systems, the intent here is to document a concise and simple method for creating secrets which are secure, and humanly manageable.</t>
        <ul empty="true">
          <li>
            <t>#!/usr/bin/env perl
use MIME::Base32;
use Crypt::URandom();
print join('-', unpack("(A4)*", lc encode_base32(Crypt::URandom::urandom(12)))), "\n";</t>
          </li>
        </ul>
        <t>This script reads 96 bits of random data from a secure source, encodes it in Base32, and then makes it easier for people to work with.  The generated secrets are of the form "2nw2-4cfi-nicw-3g2i-5vxq".  This form of secret will be accepted by any known implementation which supports at least 24 octets for shared secrets.</t>
        <t>Given the simplicity of creating strong secrets, there is no excuse for using weak shared secrets with RADIUS.  The management overhead of dealing with complex secrets is less than the management overhead of dealing with compromised networks.</t>
        <t>RADIUS implementors SHOULD provide tools for administrators which can create and manage secure shared secrets.</t>
        <t>Given the insecurity of RADIUS, the absolute minimum acceptable security is to use strong shared secrets.  However, administrator overhead for TLS-PSK is not substantially higher than simple shared secrets, and TLS-PSK offers significantly increased security and privacy.</t>
      </section>
    </section>
    <section anchor="privacy-considerations">
      <name>Privacy Considerations</name>
      <t>The primary focus of this document is addressing privacy considerations for RADIUS.</t>
      <t>Deprecating insecure transport for RADIUS, and requiring secure transport means that personally identifying information is no longer sent "in the clear".  As noted earlier in this document, such information can include MAC addresses, user identifiers, and user locations.</t>
    </section>
    <section anchor="security-considerations">
      <name>Security Considerations</name>
      <t>The primary focus of this document is addressing security considerations for RADIUS.</t>
      <t>Deprecating insecure transport for RADIUS, and requiring secure transport means that historical and/or future security issues with the RADIUS protocol no longer apply.</t>
      <t>Experience has shown that it can be difficult to configure and update certificates in a RADIUS environment.  Public Certification Authorities (CAs) will not issue certificates specifically for use by RADIUS servers.  As for updates, certificates may be valid for many years.  By the time a certificate is up for renewal, the people and processes responsible for it may have changed.  Which means that updating certificates can be a complex and error-prone task.</t>
    </section>
    <section anchor="iana-considerations">
      <name>IANA Considerations</name>
      <t>There are no IANA considerations in this document.</t>
      <t>RFC Editor: This section may be removed before final publication.</t>
    </section>
    <section anchor="acknowledgements">
      <name>Acknowledgements</name>
      <t>TBD.</t>
    </section>
    <section anchor="changelog">
      <name>Changelog</name>
      <ul spacing="normal">
        <li>01 - added more discussion of IPSec, and move TLS-PSK to its own document,</li>
      </ul>
    </section>
  </middle>
  <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="BCP14" 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">
              <organization/>
            </author>
            <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>
        <reference anchor="RFC2865" target="https://www.rfc-editor.org/info/rfc2865">
          <front>
            <title>Remote Authentication Dial In User Service (RADIUS)</title>
            <author fullname="C. Rigney" initials="C." surname="Rigney">
              <organization/>
            </author>
            <author fullname="S. Willens" initials="S." surname="Willens">
              <organization/>
            </author>
            <author fullname="A. Rubens" initials="A." surname="Rubens">
              <organization/>
            </author>
            <author fullname="W. Simpson" initials="W." surname="Simpson">
              <organization/>
            </author>
            <date month="June" year="2000"/>
            <abstract>
              <t>This document describes a protocol for carrying authentication, authorization, and configuration information between a Network Access Server which desires to authenticate its links and a shared Authentication Server.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2865"/>
          <seriesInfo name="DOI" value="10.17487/RFC2865"/>
        </reference>
        <reference anchor="RFC6421" target="https://www.rfc-editor.org/info/rfc6421">
          <front>
            <title>Crypto-Agility Requirements for Remote Authentication Dial-In User Service (RADIUS)</title>
            <author fullname="D. Nelson" initials="D." role="editor" surname="Nelson">
              <organization/>
            </author>
            <date month="November" year="2011"/>
            <abstract>
              <t>This memo describes the requirements for a crypto-agility solution for Remote Authentication Dial-In User Service (RADIUS).  This  document is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6421"/>
          <seriesInfo name="DOI" value="10.17487/RFC6421"/>
        </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">
              <organization/>
            </author>
            <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">
              <organization/>
            </author>
            <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>
        <name>Informative References</name>
        <reference anchor="RFC1321" target="https://www.rfc-editor.org/info/rfc1321">
          <front>
            <title>The MD5 Message-Digest Algorithm</title>
            <author fullname="R. Rivest" initials="R." surname="Rivest">
              <organization/>
            </author>
            <date month="April" year="1992"/>
            <abstract>
              <t>This document describes the MD5 message-digest algorithm. The algorithm takes as input a message of arbitrary length and produces as output a 128-bit "fingerprint" or "message digest" of the input.  This memo provides information for the Internet community.  It does not specify an Internet standard.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="1321"/>
          <seriesInfo name="DOI" value="10.17487/RFC1321"/>
        </reference>
        <reference anchor="RFC2866" target="https://www.rfc-editor.org/info/rfc2866">
          <front>
            <title>RADIUS Accounting</title>
            <author fullname="C. Rigney" initials="C." surname="Rigney">
              <organization/>
            </author>
            <date month="June" year="2000"/>
            <abstract>
              <t>This document describes a protocol for carrying accounting information between a Network Access Server and a shared Accounting Server.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2866"/>
          <seriesInfo name="DOI" value="10.17487/RFC2866"/>
        </reference>
        <reference anchor="RFC2868" target="https://www.rfc-editor.org/info/rfc2868">
          <front>
            <title>RADIUS Attributes for Tunnel Protocol Support</title>
            <author fullname="G. Zorn" initials="G." surname="Zorn">
              <organization/>
            </author>
            <author fullname="D. Leifer" initials="D." surname="Leifer">
              <organization/>
            </author>
            <author fullname="A. Rubens" initials="A." surname="Rubens">
              <organization/>
            </author>
            <author fullname="J. Shriver" initials="J." surname="Shriver">
              <organization/>
            </author>
            <author fullname="M. Holdrege" initials="M." surname="Holdrege">
              <organization/>
            </author>
            <author fullname="I. Goyret" initials="I." surname="Goyret">
              <organization/>
            </author>
            <date month="June" year="2000"/>
            <abstract>
              <t>This document defines a set of RADIUS (Remote Authentication Dial In User Service) attributes designed to support the provision of compulsory tunneling in dial-up networks.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="2868"/>
          <seriesInfo name="DOI" value="10.17487/RFC2868"/>
        </reference>
        <reference anchor="RFC3579" target="https://www.rfc-editor.org/info/rfc3579">
          <front>
            <title>RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)</title>
            <author fullname="B. Aboba" initials="B." surname="Aboba">
              <organization/>
            </author>
            <author fullname="P. Calhoun" initials="P." surname="Calhoun">
              <organization/>
            </author>
            <date month="September" year="2003"/>
            <abstract>
              <t>This document defines Remote Authentication Dial In User Service (RADIUS) support for the Extensible Authentication Protocol (EAP), an authentication framework which supports multiple authentication mechanisms.  In the proposed scheme, the Network Access Server (NAS) forwards EAP packets to and from the RADIUS server, encapsulated within EAP-Message attributes.  This has the advantage of allowing the NAS to support any EAP authentication method, without the need for method- specific code, which resides on the RADIUS server.  While EAP was originally developed for use with PPP, it is now also in use with IEEE 802.  This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="3579"/>
          <seriesInfo name="DOI" value="10.17487/RFC3579"/>
        </reference>
        <reference anchor="RFC5176" target="https://www.rfc-editor.org/info/rfc5176">
          <front>
            <title>Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)</title>
            <author fullname="M. Chiba" initials="M." surname="Chiba">
              <organization/>
            </author>
            <author fullname="G. Dommety" initials="G." surname="Dommety">
              <organization/>
            </author>
            <author fullname="M. Eklund" initials="M." surname="Eklund">
              <organization/>
            </author>
            <author fullname="D. Mitton" initials="D." surname="Mitton">
              <organization/>
            </author>
            <author fullname="B. Aboba" initials="B." surname="Aboba">
              <organization/>
            </author>
            <date month="January" year="2008"/>
            <abstract>
              <t>This document describes a currently deployed extension to the Remote Authentication Dial In User Service (RADIUS) protocol, allowing dynamic changes to a user session, as implemented by network access server products.  This includes support for disconnecting users and changing authorizations applicable to a user session. This memo provides information for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5176"/>
          <seriesInfo name="DOI" value="10.17487/RFC5176"/>
        </reference>
        <reference anchor="RFC5580" target="https://www.rfc-editor.org/info/rfc5580">
          <front>
            <title>Carrying Location Objects in RADIUS and Diameter</title>
            <author fullname="H. Tschofenig" initials="H." role="editor" surname="Tschofenig">
              <organization/>
            </author>
            <author fullname="F. Adrangi" initials="F." surname="Adrangi">
              <organization/>
            </author>
            <author fullname="M. Jones" initials="M." surname="Jones">
              <organization/>
            </author>
            <author fullname="A. Lior" initials="A." surname="Lior">
              <organization/>
            </author>
            <author fullname="B. Aboba" initials="B." surname="Aboba">
              <organization/>
            </author>
            <date month="August" year="2009"/>
            <abstract>
              <t>This document describes procedures for conveying access-network ownership and location information based on civic and geospatial location formats in Remote Authentication Dial-In User Service (RADIUS) and Diameter.</t>
              <t>The distribution of location information is a privacy-sensitive task. Dealing with mechanisms to preserve the user's privacy is important and is addressed in this document.  [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="5580"/>
          <seriesInfo name="DOI" value="10.17487/RFC5580"/>
        </reference>
        <reference anchor="RFC6151" target="https://www.rfc-editor.org/info/rfc6151">
          <front>
            <title>Updated Security Considerations for the MD5 Message-Digest and the HMAC-MD5 Algorithms</title>
            <author fullname="S. Turner" initials="S." surname="Turner">
              <organization/>
            </author>
            <author fullname="L. Chen" initials="L." surname="Chen">
              <organization/>
            </author>
            <date month="March" year="2011"/>
            <abstract>
              <t>This document updates the security considerations for the MD5 message digest algorithm.  It also updates the security considerations for HMAC-MD5.  This document is not an Internet Standards Track  specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6151"/>
          <seriesInfo name="DOI" value="10.17487/RFC6151"/>
        </reference>
        <reference anchor="RFC6218" target="https://www.rfc-editor.org/info/rfc6218">
          <front>
            <title>Cisco Vendor-Specific RADIUS Attributes for the Delivery of Keying Material</title>
            <author fullname="G. Zorn" initials="G." surname="Zorn">
              <organization/>
            </author>
            <author fullname="T. Zhang" initials="T." surname="Zhang">
              <organization/>
            </author>
            <author fullname="J. Walker" initials="J." surname="Walker">
              <organization/>
            </author>
            <author fullname="J. Salowey" initials="J." surname="Salowey">
              <organization/>
            </author>
            <date month="April" year="2011"/>
            <abstract>
              <t>This document defines a set of vendor-specific RADIUS Attributes designed to allow both the secure transmission of cryptographic keying material and strong authentication of any RADIUS message. These attributes have been allocated from the Cisco vendor-specific space and have been implemented by multiple vendors.  This document  is not an Internet Standards Track specification; it is published for informational purposes.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6218"/>
          <seriesInfo name="DOI" value="10.17487/RFC6218"/>
        </reference>
        <reference anchor="RFC6613" target="https://www.rfc-editor.org/info/rfc6613">
          <front>
            <title>RADIUS over TCP</title>
            <author fullname="A. DeKok" initials="A." surname="DeKok">
              <organization/>
            </author>
            <date month="May" year="2012"/>
            <abstract>
              <t>The Remote Authentication Dial-In User Server (RADIUS) protocol has, until now, required the User Datagram Protocol (UDP) as the underlying transport layer.  This document defines RADIUS over the Transmission Control Protocol (RADIUS/TCP), in order to address handling issues related to RADIUS over Transport Layer Security (RADIUS/TLS).  It permits TCP to be used as a transport protocol for RADIUS only when a transport layer such as TLS or IPsec provides confidentiality and security.  This document defines an Experimental Protocol for the Internet community.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6613"/>
          <seriesInfo name="DOI" value="10.17487/RFC6613"/>
        </reference>
        <reference anchor="RFC6614" target="https://www.rfc-editor.org/info/rfc6614">
          <front>
            <title>Transport Layer Security (TLS) Encryption for RADIUS</title>
            <author fullname="S. Winter" initials="S." surname="Winter">
              <organization/>
            </author>
            <author fullname="M. McCauley" initials="M." surname="McCauley">
              <organization/>
            </author>
            <author fullname="S. Venaas" initials="S." surname="Venaas">
              <organization/>
            </author>
            <author fullname="K. Wierenga" initials="K." surname="Wierenga">
              <organization/>
            </author>
            <date month="May" year="2012"/>
            <abstract>
              <t>This document specifies a transport profile for RADIUS using Transport Layer Security (TLS) over TCP as the transport protocol. This enables dynamic trust relationships between RADIUS servers.   [STANDARDS-TRACK]</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6614"/>
          <seriesInfo name="DOI" value="10.17487/RFC6614"/>
        </reference>
        <reference anchor="RFC6973" target="https://www.rfc-editor.org/info/rfc6973">
          <front>
            <title>Privacy Considerations for Internet Protocols</title>
            <author fullname="A. Cooper" initials="A." surname="Cooper">
              <organization/>
            </author>
            <author fullname="H. Tschofenig" initials="H." surname="Tschofenig">
              <organization/>
            </author>
            <author fullname="B. Aboba" initials="B." surname="Aboba">
              <organization/>
            </author>
            <author fullname="J. Peterson" initials="J." surname="Peterson">
              <organization/>
            </author>
            <author fullname="J. Morris" initials="J." surname="Morris">
              <organization/>
            </author>
            <author fullname="M. Hansen" initials="M." surname="Hansen">
              <organization/>
            </author>
            <author fullname="R. Smith" initials="R." surname="Smith">
              <organization/>
            </author>
            <date month="July" year="2013"/>
            <abstract>
              <t>This document offers guidance for developing privacy considerations for inclusion in protocol specifications.  It aims to make designers, implementers, and users of Internet protocols aware of privacy-related design choices.  It suggests that whether any individual RFC warrants a specific privacy considerations section will depend on the document's content.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="6973"/>
          <seriesInfo name="DOI" value="10.17487/RFC6973"/>
        </reference>
        <reference anchor="RFC7360" target="https://www.rfc-editor.org/info/rfc7360">
          <front>
            <title>Datagram Transport Layer Security (DTLS) as a Transport Layer for RADIUS</title>
            <author fullname="A. DeKok" initials="A." surname="DeKok">
              <organization/>
            </author>
            <date month="September" year="2014"/>
            <abstract>
              <t>The RADIUS protocol defined in RFC 2865 has limited support for authentication and encryption of RADIUS packets.  The protocol transports data in the clear, although some parts of the packets can have obfuscated content.  Packets may be replayed verbatim by an attacker, and client-server authentication is based on fixed shared secrets.  This document specifies how the Datagram Transport Layer Security (DTLS) protocol may be used as a fix for these problems.  It also describes how implementations of this proposal can coexist with current RADIUS systems.</t>
            </abstract>
          </front>
          <seriesInfo name="RFC" value="7360"/>
          <seriesInfo name="DOI" value="10.17487/RFC7360"/>
        </reference>
        <reference anchor="I-D.dekok-radext-tls-psk" target="https://datatracker.ietf.org/doc/html/draft-dekok-radext-tls-psk-00">
          <front>
            <title>RADIUS and TLS-PSK</title>
            <author fullname="Alan DeKok" initials="A." surname="DeKok">
              <organization>FreeRADIUS</organization>
            </author>
            <date day="3" month="March" year="2023"/>
            <abstract>
              <t>   This document gives implementation and operational considerations for
   using TLS-PSK with RADIUS/TLS (RFC6614) and RADIUS/DTLS (RFC7360).

              </t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-dekok-radext-tls-psk-00"/>
        </reference>
      </references>
    </references>
  </back>
  <!-- ##markdown-source:
H4sIAG0eAmQAA71c627jRpb+r6fgOFiMnUhu39rp9gDBKHYnMdIXb7sb2UWm
d0CRJYljitSwSKudIO+yz7JPtuc759SFlOwEs8DmR1qWyLqc63cuVZPJZNQW
bWkukiuzbkyWtkW1SN5Pr64/3j77eHWTpFXu/vxweTNKZ7PG3O96epTXWZWu
aKS8SeftJDd39d2kSXPzGX/4x/FV0dnJ0fFoZFsa/u9pWVf0Wtt0ZlSsG/5k
25Ojo5dHJ6O0MelFcl21pqlMO9osLjDfq//4kPxUN3eY/vum7taju014anKF
FYxovovEtvnIdrNVYW1RVx8e1jTT9asP341G6+Iiof++SLK0SjprkrRp0odk
v5gnaVkmD8YeJHWTLFO7TJamMaMkaevsAj/QR1s3bWPm9oKHyM087crW0hPu
94eV/Iw/R2nXLuvmYjSaJEVFX04PiYI/1nf0oNBsWtIi3Fd1Q7v8rjFGKZsk
ZpUW5QWti+j11zn9IkQ8pCdHo6puVkTae3NBT357eXN8RjT67vLF8ddn9AV9
Onlx/vxCPp6fnRzTMopqHr9EPxyf4gf3+Hn4+EI/nj7/+qV+fH78tXvg+fMX
R27o4+duhPOTY/fa+fnxafh45j6+/Np9+/XpOY9wPbk67MlMW9rJ2t7Rau9N
1fE6F2C1EwD6W6giz/+1MO2cCULPFe2ym10kgVLPtiXwkJ4ihkwmSTqzbZNm
9JcQPMmah3VbT9JFURbtQ7JJbTIvGtvShFWetiZP8E3Xdo1JNiSGyewBW0lA
3cMk+bA0Sd21Wb2if+dJu0xbeQwDtfTjupuVBRZTV3hAZ63vTZN8eH2b7PNY
RK2DSP3k5yv/O+h2gHWYz2vTFCtTtWmZkBJ2+Gh5GTVJNe2ssmuS1mTd1CTA
dWlJpu9NMjOmImlMNkVuJpaok+asBiQZ2OcDSW7aWDyR8jNE52rBGyIVw3Zk
DvMgw9HoxCdsr2iSrhXK0fIasy7TzPCieGwmABmRou5sAhPD24GMynbJzHgK
nB6E9WO6n4ixQs+7qt6UJl+YMQ+Y1RWxtjOyBVojqZnJwJ/wPs+uxCStTiyR
DWvApJVZsDYkxWrtWCMvrJviPs0e+CkekvZ1OBp9WBbWUzthbSrLh8SJmRFG
62Lw8aMF+9I2XTTpKrlRXiT7RAHZtz73wfPrsiZ6WxaS8DhRh7m+i61hf4dg
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

-->

</rfc>
