You are currently viewing a new version of our website. To view the old version click .
Symmetry
  • Article
  • Open Access

22 November 2022

A Secure Interoperability Management Scheme for Cross-Blockchain Transactions

,
,
,
and
1
Department of Information Management, National Dong Hwa University, Hualien 974, Taiwan
2
Department of Computer Science and Engineering, National Sun Yat-sen University, Kaohsiung 804, Taiwan
3
Business Computer, Faculty of Management Science, Udon Thani Rajabhat University, Udonthani 41000, Thailand
*
Author to whom correspondence should be addressed.
This article belongs to the Special Issue Deep Learning Technologies for Mobile Networks: A Themed Issue in Honor of Prof. Han-Chieh Chao

Abstract

Blockchain technology has recently attracted tremendous interest due to its potential to revolutionize the industry by achieving decentralization while increasing the number of data sources, transparency, reliability, auditability, and trustworthiness. However, one of the major barriers to the widespread adoption of blockchain applications is the lack of mutual consensus and management across blockchains. Cross-blockchain consensus refers to one blockchain network reaching a consensus with another blockchain network to provide the ability to interact and share data. In this paper, we propose a secure management scheme with symmetric cross-blockchain communication and certificateless signature primitives, in which two heterogeneous blockchains are linked by a relay chain to simultaneously deliver cross-blockchain transaction security, achieve compatibility among various blockchains, and ensure the consistency of data exchanged, in practice. Additionally, our evaluation and security analysis shows the practicability and security of our proposed management scheme and demonstrates that a common test platform based on Ethereum can achieve acceptable computation costs.

1. Introduction

The blockchain, which originated from Bitcoin, was first proposed by Satoshi Nakamoto in 2008 [1]. It is a comprehensive innovation employing multiple technologies such as cryptography, consensus mechanisms, distributed databases, and peer-to-peer networks. Possessing the characteristics of decentralization, anonymity, immutability, traceability, and transparency, blockchain has gained much attention in the fields of finance [1], data provenance [2], healthcare [3], supply chain management [4], and e-government [5], among others. Most current blockchain projects are based on various application scenarios and design concepts and involve adopting different technical architectures to develop heterogeneous blockchains. These blockchain projects are like isolated islands that are disconnected from each other and unable to exchange and synchronize assets and data. With the widespread application of blockchain technology in many different areas, the need for integration between scenarios is increasing, and the demand for cross-chain transactions is also receiving more attention.
In recent years, many interoperability technologies linked to heterogeneous blockchains have been studied extensively, in light of their practical importance in numerous fields. These studies concentrate on indirect integration of cross-chain values and data transmission to avoid direct integration of all data on cross-chain transactions. This brings about the super-positioning of ledger data and a surge in data-carrying and computing. These interoperability technologies enable homogeneous or heterogeneous blockchains to transfer assets or data. Nevertheless, to provide mutual trust guarantees, a third-party organization is usually required to act as an intermediary in the indirect integration of cross-chain networks. In addition, if there is no intermediary agency, data transfers will be restricted, lowering the value of the data. Intermediary costs and transaction risks are incurred even when using intermediary agencies. Alternatively, in the absence of adequate cross-chain transaction protection mechanisms, most cross-chain schemes are vulnerable to malicious Internet-based attacks, i.e., man-in-the-middle (MITM) attacks, replay attacks, denial of service (DoS) attacks, and counterfeiting [6]. Moreover, current cross-chain techniques have room for improvement, especially in terms of standards and interoperability. In particular, widely recognized standards for cross-chain transactions are still lacking, which impedes the development of system interoperability. Due to the current situation, we are motivated to propose a secure and privacy-aware interoperability management scheme for cross-blockchain transactions that is capable of protecting sensitive user data, such as personal and private information, proprietary information, and related passwords, as well as sensitive and valuable corporate or organizational data, from being tampered with or disclosed when transacting and transmitting it through a cross-chain platform. Additionally, the proposed scheme must satisfy the following security requirements:
  • Data confidentiality is critical for cross-chain transactions with asset transfers involving all parties, including private/consortium chains and users of cross-chain transactions and blockchain service providers (or platforms). Since the data associated with cross-chain transactions are sensitive and can reveal much about the people and organizations holding the data, privacy is extremely important.
  • Data integrity is also critical for cross-chain transactions and asset transfers. We must ensure that confidential information cannot be secretly altered or deleted by intruders during cross-chain transactions.
  • Non-repudiation of cross-chain transactions is also indispensable. Cross-chain transactions must be non-repudiable and traceable. If transactions are undeniable, when there is a dispute about cross-chain transactions, neither the involved parties nor the relay agencies can deny that data were transmitted and received. This makes it easier to resolve disputes and is useful for auditing purposes.
  • During cross-chain entity communication for transactions, a malicious adversary can deceive the entities in a variety of ways by sending counterfeit and modified connections or messages. First, a malicious adversary may launch impersonation attacks and man-in-the-middle (MITM) attacks, accompanied by fake messages, to deceive legal entities and make them believe that the adversaries are also legal transaction entities, i.e., legal blockchains. Therefore, legal entities will not question an adversary’s “legitimate but malicious” behaviors, allowing the latter to steal sensitive user data. Second, an attacker may listen in on, or even interrupt legally transmitted cross-chain transaction information, obtain the network status and confidential information of others, and reuse this information between sessions to deceive a legitimate entity. Since the communication is legally issued by a legitimate entity, its authenticity will be confirmed if no further replay behavior checks are performed. Third, a denial of service (DoS) attack could cause the cross-blockchain transaction process to be disrupted. In most cases, the attacker will send legal signals to the communicating entity, thus exhausting the victim’s computing power and capacity. Thus, the service availability of cross-chain transactions cannot be guaranteed. Based on the above contingencies, it is critical to include a verification mechanism in a secure blockchain interoperability scheme to ensure the validity of interacting organizations. On the other hand, a secure blockchain interoperability scheme for the cross-chain transactions or data transfer must ensure immunity to man-in-the-middle (MITM) attacks, replay attacks, denial of service (DoS) attacks, and counterfeiting.
Based on the above discussion, we would like to propose a secure interoperability management scheme for cross-blockchain transactions, in which two heterogeneous blockchains are connected through a relay chain. The following contributions are provided through this study:
  • First, our proposed scheme is based on the Elliptic Curve Discrete Logarithm Problem (ECDLP) and the Certificateless Signature Scheme to provide the security of cross-blockchain transactions, realizes the compatibility between various blockchains, and ensures the consistency, confidentiality, and integrity of data exchange in practice. The traceable digital signature ensures non-repudiation of transactions and greatly reduces the possibility of MITM attacks, replay attacks, DoS attacks, and counterfeiting.
  • Second, we extensively surveyed and studied the major cross-blockchain approaches and related consensus mechanisms across blockchains. In addition, we have demonstrated the robustness and efficiency of our proposed secure interoperability management scheme through the formal security analysis and performance evaluation and vulnerability discussion of web3 used in our implementation. These results demonstrate the feasibility of our proposed management scheme and show our contribution to the development of research for cross-blockchain transactions.
The rest of this paper is organized as follows. Section 2 introduces the state-of-the-art of blockchain interoperability solutions and discusses recent related work. Section 3 presents a definition of an elliptic curve and reviews the characteristics of a Certificateless Signature Scheme (CLS). We next present our proposed interoperability management scheme based on relays in Section 4. Then, in Section 5, we present a security analysis and performance evaluation of the proposed scheme as a practical check and discuss the security issues associated with the adoption of web3 in our implementation. Finally, we give conclusions and summarize our future work in Section 6.

3. Preliminaries

An elliptic curve, E , over a prime finite field, E p , is denoted using the notation E / E p . It is defined by an equation y 2 = x 3 + a x + b , where a ,   b F p are constants such that Δ = 4 a 3 + 27 b 2     0 . The set E / E p consists of all points P i = x i , y i on E , and a special point O , called the point at infinity, which forms a cyclic group, G , under the operation of point addition, R = P + Q , which is defined according to a chord-and-tangent rule. Additionally, t · P = P + P + + P (t times) is regarded as scalar multiplication, and P is a generator of a cyclic group G of order n . The inverse operation is described as follows. Let E be an elliptic curve over a prime finite field, E p , and let a group, G , be elliptic curve points of prime order n. Given a generator P of G and a point x · P , the Elliptic Curve Discrete Logarithm Problem (ECDLP) is computationally infeasible to derive x , where x Z n * .
A generic construction of a Certificateless Signature Scheme (CLS) comprises six algorithms, i.e., Setup, PartialPrivateKeyExtract, SetSecretValue, SetPublicKey, Sign, and Verify [24]. Their specific phases are as follows:
  • Setup: This phase is executed by a trusted third party (TTP), such as a Trusted System Authority (TSA) or a trusted Key Generation Center (KGC). A TTP produces the master private key s , using a random number as the security parameter k , and then uses the master private key s to generate the master public key, P K K G C . Lastly, it transmits the master public key and a list of public system parameters, p a r a m s , to all system users.
  • PartialPrivateKeyExtract: TTP takes the user i’s identity, I D i , the master secret key s , and p a r a m s as input, and outputs a partial secret key, D i , for the user i.
  • SetSecretValue: The user i inputs the user i’s partial private key, D i , the system parameter params, and randomly selects a value x i Z n * as his/her secret. Later, the user i generates a complete private key, S K i , which only the user knows.
  • SetPublicKey: In this phase, the user i outputs his/her public key, P K i , using p a r a m s and the secret value x i of the user.
  • Sign: This phase takes the message, m, master public key, P K K G C , the user i’s private key, S K i , his/her identity, I D i , and p a r a m s as input, and outputs a signature σ i   = R i , T i , τ i on m.
  • Verify: This phase takes the master public key, P K K G C , the user i’s partial private key, D i , p a r a m s , the message, m, and the signature σ i = R i , T i , τ i as inputs, and returns 1 for a valid output; otherwise, it returns 0.
The design of our proposed scheme is based on the integration of ECDLP and CLS, and then we applied our proposed scheme for cross-chain transaction scenarios. Next, in Section 4, we will introduce the operation processes of our proposed scheme. Before that, Table 2 presents the notations used in our proposed scheme.
Table 2. Notations used in our proposed scheme.

4. The Proposed Scheme

We considered the common scenarios for cross-chain transactions, such as e-Healthcare, finance, e-government, and cross-industry supply chains, to achieve cross-blockchain consensus in such scenarios. Here, we present the detailed processes of our proposed interoperability management scheme, which can achieve cross-blockchain consensus by linking two private/consortium/public blockchains, i.e., A and B , with a relay chain, i.e., R C . The relay chain, R C , is based on the Delegated Proof of Stake (DPoS) consensus protocol, regardless of the heterogeneity of consensus protocols that blockchains A and B adopt. In the proposed scheme, each member, A i , of blockchain A will be matched with a member, B j , of blockchain B . In addition, there will be a producer, P A i B j , who is responsible for generating a block corresponding to the transactions, T r a n A i B j , involved with A i and B j inside the relay chain, R C . Figure 1 depicts the initial stage of a cross-blockchain transaction. Furthermore, the security of the proposed interoperability management scheme is provided by the hardness of the ECDLP. The details of the phases are presented below.
Figure 1. The initial stage of a cross-blockchain transaction.
  • Setup (Figure 2):
    Figure 2. The Setup, Partial Private Key Extract, Set Secret Value, and Set Public Key phases.
    • Once the transaction launcher asks for a cross-blockchain transaction, blockchain B sends a transaction request to blockchain A . When blockchain A receives a transaction request from the relay chain, it selects a security parameter, k , based on the ECDLP, generates a group, G , of elliptic curve points of prime order n , and determines a generator, P , of G .
    • Then, blockchain A chooses a secure hash function H : 0 , 1 * × G Z q * [25], and securely shares G ,   P , H with all members of A .
    • After that, member A i chooses a private key, s A i Z n * , and calculates a public key, P K A i = s A i · P . Finally, A i publishes   p a r a m s = G ,   P , P K A i , H and keeps s A i securely.
  • Partial Private Key Extract (Figure 2):
    • Given p a r a m s , s A i , and the public identity, I D A i B j , of the producer, P A i B j ,   A i generates a random number, r A i Z n * , and calculates R A i   =   r A i · P , h A i = H I D A i B j ,   R A i , P K A i , and s A i 1 = r A i · I D A i B j + h A i · s A i   mod n.
    • Then, A i returns a partial private key s A i 1 , R A i to the producer, P A i B j , who checks the validity of s A i 1 , R A i on the basis of whether the two computed values, i.e., s A i 1 · P and R A i · I D A i B j + h A i · P K A i , are equal or not, where I D A i B j ,   R i and P K A i are publicly known, and h A i = H I D A i B j ,   R i , P K A i is computed.
s A i 1 · P = r A i · I D A i B j + h A i · s A i · P = r A i · I D A i B j · P + h A i · s A i · P = R A i · I D A i B j + h A i · P K A i
  • Set Secret Value (Figure 2):
    • After the producer, P A i B j , confirms the validity of s A i 1 , R A i , the producer, P A i B j , sends p a r a m s = G ,   P , P K A i , H to member B j of blockchain B .
    • B j immediately chooses a private key, s B j Z n * ,   and calculates a public key, P K B j   = s B j · P .
    • Next, B j generates a random number, r B j Z n * , and calculates R B j = r B j · P , h B j = H I D A i B j ,   R B j , P K A i , P K B j , and s B j 1 = r B j · I D A i B j + h B j · s B j   mod n.
    • Then, B j outputs a partial private key s B j 1 , R B j to the producer, P A i B j . Once s B j 1 , R B j is received, P A i B j checks the validity of the s B j 1 , R B j values with the equation s B j 1 · P = R B j · I D A i B j + h B j · P K B j . If the equation holds, the producer, P A i B j , updates the public p a r a m s = G ,   P , H , P K A i , P K B j .
s B j 1 · P = r B j · I D A i B j + h B j · s B j · P = r B j · I D A i B j · P + h B j · s B j · P   = R B j · I D A i B j + h B j · P K B j
  • Set Public Key (Figure 2):
    The producer, P A i B j , picks a random number, x A i B j Z n * , as its secret value. Given p a r a m s and x A i B j , the producer, P A i B j , computes P K A i B j = x A i B j · P as its public key.
  • Sign (Figure 3):
    Figure 3. The Sign phase.
    Given p a r a m s , x A i B j , and a transaction, T r a n A i B j , involved with members A i and B j , the producer, P A i B j , generates a signature for T r a n A i B j via the following computations:
    • Choose a random number, t A i B j Z n * .
    • Compute T A i B j = t A i B j · P , h A i B j   = H S i g n l a s t , T r a n A i B j , T A i B j ,   P K A i B j , h A i , h B j , and τ A i B j = t A i B j + h A i B j · ( x A i B j + s A i 1 + s B j 1 ) mod n. Note that S i g n l a s t is the signature contained in the last valid block generated in a legitimate manner and adopted by the relay chain.
    • Output σ A i B j = T A i B j , R A i , R B j , τ A i B j as the signature of the transaction, T r a n A i B j .
  • Verify (Figure 4):
    Figure 4. The Verify phase.
    Given p a r a m s = G ,   P , H , P K A i , P K B j , I D A i B j , P K A i B j , T r a n A i B j , and σ A i B j = T A i B j , R A i , R B j , τ A i B j , the verifier examines the validity of σ A i B j via the following computations:
    • Compute h A i = H I D A i B j ,   R A i , P K A i , h B j = H I D A i B j ,   R B j , P K A i , P K B j , and h A i B j = H S i g n l a s t , T r a n A i B j , T A i B j ,   P K A i B j , h A i , h B j , where P K A i B j and S i g n l a s t can be obtained by inquiry through the relay chain.
    • Determine if τ A i B j · P = T A i B j + h A i B j · ( P K A i B j + R A i · I D A i B j + h A i · P K A i + R B j · I D A i B j + h B j · P K B j hold. The correctness of the signature, σ A i B j = T A i B j , R A i , R B j , τ A i B j , is presented as follows:
      τ A i B j · P = ( t A i B j + h A i B j · ( x A i B j + s A i 1 + s B j 1 ) ) · P = t A i B j · P + h A i B j · ( x A i B j + r A i · I D A i B j + h A i · s A i 1 + r B j · I D A i B j + h B j · s B j 1 ) · P = T A i B j + h A i B j · ( x A i B j · P + r A i · I D A i B j · P + h A i · s A i 1 · P + r B j · I D A i B j · P + h B j · s B j 1 · P ) = T A i B j + h A i B j · ( P K A i B j + R A i · I D A i B j + h A i · P K A i + R B j · I D A i B j + h B j · P K B j )
Upon completion, the DApp of the transaction launcher receives a notification about the status (success/failure) of the cross-blockchain transaction. After that, the DApp creates a status notification and displays a screen indicating success (or failure) for the cross-chain transaction for the end user.

5. Performance and Security Analysis

5.1. Performance Evaluation of the Proposed Interoperability Management Scheme for Cross-Chain Transactions

To investigate the practicability of our scheme, we implemented a prototype cross-blockchain system to verify the practical potential of our proposed interoperability management scheme and calculate the corresponding time cost. Table 3 shows the environment of our implementation, in which the VM resources simulate the cross-blockchain transaction.
Table 3. Implementation Environment.
Figure 5 illustrates the network structure of our scheme, which is operated on the Ethereum platform. To pursue the best security and explore the possibility of combining our proposed scheme with next-generation cryptography, we adopted SHA-3 (with a 256-bit output sequence) as a secure one-way hash function [16]. We adopted the crypto-modules with the Bouncy Castle Crypto Library for Java [26] to implement ECC-based scalar multiplication operations (with a 384-bit prime n), and the SHA-3 hash function takes a random-length binary sequence (96-bit) as input, and outputs a 256-bit sequence. The implementation is programmed with Open JDK and Eclipse 3.8, and the smart contract uses Solidity and Remix. The application binary interface (ABI) and source code (Bytecode) files generated after compilation by Remix are converted into Java code by Web3j CLI. We used Java with Web3j CLI to listen to the state of each blockchain. All evaluations are built on Ethereum, and we established three blockchains that exploit different consensus protocols, to simulate cross-blockchain transactions. The number of nodes in each blockchain was set to 3, and the internal consensus protocols executed within a single blockchain, i.e., private chain A and private chain B , are Proof of Work (PoW) and Proof of Authority (PoA), respectively. Moreover, the relay chain, R C , is based on the DPOS consensus protocol, and the nodes of the relay chain, R C , are deployed by Docker. Note that the above construction of the blockchain is realized with Geth and puppet, and we set web3j to sleep for 0.5 s after each call instead of the default 15 s.
Figure 5. The network structure of the implementation of our proposed scheme.
We implemented our scheme as shown in Figure 6, and Table 4 shows the cost of calculating core security components and uploading parameters to the smart contract required for our proposed scheme, which takes 625.824 ms to perform 4 random number generation operations, 6 SHA-3 operations, and 21 ECC-based scalar multiplication operations. Moreover, the performance was measured by the following metrics: P1 to P5. For each of the metrics, we conducted the evaluation ten times to determine the average time cost. Table 5 shows the results.
Figure 6. The implementation of the performance evaluation of our proposed scheme.
Table 4. Computation cost of core security components and smart contract uploading for our proposed scheme.
Table 5. Time cost for our proposed scheme.
  • Phase P1 models the private chain A choosing a security parameter k in the initial stage of the blockchain. Then, it exploits the elliptic curve discrete logarithm problem (ECDLP) to generate a secure hash function, H , with the SHA3-256 algorithm, and securely shares it with all members of A via a smart contract. The above processes are referred to as phase P1. According to our implementation, it requires 10.601 s for the mining procedure, and the computation cost of core security components and smart contract uploading was 7.318 ms.
  • Phase P2 models the following processes. First, the producer sends its ID to the private chain A . Private chain A then uses the elliptic curve Diffie–Hellman (ECDH) algorithm to generate a shared key, K A , with the producer’s ID and the private chain A ’s private key. Next, by deploying a smart contract on chain A , a transaction,   T r a n ( K A ) , is generated, and K A is sent to the producer with the transaction. The above processes are represented as phase P2. Based on our implementation, we obtained an average mining time of 10.592 s, and the computation cost of core security components and smart contract uploading was 150.955 ms for P2.
  • In phase P3, the producer validates K A , and sends a success (or failure) acknowledgment to chain A . Then, the producer transmits the smart contract, which stores chain A ’s public key and secure hash function, H, to private chain B . In this phase, we achieved an average mining cost of 10.441 s, and the computation cost of core security components and smart contract uploading was 152.218 ms for P3.
  • For phase P4, private chain B exploits the ECDH algorithm to generate a shared key, K B , using the producer’s ID and its private key. After that, by deploying a smart contract on chain B , a transaction, T r a n ( K B ) , is generated, and K B is sent to the producer with the transaction. On average, a mining time of 20.32 s is required, and the computation cost of core security components and smart contract uploading was 22.085 ms for P4.
  • For phase P5, the producer validates K B , and sends a success (or failure) acknowledgment to chain B . Then, the producer issues a digital signature on the transaction. Note that the digital signature scheme is the Elliptic Curve Digital Signature Algorithm (ECDSA). In our implementation, an average mining time of 10.446 s was required, and the computation cost of core security components and smart contract uploading was 23.881 ms for P5.
  • Phase P6 represents the producer’s return of the signature of the cross-chain transaction to the two private chains, whereupon the private chain’s verification of the signature occurs. The experimental results show that the computation time of core security components from sending the signature to uploading the smart contract to the two private chains required 269.367 ms, and a mining time of 20.32 s was required, on average.
From Table 5, we know that the most expensive part is the mining procedure, which takes 87.211 s, and this process is generally required for cross-blockchain transactions. To reduce the cost of the mining procedure, we discovered that submitting multiple transactions in batches reduces the average time cost. In our experiments, we set each transaction to complete the actions that must be performed in this stage before the end of each stage, and then checked whether each blockchain has completed internal consensus and proceeded to the next stage, instead of confirming the internal consensus state on a transaction-by-transaction basis. Meanwhile, we conducted ten experiments. Figure 7 and Figure 8 depict the computational cost and mining cost when increasing from 1 to 100, respectively. From Figure 7, we can observe that as the number of transactions increased, the average computation time remained around 625 ms, indicating that the increase in the number of transactions does not affect the average computation time per transaction. Figure 8 clearly shows that when the number of transactions increased to 10, the average mining time dropped significantly to 59.827 s. Subsequently, as the number of transactions increased, the average mining time also steadily decreased. Therefore, batch-submitting multiple transactions is very efficient for our proposed scheme.
Figure 7. The computation cost with batch transactions for our proposed scheme.
Figure 8. The mining cost with batch transactions for our proposed scheme.

5.2. Security Analysis

In this section, we present the security analysis of the proposed scheme under the assumptions of the following adversary model. That is, an adversary, Ad, may break the robustness of the proposed scheme through the following oracles:
  • O 1 InitEntity ( ) : This oracle allows Ad to launch a session, k , of the process of our proposed scheme and get back a session identifier k i d .
  • O 2 Send N k ,   k ,   m : This oracle allows Ad to send a message, m , to any given node, N k , and get back N k s response from session k .
  • O 3 Eavesdrop N i _ k ,   N j _ k ,   k ,   m : This oracle models a passive attack by allowing Ad to eavesdrop and gain reading access to the message, m , exchanged between N i _ k and N j _ k in session k .
  • O 4 Int e r c e p t N i _ k ,   N j _ k ,   k ,   m : This oracle models an active attack by allowing Ad to interrupt and modify the message, m , exchanged between N i _ k and N j _ k in session k .
Definition: Let E be the event that an adversary, Ad, can correctly generate a counterfeit but valid signature during any given session, k . In that case, an adversary,   A d ϵ ,   t ,   n 1 ,   n 2 ,   n 3 ,   n 4 ,   generates a counterfeit but valid signature if the probability that E occurs, i.e., P r E , is at least ϵ , and the run time of Ad is at most t , where ϵ is non-negligible and t is a polynomial time that depends on the execution time of oracles O 1 ,   O 2 , O 3 , and O 4 . In brief, our proposed scheme provides ϵ ,   t ,   n 1 ,   n 2 ,   n 3 ,   n 4 -robustness against a counterfeit signature attack if there exists no adversary, A d ϵ ,   t ,   n 1 ,   n 2 ,   n 3 ,   n 4 , generating a counterfeit but valid signature against our proposed scheme.
Claim 1: The proposed scheme provides ϵ ,   t ,   1 ,   n 2 ,   n 3 ,   n 4 -robustness against a counterfeit signature attack where n 2 ,   n 3 ,   and   n 4 are arbitrary numbers.
Oracle O 1   can be launched easily as an adversary, Ad, can register with the service provider of our proposed scheme. Once the oracle O 1 is performed, oracles O 2 , O 3 , and O 4 can be launched with little effort by an adversary under the assumption that the communication channel is public. After that, with oracle queries O 2 and O 3 , an Ad may eavesdrop on the communication among nodes of blockchains and the relay chain to obtain transmitted messages as many times as it wants. However, the proposed scheme achieves transmission confidentiality via the HTTPS protocol. Sensitive data engaged with cross-chain transactions are protected and, thus, an Ad cannot obtain the secret parameters from the secure channel. In addition, Ad may utilize O 4 to interrupt and modify the messages obtained via O 2 and O 3 . Nevertheless, the proposed scheme utilizes certificateless signature primitives to provide the tamper-resistant characteristic for transmitted cross-chain transactions. Furthermore, non-repudiation of these transactions can be guaranteed through the adoption of the certificateless signature, as well. Accordingly, an Ad cannot break the robustness of our proposed scheme.
Claim 2: The proposed scheme can provide resistance against replay attack and man-in-the-middle attack, and the security requirements, i.e., non-repudiation and data integrity, for cross-chain transactions.
In our proposed scheme, all transmitted messages such as s A i 1 , R A i , s B j 1 , R B j , and σ A i B j are involved with random numbers r A i ,   r B j   and t A i B j . All these random numbers are one-time valid and accordingly, our proposed scheme can resist the replay attack. Moreover, based on equations, i.e., s A i 1   = r A i · I D A i B j + h A i · s A i and R A i = r A i · P , we can clearly see that the s A i 1 and R A i are well-protected through s A i and r A i with ECDLP. Therefore, attackers between all the communicating entities cannot impersonate other legitimate entities with a fake but valid message ( s A i 1 , R A i ) . The same situation is applied to the message s B j 1 , R B j . Then, based on the equation σ A i B j = T A i B j , R A i , R B j , τ A i B j , it is believed that σ A i B j is secure via the random number t A i B j and ECDLP. Hence, it is extremely hard to counterfeit a fake but valid signature of the transaction, T r a n A i B j , under the computational hardness of ECDLP. In brief, our proposed scheme can resist a man-in-the-middle attack. Next, it is clear that our proposed scheme is naturally embedded with the non-repudiation and data integrity characteristics. This is because the ECDLP and CLS are integrated to construct our proposed scheme. Based on the verification of s A i 1 , R A i , s B j 1 , R B j , and σ A i B j , any possibility of violating the non-repudiation and data integrity will be detected immediately.

5.3. Discussion on Security Issues with the Adoption of Web3 in Our Implementation

In our implementation, we adopted web3, a JavaScript API that connects to the Generic JSON RPC specification. According to [27], it is vulnerable to insecure credential storage. The current implementation of web3.js may lead to wallet decryption in some cases. When the wallet is saved and encrypted into local storage, the private key is required to load the wallet. However, this private key is available through LocalStorage and can be read in clear text on a web page after loading into the wallet. Attackers could abuse this implementation via client-side attacks, primarily cross-site scripting (XSS), and could lead to the theft of the consumer’s wallet private key. Against XSS attacks, one should avoid storing wallet addresses in plain text and use their hashed versions instead. In this case, we think that the simplest mitigation is for the website program to include a security header such as “X-Frame-Options” to eliminate the html script “iframe” which can lead to clickjacking and tricking users into obtaining wallet addresses.
ReactJS is another mitigation, as it appears to be resistant to most XSS attacks due to the way it generates DOM nodes and the string values it can automatically escape through user input. Its disadvantage is that data passed to props are not automatically escaped until rendered to the React DOM, and many properties available in ReactJS still allow XSS attacks, including, but not limited to:
<img src={}/> and <a href="{}"/>.
Thus, classic cross-site scripting attacks that use URLs containing malicious scripts, such as:
<a href="javascript:alert(123)">Button</a>
can still work in ReactJS, as shown in:
ReactDOM.render(<a href=“JavaScript:
alert(1)">Button</a>,document.getElementById(‘root’));
When the button is clicked, the script embedded in the href property is executed.
Therefore, we recommend another mitigation, which is to load/decrypt the wallet only when the private or public key is needed. When you do not need to access the key itself, simply save the load from locally to access the address using the following command:
let wallet = JSON.parse(localStorage[“web3.js_wallet”])
The level of security is much higher by doing so and decrypting only when we needed to access the keystore, rather than simply loading the wallet and attaching it to the global object for later use. Furthermore, we suggest that web3 developers can consider a complete redesign of the XOR mask that incorporates a user-created PIN or password to provide an additional layer of security in the future version of web3. Another issue with regular-expression denial of service (ReDoS) is that the WebSocket (ws) package allows a specially crafted header value to be used to significantly reduce the server speed. However, to resolve it, developers using the ws package only need to upgrade to version 7.4.6, 6.2.2, 5.2.3, or later, so it is not discussed here.

6. Conclusions

In this paper, we presented a secure interoperability management scheme with a certificateless cryptographic primitive for cross-blockchain transactions. Unlike most existing cross-chain transaction methods, we redefined the consensus method as a verification method, and used it to ensure the integrity and data provenance of the transferred data when performing cross-blockchain interactions. The scheme relies on cross-blockchain consensus with relays to improve the compatibility between heterogeneous blockchains. To test the proposed method in a real-world context, we implemented our scheme on VM resources, with all blockchains based on a private blockchain network with Ethereum. Moreover, the relay chain, which was deployed by Docker, was based on Delegated Proof of Stake (DPoS), regardless of the heterogeneity of consensus protocols that blockchains adopted, and the number of nodes in each blockchain was set as 3. Furthermore, the evaluation demonstrated that the total time of a cross-blockchain transaction was 87.837 s. Our proposed scheme delivers compatibility among heterogeneous blockchains and guarantees the consistency of transaction data exchanged. It also achieves better security for cross-blockchain transactions. In brief, according to our evaluation results, we showed that our management scheme is secure and practical for common cross-blockchain transactions. In the future, we can also further study how to reduce the return time of performing the consensus verification to make cross-blockchain transactions more versatile. Moreover, it is worthy to investigate the scalability of our proposed scheme with existing public blockchain solutions.

Author Contributions

Conceptualization, K.-H.Y. and Y.-H.L.; implementation and experiment, G.-Y.Y. and L.-F.L.; formal analysis, K.-H.Y.; writing—original draft preparation, K.-H.Y. and G.-Y.Y.; writing—review and editing, K.-H.Y., C.B. and Y.-H.L.; supervision, K.-H.Y. and Y.-H.L.; project administration, K.-H.Y. and Y.-H.L. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the National Science and Technology Council, Taiwan, under Grants: NSTC 111-2221-E-259-006-MY3, NSTC 111-2218-E-011-012-MBK, NSTC 111-2926-I-259-501, and NSTC 110-2634-F-A49-004.

Data Availability Statement

Not applicable.

Acknowledgments

We thank the anonymous reviewers’ comments for making this manuscript better.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Nakamoto, S. Bitcoin: A Peer-to-Peer Electronic Cash System. 2008. Available online: https://bitcoin.org/bitcoin.pdf (accessed on 20 October 2022).
  2. Khatal, S.; Rane, J.; Patel, D.; Patel, P.; Busnel, Y. FileShare: A Blockchain and IPFS Framework for Secure File Sharing and Data Provenance. In Advances in Machine Learning and Computational Intelligence; Springer: Singapore, 2021; pp. 825–833. [Google Scholar]
  3. Agbo, C.C.; Mahmoud, Q.H.; Eklund, J.M. Blockchain technology in healthcare: A systematic review. Healthcare 2019, 7, 56. [Google Scholar] [PubMed]
  4. Saberi, S.; Kouhizadeh, M.; Sarkis, J.; Shen, L. Blockchain technology and its relationships to sustainable supply chain management. Int. J. Prod. Res. 2019, 57, 2117–2135. [Google Scholar] [CrossRef]
  5. Gao, Y.; Pan, Q.; Liu, Y.; Lin, H.; Chen, Y.; Wen, Q. The Notarial Office in E-government: A Blockchain-Based Solution. IEEE Access 2021, 9, 44411–44425. [Google Scholar] [CrossRef]
  6. Zamyatin, A.; Harz, D.; Lind, J.; Panayiotou, P.; Gervais, A.; Knottenbelt, W. XCLAIM: Trustless, Interoperable, Cryptocurrency-Backed Assets. In Proceedings of the IEEE Symposium on Security and Privacy (SP), San Francisco, CA, USA, 19–23 May 2019; pp. 193–210. [Google Scholar]
  7. Buterin, V. Chain Interoperability; R3 Research Paper; IEEE: Manhattan, NY, USA, 2016. [Google Scholar]
  8. Hope-Bailie, A.; Thomas, S. Interledger: Creating a Standard for Payments. In Proceedings of the 25th International Conference Companion on World Wide Web, Montréal, QC, Canada, 11–15 April 2016; pp. 281–282. [Google Scholar]
  9. Chow, J. Btc Relay. 2016. Available online: https://buildmedia.readthedocs.org/media/pdf/btc-relay/latest/btc-relay.pdf (accessed on 20 October 2022).
  10. Kwon, J.; Buchman, E. Cosmos Whitepaper. 2020. Available online: https://cosmos.network/resources/whitepaper (accessed on 15 June 2021).
  11. Wood, G. Polkadot: Vision for a Heterogenous Multi-Chain Framework. November 2016. Available online: https://polkadot.network/PolkaDotPaper.pdf (accessed on 15 June 2021).
  12. Poon, J.; Dryja, T. The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments. 2016. Available online: https://www.bitcoinlightning.com (accessed on 20 October 2022).
  13. Egger, C.; Moreno-Sanchez, P.; Maffei, M. Atomic multi-channel updates with constant collateral in Bitcoin-compatible payment-channel networks. In Proceedings of the 2019 ACM SIGSAC Conference on Computer and Communications Security, (CCS), London, UK, 11–15 November 2019; pp. 801–815. [Google Scholar]
  14. Jin, H.; Dai, X.; Xiao, J. Towards a Novel Architecture for Enabling Interoperability amongst Multiple Blockchains. In Proceedings of the 2018 IEEE 38th International Conference on Distributed Computing Systems (ICDCS), Vienna, Austria, 2–6 July 2018; pp. 1203–1211. [Google Scholar]
  15. Li, D.; Liu, J.; Tang, Z.; Wu, Q.; Guan, Z. AgentChain: A Decentralized Cross-Chain Exchange System. In Proceedings of the 2019 18th IEEE International Conference On Trust, Security And Privacy in Computing And Communications/13th IEEE International Conference On Big Data Science And Engineering (TrustCom/BigDataSE), Rotorua, New Zealand, 5–8 August 2019; pp. 491–498. [Google Scholar]
  16. Pang, Y. A new consensus protocol for blockchain interoperability architecture. IEEE Access 2020, 8, 153719–153730. [Google Scholar] [CrossRef]
  17. Wu, Z.; Xiao, Y.; Zhou, E.; Pei, Q.; Wang, Q. A Solution to Data Accessibility Across Heterogeneous Blockchains. In Proceedings of the 2020 IEEE 26th International Conference on Parallel and Distributed Systems (ICPADS), Hong Kong, 2–4 December 2020; pp. 414–421. [Google Scholar]
  18. Qiao, R.; Luo, X.-Y.; Zhu, S.-F.; Liu, A.-D.; Yan, X.-Q.; Wang, Q.-X. Dynamic Autonomous Cross Consortium Chain Mechanism in e-Healthcare. IEEE J. Biomed. Health Inform. 2020, 24, 2157–2168. [Google Scholar] [PubMed]
  19. Wang, G.; Nixon, M. InterTrust: Towards an Efficient Blockchain Interoperability Architecture with Trusted Services. In Proceedings of the 2021 IEEE International Conference on Blockchain (Blockchain), Melbourne, Australia, 6–8 December 2021; pp. 150–159. [Google Scholar] [CrossRef]
  20. Li, Y.; Liu, H.; Tan, Y. POLYBRIDGE: A Crosschain Bridge for Heterogeneous Blockchains. In Proceedings of the 2022 IEEE International Conference on Blockchain and Cryptocurrency (ICBC), Shanghai, China, 2–5 May 2022; pp. 1–2. [Google Scholar] [CrossRef]
  21. Zhang, L.; Ge, Y. Identity Authentication Based on Domestic Commercial Cryptography with Blockchain in the Heterogeneous Alliance Network. In Proceedings of the 2021 IEEE International Conference on Consumer Electronics and Computer Engineering (ICCECE), Guangzhou, China, 15–17 January 2021; pp. 191–195. [Google Scholar] [CrossRef]
  22. Cao, L.; Song, B. Blockchain cross-chain protocol and platform research and development. In Proceedings of the 2021 International Conference on Electronics, Circuits and Information Engineering (ECIE), Zhengzhou, China, 22–24 January 2021; pp. 264–269. [Google Scholar] [CrossRef]
  23. Sober, M.; Scaffino, G.; Spanring, C.; Schulte, S. A Voting-Based Blockchain Interoperability Oracle. In Proceedings of the 2021 IEEE International Conference on Blockchain (Blockchain), Melbourne, Australia, 6–8 December 2021; pp. 160–169. [Google Scholar] [CrossRef]
  24. Huang, X.; Mu, Y.; Susilo, W.; Wong, D.S.; Wu, W. Certificateless signature revisited. Lect. Notes Comput. Sci. 2007, 4586, 308–322. [Google Scholar]
  25. SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions, FIPS 202. August 2015. Available online: http://dx.doi.org/10.6028/NIST.FIPS.202 (accessed on 15 June 2021).
  26. Bouncy Castle Crypto APIs. Available online: https://www.bouncycastle.org/ (accessed on 15 June 2021).
  27. Snyk—Web3 Vulnerabilities. Available online: https://snyk.io/vuln/npm:web3 (accessed on 8 November 2022).
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.