一种基于DPoS共识算法的Iota账本优化系统及方法技术方案

技术编号:26173710 阅读:18 留言:0更新日期:2020-10-31 13:57
本发明专利技术公开了一种基于DPoS共识算法的Iota账本优化系统及方法,包括步骤一,生成交易节点单元;步骤二,生成节点之间的依赖关系;步骤三,生成Dag数据结构;步骤四,确定区块链投票区块和跟随节点;步骤五,达成DPoS共识;该发明专利技术,结合了区块链账本与有向无环图,系统中一部分的节点为区块链节点,另一部分的节点为DAG节点,基于Iota账本Dag结构和Dpos的组合共识算法;解决DAG结构中在产生分片的无序单元之间的双重支付、数据篡改,因发现不及时可能导致的大量交易最终无效的问题;DPoS共识算法使得区块链网络保留了一些中心化系统的关键优势,同时又能保证一定的去中心化,系统通过公平选举,使每个人都有可能成为代表绝大多数用户的委托人。

【技术实现步骤摘要】
一种基于DPoS共识算法的Iota账本优化系统及方法
本专利技术涉及账本优化系统
,具体为一种基于DPoS共识算法的Iota账本优化系统及方法。
技术介绍
IOTA是一种新型的分布是账本,使用的是有向非循环图(DAG),即Tangle(缠结)网络代替了区块链。对于区块链技术的工作模式,许多交易被打包捆绑在每个区块之后,由矿工来确认交易的有效性,而IOTA账本通过使用缠结网络,每增加一个交易,需要随机找到其他两个没有确认的交易,验证其有效性,随后把增加的交易指向这两笔交易,并发送到网络由后来的交易检查和确认。IOTA的架构在本质上是分布在一个没有区块链可以对应的层面上,在它的网络架构中,交易的发起人也同时是交易的验证人,IOTA的设计没有基于现有的区块链技术,而是对区块链生态系统做出了自己的拓展。但是,IOTA采用的DAG模式本质上是一种异步通讯,所带来最大的问题在于一致性不可控,即交易时长不可控,因为DAG所面对的是数以亿计的海量小型设备节点,与全球万级别的账本节点所需要的通讯确认时长要高出很多。另外,DAG虽然可以有效使用大量节点闲置网络资源,但是带来的负面影响则是每个节点的网络通讯量暴增,因此对于整体网络吞吐量并不一定会得到大幅度提升。从数据结构体系来看,DAG模式是一种典型的谣言传播算法,本质为异步通讯。异步通讯所带来最大的问题在于一致性不可控。就好像微服务架构中最让开发者头痛的在于各个微服务之间一致性与先后顺序控制的逻辑,远比传统开发模式复杂许多。在DAG模型中所带来最大的问题在于交易确认时间完全未知。当然,某种程度上同样可以认为在链式模型中,一个区块被超过2/3以上节点数接受才算全网最终确认,因此最终确认时间同样无法准确判断,但是IOTA的DAG所面对的是数以亿计的海量小型设备节点,与全球万级别的账本节点所需要的通讯确认时长要高出很多。另一个DAG一直宣称的利用全部节点带宽所带来的优势,实际上会被网络中成几何级数增长的通讯量所迅速湮灭。链式结构中仅仅账本节点记账,大量的钱包节点仅仅向一个账本节点通讯即可,因此全网络账本节点的数量远远小于钱包节点。在这种情况下,所有的数据同步均在账本节点之间完成,假设网络中有M个账本节点,每一条记录在网络中传输的次数为M+1(即钱包向一个账本发送数据,同时账本节点将数据转发给其他账本节点)。而对比DAG结构,在全网存在N个设备节点时(N成千上万倍大于M),每一个消息都需要在设备间进行点对点通讯,因此对于任何消息的发送,网络中都会存在N^2次数据发送(每一个节点都尝试将信息发送给其他邻居节点)。及时进行优化,每个节点有针对性地发送给相邻的K个节点,那么其网络信息传播速度同样为K*N,当N取值极大时对整体网络压力极为夸张。同时,DAG很难作为严格的支付结算手段应用于高速响应的物联网设备远程调用。一般来说,服务提供者希望能够在提供服务之前收取一部分甚至全部费用,或在服务提供后能够最短时间内得到支付。而以DAG作为结算手段,会造成支付时间完全不可控,而在IOTA给出的实现原理中更没有对极端情况作出设计,导致一些权重较低的交易长时间甚至永久无法被其他节点审批。对于简单设备之间的调用命令尚可,但是如果调用命令较为复杂,甚至需要传输一段较长的指令代码,其通讯原理必须使用P2P直连,否则如果所有信息以DAG转发的形式传输会造成严重网络风暴。共识算法的性能直接影响着分布式系统的性能,例如安全性、鲁棒性、共识成本和效率等。如何在兼顾安全性和鲁棒性的基础上提高效率是一个需要持续讨论和研究的重点。目前关于区块链共识的各种研究也在根据具体应用场景做出多方面的改进,除了技术方案的改进之外,还需要结合经济和社会等因素寻找更加有针对性、更加完善的解决方案。
技术实现思路
本专利技术的目的在于提供一种基于DPoS共识算法的Iota账本优化系统及方法,以解决上述
技术介绍
中提出的问题。为了解决上述技术问题,本专利技术提供如下技术方案:一种基于DPoS共识算法的Iota账本优化系统,包括DAG节点和区块链节点,所述DAG节点使用有向无环图数据结构,所述区块链节点通过DPoS达成共识,所述DAG节点和区块链节点分工有序且数据保持同步,所述优化系统依托于区块链,且区块链结构包含一张被称为区块的列表,所述区块包括区块头和区块体,所述区块头包含时间戳、随机数、Merkle根节点、版本号以及一个与前一区块的链接,所述区块体包括交易数据和见证人签名;一种基于DPoS共识算法的Iota账本优化系统的方法,包括步骤一,生成交易节点单元;步骤二,生成节点之间的依赖关系;步骤三,生成Dag数据结构;步骤四,确定区块链投票区块和跟随节点;步骤五,达成DPoS共识;其中在上述步骤一中,每当交易信息产生时,需要向数据库中添加数据,通过调用数据库中的存储的节点信息,创建一个新的存储单元并将其广播给他的对等节点,新交易产生时所生成的存储单元主要包括以下几部分:①存储的交易数据,即一个单元可以包括多个数据包,有许多不同类型的交易信息,且各有自己的结构;②一个或多个用户的签名及用户的地址标识;③由哈希值标识的一个或多个先前的关联节点单元;其中在上述步骤二中,通过引用父单元,即新增交易单元的内容取决于父母单元哈希值的信息,且每个交易单元最终包括初始单元,以此生成稳定的节点之间的依赖关系;其中在上述步骤三中,生成Dag数据结构包括以下步骤:①对每个交易信息关联关系生成并更新Dag结构,并通过DAG节点接收交易请求,对交易的合法性进行验证;②沿着父子链索引,当同一单元被多个后来的单元引用时,将观察到许多分叉,并且当同一单元引用多个较早单元时,许多单元逐渐融合,生成最终的Dag结构;其中在上述步骤四中,由于区块链的结构特性,在不同的区域存在若干的投票节点,每个投票节点所覆盖的范围根据区块链的量级进行划分,该投票节点和普通节点的性质是一样的,只是作为一个信息汇集的介质,用于对该投票节点范围内所有关联节点的主体投票信息进行统计并筛选出得票最高的见证人,所有在该投票节点范围内的其他区块链网络的主体即为跟随节点;其中在上述步骤五中,区块链部分采用见证人机制解决中心化问题,由区块链网络的主体投票产生的多个见证人对区块进行签名达成DPoS共识。根据上述技术方案,所述区块的列表设置有持续增长并且排列整齐的记录。根据上述技术方案,所述见证人由使用区块链网络的主体投票产生的,且通过采用DPoS共识算法产生的若干(单数)区块,执行交易确认。根据上述技术方案,所述步骤二中,引用父单元时不包括父单元的全部内容。根据上述技术方案,所述步骤三中,各个交易信息所在的节点单元之间是有一定的关联关系的,每个交易信息节点单元是建立并不局限于连续块之间的单引用关系,每个节点单元可能会有更多的父母单元和更多的子单元。根据上述技术方案,所述步骤四中,每个被签名的区块都有先前区块被可信任节点签名的证明。与现有技术相比,本专利技术所达到的有益效果是:本文档来自技高网
...

【技术保护点】
1.一种基于DPoS共识算法的Iota账本优化系统,包括DAG节点和区块链节点,其特征在于:所述DAG节点使用有向无环图数据结构,所述区块链节点通过DPoS达成共识,所述DAG节点和区块链节点分工有序且数据保持同步,所述优化系统依托于区块链,且区块链结构包含一张被称为区块的列表,所述区块包括区块头和区块体,所述区块头包含时间戳、随机数、Merkle根节点、版本号以及一个与前一区块的链接,所述区块体包括交易数据和见证人签名。/n

【技术特征摘要】
1.一种基于DPoS共识算法的Iota账本优化系统,包括DAG节点和区块链节点,其特征在于:所述DAG节点使用有向无环图数据结构,所述区块链节点通过DPoS达成共识,所述DAG节点和区块链节点分工有序且数据保持同步,所述优化系统依托于区块链,且区块链结构包含一张被称为区块的列表,所述区块包括区块头和区块体,所述区块头包含时间戳、随机数、Merkle根节点、版本号以及一个与前一区块的链接,所述区块体包括交易数据和见证人签名。


2.一种基于DPoS共识算法的Iota账本优化系统的方法,包括步骤一,生成交易节点单元;步骤二,生成节点之间的依赖关系;步骤三,生成Dag数据结构;步骤四,确定区块链投票区块和跟随节点;步骤五,达成DPoS共识;其特征在于:
其中在上述步骤一中,每当交易信息产生时,需要向数据库中添加数据,通过调用数据库中的存储的节点信息,创建一个新的存储单元并将其广播给他的对等节点,新交易产生时所生成的存储单元主要包括以下几部分:
①存储的交易数据,即一个单元可以包括多个数据包,有许多不同类型的交易信息,且各有自己的结构;
②一个或多个用户的签名及用户的地址标识;
③由哈希值标识的一个或多个先前的关联节点单元;
其中在上述步骤二中,通过引用父单元,即新增交易单元的内容取决于父母单元哈希值的信息,且每个交易单元最终包括初始单元,以此生成稳定的节点之间的依赖关系;
其中在上述步骤三中,生成Dag数据结构包括以下步骤:
①对每个交易信息关联关系生成并更新Dag结构,并通过DAG节点接收交易请求,对交易的合法性进行验证;
②沿着父子链索引,当同一单元被多个后来的单元引用时,将观察到许多分叉,
并且当同一单元引用多个较早单元时...

【专利技术属性】
技术研发人员:谭宜勇
申请(专利权)人:常州一仙智能科技有限公司
类型:发明
国别省市:江苏;32

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

1