【技术实现步骤摘要】
基于有向无环图和布谷鸟过滤器的区块链系统构建方法
[0001]本专利技术涉及区块链
,具体为基于有向无环图和布谷鸟过滤器的区块链系统构建方法。
技术介绍
[0002]有向无环图是计算机领域一种常用数据结构,因为独特的拓扑结构所带来的优异特性,经常被用于处理动态规划、导航中寻求最短路径、数据压缩等多种算法场景。
[0003]现有技术中,在区块链领域的有向无环图中,其组成单元是一笔笔的交易,每个单元记录的是单个用户的交易,验证手段则依赖于后一笔交易对前一笔交易的验证;要想进行一笔交易,就必须要验证前面的交易,具体验证几个交易,根据不同的规则来进行。
[0004]但是,在区块链中,数据保存在多方,利用共识算法实现多节点数据的一致性。在区块链中,数据只能追加不能删除或修改。新型区块链是可编程的,利用智能合约可以将业务规则编码到区块链中,规则(代码)像数据一样不能删除或修改,代码在调用时自动执行,不能跳过,执行的结果也写入区块链。由于数据保存在多方,链上数据不可篡。
技术实现思路
[0005]本专利技术的目的在于提供基于有向无环图和布谷鸟过滤器的区块链系统构建方法,以解决上述
技术介绍
中提出的问题。
[0006]为实现上述目的,本专利技术提供如下技术方案:基于有向无环图和布谷鸟过滤器的区块链系统构建方法,所述区块链系统构建方法包括以下步骤:
[0007]S1.系统启动、确定服务主节点和重选服务主节点;
[0008]S2.交易生成到被传送至服务主节点;
[000 ...
【技术保护点】
【技术特征摘要】
1.基于有向无环图和布谷鸟过滤器的区块链系统构建方法,其特征在于:所述区块链系统构建方法包括以下步骤:S1.系统启动、确定服务主节点和重选服务主节点;S2.交易生成到被传送至服务主节点;S3.服务主节点在收到大量交易时,使用布谷鸟过滤器将单链结构扩展为有向无环图;S4.区块链系统在交易频繁的情况下,在有向无环图的结构下记录交易;S5.区块链系统在交易不频繁的情况下,由有向无环图收敛成为单链结构。2.根据权利要求1所述的基于有向无环图和布谷鸟过滤器的区块链系统构建方法,其特征在于:系统启动、确定服务主节点和重选服务主节点的具体操作如下:S1.1每个服务节点读取配置中相同的、预生成的初始区块;将配置中所有服务节点的地址排序后,写入每个服务节点配置中的服务节点列表ServeList,设共有n个服务节点被写入该列表,设当前主节点索引i=0;S1.2每个服务节点以无服务主节点的状态启动,启动后默认将ServeList[i]服务节点列表中的第i
‑
1个节点作为预备服务主节点,并发送存活探测请求;S1.3 ServeList[i]节点一一响应存活探测请求,并定期广播自己存活的心跳消息;S1.4其余服务节点在收到存活探测响应或ServeList[i]的心跳消息后,广播ServeList[i]的存活确认消息;S1.5其余节点在收到超过(n/2)个不同来源的关于当前预备服务主节点ServeList[i]的心跳消息或存活确认消息后,将当前预备服务主节点设为服务主节点,选主完成;否则,执行步骤S1.7;S1.6若其余服务节点在一定时间内未接收到服务主节点ServeList[i]的心跳消息,广播重选主请求;S1.7收到重选主请求的节点确定最近是否收到当前服务主节点的心跳消息:若未收到,发送同意重选举的响应;否则,发送拒绝重选举的响应;S1.8节点在收到超过(n/2)个不同来源的关于ServeList[i]的重选举请求后,计算i=(i+1)mod n,并将ServeList[i]作为预备服务主节点,向其发送服务节点存活探测请求;并执行步骤S1.3。3.根据权利要求2所述的基于有向无环图和布谷鸟过滤器的区块链系统构建方法,其特征在于:交易生成到被传送至服务主节点具体操作如下:S2.1用户通过区块链系统的客户端生成交易,并将交易发送至区块链服务节点;S2.2收到交易的服务节点判断自己是否为服务主节点。4.根据权利要求1所述的基于有向无环图和布谷鸟过滤器的区块链系统构建方法,其特征在于:服务主节点在收到大量交易时,使用布谷鸟过滤器将单链结构扩展为有向无环图的具体操作为:S3.1服务主节点若在一秒的时间内收到超过一定数量的交易,则提取出每个交易的交易发起方,向布谷鸟过滤器列表中的布谷鸟过滤器依次查询交易发起方是否存在;S3.2通过步骤S3.1的查询请求,找到满足交易发起方在该布谷鸟过滤器中不存在的首个布谷鸟过滤器;若不存在这样的布谷鸟过滤器,新建一个布谷鸟过滤器,加入布谷鸟过滤器列表的尾部,作为满足上述条件的布谷鸟过滤器...
【专利技术属性】
技术研发人员:孟奇,秦雪娇,
申请(专利权)人:浪潮云信息技术股份公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。