Information Technology Reference
In-Depth Information
implement optimized ECC operations on popular
sensor platforms such as the TinyECC library
(Liu & Ning, 2008) discussed later in this chapter.
The energy consumption of a set of symmetric-
key and public-key algorithms is presented in
Tables 2 and 3 respectively. In the symmetric
case, the energy measurements are carried out
on the Mica2 sensor nodes with a 7.3728 MHz
ATmega128L microcontroller. The public-key
measurements are performed on the Mica2dots
sensor nodes with a 4 MHz ATmega128L 8-bit
microcontroller. The measurements evidently
show the advantages provided by symmetric-
key algorithms over public-key algorithms in
terms of energy consumption. Symmetric-key
algorithms consume energy in the order of μJ
(with the exception of DES) while public-key
algorithms consume energy in the order of mJ.
In the symmetric-key evaluation, RC5 provides
the best energy consumption followed by AES.
SkipJack and TEA also exhibit good results.
DES was the worst performer; this result is not
surprising due to the fact that DES was designed
for high end systems with adequate processing
and energy resources.
The asymmetric algorithm evaluation shows
the great savings provided by the ECC digital
signature algorithms especially in the signature
generation operation. The cheap RSA signature
verification is overwhelmed by the expensive
signature generation operation. An interesting
property to note is represented in the significant
increase in RSA signature creation energy con-
sumption when increasing the key size from 1024
to 2048 bits. The RSA signature creation operation
using a 2048-bit key is more than seven times
more energy demanding than the same operation
using a 1024-bit key. This is not the case in
ECDSA (Johnson, Menezes, & Vanstone, 2001),
the ECC signature algorithm. Moving from a
160-bit key to a 224-bit key increases the energy
consumption by a factor of less than three (As
stated in the second section, a 160-bit and a 224-
bit keys in ECC respectively provide the same
security level as a 1024-bit and 2048-bit keys in
RSA).
Table 3 also presents the key agreement energy
cost when using RSA and ECC. In RSA the key
agreement is performed by the client encrypting
a random key using the server's public key. The
server extracts the client-generated key by decrypt-
ing the client's message using its private key. In
ECC, the key agreement algorithm, ECDH (Miller,
1986), relies on a variant of the Diffie-Hellman
key agreement protocol discussed in the fourth
section. ECDH employs analogous operations on
the client and server sides. The RSA key agree-
ment on the server side is much more expensive
than that on the client due to the expensive RSA
decryption operation with the server's private
key. The ECC key agreement energy consump-
tion exhibits much higher savings compared to
the RSA key agreement on the server side and
comparable results on the client side.
Managing Wireless Data
Transmission and Reception
In general, security protocols consume energy in
two main forms: (1) processing energy due to the
execution of the security mechanisms from encryp-
tion, decryption, MACing, signature generation
and verification, random number generation, etc.
Table 2. CPU energy consumption of Symmetric-
key ciphering operations (CBC mode) on MICA2
sensors (Guimaraes et al., 2005; Wander et al.,
2005)
Cryptographic Algorithm
Energy Consumption to
process 29 bytes payload
AES-128
46.92 μJ
SkipJack
51.84 μJ
RC5
36 μJ
RC6
258.72 μJ
TEA
61.44 μJ
DES
14.592 mJ
 
Search WWH ::




Custom Search