RFC 4017

Extensible Authentication Protocol (EAP) Method Requirements for Wireless LANs

πŸ“… published March 2005, from ietf

RFC 4017: Extensible Authentication Protocol (EAP) Method Requirements for Wireless LANs πŸ’–

okay bestie, this is RFC 4017, and it's giving wireless LAN authentication lore πŸ›œβœ¨ It was published in March 2005 and is labelled Informational, so it's sharing info for the Internet community rather than setting an official standard πŸ“š. The authors are D. Stanley (Agere Systems), J. Walker (Intel Corporation), and B. Aboba (Microsoft Corporation) 🫢. The title block has no Obsoletes or Updates line, so this doc doesn't claim to replace or change any other RFC πŸ’….


Status of This Memo πŸ“

This memo gives information to the Internet community. It is not an Internet standard of any kind, and distribution of it is unlimited 🌸.

Copyright (C) The Internet Society (2005).

Abstract πŸŽ€

ok so the IEEE 802.11i MAC Security Enhancements Amendment uses IEEE 802.1X, and 802.1X leans on the Extensible Authentication Protocol (EAP) πŸ”. This document lays out the requirements for EAP methods used in IEEE 802.11 wireless LAN deployments. IEEE 802.11 already approved the material, and the IETF is publishing it as an RFC for informational purposes πŸ¦‹.

Table of Contents πŸ“š

   1.  Introduction .................................................  2
       1.1.  Requirements Specification .............................  2
       1.2.  Terminology ............................................  2
   2.  Method Requirements ..........................................  3
       2.1.  Credential Types .......................................  3
       2.2.  Mandatory Requirements .................................  4
       2.3.  Recommended Requirements ...............................  5
       2.4.  Optional Features ......................................  5
       2.5.  Non-compliant EAP Authentication Methods ...............  5
   3.  Security Considerations ......................................  6
   4.  References ...................................................  8
   Acknowledgments ..................................................  9
   Authors' Addresses ............................................... 10
   Full Copyright Statement ......................................... 11

1. Introduction ✨

The IEEE 802.11i MAC Security Enhancements Amendment [IEEE802.11i] uses IEEE 802.1X [IEEE802.1X], and 802.1X depends on the Extensible Authentication Protocol (EAP), which is defined in [RFC3748] 🧚.

Right now, IEEE 802.11 wireless LANs run on EAP and use a bunch of EAP methods, like EAP-TLS [RFC2716], EAP-TTLS [TTLS], PEAP [PEAP], and EAP-SIM [EAPSIM] πŸ“Ά. These methods support credentials such as digital certificates, user-names and passwords, secure tokens, and SIM secrets πŸ”‘.

This doc sets out the requirements for EAP methods used in IEEE 802.11 wireless LAN deployments. Any EAP method that wants to claim conformance with the IEEE 802.11 EAP method requirements for wireless LANs has to get through IETF last call review 🫢.

1.1. Requirements Specification πŸ“

In this document, a few words carry special meaning when it comes to what a specification requires. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" are to be read as described in [RFC2119] πŸ’œ.

An EAP authentication method is not compliant with this specification if it fails to satisfy one or more of the MUST or MUST NOT requirements. An EAP authentication method that satisfies all the MUST, MUST NOT, SHOULD, and SHOULD NOT requirements is called "unconditionally compliant". If it satisfies all the MUST and MUST NOT requirements but not all the SHOULD or SHOULD NOT requirements, it's called "conditionally compliant" πŸ”₯.

1.2. Terminology πŸ—‚οΈ

Here are the terms you need to know, bestie πŸ‘‘:

authenticator : The end of the link that starts EAP authentication. The term authenticator is used in [IEEE802.1X], and it means the same thing in this document.

peer : The end of the link that responds to the authenticator. In [IEEE802.1X], this end is known as the supplicant.

Supplicant : The end of the link that responds to the authenticator in [IEEE802.1X].

backend authentication server : A backend authentication server is an entity that provides an authentication service to an authenticator. When it's used, this server usually runs EAP methods for the authenticator. This term is also used in [IEEE802.1X].

EAP server : The entity that ends the EAP authentication method with the peer. If no backend authentication server is used, the EAP server is part of the authenticator. If the authenticator is operating in pass-through mode, the EAP server lives on the backend authentication server 🏰.

Master Session Key (MSK) : Keying material derived between the EAP peer and server and exported by the EAP method. The MSK is at least 64 octets in length. In existing implementations, an AAA server acting as an EAP server transports the MSK to the authenticator πŸ—οΈ.

Extended Master Session Key (EMSK) : Additional keying material derived between the EAP client and server that is exported by the EAP method. The EMSK is at least 64 octets in length. It is not shared with the authenticator or any other third party. The EMSK is reserved for future uses that are not yet defined πŸ”’.

4-Way Handshake : A pairwise Authentication and Key Management Protocol (AKMP) defined in [IEEE802.11i]. It confirms that two parties mutually possess a Pairwise Master Key, and it distributes a Group Key 🀝.


2. Method Requirements πŸ’…

2.1. Credential Types 🎫

The IEEE 802.11i MAC Security Enhancements Amendment requires that EAP authentication methods be available. Wireless LAN deployments are expected to use different credential types, including digital certificates, user-names and passwords, existing secure tokens, and mobile network credentials (GSM and UMTS secrets). Other credential types that may be used include public/private key (without necessarily requiring certificates) and asymmetric credential support (such as a password on one side and a public/private key on the other) 🌈.

2.2. Mandatory Requirements 🚨

EAP authentication methods suitable for use in wireless LAN authentication MUST satisfy the following criteria:

[1] Generation of symmetric keying material. This lines up with the "Key derivation" security claim defined in [RFC3748], Section 7.2.1 πŸ”‘.

[2] Key strength. An EAP method suitable for use with IEEE 802.11 MUST be capable of generating keying material with 128-bits of effective key strength, as defined in [RFC3748], Section 7.2.1. As noted in [RFC3748], Section 7.10, an EAP method supporting key derivation MUST export a Master Session Key (MSK) of at least 64 octets, and an Extended Master Session Key (EMSK) of at least 64 octets πŸ’ͺ.

[3] Mutual authentication support. This lines up with the "Mutual authentication" security claim defined in [RFC3748], Section 7.2.1 🀝.

[4] Shared state equivalence. The shared EAP method state of the EAP peer and server must be equivalent when the EAP method is successfully completed on both sides. This includes the internal state of the authentication protocol but not the state external to the EAP method, such as the negotiation occurring prior to initiation of the EAP method. The exact state attributes that are shared may vary from method to method, but they typically include the method version number, the credentials presented and accepted by both parties, the cryptographic keys shared, and the EAP method specific attributes negotiated, such as ciphersuites and limitations of usage on all protocol state. Both parties must be able to distinguish this instance of the protocol from all other instances of the protocol, and they must share the same view regarding which state attributes are public and which are private to the two parties alone. The server must obtain the authenticated peer name, and the peer must obtain the authenticated server name (if the authenticated server name is available) πŸ‘―.

[5] Resistance to dictionary attacks. This lines up with the "Dictionary attack resistance" security claim defined in [RFC3748], Section 7.2.1 πŸ›‘οΈ.

[6] Protection against man-in-the-middle attacks. This lines up with the "Cryptographic binding", "Integrity protection", "Replay protection", and "Session independence" security claims defined in [RFC3748], Section 7.2.1 πŸ•΅οΈβ€β™€οΈ.

[7] Protected ciphersuite negotiation. If the method negotiates the ciphersuite used to protect the EAP conversation, then it MUST support the "Protected ciphersuite negotiation" security claim defined in [RFC3748], Section 7.2.1 πŸ”.

EAP authentication methods used for wireless LAN authentication SHOULD support the following features:

[8] Fragmentation. This implies support for the "Fragmentation" claim defined in [RFC3748], Section 7.2.1. [RFC3748], Section 3.1 says: "EAP methods can assume a minimum EAP MTU of 1020 octets, in the absence of other information. EAP methods SHOULD include support for fragmentation and reassembly if their payloads can be larger than this minimum EAP MTU." 🧩

[9] End-user identity hiding. This lines up with the "Confidentiality" security claim defined in [RFC3748], Section 7.2.1 πŸ™ˆ.

2.4. Optional Features πŸ“

EAP authentication methods used for wireless LAN authentication MAY support the following features:

[10] Channel binding. This lines up with the "Channel binding" security claim defined in [RFC3748], Section 7.2.1 πŸŽ€.

[11] Fast reconnect. This lines up with the "Fast reconnect" security claim defined in [RFC3748], Section 7.2.1 ⚑.

2.5. Non-compliant EAP Authentication Methods 🚫

EAP-MD5-Challenge, which is the current mandatory-to-implement EAP authentication method, is defined in [RFC3748], Section 5.4. As defined in [RFC3748], EAP-MD5-Challenge, One-Time Password (Section 5.5), and Generic Token Card (Section 5.6) are non-compliant with the requirements in this document. As [RFC3748] notes, these methods don't support any of the mandatory requirements in Section 2.2, including key derivation and mutual authentication. They also don't support any of the recommended features in Section 2.3 or any of the optional features in Section 2.4 😭.

3. Security Considerations πŸ”βœ¨

okay bestie, this is the scary-but-important part 😭 Within [IEEE802.11i], EAP does both authentication and key exchange between the EAP peer and server. And wireless LANs basically hand an attacker a front-row seat, since anyone in range can get at things. So EAP usage within [IEEE802.11i] is subject to the threats outlined in [RFC3748], Section 7.1. EAP security stuff lives in [RFC3748], Sections 7; and if there's an authentication server in the mix, the security considerations in [RFC3579], Section 4, apply too. πŸ›‘οΈ

The system security properties you need to handle those threats (from [RFC3748], Section 7.1) are noted in [Housley56]. Below, we go through the requirements from [Housley56] one by one, plus the matching recommendations. It's giving checklist energy πŸ“‹πŸ’–

Algorithm independence Requirement: "Wherever cryptographic algorithms are chosen, the algorithms must be negotiable, in order to provide resilience against compromise of a particular cryptographic algorithm."

This is handled by mandatory requirement [7] in Section 2.2. Algorithm independence is also one of the EAP invariants described in [KEYFRAME]. Main character energy for resilience πŸ‘‘

Strong, fresh session keys Requirement: "Session keys must be demonstrated to be strong and fresh in all circumstances, while at the same time retaining algorithm independence."

Key strength is covered by mandatory requirement [2] in Section 2.2. For ensuring the freshness of keys derived by EAP methods, check out [RFC3748], Section 7.10. πŸ”‘βœ¨

Replay protection Requirement: "All protocol exchanges must be replay protected."

This is addressed by mandatory requirement [6] in Section 2.2. No replays, no drama πŸ™…β€β™€οΈ

Authentication Requirements: "All parties need to be authenticated. The confidentiality of the authenticator must be maintained. No plaintext passwords are allowed."

Mutual authentication is required as part of mandatory requirement [3] in Section 2.2. Identity protection is a recommended capability, described in requirement [9] in Section 2.3. And EAP does not support plaintext passwords, as noted in [RFC3748], Section 7.14. Everybody gets authenticated, nobody gets to yell their password across the room πŸ«£πŸ”’

Authorization Requirement: "EAP peer and authenticator authorization must be performed."

Authorization issues are discussed in [RFC3748], Sections 1.2 and 7.16. Authentication, Authorization, and Accounting (AAA) protocols such as RADIUS [RFC2865][RFC3579] may be used to enable authorization of EAP peers by a central authority. AAA authorization issues are discussed in [RFC3579], Sections 2.6.3 and 4.3.7. A central authority vibe, very organized πŸ—‚οΈπŸ’…

Session keys Requirement: "Confidentiality of session keys must be maintained."

Key Derivation issues are described in [RFC3748], Section 7.10, as well as in [KEYFRAME]. Keep those keys secret, bestie πŸ€«πŸ—οΈ

Ciphersuite negotiation Requirement: "The selection of the "best" ciphersuite must be securely confirmed."

This is addressed in mandatory requirement [7] in Section 2.2. Picking the best ciphersuite is only half the job, you also have to confirm it securely πŸ§βœ…

Unique naming Requirement: "Session keys must be uniquely named."

Key naming issues are addressed in [KEYFRAME]. Every key gets its own name, no twins allowed πŸͺͺπŸ’œ

Domino effect Requirement: "Compromise of a single authenticator cannot compromise any other part of the system, including session keys and long-term secrets."

This issue is addressed by mandatory requirement [6] in Section 2.2. One authenticator going down should NOT take the whole system with it. Lowkey the most dramatic requirement in this list πŸ’€πŸŽ²

Key binding Requirement: "The key must be bound to the appropriate context."

This issue is addressed in optional requirement [10] in Section 2.4. Channel binding is also discussed in Section 7.15 of [RFC3748] and Section 4.3.7 of [RFC3579]. Keys stay tied to the right context, no wandering off πŸ¦‹


4. References πŸ“š

4.1. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. πŸ“–

[RFC2865] Rigney, C., Willens, S., Rubens, A., and W. Simpson, "Remote Authentication Dial In User Service (RADIUS)", RFC 2865, June 2000. πŸ“–

[RFC3579] Aboba, B. and P. Calhoun, "RADIUS (Remote Authentication Dial In User Service) Support For Extensible Authentication Protocol (EAP)", RFC 3579, September 2003. πŸ“–

[RFC3748] Aboba, B., Blunk, L., Vollbrecht, J., Carlson, J., and H. Levkowetz, "Extensible Authentication Protocol (EAP)", RFC 3748, June 2004. πŸ“–

[802.11] Information technology - Telecommunications and information exchange between systems - Local and metropolitan area networks - Specific Requirements Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications, IEEE Std. 802.11-2003, 2003. πŸ“‘

[IEEE802.1X] IEEE Standards for Local and Metropolitan Area Networks: Port based Network Access Control, IEEE Std 802.1X-2004, December 2004. πŸ”Œ

[IEEE802.11i] Institute of Electrical and Electronics Engineers, "Supplement to Standard for Telecommunications and Information Exchange Between Systems - LAN/MAN Specific Requirements - Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) Specifications: Specification for Enhanced Security", IEEE 802.11i, July 2004. πŸ”

4.2. Informative References

[Housley56] Housley, R., "Key Management in AAA", Presentation to the AAA WG at IETF 56, http://www.ietf.org/proceedings/03mar/slides/aaa-5/index.html, March 2003. 🎀

[RFC2716] Aboba, B. and D. Simon, "PPP EAP TLS Authentication Protocol", RFC 2716, October 1999. 🧾

[PEAP] Palekar, A., et al., "Protected EAP Protocol (PEAP)", Work in Progress, July 2004. 🚧

[TTLS] Funk, P. and S. Blake-Wilson, "EAP Tunneled TLS Authentication Protocol (EAP-TTLS)", Work in Progress, August 2004. 🚧

[EAPSIM] Haverinen, H. and J. Salowey, "EAP SIM Authentication", Work in Progress, April 2004. 🚧

[KEYFRAME] Aboba, B., et al., "EAP Key Management Framework", Work in Progress, July 2004. 🚧


Acknowledgements 🫢

The authors would like to acknowledge contributions to this document from members of the IEEE 802.11i Task Group, including Russ Housley of Vigil Security, David Nelson of Enterasys Networks and Clint Chaplin of Symbol Technologies, as well as members of the EAP WG including Joe Salowey of Cisco Systems, Pasi Eronen of Nokia, Jari Arkko of Ericsson, and Florent Bersani of France Telecom. Huge thank-yous to all of them, they're literally the reason this exists πŸ’–πŸ™Œ

Authors' Addresses πŸ’Œ

Dorothy Stanley
Agere Systems
2000 North Naperville Rd.
Naperville, IL 60566

Phone: +1 630 979 1572
EMail: dstanley@agere.com


Jesse R. Walker
Intel Corporation
2111 N.E. 25th Avenue
Hillsboro, OR  97214

EMail: jesse.walker@intel.com


Bernard Aboba
Microsoft Corporation
One Microsoft Way
Redmond, WA 98052

Phone: +1 425 818 4011
Fax:   +1 425 936 7329
EMail: bernarda@microsoft.com

Copyright (C) The Internet Society (2005).

This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights.

This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. πŸ“œ

Intellectual Property 🧠

The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79.

Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr.

The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org.

Acknowledgement πŸ’Έ

Funding for the RFC Editor function is currently provided by the Internet Society. Thank you, Internet Society, you're the MVP 🌈✨

πŸ“¦ where this page comes from