Figure 10. Real-time transmission of electric power data based
on P-PoW algorithm
After receiving new block information from plants/substations, regional
dispatch center can verify the signature validation in new block. New
block can be considered trustworthy if its signature satisfies the
following inequality:
(2)
In inequality (2), P represents new block hash pointer value,andSig is the block signature, Addr is the address space of
hash function outcome Hash (·), CP is computational power
(TH/s) configured in the corresponding plant/substation,
ΔT b is the time duration from receiving moment of
previous block to the receiving moment of current block, and
ΔT t is the time consumption in communication
transmission process. Considering many factors such as computing power
fluctuation, environment influence and uncertainty of transmission time
can affect the computational result of left side of inequality (2), a
coefficient K is added to the right side of the equality to relax
the verification condition. The specific value of K can be
determined based on the actual experimental test.
If new block signature does not satisfy (2), the dispatch center would
reject the block. At this point, dispatch center may request
corresponding plant/station to resend the latest block or send alarm
message to dedicated personnel. For any attacker who wishes to tamper
with electric power data via the communication channel, there are two
challenges: ① In order to make dispatch center accept tampered data, the
attacker must own sufficient computing power to produce a “good
enough” signature satisfying inequality (2); ② The attacker must
possess the historical information of the blockchain to make the header
hash pointer P conform to the rules of blockchain generation. By
using a dedicated hash algorithm and deploying specialized hardware,
while dispatching data network is used as communicational infrastructure
to transmit data, the data tampering cost would become tremendous high
that seldom individuals or organizations can afford. Therefore, the
trustworthy transmission of real-time electric power data is guaranteed.
5. Simulation Verification
To validate the feasibility of P-PoW algorithm, this paper implements a
simplified blockchain system for real-time electric power data
transmission using C++ programming language and Qt library. Simulation
experiment verifies the effectiveness of P-PoW algorithm for real-time
data transmission application.
5.1. Blockchain Program Architecture Based on P-PoW Consensus Algorithm
The main application scenario of P-PoW algorithm in this paper is
point-to-point data transmission. Considering the convenience of program
implementation and debugging, a multi-thread architecture is used to
build experimental program. Figure 11 shows the architecture of the
experimental program, which is divided into four threads: real-time data
generation thread, block data maintenance thread, P-PoW computation
thread, and human-machine UI interaction thread.