idnits 2.17.1 draft-ietf-pkix-rfc3770bis-03.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3667, Section 5.1 on line 395. -- Found old boilerplate from RFC 3978, Section 5.1 on line 18. -- Found old boilerplate from RFC 3978, Section 5.5 on line 461. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 404. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 411. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 417. ** Found boilerplate matching RFC 3978, Section 5.1 (on line 18), which is fine, but *also* found old RFC 3667, Section 5.1 text on line 395. ** This document has an original RFC 3978 Section 5.4 Copyright Line, instead of the newer IETF Trust Copyright according to RFC 4748. ** This document has an original RFC 3978 Section 5.5 Disclaimer, instead of the newer disclaimer which includes the IETF Trust according to RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** There is 1 instance of too long lines in the document, the longest one being 1 character in excess of 72. -- The abstract seems to indicate that this document obsoletes RFC3770, but the header doesn't have an 'Obsoletes:' line to match this. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- Couldn't find a document date in the document -- date freshness check skipped. Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'EAP-TLS' is mentioned on line 46, but not defined == Unused Reference: 'EAPTLS' is defined on line 331, but no explicit reference was found in the text ** Obsolete normative reference: RFC 3281 (ref. 'ACPROFILE') (Obsoleted by RFC 5755) ** Obsolete normative reference: RFC 3280 (ref. 'PROFILE') (Obsoleted by RFC 5280) -- Obsolete informational reference (is this intentional?): RFC 2716 (ref. 'EAPTLS') (Obsoleted by RFC 5216) Summary: 7 errors (**), 0 flaws (~~), 4 warnings (==), 10 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 PKIX Working Group R. Housley 3 Internet-Draft Vigil Security 4 Onsoletes: RFC 3770 T. Moore 5 April 2005 Microsoft 6 Expires: October 2005 8 Certificate Extensions and Attributes Supporting 9 Authentication in Point-to-Point Protocol (PPP) 10 and Wireless Local Area Networks (WLAN) 11 13 Status of this Memo 15 By submitting this Internet-Draft, each author represents that any 16 applicable patent or other IPR claims of which he or she is aware 17 have been or will be disclosed, and any of which he or she becomes 18 aware will be disclosed, in accordance with Section 6 of BCP 79. 20 Internet-Drafts are working documents of the Internet Engineering 21 Task Force (IETF), its areas, and its working groups. Note that 22 other groups may also distribute working documents as Internet- 23 Drafts. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet-Drafts as reference 28 material or to cite them other than as "work in progress." 30 The list of current Internet-Drafts can be accessed at 31 http://www.ietf.org/ietf/1id-abstracts.txt. 33 The list of Internet-Draft Shadow Directories can be accessed at 34 http://www.ietf.org/shadow.html. 36 Abstract 38 This document defines two EAP extended key usage values and a public 39 key certificate extension to carry Wireless LAN (WLAN) System Service 40 identifiers (SSIDs). This document obsoletes RFC 3770. 42 1. Introduction 44 Several Extensible Authentication Protocol (EAP) [EAP] authentication 45 methods employ X.509 public key certificates. For example, EAP-TLS 46 [EAP-TLS] can be used with PPP [PPP] as well as IEEE 802.1X [802.1X]. 47 PPP is used for dial-up and VPN environments. IEEE 802.1X defines 48 port-based, network access control, and it is used to provide 49 authenticated network access for Ethernet, Token Ring, Wireless LANs 50 (WLANs) [802.11], and other IEEE 802 networks. 52 Automated selection of client certificates for use with PPP and IEEE 53 802.1X is highly desirable. By using certificate extensions to 54 identify the intended environment for a particular certificate, the 55 need for user input is minimized. Further, the certificate 56 extensions facilitate the separation of administrative functions 57 associated with certificates used for different environments. 59 IEEE 802.1X can be used for authentication with multiple networks. 60 For example, the same wireless station might use IEEE 802.1X to 61 authenticate to a corporate IEEE 802.11 WLAN and a public IEEE 802.11 62 "hotspot." Each of these IEEE 802.11 WLANs has a different network 63 name, called Service Set Identifier (SSID). If the network operators 64 have a roaming agreement, then cross realm authentication allows the 65 same certificate to be used on both networks. However, if the 66 networks do not have a roaming agreement, then the IEEE 802.1X 67 supplicant needs to select a certificate for the current network 68 environment. Including a list of SSIDs in a certificate extension 69 facilitates automated selection of an appropriate X.509 public key 70 certificate without human user input. Alternatively, a companion 71 attribute certificate could contain the list of SSIDs. 73 This document defines extended key usage values and a WLAN-specific 74 certificate extension for use in certificates issued to clients of 75 PPP and WLANs. 77 1.1. Changes since RFC 3770 79 This document is primarily same as RFC 3770. Three changes are 80 included: 82 * This document now uses the same normative reference for ASN.1 83 as RFC 3280 [PROFILE]. The intent is to have the same 84 dependencies. 86 * The discussion of the critical bit in the certificate extension 87 in section 2 is aligned with RFC 3280. Also, the discussion of 88 the key usage certificate extension was expanded. 90 * RFC 3770 contained a typographical error in the object 91 identifier for the Wireless LAN SSID Attribute Certificate 92 Attribute. Section 4 corrects the typographical error. 94 * Clarified that the SSID extension may appear in certificates 95 that do not include the extended key usage extension. 97 * Uses the terms "peer", "EAP Server", and "supplicant" as they 98 are defined in [EAP] and [802.1X]. RFC 3770 used "client" 99 and "server". 101 1.2. Conventions Used In This Document 103 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 104 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 105 document are to be interpreted as described in RFC 2119 [STDWORDS]. 107 1.3. Abstract Syntax Notation 109 All X.509 certificate [X.509] extensions are defined using ASN.1 110 [X.680,X.690]. 112 2. EAP Extended Key Usage Values 114 RFC 3280 [PROFILE] specifies the extended key usage X.509 certificate 115 extension. The extension indicates one or more purposes for which 116 the certified public key may be used. The extended key usage 117 extension can be used in conjunction with key usage extension, which 118 indicates the intended purpose of the certified public key. 120 The extended key usage extension syntax is repeated here for 121 convenience: 123 ExtKeyUsageSyntax ::= SEQUENCE SIZE (1..MAX) OF KeyPurposeId 125 KeyPurposeId ::= OBJECT IDENTIFIER 127 This specification defines two KeyPurposeId values: one for EAP over 128 PPP, and one for EAP over LAN (EAPOL). Inclusion of the EAP over PPP 129 value indicates that the certified public key is appropriate for use 130 by a peer with EAP in the PPP environment. The inclusion of the 131 EAPOL value indicates that the certified public key is appropriate 132 for use by a peer with the EAP in the LAN environment. Inclusion of 133 both values indicates that the certified public key is appropriate 134 for use by a peer in either of the environments. 136 id-kp OBJECT IDENTIFIER ::= 137 { iso(1) identified-organization(3) dod(6) internet(1) 138 security(5) mechanisms(5) pkix(7) 3 } 140 id-kp-eapOverPPP OBJECT IDENTIFIER ::= { id-kp 13 } 142 id-kp-eapOverLAN OBJECT IDENTIFIER ::= { id-kp 14 } 144 The extended key usage extension MAY, at the option of the 145 certificate issuer, be either critical or non-critical. 147 Certificate-using applications MAY require the extended key usage 148 extension to be present in a certificate, and they MAY require a 149 particular KeyPurposeId value to be present (such as id-kp-eapOverPPP 150 or id-kp-eapOverLAN) within the extended key usage extension. If 151 multiple KeyPurposeId values are included, the certificate-using 152 application need not recognize all of them, as long as the required 153 KeyPurposeId value is present. 155 If a certificate contains a key usage extension, the KeyUsage bits 156 that are needed depends on the EAP method that is employed. 158 If a certificate contains both a key usage extension and an extended 159 key usage extension, then both extensions MUST be processed 160 independently and the certificate MUST only be used for a purpose 161 consistent with both extensions. If there is no purpose consistent 162 with both extensions, then the certificate-using application MUST NOT 163 use the certificate for any purpose. 165 3. WLAN SSID Public Key Certificate Extension 167 The Wireless LAN (WLAN) System Service identifiers (SSIDs) public key 168 certificate extension is always non-critical. It contains a list of 169 SSIDs. The list of SSIDs MAY be used to select the correct 170 certificate for authentication in a particular WLAN. 172 If the extended key usage extension appears in the same certificate 173 as the SSID extension, then the extended key usage extension MUST 174 indicate that the certified public key is appropriate for use with 175 the EAP in the LAN environment by including the id-kp-eapOverLAN 176 KeyPurposeId value. 178 Since SSID values are unmanaged, the same SSID can appear in 179 different certificates that are intended to be used with different 180 WLANs. When this occurs, automatic selection of the certificate will 181 fail, and the implementation SHOULD obtain help from the user to 182 choose the correct certificate. In cases where a human user is 183 unavailable, each potential certificate MAY be tried until one 184 succeeds. However, by maintaining a cache of Access Point (AP) MAC 185 addresses or EAP server identity with which the certificate has 186 successfully authenticated, user involvement can be minimized. 187 RADIUS [RADIUS1, RADIUS2] is usually used as the authentication 188 service in WLAN deployments. The cache can be used to avoid future 189 human user interaction or certificate selection by trial-and-error. 191 The WLAN SSID extension is identified by id-pe-wlanSSID. 193 id-pe OBJECT IDENTIFIER ::= 194 { iso(1) identified-organization(3) dod(6) internet(1) 195 security(5) mechanisms(5) pkix(7) 1 } 197 id-pe-wlanSSID OBJECT IDENTIFIER ::= { id-pe 13 } 199 The syntax for the WLAN SSID extension is: 201 SSIDList ::= SEQUENCE SIZE (1..MAX) OF SSID 203 SSID ::= OCTET STRING (SIZE (1..32)) 205 4. WLAN SSID Attribute Certificate Attribute 207 When the public key certificate does not include the WLAN SSID 208 certificate extension, then an attribute certificate [ACPROFILE] can 209 be used to associate a list of SSIDs with the public key certificate. 210 The WLAN SSIDs attribute certificate attribute contains a list of 211 SSIDs, and the list of SSIDs MAY be used to select the correct 212 certificate for authentication in a particular WLAN environment. 214 The WLAN SSID attribute certificate attribute is identified by 215 id-aca-wlanSSID. 217 id-aca OBJECT IDENTIFIER ::= 218 { iso(1) identified-organization(3) dod(6) internet(1) 219 security(5) mechanisms(5) pkix(7) 10 } 221 id-aca-wlanSSID OBJECT IDENTIFIER ::= { id-aca 7 } 223 The syntax for the WLAN SSID attribute certificate attribute is 224 exactly the same as the WLAN SSID extension: 226 SSIDList ::= SEQUENCE SIZE (1..MAX) OF SSID 228 SSID ::= OCTET STRING (SIZE (1..32)) 230 5. Security Considerations 232 The procedures and practices employed by the certification authority 233 (CA) MUST ensure that the correct values for the extended key usage 234 extension and SSID extension are inserted in each certificate that is 235 issued. Relying parties may accept or reject a particular 236 certificate for an intended use based on the information provided in 237 these extensions. Incorrect representation of the information in 238 either extension could cause the relying party to reject an otherwise 239 appropriate certificate or accept a certificate that ought to be 240 rejected. 242 If multiple SSIDs are included in a certificate, then information can 243 be obtained from a certificate about the SSIDs associated with 244 several WLANs, not the WLAN that is currently being accessed. The 245 intended use of the SSID extensions is to help a peer determine the 246 correct certificate to present when trying to gain access to a WLAN. 247 In most situations, including EAP-TLS, the peer will have the 248 opportunity to validate the certificate provided by the EAP server 249 before transmitting one of its own certificates to the EAP server. 250 While the peer may not be sure that the EAP server has access to the 251 corresponding private key until later in the protocol exchange, the 252 identity information in the EAP server certificate can be used to 253 determine whether or not the peer certificate ought to be provided. 254 When the same peer certificate is used to authenticate to multiple 255 WLANs, the list of SSIDs is available from servers associated with 256 each WLAN. Of course, the list of SSIDs is also made available to 257 any eavesdroppers on the WLAN. Whenever this SSID disclosure is a 258 concern, different peer certificates ought to be used for the each 259 WLAN. 261 SSID values are unmanaged; therefore SSIDs may not be unique. Hence, 262 it is possible for peer certificates that are intended to be used 263 with different WLANs to contain the same SSID. In this case, 264 automatic selection of the certificate will fail, and the 265 implementation SHOULD obtain help from the user to choose the correct 266 certificate. In cases where a human user is unavailable, each 267 potential certificate MAY be tried until one succeeds, disclosing the 268 list of SSIDs associated with each certificate, which might otherwise 269 not be disclosed. Therefore, it is RECOMMENDED that sequentially 270 trying each certificate only be employed when user selection is 271 unavailable or impractical. 273 In practice, disclosure of the SSID is of little concern. Some WLAN 274 security experts recommend that the SSID be masked in the beacon sent 275 out by Access Points (APs). The intent is to make it harder for an 276 attacker to find the correct AP to target. However, other WLAN 277 management messages include the SSID, so this practice only forces 278 the attacker to eavesdrop on the WLAN management messages instead of 279 the beacon. Therefore, placing the SSID in the certificate does not 280 make matters worse. 282 6. IANA Considerations 284 Certificate extensions and extended key usage values are identified 285 by object identifiers (OIDs). The OIDs used in this document were 286 assigned from an arc delegated by the IANA. No further action by the 287 IANA is necessary for this document or any anticipated updates. 289 7. References 291 Normative and informative references are provided. 293 7.1. Normative References 295 [ACPROFILE] Farrell, S., and R. Housley, "An Internet Attribute 296 Certificate Profile for Authorization", RFC 3281, 297 April 2002. 299 [PROFILE] Housley, R., Polk, W., Ford, W. and D. Solo, "Internet 300 X.509 Public Key Infrastructure: Certificate and 301 Certificate Revocation List (CRL) Profile", RFC 3280, 302 April 2002. 304 [EAP] Aboba, B., Blunk, L., Vollbrechtand, J., Carlson, J., 305 and H. Levkowetz, Ed. "Extensible Authentication 306 Protocol (EAP)", RFC 3748, June 2004. 308 [STDWORDS] Bradner, S., "Key words for use in RFCs to Indicate 309 Requirement Levels", BCP 14, RFC 2119, March 1997. 311 [X.509] ITU-T. Recommendation X.509: The Directory - 312 Authentication Framework. 2000. 314 [X.680] ITU-T Recommendation X.680: Information Technology - 315 Abstract Syntax Notation One, 1997. 317 [X.690] ITU-T Recommendation X.660 Information Technology - ASN.1 318 encoding rules: Specification of Basic Encoding Rules 319 (BER), Canonical Encoding Rules (CER) and Distinguished 320 Encoding Rules (DER), 1997. 322 7.2. Informative References 324 [802.11] IEEE Std 802.11, "Wireless LAN Medium Access 325 Control (MAC) and Physical Layer (PHY) Specifications", 326 1999. 328 [802.1X] IEEE Std 802.1X, "Port-based Network Access Control", 329 2001. 331 [EAPTLS] Aboba, B. and D. Simon, "PPP EAP TLS Authentication 332 Protocol", RFC2716, October 1999. 334 [PPP] Simpson, W., Editor, "The Point-to-Point Protocol (PPP)", 335 STD 51, RFC 1661, July 1994. 337 [RADIUS1] Rigney, C., S. Willens, A. Rubens, and W. Simpson, "Remote 338 Authentication Dial In User Service (RADIUS)", RFC 2865, 339 June 2000. 341 [RADIUS2] Congdon, P., B. Aboba, A. Smith, G. Zorn, and J. Roese, 342 "IEEE 802.1X Remote Authentication Dial In User Service 343 (RADIUS) Usage Guidelines", RFC 3580, September 2003. 345 8. ASN.1 Module 347 WLANCertExtn 348 { iso(1) identified-organization(3) dod(6) internet(1) 349 security(5) mechanisms(5) pkix(7) id-mod(0) 350 id-mod-wlan-extns2005(37) } 352 DEFINITIONS IMPLICIT TAGS ::= 353 BEGIN 355 -- OID Arcs 357 id-pe OBJECT IDENTIFIER ::= 358 { iso(1) identified-organization(3) dod(6) internet(1) 359 security(5) mechanisms(5) pkix(7) 1 } 361 id-kp OBJECT IDENTIFIER ::= 362 { iso(1) identified-organization(3) dod(6) internet(1) 363 security(5) mechanisms(5) pkix(7) 3 } 365 id-aca OBJECT IDENTIFIER ::= 366 { iso(1) identified-organization(3) dod(6) internet(1) 367 security(5) mechanisms(5) pkix(7) 10 } 369 -- Extended Key Usage Values 371 id-kp-eapOverPPP OBJECT IDENTIFIER ::= { id-kp 13 } 373 id-kp-eapOverLAN OBJECT IDENTIFIER ::= { id-kp 14 } 375 -- Wireless LAN SSID Extension 377 id-pe-wlanSSID OBJECT IDENTIFIER ::= { id-pe 13 } 379 SSIDList ::= SEQUENCE SIZE (1..MAX) OF SSID 381 SSID ::= OCTET STRING (SIZE (1..32)) 383 -- Wireless LAN SSID Attribute Certificate Attribute 384 -- Uses same syntax as the certificate extension: SSIDList 386 id-aca-wlanSSID OBJECT IDENTIFIER ::= { id-aca 7 } 388 END 390 9. IPR Considerations 392 By submitting this Internet-Draft, I certify that any applicable 393 patent or other IPR claims of which I am aware have been disclosed, 394 or will be disclosed, and any of which I become aware will be 395 disclosed, in accordance with RFC 3668. 397 The IETF takes no position regarding the validity or scope of any 398 Intellectual Property Rights or other rights that might be claimed to 399 pertain to the implementation or use of the technology described in 400 this document or the extent to which any license under such rights 401 might or might not be available; nor does it represent that it has 402 made any independent effort to identify any such rights. Information 403 on the procedures with respect to rights in RFC documents can be 404 found in BCP 78 and BCP 79. 406 Copies of IPR disclosures made to the IETF Secretariat and any 407 assurances of licenses to be made available, or the result of an 408 attempt made to obtain a general license or permission for the use of 409 such proprietary rights by implementers or users of this 410 specification can be obtained from the IETF on-line IPR repository at 411 http://www.ietf.org/ipr. 413 The IETF invites any interested party to bring to its attention any 414 copyrights, patents or patent applications, or other proprietary 415 rights that may cover technology that may be required to implement 416 this standard. Please address the information to the IETF at ietf- 417 ipr@ietf.org. 419 10. Author's Address 421 Russell Housley 422 Vigil Security, LLC 423 918 Spring Knoll Drive 424 Herndon, VA 20170 425 USA 426 housley@vigilsec.com 428 Tim Moore 429 Microsoft Corporation 430 One Microsoft Way 431 Redmond, WA 98052 432 USA 433 timmoore@microsoft.com 435 11. Full Copyright Statement 437 Copyright (C) The Internet Society (2005). This document is subject 438 to the rights, licenses and restrictions contained in BCP 78, and 439 except as set forth therein, the authors retain all their rights. 441 This document and translations of it may be copied and furnished to 442 others, and derivative works that comment on or otherwise explain it 443 or assist in its implementation may be prepared, copied, published 444 and distributed, in whole or in part, without restriction of any 445 kind, provided that the above copyright notice and this paragraph are 446 included on all such copies and derivative works. However, this 447 document itself may not be modified in any way, such as by removing 448 the copyright notice or references to the Internet Society or other 449 Internet organizations, except as needed for the purpose of 450 developing Internet standards in which case the procedures for 451 copyrights defined in the Internet Standards process must be 452 followed, or as required to translate it into languages other than 453 English. 455 This document and the information contained herein are provided on an 456 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 457 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET 458 ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, 459 INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE 460 INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 461 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.