CN111556120B - 基于区块链的数据处理方法、装置、存储介质及设备 - Google Patents
基于区块链的数据处理方法、装置、存储介质及设备 Download PDFInfo
- Publication number
- CN111556120B CN111556120B CN202010327100.0A CN202010327100A CN111556120B CN 111556120 B CN111556120 B CN 111556120B CN 202010327100 A CN202010327100 A CN 202010327100A CN 111556120 B CN111556120 B CN 111556120B
- Authority
- CN
- China
- Prior art keywords
- consensus
- transaction data
- node
- node equipment
- block
- 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
- 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]
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- 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
Abstract
本申请实施例公开了一种基于区块链的数据处理方法、装置、存储介质及设备,其中,该方法包括:响应于对交易数据的共识请求,获取所述交易数据的属性信息,从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合,若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识,若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。通过本申请可有效避免共识节点被恶意攻击,提高区块链的安全性。
Description
技术领域
本申请涉及区块链技术领域,尤其涉及一种基于区块链的数据处理方法、装置、存储介质及设备。
背景技术
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了多条交易数据,用于验证其交易数据的有效性(防伪)和生成下一个区块。其中,参与验证交易数据的有效性的设备可以称为共识节点设备,目前主要是通过根据节点设备用于进行权益抵押的电子资源的数量来识别共识节点设备。由于该电子资源的数量在第一时间段内保持不变,使在一定时间段内识别出的共识节点设备均相同,容易导致共识节点被恶意攻击,导致区块链的安全性比较低。
发明内容
本申请实施例所要解决的技术问题在于,提供一种基于区块链的数据处理方法、装置、存储介质及设备,有效避免共识节点被恶意攻击,提高区块链的安全性。
本申请实施例一方面提供一种基于区块链的数据处理方法,包括:
响应于对交易数据的共识请求,获取所述交易数据的属性信息;
从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;
若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。
本申请实施例一方面提供一种基于区块链的数据处理装置,包括:
获取模块,用于响应于对交易数据的共识请求,获取所述交易数据的属性信息;
识别模块,用于从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;
共识模块,用于若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
存储模块,用于若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。
可选的,所述目标区块包括区块头和区块体;所述区块体中包括所述交易数据;所述区块头包括用于对所述区块体中的数据进行验证的参数,所述区块链网络中还包括业务节点设备;所述装置还包括:
同步模块,用于获取所述业务节点设备所属的机构;若所述交易数据与所述业务节点设备所属的机构具有关联关系,则将所述区块头以及所述区块体均同步至所述业务节点设备;若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则将所述区块头同步至所述业务节点设备。
可选的,同步模块,还用于若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则获取所述交易数据所关联的机构对应的公钥;采用所述公钥对所述区块体中的数据进行加密,得到加密后的数据,将所述加密后的数据同步至所述业务节点设备。
可选的,共识模块,具体用于根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量;根据所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备,所述共识节点设备的数量与所述第一数量相同。
可选的,所述交易数据的属性信息包括交易类型,共识模块,具体用于根据所述交易类型预测对所述交易数据进行共识处理所需要的时长;
根据所述时长确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述时长与所述第一数量具有反比例相关关系。
可选的,所述交易数据的属性信息包括所述交易数据所关联的机构,共识模块,具体用于根据所述交易数据所关联的机构确定所述交易数据的重要性优先级;根据所述重要性优先级确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述重要性优先级与所述第一数量具有正比例关关系。
可选的,共识模块,具体用于获取所述区块链网络中区块高度大于高度阈值的区块,作为待选区块;根据所述待选区块的区块生成时间戳生成第一随机数;根据所述第一随机数以及所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
可选的,共识模块,具体用于获取时间段内所共识的历史交易数据的数量,作为第二数量;根据所述第二数量生成第二随机数,根据所述第二随机数以及所述第一数数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
可选的,共识模块,还用于获取各个共识节点设备对所述交易数据进行共识的共识结果;获取共识结果为共识通过的共识节点设备的数量,作为第三数量;若所述第三数量大于数量阈值,则确定所述交易数据被共识通过。
可选的,所述共识结果携带签名信息,共识模块,还用于获取所述各个共识节点设备的公钥;采用所述各个共识节点设备的公钥对对应的签名信息验签;获取共识结果为共识通过,且共识结果所携带的签名信息被验签通过的共识节点设备的数量,作为所述第三数量。
可选的,所述装置还包括发送模块,用于将所述目标区块发送至剩余节点设备,以使所述剩余节点设备对所述目标区块进行存储,所述剩余节点设备可以为所述待选节点设备集合中除被识别为共识节点设备以外的待选节点设备。
本申请一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
上述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行如下步骤:
响应于对交易数据的共识请求,获取所述交易数据的属性信息;
从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;
若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。
本申请实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序包括程序指令,上述程序指令当被处理器执行时,以执行如下步骤:
响应于对交易数据的共识请求,获取所述交易数据的属性信息;
从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;
若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。
本申请中,通过从待选节点设备集合中识别与交易数据的属性信息匹配的待选节点设备,作为共识节点设备,通过共识节点设备对交易数据进行共识;由于不同交易数据对应的属性信息不同,不同交易数据对应的共识节点设备不相同;因此,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即难以提前确定参与本轮共识处理的共识节点设备,可有效避免共识节点设备被恶意攻击,提高区块链的安全性以及共识处理的公平性。另外,通过在交易数据被共识通过时,将交易数据存储至区块链网络中,可避免将无效交易数据存储至区块链网络,提高区块链网络中交易数据的有效性,有利于节省区块链网络中的节点设备的存储空间。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种区块链网络的系统架构图;
图2a是本申请实施例提供的一种基于区块链的数据处理方法的应用场景示意图;
图2b是本申请实施例提供的一种基于区块链的数据处理方法的应用场景示意图;
图3a是本申请实施例提供的一种业务节点设备同步目标区块的应用场景示意图;
图3b是本申请实施例提供的一种业务节点设备同步目标区块的应用场景示意图;
图4是本申请实施例提供的一种三层链的区块链网络的系统架构图;
图5是本申请实施例提供的一种基于区块链的数据处理方法的流程示意图;
图6a是本申请实施例提供的一种识别共识节点设备的应用场景示意图;
图6b是本申请实施例提供的一种识别共识节点设备的应用场景示意图;
图7是本申请实施例提供的一种基于区块链的数据处理装置的结构示意图;
图8是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
基于目前共识节点设备的识别方法,使在一定时间段内识别出的共识节点设备均相同,容易导致共识节点被恶意攻击,导致区块链的安全性比较低的问题。本申请实施例提供一种基于区块链的数据处理方法,通过根据交易数据的属性信息来识别共识节点设备,由于不同交易数据对应的属性信息不同,不同交易数据对应的共识节点设备不相同;因此,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即每轮的共识节点设备不可被提前预知,可有效避免共识节点设备被恶意攻击,提高区块链的安全性。上述区块链是一种分布式数据存储、点对点传输(P2P传输)、共识机制、加密算法等计算机技术的新型应用模式,其本质上是一个去中心化、高度透明的数据库;区块链可由多个借由密码学串接并保护内容的串连交易记录(又称区块)构成,用区块链所串接的分布式账本能让多方有效纪录交易,且可永久查验此交易(不可篡改)。其中,共识机制是指区块链网络中实现不同节点之间建立信任、获取权益的数学算法;也就是说,共识机制是区块链各网络节点共同认可的一种数学算法。
上述所基于区块链的数据处理方法可应用于如图1所示的区块链网络的系统架构中,该区块链网络包括待选节点子网络10。
其中,待选节点子网络10可以是由多个待选节点设备共同组成的一个端到端的去中心化网络,图1中示意性地列出待选节点设备101、待选节点设备102、……、待选节点设备150。每个待选节点设备在进行正常工作时可以接收到交易数据,并基于接收到的交易数据维护区块链。为了保证待选节点子网络内的信息互通,待选节点子网络中的每个待选节点设备之间可以存在通信连接,待选节点设备之间可以通过上述通信连接进行数据传输。例如,当待选节点子网络中的任意待选节点设备接收到交易数据时,共识节点设备对交易数据进行验证,验证通过时,将该交易数据作为区块链中的数据进行存储,使得待选节点子网络中全部待选节点设备上存储的数据均一致。
其中,共识节点设备是被识别用于对交易数据进行共识处理的待选节点设备,此处共识可以是指对交易数据的有效性进行验证。请一并参考图2a中,当待选节点子网络中的待选节点设备接收到待共识的交易数据时,可以获取该交易数据的属性信息,该交易数据的属性信息可包括但不限于:交易数据生成的时间、交易类型、交易数据所属的机构以及交易数据的发生地等等。交易类型可包括但不限于:电子资源转移交易、存证类型、合约创建类型、合约调用类型等。进一步,待选节点设备从待选节点子网络识别与交易数据的属性信息关联的待选节点设备,作为共识节点设备,共识节点设备的数量可以是根据交易数据确定的,或者,可以是固定值,如4、8、10个等,或者共识节点设备的数量可以是根据区块链网络中的待选节点设备的数量确定的。如图2a所示,以识别出4个共识节点设备为例,共识节点设备可以包括待选节点设备101、待选节点设备103、待选节点设备110、待选节点设备125。在获取到共识节点设备后,各个共识节点设备可以对该交易数据进行共识,即各个共识节点设备对该交易数据进行验证,如图2b所示。若该交易数据验证通过,则各个共识节点设备将该目标交易数据上传至区块链网络的目标区块,将目标区块同步至待选节点子网络中未被识别为共识节点设备的待选节点设备。如图2b中该目标区块为区块10001,区块10001包括区块头和区块体,区块头中包括10000H、10001H、10001T等等,其中,10000H代表区块链中区块10000的区块头哈希值,10001H表示根据区块10001的交易数据所生成的哈希值,10001T代表区块10001的区块生成时间戳。区块头中中包括上述交易数据,还可以包括其他交易数据。由于不同交易数据对应的属性信息不同,不同交易数据对应的共识节点设备不相同,因此,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即非法人员难以确定参与本轮共识处理的共识节点设备,可有效避免共识节点设备被恶意攻击,提高区块链的安全性。
可选的,如图1所示,该区块链网络还可包括业务子网络20,该业务子网络20可以包括业务节点设备201、业务节点设备202、……、业务节点设备280。各个业务节点至少与一个待选节点设备之间具有通信连接,业务节点设备用于从待选节点设备中同步交易数据。可选的,图3a所示,业务节点设备可用于从待选节点设备中获取与其关联的交易数据,以及区块链中的各个区块的区块头。假设业务节点设备201与区块10001中的交易数据具有关联关系,业务节点设备202、业务节点设备208均与区块10001中的交易数据不具有关联关系。因此,待选节点设备可以将区块10001的区块头和区块体均同步至业务节点设备201;将区块10001的区块头同步至业务节点设备202、业务节点设备208。假设上述交易数据为用户身份证件数据,业务节点设备201为安全管理部门的业务处理设备,业务节点设备202为企业的业务处理设备,业务节点设备280可以为学校的业务处理设备。由于用户身份证件数据由安全管理部门所管理,因此,可确定业务节点设备201与用户身份证件数据关联,因此,可以将区块10001的区块头和区块体均同步至业务节点设备201。而业务节点设备202、业务节点设备280与用户身份证件数据不关联,为了确保用户身份证件数据的安全性,可将区块10001的区块头同步给业务节点设备202、业务节点设备280。通过在区块链网络中设置业务节点设备,当用户终端需要读取交易数据时,可以从与交易数据关联的业务节点设备上读取交易数据,通过其他业务节点设备对读取的交易数据的有效性进行验证。通过增加业务节点设备,用户终端不需要从待选节点设备中读取交易数据,可避免待选节点设备的网络拥塞,提高数据读取的效率。例如,当用户终端需要读取区块10001中的用户身份证件数据,用户终端可以从业务节点201中读取区块10001的区块体中的交易数据,并从其他节点设备中读取该区块10001的区块头中的哈希值。用户终端可对区块10001的区块体中交易数据进行哈希运算,得到新的哈希值,如果新的哈希值与读取到的哈希值一致,确定区块10001的区块体中的交易数据具有有效性,未被篡改,从区块10001的区块体中交易数据中获取用户身份证件数据。如果新的哈希值与读取到的哈希值不一致,确定区块10001的区块体中的交易数据不具有有效性,即交易数据被篡改,则可以从其他业务节点设备获取用户身份证件数据。
可选的,如图3b所示,业务节点设备可用于从待选节点设备中获取与其关联的交易数据,以及区块链中的各个区块的区块头,从待选节点设备中获取与其不相关联的交易数据的密文。假设业务节点设备201与区块10001中的交易数据具有关联关系,业务节点设备202、业务节点设备208均与区块10001中的交易数据不具有关联关系。因此,待选节点设备可以将区块10001的区块头和区块体均同步至业务节点设备201;采用加密算法对区块10001的区块体中的交易数据进行加密,得到交易数据的密文,将区块10001的区块头以及区块体中交易数据的密文同步至业务节点设备202、业务节点设备280;图3b中以******表示交易数据的密文。这样用户终端可以从任一业务节点设备中读取与其相关的交易数据,如果用户终端读取到交易数据的密文,则可以从待选节点设备中获取该交易数据的解密方式;采用解密方式对交易数据的密文进行解密,得到交易数据。通过增加业务节点设备,不需要从待选节点设备中读取交易数据,可避免待选节点设备的网络拥塞,提高数据读取的效率。其中,加密算法可以是指对称加密算法或非对称加密算法,对称加密算法可以包括但不限于:数据加密标准(Data Encryption Standard,DES)、第三版数据加密标准3DES、三重数据加密算法(Triple Data Encryption Algorithm,TDEA),Blowfish算法、国际数据加密算法(IDEA,International Data Encryption Algorithm)等等。非对称加密算法可包括但不限于:Elgamal算法(一种非对称加密算法)、Rabin算法(一种非对称加密算法)、Diffie-Hellman算法(一种非对称加密算法)、ECC算法(椭圆曲线加密算法)。
其中,业务子网络中的各个业务节点设备可以被部署于同一个地点,如,各个业务节点设备为某个地区的安全管理部门的业务处理设备;或者,各个业务节点设备被部署在多个地点,如各个业务节点设备为某个省的税务局的业务处理设备,以及某个市的税务局的业务处理设备。各个业务节点设备之间可以通过通信网络互连,如,各个业务节点设备之间可建立端到端的通信连接,各个业务节点设备之间可以通过通信连接交互信息。
当目标区块的交易数据与业务节点设备不具有关联关系时,需要对交易数据进行隔离,上述图3a和图3b分别公开了一种对交易数据进行隔离的方式。其中,图3a的隔离方式为物理隔离方式,物理隔离方式是指:当目标区块的交易数据与业务节点设备不具有关联关系时,将目标区块的区块头同步至业务节点设备,即将目标区块中的区块体隔离掉,即不将交易数据同步至业务节点设备(即物理硬件设备)。图3b隔离方式为密码学隔离方式,密码学隔离方式是指:当目标区块的交易数据与业务节点设备不具有关联关系时,通过加密的方式对交易数据进行加密,将加密的交易数据同步至业务节点设备。以上两种交易数据的隔离方式各有优势,物理隔离方式:有利于节省业务节点设备的存储空间,交易数据隔离效果更好;密码学隔离方式:有利于用户终端从业务节点设备中读取交易数据。在实际应用中,共识节点设备可以根据交易数据的交易类型(如保密性等级)或业务节点设备的存储空间大小,灵活选择交易数据的隔离方式。
上述区块链网络具有三层链结构,分别包括待选节点设备层、共识节点设备层、业务节点设备层;待选节点设备层包括多个待选节点设备,共识节点设备层包括多个共识节点,业务节点设备层包括上述业务子网络。共识节点设备层的共识节点设备是:从待选节点设备层中识别用于对交易数据进行共识处理的待选节点设备。如图4所示,该区块链网络包括待选节点子网络10、共识节点设备、业务子网络20,待选节点子网络10属于待选节点设备层,共识节点设备属于共识节点设备层,业务节点设备子网络属于业务节点设备层。共识节点设备包括待选节点设备101、待选节点设备103、待选节点设备110、待选节点设备125,共识节点设备是从待选节点设备层中识别出的。通过在区块链网络中增加待选节点设备层,可有效避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题,提高区块链的安全性。同时,本申请中不是将所有的待选节点设备作为共识节点设备,可避免共识节点设备过多,导致共识处理的复杂度比较高,效率比较低的问题;通过识别共识节点设备,可避免共识节点设备过少,导致共识处理趋于中心化,共识处理的公平性比较低的问题。另外,本申请中通过在区块链网络中增加业务节点设备层,用户终端可从业务节点设备层的业务节点设备中读取交易数据,不需要从待选节点设备中读取交易数据,可避免待选节点设备的网络拥塞,提高数据读取的效率。
上述,待选节点设备、业务节点设备可以是计算机设备,具体可以是一台独立的服务器、或由若干台服务器组成的服务器集群、或云计算中心、平板电脑、笔记本电脑、掌上电脑、智能音响、移动互联网设备(MID,mobile internet device)等等。
基于上述描述,本申请实施例提出的基于区块链的数据处理方法可参见图5,该方法应由图1中区块链网络中的第一待选节点设备执行;即该第一待选节点设备可以为待选节点子网络中的任一待选节点设备,该第一待选节点设备可以是指计算机设备,如图5所示,该方法包括步骤S101-S104。
S101、响应于对交易数据的共识请求,获取该交易数据的属性信息。
第一待选节点设备接收到交易数据,可以生成对该交易数据的共识请求,获取该交易数据的属性信息,该共识请求用于指示第一待选节点设备根据交易数据的属性信息对该交易数据进行共识。此处交易数据可以是指待上链的数据,如电子凭证数据(发票、身份凭证换手机)、用户身份信息、物品或服务交易数据;或者,交易数据可以是指待执行任务对应的数据,待执行任务可以是指转移电子资源、报销电子凭证、更新用户身份信息等等。该交易数据的属性信息可包括但不限于:交易数据生成的时间、交易类型、交易数据所属的机构以及交易数据的发生地等等。
S102、从该区块链网络的待选节点设备集合中识别与该交易数据的属性信息匹配的待选节点设备,作为共识节点设备,该待选节点设备集合中包括至少两个待选节点设备,该第一待选节点设备属于该待选节点设备集合。
第一待选节点设备可以从该区块链网络的待选设备集合中识别与该交易数据的属性信息匹配的待选节点设备,作为共识节点设备,该待选节点设备集合属于图1中待选节点设备子网络中的待选节点设备。具体的,第一待选节点设备可以根据交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量,根据第一数量从待选节点设备集合中识别待选节点设备,作为共识节点设备。或者,第一待选节点设备可根据该交易数据的属性信息生成随机数,根据随机数从待选节点设备集合中识别待选节点设备,作为共识节点设备。例如,根据交易数据的属性信息生成的随机数为5,第一待选节点设备可获取各个共识节点设备的序号,可以将待选节点设备集合中序号为5的倍数的待选节点设备,作为共识节点设备。由于不同交易数据对应的属性信息不同,因此,不同交易数据对应的共识节点设备不相同,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即难以提前确定参与共识处理的共识节点设备,可有效避免共识节点设备被恶意攻击,提高区块链的安全性以及共识处理的公平性。不是将所有的待选节点设备作为共识节点设备,可避免共识节点设备过多,导致共识处理的复杂度比较高,效率比较低的问题;通过识别共识节点设备,可避免共识节点设备过少,导致共识处理趋于中心化,共识处理的公平性比较低的问题。
S103、若该第一待选节点设备被识别为共识节点设备,则对该交易数据进行共识。
该第一待选节点设备被识别为共识节点设备,各个共识节点设备分别对该交易数据进行共识,即各个共识节点设备分别验证该交易数据的有效性。其中,验证交易数据的有效性可以是指验证交易数的真实性、完整性、重复性等等;交易数据具有有效性是指交易数据具有真实性和完整性、不具有重复性;交易数据不具有有效性是指交易数据不具有真实性和完整性、具有重复性。真实性可以验证交易数据的是否是伪造,或被篡改;完整性可以是指交易数据是否缺少信息,重复性是指验证交易数据是否已经被共识过的交易数据。例如,该交易数据为电子凭证数据,如发票,如果共识节点设备检测该发票不包括发票编号、开票方的企业信息、收票方信息、开票时间、开票金额等中的至少一种,则可确定该发票不具有完整性;如果共识节点设备检测该发票包括发票编号、开票方的企业信息、收票方信息、开票时间以及开票金额等,则可确定该发票具有完整性。若根据该开票方的企业信息查询到开票企业未注册,或者,发票的编号不满足发票的编号规则等等,则可确定该发票不具有真实性;若根据该开票方的企业信息查询到开票企业已注册,或者,发票的编号满足发票的编号规则等等,则可确定该发票具有真实性。若根据历史共识日志确定发票已经被共识,则确定该发票具有重复性;若根据历史共识日志确定发票未被共识,则确定该发票不具有重复性;若根据历史共识日志确定发票被共识,则确定该发票不具有重复性。第一待选节点设备可以接其他共识节点设备的共识结果,根据自身的共识结果和其他共识节点设备的共识结果,确定该交易数据的共识结果。若共识结果为共识通过的共识节点设备的数量大于数量阈值,表明所有共识节点设备的共识结果均为共识通过,或者,大多数共识节点设备的共识结果为共识通过,则确定该交易数据被共识通过;若共识结果为共识通过的共识节点设备的数量小于或等于数量阈值,表明所有共识节点设备的共识结果均为共识未通过,或者,大多数共识节点设备的共识结果为共识未通过,则确定该交易数据被共识通过。共识结果为共识通过是指交易数据具有有效性;共识结果为共识未通过是指交易数据不具有有效性。
S104、若该交易数据被共识通过,则将该交易数据存储至该区块链网络的目标区块中。
如果该交易数据被共识通过,表明该交易数据具有有效性,第一待选节点设备可以将该交易数据存储至该区块链网络的目标区块中;如果交易数据未被共识通过,表明该交易数据不具有有效性,第一待选节点设备可以删除该交易数据。这样可避免将无效交易数据存储至区块链网络,提高区块链网络中数据的有效性,有利于节省第一待选节点设备的存储空间。
本申请中,通过从待选节点设备集合中识别与交易数据的属性信息匹配的待选节点设备,作为共识节点设备,通过共识节点设备对交易数据进行共识;由于不同交易数据对应的属性信息不同,不同交易数据对应的共识节点设备不相同;因此,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即难以提前确定参与本轮共识处理的共识节点设备,可有效避免共识节点设备被恶意攻击,提高区块链的安全性以及共识处理的公平性。另外,通过在交易数据被共识通过时,将交易数据存储至区块链网络中,可避免将无效交易数据存储至区块链网络,提高区块链网络中交易数据的有效性,有利于节省区块链网络中的节点设备的存储空间。
可选的,该目标区块包括区块头和区块体;该区块体中包括该交易数据;该区块头包括用于对该区块体中的数据进行验证的参数,此处参数可以包括哈希值,区块生成时间戳、区块高度等等,哈希值可用于验证目标区块中区块体中的交易数据是否被篡改。该区块链网络中还包括业务节点设备;该方法可包括如下步骤s11~s13。
s11、获取该业务节点设备所属的机构。
s12、若该交易数据与该业务节点设备所属的机构具有关联关系,则将该区块头以及该区块体均同步至该业务节点设备。
s13、若该交易数据与该业务节点设备所属的机构不具有关联关系,则将该区块头同步至该业务节点设备。
在步骤s11~s13中,主要是第一待选节点设备将目标区块同步至业务节点设备;具体的,第一待选节点设备可以根据业务节点设备的属性信息确定该业务节点设备所属的机构;业务节点设备的属性信息包括业务节点所在的位置、网际互连协议(InternetProtocol,IP)、业务节点设备中所存储的交易数据;业务节点设备所属的机构可包括但不限于:民政部门、安全管理部门、税务局、企业单位、个体户等等。进一步,可以根据交易数据中的字段或交易数据的生成地址,确定与交易数据关联的机构,如该交易数据中包括字段身份ID,则确定与该交易数据关联的机构为民政部门、安全管理部门等。如果交易数据所关联的机构与业务节点设备所属的机构匹配,确定该交易数据与该业务节点设备所属的机构具有关联关系,也即交易数据与该业务节点设备具有关联关系,将该区块头以及该区块体均同步至该业务节点设备。通过将区块体和区块头同步至业务节点设备,有利于用户终端从业务节点设备读取交易数据,不需要从待选节点设备中读取交易数据,可避免待选节点设备的网络拥塞,提高读取交易数据的效率。如果交易数据所关联的机构与业务节点设备所属的机构不匹配,确定该交易数据与该业务节点设备所属的机构不具有关联关系,也即交易数据与该业务节点设备不具有关联关系,将该区块头同步至该业务节点设备。通过将区块头同步至业务节点设备,有利于对各个业务节点设备中记录的交易数据进行验证;避免将交易数据同步至非关联的业务节点设备,可提高交易数据的安全性。
其中,交易数据所关联的机构与业务节点设备所属的机构匹配可以是指:交易数据所关联的机构与业务节点设备所属的机构相同,或者,交易数据所关联的机构与业务节点设备所属的机构具有上下级关系等。如业务节点设备所属的机构为交易数据所关联的机构的上级,如业务节点设备所属的机构为A省税务局、交易数据所关联的机构为B市税务局,B市属于A省。交易数据所关联的机构与业务节点设备所属的机构不匹配可以是指:交易数据所关联的机构与业务节点设备所属的机构不相同,且,交易数据所关联的机构与业务节点设备所属的机构不具有上下级关系。另外,此处第一待选节点设备将目标区块同步至业务节点设备的具体实现方式,可参见图3a,重复之处不再赘述。
在此实施例中,该方法可包括如下步骤s21~s22。
s21、若该交易数据与该业务节点设备所属的机构不具有关联关系,则获取该交易数据所关联的机构对应的公钥。
s22、采用该公钥对该区块体中的数据进行加密,得到加密后的数据,将该加密后的数据同步至该业务节点设备。
在步骤s21之前,用户终端可以采用上述非对称加密算法生成密钥对,该密钥对包括公钥和私钥,公钥用于标识用户终端的交易地址,以及用于对交易数据进行加密,私钥用于用户终端对交易数据进行签名。在创建密钥对之后,用户终端可将密钥对中的公钥上传至区块链网络,以使得区块链网络将该公钥作为用户终端的交易地址;而私钥由用户终端保管。用户终端将公钥上传至区块链网络后,则表明用户终端在区块链网络中完成了身份注册,此时用户终端具有在区块链网络中进行资产交易以及信息查看的资格。此处用户终端属于上述交易数据关联的机构。
在步骤s21~s22中,主要是第一待选节点设备将目标区块同步至业务节点设备;具体的,若该交易数据与该业务节点设备所属的机构不具有关联关系,则第一待选节点设备可从区块链网络中获取该交易数据所关联的机构对应的公钥,该公钥可以是指用户终端所生成的公钥,采用该公钥对该区块体中的数据进行加密,得到加密后的数据,将该加密后的数据同步至该业务节点设备。具有该公钥对应的私钥的用户终端才能对该加密后的交易数据进行解密,上述用户终端具有该公钥对应的私钥;因此,该用户终端能够对该加密后的交易数据进行解密,即该交易数据关联的机构才能对该加密后的交易数据进行解密。可避免交易数据被不相关联的机构读取,提高交易数据的安全性。另外,第一待选节点设备将目标区块同步至业务节点设备的具体实现方式,可参见图3b,重复之处不再赘述。
在此实施例中,该方法可包括如下步骤s31~s32。
s31、根据该交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量。
s32、根据该第一数量从该待选节点设备集合中识别待选节点设备,作为共识节点设备,该共识节点设备的数量与该第一数量相同。
在步骤s31~s32中,由于共识节点的数量过多,每个共识节点设备共识处理的速度不一致,先共识完成的共识节点设备,需要等待共识未完成的共识节点设备,导致共识处理的效率比较低;如果共识节点设备的数量过少,容易共识结果趋于中心化,中心化可以是指共识结果由少数共识节点设备决定,导致共识处理的公平性比较低。因此,可根据交易数据来确定用于进行共识处理的共识节点设备的数量。具体的,第一待选节点设备可以根据该交易数据的属性信息确定对该交易数据进行共识处理的处理信息,处理信息可包括共识处理的难度等级、共识处理所需要的时长、交易数据的重要性优先级等中的至少一种。进一步,可根据处理信息用于进行共识处理的共识节点设备的数量,作为第一数量,根据该第一数量从该待选节点设备集合中随机识别待选节点设备,作为共识节点设备。通过根据交易数据确定用于进行共识处理的共识节点设备的数量,可避免共识节点设备的数量过多以及过少的问题,提高共识处理的效率,以及共识处理的公平性。另外,通过第一数量来识别共识节点设备,表明共识节点设备不可被提前预知,即非法人员难以确定哪些待选节点设备为共识设备,可有效避免对共识节点设备被恶意攻击,提高共识节点设备的安全性,提高共识处理的公平性以及区块链的安全性。
在此实施例中,该交易数据的属性信息包括交易类型,步骤s31可包括如下步骤s41~s42。
s41、根据该交易类型预测对该交易数据进行共识处理所需要的时长。
s42、根据该时长确定用于进行共识处理的共识节点设备的数量,作为该第一数量,该时长与该第一数量具有反比例相关关系。
在步骤s41~s42中,第一待选节点设备可获取该交易类型对应历史交易数据进行共识处理的所需要的历史时长,根据历史时长预测对该交易数据进行共识处理所需要的时长;该时长可以是指:各个共识节点设备对交易数据进行共识处理的平均时长、最大时长或最小时长。进一步,根据该时长确定用于进行共识处理的共识节点设备的数量,作为该第一数量;该时长与该第一数量具有反比例相关关系。即该时长越长,如果共识节点设备较多,各个共识节点设备共识处理的效率差异较大,先共识完成的共识节点设备,需要等待共识未完成的共识节点设备较长时间;如果共识节点设备较少,可有效较低各个共识节点设备共识处理的效率差异,可缩短先共识完成的共识节点设备,等待共识未完成的共识节点设备的时间。因此,该时长越长,第一数量越小,这样有利于提高共识处理的效率。如果时长越短,先共识完成的共识节点设备,需要等待共识未完成的共识节点设备较短时间,因此,第一数量可以越大,以提高共识处理的公平性和准确性。
可选的,该交易数据的属性信息包括该交易数据所关联的机构,步骤s31可包括如下步骤s51~s52。
s51、根据该交易数据所关联的机构确定该交易数据的重要性优先级。
s52、根据该重要优先级确定用于进行共识处理的共识节点设备的数量,作为该第一数量,该重要等级与该第一数量具有正比例关关系。
在步骤s51~s52中,第一待选节点设备可根据该交易数据所关联的机构确定该交易数据的重要性优先级,重要性优先级用于指示交易数据的重要性、私密性等等,即重要性优先级越高,交易数据的重要性、私密性越高;重要性优先级越低,交易数据的重要性、私密性越低。例如,待选节点设备中包括机构与交易数据重要性优先级的映射表,该映射表如表1所示,表1中,包括机构a、机构b以及机构c;机构a的重要性优先级为一级、机构b的重要性优先级为二级、机构c的重要性优先级为三级;即机构a的重要性优先级最高、机构c的重要性优先级最低,机构b的重要性优先级位于机构a的重要性优先级和机构c的重要性优先级之间。待选节点设备可以根据表1获取交易数据所关联的机构确定机构的重要性优先级,将机构的重要优先级作为交易数据的重要性优先级。
表1:
机构a | 一级 |
机构b | 二级 |
机构c | 三级 |
…… | …… |
进一步,可根据该重要优先级确定用于进行共识处理的共识节点设备的数量,作为该第一数量,该重要性优先级与该第一数量具有正比例关关系。即重要性优先级越高,第一数量越大,确保重要性、私密性高的交易数据的共识处理的准确性,提高此类交易数据的安全性。即重要性优先级越低,第一数量越小,确保重要性、私密性低的交易数据的共识处理效率。
在此实例中,步骤s32可包括如下步骤s61~s63。
s61、获取该区块链网络中区块高度大于高度阈值的区块,作为待选区块。
s62、根据该待选区块的区块生成时间戳生成第一随机数。
s63、根据该第一随机数以及该第一数量从该待选节点设备集合中识别待选节点设备,作为共识节点设备。
在步骤s61~s63中,第一待选节点设备可根据时间戳来识别共识节点设备,具体的,可获取该区块链网络中区块高度大于高度阈值的区块,作为待选区块,待选区块的数量可以为一个或多个。进一步,根据该待选区块的区块生成时间戳生成第一随机数,当待选区块的数量为一个时,可以采用随机算法对该待选区块的区块生成时间戳生成第一随机数;此处随机数算法可以包括但不限于:可验证随机函数(Verifiable Random Function,VRF)、Commit Reveal(一种在规定时间内多个终端参与产生随机数的算法)和BLS(签名算法)、阈值签名机制(Threshold Signature Scheme)等等。当待选区块的数量为至少两个时,可从至少两个待选区块中选择区块高度最大或最小的待选区块,对应的区块生成时间戳生成第一随机数;或者,对至少两个待选区块的区块生成时间戳进行平均化处理,根据平均化处理后的时间戳生成第一随机数;或者,对至少两个待选区块的区块生成时间戳进行拼接处理,根据拼接处理后的时间戳生成第一随机数。由于各个待选节点设备获取到的区块生成时间戳均相同,因此,通过根据区块生成时间戳生成第一随机数,使各个待选节点设备所生成的第一随机数均相同,有利于各个待选节点设备所生成的第一随机数保持一致,进而,有利于各个待选节点设备所识别出的共识节点设备保持一致。在生成第一随机数后,根据该第一随机数以及该第一数量从该待选节点设备集合中识别待选节点设备,作为共识节点设备,具体的,可以获取待选节点设备的序号,各个待选节点设备的序号均不相同,各个待选节点设备的序号可以是在每轮共识处理之前生成的,针对同一个待选节点设备,不同时间对应的序号可以不同。将序号为第一随机数的整数倍的待选节点设备,作为共识节点设备;或者,将序号为第一随机数的公约数的待选节点设备,作为共识节点设备;或者,将序号与第一随机数之间的差值小于差值阈值的待选节点设备,作为共识节点设备。通过根据随机数来识别共识节点设备,表明共识节点设备不可被提前预知,即非法人员难以确定哪些待选节点设备为共识设备,可有效避免对共识节点设备被恶意攻击,提高共识节点设备的安全性,提高共识处理的公平性以及区块链的安全性。例如,如图6a所示,第一待选节点可以为待选节点设备101,待选节点设备101可以根据交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量,第一数量为4;从区块链网络中获取区块高度大于高度阈值的区块,作为待选区块,该待选区块可以为区块链网络中区块高度最大的区块。获取该待选区块的区块生成时间戳,如该区块生成时间戳为8:15:23,可采用随机算法对区块生成时间戳进行随机运算,得到第一随机数,该第一随机数可以为5。第一待选节点设备可以从待选节点设备集合中识别序号为5的整数倍的待选节点设备,即包括:待选节点设备105、待选节点设备110、待选节点设备115、待选节点设备120、……、待选节点设备150。可见,此处待选节点设备集合中识别序号为5的整数倍的待选节点设备的数量大于4个,因此,可以将待选节点设备集合中识别序号为5的整数倍的待选节点设备中,序号最大的4个待选节点设备,作为共识节点设备;或者,将待选节点设备集合中识别序号为5的整数倍的待选节点设备中,序号最小的4个待选节点设备,作为共识节点设备。图6a中将待选节点设备集合中识别序号为5的整数倍的待选节点设备中,序号最小的4个待选节点设备,作为共识节点设备,即共识节点设备可以包括待选节点设备105、待选节点设备110、待选节点设备115以及待选节点设备120。
可选的,步骤s32可包括如下步骤s71~s72。
s71、获取时间段内所共识的历史交易数据的数量,作为第二数量。
s72、根据该第二数量生成第二随机数,根据该第二随机数以及该第一数数量从该待选节点设备集合中识别待选节点设备,作为共识节点设备。
在步骤s71~s73中,第一待选节点设备可根据交易数据来识别共识节点设备,具体的,获取时间段内的共识日志数据,时间段内可以是指近一周、一个月或一天等等,根据共识日志数据获取时间段内所共识的历史交易数据的数量,作为第二数量,根据该第二数量生成第二随机数。由于各个待选节点设备获取到的第二数量均相同,因此,通过根据第二数量生成第二随机数,使各个待选节点设备所生成的第二随机数均相同,有利于各个待选节点设备所生成的第一随机数保持一致,进而,有利于各个待选节点设备所识别出的共识节点设备保持一致。进一步,可根据该第二随机数以及该第一数数量从该待选节点设备集合中识别待选节点设备,作为共识节点设备。具体的,可以获取待选节点设备的序号,将序号为第二随机数的整数倍的待选节点设备,作为共识节点设备;或者,将序号为第二随机数的公约数的待选节点设备,作为共识节点设备;或者,将序号与第二随机数之间的差值小于差值阈值的待选节点设备,作为共识节点设备。通过根据随机数来识别共识节点设备,表明共识节点设备不可被提前预知,即非法人员难以确定哪些待选节点设备为共识设备,可有效避免对共识节点设备被恶意攻击,提高共识节点设备的安全性,提高共识处理的公平性以及区块链的安全性。例如,如图6b所示,第一待选节点可以为待选节点设备101,待选节点设备101可以根据交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量,第一数量为4;从近一周内所共识的历史交易数据的数量,作为第二数量,如该第二数量为10,可采用随机算法对第二数量进行随机运算,得到第二随机数,如该第二随机数可以为7。第一待选节点设备可以从待选节点设备集合中识别序号为7的整数倍的待选节点设备,即包括:待选节点设备107、……、待选节点设备126、待选节点设备133、待选节点设备140、待选节点设备147。可见,此处待选节点设备集合中识别序号为7的整数倍的待选节点设备的数量大于4个,因此,可以将待选节点设备集合中识别序号为7的整数倍的待选节点设备中,序号最大的4个待选节点设备,作为共识节点设备;或者,将待选节点设备集合中识别序号为7的整数倍的待选节点设备中,序号最小的4个待选节点设备,作为共识节点设备。图6b中将待选节点设备集合中识别序号为7的整数倍的待选节点设备中,序号最大的4个待选节点设备,作为共识节点设备,即共识节点设备可以包括待选节点设备126、待选节点设备133、待选节点设备140、待选节点设备147。
可选的,该方法还可包括如下步骤s81~s82。
s81、获取各个共识节点设备对该交易数据进行共识的共识结果。
s82、获取共识结果为共识通过的共识节点设备的数量,作为第三数量;若该第三数量大于数量阈值,则确定该交易数据被共识通过。
在步骤s81~s82中,各个共识节点设备共识完成后,可对共识结果进行广播,第一待选节点设备可获取各个共识节点设备所广播的共识结果;获取共识结果为共识通过的共识节点设备的数量,作为第三数量。若该第三数量大于数量阈值,表明大多数节点设备的共识结果为共识通过,则确定该交易数据被共识通过;若该第三数量小于或等于数量阈值,表明大多数节点设备的共识结果为共识未通过,则确定该交易数据未被共识通过。数量阈值可以是根据共识节点设备的数量确定的,例如,共识节点设备的数量为100个,则数量阈值可以为51。
在此实施例中,该共识结果携带签名信息,步骤s81可包括如下步骤s91~s92。
s91、获取该各个共识节点设备的公钥;采用该各个共识节点设备的公钥对对应的签名信息验签。
s92、获取共识结果为共识通过,且共识结果所携带的签名信息被验签通过的共识节点设备的数量,作为该第三数量。
在步骤s91之前,各个共识节点设备可以对共识结果进行哈希运算,得到共识结果的哈希值,采用各个共识节点设备自身的私钥对共识结果的哈希值进行加密,得到携带签名信息的共识结果,将携带签名信息的共识结果、共识结果(即原文)广播给各个共识节点设备。
在步骤s91~s92中,第一待选节点设备可以对共识结果进行哈希运算,得到第一哈希值,采用共识节点设备对应的公钥对携带签名信息的共识结果进行解密,得到第二哈希值。如果第一哈希值与第二哈希相同,确定该共识节点设备的共识结果验签通过,表明该共识结果为共识节点设备所发送,且该共识结果未被篡改;如果第一哈希值与第二哈希不相同,确定该共识节点设备的共识结果未验签通过,表明该共识结果不是共识节点设备所发送,或该共识结果被篡改。因此,可获取共识结果为共识通过,且共识结果所携带的签名信息被验签通过的共识节点设备的数量,作为该第三数量,可避免非法节点设备冒充共识节点设备,或者,可避免共识结果被篡改,提高共识结果的有效性以及准确性。
可选的,该方法还可包括:将该目标区块发送至剩余节点设备,以使该剩余节点设备对该目标区块进行存储,该剩余节点设备可以为该待选节点设备集合中除被识别为共识节点设备以外的待选节点设备。
第一待选节点设备可以将该目标区块发送至剩余节点设备,以使该剩余节点设备对该目标区块进行存储,通过将目标区块同步至剩余节点设备,实现由剩余节点设备共同见证共识处理过程,提高共识处理的透明性以及有效性。
请参见图7,是本申请实施例提供的一种基于区块链的数据处理装置的结构示意图。所述基于区块链的数据处理装置可以是运行于计算机设备中的一个计算机程序(包括程序代码),例如该基于区块链的数据处理装置为一个应用软件;该装置可以用于执行本申请实施例提供的方法中的相应步骤。如图7所示,该基于区块链的数据处理装置可以包括:
获取模块701,用于响应于对交易数据的共识请求,获取所述交易数据的属性信息;
识别模块702,用于从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;
共识模块703,用于若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
存储模块704,用于若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。
可选的,所述目标区块包括区块头和区块体;所述区块体中包括所述交易数据;所述区块头包括用于对所述区块体中的数据进行验证的参数,所述区块链网络中还包括业务节点设备;所述装置还包括:
同步模块705,用于获取所述业务节点设备所属的机构;若所述交易数据与所述业务节点设备所属的机构具有关联关系,则将所述区块头以及所述区块体均同步至所述业务节点设备;若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则将所述区块头同步至所述业务节点设备。
可选的,同步模块705,还用于若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则获取所述交易数据所关联的机构对应的公钥;采用所述公钥对所述区块体中的数据进行加密,得到加密后的数据,将所述加密后的数据同步至所述业务节点设备。
可选的,共识模块703,具体用于根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量;根据所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备,所述共识节点设备的数量与所述第一数量相同。
可选的,所述交易数据的属性信息包括交易类型,共识模块703,具体用于根据所述交易类型预测对所述交易数据进行共识处理所需要的时长;根据所述时长确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述时长与所述第一数量具有反比例相关关系。
可选的,所述交易数据的属性信息包括所述交易数据所关联的机构,共识模块703,具体用于根据所述交易数据所关联的机构确定所述交易数据的重要性优先级;根据所述重要性优先级确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述重要性优先级与所述第一数量具有正比例关关系。
可选的,共识模块703,具体用于获取所述区块链网络中区块高度大于高度阈值的区块,作为待选区块;根据所述待选区块的区块生成时间戳生成第一随机数;根据所述第一随机数以及所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
可选的,共识模块703,具体用于获取时间段内所共识的历史交易数据的数量,作为第二数量;根据所述第二数量生成第二随机数,根据所述第二随机数以及所述第一数数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
可选的,共识模块703,还用于获取各个共识节点设备对所述交易数据进行共识的共识结果;获取共识结果为共识通过的共识节点设备的数量,作为第三数量;若所述第三数量大于数量阈值,则确定所述交易数据被共识通过。
可选的,所述共识结果携带签名信息,共识模块703,还用于获取所述各个共识节点设备的公钥;采用所述各个共识节点设备的公钥对对应的签名信息验签;获取共识结果为共识通过,且共识结果所携带的签名信息被验签通过的共识节点设备的数量,作为所述第三数量。
可选的,所述装置还包括:发送模块706,用于将所述目标区块发送至剩余节点设备,以使所述剩余节点设备对所述目标区块进行存储,所述剩余节点设备可以为所述待选节点设备集合中除被识别为共识节点设备以外的待选节点设备。
根据本申请的一个实施例,图5所示的基于区块链的数据处理方法所涉及的步骤可由图7所示的数据处理装置中的各个模块来执行。例如,图5中所示的步骤S101可由图7中的获取模块701来执行,图5中所示的步骤S102可由图7中的识别模块702来执行;图5中所示的步骤S103可由图7中的共识模块703来执行,图5中所示的步骤S104可由图7中的存储模块704来执行。
根据本申请的一个实施例,图7所示的数据处理装置中的各个模块可以分别或全部合并为一个或若干个单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个子单元,可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述模块是基于逻辑功能划分的,在实际应用中,一个模块的功能也可以由多个单元来实现,或者多个模块的功能由一个单元实现。在本申请的其它实施例中,基于区块链的数据处理装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算机设备上运行能够执行如图5中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图7中所示的数据处理装置,以及来实现本申请实施例的基于区块链的数据处理方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请中,通过从待选节点设备集合中识别与交易数据的属性信息匹配的待选节点设备,作为共识节点设备,通过共识节点设备对交易数据进行共识;由于不同交易数据对应的属性信息不同,不同交易数据对应的共识节点设备不相同;因此,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即难以提前确定参与本轮共识处理的共识节点设备,可有效避免共识节点设备被恶意攻击,提高区块链的安全性以及共识处理的公平性。另外,通过在交易数据被共识通过时,将交易数据存储至区块链网络中,可避免将无效交易数据存储至区块链网络,提高区块链网络中交易数据的有效性,有利于节省区块链网络中的节点设备的存储空间。
请参见图8,是本申请实施例提供的一种计算机设备的结构示意图。如图8所示,上述计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非易失性的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图8所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图8所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
响应于对交易数据的共识请求,获取所述交易数据的属性信息;
从所述区块链网络的待选节点设备集合中识别与所述交易数据的属性信息匹配的待选节点设备,作为共识节点设备,所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;
若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中。
可选的,所述目标区块包括区块头和区块体;所述区块体中包括所述交易数据;所述区块头包括用于对所述区块体中的数据进行验证的参数,所述区块链网络中还包括业务节点设备;处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取所述业务节点设备所属的机构;
若所述交易数据与所述业务节点设备所属的机构具有关联关系,则将所述区块头以及所述区块体均同步至所述业务节点设备;
若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则将所述区块头同步至所述业务节点设备。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则获取所述交易数据所关联的机构对应的公钥;
采用所述公钥对所述区块体中的数据进行加密,得到加密后的数据,将所述加密后的数据同步至所述业务节点设备。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量;
根据所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备,所述共识节点设备的数量与所述第一数量相同。
可选的,所述交易数据的属性信息包括交易类型,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
根据所述交易类型预测对所述交易数据进行共识处理所需要的时长;
根据所述时长确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述时长与所述第一数量具有反比例相关关系。
可选的,所述交易数据的属性信息包括所述交易数据所关联的机构,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
根据所述交易数据所关联的机构确定所述交易数据的重要性优先级;
根据所述重要性优先级确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述重要性优先级与所述第一数量具有正比例关关系。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取所述区块链网络中区块高度大于高度阈值的区块,作为待选区块;
根据所述待选区块的区块生成时间戳生成第一随机数;
根据所述第一随机数以及所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取时间段内所共识的历史交易数据的数量,作为第二数量;
根据所述第二数量生成第二随机数,根据所述第二随机数以及所述第一数数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取各个共识节点设备对所述交易数据进行共识的共识结果;
获取共识结果为共识通过的共识节点设备的数量,作为第三数量;若所述第三数量大于数量阈值,则确定所述交易数据被共识通过。
可选的,所述共识结果携带签名信息,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
获取所述各个共识节点设备的公钥;采用所述各个共识节点设备的公钥对对应的签名信息验签;
获取共识结果为共识通过,且共识结果所携带的签名信息被验签通过的共识节点设备的数量,作为所述第三数量。
可选的,处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
将所述目标区块发送至剩余节点设备,以使所述剩余节点设备对所述目标区块进行存储,所述剩余节点设备可以为所述待选节点设备集合中除被识别为共识节点设备以外的待选节点设备。
应当理解,本申请实施例中所描述的计算机设备1000可执行前文图5所对应实施例中对上述基于区块链的数据处理方法的描述,也可执行前文图7所对应实施例中对上述基于区块链的数据处理装置的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
本申请中,通过从待选节点设备集合中识别与交易数据的属性信息匹配的待选节点设备,作为共识节点设备,通过共识节点设备对交易数据进行共识;由于不同交易数据对应的属性信息不同,不同交易数据对应的共识节点设备不相同;因此,可避免每轮识别出的共识节点设备均相同,导致共识节点设备被恶意攻击的问题;即难以提前确定参与本轮共识处理的共识节点设备,可有效避免共识节点设备被恶意攻击,提高区块链的安全性以及共识处理的公平性。另外,通过在交易数据被共识通过时,将交易数据存储至区块链网络中,可避免将无效交易数据存储至区块链网络,提高区块链网络中交易数据的有效性,有利于节省区块链网络中的节点设备的存储空间。
此外,这里需要指出的是:本申请实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的基于区块链的数据处理装置所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图5对应实施例中对上述基于区块链的数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本申请所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本申请方法实施例的描述。
作为示例,上述程序指令可被部署在一个计算机设备上执行,或者被部署位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链网络。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁盘、光盘、只读存储器(Read-Only Memory,ROM)或随机存储器(Random Access Memory,RAM)等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (12)
1.一种基于区块链的数据处理方法,所述方法由区块链网络中的第一待选节点设备执行,其特征在于,包括:
响应于对交易数据的共识请求,获取所述交易数据的属性信息;
根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量;
根据所述第一数量和目标随机数从待选节点设备集合中识别待选节点设备,作为共识节点设备,所述共识节点设备的数量与所述第一数量相同;所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;所述目标随机数为第一随机数或第二随机数,所述第一随机数是根据所述区块链网络中区块高度大于高度阈值的区块对应的区块生成时间戳随机生成的,所述第二随机数是时间段内所共识的历史交易数据的数量随机生成的;
若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中;
将所述目标区块的区块体和区块头同步至,所述区块链网络中所属的机构与所述交易数据具有关联关系的业务节点设备,将所述目标区块的区块头同步至,所述区块链网络中所属的机构与所述交易数据不具有关联关系的业务节点设备;所述区块体中包括所述交易数据,所述区块头包括用于对所述区块体中的数据进行验证的参数,所述区块链网络中所属的机构与所述交易数据具有关联关系的业务节点设备用于将所述目标区块的区块体中的所述交易数据发送至终端,所述区块链网络中所属的机构与所述交易数据不具有关联关系的业务节点设备用于在所述终端获取到所述交易数据的过程中,根据所述目标区块的区块头中的参数验证所述交易数据的有效性。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
若所述交易数据与所述业务节点设备所属的机构不具有关联关系,则获取所述交易数据所关联的机构对应的公钥;
采用所述公钥对所述区块体中的数据进行加密,得到加密后的数据,将所述加密后的数据同步至所述业务节点设备。
3.如权利要求1所述的方法,其特征在于,所述交易数据的属性信息包括交易类型,所述根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量,包括:
根据所述交易类型预测对所述交易数据进行共识处理所需要的时长;
根据所述时长确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述时长与所述第一数量具有反比例相关关系。
4.权利要求1所述的方法,其特征在于,所述交易数据的属性信息包括所述交易数据所关联的机构,所述根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量,包括:
根据所述交易数据所关联的机构确定所述交易数据的重要性优先级;
根据所述重要性优先级确定用于进行共识处理的共识节点设备的数量,作为所述第一数量,所述重要性优先级与所述第一数量具有正比例相关关系。
5.权利要求2或3所述的方法,其特征在于,所述根据所述第一数量和目标随机数从待选节点设备集合中识别待选节点设备,作为共识节点设备,包括:
获取所述区块链网络中区块高度大于高度阈值的区块,作为待选区块;
根据所述待选区块的区块生成时间戳生成第一随机数;
根据所述第一随机数以及所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
6.权利要求2或3所述的方法,其特征在于,所述根据所述第一数量和目标随机数从待选节点设备集合中识别待选节点设备,作为共识节点设备,包括:
获取时间段内所共识的历史交易数据的数量,作为第二数量;
根据所述第二数量生成第二随机数,根据所述第二随机数以及所述第一数量从所述待选节点设备集合中识别待选节点设备,作为共识节点设备。
7.如权利要求1所述的方法,其特征在于,所述方法包括:
获取各个共识节点设备对所述交易数据进行共识的共识结果;
获取共识结果为共识通过的共识节点设备的数量,作为第三数量;若所述第三数量大于数量阈值,则确定所述交易数据被共识通过。
8.如权利要求7所述的方法,其特征在于,所述共识结果携带签名信息,所述获取共识结果为共识通过的共识节点设备的数量,作为第三数量,包括:
获取所述各个共识节点设备的公钥;采用所述各个共识节点设备的公钥对对应的签名信息验签;
获取共识结果为共识通过,且共识结果所携带的签名信息被验签通过的共识节点设备的数量,作为所述第三数量。
9.如权利要求1所述的方法,其特征在于,所述方法包括:
将所述目标区块发送至剩余节点设备,以使所述剩余节点设备对所述目标区块进行存储,所述剩余节点设备可以为所述待选节点设备集合中除被识别为共识节点设备以外的待选节点设备。
10.一种基于区块链的数据处理装置,应用于区块链网络中的第一待选节点设备,其特征在于,包括:
获取模块,用于响应于对交易数据的共识请求,获取所述交易数据的属性信息;
识别模块,用于根据所述交易数据的属性信息确定用于进行共识处理的共识节点设备的数量,作为第一数量;根据所述第一数量和目标随机数从待选节点设备集合中识别待选节点设备,作为共识节点设备,所述共识节点设备的数量与所述第一数量相同;所述待选节点设备集合中包括至少两个待选节点设备,所述第一待选节点设备属于所述待选节点设备集合;所述目标随机数为第一随机数或第二随机数,所述第一随机数是根据所述区块链网络中区块高度大于高度阈值的区块对应的区块生成时间戳随机生成的,所述第二随机数是时间段内所共识的历史交易数据的数量随机生成的;
共识模块,用于若所述第一待选节点设备被识别为共识节点设备,则对所述交易数据进行共识;
存储模块,用于若所述交易数据被共识通过,则将所述交易数据存储至所述区块链网络的目标区块中;
同步模块,用于将所述目标区块的区块体和区块头同步至,所述区块链网络中所属的机构与所述交易数据具有关联关系的业务节点设备,将所述目标区块的区块头同步至,所述区块链网络中所属的机构与所述交易数据不具有关联关系的业务节点设备;所述区块体中包括所述交易数据,所述区块头包括用于对所述区块体中的数据进行验证的参数,所述区块链网络中所属的机构与所述交易数据具有关联关系的业务节点设备用于将所述目标区块的区块体中的所述交易数据发送至终端,所述区块链网络中所属的机构与所述交易数据不具有关联关系的业务节点设备用于在所述终端获取到所述交易数据的过程中,根据所述目标区块的区块头中的参数验证所述交易数据的有效性。
11.一种计算机设备,其特征在于,包括:处理器以及存储器、网络接口;
上述处理器与存储器、网络接口相连,其中,网络接口用于提供数据通信功能;所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1至9任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行如权利要求1至9中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010327100.0A CN111556120B (zh) | 2020-04-23 | 2020-04-23 | 基于区块链的数据处理方法、装置、存储介质及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010327100.0A CN111556120B (zh) | 2020-04-23 | 2020-04-23 | 基于区块链的数据处理方法、装置、存储介质及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111556120A CN111556120A (zh) | 2020-08-18 |
CN111556120B true CN111556120B (zh) | 2023-04-07 |
Family
ID=72003923
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010327100.0A Active CN111556120B (zh) | 2020-04-23 | 2020-04-23 | 基于区块链的数据处理方法、装置、存储介质及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111556120B (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112199412B (zh) * | 2020-09-15 | 2021-07-30 | 财智云享(杭州)数据信息技术有限公司 | 基于区块链的支付账单处理方法和区块链账单处理系统 |
CN112163917A (zh) * | 2020-09-28 | 2021-01-01 | 财付通支付科技有限公司 | 基于区块链的票据处理方法、装置、介质及电子设备 |
CN113435884A (zh) * | 2020-11-13 | 2021-09-24 | 陈素华 | 基于区块链和大数据的指标验证方法 |
CN112418859B (zh) * | 2020-12-04 | 2022-04-29 | 腾讯科技(深圳)有限公司 | 区块链的共识方法及装置、电子设备和可读存储介质 |
CN112231741B (zh) * | 2020-12-14 | 2021-03-19 | 腾讯科技(深圳)有限公司 | 基于区块链系统的数据处理方法、装置、介质及电子设备 |
CN112633885A (zh) * | 2020-12-31 | 2021-04-09 | 深圳前海益链网络科技有限公司 | 一种多签名交易实现方法及相关装置 |
CN112766560B (zh) * | 2021-01-15 | 2024-02-06 | 中国工商银行股份有限公司 | 联盟区块链网络优化方法、装置、系统和电子设备 |
CN113327163B (zh) * | 2021-05-17 | 2023-02-10 | 广东电网有限责任公司 | 基于区块链的数据处理方法、装置、电子设备及存储介质 |
CN113269645A (zh) * | 2021-05-28 | 2021-08-17 | 中邮信息科技(北京)有限公司 | 一种区块链的交易信息调度方法、装置、介质及电子设备 |
CN113486118B (zh) * | 2021-07-21 | 2023-09-22 | 银清科技有限公司 | 共识节点选取方法及装置 |
CN114710504A (zh) * | 2022-03-31 | 2022-07-05 | 蚂蚁区块链科技(上海)有限公司 | 区块链系统中共识节点的轮换方法、节点和区块链系统 |
CN115936706B (zh) * | 2023-03-10 | 2023-07-25 | 天聚地合(苏州)科技股份有限公司 | 一种基于区块链的数据要素辅助交易方法、装置和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107909369A (zh) * | 2017-10-13 | 2018-04-13 | 布比(北京)网络技术有限公司 | 基于跨链交易的共识方法、装置和存储介质 |
WO2019223469A1 (zh) * | 2018-05-21 | 2019-11-28 | 腾讯科技(深圳)有限公司 | 区块链网络的管理方法、装置、介质及电子设备 |
CN110517141A (zh) * | 2019-08-27 | 2019-11-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的共识方法及装置 |
CN110602096A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 区块链网络中的数据处理方法、装置、存储介质和设备 |
-
2020
- 2020-04-23 CN CN202010327100.0A patent/CN111556120B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107909369A (zh) * | 2017-10-13 | 2018-04-13 | 布比(北京)网络技术有限公司 | 基于跨链交易的共识方法、装置和存储介质 |
WO2019223469A1 (zh) * | 2018-05-21 | 2019-11-28 | 腾讯科技(深圳)有限公司 | 区块链网络的管理方法、装置、介质及电子设备 |
CN110517141A (zh) * | 2019-08-27 | 2019-11-29 | 深圳前海微众银行股份有限公司 | 一种基于区块链系统的共识方法及装置 |
CN110602096A (zh) * | 2019-09-12 | 2019-12-20 | 腾讯科技(深圳)有限公司 | 区块链网络中的数据处理方法、装置、存储介质和设备 |
Non-Patent Citations (1)
Title |
---|
基于树形拓扑网络的实用拜占庭容错共识算法;包振山等;《应用科学学报》;20200130(第01期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN111556120A (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111556120B (zh) | 基于区块链的数据处理方法、装置、存储介质及设备 | |
US11410145B2 (en) | Blockchain-implemented method for control and distribution of digital content | |
US11128522B2 (en) | Changing a master node in a blockchain system | |
CN110769035B (zh) | 一种区块链资产发行方法、平台、业务节点及存储介质 | |
CN110800250B (zh) | 受控加密私钥的发布 | |
EP3454238A1 (en) | Registration and authorization method, device and system | |
CN111476572B (zh) | 基于区块链的数据处理方法、装置、存储介质及设备 | |
US20230316273A1 (en) | Data processing method and apparatus, computer device, and storage medium | |
WO2022100679A1 (zh) | 一种数据通信方法、装置、计算机设备及存储介质 | |
CN113328997B (zh) | 联盟链跨链系统及方法 | |
CN111523890A (zh) | 基于区块链的数据处理方法、装置、存储介质及设备 | |
CN111241593A (zh) | 用于区块链节点的数据同步方法及装置 | |
CN112152778B (zh) | 一种节点管理方法、装置、及电子设备 | |
US20230262126A1 (en) | Blockchain-based data processing method and apparatus, device, and readable storage medium | |
CN109936620B (zh) | 基于区块链的存储方法及装置、系统与存储介质 | |
CN113255014B (zh) | 一种基于区块链的数据处理方法以及相关设备 | |
WO2022068356A1 (zh) | 基于区块链的信息加密方法、装置、设备及介质 | |
CN111416709B (zh) | 基于区块链系统的投票方法、装置、设备及存储介质 | |
WO2022068234A1 (zh) | 基于共享根密钥的加密方法、装置、设备及介质 | |
CN113765675B (zh) | 一种交易数据处理方法、装置、设备以及介质 | |
Zhang et al. | Efficient auditing scheme for secure data storage in fog-to-cloud computing | |
CN114519197A (zh) | 一种基于区块链和云服务的数据存储架构和方法 | |
CN114239044A (zh) | 一种去中心化的可追溯共享访问系统 | |
CN111756743B (zh) | 基于区块链的资源转移方法、装置、计算机设备和存储介质 | |
CN111698198B (zh) | 秘密生成和份额分发 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40027971 Country of ref document: HK |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |