You are on page 1of 9

SPECIAL SECTION ON BIG DATA TECHNOLOGY AND APPLICATIONS

IN INTELLIGENT TRANSPORTATION

Received August 11, 2019, accepted September 4, 2019, date of publication September 16, 2019, date of current version October 7, 2019.
Digital Object Identifier 10.1109/ACCESS.2019.2941507

A Blockchain-Based Byzantine Consensus


Algorithm for Information Authentication
of the Internet of Vehicles
WEI HU, YAWEI HU , WENHUI YAO , AND HUANHAO LI
School of Economics and Management, Shanghai University of Electric Power, Shanghai 200090, China
Corresponding author: Yawei Hu (99030411@qq.com)
This work was supported by the National Social Science Foundation of China under Grant 19BGL003.

ABSTRACT This paper attempts to solve the security problems in communication, consensus-making and
authentication of nodes in the Internet of vehicles (IoV) for intelligent transport. Considering the defects
of the central node and service complexity in the IoV, the blockchain was integrated with the IoV to
create a decentralized mechanism for communication and consensus-making. In the architecture of the
blockchain-based IoV, the Byzantine consensus algorithm based on time sequence and gossip protocol
is used to complete information communication and consensus authentication, which not only ensures
communication security, improves the consensus efficiency of nodes, but also improves the fault tolerance
of the algorithm. The experimental results show that our algorithm outshined the traditional authentication
method in information security and consensus efficiency of the IoV. The research findings provide a reference
solution to the authentication problems in the IoV for intelligent transport.

INDEX TERMS Blockchain, consensus algorithm, intelligent transport, Internet of vehicles (IoV).

I. INTRODUCTION Currently, the information security and authentication


The Internet of Vehicles (IoV) is an inevitable convergence of of the IoV are mainly protected by two mechanisms,
the Internet and the Internet of Things (IoT) that provides con- namely, the trusted enhancement architecture of mobile ter-
venient and diversified services for intelligent transport [1]. minals based on embedded security modules [4], and the
Based on intra-vehicle network, inter-vehicle network and identity-based encryption mechanism [6]. Under the former
vehicle-mounted mobile Internet, the IoT is essentially an mechanism, the vehicles are considered mobile terminals, and
integrated network that supports wireless communication and integrated with security module to form a trusted enhance-
information exchange through specific protocols and data ment architecture, which assists in identity authentication
standards, with the aim to achieve intelligent traffic control, and authorization. The embedded security module mainly
intelligent vehicle control and intelligent dynamic services. consists of a trusted platform module and a tamper-proof
With the technical and industrial development of the IoV, device. On the upside, the module can modularize basic
it is increasingly important to guarantee the safety of this security functions (e.g. professional cryptographic security
integrated network. Traditionally, the IoV data are all stored engine and security algorithm), and speed up the computation
in a central node, which is the hub for the communication by hardware [5]. On the downside, the module is very costly
between all the other nodes. This storage pattern poses a to manufacture, and its security performance may vary with
serious threat to the information security of the IoV. The the different standards adopted by manufacturers.
attack on the central node will immediately paralyze all the The identity-based encryption mechanism basically ver-
other nodes in the network. This calls for new methods to ifies whether the terminal has the correct password or
ensure the information security and authentication in the key. Under this mechanism, the public key infrastructure
IoV [2], [3]. is less dependent on certificates, reducing the overhead of
complex certificate management and the burden on wire-
The associate editor coordinating the review of this manuscript and less communication. For most authentication protocols, the
approving it for publication was Sabah Mohammed. encryption/decryption or signature verification is constructed

This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see http://creativecommons.org/licenses/by/4.0/
VOLUME 7, 2019 139703
W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

based on the highly secure bilinear mapping theory [7]. Refer- without mutual trust; the nodes cannot spoof each other under
ence [8] designs a safe and efficient batch authentication plan the rule of the blockchain. The traceable feature means no
for the IoV, in the light of the short key, fast speed and high information in the blockchain is generated without basis; any
security of the elliptic curve cryptosystem. Reference [9] puts block can access the information about the previous block,
forward a batch anonymous authentication method, drawing for all blocks are linked up chronologically in the blockchain.
on the properties of bilinear pairs on elliptic curves. Ref- The smart contracted feature refers to the fact that, the agree-
erence [10] develops a dynamic trust model based on the ment between the transaction parties in the blockchain will be
messages and behaviors of vehicles, which realizes accurate executed automatically by the prewritten code; the execution
trust evaluation in real time and senses malicious nodes in an is immune to any intervention, making the agreements easier
active manner. to conclude and more efficient and less costly to execute.
The existing studies have the following defects: (1) The The blockchain system consists of six layers, namely,
research has been focused on the security of the central the data layer, the network layer, the consensus layer,
node, without changing the structure of the IoV; (2) The the incentive layer, the contract layer and the application
authentication technologies and structures are far from layer [13]. The architecture of the blockchain system is
diverse; (3) The trust computation has poor real-time perfor- described in Figure 1 below.
mance and accuracy.
In the light of the above, this paper integrates the
blockchain with the IoV, shedding new light on the secu-
rity and authentication of the IoV for intelligent transport.
Firstly, the IoV nodes were divided into the vehicle-mounted
communication nodes (VCNs) and roadside communication
nodes (RCNs). Then, a Byzantine consensus algorithm was
established based on time sequence and gossip sequence
(BCA-TG) to guarantee the security and consensus authen-
tication of the information in the IoV. The experimental anal-
ysis shows that the blockchain-based BCA-TG algorithm can
authenticate consensus in the IoV efficiently and rapidly with
high fault tolerance.
The remainder of this paper is organized as follows:
Section 2 introduces the blockchain and the IoV and discusses
the fitness between the two factors; Section 3 illustrates the
overall architecture of blockchain-based IoV, explains the
communication and update of VCNs and RCNs under
the gossip protocol, and describes the authentication of IoV
information by the BCA-TG algorithm; Section 4 demon-
strates the fault tolerance, convergence speed and scala-
bility of the BCA-TG algorithm; Section 5 experimentally
verifies the authentication process under specific scenarios;
Section 6 puts forward the main conclusions.

II. BLOCKCHAIN AND INTERNET OF VEHICLES FIGURE 1. The architecture of the blockchain system.

A. BLOCKCHAIN
Blockchain, a revolutionary technology in the Internet era, As shown in Figure 1, the data layer encapsulates the
adopts an underlying decentralized collaboration mechanism underlying data blocks and the related techniques like data
to create a distributed ledger. The data are linked up by encryption and timestamping; the network layer consists
chronologically generated blocks, forming a data structure of the mechanisms for distributed networking, data prop-
suitable for any decentralized trust network [11], [12]. The agation and data verification; the consensus mechanism
unique formation mechanism has blessed the blockchain with mainly includes the various consensus algorithms for net-
such features as decentralized, trust-free, traceable and smart work nodes; the incentive layer integrates economic factors
contracted. into the blockchain system, including the issuance and dis-
The decentralized feature is demonstrated by the absence tribution mechanisms of economic incentives; the contract
of central node in the network; all nodes have equal status, layer contains various scripts, algorithms and smart con-
and the failure of any node will not affect the system oper- tracts, making the blockchain programmable; the application
ation. Trust-free means all data operations in the system are layer covers various application scenarios and cases of the
open and transparent; internodal communication is possible blockchain.

139704 VOLUME 7, 2019


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

B. THE IOV The blockchain is a decentralized and trust-free technique,


Relying on cutting-edge information communication tech- in which all data are open and transparent. Coupled with the
niques, the IoV is a well-connected network between blockchain, the IoV can support normal communication with
vehicles and other vehicles, roads, people and service high data security.
platforms [14], [15]. The full connectivity promotes the intel-
ligence and autopilot ability of vehicles, revolutionizes the III. IOV INFORMATION AUTHENTICATION
industries of vehicles and transport services, improves the BASED ON IMPROVED BCA
traffic efficiency and driving experience. Thanks to the IoV, A. THE ARCHITECTURE OF BLOCKCHAIN-BASED IOV
the users can easily access safe, advanced and comfortable Figure 2 shows the architecture of our blockchain-based IoV,
all-round services at a low price. The development of the IoV which integrates the VCNs and RCNs into the blockchain
has fundamentally changed our lives, exerting a significant cloud platform, forming a systematic network.
impact on the transport industry and information industry.
The IoV has mainly been applied in driver assist
safety, traffic management and in-vehicle infotainment. The
applications of driver assist safety involve lane change
assistance, intersection collision avoidance, accident broad-
casting, emergency or event warning, etc. The traffic
management applications mainly include non-stop electronic
toll collection, intersection management, collaborative navi-
gation control, bypass or congestion warning, etc. The typi-
cal applications of in-vehicle infotainment are news, videos,
music, games, etc.
The IoV has many features that are unique to itself [16]:
(1) The fast-moving vehicles have a high requirement on the
FIGURE 2. The architecture of the blockchain-based IoV.
communication between vehicles and between vehicle and
roadside facilities. The network topology is highly dynamics,
and difficult to stabilize. (2) The vehicle motion is constrained As shown in Figure 2, the VCN is a mobile node installed
by the roads, i.e. a vehicle must always travel along the road on a vehicle. It can transmit the current situation of the vehicle
direction. The driving speed is also affected by the other to the other nodes, and receive information from the other
vehicles and the road conditions. Therefore, the position, nodes. However, the VCN has a weak computing and storage
moving direction and speed of the vehicles in the IoV are power. The RCN is a fixed node installed on a roadside base
predictable to a certain extent. (3) The moving vehicles can station. Similar to the VCN, the RCN can share information
power the on-board equipment continuously, ensuring their with the other nodes in the network in a timely manner,
endurance performance. (4) Most vehicles have installed the but it enjoys strong computing and storage abilities. Hence,
GPS module, which can determine the location and speed the RCN was selected as the consensus-making node in the
of the vehicle and sync up the time with Internet servers. IoV. The blockchain cloud platform stores all the data in the
These functions greatly benefit the information exchange IoV. To ensure information correctness, any data generates
between vehicles. (5) The IoV can link up all the vehicles by the VCN or the RCN must win the consensus of the RCN
on an expressway or in a city into a large network. The before forming a block to be linked into the blockchain. The
information being communicated in the network fall into data will be broadcasted across the network, providing the
many categories, such as driving safety (slowdown and over- reference for the decision-making of other nodes. Without
taking), speed advises (speed control and green light opti- the consensus procedure, malicious VCN or RCN can issue
mal speed) and service information (local entertainment and incorrect information and spread it to the other nodes in
tourism). the IoV, posing a great danger to the people using the IoV
information.
C. FITNESS ANALYSIS
The IoV is the research hotspot of modern intelligent trans- B. COMMUNICATION AND UPDATE OF VCNS AND
port. Being a type of Internet of Things (IoT), the IoV is RCNS UNDER THE GOSSIP PROTOCOL
naturally centralized and prone to attacks on the central node. 1) THE GOSSIP PROTOCOL
The threat of the attacks is magnified by the unique features The gossip protocol mimics the spread of rumors among
of the IoV, such as low security and high transparency in villagers. Once knowing a rumor, a villager tends to share
communication. There is a major contradiction between the it with his/her acquaintances, who in turn will share the
centralized mode, which increases the risk of data hacking, rumor with their acquaintances. Sooner or later, the rumor
and the information sharing demand to optimize the traffic will spread across the entire village [17], [18].
system. Thus, it is imperative to ensure the data security of Under the gossip protocol, each node in a limited network
the IoV. communicates randomly with its neighbors, and eventually

VOLUME 7, 2019 139705


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

all network nodes will have the same information. The pro- of the node ranked in chronological order. Note that  =
tocol is implemented in the following steps: Node A, after its {(t1 , i1 ), (t2 , i2 ), . . . , (tn , in )} and t satisfies tj < tj+1 (j =
information is updated, sends the updated information to its 1, 2, . . . , n − 1).
neighbors (e.g. node B); if its information is not updated for The node time sequence is an important basis for the
a period of time, node A will request a neighbor for passive consensus algorithm to judge if a node can enter or exit the
information update, and the neighbor will send its latest network. The entry and exit of nodes must be controlled well.
information to node A upon receiving the request. The above Otherwise, many nodes may enter or exit the network simul-
process is repeated until all network nodes have updated their taneously, exceeding the channel tolerance and undermining
information. the consensus-making. To prevent this situation, thresholds
Under the gossip protocol, any node saves the information need to be set for the number of entering/exiting nodes in the
on its neighbors, and three ways are available for the commu- consensus algorithm. If this number surpasses the thresholds,
nication between any two nodes [19]: then the time window protection mechanism will initiate
(1) Push: Node A randomly selects its neighbor B as the automatically. Under this mechanism, only the first n nodes
communicatee, and sends its own information to the within the thresholds in the node time sequence can enter or
latter. Then, node B will update the local information exit the network, and the other nodes must wait for the next
according to the received information. In this case, time window. The specific flow of this mechanism is given in
node A acquires new information. Figure 3 below.
(2) Pull: Node A randomly selects its neighbor B as
the communicatee, and requests passive information
update. Then, node B will transmit the information that
node A lacks to node A. Finally, node A will update
the local information according to the received infor-
mation. In this case, node B acquires new information.
(3) Push-Pull: In the first phase, this communication mode
is the same as the Pull mode. In the second phase, node
A will transmit the information it lacks to node B. Then,
node B will update the local information according to
the received information.
The time for two nodes to have the same information
through the above modes is called a cycle. In each cycle,
the Push mode only needs to communicate once, the Pull
mode needs to communicate twice, and the Push-Pull mode
needs to communicate three times. Comparatively, the Push-
Pull has the best communication effect, because the two nodes
can have the same information in one cycle.

2) TIME SEQUENCE FIGURE 3. The flow of node entry/exit based on time sequence.
A time sequence refers to a series of information or data
of an object arranged in chronological order [20]. In our
daily life, the common time sequences include the daily 3) PUSH-PULL COMMUNICATION AND UPDATE
price of goods, the stock index and the number of tourists BASED ON THE GOSSIP PROTOCOL
in scenic spots. Depending on the number of information The Push-Pull communication and update of RCNs and
types, time sequences can be divided into unit time sequence VCNs will generate three types of information: local infor-
and n-variate time sequence (n≥2). The former only records mation (LI), update information (UI) and consensus infor-
one type of information of the object at a time, while the mation (CI). The LI is the information to be agreed upon in
latter records n types of information of the object each time, the IoV. The UI is a 1D continuously updated vector formed
creating a multi-dimensional sequence. through the communication between n RCNs; each element
The unit time sequence is more common than the n-variate in the vector corresponds to the LI of different nodes. The CI
time sequence. Each information unit can be abstracted into is the vector element taking up more than half of the UI.
a 2D vector (t, i), where t is the time to record information Under the gossip protocol, the RCNs of the IoV participate
and i is the information content. On this basis, the node time in the consensus-making. The initial UI of each RCN consists
sequence for consensus algorithm can be defined as: of the corresponding LI and n-1 null values. Each pair of
Definition 1 Node Time Sequence: Let t be the time for a nodes have the same UI after update, for the UI of each
node to enter and exit the network and i be the information RCN is updated by the Push-Pull mode. After the first pair
of the node upon the entry and exit. Then, the node time of RCNs have updated their information, the updated UI will
sequence  can be defined as the set of the 2D vectors be used to update the information of another pair of RCNs in

139706 VOLUME 7, 2019


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

The transaction information being issued should contain the


transaction itself, the length b of the current blockchain and
the last submitted CI. Formula (1) guarantees that all RCNs
will take turns to release information.
In the blockchain-based IoV, the first step of consensus-
making on node information is to judge the occurrence of
node entry/exit. If there are nodes entering/exiting the net-
work, the node entry/exit should be implemented based on
time sequence. The next step is the judge if the information
for consensus-making is generated by an RCN. If yes, then
the information should be released by that node. Otherwise,
the node to release the information should be determined by
formula (1).
The released information will be transmitted via the P2P
network in the blockchain to the RCN nodes involved in
consensus-making in the IoV. These nodes will communi-
cate and update their information under the Push-Pull mode
based on the Push-Pull mode, producing the UI of each
node. Based on the UI, the success of consensus-making
is judged by whether more than half of the outputted UI
belongs to the same vector element. If the consensus has
been reached and the CI is correct, the CI will be saved as
a block to join the blockchain; otherwise, another node will
be selected to release the information. The specific process of
the consensus-making is illustrated in Figure 5 below.
To sum up, the proposed BCA-TG algorithm is imple-
mented in the following steps:
FIGURE 4. Push-Pull communication and update based on the gossip
Step 1. Judge if there are any nodes entering/exiting the
protocol. network. If yes, implement the node entry/exit process based
on time sequence, and output the nodes entering/exiting the
network.
the network. This process will be repeated until all network Step 2. Judge whether the information for consensus-
nodes have the same UI. Then, the CI can be derived from the making is generated by an RCN or a VCN. If it is generated
last updated UI. The specific process of communication and by an RCN, then it should be released directly by the RCN;
update is shown in Figure 4. otherwise, the information should be sent to an RCN for
Compared with the traditional communication mode, release, and the RCN should be determined by formula (1)
the above mode only needs one cycle to make two nodes based on the length of the current blockchain, the number
have the same information, and enables the nodes to reach of consensus-making and the number of consensus-making
the consensus information CI based on their own UIs. Hence, nodes.
this communication mode greatly speeds up the convergence Step 3. The released information is transmitted via the P2P
and simplifies the computation of the consensus algorithm. network to all consensus-making nodes in the IoV.
Step 4. The nodes communicate with each other and update
C. AUTHENTICATION OF IOV INFORMATION BASED ON their own information under the Push-Pull mode based on the
IMPROVED BYZANTINE CONSENSUS ALGORITHM gossip protocol. Note that the latest node UI should be used
In the blockchain-based IoV, if the information for consensus- for communication and update.
making is generated by an RCN, then it should be released by Step 5. After the nodes have completed information
the RCN; if this information is generated by a VCN, then it exchange, judge whether more than half of outputted UI
should be sent to an RCN and be released by that RCN. The belongs to the same vector element, that is, whether the CI
RCN to receive the VCN’s information can be determined by: has been reached successfully. If yes, go to Step 6; otherwise,
return to Step 2.
a = (b + c)%N (1)
Step 6. The consensus information CI is validated against
where a is the serial number of the RCN to receive the the initially issued information. If correct, go to Step 7;
information; b is the length of the current blockchain; c otherwise, return to Step 2.
is the number of consensus-making when the blockchain Step 7. The final consensus result is saved as a block to
is of the length b; % is the remainder; N is the num- join the blockchain, and sent to all RCNs and VCNs timely,
ber of nodes currently involved in consensus-making. providing a reference for drivers and relevant personnel.

VOLUME 7, 2019 139707


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

If n is even, then fmax = n2 − 1; if n is odd, then


fmax = n−12 .
Inference 1 The BCA-TG algorithm outperforms the ordi-
nary Byzantine consensus algorithm in convergence speed.
Proof: In the ordinary Byzantine consensus algorithm,
the information exchange between nodes is highly irregu-
lar, and it takes multiple exchange cycles for two nodes to
have the same information, dragging down the exchange effi-
ciency. The information homogenization often requires round
after round of consensus-making, especially if the network
contains a huge number of nodes. In the BCA-TG algorithm,
however, each node searches for the nodes in its view before
exchanging information, and follows the Push-Pull mode
based on the gossip protocol in communication and update.
Two nodes can have the same information in one cycle.
In a few rounds of communication, all network nodes will
share the same correct information, i.e. reaching a consensus.
Therefore, the BCA-TG algorithm enjoys a fast convergence,
especially in a network of multiple nodes.
Theorem 2 The BCA-TG algorithm has good scalability.
Proof: Upon entering the network, a new node will
immediately search for its neighbors to generate its own view,
and request the neighbors to send the blockchain information
needed for updating its information. Once a node exits the
network, it will send an exit message to all the nodes in
its view. The entry/exit information is broadcasted across
the network via the gossip protocol. Since the protocol is
highly scalable, the network nodes can communicate effi-
ciently despite the addition or removal of lots of nodes.
Hence, the BCA-TG algorithm, which is based on the gossip
FIGURE 5. The flow of the authentication of IoV information based on algorithm, must have good scalability.
improved Byzantine consensus algorithm.

IV. ALGORITHM ANALYSIS AND PROOF V. EXPERIMENTAL VERIFICATION


Theorem 1 In a network with n nodes, the BCA-TG algorithm The experimental system of this paper runs on 5 servers,
allows at most ( n2 −1) (n is even) or ( n−1
2 ) (n is odd) Byzantine and its configuration CPU is 8 cores, Intel i7 3770 3.4 GHz,
nodes to coexist. 16 GB of memory. The proposed BCA-TG algorithm was
Proof: In the network, the n nodes communicate with verified through experiments on a blockchain-based IoV with
each other to update their information efficiently under the five RCNs, denoted as A∼E, and several VCNs. The five
Push-Pull mode based on the gossip protocol. After exchang- RCNs serve as consensus makers. Among them, A and D
ing information for several times, each node will generate a are Byzantine nodes, while B, C and E are correct nodes,
vector UI containing n elements. The number of identical ele- satisfying n ≥ 2f + 1. There are two neighbors in the view
ments k in the vector UI is the same as the number of correct of each node. In each communication, a node searches for
nodes in the network. If k is greater than half of the number the neighbors in its view in turn, and updates its information
of network nodes n, then more than half of the elements in the under the Push-Pull mode based on the gossip protocol. The
UI are the same, and the CI can be determined; otherwise, it is length of the current blockchain was set to 5, and the infor-
impossible to obtain the CI. Since the number of Byzantine mation for consensus-making was set to h. Then, the LI of a
nodes f is the difference between the number of network correct node was computed as h, while that of a Byzantine
nodes n and the number of correct nodes k, the number of node could be any value. The specific information of each
Byzantine nodes f depends on the number of network nodes node is listed in Table 1 below.
n. Obviously, the value of f must be smaller than the number Before consensus-making, it is assumed that two correct
of correct nodes n, that is: RCNs F and G want to enter the network, while node C wants
n to exit the network. It is known that the network channel
 − 1 n = 2m supports the simultaneous entry/exit of 10 nodes at the most.
fmax = n2 − 1 (2) Thus, the number of nodes entering/leaving the network is
 n = 2m + 1
2 within the thresholds, and the nodes can enter or exit the

139708 VOLUME 7, 2019


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

TABLE 1. Specific information of the five nodes. other under the Push-Pull mode based on gossip protocol,
and sent their own UIs to the other party. The UIs did not
change after the transmission, because the information had
been encrypted using the Hash function, and applied with dig-
ital signature technology. Based on the received information,
Nodes A and F updated their own information, and obtained
the same UI vector [i, null, null, null, h, null], where i is the
arbitrary value generated by A, null is a null value, and h
is the pre-set correct value. The other serial numbers have
TABLE 2. The information on the consensus-making nodes after the similar meanings with serial number 1. Note that, for serial
entry/exit. number 2, the UI of node A is the updated UI through the
communication between nodes A and F in serial number 1.
After the first round of communication, no null value was
found in the UIs of nodes G and B. In the UIs of the two nodes,
four of the elements were h. However, the corresponding
elements in the UIs of nodes A and D were not h, indicating
that A and D are Byzantine nodes. The second round of
consensus-making was performed, because some nodes still
had null elements in their UIs. The results of the second round
are displayed in Table 4 below.

network normally. The information on the consensus-making TABLE 4. The results of the second round of consensus-making.
nodes after the entry/exit is given in Table 2 below.
Finally, there are 6 nodes involved in consensus-making,
including 2 Byzantine nodes. The value of c is zero because
it is the first consensus-making. Then, the following can be
derived from formula (1).
a = (b + c)%N = (5 + 0)%6 = 5 (3)
According to formula (3), the VCN node which generates
the information for consensus-making will send the informa-
tion to node F. Upon receiving the information, node F will
release the information and initiate the consensus-making
process. Then, each node will determine the UI based on its
own LI. The results of the first round of consensus-making
are recorded in Table 3.
For Table 4, the consensus-making was implemented sim-
TABLE 3. The results of the first round of consensus-making. ilarly to Table 3. Since nodes A and C are Byzantine nodes,
the UI elements of the two nodes were reset arbitrarily, and
the two nodes both searched for the other node in its view for
communication. The results of the second round show that,
after the consensus-making in serial numbers 2 and 3, nodes E
and B could identify nodes A and D as Byzantine nodes; after
the consensus-making in serial numbers 4 and 5, nodes E and
F could identify nodes A and D as Byzantine nodes; after the
consensus-making in serial numbers 6, nodes G and D could
identify nodes A and D as Byzantine nodes. The third round
of consensus-making was performed, because node A after
consensus-making in serial number 1 still had null elements
in its UI. The results of the third round are presented in Table 5
below.
For Table 5, the consensus-making was implemented sim-
Serial number 1 in Table 3 means node A finds its neighbor ilarly to Tables 3 and 4. Since each node has only two
F for communication. However, node A, as a Byzantine node, neighbors in its view, the neighbor for consensus-making
wanted to undermine the consensus-making, and sent a UI of was the same with that in the first round. The results of
arbitrary value to F. The two nodes communicated with each round 3 indicate that, after the consensus-making in serial

VOLUME 7, 2019 139709


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

TABLE 5. The results of the third round of consensus-making. In summary, the BCA-TG algorithm has the following
advantages. (1) Decentralization: the information in the IoV
can be authenticated without the central node. (2) Byzantine
fault tolerance: the algorithm can reach a consensus when
fewer than half of network nodes are Byzantine nodes, with-
out sacrificing the efficiency of consensus-making. (3) Scal-
ability: the IoV nodes can communicate with each other,
despite the entry/exit of multiple nodes. The research findings
contribute to the security authentication of IoV nodes.

REFERENCES
[1] Y. L. Zhang, ‘‘Design of vehicle network data exchange system based
on blockchain,’’ M.S. thesis, School Electron. Inf. Eng., Tianjin Polytech.
Univ., Tianjin, China, 2018.
[2] H. Teng, Y. Liu, N. N. Xiong, Z. Cai, T. Wang, X. Liu, and A. Liu, ‘‘A novel
number 1, no element in the UI of node A was null; after the code data dissemination scheme for Internet of Things through mobile
vehicle of smart cities,’’ Future Gener. Comput. Syst., vol. 94, pp. 351–367,
consensus-making in serial number 6, none of the nodes had May 2019.
any null element in their UIs, and the correct nodes shared the [3] K. Lin, F. Xia, and G. Fortino, ‘‘Data-driven clustering for multimedia
same UI elements. The CI was finalized as h, which occupied communication in Internet of Vehicles,’’ Future Gener. Comput. Syst.,
vol. 94, pp. 697–711, May 2019.
more than half the elements in the UI. [4] N. Soni, R. Malekian, D. Andriukaitis, and D. Navikas, ‘‘Internet of Vehi-
The above example shows that the proposed BCA-TG cles based approach for road safety applications using sensor technolo-
algorithm obtained the correct CI h in three rounds of commu- gies,’’ Wireless Pers. Commun., vol. 105, no. 4, pp. 1257–1284, Apr. 2019.
[5] F. Kong, J. Li, B. Jiang, and H. Song, ‘‘Short-term traffic flow prediction
nication, allowing the correct nodes to identify the Byzantine in smart multimedia system for Internet of Vehicles based on deep belief
nodes through the consensus-making. This means our algo- network,’’ Future Gener. Comput. Syst., vol. 93, pp. 460–472, Apr. 2019.
rithm can reach a consensus when fewer than half of network [6] S. Liu, Y. Zhang, L. Wang, X. V. Wang, and Y. Liu, ‘‘An ‘Internet of Things’
enabled dynamic optimization method for smart vehicles and logistics
nodes are Byzantine nodes, and there are nodes entering tasks,’’ J. Cleaner Prod., vol. 215, pp. 806–820, Apr. 2019.
and exiting the network, that is, our algorithm enjoys good [7] X. Wang, X. Wei, and L. Wang, ‘‘A deep learning based energy-efficient
computational offloading method in Internet of Vehicles,’’ China Com-
Byzantine fault tolerance. mun., vol. 16, no. 3, pp. 81–91, Mar. 2019.
[8] C. Song, M. Y. Zhang, and W. P. Peng, ‘‘Research on vehicle network
VI. CONCLUSION anonymous authentication scheme,’’ Small Microcomput. System, vol. 39,
no. 5, pp. 899–903, 2018.
Traditionally, the communication and authentication of the [9] J. Kang, Z. Xiong, D. Ye, D. I. Kim, J. Zhao, and D. Niyato, ‘‘Toward
IoV nodes are completed via the central node. The centralized secure blockchain-enabled Internet of Vehicles: Optimizing consensus
mode puts high requirements on the security and communi- management using reputation and contract theory,’’ IEEE Trans. Veh.
Technol., vol. 68, no. 3, pp. 2906–2920, Mar. 2019.
cation ability of the central node. To meet the requirements, [10] L. Park, S. Jeong, D. S. Lakew, J. Kim, and S. Cho, ‘‘New challenges
the common solution is to enhance the defense capability of of wireless power transfer and secured billing for Internet of electric
the central node, or implement asymmetric encryption. But vehicles,’’ IEEE Commun. Mag., vol. 57, no. 3, pp. 118–124, Mar. 2019.
[11] M. Swan, ‘‘Blockchain thinking : The brain as a decentralized autonomous
these solutions cannot change the structure of the IoV, failing corporation [Commentary],’’ IEEE Technol. Soc. Mag., vol. 34, no. 4,
to eliminate security loopholes. pp. 41–52, Dec. 2015.
[12] N. Kshetri, ‘‘Can blockchain strengthen the Internet of Things?’’ IT Prof.,
To solve the problem, this paper modifies the IoV structure vol. 19, no. 4, pp. 68–72, 2017.
in the light of blockchain: the central node was removed, [13] S. Huckle, R. Bhattacharya, M. White, and N. Beloff, ‘‘Internet of Things,
and all network nodes were made equally important. This blockchain and shared economy applications,’’ Procedia Comput. Sci.,
vol. 98, pp. 461–466, Sep. 2016.
approach ensures the security of node communication in [14] L.-W. Chen and Y.-F. Ho, ‘‘Centimeter-grade metropolitan positioning
the Internet of Vehicles. Then, an efficient Byzantine con- for lane-level intelligent transportation systems based on the Internet of
sensus algorithm was constructed based on time sequence Vehicles,’’ IEEE Trans. Ind. Informat., vol. 15, no. 3, pp. 1474–1485,
Mar. 2019.
and gossip protocol (BCA-TG). Firstly, the gossip protocol [15] Q. Kong, R. Lu, H. Bao, and M. Ma, ‘‘A privacy-preserving sensory data
was introduced to Byzantine consensus algorithm, and the sharing scheme in Internet of Vehicles,’’ Future Gener. Comput. Syst.,
Push-Pull mode of the protocol was applied to the com- vol. 92, pp. 644–655, Mar. 2019.
[16] F. Li, H. Zhang, J. Wang, C. Sanin, E. Szczerbicki, and L. Gao, ‘‘A set
munication between IoV nodes. In this way, two network of experience-based smart synergy security mechanism in Internet of
nodes can have the same information through one cycle Vehicles,’’ Cybern. Syst., vol. 50, no. 2, pp. 230–237, 2019.
[17] M. C. Cooper, A. Herzig, F. Maffre, F. Maris, and P. Régnier, ‘‘The epis-
of communication. Next, the time sequence was adopted temic gossip problem,’’ Discrete Math., vol. 342, no. 3, pp. 654–663, 2019.
to improve the efficiency and speed of the communica- [18] L. Altoaimy, A. Alromih, G. Al-Hudhud, H. Kurdi, K. Youcef-Toumi,
tion and consensus-making between the nodes. On this and S. Al-Megren, ‘‘Context-aware gossip-based protocol for Internet of
Things applications,’’ Sensors, vol. 18, no. 7, p. 2233, 2018.
basis, the consensus-making of the BCA-TG algorithm in [19] J. Liu, S. Mou, B. D. O. Anderson, C. B. Yu, and A. S. Morse, ‘‘Request-
blockchain-based IoV was explained in details. The experi- based gossiping without deadlocks,’’ Automatica, vol. 93, pp. 454–461,
mental results show that our algorithm can effectively over- Jul. 2018.
[20] L. Chao, J. Zhipeng, and Z. Yuanjie, ‘‘A novel reconstructed training-
come the defects in consensus and authentication of IoV set SVM with roulette cooperative coevolution for financial time series
nodes. classification,’’ Expert Syst. Appl., vol. 123, no. 1, pp. 283–298, 2019.

139710 VOLUME 7, 2019


W. Hu et al.: Blockchain-Based Byzantine Consensus Algorithm for Information Authentication

WEI HU is currently the Dean of the Depart- WENHUI YAO was born in Zhenjiang, Jiangsu,
ment of Management Science and Engineering, China, in 1996. She received the B.S. degree
Shanghai University of Electric Power, where he in electrical engineering and automation from
is also an Associate Professor. His current research Yangzhou University, in 2018. She is currently
interests include power big data and energy block pursuing the M.S. degree in power engineering
chain. His recent research has been focused on economics and management with the Shanghai
energy and power optimization decision. University of Electric Power, China. Her current
research interests include distributed power dis-
patch model based on blockchain and electricity
market trading. Her awards and honors include
second scholarship and outstanding graduates.

YAWEI HU was born in Shuyang County, Jiangsu, HUANHAO LI was born in Huai’an, Jiangsu,
China, in 1996. He received the bachelor’s degree China, in 1991. He received the degree in
in information and computing science from the electrical engineering and automatic chemistry
Shanghai University of Electric Power, in 2018, from Yangzhou University, in 2016. He is cur-
where he is currently pursuing the master’s degree rently pursuing the master’s degree in electri-
in power engineering economics and management. cal engineering economics and management with
His current research interests include power sup- the Shanghai University of Electric Power. His
ply and demand network trading mechanism based current research interests include power spot
on blockchain, consensus algorithm, and smart trading model research based on blockchain
contract based on blockchain. He was a recipient and blockchain technology in ubiquitous power
of the Second Prize of Challenge Cup in Shanghai, in 2017, and the Shanghai Internet of Things.
Outstanding Graduates, in 2018.

VOLUME 7, 2019 139711

You might also like