Next Article in Journal
Investigation of the Two-Way Injection Slurry-Supply Method for the Cu CMP Process
Previous Article in Journal
Influence of Organic Fertilization and Soil Tillage on the Yield and Quality of Cold-Pressed Camelina [Camelina sativa (L.) Crantz] Seed Cake: An Alternative Feed Ingredient
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Secure PBFT Consensus-Based Lightweight Blockchain for Healthcare Application

by
Pawan Hegde
and
Praveen Kumar Reddy Maddikunta
*
School of Information Technology and Engineering, Vellore Institute of Technology, Vellore 632014, Tamil Nadu, India
*
Author to whom correspondence should be addressed.
Appl. Sci. 2023, 13(6), 3757; https://doi.org/10.3390/app13063757
Submission received: 20 February 2023 / Revised: 13 March 2023 / Accepted: 13 March 2023 / Published: 15 March 2023

Abstract

:
Recent advancement in IoT technology has boosted the healthcare domain with enormous usage of IoT devices to provide elevated services to patients with chronic disorders on a real-time basis by the incorporation of IoT sensors on patients’ bodies. However, providing services ensuring security and maintaining the privacy of patients is a challenging task. Blockchain technology promises security in a distributed environment but popular consensus algorithms such as Proof of Work (PoW) and Proof of Stake (PoS) require huge computational resources and energy by making the IoT environment inefficient. This paper introduces a secure Practical Byzantine Fault Tolerance (PBFT) consensus-based lightweight blockchain algorithm for healthcare applications. To strengthen the PBFT consensus, highly trusted nodes were allowed to participate in the consensus algorithm using the Eigen Trust model and Verifiable Random Function (VRF) to select a random primary node from a group of trusted consensus nodes. The proposed algorithm is tested in a simulated environment and evaluated against the traditional PBFT consensus algorithm considering throughput, latency, and fault tolerance.

1. Introduction

The present Internet of Things (IoT) has gained the interest of every individual who seeks to accomplish their daily activities, or needs them completed in an accurate and faster manner, through IoT-based applications. In the healthcare domain, the IoT devices have a significant role in accessing real-time health parameters from patients through various body sensors or IoT equipment. The sensed data will be transferred to third-party cloud servers or the central servers later for further processing and analysis. Additionally, the centralized cloud architecture is more prone to security threats such as DDoS and DoS. Despite that, the collected data should be secured from intruders by implementing modern security policies and privacy reserving techniques at distinct levels of the IoT architecture [1]. Even though blockchain technology was invented as a cryptocurrency by Satoshi Nakamoto in the year 2009, the recent innovations and research have proven promising results in securing data by storing the data as transactions in distributed ledgers. The individual blocks of the blockchain are cryptographically linked together to form a chain of blocks. Moreover, each transaction in the block is verified by a group of miners before adding it to the blockchain. Modern cryptographic techniques such as asymmetric cryptography, digital signatures, and hash functions are incorporated to make the blockchain tamper-proof [2]. Apart from tamper resistance, the blockchain adopts decentralized architecture, anonymity, and enhanced security; furthermore, because of these properties the blockchain is widely being adopted in healthcare [3], supply chain management [4], the industrial IoT [5], and smart city domains. Figure 1 shows the various use cases of blockchain in the healthcare domain. Ever since the invention of the blockchain, many researchers and organizations have contributed to the evolution of the ledger technology, resulting in three different stages, from Blockchain 1.0 through 3.0. Blockchain 1.0 is the initial and simplest version of a distributed ledger, Blockchain 2.0 is the second generation distributed ledger, where the concept of Smart Contracts was introduced along with enhanced capabilities of Blockchain protocols. Blockchain 3.0 is the advanced version of distributed ledger technology with improved sustainability, scalability, cost-effectiveness, more decentralization, and security. A fusion of traditional IoT healthcare systems with decentralized blockchain technology will be a significant solution to overcome the security, privacy, and reliability concerns of the IoT, ensuring integrity and authenticity of medical data. IoBHealth—an IoT-enabled blockchain framework [6], provides a trusted, secure, transparent, and efficient environment for accessing and managing electronic health records.
Most of the IoT devices in the networks are battery-operated [7], with minimal computational capability, minimal resources, and minimal storage capacity. Because of these properties of IoT devices, the integration of the IoT and blockchain is a challenging task. Furthermore, the IoT devices cannot sustain the existing cryptographic techniques and consensus algorithms of the blockchain. Many researchers have proposed various modified versions of the blockchain, such as the lightweight blockchain [8] for resource-constrained IoT devices with an optimized consensus algorithm [9], lightweight cryptographic techniques, and optimized storage techniques without compromising the security and privacy of the devices [10]. Even though the lightweight cryptography techniques are designed to target the resource-constrained IoT devices to work with minimal energy and resources in a faster manner, the major concern of lightweight cryptography is minimal security [11]. Additionally, the initial mathematical computations make it more complex, hence the implementation will be difficult. Considering blockchain as a powerful tool for securing sensitive medical image data, a blockchain-based zero trust security model is designed to ensure the encrypted medical data is accessed only by the authenticated user in the network [12].

1.1. Motivation

In a distributed decentralized ledger-based peer-to-peer network, the block generation will happen based on the consent of all peers. It is challenging to achieve the consensus in a trustless distributed ecosystem where all peers connected to the network will participate in the block validation process. However, trustfulness in validation is attained using consensus algorithms, as an agreement to gain the mutual trust among peers without using any trusted third party authority. The consensus algorithm of the blockchain technology will affect the overall performance indicators of throughput, delay, and fault-tolerance of the blockchain network. Table 1 shows the comparison between widely used consensus algorithms. The challenging task in every algorithm is to strengthen or improve the efficiency of core algorithms by incorporating various techniques without compromising the security and privacy of the system.
The authors Meshcheryakov et al. [13] reviewed the impact of the PBFT consensus algorithm on the performance of the blockchain in a resource-constrained IoT environment by considering various performance attributes. The experimental results of the PBFT-based blockchain showed high performance for networks with 70 nodes. Hence the PBFT-based consensus can be applicable to various applications with implanted medical devices and self-contained telemedicine devices. Even though the PBFT is widely used in most of the blockchain-based healthcare applications, PBFT consensus needs to be improved in various aspects, such as verifying the reliability of nodes before participating in the consensus process, penalizing the malicious nodes, improving the scalability, and reducing the frequent network communication among the nodes. Verifiable Random Function (VRF) [14] is a pseudorandom function used in various blockchain consensus algorithms such as Delegated Proof of Stake (DPoS) and Proof of Stake (PoS) [15] for choosing nodes to engage in consensus activity. Although VRF helps in improving the blockchain network security by randomly choosing the nodes for the consensus process, the selected nodes are not always trustworthy. However, trust evaluation of each and every node participating in the consensus process is very much necessary to ensure only the most reliable nodes are participating in the consensus process.

1.2. Major Contributions and Paper Organization

In general, our contributions to the proposed model are as follows:
  • We propose using the Eigen trust-based reputation model to verify the reliability of each and every node using a global trust value. The reputation model is related to the node behavior in the system, it also helps in reducing the number of untrusted nodes participating in the consensus process.
  • We propose a VRF-based election process to ensure fairness and randomness in electing the primary node from a group of trusted consensus nodes. This process will reduce the communication complexity among nodes and also strengthen the security of the healthcare system.
  • The proposed model is tested in a simulated environment and analyzed with the existing PBFT consensus algorithm intents of throughput, latency, and communication overhead. The proposed algorithm results in better performance.
The rest of this paper is organized as follows: Section 2 describes the existing works on PBFT consensus and their usage in various healthcare applications. Section 3 introduces the proposed model. Section 4 provides experimental analysis in terms of fault tolerance, throughput, latency, and comparison with traditional PBFT consensus algorithm. Section 5 summarizes the proposed model highlighting the future directions

2. Literature Review

Providing accurate and cost-efficient patient care has driven attention towards healthcare data management in recent years. Since then, many researchers have proposed blockchain-based approaches, mainly focusing on permission-less Bitcoin networks, but these will induce computation and communication overhead. To overcome the issues of traditional blockchain networks, Ismail et al. [16] proposed lightweight blockchain architecture for healthcare data management by dividing the Bitcoin network into clusters. The proposed model ensures the security and confidentiality of transactions by introducing a canal for a group of participants in the network. However, experimental results show better performance compared to the Bitcoin network, since each node must keep a local copy of the ledger, the proposed model is not suitable for memory-constrained IoT devices.
Remote Patient Monitoring (RPM) is another aspect of healthcare where patients with health disorders such as COVID-19 [17], heart diseases, etc., can be treated from a remote location using the real-time data fetched by the IoT sensors. During the process, maintaining security and privacy is a challenging task. Srivastava et al. [18] proposed blockchain-based security approaches for remote patient monitoring using IoT devices by using various lightweight cryptographic techniques such as Ring Signature and Diffie–Helman Key exchange to ensure reliable data communication over the network and storage over the cloud.
Even though the blockchain has the power to resolve the issues of IoT applications, due to high computation complexity, high bandwidth overhead, and latency of the blockchain, it is unsuitable for IoT applications. However, the authors Mohanty et al. [19] proposed an Efficient Lightweight Integrated Blockchain (ELIB) framework, aimed to resolve the security and privacy issues of the IoT by creating an overlay blockchain network. The proposed model was designed by considering three optimization aspects, i.e., Lightweight Consensus algorithm, Certificateless Cryptography (CC), and Distributed Throughput Management Scheme (DTM). Experimental results of the proposed model outperformed in terms of energy consumption. Lightweight Scalable Blockchain (LSB) creates an overlay network consisting of multiple clusters with cluster-heads to manage the blockchain. Dorri et al. [20] proposed the Distributed Time-based Consensus algorithm, Distributed Trust Approach, and Distributed Throughput Management algorithm to reduce mining processing overhead and delay in an IoT application. The experimental result ensures end to end security. However, for small networks, Distributed Time-based Consensus algorithms are prone to Sybil attack.
PBFT consensus is most widely used in consortium blockchain systems; however, PBFT has difficulty identifying faulty nodes in time and the randomly chosen primary node is vulnerable to attacks. Thus, to reduce the rights of faulty nodes in the voting process Lei et al. [21] incorporated a reputation model in traditional PBFT consensus to detect the malicious nodes and choose the primary node. The node with a better reputation will have more chances to become a primary node. The proposed model was tested in the simulated environment, hence the experimental results show an increase in throughput, reduced delay, and decreased faulty node rate compared to traditional PBFT as the system continues to operate. However, the usage of extra data structure in the proposed model will lead to performance overhead, hence optimization techniques need to be incorporated in the future to implement it in a real-time blockchain environment.
Dwivedi et al. [22] proposed a blockchain-based framework for health applications using Proof of Authentication to alert the authenticated healthcare providers using patients’ health data in a secure and private manner. The cluster-based overlay networks of the proposed model reduce the network overhead and delay. Na et al. [23] proposed Fusion Chain, a decentralized lightweight blockchain for IoT devices that resolves the storage issue, data privacy, and high computational requirement of blockchain by implementing an interplanetary file system (IPFS), PBFT consensus algorithm, and public-key encryption using PKI. The proposed model was written in Node.js and Golang. The experimental results demonstrated improved performance of the system resolving data reliability issues and security vulnerabilities of IoT applications caused by Mirai botnet and DDoS attacks. Furthermore, the proposed model can be improved to achieve high TPS.
For efficient data management in a blockchain environment, Min [24] proposed a modified-pBFT algorithm, where a group of leader nodes is selected for the consensus operation. The proposed model simplifies the request management process and reliable leader node election process. Experimental results show better performance in TPS and network communication cost compared to PBFT, but accurate evaluation techniques are required for the reliability of nodes. More interestingly, the authors Li et al. [25] designed a lightweight blockchain using a reward and punishment strategy-based PBFT consensus algorithm and Joint Delay Storage Cost Minimization algorithm for storage optimization. The existing PBFT was compared with the proposed model using Hyperledger Caliper. Improved consensus throughput and reduced delay and communication times are recorded. Xu et al. [26] proposed an energy-efficient consensus algorithm for IoT-blockchain-based applications. The proposed algorithm uses the modified PBFT consensus by implementing VRF to choose consensus nodes, ensuring the security of the primary node. Although the simulation results in improved performance in terms of latency and energy consumption compared to the existing PBFT algorithm, it decreased throughput when the number of nodes increased. Cai et al. [27] proposed a Dynamic Reputation Practical Byzantine Fault Tolerance (DPBFT) algorithm by implementing a credit-based consortium method for the consensus node election process, which involves a monitoring node that divides the node-set based on the reputation value. The proposed algorithms resolve the issues of traditional PBFT in terms of a long consensus period, low efficiency, and high CPU usage, but the entire process of DPBFT is managed by the monitoring node. Furthermore, the DBPFT can be improved by implementing clustering techniques.
Accomplishing good performance in terms of throughput and scalability without compromising the security is a challenging task in all IoT applications. Kashyap et al. [28] introduced the Security-Aware Genetic Algorithm-based Practical Byzantine fault Tolerance scheduler for balancing the security requirements and overhead caused during the block creation by assigning a security level to each transaction based on the requirements. The proposed model was tested in a simulation environment; although the experimental result shows better performance compared to the traditional PBFT, the model cannot be used for blockchain having fewer transactions. Table 2 illustrates the various existing works on PBFT consensus, compared based on three different parameters such as security, privacy, and communication overhead considering scale as least considered (LOW), moderately considered (MID), and (highly considered) HIGH.

3. Proposed Model

3.1. Practical Byzantine Fault Tolerance

PBFT is designed based on the principle that the state machines result in the same output on any replica node for the same state and input parameter. The PBFT algorithm allows a distributed system to reach consensus even when a few nodes show malicious behaviors, i.e., if a distributed system consists of 3f+1 nodes (f represents the number of Byzantine nodes), a consensus can be reached as long as 2f+1 non-Byzantine nodes are functioning normally. The nodes in the algorithm have two roles, i.e., primary node and backup node. The primary node is in charge of segregating the transaction requests, sending transactions to backup nodes, and creating blocks after the verification process. The primary node is selected for a particular view using Equation (1)
primary _ node = v _ n u m mod | C |
where v_ num is the view number, |C| is the total number of consensus nodes. The primary node will lead the PBFT consensus in the following three distinct phases:
Pre-Prepare Phase: Based on the request received from the Client, the primary node will generate a prepared message < < PRE_ PREPARE, v_ num, N, D > , t > for transactions and send it to each backup node by assigning a sequence number N, v_ num is the view number in which the message is sent, client’s request message is t, and D is the message’s digest. As soon as the backup receives the Pre-prepare message from the primary node, the messages are verified for the correctness and the primary node enters the Prepare phase.
Prepare Phase: Each backup node in the network generates a Prepare Message < PREPARE, v_ num, N, D, x > after accepting the Pre-Prepare Message, and sends the Prepare message to other backup nodes including the primary node. Soon after verifying the correctness of (t, v_ num, N, x), all nodes will enter the Commit Phase.
Commit Phase: Each and every backup node will generate the Commit message < COMMIT, v_ num, N, D(t), x > and multicast it all other nodes by ensuring < PREPARE, v_ num, N, D, x > is true for all backup nodes. After receiving 2F+1 Commit messages considering maximum faulty nodes F, from other backups the primary will create a block which is added to the blockchain.
The working of PBFT consensus algorithm is represented in Figure 2 by considering a primary node for the current view and backup nodes 1 to N, where backup node 3 is a faulty node identified during the process and which does not affect the actual process of the PBFT consensus. The existing model of PBFT has O(n2) communication complexity and the primary node is selected randomly from a set of nodes in the network. To design an optimized, secure, fault-tolerant PBFT consensus algorithm the VRF and Eigen trust algorithms are incorporated.

3.2. Computation of Node Trust Value Using Eigen Trust Model

A reputation-based model trust management system to reduce the number of malicious nodes in the blockchain network, Eigen Trust is used to find the trust value of individual nodes. It considers effectively by computing a unique global trust value (GTp) for each node in the system by considering the transaction history between the nodes. In a blockchain system, to compute the global trust of individual nodes, we are considering the node transaction relationship among various nodes. Every node can show either direct transaction or indirect transaction relationships as shown in Figure 3. Therefore, based on the transaction relationship we have found three distinct types of trust measures, which are direct trust value, indirect trust value, and global trust value.
  • Direct trust value: If there is a direct transaction between Nodep and Nodeq, for example in Figure 3 Node1 to Node2, the direct trust value for Nodep is calculated by considering the satisfactory and unsatisfactory transaction history between p and q as Spq = Satisfactory(p,q) − Unsatisfactory(p,q). After certain transactions, we can normalize it as
    T p q = max S p q , 0 q max S p q , 0 , where q is all nodes
  • Indirect trust value: When there is no direct transaction between Nodep and Nodeq, we need to compute indirect trust based on transitive trust, considering direct trust and the transaction history represented in Equation (3)
    T p q = r T p r T r q , where r is all intermediate nodes
  • Global trust value: Each Nodep in the blockchain network has unique global trust value GTi based on the current transaction history. The global trust value of Nodep is computed using the local trust value of all nodes in the network to Nodep, global trust of the current node, and trust value of current Nodev created during the last cycle s−1. The initial global trust value of nodes in the network is GT = 1/n where n is the total number of nodes.
    G T p s = v T v p G T v s 1 = T 1 p G T 1 s 1 + T 2 p G T 2 s 1 + T 3 p G T 3 s 1 + + T n p G T n s 1

3.3. Node Grouping and Primary Node Selection Using Verifiable Random Function (VRF)

Verifiable random function is a cryptographic hash function that processes input considering public key and proof and generates verifiable pseudorandom output [34]. Only the private key holder can compute the hash; however, the correctness of the hash can be verified by anyone with the corresponding public key. VRF consists of key generation function, evaluator function, and verification function. The private VRF key (sk) and public VRF key (pk) are created during the key generation function of VRF. Every consensus node can generate a random output Y by hashing an input value X with its private VRF key sk as in Equation (5)
Y = V Hash ( sk , X )
The V_Hash function is deterministic, i.e., Y remains the same for a given pair of inputs (sk, X). The consensus node will use the private key (sk) to create Z to prove Y is the correct output as in Equation (6)
Z = V Prove ( sk , X )
Every consensus node can deterministically obtain the VRF hash Y from Z as in Equation (7)
Y = V _ Prove _ Hash _ ( Z )
Substituting Equations (5) and (6) in Equation (7)
V Hash ( sk , X ) = V _ Prove _ Hash ( V Prove ( sk , X ) )
The zero-knowledge proof Z enables every consensus node to verify the correctness of Y for an input X using their public key (pk) using Equation (9)
V Verify   ( p k , X , Z )
The output of Equation (7) is Valid if the Y = V_Prove_Hash(Z) is correct using VRF hash and input X under public key (pk) and Invalid otherwise.
The various steps involved in the proposed PBFT consensus algorithm are as follows:  
Step 1: 
Identify the Global Trust value of each node present in the network using the Algorithm 1.
Step 2: 
Choose a Primary Node using the VRF algorithm and divide the nodes into consensus node list and backup node list using global trust value as parameter.
Step 3: 
Primary node will execute the PBFT Consensus algorithm using set of consensus nodes.
Step 4: 
At the end of the consensus mechanism, the primary node will create a block with a valid transaction.
Step 5: 
Primary node will broadcast the updated block to both consensus node list and backup node list.
Algorithm 1 Pseudo-code for calculating global trust.
Input: n o d e p , s e t o f N o d e s
Output: Global trust G T p of n o d e p
G T p 0 for n o d e j setofNodes do G T p = T q p T q end
Figure 4 illustrates the various steps involved in the proposed secure PBFT-based blockchain consensus algorithm for healthcare applications. Figure 5 represents the healthcare use-case for demonstrating the proposed algorithm where the real-time health-related data of a patient will be stored in the blockchain as transactions then it is made available to various healthcare users for further analysis. During the process, the secure PBFT consensus algorithm with VRF and trust model will perform the transaction validation before adding the transaction to the block. The node participating in the consensus operation should be a trusted node and it should not be vulnerable to malicious activities. However, the initial level of trust analysis is achieved by computing the global trust value for all nodes in the blockchain network, considering the local trust. In later stages, the secure cryptographic sorting algorithm VRF separates the initial node list as consensus node list and backup node list. Only the nodes of the consensus node list can take part in the consensus process and a random primary node is also selected from the same set.
At first, the global trust value is used as an added parameter in the VRF algorithm for choosing the primary node and consensus node list for a particular view. The nodes of the backup node list will not take part in the PBFT consensus process, but they will be updated with the block details while adding the blocks to the blockchain. The process of dividing the nodes into groups will reduce the number of nodes taking part in the consensus algorithm, hence the communication complexity is reduced. The proposed model also improves the security and privacy of data. If a selected primary node fails to produce a block in a particular view, then a new primary node will be selected from the consensus node list by dynamically updating the global trust value of nodes.

4. Experimental Results

The proposed secure PBFT consensus algorithm was tested in a simulated environment, implemented using a Python programming language in a Ubuntu 16.04 operating system with configuration Intel Core i7 2.2 GHz CPU with 16 GB RAM and 1TB hard disk. Simulation was carried in a local machine by considering a maximum of 35 nodes, initial global reputation of all the nodes as 1 / n o d e s , and numerical data (assumed as health data related to a patient) required for the experiment purpose are generated manually and are fed into the system as transactions. This was performed to analyze the proposed algorithm to measure the security, reliability, and performance aspects considering parameters such as transaction throughput, latency, faulty node ratio, and communication between the nodes.

4.1. Throughput Analysis

Transaction throughput per second (TPS) is a metric to measure the concurrency in a blockchain system. Throughput in blockchain can be described as the number of transactions packaged per unit time. The high value of throughput indicates greater consensus efficiency, and also a high potential to process transactions. The formula used for the computation of throughput per second is
T T P S = T s u m Δ t
where TTPS is the throughput, Tsum is the blocktime, and Δ t is the total number of transactions during that time. Figure 6 shows the relationship between time and throughput in the traditional PBFT algorithm and proposed algorithm, the average throughput gap increases with respect to the time. Figure 7 illustrates the changes of throughput with node transaction commit rate, irrespective of the request rate throughput rate of the proposed algorithm rises steadily compare to the PBFT. During the simulation after 1250 transactions, there is a steady increase in the transaction commit rate, this will be due to minimal amount of communication during the transaction validation process in the proposed algorithm, hence the time required for transaction confirmation is less compared to PBFT.

4.2. Transaction Latency

Transaction latency is the time interval from transaction submission to transaction confirmation. It is used to measure the computing communication efficiency and runtime of the blockchain’s consensus algorithm. The reduced latency will increase the transaction confirmations and decrease the chances of blockchain bifurcation.
T delay = T complete T submit
where Tdelay is the latency, Tcomplete is the block confirmation time, and Tsubmit is the transaction initiation time. Figure 8 shows the relationship between latency and the number of nodes, the latency of the proposed algorithm is less than the traditional PBFT algorithm, indicating that nodes’ consensus speed is faster than the PBFT algorithm. The main reason for achieving the minimal latency is grouping the nodes into the consensus node list and backup node list; therefore, the number of nodes participating in the consensus process is minimal. During the simulations the number of nodes are varied from 2, 4, 6, 8, ..., 30. As the number of nodes in the network increases, the transaction latency will also increase in both PBFT and the proposed algorithm. This is due to rise in internal communication required during verification. We also tested the proposed algorithm by considering the effect of block size on latency by considering the varied number of transactions on different blocks. Since the number of transactions is more in a block, it takes a longer time to propagate, and verification leads to higher latency.

4.3. Faulty Nodes

The security and reliability of the blockchain systems are measured based on the faulty nodes rate, a ratio of the number of faulty nodes to the total number of consensus nodes in the blockchain system:
Faulty _ Node _ Ratio   =   Number _ of _ Faulty _ nodes Number _ of _ Consensus _ nodes
The blockchain system is safer and more reliable only when there exists a minimal faulty node ratio. From Figure 9 we can conclude that the traditional PBFT algorithm does not change the faulty node rate during the course of execution, but the proposed algorithm will identify and remove the faulty nodes. Therefore, the faulty node rate will gradually decrease, and the proposed model will promise enhanced security and reliability of the healthcare system.

4.4. Communication between Nodes

The number of communications between the nodes to achieve consensus affects the overall performance of the system, which is interrelated to the number of resources consumed for the deployment of the algorithm. However, communication times are experimentally computed considering different nodes and compared with the traditional PBFT algorithm. Figure 10 illustrates the communication times of PBFT and the proposed algorithm; the general observation is that the proposed model induces less communication overhead. The main reason for minimal communication between the nodes in the proposed algorithm is due to the segregation of nodes into two lists. Furthermore, only a trusted consensus node will participate in the transaction validation process. However, eventually if we vary the nodes from 2, 4, 6, ..., 18, the number of communications will also increase in both algorithms. Finally, the proposed model consumes less resources with minimal communication among the nodes.
To summarize, the experimental results of the proposed PBFT consensus algorithm has shown a 25% increase in transaction confirmation time, and the steady increase in transaction latency as the number of nodes increases in the network, with minimal communication overhead compared to the traditional PBFT consensus algorithm. The comparative analysis of the proposed algorithm with the existing popular consensus algorithms considering the parameters such as nodes participating in the consensus process, node reliability assessment, network type, node election fairness, and communication overhead, is shown in Table 3.

5. Conclusions and Future Scope

Integration of IoT technology and the blockchain has strengthened the healthcare domain by providing accurate, real-time medical services to patients suffering from various disorders. Considering the advantages of blockchain technology along with the limitation of IoT devices, we have designed a secure PBFT consensus-based lightweight blockchain for healthcare applications by incorporating a trust model to avoid the untrusted nodes participating in the consensus process, and a VRF technique to randomly select the primary node from a set of approved nodes, ensuring the security and reliability of the entire healthcare system. The proposed model outperformed the traditional PBFT consensus in terms of throughput, latency, and faulty node ratio. The system results in enhanced performance with minimal malicious nodes; thus, the overall security is maintained by removing the malicious nodes. In the future, the proposed model needs to be tested for real-time transactions in an actual environment. It also can be improved by incorporating sharding techniques with an optimized cluster-head selection algorithm for creating clusters to enhance communication efficiency and security.

Author Contributions

Conceptualization, P.H. and P.K.R.M.; methodology, P.H.; validation, P.H.; formal analysis, P.H.; resources, P.K.R.M.; data curation, P.H.; writing—original draft preparation, P.H. and Maddikunta,; visualization, P.H.; supervision, P.K.R.M. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

No new data were created.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Maddikunta, P.K.R.; Gadekallu, T.R.; Kaluri, R.; Srivastava, G.; Parizi, R.M.; Khan, M.S. Green communication in IoT networks using a hybrid optimization algorithm. Comput. Commun. 2020, 159, 97–107. [Google Scholar] [CrossRef]
  2. Ch, R.; Srivastava, G.; Gadekallu, T.R.; Maddikunta, P.K.R.; Bhattacharya, S. Security and privacy of UAV data using blockchain technology. J. Inf. Secur. Appl. 2020, 55, 102670. [Google Scholar] [CrossRef]
  3. Ratta, P.; Kaur, A.; Sharma, S.; Shabaz, M.; Dhiman, G. Application of blockchain and internet of things in healthcare and medical sector: Applications, challenges, and future perspectives. J. Food Qual. 2021, 2021, 1–20. [Google Scholar] [CrossRef]
  4. Rejeb, A.; Keogh, J.G.; Treiblmaier, H. Leveraging the internet of things and blockchain technology in supply chain management. Future Internet 2019, 11, 161. [Google Scholar] [CrossRef] [Green Version]
  5. Wang, Q.; Zhu, X.; Ni, Y.; Gu, L.; Zhu, H. Blockchain for the IoT and industrial IoT: A review. Internet Things 2020, 10, 100081. [Google Scholar] [CrossRef]
  6. Ray, P.P.; Dash, D.; Salah, K.; Kumar, N. Blockchain for IoT-based healthcare: Background, consensus, platforms, and use cases. IEEE Syst. J. 2020, 15, 85–94. [Google Scholar] [CrossRef]
  7. Reddy Maddikunta, P.K.; Srivastava, G.; Reddy Gadekallu, T.; Deepa, N.; Boopathy, P. Predictive model for battery life in IoT networks. IET Intell. Transp. Syst. 2020, 14, 1388–1395. [Google Scholar] [CrossRef]
  8. Khan, S.; Lee, W.K.; Hwang, S.O. AEchain: A lightweight blockchain for IoT applications. IEEE Consum. Electron. Mag. 2021, 11, 64–76. [Google Scholar] [CrossRef]
  9. Bandara, E.; Tosh, D.; Foytik, P.; Shetty, S.; Ranasinghe, N.; De Zoysa, K. Tikiri—Towards a lightweight blockchain for IoT. Future Gener. Comput. Syst. 2021, 119, 154–165. [Google Scholar] [CrossRef]
  10. Guo, R.; Zhuang, C.; Shi, H.; Zhang, Y.; Zheng, D. A lightweight verifiable outsourced decryption of attribute-based encryption scheme for blockchain-enabled wireless body area network in fog computing. Int. J. Distrib. Sens. Netw. 2020, 16, 1550147720906796. [Google Scholar] [CrossRef]
  11. Mouha, N. The design space of lightweight cryptography. Cryptol. ePrint Arch. 2015.
  12. Sultana, M.; Hossain, A.; Laila, F.; Taher, K.A.; Islam, M.N. Towards developing a secure medical image sharing system based on zero trust principles and blockchain technology. BMC Med. Inform. Decis. Mak. 2020, 20, 1–10. [Google Scholar] [CrossRef]
  13. Meshcheryakov, Y.; Melman, A.; Evsutin, O.; Morozov, V.; Koucheryavy, Y. On performance of PBFT blockchain consensus algorithm for IoT-applications with constrained devices. IEEE Access 2021, 9, 80559–80570. [Google Scholar] [CrossRef]
  14. Dodis, Y.; Yampolskiy, A. A verifiable random function with short proofs and keys. In Proceedings of the Public Key Cryptography-PKC 2005: 8th International Workshop on Theory and Practice in Public Key Cryptography, Les Diablerets, Switzerland, 23–26 January 2005; pp. 416–431. [Google Scholar]
  15. Chen, J.; Micali, S. Algorand: A secure and efficient distributed ledger. Theor. Comput. Sci. 2019, 777, 155–183. [Google Scholar] [CrossRef]
  16. Ismail, L.; Materwala, H.; Zeadally, S. Lightweight blockchain for healthcare. IEEE Access 2019, 7, 149935–149951. [Google Scholar] [CrossRef]
  17. Manoj, M.; Srivastava, G.; Somayaji, S.R.K.; Gadekallu, T.R.; Maddikunta, P.K.R.; Bhattacharya, S. An incentive based approach for COVID-19 planning using blockchain technology. In Proceedings of the 2020 IEEE Globecom Workshops, Taipei, Taiwan, 7–11 December 2020; pp. 1–6. [Google Scholar]
  18. Srivastava, G.; Crichigno, J.; Dhar, S. A light and secure healthcare blockchain for iot medical devices. In Proceedings of the 2019 IEEE Canadian Conference of Electrical and Computer Engineering (CCECE), Edmonton, AB, Canada, 5–8 May 2019; pp. 1–5. [Google Scholar]
  19. Mohanty, S.N.; Ramya, K.; Rani, S.S.; Gupta, D.; Shankar, K.; Lakshmanaprabu, S.; Khanna, A. An efficient Lightweight integrated Blockchain (ELIB) model for IoT security and privacy. Future Gener. Comput. Syst. 2020, 102, 1027–1037. [Google Scholar] [CrossRef]
  20. Dorri, A.; Kanhere, S.S.; Jurdak, R.; Gauravaram, P. LSB: A Lightweight Scalable Blockchain for IoT security and anonymity. J. Parallel Distrib. Comput. 2019, 134, 180–197. [Google Scholar] [CrossRef]
  21. Lei, K.; Zhang, Q.; Xu, L.; Qi, Z. Reputation-based byzantine fault-tolerance for consortium blockchain. In Proceedings of the 2018 IEEE 24th International Conference on Parallel and Distributed Systems (ICPADS), Singapore, 11–13 December 2018; pp. 604–611. [Google Scholar]
  22. Dwivedi, A.D.; Malina, L.; Dzurenda, P.; Srivastava, G. Optimized blockchain model for internet of things based healthcare applications. In Proceedings of the 2019 42nd International Conference on Telecommunications and Signal Processing (TSP), Budapest, Hungary, 1–3 July 2019; pp. 135–139. [Google Scholar]
  23. Na, D.; Park, S. Fusion chain: A decentralized lightweight blockchain for IoT security and privacy. Electronics 2021, 10, 391. [Google Scholar] [CrossRef]
  24. Min, Y.A. The modification of pBFT algorithm to increase network operations efficiency in private blockchains. Appl. Sci. 2021, 11, 6313. [Google Scholar] [CrossRef]
  25. Li, C.; Zhang, J.; Yang, X.; Youlong, L. Lightweight blockchain consensus mechanism and storage optimization for resource-constrained IoT devices. Inf. Process. Manag. 2021, 58, 102602. [Google Scholar] [CrossRef]
  26. Xu, X.; Sun, G.; Yu, H. An efficient blockchain pbft consensus protocol in energy constrained iot applications. In Proceedings of the 2021 International Conference on UK-China Emerging Technologies (UCET), Chengdu, China, 4–6 November 2021; pp. 152–157. [Google Scholar]
  27. Cai, W.; Jiang, W.; Xie, K.; Zhu, Y.; Liu, Y.; Shen, T. Dynamic reputation–based consensus mechanism: Real-time transactions for energy blockchain. Int. J. Distrib. Sens. Netw. 2020, 16, 1550147720907335. [Google Scholar] [CrossRef] [Green Version]
  28. Kashyap, R.; Arora, K.; Sharma, M.; Aazam, A. Security-Aware ga based practical byzantine fault tolerance for permissioned blockchain. In Proceedings of the 2019 4th International Conference on Control, Robotics and Cybernetics (CRC), Tokyo, Japan, 27–30 September 2019; pp. 162–168. [Google Scholar]
  29. Lao, L.; Dai, X.; Xiao, B.; Guo, S. G-PBFT: A location-based and scalable consensus protocol for IOT-Blockchain applications. In Proceedings of the 2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS), New Orleans, LA, USA, 18–22 May 2020; pp. 664–673. [Google Scholar]
  30. Li, Y.; Wang, Z.; Fan, J.; Zheng, Y.; Luo, Y.; Deng, C.; Ding, J. An extensible consensus algorithm based on PBFT. In Proceedings of the 2019 International Conference on Cyber-Enabled Distributed Computing and Knowledge Discovery (CyberC), Guilin, China, 17–19 October 2019; pp. 17–23. [Google Scholar]
  31. Zhong, W.; Zheng, X.; Feng, W.; Huang, M.; Feng, S. Improve PBFT Based on Hash Ring. Wirel. Commun. Mob. Comput. 2021, 2021, 7327372. [Google Scholar] [CrossRef]
  32. Du, M.; Chen, Q.; Ma, X. MBFT: A new consensus algorithm for consortium blockchain. IEEE Access 2020, 8, 87665–87675. [Google Scholar] [CrossRef]
  33. Gao, S.; Yu, T.; Zhu, J.; Cai, W. T-PBFT: An EigenTrust-based practical Byzantine fault tolerance consensus algorithm. China Commun. 2019, 16, 111–123. [Google Scholar] [CrossRef]
  34. Micali, S.; Rabin, M.; Vadhan, S. Verifiable random functions. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science (Cat. No. 99CB37039), New York, NY, USA, 17–19 October 1999; pp. 120–130. [Google Scholar]
Figure 1. Blockchain technology use cases in the healthcare domain.
Figure 1. Blockchain technology use cases in the healthcare domain.
Applsci 13 03757 g001
Figure 2. PBFT consensus operation.
Figure 2. PBFT consensus operation.
Applsci 13 03757 g002
Figure 3. Node architecture with direct and indirect transactions.
Figure 3. Node architecture with direct and indirect transactions.
Applsci 13 03757 g003
Figure 4. Flowchart of the proposed algorithm.
Figure 4. Flowchart of the proposed algorithm.
Applsci 13 03757 g004
Figure 5. Architecture of the identified healthcare use-case to demonstrate the proposed model.
Figure 5. Architecture of the identified healthcare use-case to demonstrate the proposed model.
Applsci 13 03757 g005
Figure 6. Relationship between TPS and Time.
Figure 6. Relationship between TPS and Time.
Applsci 13 03757 g006
Figure 7. Throughput Analysis.
Figure 7. Throughput Analysis.
Applsci 13 03757 g007
Figure 8. Transaction Latency.
Figure 8. Transaction Latency.
Applsci 13 03757 g008
Figure 9. Faulty node rate.
Figure 9. Faulty node rate.
Applsci 13 03757 g009
Figure 10. Communication between nodes.
Figure 10. Communication between nodes.
Applsci 13 03757 g010
Table 1. Comparison PBFT with various PoW and PoS consensus algorithm.
Table 1. Comparison PBFT with various PoW and PoS consensus algorithm.
Consensus AlgorithmTypeFault TolerancePower ConsumptionScalability
PoW (Proof of Work)Proof based50%HighHigh
PoS (Proof of Stake)Proof based50%LessHigh
PBFT (Practical Byzantine Fault Tolerance)Voting based33%NegligibleLess
Table 2. Summary of existing PBFT consensus algorithms.
Table 2. Summary of existing PBFT consensus algorithms.
RefConsensus AlgorithmParametersRemarks
SecurityPrivacyCommunication Overhead
[29]Geographic-PBFTMIDMIDHIGHProposed model selects geographically distributed, powerful, and authenticated IoT devices for consensus operation.
[30]EPBFTMIDLOWHIGHProposed model does not perform a detailed assessment of the reliability of the nodes.
[21]Reputation-based PBFTMIDLOWMIDProposed model selects nodes with high reputation values which are given more priority in voting process.
[31]HRPBFTMIDMIDLOWProposed model uses Hash ring to group the nodes. Primary node is elected based on the group.
[32]MBFTHIGHMIDLOWProposed uses two-layered consensus algorithm.
[33]Trust PBFTHIGHMIDLOWProposed model selects nodes based on the node trust value for the consensus operation
Table 3. Comparative analysis of proposed algorithm with other existing algorithms.
Table 3. Comparative analysis of proposed algorithm with other existing algorithms.
Consensus AlgorithmNodes Participating in the Consensus ProcessNode Reliability AssessmentNetwork TypeNode Election FairnessCommunication Overhead
PoWAll NodesNoPermission lessNoHigh
PoSAll NodesNoPermission lessNoHigh
DPoSAll NodesNoPermission lessNoHigh
PBFTAll NodesNoPermissionedNoHigh
Proposed AlgorithmAll NodesYesPermissionedYesLow
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.

Share and Cite

MDPI and ACS Style

Hegde, P.; Maddikunta, P.K.R. Secure PBFT Consensus-Based Lightweight Blockchain for Healthcare Application. Appl. Sci. 2023, 13, 3757. https://doi.org/10.3390/app13063757

AMA Style

Hegde P, Maddikunta PKR. Secure PBFT Consensus-Based Lightweight Blockchain for Healthcare Application. Applied Sciences. 2023; 13(6):3757. https://doi.org/10.3390/app13063757

Chicago/Turabian Style

Hegde, Pawan, and Praveen Kumar Reddy Maddikunta. 2023. "Secure PBFT Consensus-Based Lightweight Blockchain for Healthcare Application" Applied Sciences 13, no. 6: 3757. https://doi.org/10.3390/app13063757

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

Article Metrics

Back to TopTop