Abstract
Vehicular sensor networks (VSNs) consist of vehicles equipped with various sensing devices, such as LiDAR. In a VSN, vehicles and/or roadside units (RSUs) can be organized into a vehicular cloud (VC) to enable the sharing of sensing and computational resources among participants, thereby supporting crowd-sensing applications. However, the highly dynamic nature of vehicular mobility poses significant challenges in terms of establishing secure and scalable group communication within the VC. To address these challenges, we first introduce a lightweight extension of the continuous group key agreement (CGKA) scheme by incorporating an administrator mechanism. The resulting scheme, referred to as CGKAwAM, supports the designation of multiple administrators within a single group for flexible member management. Building upon CGKAwAM, we propose a blockchain-based dynamic key management scheme, termed BcDKM. This scheme supports asynchronous join and leave operations while achieving communication round optimality. Furthermore, RSUs are leveraged as blockchain nodes to enable decentralized VC discovery and management, ensuring scalability without relying on a centralized server. We formally analyze the security of both CGKAwAM and BcDKM. The results demonstrate that the proposed scheme satisfies several critical security properties, including known-key security, forward secrecy, post-compromise security, and vehicle privacy. Experimental evaluations further confirm that BcDKM is practical and achieves a well-balanced tradeoff between security and performance.
1. Introduction
Vehicular sensor networks (VSNs) can leverage vehicles equipped with advanced onboard (sensing) devices (e.g., LiDAR, around view monitors and AI chips) to collect high-precision environmental and traffic data, thereby enabling large-scale urban crowd sensing applications (e.g., real-time traffic analysis and road anomaly detection) [1]. However, many vehicles remain stationary for extended periods (e.g., charging or parking), leaving these sensing and computing resources underutilized.
To address this issue, researchers have proposed the concept of vehicular cloud (VC) [2], deployed in the VSN environment. A VC enables a group of nearby authenticated vehicles or roadside units (RSUs) to dynamically form a cooperative sensing system, maximizing the utilization of idle sensing resources from stationary vehicles [3]. Within a VC, vehicles can act as cloud administrators or cloud members. Once the VC is established, cloud users (i.e., entities authorized to access the VC) can submit sensing tasks to the cloud administrator via end-to-end secure channels established through key agreement [4]. Upon receiving the tasks, the cloud administrator distributes them to cloud members for collaborative execution.
1.1. Related Work
In the early stages of VC research, the focus was primarily on the design of VC architectures and their potential applications, such as cooperative sensing and resource sharing. However, relatively limited attention was given to the secure establishment of VCs. In the following, we review the evolution of VC architectures and discuss efforts aimed at ensuring the secure establishment of VCs.
VC Architecture. The concept of a VC was first introduced in [5], where a temporary cloud was formed by neighboring vehicles and/or roadside units (RSUs) through V2V and V2I communications. Early VC architectures supported simple tasks like intelligent traffic light control [6]. However, they lacked effective VC management mechanisms, making it difficult to discover suitable VCs and integrate resources across multiple VCs. As a result, vehicles struggled to dynamically discover and join appropriate VCs, and the system suffered from inefficient resource utilization and limited sensing coverage.
To support large-scale applications such as city-wide traffic flow monitoring, researchers proposed an architecture using a Center Cloud Manager (CCM) [2,7]. The CCM handles VC registration, enables VC discovery, etc. [6]. While effective for coordination, the CCM introduces a single point of failure—its unavailability prevents vehicles from accessing or updating VC information. To mitigate risks associated with a centralized CCM, edge computing concepts have been introduced in recent studies, where certain CCM functions are delegated to edge servers (e.g., RSUs) [8]. However, this architecture introduces new challenges. The lack of effective information-sharing mechanisms among different edge servers prevents vehicles from promptly obtaining the task statuses and resource availability of neighboring VCs, thereby hindering their optimal selection and participation in suitable VCs [9].
Given the challenges faced by existing VC architectures, blockchain technology offers promising features, including decentralization, transparency, and tamper resistance. Despite its potential, the integration of blockchain technology into VC management remains in its infancy, with limited research exploring how blockchains can enhance VC discovery, coordination, and resource sharing in a decentralized manner.
Secure Establishment of VCs. Over time, as the demand for security in VC environments has grown, various GKM schemes for the secure establishment of VCs have proposed—some tailored specifically for VCs and others originally designed for general group communication but potentially applicable in VC environments [10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28]. These schemes can be broadly categorized into two types: group key agreement (GKA)-based and group key distribution (GKD)-based schemes. GKA-based schemes are further divided into Traditional GKA (TGKA), Asymmetric GKA (AGKA), and Continuous GKA (CGKA) schemes.
GKA-based GKM schemes enable a group of entities (e.g., vehicles) to collaboratively establish a shared session key for secure communication. However, traditional GKA (TGKA) schemes, typically based on the Diffie–Hellman key exchange [10], require multiple rounds of interaction and assume that all members are simultaneously online and synchronized [11,12,13]. Furthermore, these schemes generally lack a formalized framework for continuous key updates within the protocol design, security model, and analysis. Their security assumptions are also relatively weak, often presuming fully trusted members without accounting for potential compromises of device states or intermediate computations. As a result, the applicability of TGKA schemes is significantly limited in asynchronous and dynamic environments such as VCs. To reduce interaction overhead, Non-Interactive GKA (NIGKA) schemes have been proposed, allowing users to compute a shared key without additional communication. However, existing constructions either only support small groups (e.g., the three-party scheme proposed by Joux [14]) or rely on expensive cryptographic primitives such as indistinguishability obfuscation (iO) [15], while often lacking essential properties like forward secrecy.
AGKA-based schemes enable a group of entities to negotiate a group public key and their respective private keys in a single round [16]. Several AGKA schemes have recently been proposed for VC environments [17,18,19,20]. While promising, these approaches face certain limitations. For instance, AGKA typically requires the maximum group size to be fixed during initialization, which can lead to unnecessary computational and storage overhead if the actual group size is smaller, limiting scalability in large groups. Furthermore, since VC communication occurs over public networks, open access to the group encryption key may expose the system to malicious requests or denial-of-service attempts. Finally, current AGKA schemes are often tightly coupled with bilinear pairing-based constructions, which may incur reactively high computational costs.
Recently, CGKA has been proposed to provide efficient key management for asynchronous, dynamic, and large-scale groups [21]. CGKA is also a potential candidate for secure communication in VC environments [22]. By leveraging a binary tree structure, CGKA achieves logarithmic communication and computational complexity, i.e., where N denotes the group size, for group membership changes such as members joining or leaving. However, CGKA lacks robust group management mechanisms, making it susceptible to insider attacks, and it depends on centralized servers for message delivery, which may limit its applicability in decentralized settings [23].
GKM schemes based on GKD typically rely on a trusted dealer (TD) to generate and distribute a shared group session key to all participating entities [24]. Although this approach avoids multiple rounds of interaction among entities, the reliance on a centralized TD introduces inherent limitations. First, the TD may become a single point of failure [25,26]. Second, due to the high mobility of vehicular clouds (VCs)—especially when the group is composed entirely of vehicles—it can be difficult to maintain a suitable and consistently available TD.
Technological Readiness of Vehicular Sensors. Modern vehicles have become highly integrated sensor platforms, providing rich data sources for VSNs. Commercially available sensors, such as LiDAR [29], 4D mmWave radar [30], and high-precision GPS sensors, can capture millisecond-level 3D information of the surrounding environment [1]. On the computational side, vehicles are equipped with high-performance onboard systems, such as the NVIDIA Orin [31], capable of efficiently processing large volumes of sensor data in real time. In terms of communication, many vehicles feature high-speed modules (e.g., 5.9 GHz C-V2X [32]), enabling low-latency and reliable data exchange. These commercial sensors and computing and communication modules allow for real-time sharing of traffic, road, and infrastructure information, supporting applications such as traffic flow optimization, signal control, and congestion warnings to improve road efficiency and safety. The security of these valuable data is increasingly important. The algorithms of the schemes proposed in this work (see Section 3 and Section 4) are fully compatible with existing commercial vehicle computing modules. At the same time, emerging devices, such as blockchain-enabled units, are beginning to appear in experimental and pilot deployments. Therefore, this work is forward-looking while remaining compatible with current VSN technologies.
1.2. Our Contribution
Due to the high level of mobility and dynamic nature of vehicular sensor networks (VSNs), traditional group key management (GKM) schemes are inadequate for establishing secure group channels for vehicular clouds (VCs) in such settings. To address this challenge, we propose a blockchain-based dynamic key management scheme, referred to as BcDKM. This scheme is built upon a slightly modified continuous group key agreement (CGKA) scheme—namely, CGKAwAM—and incorporates blockchain and smart contract mechanisms to address the core challenges identified in Section 1. The proposed scheme enables vehicles to establish secure group communication channels in VSNs and continuously update session keys to ensure communication security. The main contributions of this work are summarized as follows:
- We propose the CGKAwAM scheme, which extends CGKA scheme with a lightweight administrator-driven group member management mechanism. Unlike the standard CGKA scheme, CGKAwAM supports multiple administrators within a single VC. Each administrator is capable of independently processing user-initiated proposals (such as Join, Remove, and Update) in a single communication round.
- Based on CGKAwAM and blockchain technology, we design the BcDKM scheme, which provides several key advantages. First, it enables distributed VC discovery and management (see Section 2.2). RSUs act as blockchain nodes and use smart contracts to publish VC information, facilitating efficient matching and information sharing between vehicles and VCs. Additionally, multiple cloud administrators collaboratively manage each VC in a decentralized manner, reducing the risk of a single point of failure. Second, the scheme achieves round optimality and large-scale VC scalability (see Section 2.2). VC initialization and member join/leave operations can be completed asynchronously in a single communication round, without requiring all members to be online. Furthermore, the computational complexity grows logarithmically with the number of members, making the scheme suitable for large-scale deployment.
- We provide a rigorous formal security analysis for both the CGKAwAM and BcDKM schemes. Specifically, under a non-adaptive security model, we construct a game-based proof using the game-hopping technique, reducing the security of CGKAwAM to the CPA security of the underlying public key encryption scheme and the security of the pseudorandom generator. Our analysis shows that the proposed scheme satisfies multiple critical security properties, including key independence, forward secrecy, and post-compromise security. In addition, we analyze the security of the BcDKM scheme and show that it not only satisfies basic security requirements but also provides protection for vehicle privacy.
- We conduct a comprehensive evaluation of the proposed scheme through both theoretical analysis and simulation experiments. We also compare our scheme with several existing representative solutions. The results demonstrate that BcDKM achieves a balance between security and efficiency, confirming its practical feasibility.
The remainder of this paper is organized as follows. Section 2 presents the background, including the system model, design goals, and cryptographic tools. Section 3 describes the detailed design of the proposed CGKAwAM scheme and the associated smart contracts. Section 4 introduces the design of the BcDKM scheme. Section 5 provides a security analysis of the proposed schemes—namely, CGKAwAM and BcDKM. Section 6 evaluates the performance of the proposed schemes and presents the analysis results. Finally, Section 7 concludes the paper.
2. Background
2.1. System Model
As shown in Figure 1, our system consists of the following entities:
Figure 1.
System model.
- Certificate Authority (CA): The CA is a trusted third party responsible for generating public system parameters and issuing digital certificates to vehicles and RSUs.
- Vehicles: Each vehicle is equipped with an onboard unit (OBU) that provides computing and communication capabilities and stores certificates and related secrets. A VC is formed by a group of vehicles and supports dynamic membership, allowing vehicles to join or leave the VC as needed. The vehicle that initiates the VC formation may act as the cloud administrator or delegate this responsibility to another vehicle, while the remaining participants serve as cloud members.
- Roadside Unit (RSU): The RSU is located along the roadside; it communicates with vehicles within its coverage area, authenticates their identities, and publishes the VC information. Additionally, RSUs are assumed to function as part of the blockchain infrastructure, acting as blockchain nodes.
- Blockchain (BC): The BC provides reliable data storage and supports automated execution via smart contracts. In our system, it is used to record VC-related information and assist VC administrators in managing the cloud.
- Cloud Users (CUs): A CU refers to any authorized entity that accesses and utilizes the services provided by a VC. CUs can submit tasks to their selected VC for execution.
2.2. Threat Model and Design Goals
In our system, we assume that the CA is trusted and faithfully provides registration services to vehicles and RSUs. The blockchain is also assumed to be trusted, offering essential security properties such as resistance to 51% attacks [27]. However, both RSUs and vehicles are considered potentially malicious, as they are typically deployed in open environments and may be compromised by attackers. Additionally, we assume that the attacker has control over the wireless communication channel and is capable of eavesdropping on, injecting, transmitting, or modifying messages transmitted over the network.
Under this model, the security goals of our scheme are outlined as follows:
- Vehicle privacy: This property ensures that no one, except the CA, can learn the true identity of a cloud member (a vehicle) within a VC.
- Known-key security: This property ensures that even if an attacker obtains a session key of a cloud member within a particular VC, the security of other independent session keys remains uncompromised.
- Forward secrecy: This property ensures that if a vehicle is compromised by an attacker at a certain point in time, all session keys generated prior to the compromise remain confidential.
- Post-compromise security: This property ensures that if a vehicle is compromised at a certain point in time and the compromised vehicle subsequently performs a session key update that is not influenced by the attacker, then the updated session key remains confidential.
Our scheme also considers the following goals, in addition to the above security goals:
- Distributed VC discovery: This property enables a vehicle to efficiently discover existing VCs and their metadata via nearby RSUs, avoiding reliance on centralized platforms and mitigating single points of failure.
- Distributed management: This property ensures that each VC is managed by multiple cloud administrators. If one administrator becomes unavailable, others can still handle requests from vehicles inside or outside the VC (e.g., join and leave). This design mitigates insider threats and avoids single points of failure.
- Round optimality: This property ensures that group session key establishment and updates within a VC can be completed in a single round of communication, achieving optimal round complexity.
- Large-scale VC scalability: This property ensures efficient operation in VCs with many cloud members, as key management complexity grows logarithmically with group size.
Remark 1.
It is worth noting that most existing VC-oriented GKM schemes define forward and backward security only against passive adversaries (i.e., eavesdropping capabilities) [12,26]. Forward Secrecy (not to be confused with our Forward secrecy) ensures that a passive adversary who knows a contiguous subset of old group keys cannot derive subsequent group keys, thereby preventing vehicles from accessing current communications after leaving the group. Backward Secrecy (not to be confused with our Post-compromise security) ensures that a passive adversary who knows a contiguous subset of group keys cannot derive preceding group keys, preventing newly joined vehicles from accessing past communications. In contrast, the forward security and post-compromise security offered by our scheme are stronger, as they not only resist passive eavesdropping but also withstand active adversaries (e.g., compromised vehicles) rather than being limited to passive threats.
2.3. Building Blocks
In this section, we introduce several fundamental cryptographic tools that are employed in our system to achieve the desired goals. These building blocks include public key encryption (PKE), digital signature (DS), symmetric encryption (SE), pseudorandom generators (PRNGs), and PRG-based binary trees.
Definition 1
(PKE Scheme). A PKE scheme ( = , , , ) consists of the following algorithms:
- : This algorithm accepts and outputs the system parameters ().
- : This algorithm accepts and generates a private–public key pair .
- : This algorithm accepts a plaintext (m) and a public key () and outputs a ciphertext ().
- : This algorithm accepts a ciphertext () and a secret key () and outputs a plaintext (m).
In our scheme, we rely on a PKE scheme that is secure against chosen plaintext attacks (CPAs), a widely accepted security notion in modern cryptography. Let denote the adversary’s advantage in breaking the PKE scheme; the corresponding formal security definition is given in Appendix A.
Definition 2
(DS Scheme). A digital signature scheme ( = , , , ) consists of the following algorithms:
- : This algorithm takes as input and outputs a private–public key pair .
- : This algorithm takes and a message (m) as input and outputs a signature (σ).
- : This algorithm takes , a message (m), and a signature (σ) as input and outputs 1 if the signature is valid or 0 otherwise.
In our scheme, we rely on a digital signature scheme that is existentially unforgeable under chosen message attacks (EUF-CMA).
Definition 3
(SE Scheme). A symmetric encryption scheme () consists of the following algorithms:
- : This algorithm takes as input and outputs a secret key (k).
- : This algorithm takes a secret key (k) and a message (m) as input and outputs a ciphertext (c).
- : This algorithm takes k and a ciphertext (c) as input and outputs a message (m).
In our scheme, we rely on a symmetric encryption scheme that is semantically secure.
Definition 4
(RPG). A PRG is a function, i.e., , where denotes the random seed space and denotes the secret key space.
Let denote the adversary’s advantage in breaking the PRG; the corresponding formal security definition is given in Appendix A.
We define a helper function () by iteratively invoking the PRG () for d rounds, starting from an initial seed (). Formally, let . For each , we compute . The output of the helper function is defined as , i.e., only the secret key () obtained in the d-th iteration is returned as the final result.
Definition 5
(PRG-based Binary Tree). A PRG-based binary tree (PBT) is a full binary tree used for key derivation. A PBT consists of Y nodes, denoted as , and has a height of . Specifically, let be the root node. The leaf nodes are represented as , while the remaining internal (non-leaf) nodes are represented as . Each node () stores a unique tuple in the form of , where denotes a secret value and is a secret key derived from using a PRG. The public key () is derived from using a public key derivation algorithm (). In our scheme, is derived from using the same method as in the of a PKE scheme, making the resulting key pairs fully compatible with the corresponding PKE scheme. The value of indicates the height of the node in the tree (e.g., each leaf node is assigned , while the root node is assigned ), and e indicates whether a node is a leaf (with denoting leaf nodes and denoting non-leaf nodes). The values in each tuple are initialized using the algorithm expressed as (defined below) and updated using the algorithm expressed as (as defined below). The size of a PBT can also be expanded to include additional nodes using the algorithm expressed as . A formal description of the algorithm is provided in Appendix B (see Algorithm A2).
The algorithm expressed as is used to initialize a PBT. In our scheme, it is executed by a cloud administrator and is used to initialize a VC (see Section 4.5 for VC initialization). Given a set of secret values (, as chosen by a cloud administrator), the algorithm outputs a PBT with a height of and . A formal description of the algorithm is provided in algorithm is provided in Appendix B (see Algorithm A1).
In our scheme, the algorithm expressed as is executed by a cloud administrator or a cloud member to update the nodes along the path from the leaf node at position I (where I denotes the index of a node in the leaf layer) to the root of the PBT () using a random value (). Given a PBT (), a leaf position (I), and a random value () selected by the cloud administrator or a cloud member, the algorithm outputs an updated PBT (). A formal description of the algorithmis provided in Appendix B (see Algorithm A3).
In our scheme, the PBT is utilized to support the continuous and dynamic updating of session keys in a VC. To achieve these goals, we define several helper algorithms to retrieve paths and associated nodes from the PBT.
- The algorithm expressed as , where , is used to retrieve the sequence of nodes along the path from the I-th leaf node to the root of the given PBT . It is typically executed by the cloud administrator or a cloud member. Given a PBT () and position (I) selected by the cloud administrator or a cloud member, the algorithm returns a path () that consists of direct references to the original PBT nodes so that any modification of a node in the path immediately affects the original PBT nodes.
- The algorithm expressed as , where , is used to generate a modified copy of a given PBT (), with all sensitive information (i.e., private key and secret value) outside the specified path () masked. It is typically executed by the cloud administrator. Given a PBT () and a path () within the PBT selected by the cloud administrator, the algorithm returns a duplicate PBT (), in which the private keys and secret values of all nodes not included in the path () are set to null.
- The algorithm expressed as is used to obtain the set of common ancestor nodes shared by and in the tree expressed as , ranging from their lowest common ancestor () up to the root node ().
3. Building Blocks
In this section, we first design a continuous group key agreement scheme with an administrative mechanism (CGKAwAM), which supports multiple administrators and provides a continuous key stream for dynamic groups. We next introduce two designed smart contracts: VIDSC and VCSC. Based on CGKAwAM and the proposed contracts, we then construct a blockchain-based dynamic key management scheme tailored for vehicle cloud (VC) systems (see Section 4).
3.1. CGKA with Administrator Mechanism (CGKAwAM)
A CGKAwAM comprises the following algorithms:
- SetUp: This algorithm is executed by a trusted authority (e.g., certification authority) to generate system parameters. Upon input of a security parameter (), it outputs a common system parameter (). The trusted authority proceeds as follows:
- 1.
- Select a public key encryption scheme (. Invoke to obtain (see Definition 1).
- 2.
- Choose a secure PRG (; see Definition A2).
- 3.
- Publish the common system parameter (, , )).
- KeyGen: This algorithm is executed by a user with identifier to generate their own key pair. Upon input of and , it outputs a public–private key pair (). Internally, it invokes to generate the key pair ().
- Create (, CM): This algorithm is executed by user , acting as the group administrator, to initiate a new group. Upon input of , an identifier set ( with ), and an identifier (), it outputs the administrator’s local state (, where is the newly assigned group identifier), and a set of control messages () is used to invite the remaining members in G to join the group. The state encapsulates the user’s status in the group, including the session key, the list of group administrators, the list of group members, public parameters, and so on. Furthermore, suppose that each user holds a key pair . initializes a group as follows:
- 1.
- Set the group identifier (, where is a timestamp).
- 2.
- Select s users from G to serve as administrators, forming the set expressed as . The remaining users form the set expressed as .
- 3.
- Assign each user () a unique random number (). This yields the set expressed as .
- 4.
- Invoke to construct a PBT , where and .
- 5.
- Compute the session key as , where is the serialized string of the tuple stored at the root node ; see Definition 5.
- 6.
- Initialize a mapping array () of length to associate each PBT leaf node with a user from G. Set for and for .
- 7.
- For each user with identifier in , generate a control message as follows:
- –
- If , do the following:
- (a)
- Invoke to obtain the ciphertext (), where denotes the position assigned to user in the PBT (i.e., the -th leaf node such that ).
- (b)
- Add the control message () to set .
- –
- Otherwise, do the following:
- (a)
- Invoke to obtain a path (, where , .
- (b)
- Invoke to obtain a PBT ().
- (c)
- Invoke , to obtain .
- (d)
- Add the control message () to set .
- 8.
- Set the state as , where indicates that is designated as the administrator and indicates that is mapped to the first leaf node of the PBT, i.e., .
- 9.
- Send each control message in set to the corresponding user.
- Proposal: This algorithm is executed by user to generate a proposal message () intended for the group administrator () within the group, with the purpose of requesting a group membership change (e.g., join or leave) or a session key update. Upon input of and a proposal type (), it outputs the proposal message (). The parameter specifies the purpose of the proposal: adding a member, removing a member, or updating the session key. The field represents the payload associated with the proposal. We present three example proposal messages used in our scheme as follows.
- –
- : A join request from an external user (), asking administrator to add it to group , where .
- –
- : A removal request by current group member , requesting to leave or be removed from the group, where .
- –
- : A key update request by current group member , asking to update the group session key, with , where is the public key of and is randomly selected by .
User sends the proposal message () to the administrator (). - Commit: This algorithm is executed by user , who serves as the administrator of the group. It is used to process a proposal message () submitted by another user. Upon input of , it outputs the updated state () and a set of control messages (), which are used by the other group members to update their local states. Suppose in a group () has a local state of = (, ). Suppose . then processes the as follows:
- –
- If , do the following:
- 1.
- Search the Map array for an index () such that . If no such index exists (i.e., all current leaf nodes are occupied), invoke the helper function () to extend the PBT, and search again for an empty index (). Once an empty index is found, set , , and add to the the set.
- 2.
- Select a random value () for user .
- 3.
- Generate the corresponding control messages for user as follows:
- (a)
- Invoke to update the path in the PBT ().
- (b)
- Invoke to obtain the updated path ().
- (c)
- Invoke to obtain .
- (d)
- Invoke , to obtain .
- (e)
- Add the message expressed as to set .
- 4.
- Generate the corresponding control messages for administrators () as follows:
- (a)
- Invoke to obtain the ciphertext ().
- (b)
- Add the message expressed as to set .
- 5.
- Generate the corresponding control messages for the other group members (i.e., ) as follows:
- (a)
- Invoke to obtain the path expressed as.
- (b)
- For each node on the path expressed as , do the following:
- i.
- If node has a non-empty sibling node () in the PBT (, i.e., and share the same direct parent node, where or ), then retrieve the tuple expressed as from node and invoke to obtain the node set expressed as , which represents the sequence of common ancestor nodes of and , up to the root node . The total number of nodes in this set is . Otherwise, continue the loop.
- ii.
- Invoke to obtain the ciphertext , where is a list of public keys corresponding to those stored in the node along the path expressed as .
- iii.
- For each non-administrator user () whose identifier is stored in the array (, where q satisfies ), set the control message as . Note that the control messages for these users are identical, except for the recipient identifier (). Add each message () to the control message set ().
- –
- If , do the following:
- 1.
- Search the array (Map) for an index () such that . Then, set , and remove from the set.
- 2.
- Select a random value ().
- 3.
- Invoke to update the path in the PBT ().
- 4.
- Generate the corresponding control messages for the other administrators (i.e., ) in the same way as Step 4 under the condition of in this algorithm.
- 5.
- Generate the corresponding control messages for the other group members (i.e., ) in the same way as Step 5 under the condition of in this algorithm.
- –
- If , do the following:
- 1.
- Search the array (Map) for an index () such that .
- 2.
- Obtain the tuple expressed as from the node leaf ().
- 3.
- Compute , where is the private key stored in the node expressed as .
- 4.
- Invoke to update the path in the PBT ().
- 5.
- Generate the corresponding control message for , and proceed as follows:
- (a)
- Invoke to obtain a path ().
- (b)
- Set the cipher to .
- (c)
- Add the control message () to set .
- 6.
- Generate the corresponding control messages for the other administrators (i.e., ) in the same way as Step 4 under the condition of in this algorithm.
- 7.
- Generate the corresponding control messages for the other group members (i.e., ) in the same way as Step 5 under the condition of in this algorithm.
- –
- Compute the updated session key as . Note that denotes the PRG computation with the concatenation of the session key () and the tuple stored in node .
- –
- Update the state ( = , , n, , , ).
- : This algorithm is executed by user , who is a member of the group. It is used to process a control message () sent by the group administrator within the group for the purpose of updating the user’s local session state. Upon input of , , , and , it outputs the updated state (). If user receives the control message () for the first time, then inputs and are set as ⌀. Suppose that receives the control message () from administrator within the group and is associated with a key pair . then processes as follows:
- –
- A format of indicates that is joining group for the first time, then proceeds as follows:
- 1.
- Invoke to obtain , where .
- 2.
- Compute the session key as = .
- 3.
- If , then set ; otherwise, set .
- 4.
- Set state = .
- –
- Otherwise, a format of indicates that is a cloud administrator within the group. Suppose possesses a local state of = . Then, proceeds as follows:
- 1.
- Invoke to obtain ().
- 2.
- Compute the session key as = .
- 3.
- Set state = ().
- –
- Otherwise, the control message () originates from the group, which has already joined. Suppose has a format of and user possesses a local state of = , , , . does the following:
- *
- If and , another member has either joined the group, updated the group session key, or exited. proceeds as follows:
- 1.
- If , then set , and add to the set.
- 2.
- If , then set , and remove from the set.
- 3.
- Invoke to obtain the node set expressed as , which represents the sequence of common ancestor nodes of and , up to the root node (). is the lowest common ancestor.
- 4.
- Obtain the tuple expressed as from the child node of , which is also an ancestor of .
- 5.
- Invoke , to obtain .
- 6.
- Replace the nodes in the set expressed as , which belong to the PBT , with the corresponding nodes in the set expressed as .
- 7.
- Replace the public keys in the tuples stored in the nodes along the path from the leaf node () to the root node () with the corresponding public keys in list .
- 8.
- Compute the updated session key as = .
- 9.
- Set state = .
- *
- Otherwise, the received control message () is the administrator’s response to the proposal message submitted by , where , with and being a random value chosen by . The message is processed as follows:
- 1.
- Invoke to update the corresponding path.
- 2.
- Compute the updated session key as = .
- 3.
- Set state = .
3.2. Design of Smart Contract
A smart contract is a self-executing program deployed on the blockchain, typically written in a Turing-complete programming language such as Solidity, Vyper, or DAML. It consists of variables for data storage and methods that can be invoked by entities to manipulate these variables. Each smart contract has a unique (public) address on the blockchain. All state changes resulting from method invocations are ultimately recorded on all blockchain nodes through the underlying consensus mechanism.
3.2.1. Vehicle Identity Smart Contract (VIDSC)
In our scheme, each RSU deploys and maintains a VIDSC to securely record and manage information about authenticated vehicles that intend to join the VC. The VIDSC is formally defined in Appendix C (see Algorithm A4).
Specifically, the VIDSC contract declares a data structure named VID to store essential vehicle information. This structure contains two fields: CredID, representing the vehicle’s (anonymous) authentication certificate, and Source, describing the vehicle’s sensing or computational capabilities. Additionally, the contract maintains a dynamic array variable, IDList, which stores all registered VIDs.
The contract provides an Upload method invoked by an RSU when a vehicle requests to join a VC (see Section 4.4). The RSU uses the Upload method to store the requesting vehicle’s CredID and Source information in the IDList array on the blockchain.
3.2.2. Vehicular Cloud Smart Contract (VCSC)
We design a VCSC to securely manage essential VC-related data. It is deployed for each VC and maintained by the corresponding cloud administrators. The formal definition of the VCSC is provided in Appendix C (see Algorithm 5).
Specifically, the contract declares several VC-related data (variables): VID, representing the unique identifier of the VC; ADM and MEM, arrays holding the identifiers of cloud administrators and members, respectively; MAP, which records the mapping from PBT leaf nodes to vehicle identifiers; and ProMess, a dynamic array storing proposal messages, along with their processing status.
The contract provides the following functions:
- Update: Invoked by cloud administrators to initialize VC-related variables;
- Upload: Invoked by vehicles or administrators to append new proposal messages;
- Return: Invoked by administrators to retrieve unprocessed proposal messages.
4. Blockchain-Based Dynamic Key Management (BcDKM) Scheme
4.1. High-Level Description
Our proposed blockchain-based dynamic key management (BcDKM) scheme for vehicle cloud (VC) systems consists of several phases: In the Setup phase, the Certification Authority (CA) initializes the entire system by establishing essential system parameters. The subsequent Registration phase involves vehicles and RSUs generating cryptographic keys and registering with the CA to obtain certificates. During the Preparation phase, registered vehicles submit participation requests to local RSUs, which verify and record vehicle information on the blockchain. The Initialization phase allows vehicles to initialize VCs by deploying smart contracts and establishing initial session keys. Finally, the VC Management phase supports dynamic operations such as allowing external vehicles to securely Join an existing VC, enabling current members to securely Remove themselves from a VC, and facilitating secure and dynamic group key Update operations among existing members. An overview of the BcDKM scheme phases is depicted in Figure 2.
Figure 2.
High-level workflow of the BcDKM scheme.
4.2. Setup
Upon input of , the CA performs the following steps:
- 1.
- Invoke the SetUp algorithm of the CGKAwAM (see Definition 3) to obtain the common system parameters ().
- 2.
- Select a digital signature scheme (). Invoke to obtain the parameters, and invoke to generate a key pair (See Definition 2).
- 3.
- Select a symmetric encryption scheme (. Invoke ) to generate a secret key (k).
- 4.
- Initialize a blockchain system, denoted as , which supports the VCSC for the management of VC-related information and the VIDSC for the recording of information of vehicles willing to join a VC. Those smart contracts are defined in Section 3.2.
- 5.
- Publish the system parameter as = , , ,, . We assume is pre-stored in vehicles and RSUs.
4.3. Registration
Before joining the system, vehicles and RSUs must register with the CA. For a vehicle (), let denote its true identity. Each vehicle uses a unique anonymous certificate when participating in different VCs. Typically, a vehicle can obtain multiple such certificates from the CA during a single registration process. As an example, we describe the process in which a vehicle registers with the CA and obtains one anonymous certificate. The message transmission sequence of this procedure is illustrated in Figure 3a.
Figure 3.
Message sequence of different procedures: (a) registration; (b) preparation; (c) initialization; (d) VC management.
- 1.
- invokes to generate a private–public key pair, i.e., , and sends to the CA via a secure channel. For simplicity, we assume that the key pair is used for both CGKAwAM and digital signature schemes.
- 2.
- Upon receiving , the CA does the following:
- (a)
- Issue an anonymous certificate ( = , , , , where is a pseudonym generated by the CA by running , is a serial number, denotes the validity period, and is a signature generated by running ).
- (b)
- Send to over a secure channel.
- 3.
- can then easily verify the signature () using the algorithm and store locally.
For an RSU (), privacy is generally not a concern. RSUs generate their certificates in the same way as vehicles; however, the only difference is that the pseudonym in the certificate is set to the true identity rather than an anonymized identifier. Let denote the true identity of . generates a private–public key pair (). submits to the CA via a secure channel and obtains a certificate () issued by the CA.
4.4. Preparation
In this phase, registered vehicles submit participation requests to their local RSUs. The RSUs are responsible for verifying the vehicles’ identities and recording their information for VC admission. As an example, we describe the process in which a vehicle () submits its participation request to RSU . Suppose that RSU deploys a contract () on the blockchain. Let and hold certificates and and key pairs and , respectively. The message transmission sequence of this procedure is illustrated in Figure 3b. They then proceed as follows:
- 1.
- When enters the area managed by , it generates a signature () on the message expressed as using , where is a timestamp and is the description of ’s resource information. Then, sends to .
- 2.
- Upon receiving , does the following:
- (a)
- Verify the validity of the signature by invoking . If the signature is invalid, abort; otherwise, invoke the Upload method (see Section 3.2) within to store the vehicle information.
- (b)
- Generate a signature () on the message () using , , where is the address of .
- (c)
- Send to .
- 3.
- can easily verify the validity of the received signature by invoking , , . Moreover, since the blockchain is public, it is straightforward to check the correctness of the contract address.
4.5. Initialization
Suppose a vehicle () intends to initialize a VC. As an example, assume that it obtains a set of authenticated vehicle identifiers (), representing the initial set of authenticated vehicle identities acquired from the nearest RSU. Furthermore, suppose that each vehicle holds a key pair and an anonymous certificate (). The message transmission sequence of this procedure is illustrated in Figure 3c. initializes a VC as follows:
- 1.
- Invoke the Create algorithm of CGKAwAM (see Section 3) to obtain the initialization local state () and a set of control messages ().
- 2.
- Deploy a VCSC smart contract (see Section 3.2.2) for the VC identified by via the RSU on the blockchain as follows:
- (a)
- Deploy the on the blockchain. If the deployment is successful, the RSU returns the contract address (); otherwise, the process is aborted.
- (b)
- Invoke the Update method within the contract to initialize the VC-related data (see Section 3.2.2).
- 3.
- Send each control message () to its corresponding vehicle in , attaching the same to all messages.
When a vehicle () receives the control message () from the cloud administrator (), the Process algorithm of CGKAwAM (see Definition 3) is invoked to obtain the initialization local state ( = , , , Map, , n, , , , ).
4.6. VC Management
This subsection describes how cloud members in a created VC are managed. Specifically, a vehicle may Join a VC as a new member, an existing member may Remove itself from a VC, and a member may trigger a group key Update. All three operations follow a unified procedure, where the main difference lies in the command (cmd) type and, in the case of Update, the inclusion of an additional ciphertext (). The message transmission sequence of this procedure is illustrated in Figure 3d. The generalized procedure is expressed as follows:
- 1.
- A vehicle () invokes the Proposal algorithm of CGKAwAM (see Section 3) to generate a proposal message (). Here, cmd correspond to Join, Remove, and Update, respectively. For Join and Remove, , while for Update, , where is a random number selected by .
- 2.
- uploads message to the smart contract () through the RSU by invoking the Upload method, where .
- 3.
- Once message has been successfully stored, the RSU notifies the administrator () to handle the message.
- 4.
- invokes the Return(cmd) method within to retrieve .
- 5.
- runs the Commit algorithm of CGKAwAM to update its local state (), yielding a new state () and a set of control messages ().
- 6.
- invokes the Update method in to update the VC-related data using .
- In the case of Join, is added to the membership set.
- In the case of Remove, is excluded from the membership set.
- 7.
- sends each control message () to the corresponding vehicles. The recipient set differs slightly depending on the operation:
- Join: all members in ;
- Remove: all members in ;
- Update: all members in .
Each recipient vehicle () executes the Process algorithm of CGKAwAM to update its local state accordingly.
It is worth noting that in highly dynamic vehicular networks, temporary disconnections of vehicles are inevitable. Nevertheless, the asynchronous design of our scheme ensures that such disconnections do not hinder the execution of group key updates. Specifically, if a vehicle disconnects after submitting a Proposal message, the administrator continues processing the request and distributes the corresponding Control message to other VC members, who can update the session key locally. The disconnected vehicle may later request the Control message upon reconnection or reinitiate its join request. If a vehicle disconnects before its Proposal message reaches the VC administrator, no session key update is triggered, and the VC remains unchanged. Therefore, both the correctness and security of the group are preserved, even in the presence of frequent disconnections.
5. Security Analysis
This section presents the security analysis of the proposed schemes. First, we formally prove that the CGKAwAM scheme (see Section 3) is secure against adversaries in VC environments and achieves the security properties of known-key security, forward secrecy, and post-compromise security (see Section 2.2), as detailed in Section 5.1. Based on this result, we further demonstrate that the proposed blockchain-based dynamic key management (BcDKM) scheme for VC systems (see Section 4) achieves the intended security goals, as shown in Section 5.2.
5.1. Security Analysis of CGKAwAM
5.1.1. Security Definition and Model
Definition 6
(Game-Based Security Notions). We capture the security of our CGKAwAM through a security game played between an adversary () and a challenger ( ). In the security game, simulates the execution of the scheme, while interacts with the oracles (see Definition 7) maintained by , through issuing queries (see Definition 8).
Definition 7
(Oracles). We consider μ users (e.g., vehicles), i.e., in this system. Each user () is represented by a set of oracles, denoted as , which corresponds to the s-th group session that participates in. Furthermore, we use the symbol to denote the t-th stage of oracle (group session) , where . A stage corresponds a specific key update within a group session. Each time the group executes a proposal message (e.g., member join, leave, or session key update), a new stage is triggered, and the session key is updated accordingly. For example, represents the initial establishment of a group session and the computation of the corresponding initial group session key. Each oracle () has access to the key pair of the : . The oracle () is associated with a collection of variables (initially set to empty), defined as follows:
- represents the identifier of the group session ().
- represents the role of in the group session (). If , the user is the administrator; otherwise, the user is the group member.
- represents the number of stages that have occurred in the group session () since its creation. This variable is used solely within the security model.
- represents a set containing the identifiers of the users in the group session () at stage t with whom intends to establish a session key, including himself.
- represents the group session key associated with the group session () at stage t.
- represents the status associated with group session at stage t. If the status is accepted, the session key () has been computed; otherwise, the status is unaccepted.
- represents the local state associated with group session at stage t. It corresponds to the γ state in our scheme (see Section 3).
- represents the messages sent and received in group session at stage t.
Definition 8
(Query). We formalize the security game using the oracles defined above. During the simulation of the security game, allows to issue the following queries:
- : This query models the Setup algorithm of CGKAwAM. Upon receiving the security parameter (κ), simulates the CA to generate the common system parameter ().
- : This query models the KeyGen algorithm of CGKAwAM. Upon receiving the and a user identifier () chosen by , returns to the key pair () associated with the user identified by .
- : This query models the Create algorithm of CGKAwAM. In this query, is allowed to select an initial administrator () to cr(eate a VC with a group of users , where ). Then, initializes the oracle () and outputs a set of control messages.
- : This query models the Proposal algorithm of CGKAwAM. In this query, is allowed to submit a proposal message (), which suggests that the administrator () execute a command (). then uploads the proposal message to the smart contract.
- : This query models the Commit algorithm of CGKAwAM. In this query, is allowed to request the administrator () to execute the proposal message () within the session (). updates the variables associated with the oracle () and outputs a set of control messages.
- : This query models the Process algorithm of CGKAwAM. In this query, is allowed to request the user () to execute the control message (). updates the variables associated with the oracle ().
- : This query models the adversary’s ability to reveal a group session key in session at stage t. returns the group session key ().
- : This query models the adversary’s ability to compromise the user () in session at stage t. returns all the values stored in session at stage t, except the group session key.
- : It requires that and the output of be fresh (see Definition 10). If either of these two conditions is not satisfied, the query outputs ⊥. Otherwise, the output of this query is determined as follows: If (where the bit (b) is defined in Definition 9), it outputs ; otherwise (i.e., ), it outputs a random session key.
Definition 9
(Security Model). We define our security model through a security game played between an adversary () and a challenger (). In the security game, simulates the execution of the scheme using oracles (see Definition 7), while interacts with the oracles by issuing queries (see Definition 8). We further define a non-adaptive security model to formalize the security of our scheme. In this model, the adversary () is considered non-adaptive, meaning that it must determine all of its queries in advance, before the security game begins. Once the queries are fixed, is no longer allowed to modify any query or its target. The security game is defined as follows:
- 1.
- Before begins simulating the security game, it chooses a random bit ().
- 2.
- outputs a fixed query set of to , specifying the exact sequence of queries it intends to issue. Each query () corresponds to a specific query type defined in Definition 8. Note that the and queries are each restricted to be issued once, at most.
- 3.
- Once the game begins, allows to issue only the predefined queries in set and returns the corresponding responses.
- 4.
- After completing all queries, outputs a bit (). If , we say that wins the game. The advantage of is defined as .
Definition 10
(Freshness). Freshness is used to prevent the adversary from trivially winning the game described in the security model. We define as fresh if and only if the following boolean expression holds: where , , , and are boolean predicates defined as follows:
- 1.
- : If , then set . Otherwise, set .
- 2.
- : If the adversary has not issued query and has not issued for any stage that is a partner of (see Definition 11), then set ; otherwise, set . ensures that the group session key is not trivially accessible by the adversary and is used to capture the notion of known-key security.
- 3.
- : If the adversary has not issued query and has not issued for any stage that is a partner of (see Definition 11), prior to , and the same condition holds for all related stages with , then set ; otherwise, set . is used to capture forward secrecy.
- 4.
- : For any , if has been queried by at any time prior to , then there must exist a stage () such that
- , indicating that both stages belong to the same group and that occurred earlier than .
- The stage corresponds to a group key update for initiated via a proposal with a UPD command and successfully executed, without being influenced by the adversary.
If this condition is satisfied for all such values, set ; otherwise, set . is used to capture post-compromise security.
It should be noted that the vehicle () targeted by the query () must not serve as an administrator during the session (i.e., ).
Definition 11
(Partner Stage). Partner stages refer to a set of stages () that correspond to the stages held by all members of the same group at a specific point in time. We define the stages in to be partner stages of each other if, for any two stages (), the following conditions hold:
- 1.
- They have the same status, i.e., .
- 2.
- They are associated with the same group identifier, i.e., .
- 3.
- They share the same participant list, i.e., .
- 4.
- They correspond to the same update stage of the group, i.e., .
5.1.2. Security Proof
Theorem 1.
Assume that is a public-key encryption scheme that is secure under chosen plaintext attacks (CPAs) and that is a secure pseudorandom generator. Then, for the adversary () defined in our non-adaptive security model, the advantage of in winning the security game is bounded as follows:
where and n denotes the maximum number of users allowed in a group.
For completeness, the full proof of Theorem 1 is presented in Appendix D.
5.2. Security Analysis of the Blockchain-Based Dynamic Key Management (BcDKM) Scheme
This section evaluates the security of our proposed blockchain-based dynamic key management (BcDKM) scheme for VC systems (see Section 4). Specifically, our BcDKM scheme is primarily built upon the CGKAwAM scheme. In addition, it incorporates symmetric encryption and blockchain technology to enhance vehicle privacy and improve the manageability of vehicular clouds (VCs). Symmetric encryption is employed to construct anonymous certificates, with the private key generated and securely maintained by a trusted CA for encryption of the real identities of vehicles. Since this key is known only to the CA, the use of symmetric encryption does not introduce additional security risks. Moreover, to support decentralized VC discovery and management, blockchain technology is leveraged to record VC and vehicle-related information. As outlined in the threat model (see Section 2.2), we assume that the blockchain provides basic security guarantees. Under this assumption, even if an adversary compromises some RSUs functioning as blockchain nodes, it remains infeasible to gain control over the entire blockchain and thereby tamper with VC and vehicle data. Therefore, such attacks do not pose a substantive threat to the security of our scheme. We demonstrate that our BcDKM scheme meets the intended design goals and security requirements, as formally proven in the following theorem. For completeness, detailed proofs of all theorems are provided in Appendix D.
Theorem 2.
The proposed BcDKM scheme satisfies vehicle privacy.
Theorem 3.
The proposed BcDKM scheme satisfies known-key security.
Theorem 4.
The proposed BcDKM scheme satisfies forward secrecy.
Theorem 5.
The proposed BcDKM scheme satisfies post-compromise security.
Theorem 6.
The proposed BcDKM scheme achieves distributed VC discovery.
Theorem 7.
The proposed BcDKM scheme achieves distributed management.
Theorem 8.
The proposed BcDKM scheme achieves round optimality.
Theorem 9.
The proposed BcDKM scheme achieves large-scale VC scalability.
Theorem 10.
The proposed BcDKM scheme supports asynchrony.
6. Performance Analysis
In this section, we comprehensively evaluate the performance of our proposed BcDKM scheme from three perspectives. First, in Section 6.1 (Functional Comparison), we compare the functional characteristics of our scheme with those of several related key management schemes. Next, in Section 6.2 (Computation and Communication Overhead), we provide a theoretical analysis and comparison of the computational and communication costs between our scheme and the benchmark schemes. Finally, in Section 6.3 (Simulation), we conduct simulations to validate the efficiency and practicality of our scheme.
6.1. Functional Comparison
In this section, we compare our scheme with several representative works, focusing on whether they meet the design goals outlined in Section 2.2. Specifically, our primary contribution lies in designing the CGKAwAM group key agreement scheme, and building on this foundation we further develop the BcDKM key management scheme for VC systems. Therefore, when selecting comparison schemes, we primarily consider the representative schemes discussed in Section 1.1 that are either designed for VC systems or serve as potential solutions from different categories of GKM schemes. Specifically, we select AGKA [17], ER-CGKA [22], TGKA [12], and NIGKA [15] as representative GKA-based GKM schemes; GKD [26] as a representative GKD-based GKM scheme; and BcGKM [28] as a recently proposed blockchain-based GKM scheme. AGKA [17] is a bilinear pairing-based group key agreement scheme for vehicular networks, but it requires the group size to be fixed during initialization, which limits scalability. ER-CGKA [22] is built on the CGKA scheme for vehicular scenarios but lacks administrator-driven group management. TGKA [12] is a classical tree-based group key agreement that requires multiple rounds of interaction when group membership changes, resulting in lower communication efficiency. NIGKA [15] is a representative non-interactive group key agreement but only supports static groups with fixed membership. GKD [26] is a key distribution-based scheme for vehicular networks, but it suffers from inherent centralization issues. BcGKM [28] is a recently proposed blockchain-based key management scheme for VCs; however, its key management lacks asynchronous capabilities.
In Table 1, we compare the features and security properties of the selected schemes, focusing on the following aspects: vehicle privacy, known-key security, forward secrecy, post-compromise security, distributed VC discovery, distributed management, round optimality, and large-scale VC scalability (as described in Section 2.2). In the Table 1, the “✓” symbol indicates the feature is supported, and “×” indicates it is not supported.
Table 1.
Comparison of features with those reported in related works.
As shown in Table 1, all schemes satisfy the fundamental requirement of known-key security. However, TGKA and NIGKA focus solely on cryptographic constructions, without explicit consideration of VC scenarios, and, therefore, do not support vehicle privacy. Only ER-CGKA and our scheme achieve forward secrecy and post-compromise security under active adversaries. In addition, only BcGKA and our scheme leverage blockchain technology, enabling RSUs to act as blockchain nodes for distributed VC discovery; however, only our scheme supports distributed management. GKD and BcGKA require multiple rounds of online interaction for key establishment and updates, failing to achieve round optimality. In contrast, the other schemes require, at most, one round of interaction and inherently support asynchronous operations. Moreover, only ER-CGKA and our scheme exhibit logarithmic computational complexity with respect to the number of VC members, thereby achieving large-scale VC scalability. In summary, our proposed scheme is the only one that fulfills all the desired properties.
6.2. Computation and Communication Overhead
6.2.1. Computation Overhead
In this section, we compare our proposed BcDKM scheme with several recently introduced schemes designed for VC systems, including GKD [26], AGKA [17], and BcGKA [28], as they share similar design goals and requirements. Table 2 and Table 3 present a comparison of the total computation overhead incurred by all members during the VC Initialization, Join, Remove, and Update phases.
Table 2.
Computation overheads (I).
Table 3.
Computation overheads (II).
To facilitate a clearer comparison of computation overheads, we define the following notations and assumptions. We assume that the VC contains N vehicles. We also denote the time costs of various cryptographic operations as follows: for modular exponentiation, for modular addition, for modular multiplication, for a hash function, and for a pairing operation. Since both our schemes employ a public key encryption scheme, we instantiate the PKE component using the ElGamal encryption scheme [33]. Accordingly, the computational cost of a single encryption operation is estimated as , while the decryption cost is . In general, the cost of a pairing operation () significantly exceeds that of other cryptographic operations. It is followed by modular exponentiation , while the remaining operations (e.g., modular addition and hash functions) incur relatively lower computation overhead.
As shown in Table 2 and Table 3, in the VC initialization phase, our BcDKM scheme achieves the lowest computation overhead of , while GKD, AGKA, and BcGKA incur significantly higher costs. Although the GKD scheme exhibits relatively low computation overhead in the VC management phase, it requires for the Join phase and for the Remove and Update phases. However, it lacks essential security guarantees, such as forward secrecy and post-compromise security. In addition, the AGKA scheme consistently incurs high computational costs across all phases due to its reliance on a large number of pairing operations (), which are substantially more expensive than other cryptographic primitives.
6.2.2. Communication Overhead
In this section, we compare the communication overhead of our BcDKM scheme with that of GKD [26], AGKA [17], and BcGKA [28]. Table 4 summarizes the number of communication rounds and total messages exchanged by all members in a VC during the VC Initialization, Join, Remove, and Update phases. Here, we define one communication round as a single broadcast message sent by a user to all other members in a VC. As shown in Table 4, our scheme achieves optimal communication efficiency in all phases, requiring only one communication round and total messages per phase, which is on par with optimal schemes such as AGKA. In contrast, GKD and BcGKA incur higher communication overhead in the VC Initialization phase.
Table 4.
Communication overhead.
6.3. Simulation
In this section, we first evaluate the computational overhead of cryptographic operations employed in our scheme, followed by a comparative analysis of the overall runtime efficiency against representative existing schemes. We then assess the gas consumption incurred by the smart contracts used in our scheme to demonstrate its practical feasibility on blockchain platforms. Finally, we simulate the message transmission latency of our scheme under vehicular network scenarios.
6.3.1. Computational Efficiency Evaluation
To evaluate the runtime efficiency of the proposed scheme in a vehicular system, we employed a laptop equipped with an AMD Ryzen 7 4800H 2.90 GHz CPU and 16 GB of memory, running Ubuntu 22.04 OS, as a simulation of the in-vehicle environment. All cryptographic operations were implemented in C/C++ using the Miracl C/C++ library [34]. We adopted the finite-field Diffie–Hellman parameters (ffdhe2048) from RFC 7919 [35] to evaluate the computational costs of , , and . For pairing operations (), we used BN curves with 128-bit security. The SHA-256 hash function was used to measure the execution time of hash operations, denoted as . The average computation times of these basic operations were obtained through multiple experimental runs and are summarized as follows: ms, ms, ms, ms, and ms.
In Figure 4, we compare the computation time of our proposed BcDKM scheme with that of GKD [26], AGKA [17], and BcGKA [28] across the four respective phases. Specifically, we evaluate the execution time overhead under varying VC member sizes of 20, 40, 60, 80, and 100. As illustrated in the figures, our scheme and BcGKA exhibit lower computational overhead in the VC initialization phase, whereas GKD and AGKA incur significantly higher costs. Although the GKD scheme shows relatively low overhead during the Join, Remove, and Update phases, it lacks essential security properties, as discussed in Section 6.2. In contrast, our scheme is able to complete all four phases, including VC initialization, Join, Remove, and Update, within 1 s, even when the VC size reaches 100 members. These results demonstrate the practical efficiency and effectiveness of our proposed scheme.
Figure 4.
Execution time of different phases: (a) VC initialization; (b) Join; (c) Remove; (d) Update.
To further assess the practicality of our scheme in vehicular systems, we evaluate its energy consumption. The AMD Ryzen 7 4800H 2.90 GHz CPU has a thermal design power (TDP) of 45 W. The energy consumption during the VC initialization phase, which is the most computationally demanding phase of our scheme, is estimated by multiplying the measured execution time by the assumed power. Figure 5 presents the energy consumption for different VC sizes, reported in joules (J).
Figure 5.
Energy consumption in the VC initialization phase.
6.3.2. Smart Contract Overhead Evaluation
We implemented the VIDSC and VCSC smart contracts described in Section 3.2 using Solidity version 0.8.26 and deployed them on a local Ethereum blockchain instance simulated via Remix [36]. The gas consumption for each contract method is summarized in Table 5. The “Deploy” method represents the default cost of deploying each contract. For the VIDSC contract, the deployment consumes 504,155 gas, and the Upload method requires 91,498 gas to store the information of a registered vehicle intending to join a VC during the preparation phase of our scheme. The VIDSC contract does not include the Update or Return method, as these functions are not applicable in this contract. In the case of the VCSC contract, the deployment consumes 1,246,805 gas, under the assumption that each instance manages a VC comprising up to 100 vehicles. The Upload method, used to submit proposal messages, incurs a cost of 185,560 gas per invocation. The Update method, which updates the status of a proposal message, consumes 29,618 gas, while the Return method, which retrieves unprocessed proposal messages matching specific commands, requires 25,193 gas. These two methods are specific to the VCSC contract and are not used in VIDSC.
Table 5.
Gas Consumption.
6.3.3. Network Simulation
To evaluate the message transmission latency of the proposed scheme, we conduct network-level simulations using the NS-3 platform (version 3.43) [37]. The simulations are executed on a laptop equipped with an AMD Ryzen 7 4800H 2.90 GHz CPU and 16 GB of memory, running Ubuntu 22.04 OS. The simulated scenario covers a km2 network area, where dynamic nodes (simulating vehicles) exchange messages with static nodes (simulating RSUs) over a wireless channel. The communication range of the nodes is set to 400 m, and the channel bandwidth is limited to 6 Mb/s. Dynamic nodes broadcast messages every 100 ms, with mobility patterns randomly generated at an average speed of 50 km/h.
According to our scheme, the application-layer messages exchanged in the network include Proposal messages and Control messages. The maximum size of a Proposal message is approximately 150 bytes, while that of a Control message is about 200 bytes. The message exchange process required for group establishment and dynamic management is outlined as follows. First, a dynamic node (member) sends a Proposal message to a static node. The static node records the message and notifies the corresponding dynamic node (administrator) to process it and generate the associated Control messages, which are then broadcast to all members. Let denote the latency of a Proposal message from a dynamic node to a static node. Let denote the latency of a Proposal message from a static node to a dynamic node. Let denote the latency of a Control message exchanged between dynamic nodes. The experimental results indicate that ms, ms, and ms, demonstrating that the message transmission delays in our scheme remain within acceptable limits. These measurements allow us to assess the time required for each phase of the scheme under near-realistic wireless communication conditions.
7. Conclusions
In this paper, we proposed a blockchain-based dynamic key management scheme, BcDKM, tailored for VSNs. To support secure and efficient group communication in highly dynamic VC systems, we introduced CGKAwAM, a lightweight extension of the CGKA scheme that enables administrator-driven group management. By integrating CGKAwAM with blockchain technology and smart contracts, the BcDKM scheme achieves decentralized VC discovery/management and asynchronous key updates. We formally proved that the scheme satisfies essential security properties, including key independence, forward secrecy, post-compromise security, and vehicle privacy. Experimental evaluations demonstrated that BcDKM maintains low computational and communication overheads, even for large-scale VCs, and achieves a practical balance between security and performance. These results validate the feasibility and effectiveness of our proposed schemes.
Author Contributions
Design of scheme, creation of security models, writing—initial draft, formal analysis, and Writing—review and editing, M.Z. and L.Z.; design of scheme, design of experiments, writing—initial draft, writing—review and editing, R.M. All authors have read and agreed to the published version of the manuscript.
Funding
This work was supported, in part, by the NSF of China under Grant No. 62372177 and by the Open Research Fund of Engineering Research Center of Software/Hardware Co-design Technology and Application, Ministry of Education (East China Normal University).
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
No data were used to support this study.
Conflicts of Interest
The authors declare no conflicts of interest.
Appendix A
Definition A1
(CPA Security). A PKE scheme is said to be CPA-secure if, for any probabilistic polynomial-time (PPT) adversary (), the advantage of winning the following game against a challenger () is negligible:
- 1.
- runs and and sends the and public key () to .
- 2.
- outputs two equal-length messages .
- 3.
- chooses a random bit (), computes the challenge ciphertext (), and sends to .
- 4.
- outputs a guess bit ().
An adversary () wins the game if . The advantage of in winning the game is defined as
Definition A2
(PRG Security). A PRG is said to be secure if, for any PPT adversary (), the advantage of winning the following game against a challenger () is negligible:
- 1.
- chooses a random bit ().
- 2.
- If , returns to for a uniformly random ; otherwise, it returns a uniformly random value () to .
- 3.
- outputs a guess bit ().
wins the game if . The advantage of in winning the game is defined as
Appendix B
| Algorithm A1 |
|
| Algorithm A2 |
|
| Algorithm A3 |
|
Appendix C
| Algorithm A4 Vehicle Identity Smart Contract (VIDSC) |
|
| Algorithm A5 Vehicular Cloud Smart Contract (VCSC) |
|
Appendix D
Proof of Theorem 1.
Our security proof follows the game-based technique for group key management in [21], in which security is analyzed by game hopping through a sequence of games.
Specifically, we consider a sequence of security games (), all defined over the same probability space. The first game () corresponds to the original game, which models the interaction between the adversary () and the challenger () under the non-adaptive security model (see Definition 9). The last game () corresponds to the ideal game, which models ’s interaction with an ideally hybrid game that reveals no secret information.
At the beginning of the proof, the challenger () starts from and hops to a sequence of hybrid games, each obtained by making a slight modification to the previous one. This process continues until we reach the final game (), in which the adversary () cannot succeed with a probability non-negligibly greater than . For each hop, the view of remains computationally indistinguishable between adjacent games. In other words, each hop introduces only a minimal change, and the two neighboring games are computationally indistinguishable under the CPA and PRG security assumption (see Definitions A1 and A2).
Game 0. Let Game 0 to be the security game played between and as described above (see Definition 9). This game is described as follows:
- 1.
- Before begins simulating the security game, it chooses a random bit ().
- 2.
- Let be the sequence of queries issued by the (non-adaptive) adversary ().
- 3.
- Once the security game begins, allows to issue only the predefined queries in the query set () and returns the corresponding responses (see Definition 8). Since we assume is a non-adaptive adversary, the target group chosen by is fixed in advance. Considering the targeted group associated with the query set (), we describe the execution of the query set issued by by as follows:
- Initialization: The first query () must be the query, which initializes the system parameters and may be issued, at most, once. Subsequently, a subset of queries in , including , is executed to initialize the users. After the system parameters are generated and the users are initialized, the query is executed to initialize the target group for , and this query may also be issued, at most, once.
- Execution: The following queries in are then executed, allowing to interact with the targeted group. These queries include , , , , and .
- Challenge: Finally, the last query () must be the query. This query can be issued, at most, once and must not output ⊥.
- 4.
- After completing all queries, outputs a bit ().
Let denote the PBT consisting of all nodes generated by the latest session key computation completed by user up to and including the target session () at stage t, and let d denote the height of the PBT. Let be the advantage of is winning in Game j. It should be clear that
Game j This game is identical to Game , except that we perform a series of modifications to the PBT (), which has a height of d, associated with the target session () at stage t.
In each game, we replace the outputs of the PRG in one layer of nodes in the PBT with random values, and we also replace the ciphertexts, which are originally generated using the public keys stored at those nodes, with fake, random ciphertexts. These replacements are performed in a bottom-up manner, starting from the leaf nodes and proceeding upward, layer by layer. Specifically, in each hybrid game (j ()), we target exactly one layer of the PBT for the replacements described above. Since the leaf layer is defined as level 1 (see Definition 5), Game performs replacements at the leaf nodes, while Game performs replacements at the root node, which resides at level d. Thus, . After applying this series of replacements, the final hybrid game () no longer contains any secret values related to the session () at stage t, resulting in no advantage for , i.e., .
Throughout this process, the difference between hybrid Game j and Game is limited to the replacement of either PRG outputs or ciphertexts in a single layer of the PBT. Under cryptographic CPA and PRG security assumptions (see Definitions A1 and A2), such replacements should be computationally indistinguishable to any adversary .
To formalize this, we construct a reduction from the ability of to distinguish between two adjacent hybrid games to breaking the cryptographic CPA and PRG security assumptions. Specifically, if can distinguish between Game j and Game , then we can construct an algorithm that invokes as a subroutine to break either the PRG security assumption or the CPA security assumption. In particular, if the change between the games involves replacing PRG outputs, we construct an algorithm () that invokes as a subroutine to break the PRG security assumption; if the change involves replacing ciphertexts generated under the public keys stored in the PBT, we construct an algorithm () that invokes as a subroutine to break the CPA security assumption of the PKE scheme. We describe the construction of and as follows.
- The algorithm simulates Game j through the following procedure:
- 1.
- Query the challenger in the PRG security game defined in Definition A1 to obtain a sequence of random values .
- 2.
- Let denote the -th level of the PBT (). In this game, any query that uses the PRG to compute on the secret value () in the tuple stored in node will have its PRG output replaced with the corresponding random value ().
- 3.
- For the remainder of the execution, the simulation proceeds identically to Game and outputs the bit returned by .
We now formally analyze the simulation described above and show that it is perfect. Specifically, we prove that the views of in hybrid Game and Game j are computationally indistinguishable. Observe that the only way for to distinguish between the two hybrid games is by distinguishing a sequence of random values () from those generated by the PRG . Since the queries issued by must satisfy the freshness (see Definition 10), it follows from conditions and with respect to freshness that is not allowed to obtain any secret values held by users of the group associated with the target session () at stage t. In particular, this implies that the secret values stored in node of the PBT at level j remain unknown to . We conclude that the above simulation is correct, without accessing the seed of the PRG security game.Hence, if can successfully distinguish between Game and Game j, then can leverage the advantage of to break the security of the PRG across multiple instances of the PRG security game, reaching a contradiction. We therefore derive the following advantage bound: - The algorithm simulates Game j through the following procedure:
- 1.
- Query the challenger in the CPA security game defined in Definition A1 to obtain a sequence of public keys .
- 2.
- Let denote the -th level of the PBT (). In this game, if a query (e.g., ) involves encrypting a secret value () using the public key stored in node , the original public key in the tuple is replaced with the corresponding public key ().
- 3.
- Set and .
- 4.
- Send to the challenger in the CPA security game and receives the ciphertext ().
- 5.
- For the remainder of the execution, the simulation proceeds identically to Game and outputs the bit returned by .
The only difference between Game and Game j is that in Game j, for queries (e.g., ), the resulting ciphertexts are replaced with fake ciphertexts, whereas in Game , they are generated using the public key encryption scheme.We now formally analyze the simulation described above and show that it is perfect. Specifically, we prove that the views of in hybrid Game and Game j are computationally indistinguishable. First, the queries issued by must satisfy the freshness (see Definition 10), and it follows from conditions and with respect to freshness that is not allowed to obtain any secret values held by users of the group associated with the target session () at stage t. Since the adversary does not possess the corresponding secret keys, cannot distinguish between the public keys used in Game and those replaced in Game j with the challenge public key provided by the CPA security game. Observe that the only way for to distinguish between the two hybrid games is by distinguishing a sequence of ciphertext from those generated by the PKE scheme.We conclude that the above simulation is correct.Hence, if can successfully distinguish between Game and Game j, then can leverage the advantage of to break the security of the CPA across multiple instances of the CPA security game, reaching a contradiction. Consequently, we derive the following advantage bound:
In the Game , all PRG outputs in the PBT are replaced with uniformly random values, and all ciphertexts that were originally generated using the public keys stored in the PBT are replaced with encryptions of zero messages. These replacements eliminate any dependence on secret values throughout the tree. As a result, the view of the adversary () is completely independent of the underlying secrets. Therefore, cannot achieve any non-negligible advantage, which implies that
Recall that for each hybrid game (), where , we have the following advantage bound:
For every j, , we obtain the following:
Combined with the definition of , we derive the following:
Since , we conclude the following:
□
Proof of Theorem 2.
In the Registration phase of our BcDKM scheme, each vehicle anonymously registers with the CA and obtains a pseudonym generated by the CA, which is computed by encrypting the vehicle’s real identity using the CA’s private key. Vehicles use these pseudonyms to participate in the VC system, ensuring that only the trusted CA can link a pseudonym to a vehicle’s real identity. As a result, vehicle privacy is preserved throughout the system. □
Proof of Theorem 3.
In our BcDKM scheme, the shared group session key negotiated among vehicles acting as cloud members and the cloud administrator within the VC is generated by our CGKAwAM scheme. According to Theorem 1, any adversary characterized by the threat model described in Section 2.2 cannot compromise the security of other independent session keys, even if it obtains a session key of a specific cloud member within a particular VC. This implies that our BcDKM scheme achieves known-key security. □
Proof of Theorem 4.
Forward secrecy requires that even if a vehicle is compromised by an attacker at a certain point in time, all session keys established prior to the compromise remain confidential. In our BcDKM scheme, the shared group session keys negotiated among vehicles and the cloud administrator within the VC are derived through our CGKAwAM scheme. Since the CGKAwAM scheme has been proven to provide forward secrecy (see Theorem 1), it follows that all previously generated session keys remain secure, even if a vehicle is later compromised. Therefore, the proposed BcDKM scheme satisfies forward secrecy. □
Proof of Theorem 5.
Post-compromise security requires that if a vehicle is compromised at a certain point in time and the compromised vehicle subsequently performs a session key update that is not influenced by the attacker, then the updated session key remains confidential. In our BcDKM scheme, all session key updates are executed by the CGKAwAM scheme. As proven in Theorem 1, CGKAwAM ensures that newly updated session keys are secure, even if previous session states or keys have been compromised, provided the attacker does not control the update process. Therefore, BcDKM inherits this property from CGKAwAM and satisfies post-compromise security. □
Proof of Theorem 6.
In our scheme, each VC is associated with a dedicated VCSC smart contract, which is deployed and maintained by the cloud administrators on a distributed blockchain shared among RSUs. These contracts store essential VC metadata, including the VC identifier, administrator and member lists, and mapping information, ensuring that this data is consistently replicated and accessible across all RSUs. Consequently, vehicles entering a new area can directly obtain accurate and up-to-date VC information from the local RSU without relying on any centralized discovery platform. This distributed design removes single points of failure and significantly improves the reliability and efficiency of VC information dissemination and discovery. □
Proof of Theorem 7.
In our BcDKM scheme, the cloud administrator list (i.e., Adm) is shared among all cloud members, allowing any cloud member within a VC to submit a proposal message to any cloud administrator in the list. The administrator receiving the proposal message then executes the Commit algorithm to process it. This design introduces redundancy and eliminates the reliance on a single cloud administrator. Our BcDKM scheme preserves this feature by recording the Adm list in the VCSC smart contract of each VC. Consequently, proposal messages can be processed by any listed administrator, ensuring system continuity and resilience against individual failures. □
Proof of Theorem 8.
In our CGKAwAM scheme, all group-related proposals, including Join, Remove, and Update, are initiated by a single user through a proposal message. An administrator then processes the proposal by executing the Commit algorithm and broadcasts the resulting control messages to all relevant group members. Since this proposal-then-commit paradigm completes within a single round of message dissemination, our BcDKM scheme builds upon CGKAwAM and also achieves round optimality for both key establishment and key updating. This one-round design is particularly well-suited for VC environments that demand high responsiveness and minimal coordination overhead. □
Proof of Theorem 9.
In the CGKAwAM scheme, group key management is organized using a binary tree structure (i.e., PBT), where each user corresponds to a leaf node. This design allows for efficient operations such as key establishment and key update, with both communication and computation overhead growing logarithmically with the number of group members. Since our BcDKM scheme builds upon CGKAwAM, it inherits this scalability property, ensuring that key management remains efficient, even in large-scale VC environments. □
Proof of Theorem 10.
The CGKAwAM scheme inherently supports asynchrony, meaning that the key update process does not rely on strict message ordering or simultaneous delivery. Any user can asynchronously submit proposal messages (e.g., Join, Remove, or Update) to the group administrator. Building on this feature, our BcDKM scheme inherits the asynchronous capability of CGKAwAM, enabling vehicles to complete state updates and session key updates without requiring real-time online presence or strict synchronization. □
References
- Cao, D.; Wang, X.; Li, C.; Lv, C.; Na, X.; Xing, Y. Future Directions of Intelligent Vehicles: Potentials, Possibilities, and Perspectives. IEEE Trans. Intell. Veh. 2022, 7, 7–10. [Google Scholar] [CrossRef]
- Whaiduzzaman, M.; Sookhak, M.; Gani, A.; Buyya, R. A survey on vehicular cloud computing. J. Netw. Comput. Appl. 2014, 40, 325–344. [Google Scholar] [CrossRef]
- Boukerche, A.; Robson, E. Vehicular cloud computing: Architectures, applications, and mobility. Comput. Netw. 2018, 135, 171–189. [Google Scholar] [CrossRef]
- Wu, Q.; Zhang, L.; Yang, Y.; Choo, K.K.R. Certificateless signature scheme with batch verification for secure and privacy-preserving V2V communications in VANETs. IEEE Trans. Dependable Secure Comput. 2025, 22, 1448–1459. [Google Scholar] [CrossRef]
- Olariu, S. A survey of vehicular cloud research: Trends, applications and challenges. IEEE Trans. Intell. Transp. Syst. 2019, 21, 2648–2663. [Google Scholar] [CrossRef]
- Mekki, T.; Jabri, I.; Rachedi, A.; Ben Jemaa, M. Vehicular cloud networks: Challenges, architectures, and future directions. Veh. Commun. 2017, 9, 268–280. [Google Scholar] [CrossRef]
- Awais, S.M.; Yucheng, W.; Mahmood, K.; Akram, M.W.; Hussain, S.; Das, A.K.; Park, Y. PUF-based privacy-preserving simultaneous authentication among multiple vehicles in VANET. IEEE Trans. Veh. Technol. 2023, 73, 6727–6739. [Google Scholar] [CrossRef]
- Danquah, W.M.; Altilar, D.T. Vehicular cloud resource management, issues and challenges: A survey. IEEE Access 2020, 2020 8, 180587–180607. [Google Scholar] [CrossRef]
- Zheng, Y.; Chen, Y.; Tan, C.; Yang, Y.; Shu, C.; Chen, L. Optimization model for vehicular network data queries in edge environments. J. Cloud Comput. 2024, 13, 145. [Google Scholar] [CrossRef]
- Maurer, U.M.; Wolf, S. The diffie-hellman protocol. Des. Codes Cryptogr. 2000, 19, 147–171. [Google Scholar] [CrossRef]
- Li, J.; Wen, M.; Zhang, T. Group-based authentication and key agreement with dynamic policy updating for MTC in LTE-A networks. IEEE Internet Things J. 2015, 3, 408–417. [Google Scholar] [CrossRef]
- Kim, Y.; Perrig, A.; Tsudik, G. Group key agreement efficient in communication. IEEE Trans. Comput. 2004, 53, 905–921. [Google Scholar] [CrossRef]
- Jiang, Q.; Ni, J.; Ma, J.; Yang, L.; Shen, X. Integrated authentication and key agreement framework for vehicular cloud computing. IEEE Netw. 2018, 32, 28–35. [Google Scholar] [CrossRef]
- Joux, A. A one round protocol for tripartite Diffie-Hellman. In Proceedings of the International Algorithmic Number Theory Symposium, Leiden, The Netherlands, 2–7 July 2000; pp. 385–393. [Google Scholar]
- Khurana, D.; Rao, V.; Sahai, A. Multi-party key exchange for unbounded parties from indistinguishability obfuscation. In Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Auckland, New Zealand, 29 November–3 December 2015; pp. 52–75. [Google Scholar]
- Wu, Q.; Mu, Y.; Susilo, W.; Qin, B.; Domingo-Ferrer, J. Asymmetric group key agreement. In Proceedings of the 28th Annual International Conference on the Theory and Applications of Cryptographic Techniques, Cologne, Germany, 26–30 April 2009; pp. 153–170. [Google Scholar]
- Zhang, R.; Zhang, L.; Wu, Q.; Zhou, J. Secure channel establishment scheme for task delivery in vehicular cloud computing. IEEE Trans. Inf. Forensics Secur. 2024, 19, 2865–2880. [Google Scholar] [CrossRef]
- Zhang, L.; Meng, X.; Choo, K.K.R.; Zhang, Y.; Dai, F. Privacy-preserving cloud establishment and data dissemination scheme for vehicular cloud. IEEE Trans. Dependable Secur. Comput. 2018, 17, 634–647. [Google Scholar] [CrossRef]
- Zhang, R.; Han, W.; Zhang, L.; Wang, L.; Meng, X. Provably secure receiver-unrestricted group key management scheme for mobile ad hoc networks. Sensors 2023, 9, 4198. [Google Scholar] [CrossRef] [PubMed]
- Zhang, L. Key management scheme for secure channel establishment in fog computing. IEEE Trans. Cloud Comput. 2019, 9, 1117–1128. [Google Scholar] [CrossRef]
- Alwen, J.; Coretti, S.; Dodis, Y.; Tselekounis, Y. Security Analysis and Improvements for the IETF MLS Standard for Group Messaging. In Proceedings of the Annual International Cryptology Conference, Santa Barabara, CA, USA, 17–21 August 2020; pp. 248–277. [Google Scholar]
- Xu, G.; Yin, X.; Li, X. ER-CGKA: Efficient and robust continuous group key agreement scheme with post-compromise security forward security for IoV. PLoS ONE 2024, 19, e0307867. [Google Scholar] [CrossRef]
- Balbás, D.; Collins, D.; Vaudenay, S. Cryptographic administration for secure group messaging. In Proceedings of the 32nd USENIX Security Symposium, Anaheim, CA, USA, 9–11 August 2023; pp. 1253–1270. [Google Scholar]
- Cheng, Y.; Agrawal, D.P. An improved key distribution mechanism for large-scale hierarchical wireless sensor networks. Ad Hoc Netw. 2007, 5, 35–48. [Google Scholar] [CrossRef]
- Xu, G.; Li, X.; Jiao, L.; Wang, W.; Liu, A.; Su, C. BAGKD: A batch authentication and group key distribution protocol for VANETs. IEEE Commun. Mag. 2020, 58, 35–41. [Google Scholar] [CrossRef]
- Li, C.; Ji, S.; Zhang, X.; Wang, H.; Li, D.; Liu, H. An Effective and Secure Key Management Protocol for Message Delivery in Autonomous Vehicular Clouds. Sensors 2018, 18, 2896. [Google Scholar] [CrossRef]
- Zhang, R.; Xue, R.; Liu, L. Security and privacy on blockchain. ACM Comput. Surv. 2019, 52, 25. [Google Scholar] [CrossRef]
- Li, X.; Yin, X. Blockchain-based group key agreement protocol for vehicular ad hoc networks. Comput. Commun. 2022, 183, 107–120. [Google Scholar] [CrossRef]
- Royo, S.; Ballesta-Garcia, M. An overview of lidar imaging systems for autonomous vehicles. Appl. Sci. 2019, 9, 4093. [Google Scholar] [CrossRef]
- Fan, L.; Wang, J.; Chang, Y.; Li, Y.; Wang, Y.; Cao, D. 4D mmWave radar for autonomous driving perception: A comprehensive survey. IEEE Trans. Intell. Veh. 2024, 9, 4606–4620. [Google Scholar] [CrossRef]
- NVIDIA. DRIVE AGX Orin Developer Kit Overview. 2025. Available online: https://developer.nvidia.com/drive/agx (accessed on 5 September 2025).
- Nguyen, H.; Guan, Y.L. DSRC Performance Under the Adjacent Channel Interference of Cellular-Based V2X at 5.9 GHz Band. In Proceedings of the IEEE 99th Vehicular Technology Conference, Singapore, 24–27 June 2024; pp. 1–5. [Google Scholar]
- Tsiounis, Y.; Yung, M. On the security of ElGamal based encryption. Public Key Cryptogr. 1998, 1431, 117–134. [Google Scholar]
- MIRACL Ltd. MIRACL Cryptographic SDK: Multiprecision Integer and Rational Arithmetic Cryptographic Library. 2025. Available online: https://github.com/miracl/MIRACL (accessed on 5 September 2025).
- Gillmor, D. Negotiated Finite Field Diffie-Hellman Ephemeral Parameters for Transport Layer Security (TLS). Available online: https://www.rfc-editor.org/rfc/rfc7919 (accessed on 5 September 2025).
- Remix. 2025. Available online: https://remix.ethereum.org (accessed on 5 September 2025).
- NS-3 Network Simulator. 2025. Available online: https://www.nsnam.org (accessed on 5 September 2025).
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2025 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).