Method and system for providing interoperability service between different blockchains
The described method and system address the challenge of high costs and complexity in blockchain interoperability by using a validation and relay system to securely and efficiently transmit messages across different blockchain systems, ensuring transaction integrity and reducing risks.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- SOOHO IO INC
- Filing Date
- 2025-12-17
- Publication Date
- 2026-07-02
AI Technical Summary
Existing blockchain systems face high costs and complexity when directly connecting heterogeneous systems, lacking a standardized method for secure and efficient message transmission between financial institutions and public blockchains.
A method and system involving a validation system to verify and convert messages, a relay system to store and route them, and a routing unit to ensure compatibility across different blockchain systems, enabling secure and efficient message transmission.
Facilitates interoperability between heterogeneous blockchain systems at a low cost by validating, converting, and securely transmitting messages, reducing risks and maintaining transaction integrity.
Smart Images

Figure KR2025022030_02072026_PF_FP_ABST
Abstract
Description
Method and system for providing interoperability services between different blockchains
[0001] The present invention relates to a method and system for providing interoperability services between different blockchains, and more specifically, to a method and system for providing interoperability services between different blockchains by transmitting messages simply and efficiently at a low cost between different heterogeneous blockchain systems.
[0002] As is well known, a blockchain system has the advantage of preventing tampering with transaction records by allowing a distributed ledger that stores transaction records on multiple nodes without the intervention of a central server.
[0003] Recent blockchain systems include a significant number such as Ethereum, Bitcoin, and Arbitrum; since each of these blockchain systems operates independently of one another, technology is required to connect different types of heterogeneous blockchain systems.
[0004] In particular, various financial institutions are building private blockchains, including the Bank of Korea’s CBDC (Central Bank Digital Currency) usability test currently being pursued as a national project. While there is an increasing need for interoperability between these independent private blockchains, there are limitations, such as high costs and complexity when directly connecting blockchains, and the lack of a standardized method.
[0005] In addition, there is a need for a method to standardize and securely transmit network connections and message exchanges between financial institutions within the established financial system and foundations aiming for public blockchains such as Ethereum.
[0006] While technologies such as Chainlink CCIP are known as interoperability technologies between such chains, these conventional technologies have limitations in that they are difficult to implement in practice due to high costs and the difficulty of immediately responding to problems when applying them.
[0007] Furthermore, the SATP (Standards for the Interoperability of Tokenized Assets and Platforms) technology, which was used for blockchain interoperability connectivity for the Korea Financial Payment Services IPO subscription in the recent Bank of Korea CBDC project, has a problem in that while messages between each operating terminal network can interact, the complexity of the connections between each operating terminal is very high for multiple financial institutions to interact with each other.
[0008] [Prior Art Literature]
[0009] Korean Registered Patent Publication No. 10-2530967 (Published May 15, 2023)
[0010] The present invention aims to provide a method and system for providing interoperability services between different blockchains by transmitting messages simply and efficiently at a low cost between different heterogeneous blockchain systems.
[0011] The present invention provides a method for providing interoperability services between different blockchains, comprising: a first step in which a validation system receives a message from a first blockchain system; a second step in which the validation system validates the received message and, if the validation is successful, transmits a record request signal containing the message to a relay system, and the relay system records the message based on the record request signal; and a third step in which the validation system transmits an execution request signal requesting the transmission of a message to a relay system, and the relay system receiving the execution request signal executes the transmission of the message, wherein the third step is characterized in that a routing unit is called by the execution of a message transmission unit of the relay system, and the routing unit transmits the message to a second blockchain system.
[0012] Here, in the first step, the message may include an identifier (ID) of a second blockchain system, which is the target blockchain system to which the message is to be transmitted, the address of the final recipient in the second blockchain system to which the message is to be delivered, and message data to be transmitted.
[0013] In addition, the first step above allows the first blockchain system to analyze the received message by a parser and convert it into a form that can be used by the validation system.
[0014] In addition, the second step above allows the validation system to validate the message by extracting block header information from the first blockchain system where the message originated from the received message.
[0015] In addition, in the third step, the routing unit may convert the message into a form usable by the second blockchain system and then transmit it to the second blockchain system, or transmit the message to an external conversion server, and the conversion server may convert the message into a form usable by the second blockchain system and then transmit it to the second blockchain system.
[0016] In addition, in the third step, the routing unit may once again encode the message transmitted from the validation system to the relay system in an encoded and wrapped state, and then transmit it to the second blockchain system in a wrapped state.
[0017] In addition, the second blockchain system can decode the received twice-encoded message twice, extract the message and the target contract to actually execute the message, and finally deliver the message to the address of the recipient of the message combined with the second blockchain system by executing the target contract.
[0018] According to another aspect of the present invention, an interoperability service provision system between different blockchains is provided, comprising: a validity verification system that verifies the validity of a message transmitted from a first blockchain system; and a relay system that stores a message verified for validity by the validity verification system and transmits it to a second blockchain system. The validity verification system comprises: a message verification unit that verifies a message received from the first blockchain system and, if the verification is successful, transmits a record request signal containing the message to the relay system so that the message is recorded in the relay system; and a message transmission execution unit that, if the verification is successful by the message verification unit, transmits an execution request signal to the relay system requesting the transmission of the message to the relay system. The relay system comprises: a message recording unit that records the message when it receives a record request signal from the validity verification system; a message transmission unit that executes the transmission of the message when it receives an execution request signal from the validity verification system; and a routing unit that transmits the message to a second blockchain system, which is a target blockchain system to which the message is to be transmitted, by being called by the execution of the message transmission unit.
[0019] Here, the routing unit may convert the message into a form usable by the second blockchain system and then transmit it to the second blockchain system, or transmit the message to an external conversion server, and the conversion server may convert the message into a form usable by the second blockchain system and then transmit it to the second blockchain system.
[0020] Additionally, the routing unit may be configured to encode the message transmitted from the validation system to the relay system in a wrapped state once again and transmit it to the second blockchain system in a wrapped state.
[0021] In addition, the second blockchain system can decode the received twice-encoded message twice, extract the message and the target contract to actually execute the message, and finally deliver the message to the address of the recipient of the message combined with the second blockchain system by executing the target contract.
[0022] According to the present invention, a method and system for providing interoperability services between different blockchains can be provided by transmitting messages simply and efficiently at a low cost between different heterogeneous blockchain systems.
[0023] FIG. 1 shows the overall configuration and connection relationships of an interoperability service provision system (1000) between different blockchains according to the present invention.
[0024] Figure 2 shows an example of the configuration of a validation system (100).
[0025] Figure 3 shows an example of the configuration of a relay system (200).
[0026] FIG. 4 is a flowchart illustrating a method for providing interoperability services between different blockchains according to an embodiment of the present invention, performed in the system (1000) described in FIG. 1 to 3.
[0027] Hereinafter, embodiments according to the present invention will be described in detail with reference to the attached drawings.
[0028] FIG. 1 shows the overall configuration and connection relationships of an interoperability service provision system (1000) between different blockchains according to the present invention.
[0029] Referring to FIG. 1, a method and system for providing interoperability services between different blockchains (1000, hereinafter simply referred to as "system (1000)") includes a validation system (100) and a relay system (200), and is combined with a first blockchain system (300) and a second blockchain system (400) through a network.
[0030] In this specification, the first blockchain system (300) and the second blockchain system (400) are defined as different types of blockchain systems, the first blockchain system (100) is defined as a source blockchain system that transmits messages, and the second blockchain system (200) is defined as a destination blockchain system that receives messages from the first blockchain system (300).
[0031] For example, the first blockchain system (100) may be an Ethereum-based blockchain system, and the second blockchain system (200) may be an Arbitrum-based blockchain system.
[0032] Additionally, the first blockchain system (300) may be one of the private blockchains operated by a financial institution such as a bank or a securities firm, and the second blockchain system (400) may be one of the public blockchains such as Ethereum, Polygon, Arbitrum, etc.
[0033] In addition, conversely, the first blockchain system (300) may be one of the public blockchains, and the second blockchain system (400) may be one of the private blockchains.
[0034] Here, the private blockchain can be a blockchain such as Hyperledger Besu, Hyperledger Fabric, R3 Corda, etc.
[0035] Additionally, the first blockchain system (300) and the second blockchain system (400) may both be public blockchains or private blockchains, but even in this case, the two are different types of blockchain systems.
[0036] These first and second blockchain systems (300, 400) themselves are not the direct purpose of the present invention and are known by prior art, so a detailed description of them is omitted.
[0037] The validity verification system (100) performs the function of verifying the validity of a message transmitted from the first blockchain system (300).
[0038] Additionally, the relay system (200) performs the function of storing a message validated by the validation system (100) and transmitting the message to the second blockchain system (400).
[0039] Here, "message" means all kinds of information that can be transmitted and received between the first and second blockchain systems (300, 400).
[0040] The validation system (100) and the relay system (200) are independent off-chain entities, not on-chain entities directly combined with the first and second blockchain systems (300, 400).
[0041] Additionally, the validation system (100) and the relay system (200) can be implemented as separate and independent blockchain systems from the first and second blockchain systems (300, 400), and the validation system (100) and the relay system (200) are also implemented as separate and independent blockchain systems.
[0042] Additionally, the validation system (100) may be implemented as a general server system rather than a blockchain system as needed.
[0043] Figure 2 shows an example of the configuration of a validation system (100).
[0044] Referring to FIG. 2, the validation system (100) includes a message validation unit (110) and a message transmission execution unit (120).
[0045] The message verification unit (110) performs the function of verifying a message received from the first blockchain system (300), and if the verification is successful, transmitting a record request signal containing the message to the relay system (200) so that the message is recorded in the relay system (200).
[0046] The message verification unit (110) verifies the message by verifying the validity, integrity, and authority of the message for the received message.
[0047] For example, the message verification unit (110) can verify the message by checking the block number of the first blockchain system (300) where the message originated from the received message, receiving block information corresponding to the block number from the first blockchain system (300), and then extracting block header information from the received block information.
[0048] In this case, the block header information may include, for example, block hash information and receipts hash information; the block hash information is the hash value of the corresponding block, and the receipts hash information is the hash value of the event log record data proving the results of all transaction executions in the corresponding block. By using this receipts hash, all events that occurred in the block can be verified, and thus the block to be verified can be used to validate it.
[0049] However, this is merely an exemplary method, and it goes without saying that other methods may also be used.
[0050] When verification is successful, the message verification unit (110) transmits a record request signal containing the message to the relay system (200) so that the message is recorded in the relay system (200), and the relay system (200) records the message based on the received record request signal.
[0051] In this case, the message included in the record request signal can be stored as a hash value by, for example, the keccak256 hash function and transmitted.
[0052] Meanwhile, although not illustrated, the validity verification system (100) may include a whitelist verification unit. The whitelist verification unit stores a whitelist, which is a list of users or nodes allowed to access the relay system (200), and before performing the aforementioned verification process in the message verification unit (110), it checks whether the user or node that transmitted the message from the first blockchain system (300) is included in the whitelist, and only if it is included can the message verification unit (110) perform the aforementioned verification process.
[0053] Additionally, although not shown, the validity verification system (100) may further include a setting unit (not shown) that allows setting various information necessary for the operation of the relay system (200).
[0054] The message transmission execution unit (120) performs the function of transmitting an execution request signal to the relay system (200) requesting the relay system (200) to execute the transmission of the message when the verification unit (110) is successful.
[0055] In the relay system (200) that receives the execution request signal, the message transmission unit (220) is executed to begin preparation work for transmitting the message. This may involve updating the status of the message and preparing for the call of the routing unit (230) required in the subsequent process.
[0056] In this way, the validity verification system (100) is separated into a message verification unit (110) that performs message verification and a message transmission execution unit (120) that executes message transmission.
[0057] Therefore, it has the advantage of reducing potential risks that may occur at each stage of verification and execution. This is because malicious messages can be prevented from reaching the execution stage by going through the process of verifying and recording the validity of messages during the verification stage.
[0058] In addition, the message transmission execution unit (120) handles only messages that have already been verified through a separate execution transaction, thereby minimizing the possibility of errors or attacks that may occur during the execution of message transmission. This method has the advantage of greatly improving the security of the smart contract and maintaining the integrity of the transaction.
[0059] Furthermore, a structure that executes only messages for which verification and logging are complete is also effective in preventing security vulnerabilities such as transaction reentrancy attacks. This is because it prevents the same message from being executed multiple times, as each step proceeds independently and is executed based on the logged state.
[0060] Figure 3 shows an example of the configuration of a relay system (200).
[0061] Referring to FIG. 3, the relay system (200) includes a message recording unit (210), a message transmission unit (220), and a routing unit (230).
[0062] Here, the message logging unit (210), the message transmission unit (220), and the routing unit (230) are each implemented as a contract capable of executing a smart contract.
[0063] The message recording unit (210) performs the function of recording the corresponding message in the relay system (200) when it receives a recording request signal from the validity verification system (100). The message recording unit (210) is implemented as a contract capable of executing a smart contract, and the smart contract is executed by the recording request signal to record the corresponding message.
[0064] The message transmission unit (220) performs the function of transmitting the message when it receives an execution request signal from the validation system (100).
[0065] Since the message transmission unit (220) is also implemented as a contract, the message transmission unit (220) is executed by an execution request signal, and thereby a preparatory operation to transmit the message to the target blockchain system, the second blockchain system (400), is initiated, which may be to update the state of the message and prepare for the call of the routing unit (230) required in the subsequent process.
[0066] The routing unit (230) performs the function of transmitting the message to the second blockchain system (400), which is the target blockchain system to which the message is to be transmitted, when called by the message transmission unit (220).
[0067] Here, if the first and second blockchain systems (300, 400) do not use the same virtual machine capable of executing smart contracts, for example, if the first blockchain system (300) is an EVM chain but the second blockchain system (400) is a non-EVM chain, or vice versa, the routing unit (230) can convert the message into a form that can be used by the second blockchain system (400) and then transmit it to the second blockchain system (400).
[0068] That is, the routing unit (230) parses the message to verify the second blockchain system (400) and converts the message into a form that can be used in the second blockchain system (400).
[0069] Such message conversion may vary depending on the type of the first and second blockchain systems (300, 400) and the specific format and specifications of the message used. This may be performed by the routing unit (230), but may also be performed by an external, independent conversion server (not shown). In this case, the converted message may be transmitted to the second blockchain system (400) through the conversion server, or the converted message may be transmitted to the second blockchain system (400) from the routing unit (230) after receiving the converted message from the conversion server.
[0070] Meanwhile, if the first and second blockchain systems (300, 400) use the same virtual machine, such as an EVM (Ethereum Virtual Machine), capable of executing smart contracts, the routing unit (230) can transmit the message as is to the second blockchain system (400).
[0071] Meanwhile, when a message is transmitted from the validation system (100) to the relay system (200), the message is transmitted in an encoded and wrapped state, and the routing unit (230) can encode the encoded message once again and transmit it to the second blockchain system (400) in a wrapped state.
[0072] Accordingly, the second blockchain system (400) decodes the message encoded twice twice, and then extracts the target contract and message to actually execute the message from the second blockchain system (400). Then, by executing the target contract and executing a transaction, the message is finally delivered to the address of the recipient of the message combined with the second blockchain system (400).
[0073] Hereinafter, a method for providing a relay service for interoperability between different blockchains under such a configuration will be explained with reference to FIG. 2 and below.
[0074] FIG. 4 is a flowchart illustrating a method for providing interoperability services between different blockchains according to an embodiment of the present invention, performed in the system (1000) described in FIG. 1 to 3.
[0075] Referring to FIG. 4, first, the first blockchain system (300) receives a message from a user system (not shown) (S100).
[0076] Here, the message is transmitted by a user connected to the first blockchain system (300) to another user connected to the second blockchain system (400), as described above, and may be a financial transaction such as transmitting cryptocurrency or a request for specific information.
[0077] Additionally, such a message may include an identifier (ID) of the target blockchain system to which the message is to be transmitted, i.e., the second blockchain system (400), the final receiving address in the second blockchain system (400) to which the message is to be delivered, and message data to be transmitted.
[0078] As is known in the past, the user system may be a terminal such as a computer or a smartphone, and, for example, can send a message to a Dapp Contract, which is a smart contract deployed in advance on the first blockchain system (300), through a Dapp interface.
[0079] The first blockchain system (300) analyzes the received message by a parser and converts it into a form that can be used by the validation system (100).
[0080] Then, the first blockchain system (300) transmits the converted message to the validation system (100) (S110).
[0081] The message verification unit (110) of the validity verification system (100) verifies a message received from the first blockchain system (300) as described above, and if the verification is successful, transmits a record request signal containing the message to the relay system (200) so that the message is recorded in the relay system (200) (S120, S130).
[0082] The message recording unit (210) of the relay system (200) records the corresponding message based on the received recording request signal as described above (S140).
[0083] And, the message transmission execution unit (120) of the validation system (100) transmits an execution request signal to the relay system (200) requesting the transmission of the corresponding message as described above (S150).
[0084] In the relay system (200) that receives the execution request signal, the message transmission unit (220) is executed to execute the transmission of the corresponding message (S160).
[0085] By executing the message transmission unit (220), the state of the message is updated as a preparatory step for transmitting the message, and the routing unit (230) required in the subsequent process is called.
[0086] When the routing unit (230) is called, as described above, the routing unit (230) is executed and the message is transmitted to the second blockchain system (400), which is the target blockchain system to which the message is to be transmitted (S170, S180).
[0087] Here, as described above, for example, if the first blockchain system (300) is an EVM chain but the second blockchain system (400) is a Non-EVM chain, or vice versa, the routing unit (230) can convert the message and then transmit it to the second blockchain system (400).
[0088] That is, the routing unit (230) parses the message to verify the second blockchain system (400) and converts the message into a form that can be used in the second blockchain system (400). As previously mentioned, this may be performed by an external, independent, separate conversion server (not shown).
[0089] Meanwhile, if the first and second blockchain systems (300, 400) use the same virtual machine, such as an EVM (Ethereum Virtual Machine), the routing unit (230) transmits the message as is to the second blockchain system (400).
[0090] The message converted in this way is transmitted to the target blockchain system, the second blockchain system (400), by the routing unit (230) or by the conversion server (S180).
[0091] And, the second blockchain system (400) transmits the received message to the address of the recipient of the message (S190).
[0092] In this case, as described above, the routing unit (230) can encode the already encoded message once more and transmit it to the second blockchain system (400) in a wrapped state, and the second blockchain system (400) decodes the message that has been encoded twice twice, extracts the target contract and message to actually execute the message in the second blockchain system (400), and as the target contract is executed, the message is finally delivered to the address of the recipient of the message combined in the second blockchain system (400).
[0093] At this time, as is known in the prior art, the transmission of the message and the transaction are verified through a consensus algorithm adopted in the second blockchain system (400) to maintain reliability and are processed, after which they are transmitted to the address of the final recipient.
[0094] Although the present invention has been described above with reference to preferred embodiments, the invention is not limited to the above embodiments, and it is understood that various modifications and variations are possible within the scope of the invention.
Claims
1. As a method for providing interoperability services between different blockchains, A first step in which a validation system receives a message from a first blockchain system; A second step in which the validation system validates the received message, and if the validation is successful, transmits a record request signal containing the message to a relay system, and the relay system records the message based on the record request signal; and A third step in which the above validation system transmits an execution request signal requesting the transmission of a message to a relay system, and the relay system that receives the execution request signal executes the transmission of the message. Includes, The above third step is a method for providing interoperability services between different blockchains, characterized in that a routing unit is called by the execution of a message transmission unit of the relay system, and the routing unit transmits the corresponding message to a second blockchain system.
2. In Claim 1, A method for providing interoperability services between different blockchains, characterized in that, in the first step above, the message includes an identifier (ID) of a second blockchain system, which is a target blockchain system to which the message is to be transmitted, an address of a final recipient in the second blockchain system to which the message is to be delivered, and message data to be transmitted.
3. In Claim 1, The above first step is a method for providing interoperability services between different blockchains, characterized in that the first blockchain system analyzes a received message by a parser and converts it into a form that can be used by the validation system.
4. In Claim 1, The above second step is a method for providing interoperability services between different blockchains, characterized in that the validation system validates the message by extracting block header information from the first blockchain system where the message originated from the received message.
5. In Claim 1, In the third step above, The above routing unit is, Convert the message into a format usable by the second blockchain system and then transmit it to the second blockchain system, or A method for providing interoperability services between different blockchains, characterized by transmitting the message to an external conversion server, and the conversion server converting the message into a form usable in a second blockchain system and then transmitting it to the second blockchain system.
6. In Claim 1, In the third step above, A method for providing interoperability services between different blockchains, characterized in that the routing unit further encodes the message transmitted from the validation system to the relay system in a wrapped state, and transmits it to the second blockchain system in a wrapped state.
7. In Claim 6, A method for providing interoperability services between different blockchains, characterized in that the second blockchain system decodes the received twice-encoded message twice, extracts the message and the target contract to actually execute the message, and finally delivers the message to the address of the recipient of the message combined with the second blockchain system by the execution of the target contract.
8. As a system for providing interoperability services between different blockchains, A validation system that verifies the validity of a message transmitted from a first blockchain system; and A relay system that stores messages validated by the above validation system and transmits them to a second blockchain system Includes, The above validation system is, A message verification unit that verifies a message received from the first blockchain system and, if the verification is successful, transmits a record request signal including the message to the relay system so that the message is recorded in the relay system; and A message transmission execution unit that, when verification is successful in the message verification unit above, transmits an execution request signal to the relay system requesting the relay system to execute the transmission of the corresponding message. Includes, The above relay system is, A message recording unit that records the corresponding message when a record request signal is received from the above validation system; . A message transmission unit that executes the transmission of the corresponding message when it receives an execution request signal from the above validation system; and A system for providing interoperability services between different blockchains, characterized by including a routing unit that is called by the execution of the above message transmission unit and transmits the message to a second blockchain system, which is the target blockchain system to which the message is to be transmitted.
9. In Claim 8, The above routing unit is, Convert the message into a format usable by the second blockchain system and then transmit it to the second blockchain system, or A system for providing interoperability services between different blockchains, characterized by transmitting the message to an external conversion server, and the conversion server converting the message into a form usable by a second blockchain system and then transmitting it to the second blockchain system.
10. In Claim 8, The above routing unit is characterized by encoding and wrapping a message transmitted from the above validation system to the relay system and then encoding and wrapping the message once again to transmit it to the second blockchain system.
11. In Claim 10, An interoperability service system between different blockchains characterized by the second blockchain system decoding the received twice-encoded message twice, extracting the message and the target contract to actually execute the message, and finally delivering the message to the address of the recipient of the message combined with the second blockchain system by the execution of the target contract.