CN111815329A - 一种基于跨链技术实现高性能区块链网络的方法 - Google Patents
一种基于跨链技术实现高性能区块链网络的方法 Download PDFInfo
- Publication number
- CN111815329A CN111815329A CN202010726510.2A CN202010726510A CN111815329A CN 111815329 A CN111815329 A CN 111815329A CN 202010726510 A CN202010726510 A CN 202010726510A CN 111815329 A CN111815329 A CN 111815329A
- Authority
- CN
- China
- Prior art keywords
- chain
- transaction
- chunk
- block
- verify
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3825—Use of electronic signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3827—Use of message hashing
Abstract
本发明公开了一种基于跨链技术实现高性能区块链网络的方法,包括如下步骤:S1假设在链B上执行的交易想要知道在链A上发生的特定事件,或者链A状态中的某个特定对象在某个特定时间包含某些值,假设链A的设计类似于比特币或以太坊,因为它具有“区块”和“区块头”的概念,其中“区块头”是“代表”这个区块的完整信息数据,那么我们可以用一些加密认证的方式,比如使用Merkle树来验证对方链上发送过来的交易。本发明优化底层节点达成共识的算法,将单链架构转变为多链架构,通过链间通信的方式使得链与链之间可以传递和处理交易,并且设计和实现一个真实的区块链来验证本文解决方案的可行性和有效性。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及一种基于跨链技术实现高性能区块链网络的方法。
背景技术
比特币自2009年诞生以来,作为一种电子现金货币已经成为社会现象级话题,开创了去中心化加密货币的先河,其底层技术区块链更是不断被人们所研究。被称作是区块链2.0的以太坊则不仅仅局限于数字货币的领域,而是以“可编程的区块链”作为显著特点,使其成为去中心化应用开发的平台,带来了深远的影响。以匿名性著称的零币和门罗币同样取得成功。从比特币诞生的过去十年以来,数以千计的区块链项目被开发出来,有的项目从商业落地角度出发,希望借助区块链的特性寻求一些商业场景,也有的项目从解决区块链性能问题出发,希望开发性能更可靠、可用性更强的区块链。但是目前大多数区块链项目仍然因为区块链技术架构限制面临着诸多难题,如区块容量扩展性和伸缩性、缺乏链上治理、分布式共识性能瓶颈等。
目前在区块链领域,理论上比特币每秒能够处理的最大交易笔数为7,以太坊每秒能够处理的最大交易笔数为20,而传统的中心化金融系统Paypal平均每秒193笔交易,Visa可以处理每秒1667笔交易。由此可见,现有的区块链系统普遍面临的一个问题就是:每秒能够处理的交易数量有限,交易效率过低,无法满足大型分布式商业应用。由此可见,提高区块链的交易速度对区块链应用大规模落地都具有非常重要的理论意义和现实意义。
目前主流区块链如比特币和以太坊为了解决交易效率的问题都有各自不同的解决方法。如比特币和以太坊通过扩容的方式来提高每秒能够处理的交易笔数,但各自又有不同的扩容方案。比特币曾通过增加区块大小、隔离见证和闪电网络等方式来提高交易效率,而以太坊目前研究的主要提高交易效率的方案有分片、雷电网络和Plasma等。但纵观目前这些为了提高区块链交易效率的解决方案,都有一定的局限性,并且都暂时未取得显著效果。分析其中原因,主要有两点限制了这些解决方案:第一,底层共识算法的选择局限于基于概率模型的POW算法;第二,这些解决方案都局限于单链架构,而没有向多链方向发展。这样即使比特币和以太坊的解决方案对其能够处理的交易数量有所提升,它们能够处理的交易也是有限的,存在一个理论上的天花板。
现有方案的不足和局限:
总结一下现有解决方案的局限和不足之处,主要有以下几点:
(1)对于比特币的提高交易效率的方案,a. 增加区块大小仅仅增加了区块能够容纳的交易数量,而并未改变影响节点达成共识的共识算法,效果并不显著;b. 对于隔离见证方案,引入了一种新的DOS攻击漏洞,例如如果攻击者试图构造一笔含有大量交易的巨大区块,如1000笔交易,对于攻击者来说,攻击者有这些交易的见证数据,但是这些交易并没有被攻击者发送到比特币网络上,当网络中的其他节点试图验证这个区块的时候,这些节点都必须从攻击者这里获取见证数据,这将会导致区块的验证时间急剧上升并且使得节点堵塞;c. 闪电网络虽然一定程度上能够满足及时性的微支付需求,但是并不适合大额支付和离线交易,并且安全问题过度依赖于闪电网络中的节点,如果一条交易路径中需要的某个节点出现故障,那么这笔交易将会失败。
(2)对于以太坊为了提交交易效率的扩容方案,例如分片技术虽然在理论上可行,但还存在诸多尚未解决的问题,并且目前并没有实现。
发明内容
基于背景技术存在的技术问题,本发明提出了一种基于跨链技术实现高性能区块链网络的方法。
本发明提出的一种基于跨链技术实现高性能区块链网络的方法,包括如下步骤:
S1假设在链B上执行的交易想要知道在链A上发生的特定事件,或者链A状态中的某个特定对象在某个特定时间包含某些值,假设链A的设计类似于比特币或以太坊,因为它具有“区块”和“区块头”的概念,其中“区块头”是“代表”这个区块的完整信息数据,那么我们可以用一些加密认证的方式,比如使用Merkle树来验证对方链上发送过来的交易,接收到交易之后解析交易,并在本文所设计的区块链做对应状态的修改;
S2在链B上创建中继,这些中继会接收链A的区块头,并使用链A的一致性算法的标准验证程序来验证该块头,在工作证明的链中,这将对与指定的区块头涉及验证足够大的运算量,而不是任何冲突的区块头,并且在传统的拜占庭容错一致性算法中,它将包括验证2/3的验证者节点签名已经验证了区块头,一旦中继已经验证了区块头已经完成,则中继可以通过针对区块头验证Merkle树的单个分支来单独验证任何期望的交易或帐户的状态。
跨链交易过程中,CA表示链A,CB表示链B,一共发生了4种类型的交易,其交易过程如下:
S1链A上的A向链B上的A发送一笔转账,这时链A上应该将A发送的资产数量锁定,在链B验证了交易有效性之后同时在链B为A对应的账户创建等值的资产;
S2在链B上,链B上面的A向链B上面的B发送一笔转账,该笔转账只需要链B上运行的出块节点进行验证并打包进区块;
S3当链B上面的B想要向链A上转移资产时,链B需要对B的资产进行锁定,同时链A通过验证这比交易所在的区块头之后在链A上向链B的B进行一笔转账交易,当交易被出块节点打包进区块的时候,那么就完成了跨链交易。
本发明中,所述一种基于跨链技术实现高性能区块链网络的方法,优化底层节点达成共识的算法,将单链架构转变为多链架构,通过链间通信的方式使得链与链之间可以传递和处理交易,并且设计和实现一个真实的区块链来验证本文解决方案的可行性和有效性。
附图说明
图1为本发明提出的一种基于跨链技术实现高性能区块链网络的方法的跨链交易的过程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
参照图1,一种基于跨链技术实现高性能区块链网络的方法,包括如下步骤:
S1假设在链B上执行的交易想要知道在链A上发生的特定事件,或者链A状态中的某个特定对象在某个特定时间包含某些值,假设链A的设计类似于比特币或以太坊,因为它具有“区块”和“区块头”的概念,其中“区块头”是“代表”这个区块的完整信息数据,那么我们可以用一些加密认证的方式,比如使用Merkle树来验证对方链上发送过来的交易,接收到交易之后解析交易,并在本文所设计的区块链做对应状态的修改;
S2在链B上创建中继,这些中继会接收链A的区块头,并使用链A的一致性算法的标准验证程序来验证该块头,在工作证明的链中,这将对与指定的区块头涉及验证足够大的运算量,而不是任何冲突的区块头,并且在传统的拜占庭容错一致性算法中,它将包括验证2/3的验证者节点签名已经验证了区块头,一旦中继已经验证了区块头已经完成,则中继可以通过针对区块头验证Merkle树的单个分支来单独验证任何期望的交易或帐户的状态。
我们使用跨链中继来实现跨链协议,中继是一种更“直接”的方法,用于促进链与链之间的互操作性,而不是依赖一个第三方的可信中介来提供有关一条链到另一条链的信息,链自身有效地承担了传播并验证跨链交易的任务;
使用轻客户端验证的方式对于中继来说是理想的,因为区块链的资源基本受到限制,实际上,对于一个方案,不可能对于链A来说完全验证链B,并且同时链B也来完全验证链A,这个道理出于同样简单的数学原因,为什么两个盒子不能同时互相包含:A会需要重新运行重新运行A的B部分,包括重新运行B的A部分,依此类推,然而,通过轻客户端验证,链A包含小部分链B和链B包含按需拉取的小部分链A的协议是完全可行的,一个在链B上面的中继想要验证一笔链A上特定的交易,或者状态信息,就像传统的轻客户端一样,会验证链A的加密哈希树的分支,然后验证该分支的的根是否在区块头内部,如果两个验证都通过,它将接受这笔交易或者状态信息是正确的。因为区块链是完全独立的环境,并且无法自然访问外部世界,相关链A的比特信息需要由中继送达到链B,然而因为数据是密码学上严格的自我验证的,所以并不需要信任传递该交易的中继。
跨链交易过程中,CA表示链A,CB表示链B,一共发生了4种类型的交易,其交易过程如下:
S1链A上的A向链B上的A发送一笔转账,这时链A上应该将A发送的资产数量锁定,在链B验证了交易有效性之后同时在链B为A对应的账户创建等值的资产;
S2在链B上,链B上面的A向链B上面的B发送一笔转账,该笔转账只需要链B上运行的出块节点进行验证并打包进区块;
S3当链B上面的B想要向链A上转移资产时,链B需要对B的资产进行锁定,同时链A通过验证这比交易所在的区块头之后在链A上向链B的B进行一笔转账交易,当交易被出块节点打包进区块的时候,那么就完成了跨链交易。
跨链的目的是启用一个区块链作为另一个区块链的轻客户端,因为我们使用的是拜占庭容错一致性算法[26],轻客户端验证就很简单了:我们所要做的就是检查最新的出块节点的签名,并验证Merkle状态证明。在本文所设计的区块链中,出块节点在处理之前同意一个区块。这意味着直到该区块的签名和状态根不包括在内下一个区块。因此,每个区块包含一个名为`LastCommit`的字段包含负责提交前一个区块的投票和一个在区块头中称为“AppHash”的字段,它指的是Merkle根哈希值处理前一个区块的交易后的应用。所以,如果我们想从高度H验证`AppHash`,我们需要来自上一次提交高度为H + 1的签名。并且这个`AppHash`只包含所有交易的结果,包括H-1区块。
与比特币和以太坊的Proof-of-Work共识算法不同,轻客户端协议不需要下载和检查区块链中的所有区块 – 轻客户端客户端总是可以直接跳转到只要出块节点没有改变,就可以使用最新的区块头。如果出块节点正在发生更改,那么轻客户端需要追踪这些变更,那么在这种情况下就需要下载每个区块的区块头。
假设我们有两条链之前需要进行跨链通信,并且我们想从链A向链B发送数据,我们所需要做的就是:在链B上注册链A的信息,如链ID和创世文件配置信息;在链A上,广播一笔以链B为目的地的传出数据包;在链A上,向链B广播一笔交易告知链B链A最新的状态,例如区块头和最新提交的签名;
从链A向链B发送一个传出数据包,这个数据包包括该笔交易已经在链A上进去区块的证明。链B能够验证这个证明是因为链B有链A最新的区块头。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (2)
1.一种基于跨链技术实现高性能区块链网络的方法,其特征在于,包括如下步骤:
S1假设在链B上执行的交易想要知道在链A上发生的特定事件,或者链A状态中的某个特定对象在某个特定时间包含某些值,假设链A的设计类似于比特币或以太坊,因为它具有“区块”和“区块头”的概念,其中“区块头”是“代表”这个区块的完整信息数据,那么我们可以用一些加密认证的方式,比如使用Merkle树来验证对方链上发送过来的交易,接收到交易之后解析交易,并在本文所设计的区块链做对应状态的修改;
S2在链B上创建中继,这些中继会接收链A的区块头,并使用链A的一致性算法的标准验证程序来验证该块头,在工作证明的链中,这将对与指定的区块头涉及验证足够大的运算量,而不是任何冲突的区块头,并且在传统的拜占庭容错一致性算法中,它将包括验证2/3的验证者节点签名已经验证了区块头,一旦中继已经验证了区块头已经完成,则中继可以通过针对区块头验证Merkle树的单个分支来单独验证任何期望的交易或帐户的状态。
2.根据权利要求1所述的一种基于跨链技术实现高性能区块链网络的方法,其特征在于,跨链交易过程中,CA表示链A,CB表示链B,一共发生了4种类型的交易,其交易过程如下:
S1链A上的A向链B上的A发送一笔转账,这时链A上应该将A发送的资产数量锁定,在链B验证了交易有效性之后同时在链B为A对应的账户创建等值的资产;
S2在链B上,链B上面的A向链B上面的B发送一笔转账,该笔转账只需要链B上运行的出块节点进行验证并打包进区块;
S3当链B上面的B想要向链A上转移资产时,链B需要对B的资产进行锁定,同时链A通过验证这比交易所在的区块头之后在链A上向链B的B进行一笔转账交易,当交易被出块节点打包进区块的时候,那么就完成了跨链交易。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010726510.2A CN111815329A (zh) | 2020-07-25 | 2020-07-25 | 一种基于跨链技术实现高性能区块链网络的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010726510.2A CN111815329A (zh) | 2020-07-25 | 2020-07-25 | 一种基于跨链技术实现高性能区块链网络的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111815329A true CN111815329A (zh) | 2020-10-23 |
Family
ID=72861105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010726510.2A Pending CN111815329A (zh) | 2020-07-25 | 2020-07-25 | 一种基于跨链技术实现高性能区块链网络的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111815329A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113179272A (zh) * | 2021-04-28 | 2021-07-27 | 杭州丽冠科技有限公司 | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 |
CN116861390A (zh) * | 2023-08-09 | 2023-10-10 | 之江实验室 | 基于聚合签名的跨区块链批量交易认证方法和装置 |
-
2020
- 2020-07-25 CN CN202010726510.2A patent/CN111815329A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113179272A (zh) * | 2021-04-28 | 2021-07-27 | 杭州丽冠科技有限公司 | 基于智能合约的区块链跨链交互方法、装置和计算机可读存储介质 |
CN116861390A (zh) * | 2023-08-09 | 2023-10-10 | 之江实验室 | 基于聚合签名的跨区块链批量交易认证方法和装置 |
CN116861390B (zh) * | 2023-08-09 | 2024-03-22 | 之江实验室 | 基于聚合签名的跨区块链批量交易认证方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108876370B (zh) | 一种异构多链架构下跨区块链共享开放数据的体系架构 | |
CN112396423B (zh) | 一种交易数据处理方法、装置、设备及存储介质 | |
CN109245894B (zh) | 一种基于智能合约的分布式云存储系统 | |
CN112685505B (zh) | 一种交易数据处理方法、装置、计算机设备及存储介质 | |
CN112418860A (zh) | 一种基于跨链技术的区块链高效管理架构及工作方法 | |
Kaur et al. | Scalability in blockchain: Challenges and solutions | |
KR20200032086A (ko) | 안전한 액세스 제한 관리를 통해 분산된 블록 체인 데이터 구조 배포 | |
CN113407640B (zh) | 基于多链nft跨链方法及系统 | |
CN109741068B (zh) | 网银跨行签约方法、装置及系统 | |
CN111371905B (zh) | 一种基于云计算的区块链分层共识证明系统与方法 | |
CN111046437A (zh) | 基于同构多链的区块链并行事务处理方法及系统、终端 | |
CN113407977B (zh) | 基于聚合签名的跨链扩展方法及系统 | |
KR102151746B1 (ko) | 블록체인 기반의 IoT플랫폼을 활용한 데이터 저장 방법 | |
Sayadi et al. | Blockchain challenges and security schemes: a survey | |
CN111815329A (zh) | 一种基于跨链技术实现高性能区块链网络的方法 | |
Le et al. | A lightweight block validation method for resource-constrained iot devices in blockchain-based applications | |
Bugday et al. | Securing blockchain shards by using learning based reputation and verifiable random functions | |
CN112615838B (zh) | 一种可扩展的区块链跨链通信方法 | |
CN111797171A (zh) | 一种基于区块链跨链技术的数据同步系统 | |
Pravin et al. | Block chain technology for protecting the banking transaction without using tokens | |
CN111510306B (zh) | 一种基于区块链的离线签名方法及装置 | |
Xu et al. | Precision Poverty Alleviation Methods in the Agricultural Field Based upon Wireless Communication Networks and Blockchain | |
CN114301912A (zh) | 基于区块链的信息交互方法和装置 | |
Sgier | Bazo–A Cryptocurrency from Scratch | |
Akhras et al. | ECC: Enhancing Smart Grid Communication with Ethereum Blockchain, Asymmetric Cryptography, and Cloud Services |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |