一种轻量级区块链系统及构造方法技术方案

技术编号:25991348 阅读:26 留言:0更新日期:2020-10-20 18:59
本发明专利技术提供一种轻量级区块链系统及构造方法,该系统包括通过各节点设置的本节点对其它节点的信任度建立的一或多个群组,每一群组包含通过本群组各节点选举产生的一主节点在内的一或多个节点。本发明专利技术根据节点的群组属性将交易分为群内交易和群间交易两种,然后按照不同的业务逻辑分别处理这两种交易类型并及时反馈处理信息;基于信任网络设计了一种共识算法,以实现系统出块和分布式账本状态更新的安全快速高效。

【技术实现步骤摘要】
一种轻量级区块链系统及构造方法
本专利技术属于计算机应用
,尤其涉及一种轻量级区块链系统及构造方法。
技术介绍
区块链是随着比特币等数字加密货币的日益普及而逐渐兴起的一种去中心化的基础架构和分布式数据库技术,是以一种数据块链式结构的方式维护一个去中心化和去信任的可靠数据平台,其链式结构,可以维持持续增长的、不可篡改的数据记录。区块链技术被认为是互联网专利技术以来最具颠覆的技术创新,它依靠密码方法确保数据安全、利用共识机制确保数据一致性、利用智能合约执行命令、利用P2P组网进行数据传输,使基于该技术的系统具有去中心化、不可篡改、分布式共识、可溯源和最终一致性等特点,以极低的成本解决了信任与价值的可靠传递问题,因此,区块链在数字经济、互联网、物联网、大数据和公共服务等诸多领域有非常广阔的应用前景。目前应用最广泛地区块链系统包括以比特币、以太坊为代表的公有链系统和以超级账本(HyperledgerFabric)为代表的联盟链系统。在公有链系统中,不需要身份认证机制,任何人都可以加入到该网络并参与区块链网络的业务运行中,实现了真正意义上的完全去中心化;但是公有链系统网络面临着能耗高、效率低下、交易认证时间长、难以大规模落地应用等问题。在联盟链系统中,用户或组织需要拥有特定权限才能加入其中,参与业务运行和对区块链数据的读写维护,该系统将事务执行与共识分离开来,并支持基于策略的背书,拥有基于行业标准的身份管理集成;经过升级迭代的这类区块链系统拥有高吞吐、高并发、低延迟等优点,在遇到场景复杂、规模较大的区块链项目时可以应对自如,目前广泛应用于互联网、供应链金融、防伪溯源等场景下。从以比特币、以太坊为代表的公有链,到以HyperledgerFabric为代表的联盟链的技术演进,通过对参与区块链网络的成员身份的限制管理,实现了某些应用场景下区块链系统性能的大幅提升。但是,不管联盟链还是公有链,现有成熟的技术应用依然过于庞杂,针对大型的、成千上万成员节点所设计的区块链网络必然对某一单独节点造成巨量的内存、处理器等资源消耗和数据存储负担;因此如何在轻量级的服务器上部署节点,并在几十到几百个轻量级节点上搭建一个安全、稳定、快速、高效的轻量级区块链系统,以满足一些业务量相对较少、对服务器性能要求不高且可快速方便部署的实际应用场景,是一个急需解决的问题。
技术实现思路
为解决上述问题,本专利技术提出一种轻量级区块链系统及构造方法,针对在配置相对较低、业务逻辑不复杂的服务器上,搭建一个安全、稳定、快速、高效的轻量级区块链系统。本专利技术的技术方案如下:一种轻量级区块链系统,包括通过各节点设置的本节点对其它节点的信任度建立的一或多个群组,每一群组包含通过本群组各节点选举产生的一主节点在内的一或多个节点;各节点通过以下步骤进行交易及更新账本状态:当属同一群组的两用户进行交易时,进行交易的两用户收到群组主节点的交易确认信息后,完成交易,同时群组主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;当属不同群组的两用户进行交易时,进行交易的两用户收到两个相应主节点发送的交易确认消息后,完成交易,同时两个相应主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;在一设定时间后,各主节点根据身份信息,竞争出块优先权;各节点按照得到出块优先权的主节点的交易信息及账本状态预读写信息,更新账本状态。进一步地,各节点设置的本节点对其它节点的信任度存储于一本地密钥环列表;本地密钥环列表包括该节点公钥、该节点身份信息、至少一个其他节点对该节点的认证签名和签名者ID、该节点对系统其他节点与系统待认证节点的信任度、群组节点参与新主节点选举的优先级。进一步地,一或多个群组内包含至少一个从节点,用以协助主节点维护全局账本状态和区块数据信息。进一步地,交易信息包括交易时间、交易发起者、交易接受者、交易发起者对交易的签名信息及交易数据。进一步地,当属同一群组的两节点进行交易时,群组主节点通过以下步骤将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中:1)获取并验证交易信息;2)模拟执行合法交易,得到交易确认信息及账本状态预读写信息;3)将交易确认信息返回至进行交易的两用户;4)将交易信息及账本状态预读写信息保存并广播至区块链系统中。进一步地,通过检查交易签名信息、交易发起者账户状态以及是否双花,验证交易信息的合法性。进一步地,将交易信息及账本状态预读写信息保存在本地交易池中,并建立交易的索引。进一步地,当属不同群组的两用户进行交易时,两个相应主节点通过以下步骤将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中:1)交易发起者对应的主节点获取交易信息,并将验证成功的交易信息发送至交易接受者对应的主节点;2)交易接受者对应的主节点验证交易信息的合法性,模拟执行合法的交易,并将获取的交易第一确认信息保存并分别发送至进行交易的两节点及交易发起者对应的主节点,将账本第一状态预读写信息保存并发送至交易发起者对应的主节点;3)交易发起者对应的主节点模拟执行交易,获取交易第二确认信息及账本第二状态预读写信息;4)交易发起者对应的主节点将账本第二状态预读写信息与账本第一状态预读写信息进行比对,若比对成功,将交易第二确认消息发送至进行交易的两节点及交易接受者对应的主节点,将账本第二状态预读写信息保存为账本状态预读写信息;5)交易接受者对应的主节点将账本第一状态预读写信息保存为账本状态预读写信息;6)两个相应主节点分别将交易信息及账本状态预读写信息广播至区块链系统中。进一步地,各主节点根据身份信息与一个随机种子计算哈希值,哈希值最大的主节点得到出块优先权。一种轻量级区块链的构造方法,其步骤包括:1)各节点通过本节点对其它节点信任度,在本地维护一信任列表;2)通过信任列表,将所有节点分为一或多个群组;3)每一群组选举一节点作为主节点;其中,各节点通过以下步骤进行交易及更新账本状态:当属同一群组的两用户进行交易时,进行交易的两用户收到群组主节点的交易确认信息后,完成交易,同时群组主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;当属不同群组的两用户进行交易时,进行交易的两用户收到两个相应主节点发送的交易确认消息后,完成交易,同时两个相应主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;在一设定时间后,各主节点根据身份信息,竞争出块优先权;各节点按照得到出块优先权的主节点的交易信息及账本状态预读写信息,更新账本状态。与现有技术相比,本专利技术具有以下优势:1)根据节点的群组属性将交易分为群内交易和群间交易两种,然后按照不同的业务逻辑分别处理这两种交易类型并及时反馈处理信息;2)本专利技术基于信任网络的设计了一种共识算法,以实现本文档来自技高网
...

【技术保护点】
1.一种轻量级区块链系统,包括通过各节点设置的本节点对其它节点的信任度建立的一或多个群组,每一群组包含通过本群组各节点选举产生的一主节点在内的一或多个节点;各节点通过以下步骤进行交易及更新账本状态:/n当属同一群组的两用户进行交易时,进行交易的两用户收到群组主节点的交易确认信息后,完成交易,同时群组主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;/n当属不同群组的两用户进行交易时,进行交易的两用户收到两个相应主节点发送的交易确认消息后,完成交易,同时两个相应主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;/n在一设定时间后,各主节点根据身份信息,竞争出块优先权;/n各节点按照得到出块优先权的主节点的交易信息及账本状态预读写信息,更新账本状态。/n

【技术特征摘要】
1.一种轻量级区块链系统,包括通过各节点设置的本节点对其它节点的信任度建立的一或多个群组,每一群组包含通过本群组各节点选举产生的一主节点在内的一或多个节点;各节点通过以下步骤进行交易及更新账本状态:
当属同一群组的两用户进行交易时,进行交易的两用户收到群组主节点的交易确认信息后,完成交易,同时群组主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;
当属不同群组的两用户进行交易时,进行交易的两用户收到两个相应主节点发送的交易确认消息后,完成交易,同时两个相应主节点将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中;
在一设定时间后,各主节点根据身份信息,竞争出块优先权;
各节点按照得到出块优先权的主节点的交易信息及账本状态预读写信息,更新账本状态。


2.如权利要求1所述的区块链系统,其特征在于,各节点设置的本节点对其它节点的信任度存储于一本地密钥环列表;本地密钥环列表包括该节点公钥、该节点身份信息、至少一个其他节点对该节点的认证签名和签名者ID、该节点对系统其他节点与系统待认证节点的信任度、群组节点参与新主节点选举的优先级。


3.如权利要求1所述的区块链系统,其特征在于,一或多个群组内包含至少一个从节点,用以协助主节点维护全局账本状态和区块数据信息。


4.如权利要求1所述的区块链系统,其特征在于,交易信息包括交易时间、交易发起者、交易接受者、交易发起者对交易的签名信息及交易数据。


5.如权利要求1所述的区块链系统,其特征在于,当属同一群组的两节点进行交易时,群组主节点通过以下步骤将交易信息及计算得到的账本状态预读写信息保存并广播至区块链系统中:
1)获取并验证交易信息;
2)模拟执行合法交易,得到交易确认信息及账本状态预读写信息;
3)将交易确认信息返回至进行交易的两用户;
4)将交易信息及账本状态预读写信息保存并广播至区块链系统中。


6.如权利要求5所述的区块链系统,其特征在于,通过检查交易签名信息、交易发起者账户状态以及是否双花,验证交易信息的合法性。


7.如权利要求5所述的区块链系统,其特征在于,将交易信息及账本状态预读写信息保存...

【专利技术属性】
技术研发人员:王明生刘冬冬李涛涛罗明邓智洪曹鹤阳
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京;11

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

1