Page 208 - ITU KALEIDOSCOPE, ATLANTA 2019
P. 208
2019 ITU Kaleidoscope Academic Conference
Figure 6 – Comparison result of 1000 transactions between
dBFT and PBFT
block), which is generated when the platform creates the
first medical record, the header part of each block includes
Figure 5 – Process of health record upload operation previous hash, current hash, timestamp and nonce. The
block body records a health record for a particular time.
medical institution represents an accounting node in the This structure is beneficial to researchers in tracking patients’
network. User’s key pairs and unique identifier will be chronic diseases and analyzing disease data.
generated when a patient joins the CB-EHRs platform as
a user. According to the setting of the CB-EHRs framework 5. TESTING AND EVALUATION
in this paper, a transaction is first initiated by the user, then the
user transfers the virtual asset USER_INFO with his or her 5.1 dBFT consensus test
own identity information (public key and unique identifier)
to the medical institution. In this way, the medical institution Based on the realization of the dBFT consensus, the paper
can obtain the user’s public key and unique identifier to verify compared the consensus performance of dBFT and PBFT
subsequent actions that may come from this user. under the same network conditions. This paper uses Docker
[36] virtualization technology to test the blockchain network.
Before the test, the researchers built a test environment
4.4.2 Health record upload operation
with four verification nodes in the Docker application based
According to the characteristics of digital signature on the CB-EHRs platform structure. The communication,
technology, each user in the platform is solely in charge consensus, block generation and verification of the nodes
of his or her private key. This means that each user in the block generation process are completed by the four
participates in the platform and manages his or her own verification nodes. The testing process is as follows:
health records. Whether the user performs telemedicine or First, enabled dBFT in the EHRs alliance chain with four
face-to-face consultation, the doctor needs to obtain the user’s authentication nodes. Then send 1000 and 2000 transactions
authorization (user private key encryption) before uploading to the blockchain network node in turn. Finally, after
the completed record to the database. In the CB-EHRs the network has agreed, executed and finally generated the
platform, unauthorized EHRs are separately stored in the data block, the transaction per second (TPS) of the network was
table. When an EHR is authorized by the user, the user node calculated. Each of the above transactions was repeated 50
will encrypt the EHR with the private key. The data processed times to obtain a relatively stable processing capability of
by the private key encryption is a transaction containing user the network. In the same way, the PBFT consensus module
identity information. It will be sent randomly to a medical was enabled in the EHRs alliance chain, and the transaction
facility node to start consensus. When medical institutions processing capability test was performed in the same way.
receive a transaction with user identity information, they need After collecting the test data, this paper uses a line chart to
to decrypt the encrypted transaction with the user’s public compare and analyze the two sets of test results. As shown
key. If the decrypted content can be successfully matched, in Figure 6 and Figure 7.
the transaction content is encapsulated into a new block and According to the above experimental comparison, in addition
added to the user’s blockchain in the local database. The flow to the large difference in the value of individual groups
chart of the health record upload operation is shown in Figure due to network fluctuations and transaction randomness, we
5. can conclude that the transaction processing performance of
dBFT is higher than PBFT in the two groups of experiments.
This paper used the same test method to get more data in
4.5 Platform database
different networks which has a different number of the nodes.
In the database of CB-EHRs, one blockchain contains records The average value of TPS in the above experimental data is
for all users. Each block is divided into two parts: a block obtained as a stable value of network consensus performance
header and a block body. Apart from the first block (Genesis and grouped and summarized. The final result is shown in
– 188 –