on the communication. Tables 1 and 2 give the num-
ber of high-level operations performed by server and
client, respectively, as well as the total number of
messages that have to be exchanged during a full
handshake. It can be observed that the client suffers
always more from increased security than the server,
in terms of messages to be sent as well as in terms
of operations to be performed. Tables 3, 4, 5, and
6 give the cycle count for the individual operations,
normalized so that a modular exponentiation with a
public RSA (that is, 16-bit) key has a cycle count of
one. All elliptic curve operations are performed over
a 192-bit prime field, for RSA 1.024-bit moduli are
used. Here it becomes obvious that increased secu-
rity (like using mutual authentication or ephemeral
Diffie-Hellman) results in a much higher load on the
server when using RSA than when using the elliptic
curve approach, since the server now has to perform
expensive private RSA key operations. For exam-
ple, where the total load on the server almost doubles
when switching from one-way to mutual authentica-
tion in the case of the ephemeral version of Diffie-
Hellman combined with RSA signatures, the elliptic
curve version only increases about 50%. This trend
is also evident when looking at the client, although
here the difference when switching to a higher secu-
rity level is not as pronounced as on the server side.
Finally, Figures 4 and 5 give a detailed breakdown
of the individual operations performed during the
handshake process by server and client, for one-way
and mutual authentication, respectively. An interest-
ing fact is the observation that for most key exchange
methods (with the exception of ECDH ECDSA) the
workload for the client remains the same, regardless
of the type of authentication used. In these cases, the
additional load created by mutual authentication is put
entirely on the serve side. The biggest fraction of the
key exchange process is taken up by the RSA private
key operations, since they are the only one involving
the entire 1.024-bit key. In the elliptic curve variants,
this operation does not exist, resulting in a generally
lower load put on the server. So these figures suggest
that when server load is not an issue, mutual authen-
tication should be used. For a resource constrained
server, on the other hand, the use of elliptic curve op-
erations may still allow for two-way authentication,
that could not take place anymore when RSA based
methodas are used.
6 CONCLUSIONS
We have performed a thorough examination of the
TLS handshake with a focus on the number of mes-
sages exchanged in relation to the chosen cipher-
suites. Especially in the context of constrained, mo-
bile or embedded devices, the number of messages
that has to be transmitted to setup a secure connection
can have a huge impact on the performance and life-
time of the single appliances. We then observed the
influence of higher security on the number of mes-
sages and on the load put on the participating par-
ties. Our results indicate that elliptic curve cryptog-
raphy is not only useful for this special environment
due to the smaller memory requirements, but also that
the increase in load put on the parties when the secu-
rity of the connection is heightened, through mutual
authentication or the usage of ephemeral variants of
the Diffie-Hellman protocol, is significantly smaller
when compared to its RSA/DSA counterparts. Future
research will now try to bring down the required mes-
sages to a bare minimum without sacrificing integrity
or authenticity of the connection.
ACKNOWLEDGEMENTS
The authors are supported by the MA27 - EU-
Strategie und Wirtschaftsentwicklung - in the course
of the funding programme Stiftungsprofessuren und
Kompetenzteams f
¨
ur die Wiener Fachhochschul-
Ausbildungen.
REFERENCES
Blake-Wilson, S., Bolyard, N., Gupta, V., Hawk, C., and
Moeller, B. (2006a). RFC 4492: Elliptic Curve Cryp-
tography (ECC) Cipher Suites for Transport Layer Se-
curity (TLS). Technical report, The Internet Society.
Blake-Wilson, S., Nystrom, M., Hopwood, D., Mikkelsen,
J., and Wright, T. (2006b). RFC 4366: Transport
Layer Security (TLS) Extensions. Technical report,
The Internet Society.
Dierks, T. and Rescorla, E. (2006). RFC 4346: The Trans-
port Layer Security (TLS) Protocol Version 1.1. Tech-
nical report, The Internet Society.
Gupta, V., Gupta, S., Chang, S., and Stebila, D. (2002). Per-
formance Analysis of Elliptic Curve Cryptography for
SSL. In Workshop on Wireless Security - Proceedings
of the 1st ACM workshop on Wireless security, pages
87–94. ACM.
Hankerson, D., Menezes, A., and Vanstone, S. (2004).
Guide to Elliptic Curve Cryptography. Springer Pro-
fessional Computing. Springer-Verlag New York.
Koschuch, M., Hudler, M., Kr
¨
uger, M., Großsch
¨
adl, J.,
and Payer, U. (2008). Workload Characterization of
a Lightweight SSL Implementation Resistant to Side-
Channel Attacks. In Franklin, M. K., Hui, L. C. K.,
and Wong, D. S., editors, Cryptology and Network
PERFORMANCE EVALUATION OF THE TLS HANDSHAKE IN THE CONTEXT OF EMBEDDED DEVICES
41