Next Article in Journal
Development of Gentle Slope Light Guide Structure in a 3.4 μm Pixel Pitch Global Shutter CMOS Image Sensor with Multiple Accumulation Shutter Technology
Next Article in Special Issue
Anti-Runaway Prevention System with Wireless Sensors for Intelligent Track Skates at Railway Stations
Previous Article in Journal
A Middleware with Comprehensive Quality of Context Support for the Internet of Things Applications
Previous Article in Special Issue
Sliding Mode Observer-Based Current Sensor Fault Reconstruction and Unknown Load Disturbance Estimation for PMSM Driven System
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

An Enhanced Privacy-Preserving Authentication Scheme for Vehicle Sensor Networks

1
College of Computer Science and Technology, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
2
College of Computer Science, Chongqing University, Chongqing 400044, China
3
School of Cyber Security and Information Law, Chongqing University of Posts and Telecommunications, Chongqing 400065, China
4
School of Electronic Engineering, Dublin City University, Dublin, Ireland
*
Authors to whom correspondence should be addressed.
Sensors 2017, 17(12), 2854; https://doi.org/10.3390/s17122854
Submission received: 30 September 2017 / Revised: 28 November 2017 / Accepted: 2 December 2017 / Published: 8 December 2017
(This article belongs to the Special Issue Sensors for Transportation)

Abstract

:
Vehicle sensor networks (VSNs) are ushering in a promising future by enabling more intelligent transportation systems and providing a more efficient driving experience. However, because of their inherent openness, VSNs are subject to a large number of potential security threats. Although various authentication schemes have been proposed for addressing security problems, they are not suitable for VSN applications because of their high computation and communication costs. Chuang and Lee have developed a trust-extended authentication mechanism (TEAM) for vehicle-to-vehicle communication using a transitive trust relationship, which they claim can resist various attacks. However, it fails to counter internal attacks because of the utilization of a shared secret key. In this paper, to eliminate the vulnerability of TEAM, an enhanced privacy-preserving authentication scheme for VSNs is constructed. The security of our proposed scheme is proven under the random oracle model based on the assumption of the computational Diffie–Hellman problem.

1. Introduction

With the rapid development of the intelligent transportation systems (ITSs) [1], vehicular ad hoc networks (VANETs) have become increasingly popular. The vehicles in VANETs can communicate with each other via wireless communication [2]. If vehicles can interact with other vehicles or the roadside infrastructure to exchange collected data for decision-making and safer driving, traffic jams can be avoided and the safety of drivers can be guaranteed to the utmost extent; consequently, VANETs are a promising means of improving traffic safety and management. At present, vehicles are equipped with various sensors that can provide valuable data. Further equipping vehicles with onboard sensing devices can turn VANETs into vehicle sensor networks (VSNs) [3]. Therefore, the authentication protocols used in VANETs can also be used in VSNs. Moreover, dynamic traffic information and many types of physical data associated with traffic distributions can be sensed and collected by such vehicular communication networks. Therefore, VSNs are expected to significantly facilitate future wireless communication.
Two types of communication exist in VANETs, namely vehicle-to-vehicle (V2V) communication and vehicle-to-infrastructure (V2I) communication, which depend on two essential kinds of components: onboard units (OBUs) and roadside units (RSUs). As shown in Figure 1, OBUs are the wireless communication units equipped on vehicles, whereas RSUs are wireless access units located at significant places on the road. Generally, to assist vehicles and RSUs in performing certain tasks, such as authentication, a backend server should be deployed remotely. The characteristics of VANETs include self-organization, channel-opening behavior, and rapidly changing and multiple-hop topologies. Due to these characteristics, VANETs are more susceptible to malicious attacks. Since safety and privacy are a concern in many applications in VANETs [4,5], communication security issues are worthy of attention. Among the various security mechanisms used in VANETs, authentication is one basic component that is critical for ensuring security. However, a desirable authentication scheme must be efficient and practical for use in fast-moving scenarios, which means that the computation cost for authentication should be as low as possible to enable real-time response. In addition, privacy preservation should be considered, including the identity privacy, location privacy, and interest privacy. Moreover, the location of a vehicle is closely related to who is driving it. When a vehicle communicates with others in a wireless network, it will not be acceptable to the public if the vehicle’s identity and location are disclosed. Thus, privacy preservation must be achieved in the authentication procedure. In addition, it should be possible for the real identities of the malicious vehicles to be revealed by the authorities when necessary [5]. These requirements pose a considerable challenge for the development of an ideal authentication scheme.
The contributions of this paper are as follows: (1) an enhanced privacy-preserving authentication scheme based on the Chuang–Lee’s scheme is proposed that can resist internal attack. In addition, we demonstrate the correctness and security of the improved scheme and analyze its computational costs; (2) to preserve the identity privacy of drivers, anonymity is achieved by randomizing the real identities; and (3) to preserve the location privacy of drivers, unlinkability is achieved in the authentication procedure.
The remainder of this paper is organized as follows. Related work is introduced in Section 2. Preliminaries are presented in Section 3. A review of the Chuang–Lee’s scheme is provided in Section 4. Then, a concrete description of the proposed scheme is offered in Section 5. Section 6 presents the proofs of correctness, security and performance. Finally, the conclusions are provided.

2. Related Work

To cope with the challenges associate with VANETs, many types of authentication schemes have been investigated. Porambage et al. [6] introduced a two-phase authentication protocol for sensor networks that uses certificates and consequently cannot preserve the unlinkability of messages. Raya and Hubaux [7] proposed an authentication scheme for VANETs using anonymous certificates, in which each vehicle can utilize distinct key pairs in each authentication stage to avoid being tracked. However, frequent changing of key pairs is likely to result in burdensome management and storage requirements. Lu et al. [8] proposed an alternative way to avoid the complexity of preloading a large number of anonymous certificates with the support of RSUs. When a vehicle passes an RSU, it will be issued a short-term anonymous certificate; thus, the unlinkability of messages is preserved. However, the efficiency will inevitably be low because each vehicle must frequently interact with RSUs. Subsequently, Lin et al. [9] introduced another secure scheme that does not require interaction with RSUs, in which membership managers, rather than RSUs, are responsible for the issuing of certificates based on group signatures. However, the efficiency of this solutions is low. Zhang et al. [10] presented two additional authentication schemes with privacy preservation; however, the computational costs of their methods are somewhat high because of the utilization of bilinear pairing. Similarly, Zheng et al. [11] introduced an authenticated key agreement scheme based on bilinear pairing. Ou et al. [12] later showed that Zheng et al.’s scheme is susceptible to impersonation attacks, and proposed a more secure authenticated key agreement scheme; however, the computational cost of this scheme is again somewhat high because of the utilization of bilinear pairing. In addition, an authentication scheme with access control for VANETs was investigated by Yeh et al. [13]; however, Horng et al. [14] later showed that Yeh et al.’s scheme [13] is susceptible to privilege escalation attacks.
Recently, Chuang and Lee [15] developed a trust-extended authentication mechanism, called TEAM, for VANETs. In TEAM, vehicles are classified into three types, namely, law executors (LEs), mistrusted vehicles (MVs) and trusted vehicles (TVs), as shown in Figure 1. Moreover, it required each vehicle is equipped with a tamper-proof device from which no attacker can extract any stored data, which is so strong that it is not practical. The performance of this mechanism in response to several types of attacks has been analyzed; however, the linkability of messages in the authentication procedure and the possibility of internal attacks during the secure communication procedure, which can easily be executed by a malicious vehicle, have been ignored. A malicious vehicle can trace a driver by intercepting the message sent during the authentication procedure because the values D i and M 4 are constant. Moreover, a malicious trusted vehicle can compute the real identity of a user and the session key by intercepting a message communicated via the secure communication procedure because it possesses the authorized parameter. Kumari et al. [16] proposed an enhanced trust-extended authentication scheme based on TEAM. However, their scheme fails to protect against internal attacks. Therefore, we have developed an improved authentication procedure and secure communication procedure and have proven their correctness and security. The updating of the constant values used in the authentication procedure is performed by the user himself. Finally, we analyze the computational costs and security features of the improved secure communication procedure.

3. Preliminaries

3.1. Security Model

To accurately capture the capabilities of an attacker, an experiment concerning the interaction between an adversary and a challenger is introduced. The random oracle model, which originates from the work of Bellare et al. [17], is adopted in our security proof. An adversary A can be allowed to communicate with the participants through defined oracle queries; thus, the adversary’s behavior during a real attack can be modeled. In our proposed protocol, each participant is either a common vehicle’s OBU V i or an LE E i . Let U represent all participants that is the union of common vehicle’s OBUs and LEs.

3.1.1. Protocol Execution

Let U i i represent the ith instance of a participant U i and let b denote a randomly chosen bit. All possible oracle queries are described as follows:
  • E x e c u t e ( V i i , U j i ) : The passive attack capability of the adversary A is tested by this query. Executing this query will output an honest execution transcript of the protocol.
  • S e n d ( U i i , M ) : The active attack capability of the adversary A is tested by this query. A can send a S e n d request on a message M to U i i . Upon receiving this message, U i i proceeds with the normal execution of the protocol, and then returns the calculated result to the adversary A.
  • C o r r u p t ( V i i ) : This query models an attack that steals a vehicle’s OBU attack. Upon execution of this query, all the information stored in the OBU of vehicle U i i will be extracted by A.
  • R e v e a l ( U i i ) : This query models a known key attack. If a session key has been obtained by U i i , then the session key of instance U i i is returned to A. Otherwise, ⊥ is returned.
  • T e s t ( U i i ) ) : This query models the ability of the adversary A to distinguishing a real session key from a random key. If the session key of participant U i i has not been defined, ⊥ will be returned. Otherwise, if b = 1 , then the session key of instance U i i will be returned; if b = 0 , a random key of the same size will be returned.

3.1.2. Notation

An instance U i i is said to have been opened if A has issued a query R e v e a l ( U i i ) to it; otherwise, it is said to be unopened [18]. After receiving the last expected protocol message, U i i enters an accept mode and it is said to be accepted.

3.1.3. Partnering

To illustrate the process of partnering, the concept of a session identification code s i d is introduced. Given U 1 , U 2 O B U , instances U 1 i and U 2 i are called partners only when the following conditions hold: (1) U 1 i and U 2 i have entered accept mode. (2) The same s i d is shared between U 1 i and U 2 i . (3) U 1 i and U 2 i are partners of each other.

3.1.4. Freshness

To avoid cases in which the security of the scheme is trivially broken by the adversary, the concept of freshness is introduced. The objective is to only permit the adversary to issue T e s t queries to fresh oracle instances. Specifically, an instance U i i is called fresh when it enters accept mode and both U i i and its partner are unopened.

3.1.5. Semantic Security

Suppose that an adversary A executes a protocol P. A can ask a T e s t query to a fresh instance after being given access to E x e c u t e , S e n d , R e v e a l , C o r r u p t and T e s t queries, and outputs a guess bit b . If b = b where b is chosen in the T e s t query, A is said to win this experiment defining semantic security. Let S u c c represent the event in which A is successful. The advantage of A in breaking the semantic security of P is defined as follows
A d v P , D ( A ) = 2 P r [ S u c c ] 1 ,
where the password is selected from a dictionary D.

3.2. Elliptic Curve Discrete Logarithm Problem

Let G be an elliptic curve group defined by a generator P and a prime number p. Then, the two central mathematical problems in elliptic curve cryptography (ECC), namely, the discrete logarithm problem and the computational Diffie–Hellman assumption, can be defined as follows [19].
Definition 1.
Elliptic curve discrete logarithm (ECDL) problem. Let Q = a P , where Q , P G and a R Z p * . The objective of the elliptic curve discrete logarithm problem is to find a when given two points Q , P G .
Definition 2.
Elliptic curve computational Diffie–Hellman (ECCDH) assumption. Let G denote a representative group of order p and A denote an adversary. Consider the following experiment:
E x p e r i m e n t E x p G E C C D H ( G , P , p ) , Q 1 = r 1 P , Q 2 = r 2 P , r 1 , r 2 R Z p * , Q = A E C C D H ( Q 1 , Q 2 ) , i f Q = r 1 · r 2 · P , b = 1 , e l s e b = 0 , r e t u r n b .
The advantage of A in solving the ECCDH problem is defined as follows:
A d v G E C C D H ( A ) = Pr [ E x p G E C C D H ( G , P , p ) = 1 ] ,
A d v G E C C D H ( t ) = max A d v G E C C D H ( A ) ,
where the maximum is taken over all A with time-complexity at most t.

4. Review of the Chuang–Lee’s Scheme

In this section, we review Chuang and Lee’s trust-extended authentication scheme (TEAM) [15]. In their scheme, the vehicles are classified into three types, namely, law executors (LEs), mistrusted vehicles (MVs) and trusted vehicles (TVs), as shown in Figure 1. An LE, such as a police vehicle, is treated as permanently trusted and plays a role similar to that of a mobile authentication server (AS). When a normal vehicle is authenticated successfully, it is deemed to be trusted, otherwise, it is treated as mistrusted. A TV will turn into an MV once the lifetime of its key has expired. To ensure the security of communication, an OBU can obtain service from providers only if it has been authenticated successfully.
TEAM consists of eight procedures: registration, login, password change, general authentication, trusted-extended authentication, secure communication, key update and key revocation. Before each vehicle joins the network, its OBU performs the registration procedure to register itself with the AS. The login procedure is performed when a vehicle intends to access service from the vehicular ad hoc network. After successfully completing the login procedure, the OBU checks its authentication state. If the vehicle is an MV, it needs to perform either the general authentication procedure or the trust-extended authentication procedure; it will then turn into a TV once it has been authenticated successfully and has obtained an authenticated key. Then, it can play the role of an LE to authenticate other mistrusted OBUs via the trust-extended authentication procedure. Two trusted vehicles can perform the secure communication procedure to interact with each other. A trusted vehicle can choose to perform the key update procedure with an LE when its key is approaching expiration. Otherwise, the state of the TV changes to mistrusted when the lifetime of the key has expired.
The OBU of each vehicle is equipped with secure hardware, including a tamper-proof device (TPD) and an event data recorder (EDR). The TPD hinders an attacker from obtaining information from the OBU. Recording important data, such as public parameters, preloaded secret keys, times, and locations, is the responsibility of the EDR. In addition, each vehicle is synchronized via a GPS device. Finally, each vehicle periodically broadcasts a hello message with its authentication state (mistrusted or trusted). The related notations are briefly defined in Table 1. The details of the TEAM protocol follow.

4.1. Registration

LE Registration: In this procedure, an LE registers itself with the AS via the manufacturer or a secure channel. The secure key set { P S K i , i = 1 , , n } is sent to the LE by the AS. Only this secure key set is required to be stored in the secure hardware of the LE. No other user information needs to be stored. Furthermore, the lifetime of each P S K i is set to be short for robust security. When the lifetime of each trusted vehicle’s key expires, this vehicle is required to perform the key update procedure with the LE. The procedure for the key set generation is depicted in Figure 2. It can be seen that the old P S K (e.g., P S K 1 ) cannot be used to derive the new P S K (e.g., P S K 2 ) because a one-way hash function is introduced in the key generation procedure.
Normal Vehicle Registration: All vehicles except LEs need to perform this procedure when they are delivered to market. This registration procedure is performed only once by each vehicle.
Step1.
U i A S : A user U i chooses his password P W i and sends its public identity I D i and P W i to the AS via the manufacturer or a secure channel.
Step2.
The AS evaluates the following parameters for U i after it receives I D i and P W i : A i = h I D i x , B i = h 2 I D i x = h A i , C i = h P W i B i , and D i = P S K A i .
Step3.
A S U i : The parameters (i.e., I D i , B i , C i , D i , h ) are stored in the OBU’s secure hardware by the AS via a secure channel.

4.2. Login

The login procedure is performed when a user U i intends to access the service from vehicle sensor networks. The login procedure is described as follows:
Step1.
U i O B U i : I D i and P W i are input to O B U i by U i .
Step2.
First, O B U i verifies I D i . Then, it checks whether B i = h ( P W i ) C i holds. If so, O B U i launches the general authentication procedure or the trust-extended authentication procedure. Otherwise, the login request will be rejected.

4.3. Password Change

When a user U i wants to update his password, he invokes the optional password change procedure. The steps of this procedure are described below:
Step1.
I D i and P W i are input to its O B U i by U i .
Step2.
First, O B U i verifies I D i checks whether B i = h ( P W i ) C i . If so, U i will be requested to input his new password P W i * . O B U i computes C i * = C i h ( P W i ) h ( P W i * ) and replaces C i with C i * . Otherwise, the request will be rejected.

4.4. General Authentication

The general authentication procedure is performed between O B U i and L E j after U i has completed the login procedure. The steps of this procedure are described below:
Step1.
O B U i chooses a random number r i and computes its alias A I D i = h ( r i ) I D i . Then, it produces the request messages M 1 = h ( B i ) r i and M 2 = h ( r i A I D i D i ) .
Step2.
O B U i L E j : The authentication messages (i.e., A I D i , M 1 , M 2 and D i ) are sent from O B U i to L E j .
Step3.
Upon receiving the authentication request message (i.e., A I D i , M 1 , M 2 , D i ), L E j uses P S K to retrieve A i = D i P S K and r i = M 1 h 2 ( A i ) and then checks whether M 2 = h ( r i A I D i D i ) holds. The authentication request will be rejected if this equation does not hold. Otherwise, L E j computes I D i = A I D i h ( r i ) and produces a random number r j with which to calculate A I D j = r j I D j and S K i j = h ( r i r j ) . Finally, L E j calculates the response messages M 3 = r j h 2 ( r i ) , M 4 = A i h ( I D i ) and M 5 = h ( M 4 r j A I D j ) .
Step4.
L E j O B U i : L E j returns its response messages (i.e., A I D j , M 3 , M 4 , M 5 ) to O B U i .
Step5.
O B U i computes h 2 ( r i ) to retrieve r j = M 3 h 2 ( r i ) and checks whether M 5 = h ( M 4 r j A I D j ) holds. O B U i terminates the process if this equation does not hold. Otherwise, O B U i computes A i = M 4 h ( I D i ) , calculates S K i j = h ( r i r j ) , and stores A i in its secure hardware.
Step6.
O B U i L E j : The message S K i j h ( r j ) is sent to L E j by O B U i .
Step7.
L E j uses S K i j to retrieve h ( r j ) . Then, it checks whether the retrieved hash value is equal to the pre-computed hash value using the chosen r j . In this way, a replay attack from an illegal OBU is avoided.
As this time, the state of O B U i changes to trusted since O B U i has been authenticated successfully and has obtained the parameter P S K = A i D i . Now, not only LE but also O B U i can authenticate other mistrusted OBUs.

4.5. Trust-Extended Authentication

A mistrusted OBU becomes trusted once it has been authenticated successfully and has obtained P S K . Then, it can play the role of an LE to authenticate other mistrusted OBUs. The corresponding trust-extended authentication procedure is the same as the general authentication procedure.

4.6. Secure Communication

The secure communication procedure is performed between two trusted vehicles O B U i and O B U j when they intend to interact with each other.
Step1.
After completing the login procedure, O B U i generates a random number r i and computes the messages A I D i = I D i r i , M 1 = P S K r i and M 2 = P S K h ( A I D i r i ) , where P S K was obtained in a previous authentication procedure.
Step2.
O B U i O B U j : A secure communication request (i.e., A I D i , M 1 , M 2 ) is sent to O B U j by O B U i .
Step3.
Upon receiving (i.e., A I D i , M 1 , M 2 ), O B U j uses P S K to retrieve r i from M 1 and then computes P S K h ( A I D i r i ) and checks whether it is equal to M 2 . The request will be rejected if this equality does not hold. Otherwise, O B U j randomly chooses r j and computes A I D j = I D j r j , M 3 = P S K r j , M 4 = P S K h ( A I D j r j h ( r i ) ) and a session key S K i j = h ( r i r j P S K ) .
Step4.
O B U j O B U i : O B U j returns the response messages (i.e., A I D j , M 3 , M 4 ) o O B U i .
Step5.
After receiving the messages { A I D j , M 3 , M 4 } , O B U i verifies whether O B U j is trusted: O B U i uses P S K to retrieve r j from M 3 and checks whether M 4 = h ( A I D j r j h ( r i ) ) holds. If so, O B U i computes a session key S K i j = h ( r i r j P S K ) and a reply message M 5 = S K i j h ( r j ) . Otherwise, the process is terminated.
Step6.
O B U i O B U j : O B U i sends M 5 to O B U j .
Step7.
After receiving the message M 5 , O B U j computes S K i j h ( r j ) and then checks whether it is equal to M 5 . If this quality holds, then the two trusted vehicles can communicate securely using S K i j . Otherwise, O B U j terminates the process.

4.7. Key Revocation

Key revocation will be triggered when the lifetime of a key expires. The state of a mistrusted vehicle changes to trusted when the mistrusted vehicle is authenticated successfully and obtains P S K via performing either the general authentication procedure or the trust-extended authentication procedure. Then, a timer is instantiated by the secure hardware and begins to count down. The state of the vehicle becomes mistrusted when the lifetime of the key expires. When key expiration is approaching, the system requests that the trusted vehicle performs the key update procedure.

4.8. Key Update

The key update procedure will be invoked by O B U i when the key lifetime of the TV is approaching expiration. The steps of this procedure are described as follows.
Step1.
O B U i randomly chooses r i to compute the messages M 1 = P S K o l d r i , M 2 = P S K o l d M S G K U , and M 3 = h ( r i M S U K U ) .
Step2.
O B U i L E j : A key update request (i.e., M 1 , M 2 , M 3 ) is sent to L E j by O B U i .
Step3.
L E j retrieves r i and M S G K U using the current P S K (i.e., P S K o l d ). The key update request will be rejected if h ( r i M S G K U ) does not match M 3 . Otherwise, L E j chooses a random number r j and computes M 4 = r j h ( r i ) , M 5 = P S K n e w r j , and M 6 = h ( r j P S K n e w ) , where P S K is produced via the hash–chain method. Therefore, the new P S K cannot be inferred by other OBUs using the current P S K . Finally, L E j computes S K i j = h ( r i r j P S K n e w ) .
Step4.
L E j O B U i : L E j returns the reply messages (i.e., M 4 , M 5 , and M 6 ) to O B U i .
Step5.
Upon receiving the reply messages, O B U i computes h ( r i ) to retrieve r j = M 4 h ( r i ) , and obtains P S K n e w = M 5 r j . Next, O B U i checks whether M 6 = h ( r j P S K n e w ) and P S K o l d = h ( P S K n e w ) . If this condition holds, O B U i renews the P S K and computes S K i j = h ( r i r j P S K n e w ) . Otherwise, O B U i terminates the process.
Step6.
O B U i L E j : O B U i sends the message S K i j h ( r j ) to L E j .
Step7.
L E j retrieves h ( r j ) using S K i j . Then, it checks whether the retrieved hash value is equal to the pre-computed hash value using the chosen r j . In this way, a replay attack from an illegal OBU is avoided. Now, this session key can be used to communicate securely between two trusted vehicles.

5. Improved Scheme

A concrete description of our enhanced privacy-preserving authentication scheme is presented in this section. In our scheme, the vehicles are also classified into three types: law executors (LEs), mistrusted vehicles (MVs) and trusted vehicles (TVs) as displayed in Figure 1. The LEs are equipped with TPD, but the normal vehicles such as TV and MV are not equipped with TPD. Our improved scheme consists of nine procedures: initialization, registration, login, password change, general authentication, trust-extended authentication, secure communication, key update and revocation. The notations used in this section are also briefly defined in Table 1.

5.1. Initialization

The initialization procedure is performed by the AS when it sets up the system parameters:
Step1.
Let G be an elliptic curve group defined by a generator P and a prime number p. The AS randomly selects x Z p * as its secret key.
Step2.
The AS computes the secure key set { P S K i , i = 1 , , n } using the hash–chain method as shown in Figure 2, e.g., h 2 ( x ) = h ( h ( x ) ) .

5.2. Registration

LE Registration: In this procedure, an LE registers itself with the AS via the manufacturer or a secure channel. The secure key set { P S K i , i = 1 , , n } and the public parameters { G , p , P } are sent to the LE by the AS. Only the secure key set and the public parameters are required to be stored in the secure hardware of the LE. No other user information needs to be stored. Similarly, the lifetime of each P S K i is set to be short for robust security. When the lifetime of each trusted vehicle’s key expires, this vehicle is required to perform the key update procedure with an LE.
Normal Vehicle Registration: All vehicles except LEs need to perform this procedure when they are delivered to market. This registration procedure is performed only once by each vehicle. The steps of the normal vehicle registration procedure are described in Figure 3.
Step1.
U i A S : A user U i chooses his password P W i and sends its public identity I D i and P W i to the AS via the manufacturer or a secure channel.
Step2.
The AS chooses a random number y i with which to evaluate the following parameters for U i after it receives I D i and P W i : A i = h I D i x , B i = h P W i A i , C i = h P S K y i A i , and D i = h ( I D i P W i A i ) .
Step3.
A S U i : The parameters (i.e., B i , C i , D i , y i , h ,G,p,P) are stored in the OBU’s secure hardware by the AS via a secure channel.
Step4.
U i chooses a number x i as his private key and computes P p u b i = x i P as his public key, and then computes Z i = x i h ( P W i ) and stores ( P p u b i , Z i ) in its OBU secure hardware.

5.3. Login

The login procedure is performed when a user U i intends to access service from the vehicle sensor network. The login procedure is described as follows:
Step1.
U i O B U i : I D i and P W i are input to O B U i by U i .
Step2.
First, O B U i retrieves A i = h ( P W i ) B i . Then, it checks whether D i = h ( I D i P W i A i ) holds. If so, O B U i launches the general authentication procedure or the trust-extended authentication procedure. Otherwise, the login request will be rejected.

5.4. Password Change

When a user U i wants to update his password, the optional password change procedure will be invoked. The steps of this procedure are described as follows:
Step1.
I D i and P W i are input to O B U i by U i .
Step2.
First, O B U i retrieves A i = h ( P W i ) B i . Then, it checks whether D i = h ( I D i P W i A i ) holds. If so, U i will be requested to input his new password P W i * . O B U i computes B i * = B i h ( P W i ) h ( P W i * ) and D i * = h ( I D i P W i * A i ) and replaces B i and D i with B i * and D i * . Otherwise, the request will be rejected.

5.5. General Authentication

The general authentication procedure is performed between O B U i and L E j after U i has completed the login procedure. The general authentication procedure is shown in Figure 4 and the steps are described as follows.
Step1.
O B U i chooses a random number r i and computes its alias A I D i = h ( r i ) I D i . Then, it produces the request messages M 1 = h ( A i ) r i and M 2 = h ( r i A I D i C i y i ) , where A i is obtained from the login procedure.
Step2.
O B U i L E j : The authentication messages (i.e., A I D i , M 1 , M 2 , C i , and y i ) are sent from O B U i to L E j .
Step3.
Upon receiving the authentication request messages (i.e., A I D i , M 1 , M 2 , C i , and y i ), L E j uses P S K to retrieve A i = C i h ( P S K y i ) and r i = M 1 h ( A i ) and then checks whether M 2 = h ( r i A I D i C i y i ) holds. The authentication request will be rejected if it does not. Otherwise, L E j produces a random number r j to calculate A I D j = I D j h ( r j ) and S K i j = h ( r i r j ) . Finally, L E j calculates the response messages M 3 = r j h 2 ( r i ) , M 4 = P S K r j , and M 5 = h ( A I D j S K i j r j P S K ) .
Step4.
L E j O B U i : L E j return response messages (i.e., A I D j , M 3 , M 4 , and M 5 ) to O B U i .
Step5.
O B U i computes h 2 ( r i ) to retrieve r j = M 3 h 2 ( r i ) , P S K = M 4 r j , and S K i j = h ( r i r j ) and checks whether M 5 = h ( A I D j S K i j r j P S K ) holds. O B U i terminates the process if it does not. Otherwise, O B U i calculates the reply message M 6 = S K i j h ( r j ) ; computes C i n e w = h ( P S K r i ) A i and E i = h ( P W i ) P S K ; replaces C i and y i with C i n e w and r i , respectively, and stores E i in its secure hardware.
Step6.
O B U i L E j : The message M 6 is sent to to L E j by O B U i .
Step7.
L E j uses S K i j to retrieve h ( r j ) . Then, it checks whether the retrieved hash value is equal to the pre-computed hash value using the chosen r j . In this way, a replay attack from an illegal OBU is avoided .
At this time, the state of O B U i changes to trusted since O B U i has been authenticated successfully and has obtained the parameter P S K . Now, not only L E but also O B U i can authenticate other mistrusted OBUs.

5.6. Trust-Extended Authentication

This procedure is the same as in the Chuang–Lee scheme.

5.7. Secure Communication

The secure communication procedure is performed between two trusted vehicles O B U i and O B U j when they intend to interact with each other. The secure communication procedure is shown in Figure 5 and the steps are described as follows.
Step1.
After completing the login procedure, O B U i retrieves P S K = E i h ( P W i ) , x i = Z i h ( P W i ) , then it generates a random number r i and computes the messages A I D i = I D i h ( r i P p u b j ) , T = r i P , u i = T + P S K · P , and M 1 = h ( T I D i A I D i ) , where E i was obtained from a previous authentication procedure.
Step2.
O B U i O B U j : A secure communication request (i.e., A I D i , u i , M 1 ) is sent to O B U j by O B U i .
Step3.
Upon receiving (i.e., A I D i , u i , M 1 ), O B U j uses P S K to retrieve T from u i and then computes I D i = A I D i h ( x j T ) , and checks whether M 1 is equal to h ( T I D i A I D i ) . The request will be rejected if this equality does not holds. Otherwise, O B U j randomly chooses r j and computes
A I D j = I D j h ( r j P p u b i ) , R = r j P , u j = R + P S K · P , s = r j P p u b i + x j T , k = h ( T R P p u b i P p u b j s ) , M 2 = h ( I D j k ) .
Step4.
O B U j O B U i : O B U j returns the response messages (i.e., A I D j , u j , M 2 ) to O B U i .
Step5.
After receiving the messages { A I D j , u j , M 2 } , O B U i verifies whether O B U j is trusted: O B U i computes R = u j P S K · P , I D j = A I D j h ( x i R ) , s = r i P p u b j + x i R and k = h ( T R P p u b i P p u b j s ) , and then checks whether M 2 = h ( I D j k ) holds. If so, O B U i computes a reply message M 3 = h ( u j k ) . Otherwise, the process is terminated.
Step6.
O B U i O B U j : O B U i sends M 3 to O B U j .
Step7.
After receiving the message { M 3 } , O B U j checks whether M 3 = h ( u j k ) holds. if so, the two trusted vehicles can communicate securely using k. Otherwise, O B U j terminates the process.

5.8. Key Revocation

This procedure is the same as in the Chuang–Lee scheme.

5.9. Key Update

This procedure is the same as in the Chuang–Lee scheme.

6. Analysis

In this section, we first validate the correctness of the critical general authentication procedure and secure communication procedure using the BAN logic, and we then prove the security of our improved scheme. Finally, we evaluate the performance of our scheme against that of the existing related schemes.

6.1. Correctness

The BAN logic is a useful way to validate the correctness of security protocols, especially for the authentication protocols [20]. Some relevant notations are listed in Table 2. The verification procedure consists of the following steps.

6.1.1. The Correctness of the General Authentication Procedure

Idealization

First, we use formal logical language to idealize the general authentication procedure in our improved scheme in accordance with the rules of the BAN logic as follows:
(1).
O B U i L E j : { M 1 = h ( r i A I D i C i y i ) , A I D i , { r i } A i , { A i } P S K } ,
(2).
L E j O B U i : { M 2 = h ( A I D j S K i j r j P S K ) , A I D j , { r j } r i , { P S K } r j } ,
(3).
O B U i L E j : { M 3 = S K i j h ( r j ) .

Goal

There are two roles in the general authentication procedure: O B U i and L E j . Since O B U i needs to obtain the authorized parameter P S K from the L E j , it must believe P S K . Moreover, O B U i and L E j must believe each other and each other’s aliases, and they must believe the session key computed in the general authentication procedure. Thus, there are five goals of the general authentication procedure in our improved scheme as follows:
G1.
O B U i L E j P S K : O B U i believes P S K .
G2.
O B U i L E j A I D j : O B U i believes L E j and his alias A I D j .
G3.
L E j O B U i A I D i : L E j believes O B U i and his alias A I D i .
G4.
O B U i O B U i S K i j L E j : O B U i believes the share key between himself and L E j .
G5.
L E j L E j S K i j O B U i : L E j believes the share key between himself and O B U i .

Assumptions

With the goals set, the assumptions also need to be stated as follows:
A1.
O B U i A I D i : O B U i possesses an alias A I D i .
A2.
L E j A I D j : O B U j possesses an alias A I D j .
A3.
O B U i ( r i , r j ) : O B U i believes the freshness of r i and r j .
A4.
L E j ( r i , r j , y i ) : L E j believes the freshness of r i , r j and y i .
A5.
L E j L E j P S K O B U i : L E j believes the share key P S K between himself and O B U i .
A6.
O B U i O B U i r i L E j : O B U i believes the share key r i between himself and L E j .
A7.
L E j L E j r j O B U i : L E j believes the share key r j between himself and O B U i .

Verification

In this subsection, we will verify the correctness of our proposed general authentication procedure using the BAN logic. The detailed steps of the proof are as follows:
O B U i computes A I D i and { r i } A i :
V1.
L E j { r i } A i , A I D i , { A i } P S K , M 2 , y i , L E j L E j P S K O B U i O B U j O B U i M 2 ,
V2.
L E j ( r i , y i ) , L E j O B U i M 2 L E i O B U i M 2 ,
V3.
L E j O B U i M 2 L E j O B U i A I D i ,
L E j computes L E j S K i j O B U i , { r j } r i , { P S K } r j ,
V4.
O B U i A I D j , { r j } r i , { P S K } r j , M 5 , O B U i O B U i r i L E j O B U i L E j M 5 ,
V5.
O B U i ( r i , r j ) , O B U i L E j M 5 O B U i L E j M 5 ,
V6.
O B U i L E j M 5 O B U i L E j r j ,
V7.
O B U i ( r i , r j ) O B U i ( S K i j ) ,
V8.
O B U i ( S K i j ) , O B U i L E j r j O B U i O B U i S K i j L E j ,
V9.
O B U i L E j M 5 O B U i L E j A I D j ,
V10.
O B U i L E j M 5 O B U i L E j P S K ,
O B U i computes M 6 ,
V11.
L E j S K i j , M 6 , L E j L E j r j O B U i L E j O B U i M 6 ,
V12.
L E j ( r j ) , L E j O B U i M 6 L E j O B U i M 6 ,
V13.
L E j O B U i M 6 L E j O B U i r i ,
V14.
L E j ( r i , r j ) O B U j S K i j ,
V15.
L E j ( S K i j ) , L E j O B U i r i L E j L E j S K i j O B U i .
In formula V 3 and formulas V 9 and V 10 , L E j believes that O B U i has sent M 2 and O B U i believes that L E j has sent M 5 . Because L E j has verified the correctness of message M 2 and O B U i has verified the correctness of message M 5 , O B U i and L E j each believe the other party and its alias, and O B U i believes the P S K obtained from L E j . In formula V 8 , because O B U i is able to calculate r j and believes this value which is necessary to compute S K i j , O B U i believes the freshness of S K i j , and O B U i believes the session key S K i j that it computes. Similarly, in formula V 15 , L E j believes the value r i and the freshness of S K i j , thus O B U i believes the session key S K i j that it computes. According to formulas V 3 , V 8 , V 9 , V 10 and V 15 , we can infer that our improved general authentication procedure achieves our goals.

6.1.2. The Correctness of the Secure Communication Procedure

Idealization

First, we use formal logical language to idealize the secure communication procedure in our improved scheme in accordance with the rules of the BAN logic as follows:
(1).
O B U i O B U j : { M 1 = h ( r i P I D i { I D i } P p u b j ) , { I D i } P p u b j , { r i P } P S K } ,
(2).
O B U j O B U i : { M 2 = h ( I D j k ) , { I D j } P p u b i , { r j P } P S K } ,
(3).
O B U i O B U j : { M 3 = h ( { r j P } P S K k ) } .

Goal

There are two roles in the secure communication procedure: O B U i and O B U j , which are the on-board units of the two communication vehicles. Since O B U i and O B U j need to generate a common session key for their communication, they must believe each other and each other’s identities, and they must believe the session key computed in the secure communication procedure. Thus, there are four goals of the secure communication procedure in our improved scheme as follows:
G1.
O B U i O B U j I D j : O B U i believes O B U j and its identity I D j .
G2.
O B U j O B U i I D i : O B U j believes O B U i and its identity I D i .
G3.
O B U i O B U i k O B U j : O B U i believes the shared key between itself and O B U j .
G4.
O B U j O B U j k O B U i : O B U j believes the shared key between itself and O B U i .

Assumptions

With the goals set, the assumptions also need to be stated as follows:
A1.
O B U i I D i : O B U i owns its identity I D i .
A2.
O B U j I D j : O B U j owns its identity I D j .
A3.
O B U i x i : O B U i holds own private key x i .
A4.
O B U j x j : O B U j holds own private key x j .
A5.
O B U i P p u b i O B U i : O B U i believes own public key P p u b i .
A6.
O B U j P p u b j O B U j : O B U j believes own public key P p u b j .
A7.
O B U i ( P p u b i , P p u b j ) : O B U i holds own public key P p u b i and O B U j ’s public key P p u b j .
A8.
O B U j ( P p u b i , P p u b j ) : O B U j holds own public key P p u b j and O B U i ’s public key P p u b i .
A9.
O B U i ( r i , r j ) : O B U i believes the freshness of r i and r j .
A10.
O B U j ( r i , r j ) : O B U j believes the freshness of r i and r j .
A11.
O B U i O B U i P S K O B U j : O B U i believes the share key P S K between himself and O B U j .
A12.
O B U j O B U j P S K O B U i : O B U j believes the share key P S K between himself and O B U i .

Verification

In this subsection, we will verify the correctness of our proposed secure communication procedure using the BAN logic. The detailed steps of the proof are as follows:
O B U i computes { I D i } P p u b j and { r i P } P S K
V1.
O B U j P p u b j O B U j , O B U j { I D i } P p u b j O B U j I D i ,
V2.
O B U j { r i P } P S K , I D i , M 1 , O B U j O B U j P S K O B U i O B U j O B U i M 1 ,
V3.
O B U j ( r i ) , O B U j O B U i M 1 O B U j O B U i M 1 ,
V4.
O B U j O B U i M 1 O B U j O B U i I D i .
O B U j computes O B U j k O B U i , { r j P } P S K
V5.
O B U i P p u b i O B U i , O B U j { I D j } P p u b i O B U i I D j ,
V6.
O B U i { r j P } P S K , r i , x i , P p u b i , P p u b j , M 2 , O B U i O B U i P S K O B U j O B U i O B U j M 2 ,
V7.
O B U i ( r i , r j ) , O B U i O B U j M 2 O B U i O B U j M 2 ,
V8.
O B U i O B U j M 2 O B U i O B U j I D j ,
V9.
O B U i O B U j M 2 O B U i O B U j s ,
V10.
O B U i ( r i , r j ) O B U i ( k ) ,
V11.
O B U i ( k ) , O B U i O B U j s O B U i O B U i k O B U j .
O B U i computes M 3
V12.
O B U j { r i P } P S K , k , M 3 , O B U j O B U j P S K O B U i O B U j O B U i M 3 ,
V13.
O B U j ( r i , r j ) , O B U j O B U i M 3 O B U j O B U i M 3 ,
V14.
O B U j O B U i M 3 O B U j O B U i s ,
V15.
O B U j ( r i , r j ) O B U j ( k ) ,
V16.
O B U j ( k ) , O B U j O B U i s O B U j O B U j k O B U i .
In formula V 4 and formula V 8 , O B U j believes that O B U i has sent M 1 and O B U i believes that O B U j has sent M 2 . Because O B U j has verified the correctness of message M 1 and O B U i has verified the correctness of message M 2 , O B U i and O B U j each believe the other’s identity and that the other party is a trusted vehicle. In formula V 11 , because O B U i can use its private key to obtain I D j and calculate k, O B U i can verify M 2 by means of I D j and k; thus, O B U i believes the session key k that it computes. Similarly, in formula V 16 , O B U j can compute the session key k to verify M 3 , so O B U j believes the session key k that it computes. According to formulas V 4 , V 8 , V 14 and V 16 , we can infer that our improved secure communication procedure achieves our goals.

6.2. Security Analysis

In this section, the security proof of the critical secure communication procedure and general authentication procedure is presented. We show that the proposed improved protocol is secure through a formal security analysis in the random oracle model as well as an informal security analysis.

6.2.1. The Formal Security Analysis

Theorem 1.
Let G A P denote the general authentication procedure presented in Figure 4. Let | H a s h | and | D | denote the range space of the hash function and the size of the password dictionary D, respectively. Finally, let A represent an adversary within a polynomial time t against the semantic security of G A P by issuing q s e n d Send queries, q e x e Execute queries and q h hash queries. Then, we have
A d v G A P , D ( A ) q h 2 | H a s h | + 2 q s e n d | D | .
Proof of Theorem 1.
To complete the proof, four experiments are constructed, where the first one simulates a real attack. For every experiment E x p n , we use an event S u c c n to denote the event in which the adversary successfully guesses the bit b from the T e s t query. ☐
Experiment  E x p 0 .
This experiment simulates an actual attack. According to definition, we have
A d v G A P , D ( A ) = 2 P r [ S u c c 0 ] 1 .
Experiment  E x p 1 .
In this experiment, the oracles E x e c u t e , S e n d , C o r r u p t , R e v e a l , T e s t as in an actual attack are simulated. It can be seen that one cannot distinguish this experiment from the actual experiment. Thus,
P r [ S u c c 1 ] = P r [ S u c c 0 ] .
Experiment  E x p 2 .
All oracles considered in experiment Exp 1 are also simulated in this experiment; however, all executions are halted where a collision occurs when simulating the S e n d and the h oracle. A issues S e n d to try to deceive the other participants into accepting a modified message. Simultaneously, it can query the h oracle to verify whether a hash collision exists. Since the messages transmitted in the network are all associated with a participant’s identity, a temporary secret random number and a long-lived key, and the authentication procedure only uses an XOR operation and a hash function, there is no other collision except hash collision. The probability of collision in the h oracle is at most q h 2 / 2 | H a s h | by the birthday paradox. Hence,
| P r [ S ucc 1 ] P r [ S ucc 2 ] | q h 2 2 | H a s h | .
Experiment  E x p 3 .
All oracles considered in experiment Exp 2 are simulated in this experiment, in addition to stopping the stimulation of a C o r r u p t query to an OBU. Note that the information B i , C i , D i , y i , Z i and P p u b i stored in the OBU can be extracted by A when the C o r r u p t ( U i ) query is issued. However, this information is useless to A for calculating the session key since it would also need the secret A i , and it is difficult to derive A i from B i without also obtaining the user’s correct password P W i via the password attack. Hence, we obtain
| P r [ S ucc 2 ] P r [ S ucc 3 ] | q s e n d | D | .
In addition, we know that the adversary A can only win the game by guessing the bit b when querying the T e s t oracle because the adversary has no advantage. Therefore,
P r [ S ucc 3 ] = 1 2 .
From Equations (2) to (5), we have
| P r [ S ucc 0 ] 1 2 | = | P r [ S ucc 0 ] P r [ S ucc 3 ] | | P r [ S ucc 0 ] P r [ S ucc 1 ] | + | P r [ S ucc 1 ] P r [ S ucc 2 ] | + | P r [ S ucc 2 ] P r [ S ucc 3 ] | q h 2 2 | H a s h | + q s e n d | D | .
Therefore, from Equation (1), we get
A d v G A P , D ( A ) q h 2 | H a s h | + 2 q s e n d | D | .
Theorem 2.
Let G represent a group with a prime order p, and S C P denote the secure communication procedure presented in Figure 5. Let ℓ be the size of the identity space, | H a s h | and | D | represent the range space of the hash function and the size of the password dictionary D. Finally, let A represent an adversary attacking the semantic security of the secure communication protocol with time-complexity at most t by issuing q s e n d Send queries, q e x e Execute queries and q h Hash queries. Then, we have:
A d v S C P , D ( A ) 2 ( q s e n d + q e x e ) + q h 2 | H a s h | + ( q s e n d + q e x e ) 2 p + 2 q s e n d | D | + 2 q h A d v G E C C D H ( t + ( q s e n d + q e x e ) t p ) ,
where t p denotes the time required to produce a point.
Proof of Theorem 2.
To complete the proof, six experiments are constructed, where the first one simulates a real attack. For every experiment E x p n , we use S u c c n to denote the event in which the adversary successfully guesses the bit b from the T e s t query. ☐
Experiment  E x p 0 .
This experiment simulates an actual attack, which begins with the random selection of a secure key P S K . According to definition, we have
A d v S C P , D ( A ) = 2 P r [ S u c c 0 ] 1 .
Experiment  E x p 1 .
In this experiment, the oracles E x e c u t e , S e n d , C o r r u p t , R e v e a l , and T e s t , as in the actual attack with a chosen random secure key P S K are simulated. It can be seen that one cannot distinguish this experiment from the actual experiment. Thus,
P r [ S u c c 1 ] = P r [ S u c c 0 ] .
Experiment  E x p 2 .
All oracles considered in experiment E x p 1 are also simulated in this experiment. In addition, we stop simulating the adversary to execute guessing attacks on the real identity of a participant. In this case, we have
| P r [ S u c c 1 ] P r [ S u c c 2 ] | q s e n d + q e x e .
Proof. 
Each participant’s real identity is always converted into an alias using a random number (i.e., A I D i = I D i H ( r i P p u b j ) ). Therefore, the adversary cannot determine the participant’s real identity because every alias is different and there is nothing that can be used to verify the real identity. ☐
Experiment  E x p 3 .
All oracles considered in experiment Exp 2 are also simulated in this experiment; however, all executions are halted where a collision occurs among ( A I D i , u i , M 1 ) , ( A I D j , u j , M 2 ) , and ( M 3 ) . The probability of colliding in the h oracle is at most q h 2 / 2 | H a s h | by the birthday paradox. Similarly, the probability of colliding in the transcript is at most ( q s e n d + q e x e ) 2 / 2 p , Consequently,
| P r [ S uc c 2 ] P r [ S uc c 3 ] | q h 2 2 | H a s h | + ( q s e n d + q e x e ) 2 2 p .
Experiment  E x p 4 .
All oracles considered in as experiment Exp 3 are simulated in this experiment, in addition to stopping the stimulation of a C o r r u p t query to an OBU. Note that the information B i , C i , D i , y i , Z i , P p u b i , and E i stored in the OBU can be extracted by A when the C o r r u p t ( U i ) query is issued. However, this information is useless to A for calculating the session key since it would require the secure key P S K , a private key x i and a temporary secret random number, and it is difficult to derive P S K and x i from E i and Z i without obtaining the user’s correct password P W i via the password attack. Hence, we obtain
| P r [ S uc c 3 ] P r [ S uc c 4 ] | q s e n d | D | .
Experiment  E x p 5 .
In this experiment, we use the private oracle h in place of the oracle h for computing k as shown in Table 3, such that the session key is totally independent of h. More precisely, one obtains k = h ( T R P p u b i P p u b j ) in E x e c u t e queries. Therefore, the experiments E x p 4 and E x p 5 are indistinguishable except for the occurrence of the following event A s k H 6 : A issues queries to h on T R P p u b i P p u b j s , i.e., the value T R P p u b i P p u b j E C C D H ( T , P p u b j ) + E C C D H ( R , P p u b i ) . In addition, regardless of the b value that is chosen to be used in a T e s t query, the response is independent for all sessions since it is a random number. Therefore,
P r [ S uc c 5 ] = 1 2 .
Experiment  E x p 6 .
The execution of the random self-reducibility of the elliptic curve computational Diffie–Hellman assumption given an E C C D H instance ( A , B ) is simulated in this experiment. We randomly select α , β , γ , φ Z p * , and let T = α A P S K · P , R = β A P S K · P , P p u b i = γ B , and P p u b j = φ B . Note that A s k H 6 means that a query h on T | | R | | Y has been issued by A, where Y = E C C D H ( T , P p u b j ) + E C C D H ( R , P p u b i ) . Indeed, Pr [ A s k H 6 ] = Pr [ S uc c 6 ] . We have:
E C C D H ( T , P p u b j ) = α φ · E C C D H ( A , B ) φ P S K · B ,
E C C D H ( R , P p u b i ) = β γ · E C C D H ( A , B ) γ P S K · B .
Therefore,
E C C D H ( T , P p u b j ) + E C C D H ( R , P p u b i ) = ( α φ + β γ ) · E C C D H ( A , B ) ( φ + γ ) P S K · B .
If A knows the session key k constructed by ( α A , β A , P S K · P , γ B , φ B ) , it must have issued queries to h on T R P p u b i P p u b j s that was recorded in the list Λ h . Therefore, we can conclude that
Pr [ S u c c 6 ] q h A d v G E C C D H ( t + ( q s e n d + q e x e ) t p ) .
From Equations (7) to (12), we have
| P r [ S ucc 0 ] 1 2 | = | P r [ S ucc 0 ] P r [ S ucc 5 ] | | P r [ S ucc 0 ] P r [ S ucc 1 ] | + | P r [ S ucc 1 ] P r [ S ucc 2 ] | + | P r [ S ucc 2 ] P r [ S ucc 3 ] | + | P r [ S ucc 3 ] P r [ S ucc 4 ] | + | P r [ S ucc 4 ] P r [ S ucc 5 ] | q s e n d + q e x e + q h 2 2 | H a s h | + ( q s e n d + q e x e ) 2 2 p + q s e n d | D | + q h A d v G E C C D H ( t + ( q s e n d + q e x e ) t p ) .
Therefore, from Equation (6), we get
A d v S C P , D ( A ) 2 ( q s e n d + q e x e ) + q h 2 | H a s h | + ( q s e n d + q e x e ) 2 p + 2 q s e n d | D | + 2 q h A d v G E C C D H ( t + ( q s e n d + q e x e ) t p ) .

6.2.2. Informal Security Analysis

Confidentiality of Session Key

In our proposed scheme, when an authentication, secure communication or key update procedure is performed, a session key is generated using two random numbers chosen by the participants. Then, the generated key is used to ensure a secure communication. Moreover, the random numbers used to generate each session key are different. Therefore, it is difficult for an adversary A to successfully guess the session key or derived it from the communicated messages.

Anonymity

In our proposed scheme, to preserve users’ privacy, the original identity of every participant is converted into an alias via an XOR operation with a hash that takes a random number r i as an input (i.e., A I D i = I D i h ( r i ) , A I D i = I D i h ( r i P p u b j ) ). Therefore, an adversary A cannot determine a user’s original identity without the random number r i or the private key x j even if T has been obtained because of the hardness of the ECCDH problem in G.

Unlinkability

In our proposed scheme, the original identities of the participants are not transmitted over the unsecure network; instead, every participant’s identity is converted into an alias. Moreover, the authentication, secure communication and key update phases are independent of each other. In addition, after every authentication procedure performed by O B U i , the value C i updates itself. Therefore, for two or more authentication messages that are sent by the same user, the adversary A cannot determine whether they have the same origin. Thus, A cannot trace the location of a user by intercepting messages.

Resistance to Impersonation Attack

In the authentication procedure of our improved scheme, if an adversary wishes to impersonate O B U i , it must obtain both the A i and I D i of O B U i . Otherwise, it cannot compute a valid authentication request, since the original identity of O B U i is converted into an alias via an XOR operation with a random number r i chosen by itself and this random number r i is hidden by its A i . Moreover, the adversary can successfully impersonates O B U i only by correctly guessing the random number, which is difficult because the random number is reselected with each authentication. Furthermore, in the secure communication procedure, the original identity of O B U i is also converted into an alias with a random number r i ( A I D i = I D i h ( r i P p u b j ) ). The adversary cannot successfully impersonate the OBU since the random number cannot be guessed.

Resistance to Internal Attack

In our proposed scheme, an internal attack refers to the case in which the owner of a vehicle, who possesses the common secure key P S K , attempts to reveal the session key for a communication channel. Under our improved scheme, in the secure communication procedure, even if the adversary can intercept all exchanged messages, ( A I D i , u i ) of O B U i and ( A i D j , u j ) of O B U j and compute T and R using the secure key P S K , it cannot determine the user’s original identity or compute the session key k under the assumption of the hardness of E C C D H problem in G.

6.3. Performance Analysis

In our proposed scheme, the general authentication procedure is based only on an XOR operation and a hash function; thus, the computation cost is low. To demonstrate the performance of the proposed scheme, we compare the the critical secure communication procedure with the existing two-party secure communication schemes with session key agreement [6,11,12,15,16]. Next, we implement our scheme based on cryptographic libraries and present a concrete comparison of execution times. Then, we compare the security features of these schemes. Some notations are defined as follows for convenience:
  • Th : The execution time of a hash function operation.
  • Tbp : The execution time of a bilinear pairing operation.
  • Tmul : The execution time of an ECC-based scalar point multiplication operation.
  • Tadd : The execution time of an ECC-based scalar point addition operation.
The detailed comparison is presented in Table 4, where the middle and right columns list the complexity and total execution time, respectively, of each scheme. The transmission time is not considered in the comparison since it depends on the actual characteristics of the network, not the scheme. All operations listed in Table 4 were implemented using the OpenSSL library and the JPBC library, and the experiments were conducted on a Windows 7 PC (Samsung Electronics, Hwaseong, Korea) equipped with an Intel(R) Core(TM) i7-6500U CPU (Santa Clara, CA, USA).
As seen in Table 5 and Figure 6, the execution time of our scheme is less than those of some other schemes [11,12]. Although the execution times of Chuang–Lee’s scheme and Kumari’s scheme are less than that of our scheme, their schemes fail to resist internal attack because the participants’aliases depend only on a random number that is hidden by P S K as shown in Table 6. Therefore, a trusted vehicle can reveal a participant’s real identity because it holds P S K . Meanwhile, because Porambage’s scheme uses certificates for authentication, the unlinkability of messages cannot be preserved, and a user’s anonymity can be violated. Therefore, our proposed scheme is a preferable solution for secure communication in vehicle sensor networks compared with the existing similar schemes presented in [6,11,12,15,16].

7. Conclusions

With the emergence of intelligent transportation, the security of vehicle sensor networks is attracting attention from individuals and vehicle manufacturers, and privacy preservation in communication over vehicle sensor networks has become a critical issue. In this paper, we have demonstrated that Chuang and Lee’s TEAM scheme exists the linkability of messages in the authentication protocol; thus, a malicious vehicle can track a driver by intercepting transmitted message. Simultaneously, TEAM scheme can suffer the internal attack in the secure communication protocol; thus, a malicious trusted vehicle can compute the real identity of a user and the session key. To address this shortcoming, an improved authentication scheme based on elliptic curves for better performance and security has been constructed, in which the difficulty of deriving real identities arises from the need to solve an elliptic curve discrete logarithm problem. In this way, privacy preservation is achieved since the real identities of users are protected. The correctness of our proposed scheme has been proven using BAN logic, and a rigorous security proof has been provided based on the random oracle model. In future work, elliptic curves based authentication schemes involving three parities will be investigated.

Acknowledgments

Our work was jointly supported by the National Social Science Foundation of China (No. 14CTQ026), the National Natural Science Foundation of China (No. 61702067, No. 61472464, No. 61672004, No. 61672119), the Chongqing Research Program of Application Foundation and Advanced Technology (No. cstc2017jcyjAX0201), and the Natural Science Foundation of Shandong Province, China (No. ZR2015FL024).

Author Contributions

Yousheng Zhou and Xiaofeng Zhao conceived and designed of the study and wrote the paper; Yi Jiang and Fengjun Shang contributed to perform the experiments and prove, analyze the data; Shaojiang Deng and Xiaojun Wang contributed to analysis tools and helped perform the analysis with constructive discussions.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Wang, F.Y.; Zeng, D.; Yang, L. Smart Cars on Smart Roads: An IEEE Intelligent Transportation Systems Society Update. IEEE Pervasive Comput. 2006, 5, 68–69. [Google Scholar] [CrossRef]
  2. Bedi, P.; Jindal, V. Use of Big Data technology in Vehicular Ad-hoc Networks. In Proceedings of the 2014 International Conference on Advances in Computing, Communications and Informatics (ICACCI), New Delhi, India, 24–27 September 2014; pp. 1677–1683. [Google Scholar]
  3. Lee, U.; Zhou, B.; Gerla, M.; Magistretti, E.; Bellavista, P.; Corradi, A. Mobeyes: Smart mobs for urban monitoring with a vehicular sensor network. IEEE Wirel. Commun. 2006, 13, 52–57. [Google Scholar] [CrossRef]
  4. Hu, H.; Lu, R.; Huang, C.; Zhang, Z. TripSense: A Trust-Based Vehicular Platoon Crowdsensing Scheme with Privacy Preservation in VANETs. Sensors 2016, 16, 803. [Google Scholar] [CrossRef] [PubMed]
  5. Wang, L.; Liu, G.; Sun, L. A Secure and Privacy-Preserving Navigation Scheme Using Spatial Crowdsourcing in Fog-Based VANETs. Sensors 2017, 17, 668. [Google Scholar] [CrossRef] [PubMed]
  6. Porambage, P.; Schmitt, C.; Kumar, P.; Gurtov, A.; Ylianttila, M. Two-phase authentication protocol for wireless sensor networks in distributed IoT applications. In Proceedings of the 2014 IEEE Wireless Communications and Networking Conference (WCNC), Istanbul, Turkey, 6–9 April 2014; pp. 2728–2733. [Google Scholar]
  7. Raya, M.; Hubaux, J.P. Securing vehicular ad hoc networks. J. Comput. Secur. 2007, 15, 39–68. [Google Scholar] [CrossRef]
  8. Lu, R.; Lin, X.; Zhu, H.; Ho, P.-H.; Shen, X. ECPP: Efficient conditional privacy preservation protocol. In Proceedings of the IEEE International Conference on Computer Communications, Phoenix, AZ, USA, 13–18 April 2008; pp. 1229–1237. [Google Scholar]
  9. Lin, X.; Sun, X.; Ho, P.-H.; Shen, X. GSIS: A secure and privacy-preserving protocol for vehicular communications. IEEE Trans. Veh. Technol. 2007, 56, 3442–3456. [Google Scholar]
  10. Zhang, J.; Xu, Y. Privacy-preserving authentication protocols with efficient verification in VANETs. Int. J. Commun. Syst. 2014, 27, 3676–3692. [Google Scholar] [CrossRef]
  11. Zheng, M.; Zhou, H.; Chen, J. An efficient protocol for two-party explicit authenticated key agreement. Concurr. Comput. 2013, 27, 2954–2963. [Google Scholar] [CrossRef]
  12. Ruan, O.; Kumar, N.; He, D.; Lee, J.-H. Efficient provably secure password-based explicit authenticated key agreement. Pervasive Mob. Comput. 2015, 24, 50–60. [Google Scholar] [CrossRef]
  13. Yeh, L.Y.; Chen, Y.C.; Huang, J.L. PAACP: A portable privacy-preserving authentication and access control protocol in vehicular ad hoc networks. Comput. Commun. 2011, 34, 447–456. [Google Scholar] [CrossRef]
  14. Horng, S.J.; Tzeng, S.-F.; Wang, X.; Qiao, S.; Gong, X.; Khan, M.K. Cryptanalysis on a Portable Privacy-Preserving Authentication and Access Control Protocol in VANETs. Wireless Pers. Commun. 2014, 79, 1445–1454. [Google Scholar] [CrossRef]
  15. Chuang, M.C.; Lee, J.F. TEAM: Trust-Extended authentication mechanism for vehicular ad hoc networks. IEEE Syst. J. 2014, 8, 749–758. [Google Scholar] [CrossRef]
  16. Kumari, S.; Karuppiah, M.; Li, X.; Wu, F.; Das, A.K. An enhanced and secure trust-extended authentication mechanism for vehicular ad-hoc networks. Secur. Commun. Netw. 2016, 9, 4255–4271. [Google Scholar] [CrossRef]
  17. Bellare, M.; Pointcheval, D.; Rogaway, P. Authenticated key exchange secure against dictionary attacks. Tecnol. Electron. Inform. 2000, 1807, 139–155. [Google Scholar]
  18. Abdalla, M.; Pointcheval, D. Simple Password-Based Encrypted Key Exchange Protocols. In Topics in Cryptology—CT-RSA; Springer: Berlin/Heidelberg, Germany, 2005; Volume 3376, pp. 191–208. [Google Scholar]
  19. Lu, R.; Cao, Z.; Chai, Z.; Liang, X. A simple user authentication scheme for grid computing. Int. J. Netw. Secur. 2008, 7, 202–206. [Google Scholar]
  20. Lee, C.-C.; Li, C.-T.; Chiu, S.-T.; Lai, Y.-M. A new three-party-authenticated key agreement scheme based on chaotic maps without password table. Nonlinear Dyn. 2014, 79, 2485–2495. [Google Scholar] [CrossRef]
Figure 1. Structure of a vehicular ad-hoc network.
Figure 1. Structure of a vehicular ad-hoc network.
Sensors 17 02854 g001
Figure 2. Key set generation scheme based on the hash–chain method.
Figure 2. Key set generation scheme based on the hash–chain method.
Sensors 17 02854 g002
Figure 3. Normal vehicle registration procedure.
Figure 3. Normal vehicle registration procedure.
Sensors 17 02854 g003
Figure 4. General authentication procedure.
Figure 4. General authentication procedure.
Sensors 17 02854 g004
Figure 5. Secure communication procedure.
Figure 5. Secure communication procedure.
Sensors 17 02854 g005
Figure 6. Execution time(ms) of different authentication protocols.
Figure 6. Execution time(ms) of different authentication protocols.
Sensors 17 02854 g006
Table 1. The notations.
Table 1. The notations.
NotationDefinitions
xA private key for the AS
x i A private key for user i
P S K A pre-shared secure key set among the LEs and the AS
I D i The identification code for entity i
P W i The password for user i
A I D i The alias for entity i
hA secure hash function
The XOR operator
The combination of strings
P p u b i A public key for user i and P p u b i = x i P
pA secure large prime
E ( F p ) A secure elliptic curve
PThe primitive generator for G
GThe subgroup of E ( F p ) with order p
Z p * The set consisting of all primes in { 0 , 1 , , p 1 }
r , y R Z p * An element selected randomly from Z p *
S K i j A session key between entity i and entity j
M S G K U A key update message
Table 2. Symbol and description of BAN logic.
Table 2. Symbol and description of BAN logic.
SymbolDescription
P X Entity P trusts opinion X
P X Entity P sees opinion X, or P holds X
P X Entity P has said opinion X
P X Entity P completely control over X
( X ) X is fresh
R u l e 1 R u l e 2 R u l e 2 comes from R u l e 1
k P k is the public key of entity P
P k Q k is a secret key or information between P and Q
{ X } P S K X is encrypted by key K
Table 3. Simulation of random oracles h and h .
Table 3. Simulation of random oracles h and h .
A hash query h ( m ) (resp. h ) that matches a record ( m , r ) in the list Λ h (resp. Λ h ), returns r .
Otherwise, it chooses a random number r, adds the record ( m , r ) to the list Λ h (resp. Λ h ), and returns r.
Table 4. The execution time of basic operation.
Table 4. The execution time of basic operation.
Operation T h T mul T bp T add
Execution time (ms) 0.004 0.326 6.28 0.038
Table 5. Comparison of efficiency.
Table 5. Comparison of efficiency.
SchemeComputation CostComputation Time (ms)
Reference [6] 4 T h + 4 T m u l + 2 T a d d ≈1.838
Reference [11] 10 T h + 6 T m u l + 2 T b p + 4 T a d d ≈14.7
Reference [12] 10 T h + 6 T m u l + 2 T b p + 4 T a d d ≈14.7
Reference [15] 8 T h ≈0.032
Reference [16] 10 T h ≈0.04
Proposed 12 T h + 10 T m u l + 6 T a d d ≈3.54
Table 6. Comparison of security features.
Table 6. Comparison of security features.
Security Threats and SchemeRef. [6]Ref. [11]Ref. [12]Ref. [15]Ref. [16]Proposed
Provides user anonymity×××××
Resistance to user traceability attack×××××
Resistance to impersonation attack×
Resist inside attack××
Unlinkability of message××

Share and Cite

MDPI and ACS Style

Zhou, Y.; Zhao, X.; Jiang, Y.; Shang, F.; Deng, S.; Wang, X. An Enhanced Privacy-Preserving Authentication Scheme for Vehicle Sensor Networks. Sensors 2017, 17, 2854. https://doi.org/10.3390/s17122854

AMA Style

Zhou Y, Zhao X, Jiang Y, Shang F, Deng S, Wang X. An Enhanced Privacy-Preserving Authentication Scheme for Vehicle Sensor Networks. Sensors. 2017; 17(12):2854. https://doi.org/10.3390/s17122854

Chicago/Turabian Style

Zhou, Yousheng, Xiaofeng Zhao, Yi Jiang, Fengjun Shang, Shaojiang Deng, and Xiaojun Wang. 2017. "An Enhanced Privacy-Preserving Authentication Scheme for Vehicle Sensor Networks" Sensors 17, no. 12: 2854. https://doi.org/10.3390/s17122854

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop