Next Article in Journal
Why You Cannot Rank First: Modifications for Benchmarking Six-Degree-of-Freedom Visual Localization Algorithms
Previous Article in Journal
Exploring Adversarial Robustness of LiDAR Semantic Segmentation in Autonomous Driving
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Blockchain and IPFS-Based Anticounterfeit Traceable Functionality of Car Insurance Claims System

1
School of Information Engineering, Changchun Sci-Tech University, Changchun 130600, China
2
Department of Computer Science and Information Engineering, Chaoyang University of Technology, Taichung 41349, Taiwan
3
Department of Computer Science and Engineering, National Chung-Hsing University, Taichung 402202, Taiwan
4
Department of Computer Science and Information Engineering, Asia University, Taichung 413305, Taiwan
5
Department of Medical Research, China Medical University Hospital, China Medical University, Taichung 404328, Taiwan
*
Authors to whom correspondence should be addressed.
Sensors 2023, 23(23), 9577; https://doi.org/10.3390/s23239577
Submission received: 15 October 2023 / Revised: 22 November 2023 / Accepted: 26 November 2023 / Published: 2 December 2023
(This article belongs to the Section Internet of Things)

Abstract

:
Due to frequent traffic accidents around the world, people often take out car insurance to mitigate their losses and receive compensation in a traffic accident. However, in the existing car insurance claims process, there are problems such as insurance fraud, inability to effectively track and transmit insurance data, cumbersome insurance procedures, and high insurance data storage costs. Since the immutability and traceability features of blockchain technology can prevent data manipulation and trace past data, we have used the Elliptic Curve Digital Signature Algorithm (ECDSA) to sign and encrypt car insurance data, ensuring both data integrity and security. We propose a blockchain and IPFS-based anticounterfeiting and traceable car insurance claims system to improve the above problems. We incorporate the Interplanetary File System (IPFS) to reduce the cost of storing insurance data. This study also attempts to propose an arbitration mechanism in the event of a car insurance dispute.

1. Introduction

Traffic accidents cause driving injuries and property damage. According to World Health Organization (WHO) statistics, about 1.35 million people die in road traffic accidents each year [1], and road traffic accidents are currently estimated to be the eighth leading cause of death in all age groups globally. In addition to the millions of fatalities, the number of traffic accidents in each country is also quite large. In 2020, according to statistics from the National Highway Traffic Safety Administration (NHTSA), US police reported 5,250,837 traffic accidents [2]. The China Statistical Yearbook published by the National Bureau of Statistics of China reported 244,674 traffic accidents [3]. The data in the European Commission’s annual statistical report on road safety are estimated at 757,566 traffic accidents [4]. From the above data, it can be seen that traffic accidents are very dangerous to the global community. Because traffic accidents often require compensation for high medical bills and vehicle repair costs, people will need car insurance to protect themselves and reduce the burden of compensation.
At present, there are still many problems with car insurance. The first is that insurance fraud often occurs between policyholders and insurance companies during the insurance process, such as some policyholders obtaining insurance premiums by forging or falsifying information, and unscrupulous insurance officers forging policies to obtain insurance premiums from policyholders. Car insurance fraud is estimated to cause $29 billion in losses each year [5], and these problems lead to distrust between the public and insurance companies. The second is that in the traditional insurance process, the insurance company has to assign an insurance officer to go out and negotiate with the policyholder on the insurance documents, which will result in the insurance company settling the claim at a much slower speed. When applying for insurance, policyholders often need to bring a lot of documents and spend time meeting and engaging in discussions with insurance personnel, which makes them perceive the process of dealing with insurance matters as troublesome and complicated, and thus they are reluctant to apply for insurance. Third, the insurance company has to bring the application documents and the insured’s information to the medical institution to confirm the insured’s identity when accessing the insured’s medical records as well as to the police agency to obtain authorization for the insured’s traffic accident-related information, which makes the process of obtaining the insured’s information cumbersome and reduces the speed of the claim settlement. All of these problems have created problems for both the insurance company and the policyholder, so it is very important to address them.
To address the challenges mentioned above, a multitude of research efforts have been dedicated to combating car insurance fraud. Notable contributions have been made by Vandervorst et al. [6] and Faheem et al. [7], who employed sophisticated machine learning techniques for the detection of car insurance fraud. Vandervorst et al. focused on evaluating data misrepresentation risk: the insurance company can improve their decision-making process in the validation of insurance contracts with potentially misrepresented self-reported information. Faheem et al. focused on the Boruta algorithm, enabling insurance companies to achieve more effective fraud detection, identification, and examination. Additionally, Shaikh et al. [8] delved into the application of telematics, showcasing its potential to not only reduce instances of car insurance fraud but also improve accident investigation procedures.
Compared to traditional paper insurance documents and the need to repeatedly go out to negotiate, in recent years, many insurance companies have started to use online insurance to make insurance claims. The policyholder only needs to register on the insurance company’s website and can directly start the insurance policy. This form makes the insurance process more convenient by reducing the time it takes the policyholder and the insurance company to process the insurance information and by reducing the generation of paper documents [9].
Although these practices have improved and optimized the car insurance claims process, there are still some unresolved issues. There is still a risk that policy information may be tampered with by the policyholder or the insurance company, and the insurance information may not be traceable. In the existing online insurance claims system, since the insurance information is stored in the insurance company, if the endpoint of the insurance company was to be attacked, the insurance information would likely be stolen or disappear. The policy information and related documents of the online insurance system are also stored in the insurance company, and a large amount of insurance information will cause the insurance company to pay high data storage costs. Additionally, the interaction between insurance companies and medical and police agencies is still weak, and there is no good way to quickly perform functions such as information sharing and transmission for all three parties.
For these reasons, this study uses blockchain technology to solve the above problems. Blockchain is a type of distributed ledger technology: it includes features such as decentralization, anonymity, traceability, and immutability. Decentralization will spread data across many nodes for storage instead of storing them in a single center, thus preventing centralized data control and allowing users on each node to enjoy the same rights. Anonymity is guaranteed since users on the blockchain use a string of English words and numbers as their names, thus protecting their privacy. Traceability is achieved because each block of data on the blockchain contains the hash value of the previous block of data so that the data in the blockchain can be traced back. Immutability means that once the data have been uploaded, they cannot be corrected. Blockchain technology can also be applied to many fields, including financial services [10], manufacturing [11], logistics management [12], agricultural products [13], and insurance services [14,15]. The introduction of blockchain technology can effectively improve the insurance process, improve the security of policy information, increase the efficiency of insurance claims, and reduce the problem of insurance disputes.
This study proposes an anticounterfeit traceable car insurance claims system through blockchain technology with IPFS and Hyperledger Fabric, and aims to achieve the following research objectives:
(1)
Immutability: For the security of the insurance data, the data are encrypted, using the hashing operation and uploading the data to the blockchain center to ensure that the data are not tampered with.
(2)
Decentralized data sharing: In this paper, we use a Hyperledger Fabric to form a consortium chain among insurance companies, medical institutions, and police agencies. If they want to exchange policyholder information, they can do so securely and efficiently through a Hyperledger Fabric mechanism.
(3)
Traceability: Blockchain technology allows insurance data to be uploaded and stored on the blockchain. If the policyholder or insurance company wants to trace insurance data or past medical information, they can go to the blockchain center and IPFS to compare the data and trace the data.
(4)
Non-repudiation: Due to the use of the elliptic digital signature algorithm, the data cannot be reversed after it has been transferred to the blockchain, thus providing non-repudiation of the data transfer.
(5)
Resist man-in-the-middle attacks: To prevent data transmission from being tampered with by malicious people and forming man-in-the-middle attacks, this paper uses digital signatures and asymmetric encryption techniques to protect against them [16,17].
(6)
Reduce storage costs: This article uses IPFS to store some of the data and images generated during the insurance process. Since IPFS is a decentralized storage system, it can reduce data storage costs and permanently store insurance data.
The organization of the rest of the study is as follows. Section 2 will introduce the technical knowledge used in this study, Section 3 will introduce the method and framework used in this study, Section 4 will analyze the security of the method; and Section 5 will compare the calculation and communication costs and finally conclude this study.

2. Preliminary

2.1. Types and Differences of Blockchains

Blockchain can be divided into three main types: consortium chain, private chain, and public chain [18]:
  • Consortium chain: Consortium chains are typically made up of multiple entities or organizations, and participants must undergo identity verification to join. Consortium chains often have a higher degree of control, as participants can influence and manage the entire blockchain system through consensus mechanisms. Furthermore, consortium chains generally exhibit higher levels of privacy, as only authorized participants have access to and can modify data within the blockchain.
  • Private chain: Private chains are typically controlled by a single organization or enterprise, and only specific participants can join. Private chains usually have a higher degree of control, as the authority to control the blockchain is often held by a single entity or enterprise. Additionally, private chains generally exhibit higher levels of privacy, as only authorized participants have access to and can modify the data within the blockchain.
  • Public chain: Public chains are blockchains that anyone can join, and they operate without centralized control. Public chains usually have lower control because the authority to control the entire blockchain is decentralized among numerous participants. Additionally, public chains typically exhibit greater transparency, as all transactions on the blockchain are public, allowing anyone to view and verify transactions.
The choice between consortium chain, private chain, and public chain depends on the use case and requirements. In the context of this study, consortium chains are used as the framework. The study establishes a consortium chain involving an insurance company, a police agency, and a medical institution, facilitating the sharing of car insurance data among these three parties.

2.2. Hyperledger Fabric

Hyperledger Fabric [19] is a blockchain-based distributed ledger framework proposed by the Linux Foundation in 2015. Hyperledger Fabric provides a modular structure which mainly contains an orderer, peer, chaincode, certificate authorities, channel, etc. The orderer is a sorting node which sorts transactions and sends them to a peer. The peer can be part of the chaincode programming language, where smart contracts are implemented through chaincode. The certificate authorities provide a verifiable digital identity for each person who needs to interact with the network. The channel provides a channel for groups to interact with each other internally.

2.3. Elliptic Curve Digital Signature Algorithm (ECDSA)

The Elliptic Curve Digital Signature Algorithm was proposed by Don et al. in 2001 [20] as a cryptographic algorithm combining Elliptic Curve Cryptography (ECC) and the Digital Signature Algorithm (DSA). Compared to RSA, ECDSA has higher security than RSA with the same key length. In addition, ECDSA’s small computation size, fast processing speed, and small storage space are all superior to RSA.
The following are the parameters defined in the ECDSA section:
( r , s ): Elliptic curve signature value;
( x , y ): Characteristic value of the elliptic curve;
h ( . ) : Hash function;
m : Message to be signed;
z : The signature message after a hash;
k : A random number to calculate the values of r and s;
G : Generating points on an elliptic curve;
( d A , Q A ) : Private and public key;
A = ? B : Verify whether A is equal to B.
The following is the ECDSA signature and validation process:
(1) Signature phase: First, we need to obtain a curve parameter n and generate a random number k between [ 1 , n 1 ] ; then we calculate:
( x , y ) = k G ,
z = h ( m ) ,
r = x mod n ,
s = k 1 ( z + r × d A ) mod n ,
Finally, obtain the signature result ( r , s ) .
(2) Validation phase: Verify the values of r and s as well as whether Q A and z match. First, verify that ( r , s ) is between [ 1 , n 1 ] ; then, calculate the following parameters:
z = h ( m ) ,
u 1 = z × s 1 mod n ,
u 2 = r × s 1 mod n ,
( x , y ) = u 1 × G + u 2 × Q A ,
Finally, verify:
r = ? x mod n ,
If the two values are equal, then the signature and the sent message are correct.

2.4. Interplanetary File System (IPFS)

IPFS is a system designed by Juan Benet in 2014 [21] to implement a network transfer protocol for the decentralized storage, sharing, and persistence of files. Large data stored on the blockchain can be transferred to IPFS to save storage costs. Files stored on IPFS are hashed to form a file address, and the file can be found by the hash value when accessed [22].

3. Method

3.1. System Architecture

In this paper, we propose a new car accident insurance claims system using blockchain technology. The system architecture consists of nine main actors:
(1)
The policyholder (PH): People who are insured by an insurance company will receive a claim after a traffic accident.
(2)
Insurance Company (IC): Insurance companies are responsible for handling insurance claims. After a traffic accident, they will obtain information about the accident from police agencies and medical institutions and notify the bank of the claim.
(3)
Police Agency (PA): After the traffic accident, the police will go to the accident site to take photos and identify the traffic accident, which will be sent to the insurance company for processing claims.
(4)
Medical Institution (MI): After the traffic accident, the medical institution will make a medical diagnosis of the insured person, and the diagnostic documents will be submitted to the insurance company after the authorization of the medical institution.
(5)
Bank (BK): After the accident, the insurance company will use a bank to pay the policyholder’s claim.
(6)
Blockchain Center (BCC): All actors in the system need to register with the blockchain center. The blockchain center also receives data files for upload and storage.
(7)
Interplanetary File System (IPFS): Images uploaded to the blockchain, such as photos uploaded by PA, medical receipts, diagnoses uploaded by MI, etc., are transferred to IPFS.
(8)
Certificate Authorities (CA): Certificate authorities are used to issue personal identity IDs and public and private keys for each character after registration.
(9)
Arbitration Institution (AI): Any insurance claim dispute between the actors can be appealed to the arbitration institution.
The seamless functioning of the proposed car accident insurance claim system relies on the collaborative efforts of its various actors. The interactions among the PH, IC, PA, MI, BK, BCC, IPFS, CA, and AI form the foundation of a dynamic and interconnected network. As we enter the distinct phases of the system’s operation, a closer look at the registration, insurance purchasing, traffic accident, claims processing, claims payment, and insurance dispute arbitration phases will illuminate the intricate collaboration and information exchange among these key actors. This collaborative ecosystem ensures the integrity and transparency of the insurance claim process, setting the stage for a more detailed exploration in subsequent sections.
Figure 1 shows the main operational structure of the system. Among this figure, a Ledger is a public database that records all transactions. Anchor typically refers to the process in a transaction in which participants confirm or acknowledge the transaction. Endorse typically refers to the process in a transaction where participants confirm or acknowledge the transaction. The following is a description of each phase.
(1)
Registration Phase: The relevant actors in the system need to apply for an account with the BCC, and after confirmation, they will upload the account information to the BCC. The CA will issue the corresponding public key and private key. In this case, the MI administrator will organize the members of the MI, the PA, and the IC into a consortium chain to pass information about the insured to each other.
(2)
Insurance Purchasing Phase: After the PH purchases insurance from the IC, the IC and the PH will sign an insurance policy. The PH must provide the bank account to the IC. After signing the insurance policy, it is uploaded to the BCC, and the policy ID is submitted to the PH.
(3)
Traffic Accident Phase: When the PH is involved in a traffic accident, the PH should first notify the PA to deal with the accident. After the PA arrives at the scene, the PA will take photos to confirm the traffic accident, make a record of the accident, and finally upload the photos and identity records to the BCC. The medical receipts and diagnoses of the PH will be uploaded from the MI to the blockchain center.
(4)
Claims Processing Phase: When the PH submits a claim, the IC will request authorization of the PH’s medical receipt information of the PH from the MI where the PH was treated through the PH’s ID. After authorization, the claim will be evaluated in conjunction with the accident identification records provided by the PA.
(5)
Claims Payment Phase: The IC notifies the BK to pay the PH’s claim and then uploads the claim record to the BCC and notifies the PH.
(6)
Insurance Dispute Arbitration Phase: When an IC denies a claim or when there is an insurance dispute between the parties involved in the traffic accident, arbitration can be conducted through AI.

3.2. Registration Phase

In the registration phase, all roles must first register with the BCC first.
Step 1: Role X first generates an identity, I D X , and sends I D X to the BCC.
The BCC generates an ECDSA private key d X and calculates the public key Q X of role X:
Q X = d X × G ,
Step 2: The BCC sends I D X , ( Q X , d X ) back to role X, and role X stores the ( Q X , d X ) .

3.3. Insurance Purchasing Phase

When the PH purchases car insurance from the IC, the IC verifies the identity of the PH and signs a policy. The PH will provide the IC with their bank account and then send the generated CC and CD to the BCC.
Step 1: The IC first gives the PH an insurance policy M det a i l . The PH will first confirm the content of the policy. After confirmation, the PH will confirm and complete the basic insurance information in the policy to form M det a i l ; then, the PH selects a random value K P H I C and uses the IC’s public key P U K I C for encryption:
C P H I C = E P U K I C ( M det a i l )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P H , M det a i l , T S P H I C )
Pass the parameter ( t o k e n , k P H I C , d P H ) to the sign function of Algorithm 1 to obtain the signature value ( r P H I C , s P H I C ) . Finally, the PH sends I D P H , C P H I C , ( r P H I C , s P H I C ) , timestamp ,   T S P H I C to the IC.
Step 2: The IC will check the validity of the timestamp after receiving the encrypted information from the PH:
T S N O W T S P H I C Δ T
Use the IC’s private key to decrypt the encrypted data and obtain the content:
M det a i l = D P R K I C ( C P H I C )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P H , M det a i l , T S P H I C )
Pass the parameter ( t o k e n , ( r P H I C , s P H I C ) , Q P H ) to the v e r i f y function of Algorithm 2 to verify whether r P H I C is correct. If it is correct, the IC will obtain the PH’s information. Generate M P o l i c y from ( I D P H , I D I C ,   M det a i l , T S P H I C ) . Then, generate a claim certificate C C P H and claim detail C D P H . Finally, upload the policy identity I D P o l i c y and ( B C P H I C , C C P H , C D P H , M P o l i c y ) to the blockchain.
After uploading the information, to allow the PH to view his insurance information, the IC will select a random value k I C P H and use the PH’s public key P U K P H to encrypt M P o l i c y :
C I C P H = E P U K P H ( M P o l i c y )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P A , C I C P H , T S I C P H )
Pass the parameter ( t o k e n , k I C P H , d P A ) to the Sign function of Algorithm 1 to obtain the signature value ( r I C P H , s I C P H ) , which the IC sends I D I C , C I C P H ,   ( r I C P H , s I C P H ) , T S I C P H to the PH.
Step 3: The PH will check the validity of the timestamp after receiving the encrypted information from the IC:
T S N O W T S I C P H Δ T
Use the PH’s private key to decrypt the encrypted data and obtain the content:
M I C P H = D P R K P H ( C I C P H )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C P H , T S I C P H )
Pass the parameter ( t o k e n , r I C P H , s I C P H , Q I C ) to the v e r i f y function of Algorithm 2 to verify whether r I C P H is correct; if it is correct, the PH will be able to view his insurance information.
Algorithm 1 Function s i g n ( t o k e n , k , d )
    z = t o k e n ;
    ( x , y ) = k G ;
    r = x mod n ;
    s = k 1 ( z + r d ) mod n ;
return ( r , s ) ;
Algorithm 2 Function v e r i f y ( t o k e n , r , s , Q )
    z = t o k e n ;
    u 1 = z × s 1 mod n ;
    u 2 = r × s 1 mod n ;
    ( x , y ) = u 1 G + u 2 Q
    r = ? x mod n
return true/false;

3.4. Traffic Accident Phase

After a traffic accident, the PH will notify the PA of the accident. The PH will provide the PA with his ID, complete the accident registration form and his public key, and provide his driver’s license and vehicle registration to the PA for verification. The PA will take photos of the accident and make an accident identification record. The photos and identification will then be stored in IPFS, and the stored data will be hashed and uploaded to the blockchain with the PH’s ID.
Step 1: The PH first fills out a traffic accident registration form, which is also filled out for the other owner of the vehicle involved in the accident, generating M P H O S P A . Then, the PH selects a random value k P H P A and uses the IC’s public key P U K P A for encryption:
C P H P A = E P U K P A ( M P H O S P A )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P H , C P H P A , T S P H P A )
Pass the parameter ( t o k e n , k P H P A , d P H ) to the Sign function of Algorithm 1 to obtain the signature value ( r P H P A , s P H P A ) , which the PH sends I D P H , C P H P A , ( r P H P A , s P H P A ) , T S P H P A to the PA.
Step 2: The PA will verify the validity of the timestamp after receiving the encrypted information from the PH:
T S N O W T S P H P A Δ T
Use the PA’s private key to decrypt the encrypted data and obtain the content:
M P H O S P A = D P R K P A ( C P H P A )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P H , C P H P A , T S P H P A )
Pass the parameter ( t o k e n , r P H P A , s P H P A , Q P H ) to the Verify function of Algorithm 2 to verify whether r P H P A is correct; if it is correct, the PA will obtain the PH’s information and record the traffic accident identity I D T A . After that, the PA saves the photos of the accident M P i c t u r e and the traffic accident identification records to IPFS and obtains the hashed photos of the accident P I C P H and the accident identification certificate I D E P H . Finally, upload ( I D T A , B C P H P A , P I C P H , I D E P H , T A I D ) to the blockchain center. After uploading the information, to allow the PH to view his insurance information, the PA will generate the message M P A P H with the relevant information, select a random value k P A P H , and use the PH’s public key P U K P H for encryption:
C P A P H = E P U K P H ( M P A P H )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P A , C P A P H , T S P A P H )
Pass the parameter ( t o k e n , k P A P H , d P A ) to the Sign function of Algorithm 1 to obtain the signature value ( r P A P H , s P A P H ) ; then, the PA sends I D P A , C P A P H , ( r P A P H , s P A P H ) , T S P A P H to PH.
Step 3: The PH will verify the validity of the timestamp after receiving the encrypted information from the PA:
T S N O W T S P A P H Δ T
Use the PH’s private key to decrypt the encrypted data and obtain the content:
M P A P H = D P R K P H ( C P A P H )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P A , C P A P H , T S P A P H )
Pass the parameter ( t o k e n , r P A P H , s P A P H , Q P A ) to the Verify function of Algorithm 2 to verify whether it is correct. If it is correct, then the PH can view his traffic accident-related information.

3.5. Medical Phase

After filling out the traffic accident information, the PH will go to the MI to seek medical treatment. The PH will need to provide his ID and public key to the MI and fill in basic personal information. Medical receipts and diagnoses will be stored in IPFS by the MI, and the stored data will be washed and uploaded to the blockchain center with the PH’s ID.
Step 1: The PH first fills out basic personal information and generates M P H M I ; then, the PH selects a random value k P H M I and uses the MI’s public key P U K M I for encryption:
C P H M I = E P U K M I ( M P H M I )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P H , C P H M I , T S P H M I )
Pass the parameter ( t o k e n , k P H M I , d P H ) to the Sign function of Algorithm 1 to obtain the signature value ( r P H M I , s P H M I ) , which the PH sends I D P H , C P H M I , ( r P H M I , s P H M I ) , T S P H M I to the MI.
Step 2: The MI will check the validity of the timestamp after receiving the encrypted information from the PH:
T S N O W T S P H M I Δ T
The MI’s private key is used to decrypt the encrypted data and obtain the content:
M P H M I = D P R K M I ( C P H M I )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P H , C P H M I , T S P H M I )
Pass the parameter ( t o k e n , r P H M I , s P H M I , Q P H ) to the Verify function of Algorithm 2 to verify whether r P H M I is correct; if it is correct, the MI will obtain the PH’s information and save the PH’s medical diagnosis and medical receipt data to IPFS, and then it will obtain the hashed diagnosis C E R T P H and receipts R E C P H . Finally, the PH uploads the ( I D T A ,   B C P H M I ,   C E R T P H ,   R E C P H ) to the blockchain. After the PH uploads the information, to allow the PH to view his insurance information, the MI will generate the message M M I P H with the relevant information, select a random value k M I P H , and use the PH’s public key P U K P H for encryption:
C M I P H = E P U K P H ( M M I P H )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D M I , C M I P H , T S M I P H )
Pass the parameter ( t o k e n , k M I P H , d P A ) to the Sign function of Algorithm 1 to obtain the signature value ( r M I P H , s M I P H ) , which the MI sends I D M I , C M I P H , ( r M I P H , s M I P H ) , T S M I P H to the PH.
Step 3: The PH will check the validity of the timestamp after receiving the encrypted information from the MI:
T S N O W T S M I P H Δ T
Use the PH’s private key to decrypt the encrypted data and obtain the content:
M M I P H = D P R K P H ( C M I P H )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D M I , C M I P H , T S M I P H )
Pass the parameter ( t o k e n , r M I P H , s M I P H , Q M I ) to the Verify function of Algorithm 2 to verify whether it is correct; if it is correct, then the PH can view his medical information.

3.6. Claims Processing Phase

When the PH has received the relevant documents from the PH and MI, he can notify the IC to proceed with the claim processing. The PH will authorize the IC to have access to the PH’s information and to process the claim.

3.6.1. Request for Authorization of the Traffic Accident Identification Process

After the PA has processed the PH’s accident identification data, the PH can notify the IC to proceed with claim processing. The IC will submit the relevant policyholder’s claim documents and its ID to the PA to identify itself. After the PA agrees to authorize the information, the IC can obtain the policyholder’s information regarding the identification of the traffic accident.
Step 1: The PH submits his identity I D P H and traffic accident identity T K I D to the IC for authorization. Once the information is available, the IC will provide the data access to the PA.
Step 2: The IC will send a message M I C P A to the PA with the identity of the IC and the policy identity, claim certificate, claim details, ID, and traffic accident identity of the PH. The system encrypts the data content and generates C I C P A ; then, the IC selects a random value k I C P A and uses the PA’s public key P U K P A for encryption:
C I C P A = E P U K P A ( M I C P A )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C P A , T S I C P A )
Pass the parameter ( t o k e n , k I C P A , d I C ) to the Sign function of Algorithm 1 to obtain the signature value ( r I C P A , s I C P A ) . Finally, the IC sends I D I C , C I C P A , ( r I C P A , s I C P A ) , T S I C P A to PA:
Step 3: The PA will check the validity of the timestamp after receiving the encrypted information from the IC:
T S N O W T S I C P A Δ T
Use the PA’s private key to decrypt the encrypted data and obtain the content:
M I C P A = D P R K P A ( C I C P A )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C P A , T S I C P A )
Pass the parameter ( t o k e n , r I C P A , s I C P A , Q I C ) to the Verify function of Algorithm 2 to verify whether r I C P A is correct; if it is correct, the PA will obtain the application information from the IC. Finally, upload the ( I D I C , B C I C P A ) to the blockchain. After uploading the information, to allow the IC to view the PH’s traffic accident identification, the PA will generate the message M P A I C with the relevant information, select a random value k P A I C , and use the IC’s public key P U K I C for encryption:
C P A I C = E P U K I C ( M P A I C )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P A , C P A I C , T S P A I C )
Pass the parameter ( t o k e n , k P A I C , d P A ) to the Sign function of Algorithm 1 to obtain the signature value ( r P A I C , s P A I C ) ; then, the PA sends I D P A , C P A I C ,   ( r P A I C , s P A I C ) , T S P A I C to IC.
Step 4: The IC will verify the validity of the timestamp after receiving the encrypted information from the PA:
T S N O W T S P A I C Δ T
Use the IC’s private key to decrypt the encrypted data and obtain the content:
M P A I C = D P R K I C ( C P A I C )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D P A , C P A I C , T S P A I C )
Pass the parameter ( t o k e n , r P A I C , s P A I C , Q P A ) to the Verify function of Algorithm 2 to verify whether r P A I C is correct; if it is correct, then the IC can view the information related to the identification of the PH’s traffic accidents.

3.6.2. Request for Authorization of the Medical Diagnostic Information Process

The IC will request authorization for the PH’s medical information from the MI after receiving the traffic accident identification records. Once the MI has authorized the information, the IC will obtain the medical diagnosis and receipts and combine them with the identification records to process the claim.
Step 1: The PH submits his identity I D P H and the identity of the MI I D M I where he was treated at the time of the traffic accident to the IC for authorization; once the information is available, the IC will enable the data access of the MI.
Step 2: The IC will send a message M I C M I to the MI with the identity of the IC and the policy identity, claim certificate, claim details, and ID. The system encrypts the data content and generates C I C M I ; then, the IC selects a random value k I C M I and uses the MI’s public key P U K M I for encryption:
C I C M I = E P U K M I ( M I C M I )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C M I , T S I C M I )
Pass the parameter ( t o k e n , k I C M I , d I C ) to the Sign function of Algorithm 1 to obtain the signature value ( r I C M I , s I C M I ) ; then, the IC sends I D I C , C I C M I ,   ( r I C M I , s I C M I ) , T S I C M I to MI.
Step 3: The MI will verify the validity of the timestamp after receiving the encrypted information from the IC:
T S N O W T S I C M I Δ T
Use the MI’s private key to decrypt the encrypted data and obtain the content:
M I C M I = D P R K M I ( C I C M I )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C M I , T S I C M I )
Pass the parameter ( t o k e n , r I C M I , s I C M I , Q I C ) to the Verify function of Algorithm 2 to verify whether r I C M I is correct. If it is correct, the MI will obtain the application information from the IC. Finally, upload the ( I D T A , B C I C M I ) to the blockchain. After uploading the information, to allow the IC to view the medical diagnosis and medical receipts of the PH, the IC will generate the message M M I I C with the relevant information, select a random value k M I I C , and use the public key P U K I C for encryption:
C M I I C = E P U K I C ( M M I I C )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D M I , C M I I C , T S M I I C )
Pass the parameter ( t o k e n , k M I I C , d M I ) to the Sign function of Algorithm 1 to obtain the signature value ( r M I I C , s M I I C ) ; then, the MI sends I D M I , C M I I C , ( r M I I C , s M I I C ) , T S M I I C to the IC.
Step 4: The IC will check the validity of the timestamp after receiving the encrypted information from the MI:
T S N O W T S M I I C Δ T
Use the IC’s private key to decrypt the encrypted data and obtain the content:
M M I I C = D P R K I C ( C M I I C )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D M I , C M I I C , T S M I I C )
Pass the parameter ( t o k e n , r M I I C , s M I I C , Q M I ) to the Verify function of Algorithm 2 to verify whether r M I I C is correct; if it is correct, then the IC can view the PH’s medical diagnosis and medical receipts.

3.7. Claims Payment Phase

After the IC confirms the claim, they will notify the BK to pay the claim to the PH. The BK will notify the PH of the successful payment.
Step 1: The IC encrypts the PH’s identification ID, bank account ID, and the insurance policy signed by the PH to generate a message M I C B K ; then, the IC selects a random value k I C B K and uses the public key P U K B K for encryption:
C I C B K = E P U K B K ( M I C B K )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C B K , T S I C B K )
Pass the parameter ( t o k e n , k I C B K , d I C ) to the Sign function of Algorithm 1 to obtain the signature value ( r I C B K , s I C B K ) ; then, the IC sends I D I C , C I C B K , ( r I C B K , s I C B K ) , T S I C B K to BK.
Step 2: The BK will check the validity of the timestamp after receiving the encrypted information from the IC:
T S N O W T S I C B K Δ T
Uses the BK’s private key to decrypt the encrypted data and obtain the content:
M I C B K = D P R K B K ( C I C B K )
Then, calculate the ECDSA parameters:
t o k e n = h ( I D I C , C I C B K , T S I C B K )
Pass the parameter ( t o k e n , r I C B K , s I C B K , Q I C ) to the Verify function of Algorithm 2 to verify whether r I C B K is correct; if it is correct, the BK will obtain the data and call the smart contract for payment of compensation. After the payment, the BK will upload ( I D T A , B C I C B K ) to the blockchain center; then, the BK will send a notification M B K P H to the PH, and the BK will select a random value k B K P H ; then, calculate the ECDSA parameters:
t o k e n = h ( I D B K , M B K P H , T S B K P H )
Pass the parameter ( t o k e n , k B K P H , d B K ) to the Sign function of Algorithm 1 to obtain the signature value ( r B K P H , s B K P H ) ; then, the BK sends I D B K , M B K P H , ( r B K P H , s B K P H ) , T S B K P H to the PH.
Step 3: The PH will check the validity of the timestamp after receiving the encrypted information from the BK:
T S N O W T S B K P H Δ T
Then, calculate the ECDSA parameters:
t o k e n = h ( I D B K , M B K P H , T S B K P H )
Pass the parameter ( t o k e n , r B K P H , s B K P H , Q B K ) to the Verify function of Algorithm 2 to verify whether r B K P H is correct; if it is correct, the PH receives the BK remittance notification and successfully obtains the claim.

3.8. Insurance Dispute Arbitration Phase

When a dispute arises between the PH, the IC or the BK, the PH can propose an arbitration application to the AI. The PH will provide related information for the AI to confirm the PH’s information and identity.
When arbitrating insurance disputes, the AI confirms the accuracy of each phase of operation by comparing the information and signatures on the blockchain. Figure 2 shows the flow chart during the insurance dispute arbitration phase.
Step 1: To confirm the authenticity of the event, the PH must first submit I D P H , I D P o l i c y , and I D T A to the AI. After confirming receipt of the PH’s documents, the AI will verify them. If the verification fails, it means that the PH has provided incorrect information; otherwise, the verification is successful, and it will begin signing verification.
Step 2: The AI will first pass the PH’s I D T A and obtain the signature values ( r P H M I , s P H M I ) , ( r M I P H , s M I P H ) , ( r I C P A , s I C P A ) , ( r P A I C , s P A I C ) , ( r I C M I , s I C M I ) , ( r M I I C , s M I I C ) , ( r I C B K , s I C B K ) , and ( r B K P H , s B K P H ) , and then it will verify according to the signature value.
The AI will first verify B C P H M I and B C M I P H :
B C P H M I = ? h ( r P H M I , s P H M I )
B C M I P H = ? h ( r M I P H , s M I P H )
If the verification fails, it means that the PH did not perform the action of medical treatment, and if the verification is successful, the procedure will proceed to the next step.
Step 3: The AI then verifies the signature of the PH and will simultaneously verify B C I C P A , B C P A I C , B C I C M I , and B C M I I C :
B C I C P A = ? h ( r I C P A , s I C P A )
B C P A I C = ? h ( r P A I C , s P A I C )
B C I C M I = ? h ( r I C M I , s I C M I )
B C M I I C = ? h ( r M I I C , s M I I C )
If one of the verifications fails, it means that the IC has not processed the claim with the PA and MI, and if the verification is successful, the procedure will proceed to the next step.
Step 4: The AI will take the signature of the verifying BK and verify B C I C B K and B C B K P H :
B C I C B K = ? h ( r I C B K , s I C B K )
B C B K P H = ? h ( r B K P H , s B K P H )
If the verification fails, it means that the BK did not proceed with the claim payment.
If all of the above steps have been verified successfully, the AI can determine the validity of the insurance claim and terminate the arbitration procedure.

4. Security Analysis

4.1. Non-Repudiation

Since ECDSA is used for data signature and verification, each time the data are signed, they must be signed with the sender’s private key, and the receiver also needs the public key for verification. After the data are transmitted to the recipient, this action cannot be reversed, and the receiver can confirm its identity through the public key, thus achieving data non-repudiation. Table 1 shows the non-repudiation in each phase of this study.

4.2. Decentralized Data Sharing

In this study, we combine the Hyperledger system, where members of the consortium chain must register before sharing data. The flow of information is open and transparent for all members of the same consortium chain. Information cannot be withheld between nodes of the consortium chain. In this way, the trust relationship between nodes is realized.
The study uses the MI, the PA, and the IC as a consortium chain to enable the three parties to transmit the PH’s information to each other. The need for data transfer and updates on Hyperledger Fabric requires the agreement of other peer nodes, which is a process also known as consensus. When the consensus of the group reaches 66.6% or more, the data will be sorted by order nodes and transferred to the node to complete the data transfer. Through this mechanism, the decentralized data-sharing feature is achieved.

4.3. Traceability

Once the data are uploaded to the blockchain, they cannot be tampered with, and the data on the chain are traceable.
For example, if the PH wants to trace blockchain data during the insurance purchase phase, the PH can verify it by comparing B C P H I C = h ( r P H I C , s P H I C ) and B C I C P H = h ( r I C P H , s I C P H ) . If the PH wants to trace the blockchain data during the traffic accident phase, they can verify it by comparing B C P H P A = h ( r P H P A , s P H P A ) and B C P A P H = h ( r P A P H , s P A P H ) . If the PH wants to trace the blockchain data during the medical phase, they can verify it by comparing B C P H M I = h ( r P H M I , s P H M I ) and B C M I P H = h ( r M I P H , s M I P H ) . Through the above matching method, we can ensure the traceability of data.

4.4. Immutability

During the signature phase, the sender encrypts the message to be transmitted and adds it to the signature program to obtain the signature value to be transmitted to the receiver. If the receiver finds that the comparison is unsuccessful during data validation, it means that the value of the hash function may have been tampered with and the transmitted message is not the original in order to prevent data tampering. Table 2 shows the data manipulation prevention components in each phase of this document.

4.5. Man-in-the-Middle Attacks

To prevent malicious people from altering the content of the data during data transmission and forming a man-in-the-middle attack, this study uses digital signatures and asymmetric cryptography to defend against the attack. When the sender transmits data, the public key can be used to encrypt the data content, and the receiver can use the private key to decrypt the data after receiving them. In this study, the public key is used to encrypt the data, and middlemen cannot obtain the data and manipulate it, so the data can be protected from attack. Table 3 shows the man-in-the-middle attack defense in each phase of this study.

5. Discussions

5.1. Computation Cost

Table 4 presents the computational cost analysis for each phase of this study, which summarizes the computational time cost of signature verification, function judgment, hashing, and multiplication for each phase.

5.2. Communication Cost

Table 5 shows the total communication cost for each stage of the study. For example, the insurance purchasing phase contains two times ECDSA encryption, two times asymmetric encryption, two times IPFS file hash value, four times ID and other information in the transmission of the message, and the total message length is as follows:
2 × 1024 bits + 2 × 512 bits + 2 × 368 bits + 4 × 80 bits = 4128 bits
In a 4G communication environment, the time taken for the insured phase is 0.04 ms, while in a 5G communication environment, it takes 0.2 µs to demonstrate the communication speed of each phase.

5.3. Performance Analysis

In this section, a reasonable blockchain chain code performance evaluation test will be conducted on the processes in this study. The testing tool is Hyperledger Caliper version 0.5.0, and the runtime environment used for Caliper is Node.js version 16. The blockchain platform used is Hyperledger Fabric version 2.2. The server performance is Core i9 9920X@4.5Ghz CPU and 24 GB RAM, and the operating system is Ubuntu 20.04.
First, the required data and photos will be stored in IPFS. After storing the data in IPFS, the IPFS ID is obtained. Then, we obtain the blockchain address of the data stored in the blockchain; the IPFS ID and blockchain address are written into a chaincode. We configure the environment required for Hyperledger Fabric and Caliper and set up the various node organizations. Each node organization joins the chaincode for performance testing. The throughput on the blockchain represents the TPS (transactions per second) that can be loaded on the system, and the transaction latency is the time it takes from the time a transaction is initiated to the time a confirmation is received that the transaction is valid.
In this test, we chose 10 sending rate groups from 50 to 500 tps and used load balancing to optimize CPU usage to reduce the server load with a transaction duration of 3 s and several clients of 6. In Figure 3, we analyze the relationship between sending rate and transaction latency. The minimum delay in writing data is 0.42 s, and the maximum delay is 7.13 s. The minimum delay for writing data is 0.42 s, and the maximum delay is 7.13 s. The minimum delay for querying data is 0.01 s, and the maximum delay is 0.02 s. Thus, it can be seen that the latency of the write phase will increase with the sending rate when the sending interval is a certain size, while the latency of the read phase remains stable. In Figure 4, the relationship between the transmit rate and throughput is analyzed. The minimum throughput of a write is 31.8 tps and the maximum is 112.8 tps, while the minimum throughput of a read is 51.1 tps and the maximum is 491 tps.
From the above tests, it can be concluded that the proposed claims system can store and read a large amount of data in the actual insurance data, and the consortium chain members in the system can effectively store the policyholder data on the blockchain and can quickly access the data and interact with other parties if they want to access the data.

5.4. Comparison Table of the Characteristics of Related Work

In this section, we compare our proposed solution with other articles on the application of blockchain in insurance in Table 6.

6. Conclusions

The study used Hyperledger Fabric combined with IPFS for system performance analysis. In the experimental environment, the system demonstrated a minimum throughput of 31.8 tps and a maximum throughput of 112.8 tps for write operations. For read operations, the minimum throughput was 51.1 tps and the maximum throughput reached 491 tps, confirming the feasibility of the system performance. Furthermore, the latency time for write operations was recorded at 7.13 s, while read operations had a latency time of 0.02 s, both falling within acceptable time ranges. Such insurance data, whether in terms of latency time or throughput, can provide efficient transmission results for insurance data. Additionally, blockchain technology ensures the anticounterfeit traceable functionality of insurance data. The system also incorporates ECDSA encryption technology, achieving the goal of non-repudiation.
For any insurance company, this study can reduce the time cost of meeting with the policyholder, increase the speed of claim settlement, improve corporate reputation, and quickly obtain relevant authorization information from police agencies and medical institutions. For the policyholder, it can save the complicated claim application procedure and reduce the time required for insurance, and because the insurance documents and traffic accident information are stored on the blockchain and IPFS, the policyholder does not need to carry a lot of insurance documents in the process of applying for insurance claims.

Author Contributions

Conceptualization, C.-L.C. and Y.-M.Z.; methodology, C.-L.C., Y.-M.Z. and L.-C.L.; software, Y.-M.Z.; validation, C.-L.C., D.-C.H. and H.-C.C.; writing—original draft preparation, Y.-M.Z. and L.-C.L.; writing—review and editing, C.-L.C., D.-C.H. and H.-C.C.; supervision, C.-L.C., D.-C.H. and H.-C.C.; project administration, C.-L.C. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the National Science and Technology Council of Taiwan, R.O.C., under contract NSTC 112-2410-H-324-001-MY2, and contract MOST 111-2218-E-002-037. This work was supported by the Chelpis Quantum Tech Co., Ltd., Taiwan, under the Grant number of Asia University: I112IB120. This work was supported by the National Science and Technology Council (NSTC), Taiwan, under NSTC Grant numbers: 111-2218-E-468-001-MBK and 110-2218-E-468-001-MBK.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

This study was based only on basic theoretical research. It did not involve any human participants.

Data Availability Statement

Data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

I D X The identification number of the role X
I D P o l i c y An identity of PH’s policy
I D T A An identity of traffic accident
d X Role X ’s ECDSA private key
Q X Role X ’s ECDSA public key
G Generating points on elliptic curves
k i A random value on the elliptic curve
( r x , s x ) The elliptic curve signature value of X
( x x , y x ) Elliptic curve characteristic value of X
h ( . ) Hash function
B C A B Information that should be uploaded to the message sent by A to B
OSThe owner of the other party to the traffic accident
M P o l i c y The PH’s signed insurance policy
M A B Message sent from A to B
M P H O S P A Message submitted to the PA by the PH and the OS
M P i c t u r e Traffic accident-related picture information
B K P H PH’s bank account
P I C P H Hash values for PH’s traffic accident photos uploaded to IPFS
I D E P H Hash values for PH’s traffic accident identification uploaded to IPFS
C E R T P H The hash values of the PH’s medical diagnosis uploaded to IPFS
R E C P H The hash values of the PH’s medical receipt uploaded to IPFS
C C P H The hash values of the PH’s claim certificate uploaded to IPFS
C D P H Hash values of the PH’s claim detail uploaded to IPFS
C A B The ciphertext of the information transmitted from A to B
P U K X The public key of the role X
P R K X The private key of the role X
E P U K X ( M ) Encrypt M by P U K X
D P R K X ( C ) Decrypt C by P R K X
T S A B Timestamped messages sent from A to B
Δ T Threshold of timestamp
A = ? B Verify whether A is equal to B

References

  1. SDG Target 3.6 Road Traffic Injuries. Available online: https://www.who.int/data/gho/data/themes/topics/sdg-target-3_6-road-traffic-injuries (accessed on 5 November 2022).
  2. Stewart, T. Overview of Motor Vehicle Crashes in 2020 (Report No. DOT HS 813 266); National Highway Traffic Safety Administration: Washington, DC, USA, 2022.
  3. CSY. China Statistical Yearbook; China Statistical Publishing House: Beijing, China, 2020. [Google Scholar]
  4. European Commission. Annual Statistical Report on Road Safety in the EU, 2021; European Road Safety Observatory, European Commission, Directorate General for Transport: Brussels, Belgium, 2022. [Google Scholar]
  5. Office, I.S. The Challenge of Auto Insurance Premium Leakage; Verisk Analytics, Inc.: Jersey City, NJ, USA, 2017. [Google Scholar]
  6. Vandervorst, F.; Verbeke, W.; Verdonck, T. Data misrepresentation detection for insurance underwriting fraud prevention. Decis. Support Syst. 2022, 159, 113798. [Google Scholar] [CrossRef]
  7. Aslam, F.; Hunjra, A.I.; Ftiti, Z.; Louhichi, W.; Shams, T. Insurance fraud detection: Evidence from artificial intelligence and machine learning. Res. Int. Bus. Financ. 2022, 62, 101744. [Google Scholar] [CrossRef]
  8. Shaikh, M.K.; Palaniappan, S.; Khodadadi, T.; Khurram, M.; Khan, M.H.; Juzer, H. Insurematic: Generalized framework for Insurance company to Automate Insurance process. In Proceedings of the 2020 International Conference on Information Science and Communication Technology (ICISCT), Karachi, Pakistan, 8–9 February 2020; pp. 1–4. [Google Scholar] [CrossRef]
  9. Gebert-Persson, S.; Gidhagen, M.; Sallis, J.E.; Lundberg, H. Online insurance claims: When more than trust matters. Int. J. Bank Mark. 2019, 37, 579–594. [Google Scholar] [CrossRef]
  10. Xue, L. The Application of Blockchain Technology in the Financial Field. In Proceedings of the International Conference on Forthcoming Networks and Sustainability in AIoT Era (FoNeS-AIoT), Nicosia, Turkey, 27–28 December 2021; pp. 130–134. [Google Scholar] [CrossRef]
  11. Leng, J.; Ye, S.; Zhou, M.; Zhao, J.L.; Liu, Q.; Guo, W.; Cao, W.; Fu, L. Blockchain-Secured Smart Manufacturing in Industry 4.0: A Survey. IEEE Trans. Syst. Man Cybern. Syst. 2021, 51, 237–252. [Google Scholar] [CrossRef]
  12. Perboli, G.; Musso, S.; Rosano, M. Blockchain in Logistics and Supply Chain: A Lean Approach for Designing Real-World Use Cases. IEEE Access 2018, 6, 62018–62028. [Google Scholar] [CrossRef]
  13. Antonucci, F.; Figorilli, S.; Costa, C.; Pallottino, F.; Raso, L.; Menesatti, P. A Review on Blockchain Applications in the Agri-food Sector. J. Sci. Food Agric. 2019, 99, 6129–6138. [Google Scholar] [CrossRef] [PubMed]
  14. Shetty, A.; Shetty, A.D.; Pai, R.Y.; Rao, R.R.; Bhandary, R.; Shetty, J.; Nayak, S.; Dinesh, T.K.; Dsouza, K.J. Block Chain Application in Insurance Services: A Systematic Review of the Evidence. SAGE Open 2022, 12, 21582440221079877. [Google Scholar] [CrossRef]
  15. Raikwar, M.; Mazumdar, S.; Ruj, S.; Sen Gupta, S.; Chattopadhyay, A.; Lam, K.-Y. A Blockchain Framework for Insurance Processes. In Proceedings of the IFIP International Conference on New Technologies, Mobility and Security (NTMS), Paris, France, 26–28 February 2018; pp. 1–4. [Google Scholar] [CrossRef]
  16. Hijazi, S.; Obaidat, M.S. A New Detection and Prevention System for ARP Attacks Using Static Entry. IEEE Syst. J. 2019, 13, 2732–2738. Available online: https://ieeexplore.ieee.org/document/8540917/ (accessed on 22 November 2023). [CrossRef]
  17. Guru, A.; Mohanta, B.K.; Mohapatra, H.; Al-Turjman, F.; Altrjman, C.; Yadav, A. A Survey on Consensus Protocols and Attacks on Blockchain Technology. Appl. Sci. 2023, 13, 2604. [Google Scholar] [CrossRef]
  18. Zheng, Z.; Xie, S.; Dai, H.; Chen, X.; Wang, H. An Overview of Blockchain Technology: Architecture, Consensus, and Future Trends. In Proceedings of the 2017 IEEE 6th International Congress on Big Data (BigData Congress), Honolulu, HI, USA, 25–30 June 2017; pp. 557–564. [Google Scholar] [CrossRef]
  19. HyperLedger Fabric Docs. Available online: https://hyperledger-fabric.readthedocs.io/en/latest/ (accessed on 5 November 2022).
  20. Johnson, D.; Menezes, A.; Vanstone, S. The Elliptic Curve Digital Signature Algorithm (ECDSA). Int. J. Inf. Secur. 2001, 1, 36–63. [Google Scholar] [CrossRef]
  21. Benet, J. Ipfs-content addressed, versioned, p2p file system. arXiv 2014, arXiv:1407.3561. [Google Scholar] [CrossRef]
  22. Sarwar, S.; Nikolaos, P.; William, J.B.; Evangelos, M.; Dimitra, P.; Ilias, P. TRUSTEE: Towards the creation of a secure, trustworthy, and privacy-preserving framework. In Proceedings of the 18th International Conference on Availability, Reliability, and Security (ARES ’23), Vienna, Austria, 29 August–1 September 2023; Volume 145, pp. 1–10. [Google Scholar] [CrossRef]
  23. Dhieb, N.; Ghazzai, H.; Besbes, H.; Massoud, Y. A Secure AI-Driven Architecture for Automated Insurance Systems: Fraud Detection and Risk Measurement. IEEE Access 2020, 8, 58546–58558. [Google Scholar] [CrossRef]
  24. Sun, J.; Yao, X.; Wang, S.; Wu, Y. Non-Repudiation Storage and Access Control Scheme of Insurance Data Based on Blockchain in IPFS. IEEE Access 2020, 8, 155145–155155. [Google Scholar] [CrossRef]
  25. Xiao, Z.; Li, Z.; Yang, Y.; Chen, P.; Liu, R.W.; Jing, W.; Pyrloh, Y.; Sotthiwat, E.; Goh, R.S. Blockchain and IoT for Insurance: A Case Study and Cyberinfrastructure Solution on Fine-Grained Transportation Insurance. IEEE Trans. Comput. Soc. Syst. 2020, 7, 1409–1422. [Google Scholar] [CrossRef]
  26. Qi, H.; Wan, Z.; Guan, Z.; Cheng, X. Scalable Decentralized Privacy-Preserving Usage-Based Insurance for Vehicles. IEEE Internet Things J. 2021, 8, 4472–4484. [Google Scholar] [CrossRef]
  27. Alnuaimi, A.; Alshehhi, A.; Salah, K.; Jayaraman, R.; Omar, I.A.; Battah, A. Blockchain-Based Processing of Health Insurance Claims for Prescription Drugs. IEEE Access 2022, 10, 118093–118107. [Google Scholar] [CrossRef]
Figure 1. System architecture.
Figure 1. System architecture.
Sensors 23 09577 g001
Figure 2. The flow chart during the insurance dispute arbitration phase.
Figure 2. The flow chart during the insurance dispute arbitration phase.
Sensors 23 09577 g002
Figure 3. Latency time in different workloads.
Figure 3. Latency time in different workloads.
Sensors 23 09577 g003
Figure 4. Throughput in different workloads.
Figure 4. Throughput in different workloads.
Sensors 23 09577 g004
Table 1. The non-repudiation in each phase.
Table 1. The non-repudiation in each phase.
ItemSignature ValueSenderReceiverSignature Verification
Phase
Insurance purchasing phase ( r P H I C , s P H I C ) PHIC r P H I C = ? x P H I C mod n
( r I C P H , s I C P H ) ICPH r I C P H = ? x I C P H mod n
Traffic accident phase ( r P H P A , s P H P A ) PHPA r P H P A = ? x P H P A mod n
( r P A P H , s P A P H ) PAPH r P A P H = ? x P A P H mod n
Medical phase ( r P H M I , s P H M I ) PHMI r P H M I = ? x P H M I mod n
( r M I P H , s M I P H ) MIPH r M I P H = ? x M I P H mod n
Request the traffic accident identification process ( r I C P A , s I C P A ) ICPA r I C P A = ? x I C P A mod n
( r P A I C , s P A I C ) PAIC r P A I C = ? x P A I C mod n
Request the medical diagnostic information process ( r I C M I , s I C M I ) ICMI r I C M I = ? x I C M I mod n
( r M I I C , s M I I C ) MIIC r M I I C = ? x M I I C mod n
Claims payment phase ( r I C B K , s I C B K ) ICBK r I C B K = ? x I C B K mod n
( r B K P H , s B K P H ) BKPH r B K P H = ? x B K P H mod n
Table 2. Prevention of data manipulation in each phase.
Table 2. Prevention of data manipulation in each phase.
ItemSenderReceiverEncrypted Messages
Phase
Insurance purchasing phasePHIC t o k e n = h ( I D P H , M det a i l , T S P H I C )
ICPH t o k e n = h ( I D P A , C I C P H , T S I C P H )
Traffic accident phasePHPA t o k e n = h ( I D P H , C P H P A , T S P H P A )
PAPH t o k e n = h ( I D P A , C P A P H , T S P A P H )
Medical phasePHMI t o k e n = h ( I D P H , C P H M I , T S P H M I )
MIPH t o k e n = h ( I D M I , C M I P H , T S M I P H )
Request the traffic accident identification processICPA t o k e n = h ( I D I C , C I C P A , T S I C P A )
PAIC t o k e n = h ( I D P A , C P A I C , T S P A I C )
Request the medical diagnostic information processICMI t o k e n = h ( I D I C , C I C M I , T S I C M I )
MIIC t o k e n = h ( I D M I , C M I I C , T S M I I C )
Claims payment phaseICBK t o k e n = h ( I D I C , C I C B K , T S I C B K )
BKPH t o k e n = h ( I D B K , C B K P H , T S B K P H )
Table 3. The man-in-the-middle attack defense in each phase.
Table 3. The man-in-the-middle attack defense in each phase.
ItemSenderReceiverSender Encryption Use Public KeyReceiver Decryption Uses a Private Key
Phase
Insurance purchasing phasePHIC C P H I C = E P U K I C ( M det a i l ) M det a i l = D P R K I C ( C P H I C )
ICPH C I C P H = E P U K P H ( M C o n t r a c t ) M I C P H = D P R K P H ( C I C P H )
Traffic accident phasePHPA C P H P A = E P U K P A ( M P H O S P A ) M P H O S P A = D P R K P A ( C P H P A )
PAPH C P A P H = E P U K P H ( M P A P H ) M P A P H = D P R K P H ( C P A P H )
Medical phasePHMI C P H M I = E P U K M I ( M P H M I ) M P H M I = D P R K M I ( C P H M I )
MIPH C M I P H = E P U K P H ( M M I P H ) M M I P H = D P R K P H ( C M I P H )
Request the traffic accident identification processICPA C I C P A = E P U K P A ( M I C P A ) M I C P A = D P R K P A ( C I C P A )
PAIC C P A I C = E P U K I C ( M P A I C ) M P A I C = D P R K I C ( C P A I C )
Request the medical diagnostic information processICMI C I C M I = E P U K M I ( M I C M I ) M I C M I = D P R K M I ( C I C M I )
MIIC C M I I C = E P U K I C ( M M I I C ) M M I I C = D P R K I C ( C M I I C )
Claims payment phaseICBK C I C B K = E P U K B K ( M I C B K ) M I C B K = D P R K B K ( C I C B K )
BKPH C B K P H = E P U K P H ( M B K P H ) M B K P H = D P R K P H ( C B K P H )
Table 4. Cost in time for each stage of computing.
Table 4. Cost in time for each stage of computing.
PartyPHICPAMIBK
Phase
Insurance purchasing phase2 T a s y + 2 T a m p + 3 T h + 11 T m u l 2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/AN/AN/A
Traffic accident phase2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/A2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/AN/A
Medical phase2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/AN/A2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/A
Request the traffic accident identification processN/A2 T a s y + 2 T a m p + 3 T h + 11 T m u l 2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/AN/A
Request the medical diagnostic information processN/A2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/A2 T a s y + 2 T a m p + 3 T h + 11 T m u l N/A
Claims payment phase T a s y + 2 T a m p + 2 T h + 6 T m u l 1 T a s y + 1 T h + 5 T m u l N/AN/A2 T a s y + 2 T a m p + 3 T h + 11 T m u l
Notes: T a s y : Signature generation/validation calculation time. T a m p : Calculation time of the determination of the function. T h : Hash calculation time. T m u l : Multiplication time.
Table 5. Communication cost for each stage.
Table 5. Communication cost for each stage.
ItemMessage LengthRounds4G5G
Phase
Insurance purchasing phase4128 bits20.04 ms0.2 µs
Traffic accident phase4128 bits20.04 ms0.2 µs
Medical phase4128 bits20.04 ms0.2 µs
Request the traffic accident identification process3392 bits20.033 ms0.17 µs
Request the medical diagnostic information process3392 bits20.033 ms0.17 µs
Claims payment phase3392 bits20.033 ms0.17 µs
Table 6. Compare other related articles.
Table 6. Compare other related articles.
AuthorsYearObjective123456
Dhieb et al. [23]2020A Secure AI-Driven Architecture for Automated Insurance Systems: Fraud Detection and Risk MeasurementYNNYYN
Jin et al. [24]2020Non-Repudiation Storage and Access Control Scheme of Insurance Data Based on Blockchain in IPFSYNYNYY
Zhe et al. [25]2020Blockchain and IoT for Insurance: A Case Study and Cyberinfrastructure Solution on Fine-Grained Transportation InsuranceYNNYNN
Qi et al. [26]2021Scalable Decentralized Privacy-Preserving Usage-Based Insurance for VehiclesYYNNYN
Alnuaimi et al. [27]2022Blockchain-Based Processing of Health Insurance Claims for Prescription DrugsYNYNYY
Ours2022A Blockchain and IPFS-Based Anticounterfeit Traceable of Car Insurance Claims SystemYYYYYY
Notes: 1: Blockchain focus, 2: Transportation-related systems, 3. IPFS focus, 4. Hyperledger focus, 5. Detailed protocols, 6. Security analysis, Y: Yes, and N: No.
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

Chen, C.-L.; Zheng, Y.-M.; Huang, D.-C.; Liu, L.-C.; Chen, H.-C. A Blockchain and IPFS-Based Anticounterfeit Traceable Functionality of Car Insurance Claims System. Sensors 2023, 23, 9577. https://doi.org/10.3390/s23239577

AMA Style

Chen C-L, Zheng Y-M, Huang D-C, Liu L-C, Chen H-C. A Blockchain and IPFS-Based Anticounterfeit Traceable Functionality of Car Insurance Claims System. Sensors. 2023; 23(23):9577. https://doi.org/10.3390/s23239577

Chicago/Turabian Style

Chen, Chin-Ling, Ying-Ming Zheng, Der-Chen Huang, Ling-Chun Liu, and Hsing-Chung Chen. 2023. "A Blockchain and IPFS-Based Anticounterfeit Traceable Functionality of Car Insurance Claims System" Sensors 23, no. 23: 9577. https://doi.org/10.3390/s23239577

APA Style

Chen, C.-L., Zheng, Y.-M., Huang, D.-C., Liu, L.-C., & Chen, H.-C. (2023). A Blockchain and IPFS-Based Anticounterfeit Traceable Functionality of Car Insurance Claims System. Sensors, 23(23), 9577. https://doi.org/10.3390/s23239577

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