【技术实现步骤摘要】
一种基于多人链下通道的区块链交易方法及系统
[0001]本专利技术涉及区块链的扩展性研究
,并特别涉及一种区块链多人链下通道方法及系统。
技术介绍
[0002]区块链以其分布式、公开透明、安全等特性使得人们可以在互联网上方便快捷、低成本地进行价值交换,是实现价值互联网的基石。区块链技术在产生之初,只是针对小范围技术社区内的验证和使用需求,区块链协议的简单和健壮性是区块链技术的最初设计前提,因此并没有考虑向更广范围的、高并发的互联网应用推广。区块链网络中的节点采用统一的共识过程,实现了区块链安全性、去中心化的特性,但全网节点复制共享的全局账本数据,并将包含事务数据的区块数据在全网进行洪泛式传播,收到区块的每个共识节点需要验证并存储所有的数据,这样的机制造成了区块链性能受阻。因此,提升区块链的性能依旧有很大的探索空间。
[0003]区块链的低通量(以“系统每秒钟处理的交易数量”衡量区块链的通量,即Transaction per second,下文以TPS指代)直接限制了其在实际生活中的应用场景。在比特币网络中,由于全网采用统一的共识过程,假设节点的平均网络带宽为10Mbit/s,那么每个节点的每秒可以接收的事务数量上限是1000。假设每个节点对每笔事务的验证时间大约5ms,每个节点每秒处理的事务理论数量上限为200。那么受同步机制和机器处理性能的影响,每个区块链网络节点每秒能接收到并验证的事务数量上限只是200左右。实际运行过程中,比特币平均每秒处理3.5笔交易,以太坊平均每秒处理15笔交易,就算性能更高的 ...
【技术保护点】
【技术特征摘要】
1.一种基于多人链下通道的区块链交易方法,其特征在于,包括:步骤1、用户节点向该区块链发起一笔打开链下通道的交易请求,该区块链根据该交易请求开启链下通道,该用户节点作为领导者加入该链下通道,负责维护链下账本状态,且多个用户节点通过该链下通道的通道标识符加入该链下通道,初始化轮数为0;步骤2、判断当前轮数是否小于预设值,若是,则执行步骤3,否则执行步骤4;步骤3、在预设时间内,该链下通道内用户节点间发起链下交易,领导者根据该链下交易的发送方签名和接收方签名,对该链下交易进行确认签名,并将该链下交易记入链下账本,将该确认签名返回该发送方和该接收方,达到该预设时间后,领导者向该链下通道内所有用户节点广播链下账本状态更新,轮数加1,再次执行该步骤2;步骤4、领导者将包含链下账本状态的检查点共识消息发送给通道内所有用户节点,通道内用户节点通过确认该检查点共识消息,实现通道内所有用户节点对该链下账本的状态达成一致性视图,轮数置零,再此执行该步骤2。2.如权利要求1所述的基于多人链下通道的区块链交易方法,其特征在于,该步骤1中该用户节点作为领导者加入该链下通道,具体包括:用户节点在该区块链上的账户资金减value_A,用户节点在该链下通道中的账户资金加value_A,合约为该交易请求返回唯一的通道标识符;该步骤1中多个用户节点通过该链下通道的通道标识符加入该链下通道,具体包括:待加入的用户节点发起一笔加入该链下通道的交易,包括要加入的通道标识符,并锁定待加入的用户节点的资金,并对链下账本状态进行更新,由默克尔化的线段树来表示账户的余额以及账户对应的交易信息,账户的余额通过线段的划分存储在账户树中;每个账户对应的交易信息存储在交易树中,其中支出交易由默克尔树来表示,收入交易由默克尔化的线段树表示,该链下通道中用户节点与待加入的用户节点同步链下账本状态。3.如权利要求2所述的基于多人链下通道的区块链交易方法,其特征在于,该步骤2包括:领导者检查该链下交易发送方的交易序号是否是连续递增,余额是否充足;检查通过后对交易签名,发送签名至发送方和接收方,并更新链下账本状态:在接收方账户的入交易树中新增一个叶子节点,以记录该链下交易的信息,重新构建交易的默克尔树;发送方账户的出交易树中新增叶子节点,重新构造默克尔化的交易线段树。4.如权利要求1所述的基于多人链下通道的区块链交易方法,其特征在于,该步骤3包括:若链下通道内用户节点在规定时间内没有收到账本状态更新,则向领导者发送请求,并再次等待;若等待后发送方依旧没有收到接收方的回复,则向区块链提交请求,要求领导者向链上提交当前轮的账本状态更新;若领导者没有在规定时间内向链上提交当前轮的账本状态更新,发起请求的用户节点在链上提交最近的检查点共识消息,并请求惩罚领导者,实现对领导者节点的资金罚没,链上重新划分资金分配。5.如权利要求1所述的基于多人链下通道的区块链交易方法,其特征在于,该步骤4包括:领导者向该链下通道内所有用户节点广播检查点共识消息,包括领导者签名的账本状
态更新,加入和退出节点的请求,和竞选领导者的请求;所有用户节点对该共识消息进行验证通过后,所有用户节点向领导者发送签名,并在本地记录最新的共识消息;当领导者接收到当前通道内所有用户节点的签名,构造所有用户节点签名的聚合签名消息,发送给通道内所有用户节点,则共识完成,所有用户节点都对最新的链下账本状态达成了一致性视图。6.如权利要求1所述的基于多人链下通道的区块链交易方法,其特征在于,该步骤3还包括:该链下通道内所有用户节点在本地计算候选节点的重要性评分,以该重要性评分作为权重,采用加密抽签的方式对领导者进行更新。7.如权利要求1所述的基于多人链下通道的区块链交易方法,其特征在于,还包括:区块链中监察服务节点调用监察服务智能合约,锁定一笔资金作为保证金,对外提供服务;该链下通道内用户节点作为委托节点与监察服务节点使用哈希时间锁机制建立委托关系,并该委托节点在执行步骤4之前离线;当该链下通道内发生争议,通过发起状态更新挑战向链上提交链下账本状态,该监察服务节点判断提交至链上的链下账本状态中对委托节点的余额划分是否正确,若正确则保存最新的链下账本状态,否则向链上提交错误挑战,维护委托节点的利益后保存最新的链下账本状态;委托节点上线,同步最新的链下账本状态,判断委托节点的资金分配在链上是否发生变化,若是,则构造追责事务,以建立委托关系时的链下账本状态和当前链下账本状态作为凭证,调用监察服...
【专利技术属性】
技术研发人员:孙毅,裴奇,贾林鹏,蒋硕轩,薛靖雯,于雷,
申请(专利权)人:中国科学院计算技术研究所,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。