基于区块链技术的交易快速确认方法及装置制造方法及图纸

技术编号:20391594 阅读:28 留言:0更新日期:2019-02-20 03:32
本发明专利技术公开了一种基于区块链技术的交易快速确认方法及装置,其中,方法包括以下步骤:步骤S1:确认节点身份,并选举共识委员会和委员会领导者;步骤S2:提交交易至委员会,使得委员会领导者发起对交易的一轮BLS聚合签名,并将对交易的总签名在全网广播,以快速确认交易;步骤S3:通过委员会领导者将已经确认的交易打包汇总,并将交易包、交易证明、上个区块哈希和当前未花费交易池组成本轮区块,将本轮区块和区块哈希值发送给委员会的成员,运行委员会内共识,以生成新区块。该方法可以实现交易的快速确认,有效提高了交易的实用性和可靠性,简单易实现。

【技术实现步骤摘要】
基于区块链技术的交易快速确认方法及装置
本专利技术涉及信息安全和电子商务
,特别涉及一种基于区块链技术的交易快速确认方法及装置。
技术介绍
移动互联网的高速发展促进了电子商务业的繁荣。电子支付应运而生,并且日新月异。人们越来越多的在互联网上买卖商品,由此产生的交易数量十分庞大。目前大多数的网上交易或电子支付产生的交易都依赖可信的第三方,即依靠银行、金融机构等提供交易服务,将买家和商家联系起来。可信第三方的存在为交易的安全性带来了一定的隐患,越来越多的国家、机构开始研究未来交易的新模式。区块链技术的出现奠定了未来交易模式的发展方向。区块链是比特币等数字加密货币背后隐藏的深层次技术。区块链是在不可信网络环境中达成共识的一种技术,具有去中心化、去信任化、分布式的特点。区块链在不断的发展研究中,演变成了一种公开的、透明的分布式账本,在不可信网络环境中,即敌手存在的条件下,区块链能够通过一定的共识机制来使得所有诚实用户的账本达成一致。而能够达成共识的前提条件是敌手控制的算力不能超过全网算力的一半,一旦敌手算力过于庞大,敌手便能够发动攻击,造成区块链的分叉,对交易历史进行随机篡改。区块链之所以能够作为公共可信账本是因为它能够满足两个最基本的特性,一致性和活性。一致性指的是,在所有诚实用户的区块链上,从末尾处去掉k(k为安全参数,比特币中k一般等于6)个区块之后,诚实用户得到的区块链是互为前缀的,即诚实用户得到的区块链总能够达成彼此一致。活性指的是,诚实用户在某个时间上传交易,经过一定时间之后,一定出现在其他所有诚实用户的区块链上。区块链底层的一致性和活性使得其能够成为存储交易的公开账本,并且能够满足以下特点:第一是公开性,任何节点能够在任意时间查询到区块链上的交易历史;第二是去中心化,基于区块链的交易模式不需要传统的可信第三方存在,而是通过全网节点的共同力量来实现对交易历史的共识;第三是交易历史不可篡改性,交易一旦被打包经过共识写入到区块上,并在一定的确认时间后(如比特币是6个区块之后,大约60分钟)便是不可随意篡改的。比特币采用工作量证明机制来实现共识。比特币每十分钟产生一个区块,用于记录当前时间段内所有交易数据,所有的节点可以通过计算一个小于特定目标值的哈希值来产生区块,哈希函数的输入包括三部分:上一个区块的哈希值、当前时间段内所有交易的默克尔树树根、随机数,找到这样一个满足目标难度要求的随机数即完成了工作量证明的过程,网络中所有其他节点可以通过验证哈希运算来确认该区块的正确性,并继续在该区块之后进行接下来的工作量证明,寻找新的区块。比特币的共识机制以找到目标哈希值的时间和难度为标准,实现了全网节点的共识,因此,算力越大的节点越容易成为下一个区块的生产者,即该时期账本上的交易内容由该节点负责写入。在该时期内产生的大部分交易将被记录到该时期的区块中。而由于区块链安全参数的设定,该过程需要一定的时间来完成。就比特币而言,为了确保比特币区块的链质量满足一定的要求,对工作量证明的难度需要进行一定的设置,保证大约每10分钟产生一个区块,由于比特币出块速度的设置和区块大小1MB的限制,比特币中的交易规模有限,每秒钟大概能确定7个交易。而每个交易的确认时延较长,至少要等待6个区块(即60分钟)的时间才能确保交易的合法可用性。相对较长的交易确认时间和较低的交易规模使得比特币的实际可用性十分有限,在一些需要快速完成支付过程的场景,如超市、便利店等,并不适用。针对比特币中交易确认时延长、交易规模低下的问题,出现了一些改进的方案。通过一定的方式选出共识委员会,例如工作量证明或权益证明的方式,在委员会内部运行拜占庭容错共识协议,来实现区块的确认。这种方式能够在某种程度上提高交易的规模,缩短一定的交易确认时间,但是用户在将交易提交至区块链网络中后仍然需要等待一定的时间之后才能够对交易进行确认,交易确认时间跟网络时延的上限有关,而并不是由网络实际时延所决定,所以交易确认仍然不是快速响应的
技术实现思路
本专利技术旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本专利技术的一个目的在于提出一种基于区块链技术的交易快速确认方法,该方法可以实现交易的快速确认,有效提高了交易的实用性和可靠性,简单易实现。本专利技术的另一个目的在于提出一种基于区块链技术的交易快速确认装置。为达到上述目的,本专利技术一方面实施例提出了一种基于区块链技术的交易快速确认方法,包括以下步骤:步骤S1:确认节点身份,并选举共识委员会和委员会领导者;步骤S2:提交交易至所述委员会,使得所述委员会领导者发起对交易的一轮BLS聚合签名,并将对交易的总签名在全网广播,以快速确认所述交易;步骤S3:通过所述委员会领导者将已经确认的交易打包汇总,并将交易包、交易证明、上个区块哈希和当前未花费交易池组成本轮区块,将所述本轮区块和区块哈希值发送给所述委员会的成员,运行委员会内共识,以生成新区块。本专利技术实施例的基于区块链技术的交易快速确认方法,1)实现了交易的快速确认特性,用户发送的交易能够在短时间内实现确认,交易确认时延仅与网络真实时延有关,即实现了交易的快速响应,在超市、便利店等需要快速支付的场景下十分实用;2)实现了交易历史的不可篡改性,由于采用的是委员会共识的方法,属于确定性共识,不会出现区块分叉,因此产生的区块中包含的交易历史也是任何节点在任何时间无法篡改的;3)提高了交易的规模,相对于比特币来说交易确认速度更快,并且每个区块间隔时间更短,因此交易规模能够大大增加;4)委员会内共识协议所需的系统通信复杂度低,仅为O(n),降低了系统开销和带宽消耗。另外,根据本专利技术上述实施例的基于区块链技术的交易快速确认方法还可以具有以下附加的技术特征:进一步地,在本专利技术的一个实施例中,所述步骤S1进一步包括:节点随机选择满足条件的私钥,并利用BLS密钥生成算法生成对应的公钥,并将所述私钥秘密保存;参与共识的节点根据当前的难题寻找满足难度条件的工作量证明,且找到所述工作量证明的节点将寻找到的哈希值在全网广播,在预设时间范围内,找到所述工作量证明的n个节点进入所述共识委员会,确认委员会成员列表;通过所述委员会内成员采取投票的方式,对节点投票,投票消息包含选择的节点的公钥,并对投票消息利用自身私钥实施数字签名,使得得票最少的节点成为本时期委员会领导者。进一步地,在本专利技术的一个实施例中,所述步骤S2进一步包括:将用户产生的交易tx提交给所述委员会领导者,并进入等待状态,其中,若在等待时间Ttx之后仍未收到返回的交易确认信息,则重新将所述交易提交给所述委员会中其他多个节点,并再次进入等待状态,直到交易确认信息被返回;将所述交易发送给每个委员会内成员,且所述委员会内成员在收到所述交易之后,利用自身的私钥对其签名,并将签名发送给领导者,使得所述领导者收集到超过预设个数的有效签名份额后,利用BLS聚合签名的签名重建函数恢复总签名;将所述总签名作为所述交易的确认证明在全网广播,同时将所述总签名和所述交易发送给提交所述交易的用户。进一步地,在本专利技术的一个实施例中,所述步骤S3进一步包括:通过所述委员会领导者收集已经得到聚合签名确认的交易,在预设时间内对交易打包,交易打包时每个交易应当附上其确认信息,并将所述上个本文档来自技高网
...

【技术保护点】
1.一种基于区块链技术的交易快速确认方法,其特征在于,包括以下步骤:步骤S1:确认节点身份,并选举共识委员会和委员会领导者;步骤S2:提交交易至所述委员会,使得所述委员会领导者发起对交易的一轮BLS聚合签名,并将对交易的总签名在全网广播,以快速确认所述交易;以及步骤S3:通过所述委员会领导者将已经确认的交易打包汇总,并将交易包、交易证明、上个区块哈希和当前未花费交易池组成本轮区块,将所述本轮区块和区块哈希值发送给所述委员会的成员,运行委员会内共识,以生成新区块。

【技术特征摘要】
1.一种基于区块链技术的交易快速确认方法,其特征在于,包括以下步骤:步骤S1:确认节点身份,并选举共识委员会和委员会领导者;步骤S2:提交交易至所述委员会,使得所述委员会领导者发起对交易的一轮BLS聚合签名,并将对交易的总签名在全网广播,以快速确认所述交易;以及步骤S3:通过所述委员会领导者将已经确认的交易打包汇总,并将交易包、交易证明、上个区块哈希和当前未花费交易池组成本轮区块,将所述本轮区块和区块哈希值发送给所述委员会的成员,运行委员会内共识,以生成新区块。2.根据权利要求1所述的基于区块链技术的交易快速确认方法,其特征在于,所述步骤S1进一步包括:节点随机选择满足条件的私钥,并利用BLS密钥生成算法生成对应的公钥,并将所述私钥秘密保存;参与共识的节点根据当前的难题寻找满足难度条件的工作量证明,且找到所述工作量证明的节点将寻找到的哈希值在全网广播,在预设时间范围内,找到所述工作量证明的n个节点进入所述共识委员会,确认委员会成员列表;通过所述委员会内成员采取投票的方式,对节点投票,投票消息包含选择的节点的公钥,并对投票消息利用自身私钥实施数字签名,使得得票最少的节点成为本时期委员会领导者。3.根据权利要求1所述的基于区块链技术的交易快速确认方法,其特征在于,所述步骤S2进一步包括:将用户产生的交易tx提交给所述委员会领导者,并进入等待状态,其中,若在等待时间Ttx之后仍未收到返回的交易确认信息,则重新将所述交易提交给所述委员会中其他多个节点,并再次进入等待状态,直到交易确认信息被返回;将所述交易发送给每个委员会内成员,且所述委员会内成员在收到所述交易之后,利用自身的私钥对其签名,并将签名发送给领导者,使得所述领导者收集到超过预设个数的有效签名份额后,利用BLS聚合签名的签名重建函数恢复总签名;将所述总签名作为所述交易的确认证明在全网广播,同时将所述总签名和所述交易发送给提交所述交易的用户。4.根据权利要求1所述的基于区块链技术的交易快速确认方法,其特征在于,所述步骤S3进一步包括:通过所述委员会领导者收集已经得到聚合签名确认的交易,在预设时间内对交易打包,交易打包时每个交易应当附上其确认信息,并将所述上个区块哈希、所述交易包、交易证明和未花费交易池组成当前轮区块,并计算其哈希值,且将所述当前轮区块和所述哈希值发送给委员会其他成员。5.根据权利要求4所述的基于区块链技术的交易快速确认方法,其特征在于,所述确认信息为对应交易的总的聚合签名。6.一种基于区块链...

【专利技术属性】
技术研发人员:张宗洋刘懿中刘建伟喻辉李耕
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1