[go: up one dir, main page]

TWI878128B - Cross-chain data transfer systems and computer-implemented methods for cross-chain data transfer - Google Patents

Cross-chain data transfer systems and computer-implemented methods for cross-chain data transfer Download PDF

Info

Publication number
TWI878128B
TWI878128B TW113118657A TW113118657A TWI878128B TW I878128 B TWI878128 B TW I878128B TW 113118657 A TW113118657 A TW 113118657A TW 113118657 A TW113118657 A TW 113118657A TW I878128 B TWI878128 B TW I878128B
Authority
TW
Taiwan
Prior art keywords
data
chain
blockchain
cross
certificate
Prior art date
Application number
TW113118657A
Other languages
Chinese (zh)
Other versions
TW202541462A (en
Inventor
高華志
林政憲
李肇筌
陳聖勳
李翌台
賴鉦皓
Original Assignee
國泰金融控股股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 國泰金融控股股份有限公司 filed Critical 國泰金融控股股份有限公司
Application granted granted Critical
Publication of TWI878128B publication Critical patent/TWI878128B/en
Publication of TW202541462A publication Critical patent/TW202541462A/en

Links

Images

Landscapes

  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Disclosed herein is directed to a cross-chain data transfer system comprising a first blockchain, a second blockchain, a verification module, and a cross-chain node. According to the disclosure of the present embodiment, the verification module is communicatively connected to a user and the first blockchain to receive the user’s requests and verify data accordingly. Additionally, the cross-chain node is communicatively connected to the first and the second blockchain to manage the data transfer process between two blockchains. Also, disclosed herein is a computer-implemented method for cross-chain data transfer.

Description

跨鏈資料傳輸系統及用於跨鏈資料傳輸的電腦實施方法Cross-chain data transmission system and computer-implemented method for cross-chain data transmission

本揭示內容是關於區塊鏈資料傳輸相關領域。具體來說,本揭示內容是關於一種執行區塊鏈間之資料傳輸的系統及電腦實施方法。 This disclosure is about the field of blockchain data transmission. Specifically, this disclosure is about a system and computer implementation method for performing data transmission between blockchains.

區塊鏈技術最早是用於比特幣交易的基礎概念,利用去中心化的方式記錄交易資訊。具體來說,區塊鏈技術是將每一筆交易資訊形成一區塊,依據時間順序將各個區塊串聯為一鏈狀結構,且新的區塊中包含前一區塊的內容,使區塊鏈上的資料不易遭到竄改。據此,區塊鏈技術的應用逐漸由虛擬貨幣交易擴展到記錄金融相關交易以及應用於其他資產管理。 Blockchain technology was first used as the basic concept for Bitcoin transactions, using a decentralized approach to record transaction information. Specifically, blockchain technology forms each transaction information into a block, connects each block into a chain structure in chronological order, and the new block contains the content of the previous block, making the data on the blockchain less susceptible to tampering. Based on this, the application of blockchain technology has gradually expanded from virtual currency transactions to recording financial-related transactions and other asset management applications.

隨著區塊鏈技術快速發展,且被廣泛應用於供應鏈管理、投票系統、身分認證、不動產及房地產、醫療保健及智慧財產權管理等技術領域,對於數據處理及儲存的需求大幅上升,而單一區塊鏈的性能有限,勢必得仰賴跨區塊鏈的互動(例如:資料傳輸)來滿足各個應用場景。 With the rapid development of blockchain technology and its wide application in supply chain management, voting systems, identity authentication, real estate and real estate, healthcare and intellectual property management, the demand for data processing and storage has increased significantly. However, the performance of a single blockchain is limited, and it is bound to rely on cross-blockchain interaction (e.g. data transmission) to meet various application scenarios.

目前常見的跨鏈資料傳輸方式是透過設置一個中繼鏈(relay chain)作為不同區塊鏈之間的橋樑,來實現區塊鏈間的資產及訊息轉移。然 而,基於上述結構進行跨鏈傳輸需將欲傳送的資訊自來源鏈先發送至中繼鏈,在轉而傳送至目標鏈。前述方法雖然可達到跨鏈互動的目的,但資訊須透過第三方區塊鏈進行傳送,導致資料安全性方面的疑慮。 The most common cross-chain data transmission method is to set up a relay chain as a bridge between different blockchains to achieve the transfer of assets and information between blockchains. However, based on the above structure, cross-chain transmission requires the information to be transmitted to be sent from the source chain to the relay chain first, and then to the target chain. Although the above method can achieve the purpose of cross-chain interaction, the information must be transmitted through a third-party blockchain, which leads to concerns about data security.

有鑑於此,本領域亟需一種新穎的跨鏈資料傳輸技術,可在不透過第三方區塊鏈的情況下,進行資料驗證、傳輸請求驗證以及跨鏈傳輸的過程,以提升區塊鏈互動過程資料的安全性。 In view of this, this field urgently needs a novel cross-chain data transmission technology that can perform data verification, transmission request verification, and cross-chain transmission without going through a third-party blockchain, so as to enhance the security of data in the blockchain interaction process.

發明內容旨在提供本揭示內容的簡化摘要,以使閱讀者對本揭示內容具備基本的理解。此發明內容並非本揭示內容的完整概述,且其用意並非在指出本發明實施例的重要/關鍵元件或界定本發明的範圍。 The content of the invention is intended to provide a simplified summary of the disclosure so that readers can have a basic understanding of the disclosure. This content of the invention is not a complete overview of the disclosure, and it is not intended to point out the important/key elements of the embodiments of the invention or to define the scope of the invention.

本揭示內容的第一態樣是關於一種跨鏈資料傳輸系統,係運作於一電腦主機內,用以依據用戶端的跨鏈傳輸請求進行跨鏈資料傳輸。依據本揭示內容一具體實施方式,所述跨鏈資料傳輸系統包含第一區塊鏈、第二區塊鏈、驗證模組以及跨鏈節點,其中所述第一區塊鏈儲存有一資料;所述驗證模組與用戶端及第一區塊鏈通訊連接,用以依據用戶端的跨鏈傳輸請求自第一區塊鏈取得所述資料及跨鏈資訊,並產生資料證明及鏈上證明,且將所述資料證明及鏈上證明傳送至第一區塊鏈;以及所述跨鏈節點分別與第一區塊鏈及第二區塊鏈通訊連接,用以截取第一區塊鏈上的資料證明及鏈上證明,並驗證鏈上證明,以產生驗證結果,且將驗證結果傳送至第一區塊鏈。據此,所述第一區塊鏈依據驗證結果將資料傳送至所述第二區塊鏈,以完成跨鏈資料傳輸。 The first aspect of the disclosure is about a cross-chain data transmission system, which operates in a computer host and is used to perform cross-chain data transmission according to a cross-chain transmission request of a client. According to a specific implementation method of the disclosure, the cross-chain data transmission system includes a first blockchain, a second blockchain, a verification module, and a cross-chain node, wherein the first blockchain stores a data; the verification module is connected to the client and the first blockchain in communication, and is used to obtain the data and the cross-chain node from the first blockchain according to the cross-chain transmission request of the client. Information, and generate data proof and chain proof, and transmit the data proof and chain proof to the first blockchain; and the cross-chain node is respectively connected to the first blockchain and the second blockchain to intercept the data proof and chain proof on the first blockchain, and verify the chain proof to generate a verification result, and transmit the verification result to the first blockchain. Accordingly, the first blockchain transmits the data to the second blockchain according to the verification result to complete the cross-chain data transmission.

依據本揭示內容一實施方式,所述跨鏈傳輸請求包含待驗證資料及請求資訊;以及所述驗證模組更用以執行:(a)將請求資訊傳送至該第一區塊鏈,以取得該第一區塊鏈上的該資料及該跨鏈資訊;(b)比對該待驗證資料及該資料,以產生該資料證明;以及(c)依據該資料證明及該跨鏈資訊產生該鏈上證明。 According to an implementation method of the present disclosure, the cross-chain transmission request includes data to be verified and request information; and the verification module is further used to execute: (a) transmitting the request information to the first blockchain to obtain the data on the first blockchain and the cross-chain information; (b) comparing the data to be verified and the data to generate the data certificate; and (c) generating the on-chain certificate based on the data certificate and the cross-chain information.

在本揭示內容一實施方式中,所述跨鏈節點更用以將驗證結果及資料證明傳送至第二區塊鏈。 In an implementation method of the present disclosure, the cross-chain node is further used to transmit the verification result and data proof to the second blockchain.

在本揭示內容另一實施方式中,所述第二區塊鏈更用以利用資料證明驗證來自第一區塊鏈的資料。 In another embodiment of the present disclosure, the second blockchain is further used to verify the data from the first blockchain using data proof.

依據本揭示內容某些實施方式,所述第二區塊鏈儲存有一私鑰,且所述跨鏈節點儲存有對應所述私鑰的一公鑰。在本揭示內容一實施方式中,所述驗證模組更用以依據跨鏈資訊自跨鏈節點取得所述公鑰,且傳送至第一區塊鏈。依據本揭示內容一具體實施方式,第一區塊鏈利用所述公鑰加密資料,以產生加密資料,且將所述加密資料傳送至第二區塊鏈。在本揭示內容一實施方式中,第二區塊鏈更用以依據所述私鑰解密該加密資料,以恢復資料。 According to some implementations of the disclosure, the second blockchain stores a private key, and the cross-chain node stores a public key corresponding to the private key. In an implementation of the disclosure, the verification module is further used to obtain the public key from the cross-chain node based on the cross-chain information and transmit it to the first blockchain. According to a specific implementation of the disclosure, the first blockchain encrypts data using the public key to generate encrypted data, and transmits the encrypted data to the second blockchain. In an implementation of the disclosure, the second blockchain is further used to decrypt the encrypted data based on the private key to restore the data.

本揭示內容第二態樣是關於一種用於跨鏈資料傳輸的電腦實施方法。依據本揭示內容一具體實施方式,所述電腦實施方法包含以下步驟:(1)提供一跨鏈資料傳輸系統,與用戶端通訊連接,且所述跨鏈資料傳輸系統包含第一區塊鏈、第二區塊鏈、驗證模組以及跨鏈節點,其中第一區塊鏈儲存有一資料;第二區塊鏈接收來自第一區塊鏈的資料; 驗證模組用以依據用戶端的跨鏈傳輸請求自第一區塊鏈取得資料及一跨鏈資訊,並依據所述資料及跨鏈資訊產生資料證明及鏈上證明,且將所述資料證明及鏈上證明傳送至第一區塊鏈;以及跨鏈節點用以截取資料證明及鏈上證明,並驗證所述鏈上證明以產生驗證結果,且將該驗證結果傳送至第一區塊鏈;以及(2)第一區塊鏈依據所述驗證結果將資料傳送至第二區塊鏈。 The second aspect of the disclosure is about a computer implementation method for cross-chain data transmission. According to a specific implementation method of the disclosure, the computer implementation method includes the following steps: (1) providing a cross-chain data transmission system, which is connected to the client for communication, and the cross-chain data transmission system includes a first blockchain, a second blockchain, a verification module and a cross-chain node, wherein the first blockchain stores a data; the second blockchain receives the data from the first blockchain; the verification module is used to receive the data from the second blockchain according to the cross-chain transmission request of the client; A blockchain obtains data and a cross-chain information, and generates a data certificate and an on-chain certificate based on the data and the cross-chain information, and transmits the data certificate and the on-chain certificate to the first blockchain; and a cross-chain node is used to intercept the data certificate and the on-chain certificate, and verify the on-chain certificate to generate a verification result, and transmit the verification result to the first blockchain; and (2) the first blockchain transmits the data to the second blockchain based on the verification result.

依據本揭示內容一實施方式,所述跨鏈傳輸請求包含待驗證資料及請求資訊;所述驗證模組更用以執行:(a)將請求資訊傳送至第一區塊鏈,以取得第一區塊鏈上的資料及跨鏈資訊;(b)比對待驗證資料及資料,並產生資料證明;以及(c)依據該料證明及跨鏈資訊產生鏈上證明。 According to an implementation method of the present disclosure, the cross-chain transmission request includes data to be verified and request information; the verification module is further used to execute: (a) transmitting the request information to the first blockchain to obtain the data on the first blockchain and the cross-chain information; (b) comparing the data to be verified and the data, and generating a data certificate; and (c) generating an on-chain certificate based on the data certificate and the cross-chain information.

依據本揭示內容另一實施方式,所述第二區塊鏈儲存有一私鑰,且跨鏈節點儲存有對應所述私鑰的一公鑰。在本揭示內容一實施方式中,所述驗證模組更用以依據跨鏈資訊自跨鏈節點取得所述公鑰。 According to another embodiment of the disclosure, the second blockchain stores a private key, and the cross-chain node stores a public key corresponding to the private key. In an embodiment of the disclosure, the verification module is further used to obtain the public key from the cross-chain node based on the cross-chain information.

在本揭示內容另一實施方式中,其中電腦實施方法的步驟(2)更包含,(2-1)利用公鑰加密資料,以產生加密資料,且將所述加密資料傳送至第二區塊鏈;以及(2-2)第二區塊鏈利用該私鑰解密加密資料,以恢復所述資料。在本揭示內容某些實施方式中,步驟(1)更包含將驗證結果及資料證明傳送至第二區塊鏈。依據本揭示內容一具體實施方式,步驟(2)更包含利用資料證明驗證所述資料。 In another embodiment of the present disclosure, step (2) of the computer implementation method further includes: (2-1) encrypting data using a public key to generate encrypted data, and transmitting the encrypted data to a second blockchain; and (2-2) the second blockchain decrypts the encrypted data using the private key to restore the data. In certain embodiments of the present disclosure, step (1) further includes transmitting the verification result and the data certificate to the second blockchain. According to a specific embodiment of the present disclosure, step (2) further includes verifying the data using the data certificate.

在參閱下文實施方式後,本發明所屬技術領域中具有通常知識者當可輕易瞭解本發明之基本精神及其他發明目的,以及本發明所採用之技術手段與實施態樣。 After reading the implementation method below, a person with ordinary knowledge in the technical field to which the present invention belongs can easily understand the basic spirit and other invention purposes of the present invention, as well as the technical means and implementation methods adopted by the present invention.

100、200:跨鏈資料傳輸系統 100, 200: Cross-chain data transmission system

110、210:第一區塊鏈 110, 210: The first blockchain

120、220:第二區塊鏈 120, 220: Second blockchain

130、230:驗證模組 130, 230: Verification module

140、240:跨鏈節點 140, 240: Cross-chain nodes

212:第一交易管理模組 212: First transaction management module

222:第二交易管理模組 222: Second transaction management module

S310-S320:步驟 S310-S320: Steps

U:用戶端 U: Client

為讓本發明的上述與其他目的、特徵、優點與實施方式能更明顯易懂,所附圖式之說明如下。 In order to make the above and other purposes, features, advantages and implementation methods of the present invention more clearly understood, the attached drawings are described as follows.

第1圖為依據本揭示內容一實施方式所繪示之跨鏈資料傳輸系統100的示意圖; 第2圖為依據本揭示內容另一實施方式所繪示之跨鏈資料傳輸系統200的示意圖;以及第3圖為依據本揭示內容一實施方式所繪示之用於跨鏈資料傳輸之電腦實施方法的流程示意圖。 FIG. 1 is a schematic diagram of a cross-link data transmission system 100 according to an embodiment of the present disclosure; FIG. 2 is a schematic diagram of a cross-link data transmission system 200 according to another embodiment of the present disclosure; and FIG. 3 is a flowchart of a computer implementation method for cross-link data transmission according to an embodiment of the present disclosure.

根據慣常的作業方式,圖中各種特徵與元件並未依比例繪製,其繪製方式是為了以最佳的方式呈現與本新型相關的具體特徵與元件。此外,在不同圖式間,以相同或相似的元件符號來指稱相似的元件/部件。 According to the usual practice, the various features and components in the figure are not drawn to scale. The drawing method is to present the specific features and components related to the new invention in the best way. In addition, the same or similar component symbols are used to refer to similar components/parts between different figures.

為了使本揭示內容的敘述更加詳盡與完備,下文針對了本發明的實施態樣與具體實施例提出了說明性的描述;但這並非實施或運用本發明具體實施例的唯一形式。實施方式中涵蓋了多個具體實施例的特徵以及用以建構與操作這些具體實施例的方法步驟與其順序。然而,亦可利用其他具體實施例來達成相同或均等的功能與步驟順序。 In order to make the description of the disclosure more detailed and complete, the following provides an illustrative description of the implementation and specific embodiments of the present invention; however, this is not the only form of implementing or using the specific embodiments of the present invention. The implementation covers the features of multiple specific embodiments and the method steps and their sequence for constructing and operating these specific embodiments. However, other specific embodiments can also be used to achieve the same or equal functions and step sequences.

I 定義 I Definition

為方便起見,本說明書、實施例及所附申請專利範圍中所使用的特定專有名詞集中在此。除非本說明書另有定義,此處所使用的科學與技術詞彙的含義與本發明所屬技術領域中具有通常知識者所理解與慣用的意義相同。並且,在和上下文不相衝突的情形下,本說明書所使用的單數名詞涵蓋該名詞的複數型,而所使用的複數名詞時亦涵蓋該名詞的單數型。具體而言,在本說明書與申請專利範圍中,單數形式「一」(a及an)包括複數參考值,但依據上下文而另有指示者除外。此外,在本說明書與申請專利範圍中,「至少一」(at least one)與「一或多」(one or more)表述方式的意義相同,兩者都代表包含了一、二、三或更多。 For convenience, specific terms used in this specification, embodiments and the attached patent claims are collected here. Unless otherwise defined in this specification, the scientific and technical terms used herein have the same meaning as those understood and used by ordinary knowledgeable persons in the technical field to which the present invention belongs. In addition, where there is no conflict with the context, singular terms used in this specification include plural forms of the terms, and plural terms used also include singular forms of the terms. Specifically, in this specification and the patent claims, the singular forms "a" and "an" include plural references, unless otherwise indicated by the context. In addition, in this specification and the patent claims, the expressions "at least one" and "one or more" have the same meaning, and both represent one, two, three or more.

在本揭示內容中,所述「用戶端」包含任何能夠與至少一伺服器通訊連接的計算機裝置,其中所述通訊連接不限於有線或無線網路連接。依據本發明一實施方式,所述「用戶端」包含至少一圖形顯示裝置(graphical display device)和圖形化使用者介面(graphical user interfaces),讓使用者能夠透過圖形化使用者介面的應用程式、工具、服務或軟體查看訊息及互動。為使用者透過計算機裝置或終端機與本系統互動的位置。在此,用戶端的使用者較佳為資料傳輸方。 In the present disclosure, the "client" includes any computer device capable of communicating with at least one server, wherein the communication connection is not limited to a wired or wireless network connection. According to one embodiment of the present invention, the "client" includes at least one graphical display device and a graphical user interface, allowing the user to view information and interact through the application, tool, service or software of the graphical user interface. It is the location where the user interacts with the system through a computer device or terminal. Here, the user of the client is preferably the data transmission party.

在本揭示內容中,所述「跨鏈傳輸」是指在不同區塊鏈之間進行資產、數據或資訊的交互和轉移。 In this disclosure, "cross-chain transmission" refers to the interaction and transfer of assets, data or information between different blockchains.

在本揭示內容中,所述「資料證明」(data proof)是指在區塊鏈技術或其他分散式儲存系統中,認證某個特定資料的真實性、完整性和時間戳記所生成之證明。 In this disclosure, the term "data proof" refers to a proof generated by verifying the authenticity, integrity, and timestamp of a specific piece of data in blockchain technology or other distributed storage systems.

在本揭示內容中,所述「鏈上證明」(block proof)是指在區塊鏈技術或其他分散式儲存系統中,證明特定資料存在於區塊鏈上所生成之證明。 In this disclosure, the "block proof" refers to the proof generated in blockchain technology or other distributed storage systems to prove that specific data exists on the blockchain.

在本揭示內容中,所述「節點」(node)是指在區塊鏈技術中組成區塊鏈網路的基本單位,用以驗證交易、維護區塊鏈的一致性和安全性,以及協調和傳播數據的計算機設備。「跨鏈節點」(cross-chain node)是指設置於不同區塊鏈網路的兩條區塊鏈之間,或是指設置於同一區塊鏈網路上的兩條區塊鏈之間的節點,使兩條區塊鏈可進行資產或數據的交互操作。 In this disclosure, the "node" refers to the basic unit of the blockchain network in blockchain technology, which is used to verify transactions, maintain the consistency and security of the blockchain, and coordinate and transmit data. "Cross-chain node" refers to a node set between two blockchains in different blockchain networks, or between two blockchains on the same blockchain network, so that the two blockchains can interact with each other.

在本揭示內容中,所述「公鑰」(public key)及「私鑰」(private key)是指由相應的生成演算法生成之相互對應的字符,用於加密和解密數據、數位簽名以及身份驗證。一般來說,「公鑰」是公開於網路中,用以加密數據,「私鑰」則是由使用者或用戶端自行保管,用以解密由對應之公鑰加密的數據,因此只有擁有私鑰的人才能夠解密使用相應公鑰加密的數據。 In this disclosure, the "public key" and "private key" refer to the corresponding characters generated by the corresponding generation algorithm, which are used to encrypt and decrypt data, digital signatures and identity verification. Generally speaking, the "public key" is publicly available on the Internet and is used to encrypt data, while the "private key" is kept by the user or client to decrypt the data encrypted by the corresponding public key. Therefore, only the person who has the private key can decrypt the data encrypted by the corresponding public key.

II 具體實施方式 II Specific implementation methods

隨著區塊鏈技術蓬勃發展,在商業上的需求亦日益多樣,舉例來說,金融機構可能在不同區塊鏈網路皆擁有虛擬資產和交易數據,為了整合該些資產及交易數據管理,唯有透過跨鏈交互操作才能滿足這項需求。然而,目前的跨鏈操作需經由第三方區塊鏈(即中繼鏈)進行驗證及傳輸,產生資安方面的疑慮。為了改善先前技術的缺陷,本揭示內容透過設置跨鏈節點取代中繼鏈來進行驗證及傳輸,並啟動區塊鏈間直接交互操作的機制,促進資產在不同區塊鏈間安全流通。 With the rapid development of blockchain technology, business needs are becoming increasingly diverse. For example, financial institutions may have virtual assets and transaction data on different blockchain networks. In order to integrate the management of these assets and transaction data, this demand can only be met through cross-chain interaction. However, current cross-chain operations require verification and transmission through a third-party blockchain (i.e., relay chain), which raises concerns about information security. In order to improve the defects of previous technologies, this disclosure sets up cross-chain nodes to replace relay chains for verification and transmission, and activates a mechanism for direct interaction between blockchains to promote the safe circulation of assets between different blockchains.

1.跨鏈資料傳輸系統 1. Cross-chain data transmission system

本揭示內容旨在提供一種跨鏈資料傳輸的系統,係運作於一電腦主機內,用以依據使用者/用戶端的操作執行兩個區塊鏈之間的資料傳輸作業。第1圖為依據本揭示內容一具體實施方式所繪示之跨鏈資料傳輸系統100的示意圖。如圖所示,跨鏈資料傳輸系統100包含第一區塊鏈110、第二區塊鏈120、驗證模組130及跨鏈節點140。驗證模組130與用戶端U通訊連接,以接收來自用戶端U的操作指令(即,跨鏈傳輸請求)。所述驗證模組130進一步與第一區塊鏈110通訊連接,用以依據用戶端U的請求進行欲傳輸之資料的驗證;所述跨鏈節點140則分別與第一及第二區塊鏈110及120通訊連接,據以操作區塊鏈110及120間的資料傳輸流程。 The present disclosure is intended to provide a cross-chain data transmission system that operates in a computer host and is used to perform data transmission operations between two blockchains based on the operation of the user/client. Figure 1 is a schematic diagram of a cross-chain data transmission system 100 drawn according to a specific implementation method of the present disclosure. As shown in the figure, the cross-chain data transmission system 100 includes a first blockchain 110, a second blockchain 120, a verification module 130 and a cross-chain node 140. The verification module 130 is connected to the client U in communication to receive an operation instruction (i.e., a cross-chain transmission request) from the client U. The verification module 130 is further connected to the first blockchain 110 for verifying the data to be transmitted according to the request of the client U; the cross-chain node 140 is connected to the first and second blockchains 110 and 120 respectively for operating the data transmission process between the blockchains 110 and 120.

在本揭示內容中,跨鏈資料傳輸系統100所包含的第一區塊鏈110、第二區塊鏈120、驗證模組130及跨鏈節點140是由一電腦主機內所含的處理器及記憶體來實現。處理器用以執行運算,可以是單一放置於一伺服器內的處理器,或是多個分散式進行協同運算的多個處理器。具體實例為中央處理器、數位訊號處理器、微處理器、微控制器等。記憶體則儲存處理器執行的程序與數據,例如為各類型靜態隨機存取記憶體(SRAM)、動態隨機存取記憶體(DRAM)。 In the present disclosure, the first blockchain 110, the second blockchain 120, the verification module 130 and the cross-chain node 140 included in the cross-chain data transmission system 100 are implemented by a processor and a memory contained in a computer host. The processor is used to perform operations, and can be a single processor placed in a server, or multiple processors that perform collaborative operations in a distributed manner. Specific examples are central processing units, digital signal processors, microprocessors, microcontrollers, etc. The memory stores the programs and data executed by the processor, such as various types of static random access memory (SRAM) and dynamic random access memory (DRAM).

所述第一區塊鏈110儲存有用戶端U欲傳送至第二區塊鏈120的一資料,例如:交易記錄、資產所有權、身份訊息或供應鏈數據,但不限於此。用戶端U透過個人端點裝置(例如,個人電腦、智慧型手機或平板終端)向系統發送跨鏈傳輸請求,以啟動後續驗證及傳輸流程。所述第一及第二區塊鏈110及120上分別部屬有一智能合約,用以根據事先設定的條款和條件自動執行 以完成用戶端U請求的任務(例如,跨鏈資料傳輸)。在本揭示內容實施方式中,所述第一及第二區塊鏈110及120可以是公有鏈、私有鏈或聯盟鏈。 The first blockchain 110 stores data that the client U wants to transmit to the second blockchain 120, such as transaction records, asset ownership, identity information or supply chain data, but not limited thereto. The client U sends a cross-chain transmission request to the system through a personal terminal device (e.g., a personal computer, a smart phone or a tablet terminal) to start the subsequent verification and transmission process. The first and second blockchains 110 and 120 are respectively equipped with a smart contract to automatically execute according to pre-set terms and conditions to complete the task requested by the client U (e.g., cross-chain data transmission). In the implementation method of the present disclosure, the first and second blockchains 110 and 120 can be public chains, private chains or alliance chains.

所述驗證模組130係用以驗證第一區塊鏈110上的資料。具體來說,所述驗證模組130接收來自用戶端U的資料傳輸請求,並依據該資料傳輸請求與對應的區塊鏈(即,第一區塊鏈110)建立連線,且自第一區塊鏈110取得交易收據(transaction receipt)(包含欲傳送的資料及跨鏈資訊),以驗證鏈上的資料,進而產生資料證明及鏈上證明,並將資料證明及鏈上證明傳送至第一區塊鏈110。所述資料證明是用以確認鏈上資料的正確性與可靠性,所述鏈上證明則是用以證實所述資料存在於指定之第一區塊鏈110上。依據本揭示內容一例示性實施方式,所述驗證模組130是透過零知識(zero-knowledge)證明技術來驗證跨鏈資料。 The verification module 130 is used to verify the data on the first blockchain 110. Specifically, the verification module 130 receives a data transmission request from the client U, and establishes a connection with the corresponding blockchain (i.e., the first blockchain 110) according to the data transmission request, and obtains a transaction receipt (including the data to be transmitted and cross-chain information) from the first blockchain 110 to verify the data on the chain, and then generates a data certificate and an on-chain certificate, and transmits the data certificate and the on-chain certificate to the first blockchain 110. The data certificate is used to confirm the correctness and reliability of the on-chain data, and the on-chain certificate is used to verify that the data exists on the designated first blockchain 110. According to an exemplary implementation of the present disclosure, the verification module 130 verifies cross-chain data through zero-knowledge proof technology.

在本揭示內容中,所述驗證模組130可以是設置於個人端點裝置上的節點軟體、瀏覽器擴充功能、應用程式介面(application programming interface,API)、應用程式(例如:桌面應用程式、網頁應用程式、移動應用程式、服務器應用程式或嵌入式應用程式)或其他可提供用戶端U輸入指令以與區塊鏈產生互動的形式來呈現。 In the present disclosure, the verification module 130 may be node software installed on a personal endpoint device, a browser extension, an application programming interface (API), an application (e.g., a desktop application, a web application, a mobile application, a server application, or an embedded application), or other forms that can provide the client U with input commands to interact with the blockchain.

依據本揭示內容某些實施方式,所述跨鏈傳輸請求包含待驗證資料及請求資訊,驗證模組130將請求資訊傳送至第一區塊鏈110後,依據請求資訊取得第一區塊鏈110上儲存的目標資料以及進行傳輸相關的跨鏈資訊,其中該跨鏈資訊包含目標鏈(即第二區塊鏈120)訊息。接著,驗證模組130將來自用戶端U的待驗證資料與第一區塊鏈110上的資料進行比對,以確認欲傳輸之資料與鏈上儲存之資料是否相同;若比對結果兩者內容相符,即產生資料證 明,並進一步依據該資料證明及跨鏈資訊產生鏈上證明;反之,若比對結果兩者內容不相符,則無法產生資料證明及鏈上證明,同時中斷該次資料傳輸流程。 According to certain implementations of the present disclosure, the cross-chain transmission request includes data to be verified and request information. After the verification module 130 transmits the request information to the first blockchain 110, it obtains the target data stored on the first blockchain 110 and the transmission-related cross-chain information according to the request information, wherein the cross-chain information includes the target chain (i.e., the second blockchain 120) information. Next, the verification module 130 compares the data to be verified from the client U with the data on the first blockchain 110 to confirm whether the data to be transmitted is the same as the data stored on the chain; if the comparison result shows that the two contents are consistent, a data certificate is generated, and a chain certificate is further generated based on the data certificate and cross-chain information; on the contrary, if the comparison result shows that the two contents are inconsistent, the data certificate and the chain certificate cannot be generated, and the data transmission process is interrupted at the same time.

所述跨鏈節點140分別與第一區塊鏈110及第二區塊鏈120通訊連接,用以監聽區塊鏈上發生的事件。依據本揭示內容一實施方式,當跨鏈節點140監聽到第一區塊鏈110接收到來自驗證模組130的資料證明及鏈上證明,跨鏈節點140即截取所述資料證明及鏈上證明,並利用跨鏈節點140上的用以驗證的功能模塊來驗證鏈上證明,以產生一驗證結果;需要注意的是,所述跨鏈節點140僅抓取資料證明及鏈上證明的內容,與第一區塊鏈110間並無實質上的資料傳輸。最後,跨鏈節點140將驗證結果回傳至第一區塊鏈110上,更新鏈上證明的驗證狀態,且第一區塊鏈110可依據驗證結果與第二區塊鏈120建立連線(即彼此通訊連接),並將資料傳送至第二區塊鏈120。具體來說,前述驗證結果包含對跨鏈傳輸所產生之區塊頭(block header)資訊驗證之結果,據以通知第一區塊鏈110將資料透過點對點的方式傳送到第二區塊鏈120。 The cross-chain node 140 is connected to the first blockchain 110 and the second blockchain 120 for monitoring events on the blockchain. According to an embodiment of the present disclosure, when the cross-chain node 140 monitors that the first blockchain 110 receives data proof and chain proof from the verification module 130, the cross-chain node 140 intercepts the data proof and chain proof, and uses the verification function module on the cross-chain node 140 to verify the chain proof to generate a verification result; it should be noted that the cross-chain node 140 only captures the content of the data proof and chain proof, and there is no actual data transmission between the first blockchain 110 and the cross-chain node 140. Finally, the cross-chain node 140 returns the verification result to the first blockchain 110, updates the verification status of the proof on the chain, and the first blockchain 110 can establish a connection with the second blockchain 120 (i.e., communicate with each other) based on the verification result, and transmit the data to the second blockchain 120. Specifically, the aforementioned verification result includes the result of verifying the block header information generated by the cross-chain transmission, which notifies the first blockchain 110 to transmit the data to the second blockchain 120 in a point-to-point manner.

依據本揭示內容非必要的實施方式,所述跨鏈節點140中包含一分散帳本(ledger),用以儲存區塊鏈的交易記錄,以及跨鏈交互的資訊,例如:跨鏈交易的來源(即,第一區塊鏈110)、目的地(即,第二區塊鏈120)及狀態,以確保交易的透明性和不可逆轉性。 According to the non-essential implementation method of the present disclosure, the cross-chain node 140 includes a distributed ledger to store blockchain transaction records and cross-chain interaction information, such as the source (i.e., the first blockchain 110), destination (i.e., the second blockchain 120) and status of the cross-chain transaction to ensure the transparency and irreversibility of the transaction.

為了進一步提升跨鏈交互傳輸的可靠性,確認來源鏈及目標鏈的正確性,在跨鏈資料傳輸系統100中,第二區塊鏈120亦會進行資料的驗證。依據本揭示內容某些實施方式,跨鏈節點140將前述驗證結果及資料證明傳送至第二區塊鏈120。在本揭示內容一實施方式中,第二區塊鏈120更用以利用資 料證明驗證來自第一區塊鏈110的資料。具體來說,跨鏈節點140產生驗證結果後,同時將驗證結果傳到第一及第二區塊鏈110及120,以更新兩個區塊鏈上鏈上證明的驗證狀態,並將截取自第一區塊鏈110的資料證明傳送至第二區塊鏈120,供第二區塊鏈120對來自第一區塊鏈110的資料進行驗證。 In order to further improve the reliability of cross-chain interactive transmission and confirm the correctness of the source chain and the target chain, in the cross-chain data transmission system 100, the second blockchain 120 will also verify the data. According to some implementations of the present disclosure, the cross-chain node 140 transmits the aforementioned verification result and data proof to the second blockchain 120. In an implementation of the present disclosure, the second blockchain 120 is further used to verify the data from the first blockchain 110 using the data proof. Specifically, after the cross-chain node 140 generates the verification result, it transmits the verification result to the first and second blockchains 110 and 120 at the same time to update the verification status of the on-chain proofs on the two blockchains, and transmits the data proof intercepted from the first blockchain 110 to the second blockchain 120 for the second blockchain 120 to verify the data from the first blockchain 110.

依據本揭示內容可任選的實施方式,第一區塊鏈110進一步於傳輸資料前加密該資料,其可利用本領域習知的任一種對稱加密或非對稱加密演算法(例如:RSA演算法、橢圓曲線數字簽名演算法(Elliptic Curve Digital Signature Algorithm,ECDSA)、愛德華曲線數位簽章演算法(Edwards-curve Digital Signature Algorithm,EdDSA)、橢圓曲線迪菲-赫爾曼(Elliptic Curve Diffie-Hellman,ECDH)演算法、離散對數問題(Discrete Logarithm Problem,DLP)演算法,但不限於此)來產生公私鑰以加密資料,避免傳輸過程中資料外洩的可能性。在本揭示內容一具體實施方式中,跨鏈資料傳輸系統100是利用非對稱加密的方式來加密資料,其中第二區塊鏈120上儲存有一私鑰,而跨鏈節點140上儲存有對應該私鑰的公鑰;所述第一區塊鏈110透過驗證模組130取得所述公鑰,以加密該資料,並將加密資料傳送至第二區塊鏈120。依據本揭示內容一具體實施方式,驗證模組130依據跨鏈資訊向跨鏈節點140取得第二區塊鏈120的公鑰,並與資料證明及鏈上證明一起傳送至第一區塊鏈110。據此,所述第二區塊鏈120接收到加密資料後,則可利用其私鑰進行解密,以取得原始資料。換句話說,若第一區塊鏈110在傳輸過程中出現異常,將資料傳送到錯誤的區塊鏈,該區塊鏈因未持有對應的私鑰而無法成功對加密資料進行解密,可確保資料不會洩漏給不相關的第三人。 According to an optional implementation method of the present disclosure, the first blockchain 110 further encrypts the data before transmitting the data. It can use any symmetric encryption or asymmetric encryption algorithm known in the art (for example: RSA algorithm, Elliptic Curve Digital Signature Algorithm (ECDSA), Edwards-curve Digital Signature Algorithm (EdDSA), Elliptic Curve Diffie-Hellman (ECDH) algorithm, Discrete Logarithm Problem (DLP) algorithm, but not limited to these) to generate public and private keys to encrypt data to avoid the possibility of data leakage during transmission. In a specific implementation of the first disclosure, the cross-chain data transmission system 100 uses asymmetric encryption to encrypt data, wherein a private key is stored on the second blockchain 120, and a public key corresponding to the private key is stored on the cross-chain node 140; the first blockchain 110 obtains the public key through the verification module 130 to encrypt the data, and transmits the encrypted data to the second blockchain 120. According to a specific implementation of the first disclosure, the verification module 130 obtains the public key of the second blockchain 120 from the cross-chain node 140 according to the cross-chain information, and transmits it to the first blockchain 110 together with the data certificate and the chain certificate. Accordingly, after receiving the encrypted data, the second blockchain 120 can use its private key to decrypt it to obtain the original data. In other words, if the first blockchain 110 encounters an abnormality during the transmission process and transmits the data to the wrong blockchain, the blockchain will not be able to successfully decrypt the encrypted data because it does not hold the corresponding private key, which can ensure that the data will not be leaked to unrelated third parties.

基於上述,本領域具有通常知識者當可想見,所述第一區塊鏈110及第二區塊鏈120係指包含區塊鏈的網路,亦即包含執行智能合約的節點,以及其他功能模組(例如:交易管理模組),據以完成區塊鏈間的相互操作。 Based on the above, it can be imagined by those with ordinary knowledge in the field that the first blockchain 110 and the second blockchain 120 refer to a network including blockchains, that is, nodes that execute smart contracts, and other functional modules (such as transaction management modules), so as to complete the mutual operation between blockchains.

請參見第2圖,其是依據本揭示內容一具體實施方式所繪示之跨鏈資料傳輸系統200的示意圖。如第2圖所示,跨鏈資料傳輸系統200在結構上與跨鏈資料傳輸系統100大致相同,其包含第一區塊鏈210、第二區塊鏈220、驗證模組230及跨鏈節點240,其中驗證模組230與用戶端U及第一區塊鏈210通訊連接,跨鏈節點240則分別與第一及第二區塊鏈210及220通訊連接,據以進行驗證及操作跨鏈資料傳輸。惟,兩者差異在於,跨鏈資料傳輸系統200的第一區塊鏈210及第二區塊鏈220上分別設置有第一交易管理模組212及第二交易管理模組222,其中第一區塊鏈210及第二區塊鏈220利用第一交易管理模組212及第二交易管理模組222彼此通訊連接,據以進行前述之資料加解密以及跨鏈傳輸的程序。 Please refer to FIG. 2, which is a schematic diagram of a cross-chain data transmission system 200 according to a specific implementation of the present disclosure. As shown in FIG. 2, the cross-chain data transmission system 200 is substantially the same as the cross-chain data transmission system 100 in structure, and includes a first blockchain 210, a second blockchain 220, a verification module 230, and a cross-chain node 240, wherein the verification module 230 is connected to the client U and the first blockchain 210 in communication, and the cross-chain node 240 is connected to the first and second blockchains 210 and 220 in communication, respectively, to perform verification and operate cross-chain data transmission. However, the difference between the two is that the first blockchain 210 and the second blockchain 220 of the cross-chain data transmission system 200 are respectively provided with a first transaction management module 212 and a second transaction management module 222, wherein the first blockchain 210 and the second blockchain 220 communicate with each other using the first transaction management module 212 and the second transaction management module 222 to perform the aforementioned data encryption and decryption and cross-chain transmission procedures.

具體來說,第一區塊鏈210上的第一交易管理模組212確認到鏈上證明的驗證狀態改變後,自第一區塊鏈210上調用欲傳送之資料,並利用取自跨鏈節點240的該公鑰進行加密,接著將加密資料透過第一交易管理模組212傳送至第二交易管理模組222。接收到加密資料後,第二交易管理模組222則利用其私鑰進行解密以還原成原始資料,再利用取自跨鏈節點240的資料證明驗證該資料的正確性,當驗證成功後即完成將資料傳送到第二區塊鏈220的任務。亦即,第二交易管理模組222會經過二次驗證(透過私鑰解密及利用資料證明驗證原始資料)才會將獲得的資料寫入第二區塊鏈220上。 Specifically, after the first transaction management module 212 on the first blockchain 210 confirms that the verification status of the on-chain proof has changed, it calls the data to be transmitted from the first blockchain 210, and uses the public key obtained from the cross-chain node 240 to encrypt it, and then transmits the encrypted data to the second transaction management module 222 through the first transaction management module 212. After receiving the encrypted data, the second transaction management module 222 uses its private key to decrypt it to restore it to the original data, and then uses the data obtained from the cross-chain node 240 to prove the correctness of the data. When the verification is successful, the task of transmitting the data to the second blockchain 220 is completed. That is, the second transaction management module 222 will write the acquired data into the second blockchain 220 after secondary verification (decryption by private key and verification of original data using data proof).

2.跨鏈資料傳輸的電腦實施方法 2. Computer implementation method for cross-chain data transmission

本揭示內容亦提供一種利用本發明跨鏈資料傳輸系統100或200執行跨鏈資料驗證及傳輸的電腦實施方法。藉由本發明方法可進一步提升跨鏈資料傳輸的安全性及可靠性。 This disclosure also provides a computer implementation method for performing cross-chain data verification and transmission using the cross-chain data transmission system 100 or 200 of the present invention. The security and reliability of cross-chain data transmission can be further improved by the method of the present invention.

第3圖係依據本揭示內容一實施方式所繪示之用於跨鏈資料傳輸的電腦實施方法的流程示意圖。如第3圖所示,所述電腦實施方法包含以下步驟:S310:提供與用戶端通訊連接跨鏈資料傳輸系統;以及S320:依據驗證結果將資料自第一區塊鏈傳送至第二區塊鏈。 FIG. 3 is a flowchart of a computer implementation method for cross-chain data transmission according to an implementation method of the present disclosure. As shown in FIG. 3, the computer implementation method includes the following steps: S310: providing a cross-chain data transmission system for communication connection with a client; and S320: transmitting data from the first blockchain to the second blockchain according to the verification result.

在步驟S310中,用戶端利用個人終端裝置與跨鏈資料傳輸系統連接,以提出跨鏈傳輸請求。所述跨鏈資料傳輸系統包含第一區塊鏈、第二區塊鏈、驗證模組以及跨鏈節點,各元件間的連接關係及功能與跨鏈資料傳輸系統100或200大致相同。簡單來說,第一區塊鏈為來源鏈,儲存有欲傳送之資料;第二區塊鏈為目標鏈,用以接收第一區塊鏈的資料,以完成跨鏈資料傳輸;驗證模組依據用戶端輸入之跨鏈傳輸請求自第一區塊鏈取得所述資料及跨鏈資訊,並依據資料及跨鏈資訊產生資料證明及鏈上證明,且將資料證明及鏈上證明傳送至第一區塊鏈;以及跨鏈節點用以監聽第一區塊鏈上發生的事件,並截取資料證明及鏈上證明,以驗證鏈上證明產生驗證結果,且將驗證結果傳送至第一區塊鏈。 In step S310, the client uses a personal terminal device to connect to the cross-chain data transmission system to submit a cross-chain transmission request. The cross-chain data transmission system includes a first blockchain, a second blockchain, a verification module, and a cross-chain node. The connection relationship and function between each component are substantially the same as those of the cross-chain data transmission system 100 or 200. In simple terms, the first blockchain is the source chain, which stores the data to be transmitted; the second blockchain is the target chain, which is used to receive the data from the first blockchain to complete the cross-chain data transmission; the verification module obtains the data and cross-chain information from the first blockchain according to the cross-chain transmission request input by the client, and generates data proof and chain proof according to the data and cross-chain information, and transmits the data proof and chain proof to the first blockchain; and the cross-chain node is used to monitor the events occurring on the first blockchain, and intercept the data proof and chain proof to verify the chain proof to generate the verification result, and transmit the verification result to the first blockchain.

依據本揭示內容一實施方式,所述跨鏈傳輸請求包含待驗證資料及請求資訊,據此所述驗證模組可透過以下步驟產生資料證明及鏈上證明:(a)將請求資訊傳送至第一區塊鏈,以取得第一區塊鏈上的資料及跨鏈資訊;(b) 將待驗證資料及資料進行比對,以產生資料證明;以及(c)依據資料證明及跨鏈資訊產生鏈上證明。 According to an implementation method of the present disclosure, the cross-chain transmission request includes data to be verified and request information, and the verification module can generate data proof and on-chain proof through the following steps: (a) sending the request information to the first blockchain to obtain the data on the first blockchain and the cross-chain information; (b) comparing the data to be verified and the data to generate data proof; and (c) generating on-chain proof based on the data proof and the cross-chain information.

接著,在步驟S320中,第一區塊鏈依據驗證結果將資料經由點對點傳送的方式傳送至第二區塊鏈。 Then, in step S320, the first blockchain transmits the data to the second blockchain via peer-to-peer transmission based on the verification result.

依據本揭示內容一具體實施方式,所述跨鏈資料傳輸系統透過加密演算法產生一組對應的公鑰及私鑰,以確保跨鏈資料傳輸過程中資料的安全性,其中公鑰儲存於跨鏈節點,私鑰儲存於第二區塊鏈中。在本揭示內容實施方式中,驗證模組可依據跨鏈資訊向跨鏈節點請求並取得所述公鑰,並將該公鑰與資料證明及鏈上證明一起傳送到第一區塊鏈。 According to a specific implementation of the disclosed content, the cross-chain data transmission system generates a set of corresponding public keys and private keys through an encryption algorithm to ensure the security of data during the cross-chain data transmission process, wherein the public key is stored in the cross-chain node and the private key is stored in the second blockchain. In the implementation of the disclosed content, the verification module can request and obtain the public key from the cross-chain node based on the cross-chain information, and transmit the public key together with the data proof and the on-chain proof to the first blockchain.

據此,步驟S320更包含,利用公鑰加密所述資料,以產生加密資料,並將加密資料傳送至第二區塊鏈,而第二區塊鏈利用私鑰解密加密資料,以恢復並取得資料。 Accordingly, step S320 further includes encrypting the data using a public key to generate encrypted data, and transmitting the encrypted data to the second blockchain, and the second blockchain decrypts the encrypted data using a private key to restore and obtain the data.

此外,在本揭示內容可任選的實施方式中,跨鏈節點更可將驗證結果及資料證明傳送至第二區塊鏈。因此,第二區塊鏈取得資料後可進一步利用資料證明驗證資料,進而提升資料內容之可靠性。 In addition, in an optional implementation of the disclosed content, the cross-chain node can also transmit the verification results and data proof to the second blockchain. Therefore, after the second blockchain obtains the data, it can further use the data proof to verify the data, thereby improving the reliability of the data content.

總結上述,本揭示內容提供一種跨鏈資料傳輸系統及利用該系統進行跨鏈資料傳輸的方法,藉由設置驗證模組來確認區塊鏈上資料的正確性,以及設置跨鏈節點來管理兩區塊鏈間的資料傳輸流程,據以取代跨鏈區塊鏈(即中繼鏈),避免資料通過第三方區塊鏈進行傳輸,提升跨鏈操作的安全性。 In summary, the present disclosure provides a cross-chain data transmission system and a method for cross-chain data transmission using the system, by setting up a verification module to confirm the correctness of the data on the blockchain, and setting up a cross-chain node to manage the data transmission process between the two blockchains, thereby replacing the cross-chain blockchain (i.e., relay chain) to avoid data transmission through a third-party blockchain, thereby improving the security of cross-chain operations.

100:跨鏈資料傳輸系統 100: Cross-chain data transmission system

110:第一區塊鏈 110: The first blockchain

120:第二區塊鏈 120: Second blockchain

130:驗證模組 130: Verification module

140:跨鏈節點 140: Cross-chain node

U:用戶端 U: Client

Claims (15)

一種跨鏈資料傳輸系統,係運作於於一電腦主機內,用以依據一用戶端的一跨鏈傳輸請求進行跨鏈資料傳輸,包含: 一第一區塊鏈,儲存有一資料; 一第二區塊鏈; 一驗證模組,與該用戶端及該第一區塊鏈通訊連接,用以依據該用戶端的該跨鏈傳輸請求自該第一區塊鏈取得該資料及一跨鏈資訊,並產生一資料證明及一鏈上證明,且將該資料證明及該鏈上證明傳送至該第一區塊鏈;以及 一跨鏈節點,分別與該第一區塊鏈及該第二區塊鏈通訊連接,用以截取該第一區塊鏈上的該資料證明及該鏈上證明,並驗證該鏈上證明,以產生一驗證結果,且將該驗證結果傳送至該第一區塊鏈; 其中,該第一區塊鏈依據該驗證結果將該資料傳送至該第二區塊鏈,以完成跨鏈資料傳輸。 A cross-chain data transmission system operates in a computer host and is used to perform cross-chain data transmission according to a cross-chain transmission request from a client, comprising: A first blockchain storing data; A second blockchain; A verification module communicating with the client and the first blockchain, and used to obtain the data and cross-chain information from the first blockchain according to the cross-chain transmission request of the client, and generate a data certificate and an on-chain certificate, and transmit the data certificate and the on-chain certificate to the first blockchain; and A cross-chain node is respectively connected to the first blockchain and the second blockchain for intercepting the data proof and the chain proof on the first blockchain, and verifying the chain proof to generate a verification result, and transmitting the verification result to the first blockchain; Wherein, the first blockchain transmits the data to the second blockchain according to the verification result to complete the cross-chain data transmission. 如請求項1所述之跨鏈資料傳輸系統,其中該跨鏈傳輸請求包含一待驗證資料及一請求資訊,且該驗證模組更用以執行:(a) 將該請求資訊傳送至該第一區塊鏈,以取得該第一區塊鏈上的該資料及該跨鏈資訊;(b) 比對該待驗證資料及該資料,以產生該資料證明;以及(c) 依據該資料證明及該跨鏈資訊產生該鏈上證明。A cross-chain data transmission system as described in claim 1, wherein the cross-chain transmission request includes a data to be verified and a request information, and the verification module is further used to perform: (a) transmitting the request information to the first blockchain to obtain the data and the cross-chain information on the first blockchain; (b) comparing the data to be verified and the data to generate the data certificate; and (c) generating the on-chain certificate based on the data certificate and the cross-chain information. 如請求項1所述之跨鏈資料傳輸系統,其中該跨鏈節點更用以將該驗證結果及該資料證明傳送至該第二區塊鏈。A cross-chain data transmission system as described in claim 1, wherein the cross-chain node is further used to transmit the verification result and the data proof to the second blockchain. 如請求項3所述之跨鏈資料傳輸系統,其中該第二區塊鏈更用以利用該資料證明驗證來自該第一區塊鏈的該資料。A cross-chain data transmission system as described in claim 3, wherein the second blockchain is further used to verify the data from the first blockchain using the data proof. 如請求項1所述之跨鏈資料傳輸系統,其中該第二區塊鏈儲存有一私鑰,且該跨鏈節點儲存有對應該私鑰的一公鑰。A cross-chain data transmission system as described in claim 1, wherein the second blockchain stores a private key, and the cross-chain node stores a public key corresponding to the private key. 如請求項5所述之跨鏈資料傳輸系統,該驗證模組更用以依據該跨鏈資訊自該跨鏈節點取得該公鑰,且傳送至該第一區塊鏈。In the cross-chain data transmission system as described in claim 5, the verification module is further used to obtain the public key from the cross-chain node based on the cross-chain information and transmit it to the first blockchain. 如請求項6所述之跨鏈資料傳輸系統,其中該第一區塊鏈利用該公鑰加密該資料,以產生一加密資料,且將該加密資料傳送至該第二區塊鏈。A cross-chain data transmission system as described in claim 6, wherein the first blockchain encrypts the data using the public key to generate encrypted data, and transmits the encrypted data to the second blockchain. 如請求項7所述之跨鏈資料傳輸系統,其中該第二區塊鏈更用以依據該私鑰解密該加密資料,以恢復該資料。A cross-chain data transmission system as described in claim 7, wherein the second blockchain is further used to decrypt the encrypted data based on the private key to restore the data. 一種用於跨鏈資料傳輸的電腦實施方法,包含: (1) 提供一跨鏈資料傳輸系統,與一用戶端通訊連接,且該跨鏈資料傳輸系統包含一第一區塊鏈、一第二區塊鏈、一驗證模組以及一跨鏈節點,其中 該第一區塊鏈儲存有一資料; 該第二區塊鏈接收來自該第一區塊鏈的該資料; 該驗證模組用以依據該用戶端的一跨鏈傳輸請求自該第一區塊鏈取得該資料及一跨鏈資訊,並依據該資料及該跨鏈資訊產生一資料證明及一鏈上證明,且將該資料證明及該鏈上證明傳送至該第一區塊鏈;以及 該跨鏈節點用以截取該資料證明及該鏈上證明,並驗證該鏈上證明以產生一驗證結果,且將該驗證結果傳送至該第一區塊鏈;以及 (2) 該第一區塊鏈依據該驗證結果將該資料傳送至該第二區塊鏈。 A computer implementation method for cross-chain data transmission, comprising: (1) providing a cross-chain data transmission system, which is connected to a client for communication, and the cross-chain data transmission system comprises a first blockchain, a second blockchain, a verification module and a cross-chain node, wherein the first blockchain stores a data; the second blockchain receives the data from the first blockchain; The verification module is used to obtain the data and a cross-chain information from the first blockchain according to a cross-chain transmission request of the client, and to generate a data certificate and an on-chain certificate according to the data and the cross-chain information, and to transmit the data certificate and the on-chain certificate to the first blockchain; and The cross-chain node is used to intercept the data certificate and the on-chain certificate, and to verify the on-chain certificate to generate a verification result, and to transmit the verification result to the first blockchain; and (2) the first blockchain transmits the data to the second blockchain according to the verification result. 如請求項9所述之電腦實施方法,其中該跨鏈傳輸請求包含一待驗證資料及一請求資訊,且該驗證模組更用以執行:(a) 將該請求資訊傳送至該第一區塊鏈,以取得該第一區塊鏈上的該資料及該跨鏈資訊;(b)比對該待驗證資料及該資料,並產生該資料證明;以及(c)依據該資料證明及該跨鏈資訊產生該鏈上證明。A computer implementation method as described in claim 9, wherein the cross-chain transmission request includes a data to be verified and a request information, and the verification module is further used to execute: (a) transmitting the request information to the first blockchain to obtain the data and the cross-chain information on the first blockchain; (b) comparing the data to be verified and the data, and generating the data proof; and (c) generating the on-chain proof based on the data proof and the cross-chain information. 如請求項9所述之電腦實施方法,其中該第二區塊鏈儲存有一私鑰,且該跨鏈節點儲存有對應該私鑰的一公鑰。A computer-implemented method as described in claim 9, wherein the second blockchain stores a private key, and the cross-chain node stores a public key corresponding to the private key. 如請求項11所述之電腦實施方法,其中該驗證模組更用以依據該跨鏈資訊自該跨鏈節點取得該公鑰。A computer-implemented method as described in claim 11, wherein the verification module is further used to obtain the public key from the cross-chain node based on the cross-chain information. 如請求項12所述之電腦實施方法,其中步驟(2)更包含:(2-1)利用該公鑰加密該資料,以產生一加密資料,且將該加密資料傳送至該第二區塊鏈;以及(2-2) 該第二區塊鏈利用該私鑰解密該加密資料,以恢復該資料。A computer implementation method as described in claim 12, wherein step (2) further includes: (2-1) encrypting the data using the public key to generate encrypted data, and transmitting the encrypted data to the second blockchain; and (2-2) the second blockchain decrypting the encrypted data using the private key to restore the data. 如請求項13所述之電腦實施方法,其中步驟(1)更包含將該驗證結果及該資料證明傳送至該第二區塊鏈。A computer-implemented method as described in claim 13, wherein step (1) further includes transmitting the verification result and the data proof to the second blockchain. 如請求項14所述之電腦實施方法,其中步驟(2)更包含利用該資料證明驗證該資料。A computer-implemented method as described in claim 14, wherein step (2) further includes using the data to prove and verify the data.
TW113118657A 2024-04-02 2024-05-20 Cross-chain data transfer systems and computer-implemented methods for cross-chain data transfer TWI878128B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW113112598 2024-04-02
TW113112598 2024-04-02

Publications (2)

Publication Number Publication Date
TWI878128B true TWI878128B (en) 2025-03-21
TW202541462A TW202541462A (en) 2025-10-16

Family

ID=95830789

Family Applications (1)

Application Number Title Priority Date Filing Date
TW113118657A TWI878128B (en) 2024-04-02 2024-05-20 Cross-chain data transfer systems and computer-implemented methods for cross-chain data transfer

Country Status (1)

Country Link
TW (1) TWI878128B (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW202023234A (en) * 2018-11-16 2020-06-16 香港商阿里巴巴集團服務有限公司 Cross-blockchain interaction system
TW202105299A (en) * 2019-07-15 2021-02-01 開曼群島商創新先進技術有限公司 Transaction processing in a service blockchain
CN112650742A (en) * 2020-12-30 2021-04-13 北京百度网讯科技有限公司 Cross-link data verification method, device, equipment and storage medium
CN114567643A (en) * 2020-11-27 2022-05-31 腾讯科技(深圳)有限公司 Cross-block-chain data transfer method, device and related equipment
TWM661208U (en) * 2024-04-02 2024-10-01 國泰金融控股股份有限公司 Cross-chain data transmission system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW202023234A (en) * 2018-11-16 2020-06-16 香港商阿里巴巴集團服務有限公司 Cross-blockchain interaction system
TW202105299A (en) * 2019-07-15 2021-02-01 開曼群島商創新先進技術有限公司 Transaction processing in a service blockchain
CN114567643A (en) * 2020-11-27 2022-05-31 腾讯科技(深圳)有限公司 Cross-block-chain data transfer method, device and related equipment
CN112650742A (en) * 2020-12-30 2021-04-13 北京百度网讯科技有限公司 Cross-link data verification method, device, equipment and storage medium
TWM661208U (en) * 2024-04-02 2024-10-01 國泰金融控股股份有限公司 Cross-chain data transmission system

Also Published As

Publication number Publication date
TW202541462A (en) 2025-10-16

Similar Documents

Publication Publication Date Title
US12126742B2 (en) Cross-blockchain mutual data storage
US11477034B2 (en) Method and apparatus for processing account information in block chain, storage medium, and electronic apparatus
US11341466B2 (en) Transferring digital tickets based on blockchain networks
CN110535833B (en) Data sharing control method based on block chain
WO2021017441A1 (en) Blockchain-based data authorization method and apparatus
WO2020042822A1 (en) Cryptographic operation method, method for creating work key, and cryptographic service platform and device
WO2021057181A1 (en) Fpga-based key negotiation method and device
WO2022037596A1 (en) Combined signature and signature verification method and system, and storage medium
CN114239043B (en) A shared encrypted storage system based on blockchain technology
US12407513B2 (en) Sharing and requesting private data using cryptography
WO2021057182A1 (en) Trusted update method and apparatus for fpga logic
US12450615B2 (en) Method, terminal, and coin register for transmitting electronic coin data sets
WO2021057180A1 (en) Fpga-based privacy blockchain implementation method, and device
TWM661208U (en) Cross-chain data transmission system
CN119072898A (en) Blockchain data processing method, platform, system, device and electronic device
CN119096521A (en) Systems and methods for facilitating secure authentication when performing blockchain operations using cryptography-based storage applications
CN115526629A (en) Receipt transaction method and device based on block chain network and identity authentication device
CN113595742B (en) Data transmission method, system, computer device and storage medium
CN114629663A (en) Blockchain-based digital commodity transaction method and device
WO2022089518A1 (en) Address generation method, blockchain information processing method, and related device
TWI878128B (en) Cross-chain data transfer systems and computer-implemented methods for cross-chain data transfer
CN113849851A (en) Proxy method, device and computer readable storage medium
CN115396085B (en) Method and equipment for negotiating and authenticating based on biological characteristics and third secret key
CN115688124A (en) Intersection data transmission method and device and electronic equipment
TWM585941U (en) Account data processing system