Effective Key Establishment and Authentication Protocol For Wireless Sensor Networks Using Elliptic Curve Cryptography
Effective Key Establishment and Authentication Protocol For Wireless Sensor Networks Using Elliptic Curve Cryptography
Presented
By
T.S.Monisha(074152), J.Deepika(074035)
III year, CSE ‘B’
K.L.N COLLEGE OF ENGINEERING
POTTAPALAYAM,SIVAGANGAI DIST.
Abstract
In this paper, we propose an efficient authenticated key establishment protocols between a
sensor and a security manager in a self-organizing sensor network and also propose a hybrid
authenticated key establishment scheme, which exploits the difference in capabilities between
security managers and sensors, and put the cryptographic burden where the resources are less
constrained. The hybrid scheme reduces the high cost public-key operations at the sensor side
and replaces them with efficient symmetric-key based operations. Meanwhile, the scheme
authenticates the two identities based on public-key certificates to avoid the typical key
management problem in pure symmetric-key based protocols and maintain a good amount of
scalability. The proposed scheme can be efficiently simulated using MATLAB, and achieve a
total processing time of 760 ms on sensor side, which is better than all the other public-key
based key establishment protocols we have studied. We also present its modified version with a
faster speed but more communication overhead. The proposed protocol has low storage
requirements for the user side, which makes it suitable for smartcards and other handheld
computing devices:
1. Introduction
In a Wireless Sensor Network (WSN for short), individual sensor nodes, or sensors, are
constrained in energy, computing, and communication capabilities. Typically, sensors are
mass-produced anonymous commodity devices that are initially unaware of their location. Once
deployed, sensors should self-organize into a network that works unattended. Due to the fact that
individual sensor nodes are anonymous and that communication among sensors is via wireless
links, sensor networks are highly vulnerable to security attacks. The task of securing WSNs is an
open research problem. A solution must strike a tradeoff between the security provided and the
consumption of energy, computing, and communication resources in the nodes. One way to
implement secure wireless communications in WSNs is through the use of message encryption.
In the simplest case, a number of nodes in the network share a secret encryption key(s),
henceforth called session key(s).
2. Scalable key establishment
In this section, we propose three different key establishment protocols for Wireless Sensor
networks according to different application scenarios, the first one based on pure symmetric key
cryptography and suitable for toys/games home networking, the second based on a hybrid of
symmetric key and public key cryptography and designed for residential or small commercial
wireless network deployment, and the last one based on pure public key cryptographic operations
and targeting large industrial or military applications.
Perrig et al. present to use trusted third parties to assist node-to-node key agreement .We call this
trusted third party a security manager. A security manager is granted special capabilities to assist
in provisioning link keys to other end mobile devices on-site. The security manager should first
establish a link key with an end device before it can install link keys into that device for secure
communicating with other end devices inside the mobile cluster. One way to accomplish the
initial link key establishment task is to pre-install a master key table into each device. However,
Wireless Sensor Networks may be highly versatile, involving temporary communications
between devices that may have never met before. Thus we cannot predict and install all master
keys needed for devices before they join the network, especially for large-scale wireless sensor
networks. An alternative way is to use a shared group key that is pre-loaded into each device in
our proposed cryptosystem. Then when two devices want to establish a link key, they use this
group key to encrypt and exchange their ephemeral key contribution data. Since the group key is
fixed, the trust relationship is based merely on the knowledge of the other device's extended
IEEE 64-bit address. The computation complexity and power consumption of symmetric key
cryptographic operations are negligible when compared with public key schemes. However, a
common group key poses a security risk if any one device is compromised. Therefore, this pure
symmetric key based key establishment protocol in applications that require the least security
protection, such as the home toys/games automation.
The use of asymmetric keys along with digital certificates to establish individual link keys can
help reduce this risk and restrict the impact of key compromise to the compromised node itself,
rather than to all its key-sharing parties. Public-key operations are quite expensive though. In
recent years, ECC based key agreement protocols have gained popularity in constrained mobile
environments, due to the property of small key sizes. We proposed a hybrid key establishment
protocol, which is based on a combination of ECC and symmetric key operations. The
motivation is to exploit the difference in capabilities between security managers and end devices,
and put the cryptographic burden where the resources are less constrained. End mobile devices
are much more battery and computational resources limited. However, the security manager
means powered and more computational powerful. The hybrid key establishment protocol
reduces the high cost elliptic curve random point scalar multiplications at the end device side and
replaces them with low cost and efficient symmetric key based operations.
To prevent the impersonation attack, we use certificates in our key-establishment protocol,
which provide a mechanism to check cryptographically to whom the public key belongs and if
the device is a legitimate member of a particular network. In our mobile cryptosystem, we use
the elliptic curve implicit certificate scheme [4], because of the resulting low communication
complexity, which is a dominant factor for low bit transmission channels in sensor networks.
First, an elliptic curve E defined over GF(p) (where p is the characteristic of the base field) with
suitable coefficients and a base point P of large order n is selected and made public to all users.
CA selects a random integer qC A as its static private key, and computes the static public key QC A
=qC A x P.
To obtain a certificate and the static private-public key pair, an end device U randomly selects a
temporary key pair (gU,GU ) and sends GU t o CA. CA verifies U's identity and the
authenticity of the request received from U. CA also selects a temporary key pair (gCA,G CA) a nd
computes the elliptic curve point BU = GU +GC A . T he implicit certificate ICU for U is constructed
as the concatenation of CA's static public key QC A, the device identity IDU , the elliptic curve
point BU and the certification expiration date tU, i.e.,ICU =(QCA,ID u,Bu,t
u).
CA then applies a
one-way hash function Hon ICU and derives an integer ev & [ 2,«-2] from H(ICU ) following the
conversion routine. Finally, CA computes U's private-key reconstruction data sU
=gC Aeu+qCA(modn), U's public key QU =euBu +QCA, and sends sU and ICU back to U. A fter U o btains
the implicit certificate from CA, it computes the hash value H(ICU) and derives an integer
eU from H(ICU) following the conversion routine. U also computes its static private key qU = s U
+
gU ' e U
( m °d n) and its public key QU = qu xP. U then reconstructs the public key Qv =euBu
+QCA. If Qv =QV, U accepts the certificate and outputs the static key pair (qU ,QU); o therwise it
rejects the certificate. By repeating the very same process, a security manager V acquires its
certificate ICV and static key pair (qV ,Q
).
V
The certificate generation processes for end device U a nd security manager V are performed
offline and before they join the network. When they first communicate to each other, they
execute our hybrid key establishment protocol as below:
1. U a nd V send to each other their implicit certificates. The content of the certificate is verified
at the other side, including the device identity and the validity period. If any check fails, the
protocol is terminated.
1. V c omputes the hash value H(ICU ) and derives an integer eU from H(ICU) following the
conversion routine. V t hen obtains U's public key
QU =euB u +QCA. After performing the certificate processing, V c an conclude that QU is
genuine, provided that U later evidences knowledge of the corresponding private key qU.
2. U s elects a k-bit random number cU as its link key contribution and a random 160-fc bit
integer r. U calculates its ephemeral private key dU =H(cu || r) and ephemeral public key
DU = du x P, where H is a cryptographic hash function to map a binary string to a random
integer e [2, n — 2]. U verifies V’s certificate and obtains V’s public key the same way as
V d oes, but instead of computing QV d irectly, U c omputes R = dU xQv =(due)x BV + dU x
QC A . U can conclude that R is calculated from genuine QV, provided that V later evidences
knowledge of the corresponding private key qV. U t hen encrypts cU by using the provably
secure elliptic cure encryption [6], and sends to V E = (DU ,(cU \\r)®R.x)=(El ,e 2 ).
3. V d ecrypts the received message and obtains R by calculating qv xEl = qv d u xP = du xQv =R. V
then computes u = e2 ® R.x, and checks if E1 =H(u)xP . It yes, V gets cU as the most
significant k bits of u. Otherwise, the protocol is terminated. V then selects a k-bit random
number cV as its link key contribution, and encrypts cV concatenated with its identity IDV
using symmetric key encryption under key cU , generating y = Ec U (IDV || cV ). Note that
proper encryption mode needs to be used, such as the Cipher Block Chaining (CBC)
mode, which ensures that there is no way for any device W to derive E c(cV ) from E (IDV
|| cV) a nd change this value. V s ends y t o U.
5. V c omputes MacKey || LinkKey = KDF(cU || cV ||IDU ||IDV ), here KDF i s the specified key
w
derivation function, LinkKey i s the established link key, and MacKey i s for explicit key
confirmation use. V then destroys cU and cV from its memory.
6. U d ecrypts the incoming message under cU and checks if the decrypted message contains a
proper coding of IDV concatenated with some number. If the check fails, U t erminates the
protocol. Otherwise, U denotes the number as cV, and U h as verified that V has the knowledge of
the private key qV associated with QV . U c omputes MacKey || LinkKey = KDF(cU ||cV||ID ||ID
U V),
and z = qU H(MacKey) + dU (mod n) . U t hen sends z to Vand destroys cU and cV from its
memory.
7. V v erifies if zxP=h(MacKey)xQu +Ei . If it is false, V terminates the protocol. Otherwise, V
believes that U h as the knowledge of the private key qU associated with QU, and U has provided
the explicit key confirmation to V. V s ends z' = MACM acKey(IDV ||IDU) to U, where MAC is a
message authentication code function.
8. U c hecks if z’ is valid. If yes, V provides the explicit key confirmation to U and both sides
take LinkKey a s the final established link key and accept the connection.
In this protocol, authentication is accomplished by sending the challenge pairs (E, y) a nd
(y, z ). It is infeasible for an adversary to compute the correct response y without knowing qV .
Thus U c an be sure that only V c an produce the response and U verifies that V has the knowledge
of the private key qV associated with the certified QV . A lso, z x P =H(MacKey)xQu +E i can be
satisfied only if z is calculated by the correct private key dU associated with the certified public
key QU . Therefore, V can be sure that only U can produce the correct response. In addition, an
adversary cannot obtain any information of cU and cV. I f both the symmetric and ECC encryption
schemes are secure, which implies the link key contribution of each side is transferred securely
to the other part.
This hybrid key establishment protocol consumes more node energy as compared to the pure
symmetric key based protocol. However, since we verify the binding of the sensor's private key
qU to its public key QU in step 6 and 7 through a linear combination of the static key and the
ephemeral key, rather than a multiplicative combination as in other ECC based pure public key
protocols, at least one expensive elliptic-curve scalar multiplication of a random point is moved
to the security manager side, and is replaced by one low cost modular multiplication, one
modular addition and one symmetric key decryption. Therefore, our hybrid key establishment
protocol is faster and saves more node energy than other public key based protocols, as
evidenced by running our protocol using MATLAB. The whole protocol execution time on end
device side is about 760 msec, while ECMQV protocol with ECC X509 certificates and implicit
certificates takes 1110 msec and 1155 msec respectively, and the Elliptic-Curve Diffie-Hellman
Ephemeral (ECDHE) protocol takes 1350 msec.
The hybrid key establishment protocol has much better security enhancement than our first pure
symmetric key based protocol, while has moderate energy consumption on end mobile devices.
We notice that if the security manager's private key is compromised, then all the link keys from
earlier runs can be recovered from the transcripts. However, the corruption of the sensor node
does not help to reveal the link keys. Therefore, our scheme provides half forward secrecy and is
suitable to use in residential and small commercial mobile applications where security is
important but not critical, and we can trade security for mobile users' energy efficiency.
To provide full forward secrecy, rather than being encrypted under a symmetric key cU , cV should
be sent to U in a similar way that cU is sent to V ( i.e., through secure elliptic cure encryption [6]),
and only U w ith its ephemeral private key can reconstruct it. Then our hybrid protocol is
modified into a pure ECC based public-key key establishment protocol.
However, this requires additional expensive elliptic curve random point multiplications on
mobile user side, and is opposite to our purpose of offloading the computation burden of end
devices. The pure ECC based public-key key establishment protocol is suitable to vital or
security-sensitive network deployments, including natural disaster control, battlefield service,
rescue missions, etc., where security is more important than energy efficiency.
3. FURTHER ENHANCEMENT
We can further reduce the computation complexity on sensor side, by using the Modular Square
Root (MSR) technique [26] to encrypt sensor's link key contribution cU instead of using ECC
cryptography. The attractiveness of MSR for wireless network application arises from its
asymmetry. MSR requires the sending party to perform only a single modular multiplication,
while the receiver performs exponentiation (needed to calculate the modular square root). Since
our program includes the general integer library, it is easy to implement MSR operations using
the library.
We call the modified protocol an MSR-combined hybrid key establishment protocol. First, an
elliptic curve E defined over GF(p) (where p i s the characteristic of the base field) with suitable
coefficients and a base point P of large order n i s selected and made public to all users. The
sensor U randomly chooses integer que. [2,n— 2] as its private key and computes the public key
QU more powerful security manager V, w e use NV to denote the corresponding public key, i.e.
the MSR modulus. Nv=pvq v , where pV and qV are large prime numbers. Since MSR is used at the
security manager side, we use the elliptic curve digital signature algorithm (ECDSA) as the
signature scheme of CA.
In order to receive a certificate, the sensor sends its public key QU t ogether with its user identity
through an out-of-band secure interface to CA. CA uses its private key qCA to s ign the hashed
value of the concatenation of the public key, the device identity IDU, and the certification
expiration date tU . T he CA then sends the signed message (rU,sU ) together with its public key
QC A through the secure channel to the terminal. By repeating the very same process, the security
manager V a cquires its certificate (rV,s ) . The certificate generation processes for sensor U a nd
V
security manager V are performed offline and before they join the network. At the beginning of
our MSR-combined hybrid key establishment protocol, they both send to the other side their
public key, device ID, certificate and the expiration time. Then the mutual certificate
authentication between the sensor and the security manager is executed in real-time.
The MSR-combined hybrid key establishment protocol now proceeds as below:
1. Both the sensor U a nd the security manager V send to the other side the public key, device
ID together with the certificate. Then the mutual authentication and certificate verification
is performed. If any check fails, the protocol is terminated.
2. U r andomly selects a k-bit integer cU ,as its link key contribution, and encrypts it using V’s
public key NV , generating x=(ru || cU ) mod NV (rU i s the proper padding). U then
2
Elliptic curve implicit certificate is used to avoid the typical key management problem in pure
symmetric-key based protocols. The elliptic curve implicit certificate scheme are used, because
of the resulting low communication complexity, which is a dominant factor for low bit
transmission channels in sensor networks as shown in Fig.1. This generation process takes
processing time of merely 1115 ms for 1500 bits of key size.
Fig .1 Processing time versus key size for Implicit certificate generation process
RSA Based Aziz-Diffie Protocol
The Aziz-Diffie protocol is used when the user contacts a server over the vulnerable “air
interface” of a typical sensor networks. Aziz-Diffie protocol uses signature authentication. It
assures mutual assurance of key freshness to prevent replays of old messages being used to
re-establish an “old”, possibly compromised, session key. Fig.2 shows that processing time of
Aziz- Diffie protocol is 20.4 sec for merely 5120 bits of key size.
Fig. 2 Processing time versus key size for RSA based Aziz-Diffie protocol
Mutual Authentication and Key Agreement Protocol
Mutual authentication and key agreement protocol is used to establish an agreed key and session
key between the user and security manager of sensor network which provides the authentication
to encrypt/decrypt the message. Fig 3 shows that, for 1730 key size it will take processing time
of 1350 ms to finish the authentication process.
Fig.3 Processing time versus key size for Elliptic Curve Digital Signature Algorithm (ECDSA)
Fig.4 Processing time versus key size for Hybrid key establishment rotocol
p
Modified MSR-combined hybrid key establishment Protocol
Reduction of computation complexity on sensor side is done, by using the Modular Square Root
(MSR) technique to encrypt sensor’s link key contribution instead of using ECC cryptography.
The attractiveness of MSR for wireless network application arises from its asymmetry. MSR
requires the sending party to perform only a single modular multiplication, while the receiver
performs exponentiation (needed to calculate the Modular Square Root).
In real-time execution of the MSR-combined hybrid key establishment protocol, the sensor is
required to compute three elliptic-curve scalar multiplication of fixed points (two for verifying
the ECDSA signature and another one for generating the ephemeral key), one symmetric key
decryption, one modular multiplication, one number public key decryption and elliptic-curve
scalar multiplication of a random point are all moved to the security manager side, which is more
computational powerful. The total processing time at the sensor side is approximately 455 msec.
stablishment protocol
Fig.5 Processing time versus key size for MSR-combined hybrid key E
References
[1] Chee-Yee Chong, Srikanta P. Kumar, ”Sensor Networks : Opportunities, and
Challenges”, Proceeding of the IEEE,Vol.91,No.8 ,August 2003.pp.1247-1256.
[2] Elianie Shi and Adrian Perrig, Carnegie ,”Designing Secure Sensor
Networks”,IEEE Wireless Communication, December 2004.pp.38-43.
[3] M. Aydos, T. Yan and C. K. Koc. “A High-speed ECC-based Wireless
Authentication Protocol on an ARM Microprocessor”. 16th Annual Computer Security
Applications Conference (ACSAC'00), Dec. 2000, New Orleans, Louisiana.
[4] A. Aziz, and W. Diffie. “A secure communications protocol to prevent
unauthorized access - privacy and authentication for wireless local area networks”. IEEE
Personal Communications, First Quarter 1994.
[5] M. Aydos, B. Sunar, and C.K. Koc, ” An Elliptic Curve Cryptography Based
Authentication and Key Agreement Protocol for Wireless Communication”. In 2nd
International Workshop on Discrete Algorithms and Methods Computing and
Communications Symposium on Information Theory, Dollas, Texas, October 30,1998.
[6] D. S. Wang and A. H. Chan. Mutual authentication and key exchange for low
power wireless communications. In IEEE MILCOM 2001 Conference Proceedings
(2001).
[7] Q. Huang, J. Cukier , Hisashi Kobayashi, Bede Liu, Daqing Gu, and
Jinyun Zhang, “Fast Authenticated Key Establishment Protocol for Self Organizing
Sensor Network. Proceeding of Second ACM International Workshop on Wireless
Sensor Network and Applications 2003.
[8] M. J. Beller, L.-F. Chang, and Y. Yacobi. “Privacy and authentication on a
portable communications system”. IEEE Journal on Selected Areas in Communications,
vol.11, no.6 1993.