CN111901350B - 区块链系统、数据处理方法、计算机设备及存储介质 - Google Patents
区块链系统、数据处理方法、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN111901350B CN111901350B CN202010752079.9A CN202010752079A CN111901350B CN 111901350 B CN111901350 B CN 111901350B CN 202010752079 A CN202010752079 A CN 202010752079A CN 111901350 B CN111901350 B CN 111901350B
- Authority
- CN
- China
- Prior art keywords
- block
- blocks
- chain
- node
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/04—Protocols for data compression, e.g. ROHC
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Technology Law (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Economics (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Development Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种区块链系统、数据处理方法、计算机设备及存储介质,属于区块链技术领域。区块链的数据处理方法通过构建有向无环图结构的区块链提高了区块的存储效率,对区块存储的数据进行压缩,有效提升了区块的存储空间;采用聚合的方式传输数据,提高了区块链的网络通信效率;采用POA协议同步各个节点中的交易信息,降低了验证的复杂度,加速了节点间的共识验证效率;采用侧链协议和分片策略控制区块间的数据交互,加速了区块间的交互效率。
Description
技术领域
本发明涉及区块链技术领域,尤其涉及区块链系统、数据处理方法、计算机设备及存储介质。
背景技术
区块链是一个分布式的共享账本和数据库,具有去中心化、不可篡改、全程留痕、可以追溯、集体维护、公开透明等特点。这些特点保证了区块链的“诚实”与“透明”,为区块链创造信任奠定基础。随着区块链的发展其应用场景越来越丰富,但是,现有的区块链系统存在资源浪费、数据传输受限的问题。
发明内容
针对现有区块链存在资源浪费、数据传输受限的问题,现提供一种旨在提高存储空间,提升传输速度的区块链系统、数据处理方法、计算机设备及存储介质。
为实现上述目的,本发明提供一种区块链的数据处理方法,应用于区块链系统中,包括:
采用POA协议同步各个节点中的交易信息,其中,所述交易信息用于产生区块;
将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩,其中,所述区块采用聚合方式进行通信;
采用侧链协议和分片策略控制所述区块间的数据交互。
优选的,区块链的节点包括第一节点和第二节点;
所述采用POA协议同步各个节点中的交易信息,包括:
当所述第一节点产生的交易信息时,采用POA协议通过所述第二节点验证所述第一节点产生的交易信息,并存储验证通过的所述交易信息,其它第一节点同步所述交易信息时,从所述第二节点中获取所述交易信息。
优选的,所述将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩,包括:
区块链上的区块对所述节点产生的待上链区块验证;
将验证通过的所述待上链区块上链,指针指向验证的所述区块;
采用剪枝方法对所述区块链上的区块存储的信息进行压缩。
优选的,所述区块采用聚合方式进行通信,包括:
所述区块对预设时间窗口内待发送的多条数据进行边缘缓存;
对缓存的多条所述数据进行聚合,并将聚合后的数据发送至目标区块。
优选的,所述预设时间窗口为所述区块根据当前网络的请求频率确定的时间窗口;
所述区块根据当前网络的请求频率确定的时间窗口包括:
所述区块根据当前网络的请求频率查询时间窗口清单,以确定与所述请求频率匹配的时间窗口,所述时间窗口清单包括请求频率和与所述请求频率匹配的所述时间窗口。
优选的,所述区块将聚合后的数据通过Gossip协议发送至所述目标区块。
优选的,所述采用侧链协议和分片策略控制所述区块间的数据交互,包括:
当区块链中的主链的区块中的通信信息转移至侧链的区块中时,采用SPV模式验证主链的区块已被锁定;
当区块链中的侧链的区块中的通信信息转移至主链的区块中时,采用SPV模式验证侧链的区块已被锁定;
采用分片策略对所述区块链中的区块进行分段,每一个分段之间相互独立,每一个分段独立验证所述分段内的通信信息。
为实现上述目的,本发明还提供了一种区块链系统,包括:
共识层,用以采用POA协议同步各个节点中的交易信息,其中,所述交易信息用于产生区块;
数据层,用以将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩;
网络层,用以采用聚合方式控制所述区块间的通信;
合约层,用以采用侧链协议和分片策略控制所述区块间的数据交互。
为实现上述目的,本发明还提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
为实现上述目的,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本发明提供的区块链系统、数据处理方法、计算机设备及存储介质,通过构建有向无环图结构的区块链提高了区块的存储效率,对区块存储的数据进行压缩,有效提升了区块的存储空间;采用聚合的方式传输数据,提高了区块链的网络通信效率;采用POA协议同步各个节点中的交易信息,降低了验证的复杂度,加速了节点间的共识验证效率;采用侧链协议和分片策略控制区块间的数据交互,加速了区块间的交互效率。
附图说明
图1为本发明所述的区块链的数据处理方法的一种实施例的流程图;
图2为本发明所述的区块链系统的一种实施例的模块图;
图3为本发明所述的区块链系统的另一种实施例的模块图;
图4为本发明计算机设备的一个实施例的硬件架构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相互组合。
本发明提供的区块链系统、数据处理方法、计算机设备及存储介质,适用于金融业务、银行业务、医疗业务及保险业务领域中。本发明通过数据层构建有向无环图结构的区块链提高了区块的存储效率,对区块存储的数据进行压缩,有效提升了区块的存储空间;采用聚合的方式传输数据,提高了区块链的网络通信效率;采用POA协议同步各个节点中的交易信息,降低了验证的复杂度,加速了节点间的共识验证效率;采用侧链协议和分片策略控制区块间的数据交互,加速了区块间的交互效率。
实施例一
请参阅图1,本实施例的一种区块链的数据处理方法,应用于区块链系统中,包括:
S1. 采用POA协议同步各个节点中的交易信息;
其中,所述交易信息用于产生区块。
本实施例中,同步各个节点的交易信息通过区块链的共识层实现。目前共识层采用的协议有PoW协议和PoS协议。PoW协议通过牺牲可拓展性获得完全去中心化和安全性,PoS协议虽然以高效的出块方式具备可扩展性,但是又产生了分叉问题。对此,本实施例使用POA协议,结合PoW协议和PoS协议做到了可拓展性、中心化和安全性三种特性的均衡,并以此为切入点,引入Hybrid类共识配合奖惩机制,通过机动调节可以取得较好效果,成为一个比较良好的过渡手段。POA协议可以改善网络拓扑,维持生态中活跃节点的比例。
在本实施例中,所述区块链的节点包括第一节点和第二节点;
具体地,步骤S1可包括:
当所述第一节点产生的交易信息时,采用POA协议通过所述第二节点验证所述第一节点产生的交易信息,并存储验证通过的所述交易信息,其它第一节点同步所述交易信息时,从所述第二节点中获取所述交易信息。
在POA协议中,各节点持有本地的分布式账本(交易信息),为了保证节点信息的统一,当交易信息发生变化时,首先交由验证节点(第二节点)验证其合法性,在验证节点验证并签署交易之后,普通节点(第一节点)可以从验证节点处同步到本地。在本实施例中,选取活跃节点为验证节点,且验证节点的身份可以通过公共领域查询到,以此保证验证的可靠性。
在优选的实施例中,在步骤S1中可通过联盟链进行区块出块。
在本实施例中,采用BFT类算法在小范围构建联盟链,即邀请各成员加入联盟链,只有加入联盟的成员可以根据规则对链上信息进行修改;此外,为了保证成员的协同性,采用BFT类算法使所有成员通过协商确定可出块的区块。不要求完全去中心化,只要做到一定程度上的灵活性与复杂性的折中解决方案即可。具体地,小范围的联盟链具有较强的可控性,容易达成共识;联盟里的机构和用户可以访问区块链进行查询等操作,做到了部分去中心化。另一方面,结合BFT类算法,将共识和执行模块分离,方便对链上模块操作,实现了可扩展性。此外,BFT类算法只要保证一定比例的节点诚实即可获得争取的结果,具有较高的安全边界,可控性强。
S2. 将各个所述节点产生的区块构建为有向无环图(DAG)结构,并对所述区块存储的数据进行压缩;
在本实施例中,采用有向无环图结构构建区块链,即:区块链上的区块不需要再采用顺序的链式结构排队上链,只需要直接在可验证区块的后方上链即可,以此提高数据存储效率。
具体地,步骤S2可包括:
区块链上的区块对所述节点产生的待上链区块进行验证;将验证通过的所述待上链区块上链,指针指向验证的所述区块;采用剪枝方法对所述区块链上的区块存储的信息进行压缩。
在本实施例中,有向无环图结构为纠缠结构,即后块能验证前块,就是每当区块链上的节点发送交易信息(区块上链)时,必须随机验证前序的两个交易,这种验证需要执行少量的工作证明,以确保网络安全,区块上链需要验证成功才能上链,上链区块指针指向可验证的区块(最多可指向两个区块),相对于传统的区块上链方式而言提高了信息的存储效率。
本实施例中,区块链采用剪枝方法对区块链上的区块存储的信息进行压缩,即本实施例的区块链采用Libra状态树建立树形结构数据库,数据变动时只需更改相应的数据库数据。Libra区块链可以看作Merkle树,主要存储该链上操作产生的哈希值。当区块的交易事件发生时,改变库中所记录的根哈希数据,与此同时状态树结构会做出相应调整。由于状态树结构采用稀疏Merkle树存储所有账本版本,因而区块通过剪枝技术去掉不包含数据信息的分支可以对存储结构进行压缩,提高数据验证效率。例如:区块1连接叶子区块2和叶子区块3,叶子区块2交易事件较少(至少有一个操作),叶子区块3的交易事件较多,由于叶子区块2没有其他的块进行交易,可将叶子区块2中除主要交易信息外其他的数据都删除,从而对叶子区块2的存储空间进行压缩,提高存储空间。
需要说明的是:所述区块可采用聚合方式进行通信。
区块间的数据通信通过网络层实现。在本实施例中,通过网络层在信息中心网络将重塑区块链基础传输网络,通过请求聚合和数据缓存减少网内冗余流量并加速通信传输。
区块采用聚合方式进行通信的具体地过程如下:
所述区块对预设时间窗口内待发送的多条数据进行边缘缓存,对缓存的多条所述数据进行聚合,并将聚合后的数据发送至目标区块。
区块链网络中的区块间的数据传输采用端对端传输模式,当整个区块链中某个区块在短时间内多次发送请求,会造成区块网络的通信拥塞。在本实施例中,采用聚合方式将预设时间窗口的通信信息聚合,并利用区块本地的缓存池对聚合后的通信信息进行边缘缓存,统一发送至目标区块,以此降低网络中的通信频率。例如:某一区块在一分钟内分开传输10条通信信息,可能会丢失、效率低,很慢,将10条通信信息进行聚合后统一发送至目标区块。
需要说明的是:所述预设时间窗口为所述区块根据当前网络的请求频率(即每秒查询率,简称QPS,全称Query Per Second)确定的时间窗口;
进一步地,所述区块根据当前网络的请求频率确定的时间窗口的具体过程如下:
所述区块根据当前网络的请求频率查询时间窗口清单,以确定与所述请求频率匹配的时间窗口,所述时间窗口清单包括请求频率和与所述请求频率匹配的所述时间窗口。
在本实施例中,由于预设时间窗口的大小会影响整个区块链的通信效率,因此需要实时监测所有区块之间的通信强度,以做出及时调整,若网络拥挤增大时间窗口,若网络空闲减小时间窗口。通过对区块当前网络的请求频率进行监测,了解当前的网络情况,根据请求频率在时间窗口清单中选择与其匹配的时间窗口。需要说明的是:所述区块将聚合后的数据通过Gossip协议发送至所述目标区块。
在本实施例中,可以https传输协议保证网络数据传输的安全性,https协议利用对称加密传输内容,非对称加密验证证书,防止数据被窃取的同时确保了通信双方的可靠性。在区块通信之间采用https传输协议传输公钥和秘钥,采用Gossip about Gossip方法实现区块与目标区块之间的通讯。当区块1与区块6(目标区块)通讯时,会把数据封装上自己的标签,随机广播给邻接区块,邻接区块在接收到信息后,验证自己是不是接收方,如果不是的话再次封装加上本地标签并向邻接节点广播,持续本过程直到区块6收到该信息,然后在本地解除封装获得传输内容;在每次Gossip后添加上一次通信的签名认证,以在去中心化的条件下保证通讯的有效性。
S3.采用侧链协议和分片策略控制所述区块间的数据交互。
现有区块链中侧链和分片是独立应用的,侧链协议存在的问题有:灵活但操作复杂度很高,数据转移时需要多层验证,转移回去时也需要多层验证;分片策略存在的问题有:每个片中间的交互很难。在本实施例中,结合了分片的优势和侧链协议的优势,解决上述问题,加速了区块间的交互效率。
具体地,所述步骤S3可包括:
当区块链中的主链的区块中的通信信息转移至侧链的区块中时,采用SPV模式验证主链的区块已被锁定;
当区块链中的侧链的区块中的通信信息转移至主链的区块中时,采用SPV模式验证侧链的区块已被锁定;
采用分片策略对所述区块链中的区块进行分段,每一个分段之间相互独立,每一个分段独立验证所述分段内的通信信息。
在本实施例中,侧链协议作为一种跨区块链方案,可以实现区块的通信信息从主链到侧链的转移,之后需要再将通信信息重新传回主链,这样可以满足用户的大量访问。分片策略是将一条完整的区块链分为多个片区,每个片区可独立验证交易,增大了链上吞吐量。虽然它改进了账本结构但跨分片交互的安全问题始终存在,因此采用侧链技术和分片策略进行交叉,首先将原始链分片获得多组分片,每个节点只需要处理其分片内事务,以提高吞吐量。在涉及到跨分片交互时,本实施例采用非对称混合模式,在侧链上采用SPV模式,即当区块的通信信息要发送到侧链时添加SPV证明,以验证该区块在主链上已被锁定,可在侧链活跃。当该区块通信信息要重新返回主链时,侧链为其添加SPV证明,帮助其解锁主链上的区块。在主链上采用驱动链模式,即在主链外新建一条驱动链,用来协调交易的真实性。采用侧链技术和分片技术结合,可以实现双向锚定,确保分片间交互的隐私性,加速交互效率。
在本实施例中,区块链的数据处理方法通过数据层构建有向无环图结构的区块链提高了区块的存储效率,对区块存储的数据进行压缩,有效提升了区块的存储空间;通过网络层采用聚合的方式传输数据,提高了区块链的网络通信效率;采用POA协议同步各个节点中的交易信息,降低了验证的复杂度,加速了节点间的共识验证效率;采用侧链协议和分片策略控制区块间的数据交互,加速了区块间的交互效率。
实施例二
请参阅图2,本实施例的一种区块链系统可包括:数据层、网络层、共识层和合约层;
共识层,用以采用POA协议同步各个节点中的交易信息,其中,所述交易信息用于产生区块;
本实施例中,通过共识层同步各个节点的交易信息通过区块链。目前共识层采用的协议有PoW协议和PoS协议。PoW协议通过牺牲可拓展性获得完全去中心化和安全性,PoS协议虽然以高效的出块方式具备可扩展性,但是又产生了分叉问题。对此,本实施例使用POA协议,结合PoW协议和PoS协议做到了可拓展性、中心化和安全性三种特性的均衡,并以此为切入点,引入Hybrid类共识配合奖惩机制,通过机动调节可以取得较好效果,成为一个比较良好的过渡手段。POA协议可以改善网络拓扑,维持生态中活跃节点的比例。
在本实施例中,所述区块链的节点包括第一节点和第二节点;
具体地,共识层用于当所述第一节点产生的交易信息时,采用POA协议通过所述第二节点验证所述第一节点产生的交易信息,并存储验证通过的所述交易信息,其它第一节点同步所述交易信息时,从所述第二节点中获取所述交易信息。
在POA协议中,各节点持有本地的分布式账本(交易信息),为了保证节点信息的统一,当交易信息发生变化时,首先交由验证节点(第二节点)验证其合法性,在验证节点验证并签署交易之后,普通节点(第一节点)可以从验证节点处同步到本地。在本实施例中,选取活跃节点为验证节点,且验证节点的身份可以通过公共领域查询到,以此保证验证的可靠性。
在优选的实施例中,参阅图3所示区块链系统还可包括:应用层,利用应用层通过联盟链进行区块出块。
在本实施例中,采用BFT类算法在小范围构建联盟链,即邀请各成员加入联盟链,只有加入联盟的成员可以根据规则对链上信息进行修改;此外,为了保证成员的协同性,采用BFT类算法使所有成员通过协商确定可出块的区块。不要求完全去中心化,只要做到一定程度上的灵活性与复杂性的折中解决方案即可。具体地,小范围的联盟链具有较强的可控性,容易达成共识;联盟里的机构和用户可以访问区块链进行查询等操作,做到了部分去中心化。另一方面,结合BFT类算法,将共识和执行模块分离,方便对链上模块操作,实现了可扩展性。此外,BFT类算法只要保证一定比例的节点诚实即可获得争取的结果,具有较高的安全边界,可控性强。
数据层,用以将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩;
在本实施例中,采用有向无环图结构构建区块链,即:区块链上的区块不需要再采用顺序的链式结构排队上链,只需要直接在可验证区块的后方上链即可,以此提高数据存储效率。
具体地,区块链上的区块对所述节点产生的待上链区块进行验证;将验证通过的所述待上链区块上链,指针指向验证的所述区块;采用剪枝方法对所述区块链上的区块存储的信息进行压缩。
在本实施例中,有向无环图结构为纠缠结构,即后块能验证前块,就是每当区块链上的节点发送交易信息(区块上链)时,必须随机验证前序的两个交易,这种验证需要执行少量的工作证明,以确保网络安全,区块上链需要验证成功才能上链,上链区块指针指向可验证的区块(最多可指向两个区块),相对于传统的区块上链方式而言提高了信息的存储效率。
本实施例中,区块链采用剪枝方法对区块链上的区块存储的信息进行压缩,即本实施例的区块链采用Libra状态树建立树形结构数据库,数据变动时只需更改相应的数据库数据。Libra区块链可以看作Merkle树,主要存储该链上操作产生的哈希值。当区块的交易事件发生时,改变库中所记录的根哈希数据,与此同时状态树结构会做出相应调整。由于状态树结构采用稀疏Merkle树存储所有账本版本,因而区块通过剪枝技术去掉不包含数据信息的分支可以对存储结构进行压缩,提高数据验证效率。例如:区块1连接叶子区块2和叶子区块3,叶子区块2交易事件较少(至少有一个操作),叶子区块3的交易事件较多,由于叶子区块2没有其他的块进行交易,可将叶子区块2中除主要交易信息外其他的数据都删除,从而对叶子区块2的存储空间进行压缩,提高存储空间。
网络层,用以采用聚合方式控制所述区块间的通信;
在本实施例中,通过网络层在信息中心网络将重塑区块链基础传输网络,通过请求聚合和数据缓存减少网内冗余流量并加速通信传输。
区块采用聚合方式进行通信的具体地过程如下:
所述区块对预设时间窗口内待发送的多条数据进行边缘缓存,对缓存的对条所述数据进行聚合,并将聚合后的数据发送至目标区块。
区块链网络中的区块间的数据传输采用端对端传输模式,当整个区块链中某个区块在短时间内多次发送请求,会造成区块网络的通信拥塞。在本实施例中,采用聚合方式将预设时间窗口的通信信息聚合,并利用区块本地的缓存池对聚合后的通信信息进行边缘缓存,统一发送至目标区块,以此降低网络中的通信频率。例如:某一区块在一分钟内分开传输10条通信信息,可能会丢失、效率低,很慢,将10条通信信息进行聚合后统一发送至目标区块。
需要说明的是:所述预设时间窗口为所述区块根据当前网络的请求频率(即每秒查询率,简称QPS,全称Query Per Second)确定的时间窗口;
进一步地,所区块根据当前网络的请求频率查询时间窗口清单,以确定与所述请求频率匹配的时间窗口,所述时间窗口清单包括请求频率和与所述请求频率匹配的所述时间窗口。
在本实施例中,由于预设时间窗口的大小会影响整个区块链的通信效率,因此需要实时监测所有区块之间的通信强度,以做出及时调整,若网络拥挤增大时间窗口,若网络空闲减小时间窗口。通过对区块当前网络的请求频率进行监测,了解当前的网络情况,根据请求频率在时间窗口清单中选择与其匹配的时间窗口。需要说明的是:所述区块将聚合后的数据通过Gossip协议发送至所述目标区块。
在本实施例中,可以https传输协议保证网络数据传输的安全性,https协议利用对称加密传输内容,非对称加密验证证书,防止数据被窃取的同时确保了通信双方的可靠性。在区块通信之间采用https传输协议传输公钥和秘钥,采用Gossip about Gossip方法实现区块与目标区块之间的通讯。当区块1与区块6(目标区块)通讯时,会把数据封装上自己的标签,随机广播给邻接区块,邻接区块在接收到信息后,验证自己是不是接收方,如果不是的话再次封装加上本地标签并向邻接节点广播,持续本过程直到区块6收到该信息,然后在本地解除封装获得传输内容;在每次Gossip后添加上一次通信的签名认证,以在去中心化的条件下保证通讯的有效性。
合约层,用以采用侧链协议和分片策略控制所述区块间的数据交互。
现有区块链中侧链和分片是独立应用的,侧链协议存在的问题有:灵活但操作复杂度很高,数据转移时需要多层验证,转移回去时也需要多层验证;分片策略存在的问题有:每个片中间的交互很难。在本实施例中,结合了分片的优势和侧链协议的优势,解决上述问题,加速了区块间的交互效率。
具体地,当区块链中的主链的区块中的通信信息转移至侧链的区块中时,采用SPV模式验证主链的区块已被锁定;当区块链中的侧链的区块中的通信信息转移至主链的区块中时,采用SPV模式验证侧链的区块已被锁定;采用分片策略对所述区块链中的区块进行分段,每一个分段之间相互独立,每一个分段独立验证所述分段内的通信信息。
在本实施例中,侧链协议作为一种跨区块链方案,可以实现区块的通信信息从主链到侧链的转移,之后需要再将通信信息重新传回主链,这样可以满足用户的大量访问。分片策略是将一条完整的区块链分为多个片区,每个片区可独立验证交易,增大了链上吞吐量。虽然它改进了账本结构但跨分片交互的安全问题始终存在,因此采用侧链技术和分片策略进行交叉,首先将原始链分片获得多组分片,每个节点只需要处理其分片内事务,以提高吞吐量。在涉及到跨分片交互时,本实施例采用非对称混合模式,在侧链上采用SPV模式,即当区块的通信信息要发送到侧链时添加SPV证明,以验证该区块在主链上已被锁定,可在侧链活跃。当该区块通信信息要重新返回主链时,侧链为其添加SPV证明,帮助其解锁主链上的区块。在主链上采用驱动链模式,即在主链外新建一条驱动链,用来协调交易的真实性。采用侧链技术和分片技术结合,可以实现双向锚定,确保分片间交互的隐私性,加速交互效率。
在本实施例中,区块链系统通过数据层构建有向无环图结构的区块链提高了区块的存储效率,对区块存储的数据进行压缩,有效提升了区块的存储空间;通过网络层采用聚合的方式传输数据,提高了区块链的网络通信效率;通过共识层采用POA协议同步各个节点中的交易信息,降低了验证的复杂度,加速了节点间的共识验证效率;通过合约层采用侧链协议和分片策略控制区块间的信息交互,加速了区块间的交互效率;采用应用层通过联盟链进行区块出块,可使区块快速达成共识,加快区块出块效率。
实施例三
为实现上述目的,本发明还提供一种计算机设备2,该计算机设备2包括多个计算机设备2,实施例二的区块链系统的组成部分可分散于不同的计算机设备2中,计算机设备2可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备2至少包括但不限于:可通过系统总线相互通信连接的存储器21、处理器23、网络接口22以及区块链系统(参考图4)。需要指出的是,图4仅示出了具有组件-的计算机设备2,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,所述存储器21至少包括一种类型的计算机可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器21可以是计算机设备2的内部存储单元,例如该计算机设备2的硬盘或内存。在另一些实施例中,存储器21也可以是计算机设备2的外部存储设备,例如该计算机设备2上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(Secure Digital, SD)卡,闪存卡(Flash Card)等。当然,所述存储器21还可以既包括计算机设备2的内部存储单元也包括其外部存储设备。本实施例中,存储器21通常用于存储安装于计算机设备2的操作系统和各类应用软件,例如实施例一的区块链的数据处理方法的程序代码等。此外,存储器21还可以用于暂时地存储已经输出或者将要输出的各类数据。
所述处理器23在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器23通常用于控制计算机设备2的总体操作例如执行与所述计算机设备2进行数据交互或者通信相关的控制和处理等。本实施例中,所述处理器23用于运行所述存储器21中存储的程序代码或者处理数据,例如运行所述的区块链系统等。
所述网络接口22可包括无线网络接口或有线网络接口,该网络接口22通常用于在所述计算机设备2与其他计算机设备2之间建立通信连接。例如,所述网络接口22用于通过网络将所述计算机设备2与外部终端相连,在所述计算机设备2与外部终端之间的建立数据传输通道和通信连接等。所述网络可以是企业内部网(Intranet)、互联网(Internet)、全球移动通讯系统(Global System of Mobile communication,GSM)、宽带码分多址(WidebandCode Division Multiple Access,WCDMA)、4G网络、5G网络、蓝牙(Bluetooth)、Wi-Fi等无线或有线网络。
需要指出的是,图4仅示出了具有部件21-23的计算机设备2,但是应理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
在本实施例中,存储于存储器21中的所述区块链系统还可以被分割为一个或者多个程序模块,所述一个或者多个程序模块被存储于存储器21中,并由一个或多个处理器(本实施例为处理器23)所执行,以完成本发明。
实施例四
为实现上述目的,本发明还提供一种计算机可读存储介质,其包括多个存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器23执行时实现相应功能。本实施例的计算机可读存储介质用于存储区块链系统,被处理器23执行时实现实施例一的区块链的数据处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (8)
1.一种区块链的数据处理方法,应用于区块链系统中,其特征在于,包括:
采用POA协议同步各个节点中的交易信息,其中,所述交易信息用于产生区块;
通过联盟链进行区块出块,采用BFT算法在小范围内构建联盟链;
将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩;
所述将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩包括:区块链上的区块对所述节点产生的待上链区块进行验证;将验证通过的所述待上链区块上链,指针指向验证的所述区块;采用剪枝方法对所述区块链上的区块存储的信息进行压缩;
其中,所述区块采用聚合方式进行通信;
所述区块采用聚合方式进行通信包括:所述区块对预设时间窗口内待发送的多条数据进行边缘缓存;对缓存的多条所述数据进行聚合,并将聚合后的数据发送至目标区块;
采用侧链协议和分片策略控制所述区块间的数据交互。
2.根据权利要求1所述的区块链的数据处理方法,其特征在于,区块链的节点包括第一节点和第二节点;
所述采用POA协议同步各个节点中的交易信息,包括:
当所述第一节点产生的交易信息时,采用POA协议通过所述第二节点验证所述第一节点产生的交易信息,并存储验证通过的所述交易信息,其它第一节点同步所述交易信息时,从所述第二节点中获取所述交易信息。
3.根据权利要求1所述的区块链的数据处理方法,其特征在于,所述预设时间窗口为所述区块根据当前网络的请求频率确定的时间窗口;
所述区块根据当前网络的请求频率确定的时间窗口包括:
所述区块根据当前网络的请求频率查询时间窗口清单,以确定与所述请求频率匹配的时间窗口,所述时间窗口清单包括请求频率和与所述请求频率匹配的所述时间窗口。
4.根据权利要求1所述的区块链的数据处理方法,其特征在于,所述区块将聚合后的数据通过Gossip协议发送至所述目标区块。
5.根据权利要求1所述的区块链的数据处理方法,其特征在于,所述采用侧链协议和分片策略控制所述区块间的数据交互,包括:
当区块链中的主链的区块中的通信信息转移至侧链的区块中时,采用SPV模式验证主链的区块已被锁定;
当区块链中的侧链的区块中的通信信息转移至主链的区块中时,采用SPV模式验证侧链的区块已被锁定;
采用分片策略对所述区块链中的区块进行分段,每一个分段之间相互独立,每一个分段独立验证所述分段内的通信信息。
6.一种区块链系统,其特征在于,包括:
共识层,用以采用POA协议同步各个节点中的交易信息,其中,所述交易信息用于产生区块;
通过联盟链进行区块出块,采用BFT算法在小范围内构建联盟链;
数据层,用以将各个所述节点产生的区块构建为有向无环图结构,并对所述区块存储的数据进行压缩,包括:
区块链上的区块对所述节点产生的待上链区块进行验证,
将验证通过的所述待上链区块上链,指针指向验证的所述区块,
采用剪枝方法对所述区块链上的区块存储的信息进行压缩;
网络层,用以采用聚合方式控制所述区块间的通信,包括:
所述区块对预设时间窗口内待发送的多条数据进行边缘缓存,
对缓存的多条所述数据进行聚合,并将聚合后的数据发送至目标区块;
合约层,用以采用侧链协议和分片策略控制所述区块间的数据交互。
7.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至5任一项所述方法的步骤。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现权利要求1至5任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010752079.9A CN111901350B (zh) | 2020-07-30 | 2020-07-30 | 区块链系统、数据处理方法、计算机设备及存储介质 |
PCT/CN2020/112304 WO2021174787A1 (zh) | 2020-07-30 | 2020-08-29 | 区块链系统、数据处理方法、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010752079.9A CN111901350B (zh) | 2020-07-30 | 2020-07-30 | 区块链系统、数据处理方法、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111901350A CN111901350A (zh) | 2020-11-06 |
CN111901350B true CN111901350B (zh) | 2022-10-14 |
Family
ID=73183725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010752079.9A Active CN111901350B (zh) | 2020-07-30 | 2020-07-30 | 区块链系统、数据处理方法、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111901350B (zh) |
WO (1) | WO2021174787A1 (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112508571A (zh) * | 2020-12-17 | 2021-03-16 | 平安国际智慧城市科技股份有限公司 | 基于区块链的数据处理方法、装置、计算机设备及存储介质 |
CN112261159B (zh) * | 2020-12-21 | 2021-04-20 | 支付宝(杭州)信息技术有限公司 | 执行跨片事务的方法及系统、主链节点和目标分片节点 |
CN112951357B (zh) * | 2021-03-23 | 2023-05-09 | 电子科技大学 | 一种基于区块链的虚拟医疗资源横向扩展方法 |
CN113973021B (zh) * | 2021-07-13 | 2022-09-27 | 华中科技大学 | 一种图式区块链的网络传输优化装置及方法 |
CN113852662B (zh) * | 2021-08-06 | 2023-09-26 | 华数云科技有限公司 | 一种基于联盟链的边缘云分布式存储系统及方法 |
CN114070887A (zh) * | 2021-11-17 | 2022-02-18 | 安徽中科晶格技术有限公司 | 一种基于图式结构的游走压缩系统及压缩方法 |
CN114499872A (zh) * | 2021-12-24 | 2022-05-13 | 山东浪潮工业互联网产业股份有限公司 | 一种基于工业互联网的星火链跨链方法及设备 |
CN114884734A (zh) * | 2022-05-10 | 2022-08-09 | 中山市当下科技有限公司 | 一种区块链一层数据结构的校验方法 |
CN114666248B (zh) * | 2022-05-18 | 2022-09-06 | 浙商银行股份有限公司 | 一种联盟链分片交易分发方法及装置 |
CN115052001B (zh) * | 2022-06-09 | 2024-04-05 | 上海万向区块链股份公司 | 联盟链的可扩展性解决方法、系统及介质 |
CN114924617B (zh) * | 2022-06-15 | 2024-04-26 | 深圳前海微众银行股份有限公司 | 一种去中心化系统中的时钟同步方法及装置 |
CN115134387B (zh) * | 2022-07-11 | 2023-10-20 | 国网浙江省电力有限公司电力科学研究院 | 可调负荷计量数据上链方法、装置、设备及介质 |
CN116095084B (zh) * | 2023-04-03 | 2023-08-01 | 浙江大学 | 一种基于区块链的智能电网数据存储方法和系统 |
CN116743771B (zh) * | 2023-08-11 | 2023-11-03 | 武汉趣链数字科技有限公司 | 区块链共识方法、装置、电子设备及计算机可读存储介质 |
CN117318914A (zh) * | 2023-09-12 | 2023-12-29 | 上海兴岩信息科技有限公司 | 一种基于终端设备的区块链服务平台 |
CN117014234B (zh) * | 2023-10-07 | 2023-12-08 | 成都创一博通科技有限公司 | 基于区块链的信息加密传输方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019179540A2 (en) * | 2019-07-11 | 2019-09-26 | Alibaba Group Holding Limited | Shared blockchain data storage |
CN110322246A (zh) * | 2019-07-09 | 2019-10-11 | 深圳市网心科技有限公司 | 一种区块链交易信息的优化方法及相关设备 |
CN111327669A (zh) * | 2019-10-30 | 2020-06-23 | 谢卓鹏 | 一种去中心化区块链解决方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105741095A (zh) * | 2016-01-29 | 2016-07-06 | 彭军红 | 一种区块链动态压缩存取方法 |
CN107231299A (zh) * | 2017-06-07 | 2017-10-03 | 众安信息技术服务有限公司 | 一种链路由及实现区块链跨链通信的系统 |
CN108305056B (zh) * | 2018-03-27 | 2023-11-10 | 北京蓝亚盒子科技有限公司 | 基于区块链的数据处理方法、装置及区块链节点网络 |
CN109523260A (zh) * | 2018-11-28 | 2019-03-26 | 段红 | 一种动态节点选举的高并发共识机制 |
CN109711839A (zh) * | 2018-12-13 | 2019-05-03 | 平安科技(深圳)有限公司 | 基于数据压缩的区块链存储方法、装置、设备和存储介质 |
KR102354776B1 (ko) * | 2019-03-04 | 2022-01-25 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 트랜잭션 데이터를 처리를 위해 블록체인 시스템에 제공하기 위한 방법 및 디바이스 |
CN110009201B (zh) * | 2019-03-15 | 2022-11-04 | 南瑞集团有限公司 | 一种基于区块链技术的电力数据链接系统及方法 |
-
2020
- 2020-07-30 CN CN202010752079.9A patent/CN111901350B/zh active Active
- 2020-08-29 WO PCT/CN2020/112304 patent/WO2021174787A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110322246A (zh) * | 2019-07-09 | 2019-10-11 | 深圳市网心科技有限公司 | 一种区块链交易信息的优化方法及相关设备 |
WO2019179540A2 (en) * | 2019-07-11 | 2019-09-26 | Alibaba Group Holding Limited | Shared blockchain data storage |
CN111327669A (zh) * | 2019-10-30 | 2020-06-23 | 谢卓鹏 | 一种去中心化区块链解决方法 |
Non-Patent Citations (2)
Title |
---|
公平且稳定的最小值证明共识机制;余本国等;《计算机工程与应用》;20190815;第56卷(第01期);第63-68页 * |
面向物联网区块链的共识机制优化研究;宋琪杰等;《电信科学》;20200220(第02期);第1-10页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111901350A (zh) | 2020-11-06 |
WO2021174787A1 (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111901350B (zh) | 区块链系统、数据处理方法、计算机设备及存储介质 | |
US11871485B2 (en) | Verification of interactions system and method | |
EP3693886B1 (en) | Optimizations for verification of interactions system and method | |
CN109345386B (zh) | 基于区块链的交易共识处理方法及装置、电子设备 | |
CN109379397B (zh) | 基于区块链的交易共识处理方法及装置、电子设备 | |
CN110597911B (zh) | 一种区块链网络的证书处理方法、装置、电子设备及存储介质 | |
US11468044B2 (en) | Optimizations for verification of interactions system and method using probability density functions | |
CN110268679B (zh) | 基于区块链的认证方法和系统 | |
CN110177124B (zh) | 基于区块链的身份认证方法及相关设备 | |
KR101937220B1 (ko) | 키 관리가 필요없는 블록체인을 기반한 전자서명 또는 메시지 인증 코드를 생성 및 검증 방법 | |
CN113055188B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN111314067A (zh) | 区块存储方法、装置、计算机设备及存储介质 | |
CN113407977B (zh) | 基于聚合签名的跨链扩展方法及系统 | |
CN109840769B (zh) | 基于区块链的存证方法及装置、系统与存储介质 | |
CN111815321A (zh) | 交易提案的处理方法、装置、系统、存储介质和电子装置 | |
Bonneau et al. | Mina: Decentralized cryptocurrency at scale | |
CN112235301B (zh) | 访问权限的验证方法、装置和电子设备 | |
JP2022051652A (ja) | デジタル資産データパケットの信頼性検証システム | |
Frey et al. | Dietcoin: shortcutting the Bitcoin verification process for your smartphone | |
Sgier | Bazo–A Cryptocurrency from Scratch | |
KR102019558B1 (ko) | 내재적 인증서를 사용하는 전자서명에 대한 효율적인 서명 검증 방법 | |
CN112926983A (zh) | 一种基于区块链的存证交易加密系统及方法 | |
CN113300853B (zh) | 金融征信信息管理方法、装置、电子设备及存储介质 | |
CN112019350B (zh) | 区块链的区块验证方法及装置 | |
US20240129143A1 (en) | Dividing data storage and service operations among plural blockchains |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |