TOC 
Network Working GroupV. Cakulev
Internet-DraftG. Sundaram
Intended status: Standards TrackAlcatel Lucent
Expires: April 22, 2010October 19, 2009


IBAKE: Identity-Based Authenticated Key Agreement
draft-cakulev-ibake-00.txt

Status of this Memo

This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. This document may contain material from IETF Documents or IETF Contributions published or made publicly available before November 10, 2008. The person(s) controlling the copyright in some of this material may not have granted the IETF Trust the right to allow modifications of such material outside the IETF Standards Process. Without obtaining an adequate license from the person(s) controlling the copyright in such materials, this document may not be modified outside the IETF Standards Process, and derivative works of it may not be created outside the IETF Standards Process, except to format it for publication as an RFC or to translate it into languages other than English.

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 April 22, 2010.

Copyright Notice

Copyright (c) 2009 IETF Trust and the persons identified as the document authors. All rights reserved.

This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents in effect on the date of publication of this document (http://trustee.ietf.org/license-info). Please review these documents carefully, as they describe your rights and restrictions with respect to this document.

Abstract

Cryptographic protocols based on public key methods are based on certificates and large scale public key infrastructure (PKI) to support certificate management. The emerging field of Identity Based Encryption protocols allows to simplify the infrastructure requirements via a Key Generation Function (KGF) while providing the same flexibility. However one significant limitation of Identity Based Encryption methods is that the KGF can end up being a de-facto key escrow server with undesirable consequences. Another observed deficiency is a lack of mutual authentication of communicating parties. Here, Identity Based Authenticated Key Exchange (IBAKE) Protocol is specified which does not suffer from the key escrow problem and in addition provides mutual authentication and a perfect forward and backwards secrecy.



Table of Contents

1.  Introduction
2.  Requirements notation
    2.1.  Definitions
    2.2.  Abbreviations
    2.3.  Conventions
3.  Identity Based Authenticated Key Agreement
    3.1.  Overview
    3.2.  IBAKE Message Exchange
    3.3.  Discussion
4.  Security Considerations
5.  IANA Considerations
6.  References
    6.1.  Normative References
    6.2.  Informative References
§  Authors' Addresses




 TOC 

1.  Introduction

Authenticated Key Agreements are cryptographic protocols where two or more participants, authenticate each other and agree on a key for future communication. These protocols could be symmetric key or asymmetric public key protocols. Symmetric key protocols require an out-of-band security mechanism to bootstrap a secret key. On the other hand, public key protocols require certificates and large scale public key infrastructure. Clearly public key methods are more flexible, however the requirement for certificates and a large scale public key infrastructure have proved to be challenging. In particular, efficient methods to support large scale certificate revocation and management have proved to be elusive.

Recently, Identity Based Encryption (IBE) protocols have been proposed as a viable alternative to public key methods by simplifying the PKI requirements and replacing them with a simple Key Generation Function (KGF) to generate private keys. However, one significant limitation of Identity Based Encryption methods is that the KGF can end up being a de-facto key escrow server with undesirable consequences. Another limitation is a lack of mutual authentication between communicating parties. Here an Identity Based Authenticated Key Agreement Protocol is specified which does not suffer from the key escrow problem and Provides mutual authentication. Moreover the protocol also provides forward and backwards secrecy of session keys.



 TOC 

2.  Requirements notation

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] (Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” March 1997.).



 TOC 

2.1.  Definitions

Identity-Based Encryption (IBE): Identity-based encryption (IBE) is a public-key encryption technology that allows a public key to be calculated from an identity, and the corresponding private key to be calculated from the public key. The public key can then be used by an Initiator to encrypt messages which the recipient can decrypt using the corresponding private key. IBE framework is defined in [RFC5091] (Boyen, X. and L. Martin, “Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems,” December 2007.), [RFC5408] (Appenzeller, G., Martin, L., and M. Schertler, “Identity-Based Encryption Architecture and Supporting Data Structures,” January 2009.) and [RFC5409] (Martin, L. and M. Schertler, “Using the Boneh-Franklin and Boneh-Boyen Identity-Based Encryption Algorithms with the Cryptographic Message Syntax (CMS),” January 2009.).



 TOC 

2.2.  Abbreviations

EC
Elliptic Curve
IBE
Identity Based Encryption
I
Initiator
IBAKE
Identity Based Authenticated Key Exchange
IDi
Initiator's Identity
IDr
Responder's Identity
KGF
Key Generation Function
K_PR
Private Key
K_PUB
Public Key
PKI
Public Key Infrastructure
R
Responder


 TOC 

2.3.  Conventions



 TOC 

3.  Identity Based Authenticated Key Agreement



 TOC 

3.1.  Overview

IBAKE consists of a three-way exchange between an Initiator and a Responder. In the figure below, a conceptual signaling diagram of IBAKE is depicted.



            +---+                             +---+
            | I |                             | R |
            +---+                             +---+

                           MESSAGE_1
              ---------------------------------->
                           MESSAGE_2
              <----------------------------------
                           MESSAGE_3
              ---------------------------------->

 Figure 1: Example IBAKE Message Exchange 

The Initiator (I) and Responder (R) are attempting to mutually authenticate each other and agree on a key using IBAKE. This specification assumes that the Initiator and the Responder trust a third party, the Key Generation Function (KGF). Rather than a single KGF, several different KGFs may be involved, e.g. one for the Initiator and one for the Responder. The Initiator and the Responder do not share any credentials, however they know or can obtain each other's public parameters. This specification also assumes that the Initiator and Responder obtained their respective Private Keys from their respective KGFs prior to IBAKE message exchange. The procedures needed to obtain the privet keys and public parameters are outside of scope of this specification. The details of these procedures can be found in [RFC5091] (Boyen, X. and L. Martin, “Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems,” December 2007.) and [RFC5408] (Appenzeller, G., Martin, L., and M. Schertler, “Identity-Based Encryption Architecture and Supporting Data Structures,” January 2009.).

The Initiator and the Responder choose random x and y, respectively. In the first step, the Initiator computes xP (i.e., P added to itself x times as a point on E, using the addition law on E), encrypts xP, IDi and IDr using Responder’s public key (e.g., K_PUBr=H1(IDr||date)) and includes this encrypted information in a MESSAGE_1 message sent to the Responder. In this step encryption refers to identity based encryption described in [RFC5091] (Boyen, X. and L. Martin, “Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems,” December 2007.) and [RFC5408] (Appenzeller, G., Martin, L., and M. Schertler, “Identity-Based Encryption Architecture and Supporting Data Structures,” January 2009.).

The Responder, upon receiving the message, IBE-decrypts it using its private key (e.g. private key for that date), and obtains xP. The Responder next computes yP and IBE-encrypts Initiator's identity (IDi), its own identity (IDr), xP, and yP using Initiator's Public Key (e.g., K_PUBi=H1(IDi||date)). The initiator includes this encrypted information in MESSAGE_2 message sent to the Initiator.

The Initiator upon receiving and IBE-decrypting MESSAGE_2 obtains yP. Subsequently, the Initiator sends MESSAGE_3 message to the Responder, including IBE-encrypted IDi, IDr and yP. At this point both the Initiator and the Responder are able to compute the same session key as xyP.



 TOC 

3.2.  IBAKE Message Exchange

Initially, the Initiator selects a random x and computes xP; The Responder selects a random y and computes yP. Then:

Initiator    ---->      Responder

   MESSAGE_1 = E(K_PUBr, IDi || IDr || xP)

Upon receiving MESSAGE_1 message, the Responder SHALL perform the following:

Responder   ---->  Initiator

   MESSAGE_2 = E(K_PUBi, IDi || IDr || xP || yP)

Upon receiving MESSAGE_2 message, the Initiator SHALL perform the following:

Initiator    ---->      Responder

   MESSAGE_3 = E(K_PUBr, IDi || IDr || yP)

Upon receiving MESSAGE_3 message, the Responder SHALL perform the following:

If any of the above verifications fails, the protocol halts; otherwise, following this exchange both the Initiator and the Responder have authenticated each other and are able to compute xyP as the session key



 TOC 

3.3.  Discussion

Properties of the protocol are as follows:



 TOC 

4.  Security Considerations

This draft is based on the basic Identity Based Encryption protocol, as specified in [BF] (Boneh, D. and M. Franklin, “Identity-Based Encryption from the Weil Pairing,” 2003.), [RFC5091] (Boyen, X. and L. Martin, “Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems,” December 2007.)), [RFC5408] (Appenzeller, G., Martin, L., and M. Schertler, “Identity-Based Encryption Architecture and Supporting Data Structures,” January 2009.) and [RFC5409] (Martin, L. and M. Schertler, “Using the Boneh-Franklin and Boneh-Boyen Identity-Based Encryption Algorithms with the Cryptographic Message Syntax (CMS),” January 2009.), and as such inherits some properties of that protocol. For instance, by concatenating the "date" with the identity (to derive the public key), the need for any key revocation mechanisms is virtually eliminated. Moreover, by allowing the participants to acquire multiple private keys (e.g., for duration of contract) the availability requirements on the KGF are also reduced without any reduction in security. The granularity associated with the "date" is a matter of security policy, and as such a decision made by the KGF administrator. However, the granularity applicable to any given participant should be publicly available and known to other participants. For example, this information can be made available in the same venue which provides "public information" of KGF server (i.e., P, sP) needed to execute IB encryption.

Some additional security considerations are outlined below:



 TOC 

5.  IANA Considerations

At this time there are no IANA considerations.



 TOC 

6.  References



 TOC 

6.1. Normative References

[RFC2119] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” BCP 14, RFC 2119, March 1997 (TXT, HTML, XML).


 TOC 

6.2. Informative References

[BF] Boneh, D. and M. Franklin, “Identity-Based Encryption from the Weil Pairing,” in SIAM J. of Computing, Vol. 32, No. 3, pp. 586-615, 2003.
[RFC5091] Boyen, X. and L. Martin, “Identity-Based Cryptography Standard (IBCS) #1: Supersingular Curve Implementations of the BF and BB1 Cryptosystems,” RFC 5091, December 2007 (TXT).
[RFC5408] Appenzeller, G., Martin, L., and M. Schertler, “Identity-Based Encryption Architecture and Supporting Data Structures,” RFC 5408, January 2009 (TXT).
[RFC5409] Martin, L. and M. Schertler, “Using the Boneh-Franklin and Boneh-Boyen Identity-Based Encryption Algorithms with the Cryptographic Message Syntax (CMS),” RFC 5409, January 2009 (TXT).


 TOC 

Authors' Addresses

  Violeta Cakulev
  Alcatel Lucent
  600 Mountain Ave.
  3D-517
  Murray Hill, NJ 07974
  US
Phone:  +1 908 582 3207
Email:  cakulev@alcatel-lucent.com
  
  Ganapathy S. Sundaram
  Alcatel Lucent
  600 Mountain Ave.
  3D-517
  Murray Hill, NJ 07974
  US
Phone:  +1 908 582 3209
Email:  ganeshs@alcatel-lucent.com