You are on page 1of 5

2009 International Symposium on Information Engineering and Electronic Commerce

Improved TLS Handshake ProtocolsUsing Identity-


based Cryptography

Changyan Peng, Quan Zhang and Chaojing Tang


School of Electronic Science and Engineering
National University of Defense Technology
Changsha, Hunan, China
pengchangyan@gmail.com

Abstract — Transport layer security (TLS) protocol is widely certificates are needless any more, IBC-based schemes achieve
used in e-business and information systems for providing security less communication overheads and shorter handshake latency.
attributes such as authentication, confidentiality and integrity. Unfortunately, the IBC-based protocols proposed in the
However, the certificate-based mechanism which is adopted by literature so far [4] [5] are merely simple extensions of TLS in
most TLS handshake protocols results in complex certificate the GRID environment, and still suffer from too many
management overheads and long handshake latency. To overheads both in computation and communication.
overcome these disadvantages, a series of handshake protocols
were presented that applies identity-based encryption, signature, In this paper, four identity-based cryptography primitives
signcryption, and authenticated key agreement schemes are adaptively applied to TLS handshake protocol, then
respectively. Security analysis indicates that the identity-based security analysis and simulation experiments are conducted to
protocols have equivalent security level but more security validate the better effects and efficiencies. The remainder of the
attributes than the standard certificate-based schemes and the paper is organized as follows. Section II provides an overview
ones proposed in the literature so far. Experiment results show of TLS handshake protocol and identity-based cryptography.
that our schemes have commensurate cryptographic computation Our IBC-based protocols are detailedly presented in section III.
overheads comparing with other schemes, but achieve shorter In Section IV and V, results of security analysis and simulation
handshake latency especially in bandwidth-limited environments experiments are described. Finally, section VI summarizes our
because of less communication traffic.
conclusions and discusses future work.
Keywords - transport layer security; handshake protocol;
identity-based cryptography; bilinear pairing II. AN OVERVIEW OF TLS AND IBC

I. INTRODUCTION A. TLS and handshake protocol


TLS comprises two main components, namely handshake
With the rapid development of e-business and information
protocol and record protocol. The former is responsible for
systems, transport layer security (TLS) [1] protocol is broadly
negotiating and establishing secure connections, while the latter
deployed in order to protect plenty of network application
is responsible for securing data transmission. During the
protocols. As an evolvement and standardization of secure
establishment of a TLS session, handshake protocol negotiates
socket layer (SSL) [2], TLS supports security services with
a common cipher suit, authenticates the server and the client
authentication, confidentiality and integrity between two
(optional), and agrees on necessary session keys to protect the
networking applications. Handshake protocol is the core of
communication traffic. After a success handshake, the session
TLS and the pre-requisite of secure communications, which
turns into the data transfer phase. The record protocol uses
accomplishes crypto algorithm negotiation, authentication,
symmetric-key algorithms for bulk encryption, thus application
session key agreement, and so on.
data can be transported in a secure style.
Security and performance are the two most critical factors
Fig. 1 shows the total protocol operations of a standard TLS
in TLS applications. However, most TLS implementations
handshake [1]. The procedure is described in four steps:
utilize public-key certificate mechanisms, which introduce the
transport and process of certificates in the client-server Step 1: The client C and the server S exchange random
authentication procedure, thus make the handshake protocol nonces (used for replay protection) and negotiate a common
suffer from heavy overheads and long duration. In recent years, cipher suite with the ClientHello and the ServerHello messages.
identity-based cryptography (IBC) [3] is developing at a rapid
pace both in academic research and practical application, and Step 2: S sends its public-key certificate in the Certificate
has also been employed in many fields of information security. message and sends the ServerKeyExchange message for key
IBC-based TLS handshake protocols mainly extend from agreement. If S requests client authentication, it sends a
standard protocols in the aspects including crypto algorithms, CertficateRequest message listing acceptable certificate types
key exchange, key management mechanism, et al. Because of and certificate authorities. S finishes the Hello procedure with
the ServerHelloDone message.

978-0-7695-3686-6/09 $25.00 © 2009 IEEE 135


DOI 10.1109/IEEC.2009.33
Step 3: C verifies the validity of S’s certificate. If public- Let G1 denote a cyclic additive group of some large prime
key certificate is requested by S, C sends it in the Certificate order q and G2 a cyclic multiplicative group of the same order.
message. Then C sends the ClientKeyExchange message to A pairing is a map: e : G1 u G1 o G2 such that for all P, Q Î G1
finish the agreement on the session key and sends the and all a, b Î Z q* , e(aP, bQ) = e( P, Q) ab . Note that e is also
CertificateVerify message to be verified by S. Now S and C can symmetric, i.e., e( P, Q ) = e(Q, P) . Typically, the map is
compute a session key for bulk encryption in record protocol. derived from the Weil, or the Tate, or other pairings on an
elliptic curve over a finite field.
Step 4: In the end, both the client and the server send the
ChangeCipherSpec message while switching to the new cipher IBC enjoys the features that public key cryptography
algorithm, and send the Finished message to complete the possesses without the need of certificate and the flaws it brings,
handshake protocol. and has already been applied to many areas of network and
information security. Lim first proposed a handshake protocol
Both symmetric and asymmetric cryptography have been
[4] that simultaneously used IBE and IBS, which was applied
used for authentication between the server and the client.
to GRID for users’ authentication and authorization by the
Though symmetric cryptographical methods using the pre-
servers. Li extended the protocol in a hierarchical structure and
shared key mechanism [6] feature little computation and
argued that the protocol is more efficient than the traditional
communication overheads, it suffers poor scalability and isn’t
schemes according to the results of simulation tests [5].
fit for large-scale applications.
However, the two schemes have several deficiencies. First,
Asymmetric cryptography mechanisms including RSA and
they are just extensions of TLS in GRID, and lack for
Elliptic Curve Cryptosystem (ECC) have been used in TLS,
systematization and generalization. Second, they still suffer
and related protocols have been standardized. Comparing with
from too many overheads in computation and communication.
RSA, ECC achieves equivalent security strength with smaller
At last, they are only designed for mutual authentication, and
keys. For instance, 163-bit ECC is as secure as 1024-bit RSA.
the situation without client authentication isn’t considered. Our
ECC is especially attractive in bandwidth-constrained wireless
protocols are preferable to solve these problems.
environments because smaller keys result in power, bandwidth
and computational savings [7]. In these schemes, public key
infrastructure (PKI) should be deployed to relate a user’s III. IBC-BASED TLS HANDSHAKE PROTOCOLS
certificate to his identity. However, certificate-based schemes According to different application scenarios and security
introduce much computation, traffic and delay because of requirements, four kinds of handshake protocols are designed
certificate query, path construction and exchange. using IBE, IBS, IBSC and IBAKA respectively. It is supposed
that PKG has already finished the generation and distribution
of system parameters and users’ private keys before the
protocol begins. We also assume that the client has the key pair
( QC , SC ) while the server has ( QS , S S ).
The proposed protocol is depicted in Fig. 2. As seen in the
figure, both the server S and the client C didn’t have to send the
Certificate message comparing with the certificate-based
schemes because public key can be derived from the identity. If
client authentication is requested, the server sends the
IdentityRequest message, and then the client sends the
Figure 1. TLS handshake protocol. IdentityVerify message for verification. From the description
above, it can be inferred that both the rounds and traffic of the
protocol decrease. Although the content and meaning of the
B. IBC and its application to TLS messages is different, main procedure is similar in different
The basic idea of IBC is that public keys can be derived protocols based on four cryptography primitives. So only the
from arbitrary strings such as e-mail, IP or MAC addresses. different parts (step 2 and 3) in the protocol will be concerned
Meantime, private keys are generated and distributed by a for simplifying the following description, while other steps that
trusted authority – Private Key Generator (PKG) which is are similar to section IIA will be omitted.
PKI’s counterpart. Since IBC is certificate-free, it is more
lightweight than PKI.
IBC was first introduced by Shamir in 1984. After the
seminal discovery of a practical and secure identity-based
encryption (IBE) scheme [3] which uses pairings over elliptic
curves by Boneh and Franklin in 2001, a lot of identity-based
schemes come forth, which mainly focus on identity-based
encryption, identity-based signature (IBS) [8], identity-based
signcryption (IBSC) [8], and identity-based authenticated key
agreement (IBAKA) [9]. We first introduce pairings briefly.
Figure 2. IBC-based TLS handshake protocol.

136
A. IBE-based handshake protocol key QS . If the verification result is false, C quits the protocol.
The Diffie-Hellman key exchange protocol is used in our Otherwise C selects a random number b, computes g b , and
new protocols to agree on a session key, and most of the then sends it to S in the ClientKeyExchange message. From
messages have to be extended for supporting new protocols. then on, a session key can be computed simultaneously.

Step 2: The server S selects a random number a, and then The computation load of IBSC schemes is less than that of
computes g a . If client authentication is needless, S sends g a in the combination of the IBE and the IBS schemes, which will be
the ServerKeyExchange message for key agreement. On the evaluated later.
contrary, S encrypts g a using the public key QC of the client C,
and sends the result EQc [ g a ] in the message. In addition, S sends D. IBAKA-based handshake protocol
the IdentityRequest message that declares client authentication Identity-based authenticated key agreement protocol
is requested, and sends the ServerHelloDone message. provides mutual key authentication using pairings. The
intrinsic feature of IBAKA makes it align well with the mode
Step 3: C gets g a directly or gets it by decryption. C selects
of mutual authentication. The IBAKA scheme proposed by
a random number b, and then computes g b . C encrypts it
Chen [9] is adopted in the protocol below.
using QS , and sends EQs [ g b ] in the ClientKeyExchange message.
Also C sends the IdentityVerify message for verification. At the Step 2: The server S selects a random number a, and
moment, C and S can compute the session key respectively. C computes TS aQS . Then S sends TS to the client C in the
computes K CS ( g a )b , while S computes K SC ( g b ) a after S ServerKeyExchange message. The IdentityRequest message is
gets g b by decryption. Since K CS K SC , a common session key also omitted.
is deduced.
Step 3: The client C randomly selects a number b, and then
It can be seen that authentication is arrived at by the IBE computes TC bQC . C sends it to S in the ClientKeyExchange
scheme. At last, a secure connection is established. message. After that C computes K CS e(TS  bQS , SC ) , while S
gets K SC e( S S , TC  aQC ) . According to [9], K CS is equal to K SC ,
B. IBS-based handshake protocol and a common session key can be arrived at.
Mutual authentication between the client and the server can The remarkable feature of the protocol is that it uses an
also be achieved by IBS schemes. The IBS-based handshake IBAKA protocol instead of a DH one. The protocol can also
protocol is described below. adopt other IBAKA protocols after adequate modifications.
Step 2: The server S selects a random number a, and
computes g a . S signs it by its private key S S , and sends g a and IV. SECURITY ANALYSIS
the signature result Sig Ss [ g a ] in the ServerKeyExchange The security of IBC is based on the hardness of several
message. The rest operation is similar to the IBE-based problems such as the bilinear Diffie-Hellman problem, the
protocol. computational Diffie-Hellman problem and so on. No
Step 3: The client C verifies the signature by public key QS . algorithm is known to be able to efficiently solve any of them
If it is invalid, C quits the protocol. Otherwise C selects a so far. More comprehensive description of security analysis of
random number b, computes g b , and then sends it in the IBC can be referred to [3] [8] [9].
ClientKeyExchange message. If client authentication is On the basis of security mechanisms of TLS, the proposed
requested, C signs g b by its private key SC , and appends it in protocols attain several basic security properties including
the forementioned message. authentication, confidentiality and integrity. In addition, the
Finally, the session key can be verified by the Finished protocols achieve the following security merits and are more
message. secure than the quondam ones.
Forward security: Owing to the freshness of session keys
C. IBSC-based handshake protocol which are derived from randomly chosen numbers by the client
Li proposed an IBC-based handshake protocol in which and the server, even if long term secret keys are disclosed to
mutual authentication and key agreement is attained by any adversary, session keys established before the compromise
combining IBE and IBS schemes together. Actually the would not be exposed.
combination can be replaced by identity-based signcryption Key authentication: The features of mutual authentication
with more efficiency. It must be pointed out that the protocol between the client and the server assure that only the
only fits the situation with mutual authentication. participants know the session key.
Step 2: The server S selects a random number a, and Mutual key agreement: Key agreement is finished by the
computes g a . S signcrypts g a by taking as input necessary close cooperation between the client and the server.
system parameters, S’s private key S S and the client C’s public
key QC . Then S sends the ciphertext result in the Resistance to the man-in-the-middle attack: The virtue of
ServerKeyExchange message. The IdentityRequest message is the IBC schemes that public keys are derived from the
not required any more. identities naturally guarantees that the IBC-based protocols are
resistant to the man-in-the-middle attack if long term keys are
Step 3: The client C unsigncrypts the message by taking as not compromised.
input system parameters, C’s private key SC and S’s public

137
V. PERFORMANCE EVALUATION IBSC-based scheme. The IBE-based scheme and Li’s scheme
In this section, two metrics including crypto processing take longer processing time, while the IBS-based and IBAKA-
time and handshake duration are used for performance based scheme achieve less time. It can also be seen that the
evaluation of different protocols in the handshake phase. load of the server is far less than that of the client in the IBSC-
based scheme, which would greatly improve the capability of
The simulation platform was made up of five computers in the server because it can accept more client connections in the
a local area network. The computers were all equipped with same conditions.
Pentium D 3.0G CPU, 2 GB memory, and the Windows XP
professional SP3 operating system. The public key algorithms
8
RSA
7 ECC

with equivalent security level were chosen, including 1024-bit


IBE
IBS

AverageProcessingTime˄ ms˅
6

RSA, 163-bit ECC, and 512-bit IBC. The implementations of 5

the RSA-based and ECC-based protocols come from OpenSSL 4

0.9.8g [10], while the IBC-based protocols adopt the 3

algorithms in PBC 0.4.10 [11]. 1

0
Client Server

A. Crypto processing time


a˅ Without Client Authentication

The computation loads of all protocols are compared by 14
RSA

public-key operations that most of the crypto processing time is


ECC
12
IBE
IBS

AverageProcessingTime˄ ms˅
spent on. Encryption/decryption and signature/verification are 10 IBE+IBS
IBSC
IBAKA

concerned in RSA while ECDSA verification and ECDH key 8

exchange are considered in ECC. In IBC schemes, pairing 6

operation, multiplication in G1, and exponentiation in G2 are 4

focused on. Other loads related to hashing, symmetric key 2

encryption and so on are omitted. The main crypto operations 0


Client Server
b˅ Mutual Authentication

are listed in Table I and Table II.


Figure 3. Crypto processing time.
TABLE I. MAIN CRYPTO OPERATIONS WITHOUT CLIENT
AUTHENTICATION As a result of the high cost of pairing operation, IBC-based
schemes incur more overheads as comparing with the RSA-
Client Server based and the ECC-based schemes. However, performance of
RSA RSAverify  RSAencrypt RSAdecrypt usual computers enhances quickly, and the processing time will
ECC ECDSAverify  ECDH op ECDH op certainly decrease. Also, as an emerging technique, IBC is
under rapid development, and many optimization algorithms
IBE 1P  1G1  1G2  1P  have been reported with more efficient implementations. Hence,
IBS 1P  1G1  2G1  the cost of ID-based schemes can be expected to fall.

TABLE II. MAIN CRYPTO OPERATIONS WITH MUTUAL AUTHENTICATION B. Handshake duration
Besides the crypto processing time, the overall handshake
Client Server
duration also involves other delays due to message parsing and
RSA RSAverify  RSAencrypt  RSAsign 2* RSAverify  RSAdecrypt
network latency for message transmission. Certificate parsing
ECC ECDSAverify  ECDH op ECDSAverify  ECDH op spends most of the parsing time among all messages, especially
IBE 2 P  1G1  1G2  2 P  1G1  1G2  in the condition with a long certificate chain. Generally, a
standard X.509 certificate is about 1.5KB in size. The IBC-
IBS 1P  3G1  1P  3G1  based schemes avoid the parsing and verification of certificates,
IBE+IBS 2 P  1G1  1P  1G1  3G2  and efficiently reduce the time of message parsing. Handshake
2 P  1G2  2G1  1G2 
duration is also closely related to network throughput. When
IBSC
the throughput is as low as constrained channel conditions such
IBAKA 1P  2G1  1P  2G1  as wireless communications, the transport of certificate chain
The results shown in Fig. 3 are the average crypto will result in more latency. Comparing with the certificate-
processing time of ten operations of different protocols. based schemes, the IBC-based ones cut down the cost of
certificate transport and achieve less latency.
1) Without client authentication. As seen in Fig. 3 a), the
processing time of the client is always longer than that of the Fig. 4 depicts the average handshake duration of different
server. In all schemes, the IBE-based one spends the most time protocols as the network throughput changes.
both in the client and the server. It is remarkable that the As expected, handshake duration increases when the
processing time of the server is rather short in the IBS-based network throughput decreases. Because the transmitted data
schemes. amount of the IBC-based schemes is much less than that of the
2) Mutual authentication. Fig. 3 b) indicates that the RSA-based and the ECC-based one, the proposed schemes
processing time of both sides is almost the same except the achieve less duration at low network throughput. In the

138
condition of mutual authentication, the decrease ratios are even 2) Mutual authentication. From Fig. 5 b), it can be seen
higher because the amounts of certificate messages are doubled. that the IBE-based scheme and Li’s scheme perform worse for
they need more crypto processing time and larger amounts of
250
RSA transmitted data. The IBS-based and IBSC-based scheme
200
ECC
IBE accomplish better than the former two schemes. Among all the
IBC-based schemes, the IBAKA-based one achieves the best
IBS
Handshake Duration˄ ms˅

150 performance. It fully utilizes the virtue of the identity-based


cryptography, and ideally fulfills the peculiar requirement of
100
mutual authentication, which makes it arrive at less processing
50
time and communication traffic.
From the analysis above it can be inferred that the proposed
0
0 200 400 600 800 1000 1200 1400
Network Throughput (Kbps)
1600 1800 2000 IBC-based protocols efficiently improve the performance of
a˅ Without Client Authentication
TLS handshake procedure and particularly suit for wireless
400
environments with low network throughput.
RSA
350 ECC
IBE

VI. CONCLUSIONS
IBS
300
IBE+IBS
Handshake Duration˄ ms˅

IBSC
250 IBAKA

200
Four improved TLS handshake protocols applying different
150
IBC primitives from pairings were designed in order to
100 overcome the shortages of complex certificate management and
50 long handshake latency which exists in current widely-used
0
0 200 400 600 800 1000 1200 1400 1600 1800 2000
TLS protocol. Security analysis asserts that the IBC-based
Network Throughput (Kbps)
b˅ Mutual Authentication protocols have equivalent security level but more security
attributes than the schemes in the literature until now.
Figure 4. Handshake duration. Experiment results show that our schemes have commensurate
crypto computation overheads comparing with other schemes,
Since the handshake duration of different schemes is nearly but achieve shorter handshake latency especially in bandwidth-
undistinguishably, Fig. 5 is used to more clearly compare the limited environments.
duration under three typical network throughput values, 400K,
1000K and 2000K bps. We are now in the process of designing more secure
handshake protocols with perfectly forward security and
60
RSA anonymity, and will conduct further study for performance
50
ECC
IBE optimization and application practicability of our schemes.
IBS
Handshake Duration˄ ms˅

40

REFERENCES
30
[1] T. Dierks and C. Allen, “The TLS protocol version 1.0,”
20 http://www.ietf.org/rfc/rfc2246.txt.
[2] A. Frier, P. Karlton and P. Kocher, “The SSL protocol version 3.0,”
10
http://wp.netscape.com/eng/ssl3/draft302.txt.
0
400 1000 2000
[3] D. Boneh and M. Franklin, “Identity-based encryption from the Weil
Network Throughput (Kbps)
a˅ Without Client Authentication
pairing,” CRYPTO 2001, LNCS 2139, pp. 213-229, 2001.
[4] H.W. Lim and K. Paterson, “Identity-based cryptography for grid
100
RSA
security,” Proc. e-Science'05, Melbourne, Australia, 2005.
90 ECC
IBE [5] H.W. Li, S.X. Sun and H.M. Yang, "Identity-based authentication
80 IBS
IBE+IBS protocol for grid," Journal of Systems Engineering and Electronics, vol.
Handshake Duration˄ms˅

70

60
IBSC
IBAKA 19, pp. 860-865, 2008.
50 [6] F.C. Kuo, H. Tschofenig and F. Meyer, “Comparison studies between
40 pre-shared and public key exchange mechanisms for transport layer
30
security,” Proc. IEEE Global Internet Symposium 2006, in conjunction
20
with INFOCOM 2006, Barcelona, Spain, 2006.
10

0
[7] V. Gupta, S. Gupta, and S. Chang, “Performance analysis of elliptic
400 1000
Network Throughput (Kbps)
2000
curve cryptography for SSL,” Proc. of WiSe'02, Atlanta, USA, 2002.
b˅ Mutual Authentication

[8] P.S.L.M. Barreto, B. Libert, N. McCullagh and J.J. Quisquater,


Figure 5. Handshake duration at typical throughout. “Efficient and provably-secure identity-based signatures and
signcryption from bilinear maps,” ASIACRYPT 2005, LNCS 3788, pp.
515–532, 2005.
1) Without client authentication. As depicted in Fig. 5 a),
[9] L.Q. Chen and C. Kudla, “Identity based authenticated key agreement
the IBS-based scheme always achieves shorter duration than protocols from pairings,” HP Technical Report, 2003.
the IBE-based one because of its less computation loads. The [10] E.A. Young, “OpenSSL 0.9.8g,” http://www.OpenSSL.org/.
difference among the four schemes is not apparent at high
[11] D. Boneh, M. Franklin and B. Lynn, “The pairing-based cryptography
network throughput. library,” http://crypto.stanford.edu/pbc/.

139

You might also like