Abstract
In recent years, blockchain technology has been successfully used in many distributed environments where different stakeholders, who do not have any trust between them, interact with each other through a secured and transparent platform. The use of blockchain in healthcare insurance industry has not been studied methodically. In this study, we develop a blockchain based Secured and Automated Health Insurance Claim (B-SAHIC) processing system. First, we design an Entity-Relationship (ER) diagram identifying all actors with their respective data and relations between them. We also develop the business model and algorithms for all necessary steps. We implement the system in Hyperledger Fabric and deploy a smart contract to implement these algorithms. We introduce CouchDB to store the OffChain data where we store World-State Database. B-SAHIC provides a web-based portal for all actors who interact with the blockchain. Privacy of clients’ claim-related data is ensured by encrypting treatment-related data with a new key that is derived uniquely for each new submission done of clients’ personal documents. We have also deployed Hyperledger Explorer, a user-friendly web application tool for monitoring the health state of each node participating on the blockchain network. We have studied the performance of B-SAHIC for two to six peer nodes. Moreover, our performance study shows that B-SAHIC is fast and scalable. In our study, the average query latency is decreased from 0.07 second (for two peer nodes) to 0.02 second (for six peer nodes) in case of 1300 queries per second while the average transaction latency remains unchanged (around 3.5 seconds) for 300 transactions per second. Moreover, B-SAHIC consumes minimum resources, around 350MB only for two peer nodes. We believe that the development process of this blockchain based platform can be applicable for the automation of other insurance industry too.
Introduction
An insurance is an agreement between an insurance company and an individual client, where the insurance company takes the hedge and provides financial protection or compensation against losses of assets [1]. Similarly, a health insurance handovers the risk of health damage from an individual client to an insurance company. This type of insurance provides coverage of medical expenses [2] that occurs due to sickness, and thus, protects an insured from potential financial losses. It compensates a wide range of healthcare related expenses including doctor consultation fees, hospitalisations cost, prescriptions drugs, fees incurred due to disability or injury from any accident, accidental death and sometimes dental expenses [3].
A health insurance claiming consists of the bills of a patient who took services from a healthcare. It is a crucial but complicated step of healthcare insurance system [4]. It takes place between an insurance company and a healthcare or a client. Generally, the claiming process begins with the client, who receives services from the healthcare service providers. Then, depending on the insurance model, the healthcare provider or the client submits a claim to the insurance company. Now, it goes for validation based on the policies including the patient’s insurance plan and value [5].
Finally, for a valid claim, the insurance company pays for legal claims, requested by the healthcare or client according to the insurance policy. The increase of the health insurance cost badly effects the services offered by the insurance company. Poor information management and human error further increase the expenses of the insurance company. One major cause is payment error while dealing out claims, which results in further administrative works called rework for reprocessing a claim. For a typical health insurance company, it accounts up to 30% managerial staffs need to accomplish this rework [6].
Another challenge faced by the insurance company is information leakage that might includes fraudulent claims, abuse, waste and errors, which leads to the increase of the premiums by hundreds of dollars. According to Federal Bureau of Investigation (FBI) [7], about 80 Billion US dollar economic losses arise annually due to insurance fraud. In addition, 18% of individual injury and 21% of forcibly injury claims concluding with a full refund are fraudulent [8]. Note that, both the healthcare provider and the client might be dishonest and can send claims for their personal financial benefits. A client may send the same claim request to multiple insurance companies too [9]. Similarly, a healthcare provider can forward fraudulent claim request by simply changing the patients’ admission and discharge dates. Traditional insurance fraud detection techniques are very complex to understand, require expert knowledge and notable inspections, and also consume cost, time and energy [10].

Challenges faced by the current insurance industries.
According to the PwC annual report of 2017, insurance sectors are facing some major challenges such as lack of talent, data storage and privacy, IT security, digital identity and lack of new business models [11]. The significance of these challenges are shown in percentages in Fig.1. All these challenges are related to technology except talent that requires human capital. Automated claim processing solutions may reduce the aforementioned problems to some extent but they might also introduce new issues including patients’ and healthcare providers’ information privacy [4]. Therefore, there is a pressing need to deploy a suitable technology that has the potential to conceive distributed, transparent and secured solutions to overcome those challenges along with personal data protection. One such solution can be developed using the permissioned blockchain where information are shared in a distributed common ledger and accessed in a collaborative manner. Moreover, access is limited to the selected and authenticated participants only.
Blockchain is a Distributed Ledger Technology (DLT), where records are stored in distributed ledgers in an immutable manner [12]. These records are shared among multiple participants connected through the blockchain network. Blockchain, in general, consists of a set of ordered blocks that hold secured time-stamp based transactions [13]. Each block is connected with its preceding block using a cryptographic hash. If any change occurs in one block that would alter hashes of all the subsequent blocks. Thus, it preserves integrity and security of transaction logs while eliminates the risk of hacking [14]. In blockchain, the history of each transaction can be recreated at any time [15]. Smart contract is another key element of blockchain technology, which is written into code of lines [4]. Smart contracts are state-driven, self executable contracts that regulate assets [16]. All the business logic and pre-determined access policies with obligations could be implemented by deploying smart contract.
In this research, we demonstrate that permissioned blockchain technology has the ability to provide traceability and transparency in a distributed health insurance claim system. Permissioned blockchain will allow to exchange information among multiple connected participants in a secured way without any central dependency while preserving privacy. This decentralized trust property of blockchain is skillfully suited for the insurance claim processing and provides scalability [12]. In this paper, we propose a blockchain based Secured and Automated Health Insurance Claim (B-SAHIC) processing system that removes the frauds and mitigate the risks during claim request submission and processing. Our proposal also furnishes clients’ personal data privacy. Using Hyperledger Fabric, we have developed a permissioned blockchain-based automated claim processing system. We have identified three main actors–the insurer, the healthcare and the client–who are connected through this system. In our system both the healthcare or the client can submit a claim with proper evidence of treatments. Our system can also detect duplicate treatment application records (if submitted) for the same client. We have made our model user-friendly and easily accessible for all the actors involved through designing different web portals for each category of user. Using this portal users can interact directly with the blockchain network. Our system provides privacy protection for clients’ treatment related data that she submits during claim submission. Their data is stored in encrypted format where a data-specific new encryption key is derived run-time for each data. Finally, we have installed a user friendly web application, Hyperledger Explorer, to view blocks, transactions, chaincode, network information and any other relevant data stored in the ledger. The main contributions of this research work are summarized as follows: A blockchain based Secured and Automated Health Insurance Claim (B-SAHIC) processing system has been proposed that aims to solve the challenges faced by the existing solutions. All the involved actors, necessary workflows, components and their relationship have been identified. All the algorithms for the smart contracts have been designed, and been implemented through chaincode. A prototype has been implemented using popular, open-source blockchain solution, i.e., Hyperledger Fabric. A user-friendly, web-based GUI has been developed that provides different interfaces for all the actors to interact with the blockchain network. A performance study has been carried out using Hyperledger Caliper, a bench-marking tool for blockchain technology. Customers’ data privacy has been maintained. Data has been stored in encrypted form using unique encryption key for each data.
The rest of the paper is organized as follows: section 2 presents the key concepts relating to health insurance and Blockchain technology. Section 3 summarizes the previous work based on blockchain technologies, and other technologies (e.g., data mining, big data and artificial intelligence) that are used to find fraudulent and re-work claims in the insurance systems. Section 4 describes the design architecture of the proposed health insurance claim processing system including the Entity-Relationship (ER) diagram. Section 5 discusses the implementation of the proposed blockchain platform. It describes the majors steps, business model, algorithms to be implemented in chaincode, development environment, distributed ledger storage structure, and security and privacy services provided by our proposed system. The execution of the system through the GUI we have developed and the Hyperledger Explorer have been described in section 6. Section 7 presents the performance study using Hyperledger Caliper, which has been carried out based on latency and resource utilization. Section 8 compares B-SAHIC with the existing solutions and identifies the distinguishing features of it. Finally, section 9 concludes the paper by identifying the contributions and the future plan.
This section provides background of the two key concepts–health insurance system and blockchain technology–that are necessary for our study.
Health insurance system
Health insurance is a type of insurance that typically provides coverage the risk of health of an individual. It protects one from sudden financial loss and compensates for the costs incurred due to medical treatments and prescribed drugs [3]. Following are different definitions and processes that are important to understand a insurance claim system.

Generic structure of blockchain.
Fraud: Intentionally misleading or falsifying the transactions in order to secure benefits or get over payment. Abuse: Inappropriate utilization of services, for example prescribing a patient drugs or tests that are not medically required but covered by the policy. Error: Accidental faults happened in processing claims are errors. However, if someone makes the same mistake frequently then it might be considered as an abuse. If a claim needs reprocessing it is known as rework. This extra-administrative work could have direct monetary impact due to paying more or less money than what it should have.
Blockchain (a “chain of blocks”) was first introduced in 2008, during the Bitcoin initiative [13, 18] for the purpose of transferring online payments without depending on any central authority or intermediary. Here, blockchain is used as a ledger for recording bitcoin transactions, and due to cryptographic operations, it provides guarantee of self-indulgence of payments [19].
Figure 2 shows the basic structure of a blockchain. Typically, a blockchain is a chain of multiple blocks containing cryptographic hash of the immediate earlier block, a timestamp and transaction data (represented as a Merkle tree). Transactions are grouped together into blocks and each block is numbered using ascending order starting with 0 means oldest block [20]. Due to this design, once recorded, transactions of any given block cannot be interfered without alteration of all subsequent blocks. If any temper occurs to a block, it will changes the cryptographic hash of each block on the network and thus, participants can detect the tempering.
Classification of blockchain
Blockchain has progressed a lot in the last decade. The first generation of blockchain is the public blockchain that started with bitcoin and much appreciated. Here, anyone can join the network for reading and can submit transactions for inclusion. It is a fully decentralized, transparent, secured and immutable ledger. Ethereum is another popular public blockchain platform.
On the contrary, a single highly trusted and authorized organization who owns the blockchain, wheels the private blockchain while ensuring privacy, faster output and power efficiency. Only authorized participants can join the network and the submission of transactions is limited to them [16]. The third category is hybrid, a combination of private and public blockchains. Only selected participants can verify, read or write transactions in a hybrid network. Consequently, no single participant can alter the blockchain if he wants.
Hyperledger blockchain
Decentralized public blockchain such as bitcoin [13] allows everyone to participate on the blockchain network, i.e., read and create transactions along with verification and fasten verified transactions to the ledger. Permissioned blockchain such as Hyperledger [21], in contrast, is an open source permissioned Distributed Ledger Technology (DLT), where only selected and authenticated participants can partake in maintaining the shared ledger. Achieving consensus could take time in a distributed system where decision making process in a private blockchain is more centralized but much faster [10]. Linux Foundation has made the Hyperledger Project 1 as an open source distributed ledger framework and code base [22]. It can be customized with members of the network who can see and access the ledger. Its purpose is to advance the blockchain technology. Hence, it is chosen by a large number of developers and adopters [21].
Smart contract
Smart contracts are computer programs that can be defined as self-executing contracts, consisting of rules, regulations and terms of the contract between a buyer and a seller written into code of lines [1, 23]. Without depending on any central authority smart contract can be executed appropriately when all the predefined rules are met [24] and govern the assets of the blockchain network [25].
Two leading open source platforms for executing smart contracts are Ethereum and Hyperledger, where Ethereum, a public blockchain that runs on Ethereum Virtual Machine (EVM). In a smart contract, predefined contracts are written with code first, which can be triggered by a pre-determined oracle. Oracles collect important information from the outside world and feed into the blockchain. Smart contracts need these vital information to execute. At the execution of a smart contract values or assets are being transferred. In the settlement step, this transferred values are settled. For example, in case of an insurance claim, several claim related amounts and numbers will be recalculated.
Related works
We have found several efforts to automate the healthcare insurance claim processing system. We divide those works into traditional (without blockchain) and blockchain based solutions.
Traditional (without blockchain) solutions
Health insurance costs in private sectors increase due to hidden costs overrun on the back-end that might include fraud, errors, abuse and waste. Lu et al. [5] propose an embedding components technique to improve the anomaly detection in health insurance claim. For classifying the subsequent embedded sequences into classes they use a classifier which is a small, fully connected neural network. Srinivasan et al. [26], develop two unique applications in order to detect health insurance claim anomalies using big data analytic. The first application examines and identifies possible abnormalities while the second application produces alerts to reduce or reject payments submitted by the healthcare service providers in case of suspected frauds, abuses, errors and wastes. Park et al. [27] introduces an IT infrastructure, Health Insurance Review and Assessment (HIRA) service that focuses on the Payment Request (PARE) and Claim Review Support (CRS) systems. The healthcare providers can send claims through the PARE system and the CRS system processes those claims by automatic screening for errors, missing items, miscalculations and so on. An interactive prioritization component based claim processing system has been proposed in [28]. Here, the claims containing similar underlying reasons are grouped into clusters and then provided together to an auditor. The aim of this work is to train the auditor to become more efficient and effective and thus to reduce errors in claim processing. The same authors also propose another machine learning based approach [6] that attempts to reduce payment errors called rework during claim processing. This system generates explanations for assisting the auditors by predicting claims those are highly needed to rework. The system involves minimal machine learning skill to install and automate the selection of parameters. Based on the International Classification of Diseases (ICD)-10 Kimura et al. [29] develop a computer-aided, post-entry standardization method using a disease name dictionary and also an anonymous linkage system. A system for categorizing insurance claims relating to diseases, treatments and medicals has proposed by Popowich [30] where both Natural Language Processing (NLP) and text mining are used.
Blockchain-based solutions
We have found a number of blockchain based works that have been carried out for automated insurance claim. However, only a few of them have been developed for health insurance claims.
Blockchain for general insurance claim systems
A blockchain based solution for addressing the performance and security concerns associated in insurance processes is presented in [31]. Different insurance policies have different set of endorsers and thus smart contracts on Hyperledger fabric has been deployed that specifies the proper set of subscribers. Dhieb et al. [10] develops a Smart Insurance System based on Blockchain and Artificial Intelligence (SISBAR) to arrange rules of business, automatic processing of claims, reduce clients risk levels, detect fraudulent claims and reduce human interaction. They have used permissioned blockchain which requires authenticated members for entering into the network and limits the activities of the participants thus shielding sensitive and private information. Sheth et al. [32] study the effect of implementing smart contracts based applications on the traditional insurance markets. They also study how demand vs. supply of insurance market will be affected by the smart contracts. Similarly, Hans et al. [16] study how the insurance market will be affected by the disruptive technologies such as blockchain and smart contracts. Zhou et al. [33] propose a blockchain based Medical Insurance Storage (MIStore) System that helps the insurance company to maintain the sum of the patients’ medical spending records. Instead of storing a patient’s data inside a single server, data are stored in distributed manner among different servers and thus the privacy is maintained. Ciocarlie et al. [22] introduce BlockCIS, a blockchain-based continuous monitoring and processing for cyber insurance system. Note that cyber insurance cover the business liabilities that is occurred due to any kind of breach of sensitive data. For automobile insurance industries, Oham et al. [12] develop a blockchain based Framework for Auto-Insurance Claim and Adjudication (B-FIFA), which is based on permissioned blockchain. Blockchain is being used successfully in storing and accessing Electronic Health Records (EHR) while the security and privacy of patients’ data is ensured [34].
Blockchain for health insurance claim systems
Thenmozhi et al. proposes a tamper free and secured health insurance claim processing system using blockchain framework, which is based on proof of work algorithm to mitigate the risk and reduce the fraud [35]. However, the authors have not actually implemented their idea and no detailed fraud detection algorithm has been presented.
Saldamli et al. [9] propose another blockchain based architecture to detect two kind of frauds: multiple claims submission against one treatment to the same healthcare or several healthcare providers. They use HIPAA (Health Insurance Portability and Accountability Act of 1996) validations that processes the data submitted for the Electronic Data Interchange (EDI) claims and also allows sharing patients’ data across multiple healthcare providers.
To provide privacy to patients’ He et al. propose a HIPAA compliance system in [4]. According to HIPAA, the clearing house acts as an intermediary between the healthcare and the insurance company to securely transfer the electronic claims while preserving patients’ personal information. By introducing blockchain technology they propose a decentralized insurance claim system and thus, eliminate the role of the centralized clearing house. Note that HIPAA is only applicable within the United States.
Note that our proposed system has been compared with different existing solutions and the a summary has been presented later in section 8.
Proposed system
This section explains the architecture of B-SAHIC, the proposed health insurance claim processing system.
Types of health insurance claim
We have considered two types of health insurance claim settlement: cashless and reimbursement. A cashless claim is a direct settlement between the healthcare service provider and the insurance company.

System model of B-SAHIC platform.
Note that typically, the insurance company makes an agreement with a number of healthcare service providers (e.g., health professionals and hospitals) who are considered as ’within the network’. A cashless claim is submitted by a networked healthcare after providing health services to a client. Here, the client need not worry about the amount of money need to expense for taking health services from healthcare provider that she has not exceeded their allowable amount. That is why it is cashless. A reimbursement claim is another type of claim request where, the client has to pay first to the healthcare to receive services. Later, she can submit a claim request providing all relevant billing documents issued by the healthcare, to reimburse the amount (either full or a portion depending on the policy) she had spent.
The high-level architecture of the B-SAHIC system is shown in Fig. 4. Our system considers three main actors: client, insurance company and healthcare. Each actor contains some attributes while holding relationship with other actors. All of these actors are connected through a permissioned and secured private blockchain and agreed on some pre-specified access policies and these policies will be executed by the smart contract. The insurance company is responsible to execute the smart contract and both the client and the healthcare can read or write transactions from or to the blockchain network.

ER diagram of stakeholders associated with B-SAHIC.
In developing a system, an Entity-Relationship (ER) diagram helps us to show the relationship among different entities in a visual way. We have developed a comprehensive ER diagram for our B-SAHIC system, which is shown in Fig. 5. In this diagram, in addition to the three main actors, we have identified several entities including
In our implementation, we have implemented the major portion of this ER diagram. However, the entities (e.g.,
Development of B-SAHIC
Health insurance company undoubtedly need to know their customers for efficient business strategy. Therefore, anonymous transaction ca not be allowed in this business [36]. This requirements guide us to use permissioned private blockchain with high efficiency and fast transaction speed, where a single organization owns the entire network and access is limited to only predetermined entities.
As opposed to public blockchain networks like bitcoin or Ethereum, where everyone can take part, private blockchain like Hyperledger Fabric is a permissioned distributed ledger network and only accessible to the users who were explicitly invited to join or use the network.
In our study, we use Hyperledger Fabric for developing secured and automated health insurance claim processing platform, which is an open source collaborative effort hosted by the Linux Foundation [37].
Sequence of messages
We have identified all the major steps of the proposed B-SAHIC system, which are shown as sequence of messages in Fig. 5. In the following we have briefly described the steps: Registration: The role of the insurance company is to register a client into the system when a client purchases a policy and the client then becomes an insured with a valid policy number. Issue a policy: On successful registration, the insurance company issues a valid policy number (i.e, a unique identification number) to the client. Application for client treatment: A client has to apply for a treatment if she wants to get a desired health service. The client sends this application to the insurance company. Query client data: A healthcare can query the insurance policy about the validity of a client using the client’s policy number. Provide health services: This step represents that the client has policy to receive the requested health services, and the service has been provided by the healthcare. Claim request (reimbursement or cashless): Claim request is submitted by the client (reimbursement) or by the healthcare (cashless). Approve or decline claim: The claim request is either approved or declined by the insurance company.

Major steps of B-SAHIC system.
We have described the detailed of these steps in section 1 where we have presented the necessary algorithms. Note that the first two steps–registration and issue a policy–are completed first. Table 1 shows the sequence of steps followed in case of reimbursement and cashless claims.
Sequence of steps for reimbursement and cashless claims

Business model of the proposed blockchain platform.
Transaction and Event definition of the proposed blockchain platform
Our proposed framework has the following three distinguishable units to represent the actors, information and actions performed by the actors. Figure 6 shows these three units of our B-SAHIC system.
Additionally, each transaction consists of one or more events that notify the participants, if a particular transaction is triggered by a contributor of a blockchain network. Table 3 event lists the major steps, related transactions and events.
Notations used in our Algorithms
Notations used in our Algorithms
We have developed algorithms for the transactions’ logic or smart contracts presented in the business model in Fig. 6. Later, these smart contracts have been implemented through chaincode in the Hyperledger Fabric. Note that programming language, NodeJS has been used to write the smart contract which is the chaincode for Hyperledger Fabric. Notations used in our Algorithms are described in Table 8.
The insurance company registers a client into the blockchain system using Algorithm 5. At the end of the registration process a unique policy number will be generated and client’s details will be recorded into the system. We have considered policy number creation time in microseconds and concatenate it with a random number from 1000 to 9999. The resultant unique number is the desired policy number and it will be added to the new client’s database. This policy number will be used as the identity of the client in this system.
1:
2:
3:
4:
5:
6:
1:
2:
3:
4:
5: Go to step 9
6:
7:
8:
9: If
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
A registered client needs to apply for a treatment before taking healthcare services using Algorithm 2. The treatment will be registered into the database only if all the conditions are true: 1) the client is a valid client, 2) the treatment is covered in their policy, 3) she did not apply for the same treatment earlier, and 4) the client has enough money left in their lifetime support wallet. Then the registered treatment will be notified to all the participants connected to the Fabric network informing that the client is going to receive a specific healthcare service.
1:
2:
3:
4:
5:
6:
7:
1:
2:
3:
4:
5: go to step 9
6:
7:
8:
9:
10:
11:
12:
13: go to step 15
14:
15:
16:
17:
18:
19:
20:
21: Else
22:
23:
24:
1:
2:
3:
4: If
5: go to step 10
6: Else
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21: While (
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
The healthcare service provider uses Algorithm 4 to query the insurance company to determine whether a client is valid or not. If the client exists the algorithm shows the corresponding client’s details, otherwise returns an error.
We have developed Algorithm 4 to implement submission of both cashless and reimbursement claim requests to the Fabric network. The insurance company can implement their own business policy using this Algorithm. The present business policy implemented through this algorithm makes sure that a claim request will be successfully submitted only if all of the following conditions are satisfied: 1) the client is a valid client, 2) the type of treatment is covered in their policy, 3) she did not apply for the same treatment earlier, 4) their total number of claim requests submitted this year (
When a claim is submitted by a client (reimbursement) or a healthcare (cashless), it will be accepted or declined by the insurance company following Algorithm 5. If all the conditions mentioned below are fulfilled, the claimed amount will be granted fully or partially as per the policy for that particular treatment: 1) the client is a valid client, 2) the type of treatment is covered in her policy, 3) the claimed amount or the number of claims do not exceed the yearly limits, 4) client or healthcare did not send the same claim request earlier, 5) the claimed amount submitted by the client or the healthcare, is available in the client’s life time support wallet
Note that each
Development environment
For the development of the system we have used a number of open-source solutions. Tables 4 and 5 summarize the back-end and front-end development environments. At the back-end, the blockchain platform is developed using Hyperledger Fabric [37], docker engine and docker composer [38]. Docker image and docker container are built using docker engine. NodeJS [39] has been used for programming language. This network is deployed on Ubuntu 18.04.1 LTS on 4 virtual CPUs with 4GB memory, along with 20GB storage. Moreover, Hyperledger Explorer v1.1.4 is installed and integrated with our fabric network to view or query blocks.
Back-end Development Environment
Back-end Development Environment
For our front-end we have used Nginx [40], an open-source high-performance HTTP web server, which is used as a web portal for the participants to interact with each other. We have used PHP, a general purpose scripting language that could be embedded into HTML and functionality could be added in a easier way without calling external files. This makes our web sites dynamic and interactive. Additionally, we have used an advanced form of block cipher encryption AES-128-CBC algorithm for encryption and decryption of patients’ personal treatment documents submitted for insurance claim.
Front-end Development Environment
This section explains the structure of the ledger from the proposed blockchain platform. In Hyperledger Fabric, a ledger can be split into two distinct but related parts: (1) blockchain and (2) world state. The blockchain part holds the entire transaction history, while the world state part holds the current values of a set of ledger states and make it easy to find the present state rather than traversing through all of the transaction logs.
Typically, there are two different layers of transaction flow in a blockchain platform. The first one is OnChain transaction, where the transactions are recorded into the distributed ledger. The second one is OffChain transaction, where the transactions are recorded outside the blockchain network. Transactions are stored into a regular database such as CouchDB and StateDB [41]. Note that OnChain transactions take longer time to traverse and need more expense to store as well. Note that blockchains are recorded in OnChain while the world states are recorded in OffChain.

Distributed Ledger Storage Structure of the proposed blockchain platform.
In our project, we have integrated Apache CouchDB database with Hyperledger Fabric to implement the OffChain transaction details. Figure 7 shows our blockchain and OffChain CouchDB storage systems. Apache CouchDB is an open source document oriented state database for deploying index with chaincode. This index is used to query the current state of the read only data stored on blockchain ledger using the JavaScript Object Notation (JSON) queries. CouchDB helps to meet the auditing and reporting requirements, also provides efficient and flexible way to query a large dataset from a chaincode.
In our proposed framework, we have used AES-128-CBC, a well deployed standard. AES-128-CBC has been used for both encryption and decryption of patients’ personal treatment documents submitted for insurance claim. AES is a symmetric key cipher encryption process, where ten transformation rounds are needed to convert a plaintext to a ciphertext [42]. The symmetric key for encryption and decryption is being derived on-the-fly using the following equation. Due to the inclusion of the
key = hash (convertToString (ClaimID)
convertToString (CurrentTimeinMicrosecond))
When an insurance company accepts a claim request from a client, an encrypted copy of their confidential treatment documents will be archived. Note that encrypted documents will be archived in directories which are created automatically according to a client’s policy number. Other than the authorized person of the insurance company, no one else is allowed to read or write from/to that directory. Thus, the secrecy and privacy of those treatment records are preserved. Note that AES encryption protects confidential documents even from brute force attacks [43].
Interaction with the system through the graphical user interface (GUI)
We have installed a user friendly web interface for Hyperledger Fabric, i.e., Hyperledger Explorer Client Version:1.1.4. The dashboard view of Hyperledger Explorer shows all kinds of pertinent information stored in the ledger. Explorer dashboard provides a summary section as well as details of blocks, transactions and associated data mined into the fabric network. Besides, it also shows the network information including the name, status, list of nodes etc. along with the chaincodes and transaction details.
As we have mentioned earlier our system consists of three types of users. We have developed different web-based interfaces for all of them.

Insurance company login form.
Login of users
Each user has different login page along with distinct, though valid, username and password to interact with the system. Insurance company’s login form is shown in Fig. 5. Similarly two other login pages exist for other two participants (i.e., the client and the healthcare) to connect with the fabric network.
Registration of a new client
An insurance company registers a new client into the blockchain system using the web form shown in Fig. 9. On successful registration, the system will returns an unique id number, i.e., the

Client registration form.
Treatment application submission
Treatment application form, shown in Fig. 10, is used by the client to apply for health services and it will be recorded into the ledger for further claim processing. Besides, if duplicate treatment application record exists in the transaction block for the same client, no changes will be occurred until the claim request for the earlier application is processed. In this case, the client will be notified through the system that another application for this treatment already exists in the chain. Otherwise, application will be submitted successfully.
Query Client Data
When a client approaches to a healthcare for a service, the healthcare checks if the client is holding a valid policy number by querying the client data into the ledger. The client query message, shown in Fig. 11 also returns the rest of the amount available in client’s account. It confirms that she is eligible to bear the expense of the treatment cost. Moreover, healthcare is entitled to view only name, age, gender, medical_history and available_amount of the client. Healthcare will not be able to retrieve other personal information.
Claim Request submission
The healthcare submits a claim request through the web portal by using the Cashless Claim Request form shown in Fig. 12. This transaction will be committed into the distributed ledger of Fabric network, thus, considered as an on-chain transaction. The healthcare can also attach all the required documents as evidence of providing the health services to a client. Similarly, a client submits a claim request through the Reimbursement Claim Request form shown in Fig. 13. The client can also submit attachment with this submission form.

Treatment application form.

Query Client Data into the Ledger.

Cashless Claim.

Reimbursement Claim.
Claim approval
The insurance company will find all the submitted claim requests in their Claim Approval Panel as shown in Fig. 14. All of those transactions will be stored in a list serially along with the request sending date and time. Here, the insurance company can view all the attached documents sent from the claimer and may accept or decline a request after manual verification process. Finally, this accepted amount of money will be deducted from the client’s wallet amount as per the insurance policy.

Claim approval panel.
We have used Hyperledger Caliper–an open source blockchain benchmark tool, developed by the Linux Foundation to measure the performance of B-SAHIC. Caliper uses a set of predefined use cases to evaluate the performance of a system by producing an HTML report consisting of a number of performance metrics [44], e.g., transaction/read throughput, transaction success rate, transaction/read latency (minimum, average, maximum), resource consumption (CPU, memory, network I/O etc.). The environmental setup of Hyperledger Caliper for our experiment is depicted in Table 6.
Development Environment of Hyperledger Caliper benchmark tool
Development Environment of Hyperledger Caliper benchmark tool

Average query latency in B-SAHIC.

Average transaction latency in B-SAHIC.
Two key indicators for analyzing the performance of a blockchain based implementation are throughput and latency. In this study, we have examined latency, which can be further classified into query latency and transaction latency.
Resource allocation analysis for B-SAHIC
In our performance study we have observed average query and transaction latency in terms of Query Per Second (QPS) and Transaction Per Second (TPS). We have investigated the performance of our proposed B-SAHIC platform by considering different user groups. We have varied the number of peer nodes from two (one client and one healthcare provider) to six (three clients and three healthcare providers), while one order node is always needed.
Query latency is the difference between the times when a query request is submitted and when the first query response is received. The following equation represents how query latency is being calculated in our system:
Query Latency = Query Response Time - Query Request Time .
In Figs. 15a-15c, for two to six peer nodes, we have examined the average query latency needed for 1 to 1300 QPS. Please note that in case of a query the system performs a read operation into the blockchain, which can be performed concurrently. As a result, the latency does not increase significantly with the increase of the QPS.
It can be seen from Fig. 15a that for two peer nodes the average latency is in acceptable range which is 0.07 second for 1300 QPS. Here, we can ignore the exceptional peak at 0.15 second for 1200 QPS. Since our experiment is running in a desktop computer, the processor is being shared among many processes. Due to some background noise (e.g., other higher priority processes) the processor might be occupied and the average latency has sharply increased in 1200 QPS in Fig. 15a. When we increase the number of nodes to four and six, the average query latency decreases to 0.03 and 0.02 seconds, respectively. As we have mentioned several query/read operations can be performed concurrently. As a result, when we increase the number of queries, more query operations are executed in parallel and the average latency has dropped down, which clearly indicates the scalability of our system.
Measuring average transaction latency
Transaction latency, on the other hand, is the difference between the times when a transaction request is submitted and when its effect is widely observed across the network. This measurement comprises any settling time including the propagation time needed for the consensus mechanism taking place. The following equation explains how we have calculated the transaction latency by subtracting the transaction submit time from the transaction confirmation time:
Transaction Latency = Transaction Confirmation Time - Transaction Submit Time .
In Figs. 16a-16c, for two to six peer nodes, we have examined the average transaction latency needed for 1 to 300 TPS. Note that a transaction operation performs write operation into the blockchain and thus takes significantly longer time than query operation. Moreover, transactions cannot be performed concurrently. Therefore, the average latency increases steadily with the increase of the TPS.
It can be observed that the average transaction latency for two peers (shown in Fig. 16a) calculated for 10 to 120 TPS is just over 0.2 second. After that if we increase the number of TPS, the average latency is also increased. For 300 TPS it is increased to 3.25 second. The same pattern is observed for four and six peers also. However, the system demonstrates scalability by not increasing the transaction latency significantly with the increase of number of peer nodes. Results obtained in our experiment fully conform with the results reported in [45], where the key findings were the query and transaction latency do not increase significantly with the increase of peer nodes and Hyperledger Fabric demonstrates scalability only for small and medium enterprises.
Comparison between B-SAHIC and existing works
Comparison between B-SAHIC and existing works
A further resource allocation analysis is performed by integrating the Hyperledger Caliper with B-SAHIC. The resource utilization result is measured in terms of the maximum and average usage of CPU, memory, incoming traffic and outgoing traffic, which is shown in Table 7. Here, two peer nodes (
Comparison with existing solutions
Blockchain and smart contract have been identified as a disruptive technology for the insurance industries [16]. Blockchain has been successfully used in other insurance claim processing, e.g., automobile insurance [12] and cyber insurance [22]. Moreover, researchers have attempted to introduce machine learning and advanced cryptographic primitives to achieve efficient claim processing, fraud detection, users’ privacy intelligence for other insurance systems. However, very limited studies have been carried out in health insurance systems.
In this study, we propose B-SAHIC, a blockchain based platform for health insurance claim processing. We have developed the prototype of B-SAHIC and also studied the performance of this system. Table 8 how we distinguish our work from the existing solutions. Since there is no existing work that can be fully compared with our work, first we have identified the salient features of B-SAHIC. Then we have selected the existing work that addresses the same feature that we are comparing. From Table 8 it can be observed that there exist a very few efforts to automate the health insurance claim processing with the advent of blockchain technology. B-SAHIC is a comprehensive solution that addresses all the necessary features including a prototype implementation, web-based user interface and performance study.
Conclusion
on In this study, we have presented B-SAHIC: a secured and automated health insurance claim processing system using blockchain technology. The system uses Hyperledger Fabric, a permissioned blockchain, where, information are shared among participants in a distributed ledger. This Fabric architecture provides modular, scalable, trusted and secured foundation for the B-SAHIC platform. We have deployed smart contract chaincode at the back-end of each peer node for furnishing insurance claim process. Clients and healthcare of this network can smoothly interact with the insurance company’s server through the web portal we have developed. Our performance study shows that with the increase of the peer nodes from two to six, the average query latency decreases from 0.07 to 0.2 second and the average transaction latency remains unchanged (3.5 seconds). Thus, it can be claimed that B-SAHIC provides a fast and scalable solution. Moreover, the memory consumption (350MB for two peer nodes) is very low as well.
Finally, note that the proposed system is easily extensible in the future version. Any ML or big-data analysis based intelligent method for fraud detection, or advanced cryptographic technique for document verification can be integrated. Moreover, this study is easily applicable for implementing automated claim processing for other insurance industries too.
Footnotes
www.hyperledger.org
