One document matched: draft-cam-winget-eap-fast-potp-provisioning-02.txt

Differences from draft-cam-winget-eap-fast-potp-provisioning-01.txt


Network Working Group                                         D. Mitton 
Internet Draft                              RSA Security Divison of EMC 
Category: Informational                                   N. Cam-Winget 
Expires: August 2008                                      Cisco Systems 
                                                      February 25, 2008 
                                    
 
                                      
            Using the Protected One-Time Password Protocol for  
                           EAP-FAST Provisioning 
            draft-cam-winget-eap-fast-potp-provisioning-02.txt 


Status of this Memo 

   By submitting this Internet-Draft, each author represents that       
   any applicable patent or other IPR claims of which he or she is       
   aware have been or will be disclosed, and any of which he or she       
   becomes aware will be disclosed, in accordance with Section 6 of       
   BCP 79. 
    
   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that 
   other groups may also distribute working documents as Internet-
   Drafts. 

   Internet-Drafts are draft documents valid for a maximum of six months 
   and may be updated, replaced, or obsoleted by other documents at any 
   time.  It is inappropriate to use Internet-Drafts as reference 
   material or to cite them other than as "work in progress." 

   The list of current Internet-Drafts can be accessed at 
   http://www.ietf.org/ietf/1id-abstracts.txt 

   The list of Internet-Draft Shadow Directories can be accessed at 
   http://www.ietf.org/shadow.html 

   This Internet-Draft will expire on August 25, 2008. 

Copyright Notice 

   Copyright (C) The IETF Trust (2008). 

     




 
 
 
Cam-Winget, Mitton       Expires August 2008                   [Page 1] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

Abstract 
 
   EAP-FAST is an extensible EAP method that enables the provisioning of 
   credentials or other information by using the Transport Layer 
   Security (TLS) to establish a mutually authenticated tunnel.  As the 
   tunnel may be unauthenticated, EAP-FAST further enables the use of 
   inner EAP methods to establish mutual authentication prior to 
   provisioning.  This document describes how EAP-POTP may be used as 
   the EAP-FAST inner method for credential provisioning.  
    
Conventions used in this document 

   In examples, "C:" and "S:" indicate lines sent by the client and 
   server respectively. 
    
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 
   document are to be interpreted as described in [RFC2119]. 





























 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 2] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

Table of Contents 

    
   1. Introduction...................................................4 
   2. Authenticating with EAP-POTP in EAP-FAST for provisioning......4 
   3. Cryptographic Calculations.....................................4 
   4. Security Considerations........................................5 
   5. IANA Considerations............................................5 
   6. Acknowledgments................................................6 
   7. References.....................................................6 
      7.1. Normative References......................................6 
      7.2. Informative References....................................6 
    
   8. Author's Addresses.............................................7 
   APPENDIX A: Example of a successful Tunnel PAC provisioning using 
   EAP-POTP mutual authentication....................................8 
   Intellectual Property Statement..................................11 
   Disclaimer of Validity...........................................11 
   Copyright Statement..............................................11 
   Acknowledgment...................................................11 
    


























 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 3] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

1. Introduction 

   EAP-FAST [EAP-FAST] is an extensible EAP method [RFC3748] that can be 
   used to mutually authenticate peer and server as well as provisioning 
   information such as user credentials. [FAST-PROVISION] defines how 
   EAP-FAST is used to enable dynamic or in-band provisioning and 
   demonstrates how other EAP authentication methods may be used inside 
   the protected tunnel to ensure mutual authentication prior to 
   provisioning. 
    
   As EAP-FAST enables any inner EAP method to be used, this document 
   describes how EAP Protected-OTP [EAP-POTP] may be employed within 
   EAP-FAST Provisioning to ensure mutual authentication during in-band 
   provisioning.  
    
2. Authenticating with EAP-POTP in EAP-FAST for provisioning 

   Once a protected tunnel is established as defined in [FAST-
   PROVISION], the peer must authenticate itself to the server before 
   the server can provision the peer.  Use of EAP-POTP is negotiated 
   between the server and the peer.  After the peer responds with a EAP 
   Payload TLV containing the EAP Identity Response, the server MAY 
   request the use of EAP-POTP as the inner EAP authentication method. 
    
   EAP-POTP allows a protected authentication based on a pre-shared 
   secret provisioned into a one-time password generating token.  
   Possession of the token and an optional PIN value, provides a 
   portable strong authenticator.  The EAP-POTP method is an end-to-end 
   authentication method that requires both parties to know the one-time 
   password generated by the token based on that shared secret.  This 
   information allows a method of secure provisioning that does not 
   require a user-memorized or static password.  Details of the EAP-POTP 
   method can be found in [EAP-POTP]. 
    
   The server MAY use EAP-POTP as the inner EAP authentication in either 
   Server-Authenticated or Server-Unauthenticated provisioning modes. 
    
    
3. Cryptographic Calculations 

   The Key derivations for establishing the tunnel are as defined in 
   [EAP-FAST] Section 5.  The Intermediate Compound Key Derivation 
   following a successful EAP-POTP authentication within EAP-FAST for 
   provisioning is defined in [FAST-PROVISION] Section 5.2 using the 
   resulting MSK as described in [EAP-POTP] Section 4.5. 


 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 4] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

4. Security Considerations 

   Though EAP-POTP, like EAP-MSCHAPv2 is a username and password based 
   authentication mechanism, it provides several features that 
   strengthen its security: 
    
   * The current one-time password is not exchanged, but instead, 
   authentication is based on values derived from the password, nonces 
   from each side and inputs including the session instance information. 
    
   * The authentication processes can be configured for various sizes of 
   hash and iteration inputs, to slow active attacks. 
    
   * The method is resistant to man-in-the-middle attacks because of 
   cryptographic bindings to the network messages. 
    
   * The method requires mutual authentication of the derived values. 
    
   EAP-POTP derives its session keys using a multi-state hashing 
   function (PBKDF2) [PKCS5] whose input is based on the token code, PIN 
   input, a random or pre-shared secret, an iteration count and 
   information about the server, and derives an authentication value for 
   transmittal. 
    
   It also keeps a hash of the running EAP request and response 
   messages, using an SHA256 function. The hash values are combined with 
   the generated keys, to cryptographically bind the authentication to 
   the current message stream and mutually authenticate.  
     
   When using EAP-POTP as the inner method, the server can only validate 
   this value by knowing all of the same inputs.  Any man-in-the-middle 
   change would affect the derived value and cause a failure. 
    
   When using EAP-POTP during dynamic EAP-FAST provisioning, session 
   resumption credentials MUST NOT be used for authentication. 
    
   Due to the mutual authentication and key establishment provided by 
   EAP-POTP, Server-Unauthenticated Provisioning Mode MAY be used when 
   EAP-POTP is used for PAC provisioning 
    
    
5. IANA Considerations 

   This specification requires no new IANA values to be assigned. [RFC 
   2434] 
    

 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 5] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

6. Acknowledgments 

   Thanks to Hao Zhou, Magnus Nystrom, and Dmitri Pal for their valuable 
   input. 
    
   This document was prepared using 2-Word-v2.0.template.dot. 

    
7. References 

7.1. Normative References 

   [EAP-FAST] Cam-Winget, N., et al., "The Flexible Authentication via 
              Secure Tunneling Extensible Authentication Protocol (EAP-
              FAST)", RFC 4851, May 2007.   
               
   [FAST-PROVISION]  Cam-Winget, N. et al., "Dynamic Provisioning via 
             Secure Tunneling Extensible Authentication Protocol (EAP-
             FAST)", draft-cam-winget-eap-fast-provisioning-06 (work in 
             progress), February 2008. 

   [EAP-POTP]  Nystrom M., "The EAP Protected One-Time Password Protocol 
             (EAP-POTP)", RFC 4793, February 2007. 

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

    

7.2. Informative References 

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

   [PKCS5]  RSA Laboratories, "Password-Based Cryptography Standard", 
             PKCS #5 v2.0, March 1999.  

   [RFC3979] Bradner, S., "Intellectual Property Rights in IETF 
             Technology", RFC 3979, March 2005. 

   [RFC3978] Bradner, S., "IETF Rights in Contributions", RFC 3978, 
             March 2005. 

   [RFC2434] Narten, T., and H. Alvestrand, "Guidelines for Writing an 
             IANA Considerations Section in RFCs", RFC 2434, October 
             1998. 
 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 6] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

8. Author's Addresses 

   Nancy Cam-Winget 
   Cisco Systems Inc. 
   3625 Cisco Way 
   San Jose, CA 95134 
 
   Email: ncamwing@cisco.com 
    
   David Mitton 
   RSA Security Division of EMC 
   174 Middlesex Turnpike 
   Bedford, MA 01730 
       
   Email: dmitton@rsasecurity.com 
    































 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 7] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

APPENDIX A: Example of a successful Tunnel PAC provisioning using EAP-
POTP mutual authentication 

   The following exchanges show anonymous DH with a successful EAP-POTP 
   exchange within Phase 2 to provision a Tunnel PAC, the conversation 
   will appear as follows:  
      
       Authenticating Peer     Authenticator  
       -------------------     -------------  
                               <- EAP-Request/  
                               Identity  
       EAP-Response/  
       Identity (MyID1) ->  
                               <- EAP-Request/  
                               EAP-Type=EAP-FAST, V=1  
                               (EAP-FAST Start, S bit set, A-ID)  
         
       EAP-Response/  
       EAP-Type=EAP-FAST, V=1  
       (TLS client_hello without   
       PAC-Opaque extension)->  
                               <- EAP-Request/  
                               EAP-Type=EAP-FAST, V=1  
                               (TLS server_hello,  
                                TLS Server Key Exchange   
                                TLS Server Hello Done)  
       EAP-Response/  
       EAP-Type=EAP-FAST, V=1 ->  
       (TLS Client Key Exchange  
        TLS change_cipher_spec,  
        TLS finished)  
         
                               <- EAP-Request/  
                               EAP-Type=EAP-FAST, V=1  
                               (TLS change_cipher_spec  
                                TLS finished)  
       EAP-Response/  
       EAP-Type=EAP-FAST, V=1 ->  
       (Acknowledgement)  
        
       TLS channel established  
       (messages sent within the TLS channel)  
         
                              <-  EAP Payload TLV,  
                                  EAP-Request/  
                                  EAP Identity Request  
         
 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 8] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

       EAP Payload TLV, EAP-Response/  
       EAP Identity Response ->  
         
                              <-  EAP Payload TLV,  
                                  EAP-Request,  
                                  OTP-X,  
                                  Version TLV: 
                                  Highest=0, Lowest=0 
                                  Server-Info TLV: N=0 
                                  Session Identifier=V1 
                                  Session Identifier=V2 
                                  Nonce=V3 
                                  OTP TLV: 
                                  P=1,C=0,N=0,T=0,E=0,R=0 
                                  Pepper Length=0 
                                  Iteration Count=V4 
         
       EAP Payload TLV, ->  
       EAP-Response,   
       OTP-X,  
       Version TLV: 
       Highest=0 
       OTP TLV: 
       P=1,C=0,N=0,T=0,E=0,R=0 
       Iteration Count=V4  
       Authentication Data=V5 
       User Identifier TLV: 
       User Identifier=V6 
       Token Key Identifier TLV: 
       Token Key Identifier=V7 
                                <-  EAP Payload TLV,  
                                  EAP-Request,  
                                  OTP-X,  
                                  Confirm TLV: 
                                  C=0 
                                  Authentication Data=V8 
                                  Pepper Identifier=V9 
                                  Encrypted Pepper=V10 
    
       EAP Payload TLV, ->  
       EAP-Response,   
       OTP-X,  
       Confirm TLV: 
       (no data) 
    
    
     
 
 
Cam-Winget, Mitton      Expires February 2008                  [Page 9] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

                               <- Intermediate Result TLV (Success)  
                                  Crypto-Binding-TLV(Version=1, 
                                  EAP-FAST Version=1, SNonce,  
                                  CompoundMAC)  
         
       Intermediate Result TLV (Success)  
       Crypto-Binding-TLV(Version=1,   
       EAP-FAST Version=1, 
       CNonce, CompoundMAC), 
       PAC TLV (PAC-Type=User Authorization PAC)->  
                               <- Result TLV (Success)  
                                  PAC TLV   
         
       Result TLV (Success)  
       PAC Acknowledgment ->  
         
       TLS channel torn down  
       (messages sent in cleartext)  
         
                               <- EAP-Success  
    


























 
 
Cam-Winget, Mitton      Expires February 2008                 [Page 10] 

Internet-Draft   Using POTP for EAP-FAST Provisioning     February 2008 
    

Intellectual Property Statement 

   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. 

Disclaimer of Validity 

   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, THE IETF TRUST 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. 

Copyright Statement 

   Copyright (C) The IETF Trust (2008). 

   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. 

Acknowledgment 

   Funding for the RFC Editor function is currently provided by the 
   Internet Society. 
    
 
 
Cam-Winget, Mitton      Expires February 2008                 [Page 11] 


PAFTECH AB 2003-20262026-04-23 02:44:07