1. Introduction
In the current era, every human being has the right to good health facilities. The emergence of an increasing number of diseases on a daily basis has also introduced new drugs into the market with different new labels. These drugs help the patient to get instant relief from pain, but despite the advantages, these drugs also have disadvantages. These drugs are manufactured by different pharmaceutical companies, and the authenticity of these organizations is unknown. According to the World Health Organization (WHO), tens of thousands of deaths occur in developing countries due to fake drugs, and many of the victims are children [
1,
2]. According to statistics, the annual business loss of US pharmaceutical industries is approximately
$200 billion due to drug counterfeiting [
3,
4]. Counterfeiting is not the main reason itself; rather, as compared to traditional drugs, these counterfeit drugs produce different side effects to human health. These drugs may not help patients at all: Instead of curing the patient, they affect their health, and the side effects are even more dangerous to a person’s antibiotic resistance cells. It is difficult to detect counterfeits because these drugs pass through different complex distributed networks, thus forming opportunities for counterfeits to enter the authentic supply chain. In 2016, healthcare spending in the United States reached a record level of about
$3.2 trillion [
5]. It is estimated that about a quarter of this amount will be used for management costs. Several new companies, including Hashed Health, are trying to transform the healthcare industry to significantly reduce redundancy while preserving privacy by utilizing the cryptography hash function [
6].
Currently, when someone is suffering from a disease, he or she goes to see a doctor. The doctor then examines the patient and, if needed, prescribes medication, which the patient can buy at a pharmacy or drug store. The list of medication is written on a special paper (called a prescription), usually signed or stamped by the doctor. The medical staff then goes to the pharmacy with the prescription. The pharmacist deciphers the prescription and hands over the required drug to the medical staff. This entire process is unsafe because it is relatively easily to forge a prescription. As the health factor is a main concern for everyone, many healthcare organizations emphasize drug traceability to avoid drug counterfeiting by using the latest IT technology (i.e., Blockchain) [
7,
8,
9].
Blockchain is a decentralized ledger that is shared by all network participants. Because of its nature, modifying an existing ledger is not mathematically possible. This is achieved through the use of cryptographic algorithms. Blockchain data structure is a list of data blocks that are timestamped, immutable, and in strict order [
10]. Immutability is implemented using a hash, a digital fingerprint of data. Every block has a reference to a previous block’s hash and thus gives a strict order to the blockchain. Following hashes from the current block ends with block 0—called the genesis block. It is the first created block on a specific blockchain. Blocks contain a list of transactions. This type of data structure enables provenance, that is, a single place of origin for any transaction. Since all blockchain transactions are timestamped and immutable, fraudulent drug traffickers can be easily identified. There are two types of blockchains: Public and private. Reliable healthcare companies need to register their products in private blockchain systems to ensure the reliability and quality of their products [
11]. The fact that the private blockchain is hosted by a central entity and the specific manufacturer or supplier has access to the so-called drug blockchain proves its authenticity. The transparency of this blockchain is very helpful. Once the drug/medicine is manufactured and transferred from the manufacturer to the vendor, operational data are recorded in the blockchain. The entire process of checking the drug is very easy, and all links in the chain can be determined at any time. In the past, many blockchain systems were built on a permissionless network, which was unable to keep the ethnicity and privacy of the user data. In permissionless blockchain, anybody can interact with the network by creating their own address. However, in the case of healthcare, the permissionless blockchain network failed to manage the integrity and privacy of data related to patient information, drug management, and medical reports. As the primary goal of healthcare-based solution is to keep medical data secure and transparent, many permissionless healthcare blockchains are designed by applying some additional access control policy to maintain the integrity of data. However, these additional access control policies affect the efficiency of these healthcare systems. Many existing systems use the native cryptocurrency like token, which increases the mining cost. Regardless, the dispensation rate is limited (i.e., Ethereum cryptocurrency and is capable of up to 20 transactions per second only, which is very limited). Nevertheless, many challenges exist in the current blockchain-based healthcare system using a permissionless blockchain network as shown in
Figure 1.
As the complexity of the supply chain becomes more important than it was a decade ago, visibility in accessible, reliable, and secure supply chains is becoming increasingly important. Moreover, this increasing complexity affects the cost of goods and their availability to consumers. The recent advancement in information systems and evolution of the blockchain technology has shifted the traditional drug supply chain approach in healthcare to secure automated systems. To enable a software platform to be used without a trusted third party, one of the possibilities is to use Hyperledger Fabric and smart contracts. One of the latest platforms is open-source Hyperledger Fabric, a modular system that uses conventional programming languages for smart contracts [
12]. This opens up vast possibilities for using product-centric enterprise systems. In this paper, the main focus is the design and implementation of a secure drug delivery system based on blockchain using Hyperledger Fabric in a smart hospital. The system will show how blockchain using Hyperledger Fabric technology can be used to securely share and control drug delivery record information among different departments of the hospital. The following are the overview of the contributions being made: Initially, we developed a novel drug delivery blockchain platform in which electronic prescription along with drug dose, doctor, and patient information is stored and shared in a secured permissioned chain of network in an efficient way across different departments of the hospital. This blockchain platform is moving towards a new web-based model for a user-friendly interface using front-end programming languages such as JavaScript and HTML5 to enhance the usability of the management of assets and participants within the organization. Moreover, we used the Composer REST APIs to visualize the product-specific services. We also used smart contracts in order to provide the data consistency of the drug and other heath-related information. The access control policy was also defined to authenticate and authorize the request for the transactions in the proposed system. For cases of a large number of transactions and medical information, we present a new approach to incorporate and deploy Couch DB for each node to avoid data redundancy across the blockchain file system. Finally, we checked the hands-on experience of the system by applying a factual case study in a smart hospital based on Hyperledger Fabric.
The remaining paper is categorized into seven sections which are as follows:
Section 2 explains the related work on drug delivery blockchain-based solutions and also gives a critical analysis on existing healthcare systems based on blockchain.
Section 3 gives the detailed system methodology, design architecture, smart contract design, and overall transaction process of the proposed system.
Section 4 elaborates on the implementations, smart contract modeling, and distributed ledger storage design of the proposed system.
Section 5 presents the results of the proposed system.
Section 6 enlightens the implications of the proposed work through benchmarking with current healthcare solutions, and
Section 7 concludes the paper.
2. Related Work
Blockchain is the one of the most revolutionized technologies of the future. It uses distributed ledger technology to record and transmit transparent, secure, controllable, and fault-tolerant data. Blockchain has the capability to make organizations decentralized, transparent, efficient, democratic, and secure. Over the years, many blockchain platforms have been proposed in the literature. These blockchain applications could be segregated into three categories, i.e., Public Blockchain, Private Blockchain, and Consortium Blockchain [
11]. In this study, our main focus is to cover heath-related blockchain and medicine supply chain in blockchain. The following are few of the industries that have disrupted blockchain (e.g., supply chain management, networking and internet of things, forecasting, banking and payments, insurance, forecasting, private transportation, carpooling, online data storage, voting, real estate, government, charity, health, energy management, forecasting, online music, and retail).
In [
13], the author introduced MedRec, which is a blockchain-based decentralized distributed ledger technology for sharing and maintaining patients health records. The MedRec is a bitcoin-based solution that aims to resolve issues like system interoperability, slow access to medical data, patient, agency, fragmentation, etc. The novel blockchain-based solution provides patients with complete access to medical information and immutable logs across providers. The MEdRec platform manages to keep patients’ medical records secure and provides confidentiality, accountability, and real-time sharing of heath record. The MedRec block data signify viewership and ownership shared by the users of a private, peer-to-peer network. The MedRec is a smart contract-enabled platform that uses proof-of-work as a consensus algorithm in its working mechanism [
14]. The smart contract uses a cryptographic hash function to secure the integrity and privacy of patients’ heath records. The smart contract structure of MedRec is categorized into two parts, i.e., register contract (RC), patient–provider relationship contract (PPR), and a summary contract (SC). The RC is responsible of identity registration, PPR provides ownership, access info, EMR queries and hashes, permissions and mining bounties, and SC is responsible for maintaining the patient medical history and also gives details about the patient’s current status in the system.
At present, one the main problems in healthcare is that organizations hold multiple and fragmented health records of patients. In [
15], MedicalChain solved these problems by putting medical record transactions on the blockchain to create a smart healthcare ecosystem. In MedicalChain, a smart contract is launched to give time-limited access to a patient’s electronic health record. Doctors write notes and scan lab results, which are all recorded as transactions. The pharmacy dispenses medication and also records the transaction on the blockchain. The patient gives time-limited access to their insurer for verification of treatment and payment settlement. The patient gives time-limited access to their insurer for verification of treatment and payment settlement. With smart contracts, patients allow doctors to remotely review medical cases and provide advice or a second opinion. Patients give access to their health record to insurers to monitor fitness progress and be rewarded with tokens or reduced insurance premiums. Patients are also rewarded for giving research institutions time-limited access to their health record for medical trial purposes. MedicalChain issues Med Tokens, which patients use for storing electronic health records on the blockchain, data from wearable fitness devices, and transfer value and payments. MedicalChain will also be a platform that enables developers to build smart applications that analyze all of these data and provide recommendations, such as nutrition and fitness routines.
MeFy is a subscription-based model, in which the user of the MeMe Care signs up for a yearly subscription, allowing them any number of tests throughout the years for the cost of just consumables. Through its eConsult feature, MeFy connects worldwide doctors to worldwide patients, thereby solving accessibility issues, and with its MeMe Edge device, it provides authenticity to the test conducted. MeMe Edge powered by AI will possess capabilities to generate autoprescription for off-the-shelf medicine by processing individuals’ past health data, treatments, and environmental factors impacting the health of individuals of the area. Due to its eConsult function, Mefy connects worldwide doctors with worldwide patients, thereby solving the accessibility problems, and using the MeMe Edge device, it ensures the authenticity of the test conducted [
16].
MedicoHealth is a blockchain-based project designed to improve the fragmented healthcare system. The MedicoHealth platform allows for fully anonymous and safe client communication with world’s leading physicians. Physician credentials, together with license validity information, are updated in an immutable decentralized database. Patient data are anonymously stored and accessed only by selected physicians for a limited amount of time. Payments are fully tokenized and anonymous. Tokens run the system and compensate the service provider, platform, underlying protocol, and blockchain layer use [
17].
MediBloc’s healthcare information platform is a personal data ecosystem for patients, providers, and researchers, built on blockchain technology [
18]. Our mission is to streamline medicine for patients, providers, and researchers by redistributing value behind personal healthcare data ownership. Through MediBloc, you can effectively own your medical data, providers can remove redundancies to provide better care, and your valuable data can help researchers to push the advancement of medicine faster than ever.
In [
19], the author enlightened the challenges in current healthcare blockchains. According to the study, the pharmaceutical supply chain is one of the most prominent industries which needs attention. The WHO says that around
$200 billion worth of fake, counterfeit, and substandard medicine is supplied in the global market every year [
5]. Therefore, many blockchain healthcare platforms have been introduced, e.g., block verify [
19], chronicled [
20], farmatrust [
21], and many others to secure the pharmaceutical supply chain.
The author in [
22] presented a method to share medication history in a secure and efficient way among different healthcare institutions. In this study, a decentralized medication management system (DMMS) was introduced, in which a physician examines the patient and writes a prescription. The prescription is encrypted with the patient’s public key, and no one can access the patient’s record without his or her private key. The patient can view his or her record with different perspectives, and at the same time, the doctor can also view the patient’s record after approval of the patient. The proposed system assures the integrity, authenticity, security, and privacy of medication history across different healthcare institutions.
HDG (Healthcare Data Gateway) [
23], a smart application that allows a patient to control and manage the sharing of healthcare data, is a blockchain-based application that consists of a gateway and a traditional database. The smart application manages patient medical data in a blockchain ledger or a storage system. The HDG-centric healthcare ecosystem is divided into three layers, i.e., the storage layer, data management layer, and data usage layer. The storage layer provides independent storage, which is highly secure and available for healthcare data. The medical data are stored in the private blockchain, which is encrypted with different cryptographic techniques. The data management layer works as a gateway which evaluates all the incoming and outgoing data access. The layer also manages patient data and also authorizes other application data. The data usage layer contains the list of entities that use or access the medical data of the patient.
Healthbank [
24] is a blockchain-based startup known for controlling, managing, and sharing data related to patient healthcare among different healthcare organizations. Healthbank is a Swiss digital startup which shares the patient’s personal medical history and records with the permission of the patient in a secure way. The decentralized application is secure, robust, and efficient.
The “counterfeit medicine project” was recently launched by the Hyperledger. The Hyperledger project aims to target drug counterfeiting and its current use cases. Notable research companies like IBM, Cisco, Accenture, Intel, Bloomberg, and block stream are currently involved in this research network of drug counterfeiting. According to this project, every drug which is manufactured is issued with a timestamp on it. Therefore, in a blockchain technology, every drug which is produced is traceable with its origin and manufacturer details. This project decreases drug counterfeiting [
25,
26].
Healthcare is based on many existing systems and is another area that is well suited for disease. One of the main problems in hospitals is that there is no secure platform for storing and analyzing data. The lack of adequate infrastructure might often make it a victim of hackers. However, in block chain technology, hospitals can safely store data such as medical records and share them with certified authorized experts, doctors, and patients [
27]. The enriched features of blockchain technology improve data security and help to enhance the correctness and timeliness of diagnosis. Gem [
26] and Tierion [
28] are two emerging companies focusing on the current medical data center based on blockchain technology.
In the supply chain, block chain technology transactions are recorded permanently and are monitored safely and transparently. This greatly reduces the time required, which minimizes the chances of human errors. Blockchain technology can also be used to monitor cost, labor, as well as waste and emissions at every step of the supply chain [
29]. The distributed ledger technology enables the state of a fair-trade product by providing ethnicity and tracking its origin. Many of the blockchain startup working in the industry (i.e., Provenance, Fluent, Skuchain and Blockverify) are using blockchain to improve supply chain networks [
30,
31].
In the present era, due to a lack of resources and infrastructure crowdfunding, it has become a common technique of fund raising for new startups and projects. There exists a crowdfunding platform which developed a conviction between supporters and project creators, and they charge high fees. Instead of creating trust through traditional approaches, blockchain smart contracts are used, and online reputation systems are used for crowdfunding. This blockchain crowdfunding removes the need for a middle-man [
32]. New projects can raise capital by issuing tokens and be exchanged for products, services, or cash. Several blockchain-based startups like Starbase [
33] raised millions of dollars through such token sales.
Today, due to lack of transparency and mistakes in public records, buying and selling real estate is difficult. In the real-estate industry, blockchain technology is also used to keep records secure, transparent, and to speed up the buying and selling process. The decentralized distributed ledger ensures the accuracy of a document, tracking, verifying ownership, and transferring property deeds [
34]. Ubitquity [
35] is a secure platform based on blockchain technology for real-estate records-keeping that is a substitute of a legacy-based system.
Energy management has been a very concentrated industry for a long time. Energy consumers and producers cannot purchase energy directly from each other and have to go through a trusted private intermediary or public grid. TransactiveGrid [
36] is an Ethereum-based startup that permits its customers to buy and vend energy from each other in a peer-to-peer way.
UK-based GovCoin uses blockchain technology and is serving the government in allocating public benefits [
37]. Contenders like blockchain are very efficient for implementing basic income. Startups like circles use blockchain technology to develop and implement a universal basic income [
38].
Corruption, poor management, and dishonesty are the main causes that affect the growth and progress of every institution. Applying blockchain technology in every process of government operation can reduce the involvement of bureaucracy and also makes the operation secure, transparent, and efficient. Dubai is transforming all of its government operations by aiming to use systems based on blockchain technology by the end of 2020 [
39].
Voting is one of the main areas of society that blockchain will disrupt. Blockchain technology ensures that only the registered voter can vote, and only authentic votes are counted. The distributed ledger and smart contracts can verify the voter’s identity and keep track of every electronic polled vote. The public-viewable ledger is the main step toward a free and fair election [
11]. Two startup companies like Democracy Earth [
40] and Follow My Vote [
41] are planning to disrupt democracy by developing a voting system for government based on blocking technology.
Corruption and inefficient management corrode every single organization. In the case of a charity, it is important that only those in need get money, i.e., those who are really meant to have it. The BitGive Foundation is a blockchain-based charity firm that uses a distributed ledger which is secure and transparent. Thus, using blockchain technology, donors can easily track and make sure their money is going to end up in the right hands and received by the intended party [
42].
At present, everything is accessible through the cloud. Therefore, people use online storage like google drive, one drive, and many other service providers which give free space to their user. However, in cases of a centralized server, the data are managed and controlled in a central location, so they can be easily become victims of hackers. In centralized servers, there is also the chance of data loss and human error because everything relies on a central computer. Storj is an example of a decentralized cloud storage platform using blockchain technology.
Blockchain revolutionized the local transport industry by introducing e-wallet and its decentralized behavior. The decentralized concept of blockchain allows its users and owners of a ridesharing app to agree on terms and conditions without the involvement of a third-party provider. Arcade City [
43] and La’Zooz are the two startups that use blockchain technologies. The built-in e-wallets make it easier for car owners to pay expenses like highway tolls, parking tickets, electricity top-ups, and car maintenance automatically for their vehicle. Currently, Innogy, UBS, and ZF are a few of the companies that use e-wallet, which was developed using blockchain technology [
44].
Trust management plays a pivotal role in the insurance Industry. Blockchain technology is an innovative way of dealing trust and can be used to authenticate and track numerous types of data in insurance contracts like the identity of insured persons. Previously, these insurance companies relied on oracle and other software companies for data management, but in the future, not even just insurance companies but also oracle and other software companies will collaborate with blockchain to integrate real-world data with smart contracts. Aeternity [
45] is a powerful tool that provides real-world data for the insurance industry.
IBM and Samsung jointly introduced a new idea called ADEPT (Autonomous Decentralized Peer-to-Peer Telemetry) using blockchain technology. The ADEPT concept is to create the decentralized network of Iot devices and aims to eradicate the centralized mode to handle communication. The main purpose of ADEPT is to create an environment in which devices will able to communicate with each other directly, update and monitor the system performance like software updates and bug management [
46], etc.
Blockchain technology has transformed the entire approach to consulting, forecasting, research, and analysis. Blockchain-based platforms like Augur are a decentralized market for predications. This Ethereum-based solution is used to monitor and place bets on everything like stocks, election, sports, weather, and even cryptocurrencies in a decentralized manner [
47].
Due to the emergence of blockchain technology, the data are secured as they never were before. Although the ledger in blockchain is shared, nevertheless, the data are encrypted and verified using enhanced cryptography algorithms. This cryptography algorithm protects data from theft and also maintains the integrity of data [
48].
Blockchain removes the barrier of current banking and payment systems by giving access to financial services. People who do not have access to traditional banking systems use bitcoin, which allows them to send money anywhere across the world instantly, securely and with comparatively lower fees. Several banks around the globe like Barclays espouse blockchain technology to increase business and make their transactions efficient, fast, and secure. According to IBM, 65% of the total recognized banks around the world will start using blockchain by the end of 2019 [
49].
As stated above, theses blockchain platforms are either not open-source or they are permissionless; therefore, the general user cannot modify them for their own purpose. Furthermore, most of the systems presented in literature reviews are either related to managing electronic medical records or sharing the health records of patients and doctors. Nevertheless, none of these systems will address secure drug delivery combined with doctor and patient management using Hyperledger Fabric platforms. Moreover, many of the systems discussed above use the inherent cryptocurrency which increases the computational power during the transaction. To the best knowledge of the author, there has been no functional, medical blockchain model for drug supply chain management based on Hyperledger technology built so far.
5. Execution Results
This section illustrates the execution of the proposed system and provides some snapshots illustrating the process of execution.
Table 1 and
Table 2 show the implementation environment of both the front-end and the back-end of the proposed system, which were investigated and discussed in an earlier section. Similarly,
Figure 13 shows the detailed API request and response of different modules of the proposed system with the Hyperledger Composer REST server. Firstly, the network authorizes the user by validating the user ID, then the request will be initiated by the client to the REST server in order to submit the transaction to the proposed blockchain platform. In order to perform the transactions, the smart contract functions are triggered by the blockchain platform, which returns a response to the client after successful execution of a transaction.
Figure 15 shows the doctor dashboard showing a web form to allow the doctor to add their profile. The entered data have been validated, and if the form field is not filled out or contains an invalid value, an exception is thrown, and as a result, the form does not proceed further. Data validation is crucial in any system design, since if the parameters are given wrong values, this will have a drastic effect on the overall results of the system, and there will be endless anomalies in the overall flow of the system. The proposed doctor dashboard user interface allows the users to perform CRUD on a selected doctor.
Similarly, in
Figure 16, the user can update the existing doctor information by sending a request to the blockchain platform, and on successful response, the doctor information will be repopulated on the user interface. Doctor attributes like username, specialization, firstname, lastname, and department will be updated on successful response from the Hyperledger Composer REST server.
In
Figure 17, the doctor record can also be verified by providing
as a parameter to doctor API in the Hyperledger Composer REST server. The query request is sent to rhe blockchain platform and on successful response, it will generate
as 200,
which contain the meta-data (i.e., department, specialization, firstname, lastname, username, and email address) of the specific doctor against the requested id, and
on which the request was sent. The response of request can be viewed as a json format on the Hyperledger Composer REST server. The request URL contains the address of the API along with the port on which it is running.
Figure 18 illustrates the details of an individual drug along with the patient and doctor. The drug management dashboard allows the user to add information of a specific drug. The entered drug data have been validated, and if the form field is not filled out or contains an invalid value, an exception is thrown, and as a result, the form does not proceed further. The proposed drug management interface allows the user to perform CRUD on a selected drug by specifying DrugId. Moreover, drug management also keeps the record of individuals’ prescribed medicine by the corresponding doctor. Additionally, drug description, expiry date, manufacture date, and manufacturer are also stored to describe the overall behavior of the drug.
Similarly, in
Figure 19, the user can update the existing drug information by sending a request to the blockchain platform, and on successful response, the drug information will be repopulated on the user interface. Drug attributes like drugname, price, description, makers, expiryDate, manufacturerDate, and unitofMeasure will be updated on successful response from the Hyperledger Composer REST server.
The authenticity of a record can also be verified by querying directly on the Hyperledger Composer REST server. In
Figure 20, the query request “
” is initiated by the client to the REST server in order to submit the transaction. The Hyperledger Composer REST server responds to the query request in the form of a
, which contains the meta-data related to the drug. The response of the request can be viewed in a json format on the Hyperledger Composer REST server. The request URL contains address of the API along with the port on which it is running.
Figure 21 demonstrates the prescription dashboard in which details of an individual prescription are recorded. The prescription holds the record of a patient with the assigned doctor and the number of drugs prescribed by the doctor along with doctor notes, all stored in prescription management. The prescription management dashboard allows the doctor to add the information of a specific patient during patient examination.The entered data have been validated, and if the form field is not filled out or contains an invalid value, an exception is thrown, and as a result, the form does not proceed further. The proposed prescription management interface allows the doctor to perform CRUD on a selected prescription by specifying PrescriptionID. Moreover, the doctor can also update the drug dose and doctor notes of a specific patient. Additionally, prescription management also keeps track of individual drugs which are prescribed by the doctor in prescription.
Similarly, in
Figure 22, the user can update the existing prescription information by sending a request to the blockchain platform, and on successful response, the prescription information will be repopulated on the user interface. Prescription attributes like prescriptionID, PrescriptionTime, doctor, drugdose, and DoctorComment will be updated on successful response from the Hyperledger Composer REST server.
The record authenticity of a prescription can also be verified by querying directly on the Hyperledger Composer REST server. In
Figure 23, the query request “
” is initiated by the client to the REST server in order to submit the transaction. The Hyperledger Composer REST server responds to the query request in the form of a
, which contains the meta-data related to the prescription. The response of the request can be viewed in a json format on the Hyperledger Composer REST server. The request URL contains the address of the API along with the port on which it is running.
Figure 24 shows the snapshot related to transaction history. The transaction history represents the complete log of activities performed through the web to blockchain platform. The log contains attributes like timestamp, which represents the time of transaction and is unalterable, type, which represents the type of transaction performed, and participant, which is the user of the system who performed that specific transaction.
Figure 25 represents the details of a specific transaction in which transactionID, TransactionType, TransactionInvoked, ParticipantInvoking, IdentityUsed, and transactionTimeStamp are mentioned. Every single activity performed in the system can be verified from the history dashboard.