CN111339569A - 区块链数据处理方法、装置、电子设备和介质 - Google Patents
区块链数据处理方法、装置、电子设备和介质 Download PDFInfo
- Publication number
- CN111339569A CN111339569A CN202010120534.3A CN202010120534A CN111339569A CN 111339569 A CN111339569 A CN 111339569A CN 202010120534 A CN202010120534 A CN 202010120534A CN 111339569 A CN111339569 A CN 111339569A
- Authority
- CN
- China
- Prior art keywords
- key
- current block
- signature
- node
- current
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/58—Random or pseudo-random number generators
- G06F7/588—Random number generators, i.e. based on natural stochastic processes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
本申请公开了区块链数据处理方法、装置、电子设备和介质,涉及区块链技术。其中,所述方法由区块链网络中可信节点执行。具体实现方案为:响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点;基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。本申请实施例可以保证随机数共识算法不被篡改,提高随机数计算系统的稳定性。
Description
技术领域
本申请实施例涉及计算机技术,具体涉及区块链技术,尤其涉及一种区块链数据处理方法、装置、电子设备和介质。
背景技术
区块链是分布式数据存储、点对点传输和共识机制等计算机技术的新型应用模式。
在现有的区块链网络中,通常采用工作量证明算法(Proof Of Work,POW)、权益证明算法(Proof Of Stake,POS)或委托权益证明算法(Delegated Proof Of Stake,DPOS)等,但上述算法均需要消耗算力。
目前可以采用随机数算法,避免消耗算力。但随机数算法易被篡改,无法保证数据是随机生成的,即随机数算法的系统稳定性较差。并且,无法保证同一时间结果的唯一性。
发明内容
本申请实施例公开一种区块链数据处理方法、装置、电子设备和介质,可以保证随机数共识算法不被篡改,提高随机数计算系统的稳定性。
第一方面,本申请实施例公开了一种区块链数据处理方法,由区块链网络中可信节点执行,包括:
响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点;
基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
上述申请中的一个实施例具有如下优点或有益效果:可以保证随机数共识算法不可改变,解决了随机数算法的系统稳定性差,结果不可靠的问题,可以保证随机数算法不可改变,提高随机数算法的系统稳定性,同时保证同一时间随机数共识算法的结果唯一,从而降低共识操作的能耗和复杂度。
另外,根据本申请上述实施例的区块链数据处理方法,还可以具有如下附加的技术特征:
可选的,根据所述当前事务数据签名生成当前区块之后,还包括:
基于所述当前区块生成节点,采用当前区块生成节点的密钥存储区中第二密钥,对所述当前区块进行签名,以得到当前区块签名;
向区块链网络中其他节点发送所述当前区块签名,以指示所述其他节点通过验签确定当前区块生成节点是否可信。
上述申请中的一个实施例具有如下优点或有益效果:通过第二个密钥对生成的区块进行签名,以使其他节点通过验签确认当前区块生成节点为可信节点,保证区块是由经过随机数共识算法确定的区块生成节点生成,提高区块的可靠性。
可选的,所述方法还包括:
若本地可信节点为其他节点,则采用第三密钥对所述当前区块签名进行验签,以确定当前区块生成节点是否可信;
若对所述当前区块签名验签通过,则采用第四密钥对所述当前事务数据签名进行验签,以得到当前事务数据;
其中,所述第一密钥和所述第四密钥互为非对称密钥对;所述第二密钥和所述第三密钥互为非对称密钥对。
上述申请中的一个实施例具有如下优点或有益效果:通过第一次验签确定区块是由可信节点生成,同时通过第二次验签,获取事务数据,提高事务数据的安全性和可靠性。
可选的,采用随机数共识机制确定当前区块生成节点,包括:
采用随机数生成函数以固定频率生成随机数;
根据所述随机数和难度值,确定所述当前区块生成节点。
上述申请中的一个实施例具有如下优点或有益效果:保证随机数共识算法的结果唯一,提高随机数共识算法的可靠性。
可选的,所述第一密钥为所述当前区块生成节点的密钥。上述申请中的一个实施例具有如下优点或有益效果:减少对中心化系统解密的依赖,兼顾数据的安全性。
第二方面,本申请实施例还公开了一种区块链数据处理装置,配置于区块链网络中可信节点,所述装置包括:
当前区块生成节点确定模块,用于响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点;
事务数据签名区块生成模块,用于基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
第三方面,本申请实施例还公开了一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如本申请实施例任一所述的应用于区块链网络中可信节点的区块链数据处理方法。
第四方面,本申请实施例还公开了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行如本申请实施例任一所述的应用于区块链网络中可信节点的区块链数据处理方法。
根据本申请实施例的技术方案,通过在可信节点的可信执行区执行随机数共识算法确定当前区块生成节点,可以保证随机数共识算法不可改变,同时采用第一密钥对当前事务数据进行签名,并根据数据签名生成区块,实现对事务数据进行加密,提高事务数据的安全性,解决了随机数算法的系统稳定性差,结果不可靠的问题,可以保证随机数算法不可改变,提高随机数算法的系统稳定性,同时保证同一时间随机数共识算法的结果唯一,从而降低共识操作的能耗和复杂度。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是根据本申请实施例公开的一种区块链数据处理方法的流程图;
图2是根据本申请实施例公开的一种区块链数据处理方法的流程图;
图3是根据本申请实施例公开的一种区块链数据处理装置的结构示意图;
图4是根据本申请实施例公开的一种电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1是根据本申请实施例公开的一种区块链数据处理方法的流程图,本实施例可以适用于区块链网络中可信节点采用随机数共识机制确定区块生成节点的情况。本实施例方法可以由区块链数据处理装置来执行,该装置可采用软件和/或硬件的方式实现,并可配置于区块链网络中可信节点。区块链网络中可信节点可以部署在具备竞争区块生成权功能的任意单位或个人所控制的电子设备上。
区块链网络中可信节点可以是区块链网络中区块生成节点或区块验证节点级节点等,例如超级链中超级节点。
区块链网络中可信节点是指运行在可信执行环境(Trusted ExecutionEnvironment,TEE)中的节点。其中,TEE是操作系统为应用程序提供可信安全的执行环境。TEE部署在中央处理器(Central Processing Unit,CPU)内部,具体可以包括Intel带SGX功能的CPU,Arm带TrustZone的CPU,保证内存的安全,以及独立隔离的计算区域。
可信区块链网络中的节点包括可信执行区(通常位于内存中)和密钥存储区。可信执行区只用于执行指定程序,例如若预先将A程序的签名注册到可信硬件中,则A程序为指定程序,具体的,A程序用于执行共识算法;密钥存储区用于存储区块链网络的统一私钥,私钥的数量可以为多个,以备用增强安全性。
S101,响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点。
事务处理请求用于区块链网络中可信节点进行处理,可以包括但不限于数据存储请求、数据查询请求和数据更新请求等。当前区块生成节点用于在当前时刻对事务处理请求进行处理,并形成区块。共识机制用于从区块链网络的在线可信节点中筛选出当前区块生成节点,具体是所有可信节点按照统一的算法进行计算,共同确定了当前区块生成节点。
区块链网络采用分布式事务处理方式,通常是在一段时间内,通过共识机制确定一个区块生成节点,并由该区块生成节点进行事务处理生成区块,提供给区块链网络中其他节点进行区块验证。
随机数共识机制具体是指基于随机生成的随机数,进行设定规则的运算,将首个得到满足条件的随机数的可信节点作为当前区块生成节点。
通过可信执行区,采用随机数共识机制确定当前区块生成节点,表明随机数共识机制是由可信执行区中的指定程序执行,从而可以保证执行算法和执行过程不被篡改,提高随机数共识机制的可靠性。
可选的,采用随机数共识机制确定当前区块生成节点,包括:采用随机数生成函数以固定频率生成随机数;根据所述随机数和难度值,确定所述当前区块生成节点。
随机数生成函数用于生成随机数,例如rand函数或srand函数等。固定频率用于限定每个可信节点生成随机数的频率,例如,每隔t时间能继续生成随机数,使同一时间段内大概率只有一个满足条件的结果,具体是用于保证当前区块生成节点的数量为一个,也即保证共识结果的唯一性。难度值用于判断生成的随机数是否满足要求,即用于判断可信节点是否可以作为当前区块生成节点。难度值为预先指定的数值,具体可以根据实际情况进行设定,对此,本实施例不做具体限制。
其中,随机数生成函数、固定频率、难度值以及采用前述信息的随机数共识算法均可以存储在本地密钥存储区,以保证随机数共识机制的数据和过程均不被篡改。
具体的,可信节点调用随机数生成函数生成随机数X,直到X在字典序上小于难度值Y。
通过配置固定频率和难度值,可以调整共识算法的结果和耗时,保证随机数共识算法的结果唯一,提高随机数共识算法的可靠性。
S102,基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
当前事务数据可以是指当前事务处理请求处理得到的结果数据。第一密钥用于对当前事务数据进行签名,验证当前区块生成节点的信息。当前事务数据签名可以是指当前事务数据的密文,用于对当前事务数据进行保密,保证当前事务数据的安全性。
可选的,所述第一密钥为所述当前区块生成节点的密钥。
其中,第一密钥可以存储本地密钥存储区,或者非可信执行区等。签名操作可以由可信执行区中的指定程序或者非可信执行区的常规程序执行。当前事务数据签名仅能由持有第一密钥匹配的密钥(可以互为对称密钥或互为非对称密钥)的节点进行验签。其中,验签操作具体可以基于签名算法关联的验签算法,根据签名过程中私钥所关联的公钥,进行验签。
第一密钥为当前区块生成节点的密钥,表明第一密钥的加密是通过区块链网络完成。相应的,在解密时,需要获取与第一密钥匹配的密钥才能进行解密,也即第一密钥的加密和解密均通过区块链网络完成,可以减少对中心化系统解密的依赖,兼顾数据的安全性。
第一区块链密钥用于发起方对事务处理请求进行加密,可以是指发起方可获取的密钥。通过对事务处理请求进行加密,并将加密得到的密文传输给可信区块链网络中事务处理节点进行解密和处理,可以保证在传输过程中事务处理请求不被泄露,从而提高事务处理请求的安全性。
根据本申请实施例的技术方案,通过在可信节点的可信执行区执行随机数共识算法确定当前区块生成节点,可以保证随机数共识算法不可改变,同时采用第一密钥对当前事务数据进行签名,并根据数据签名生成区块,实现对事务数据进行加密,提高事务数据的安全性,解决了随机数算法的系统稳定性差,结果不可靠的问题,可以保证随机数算法不可改变,提高随机数算法的系统稳定性,同时保证同一时间随机数共识算法的结果唯一,从而降低共识操作的能耗和复杂度。
图2是根据本申请实施例公开的另一种区块链数据处理方法的流程图,基于上述技术方案进一步优化与扩展,并可以与上述各个可选实施方式进行结合。
S201,响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点。
本实施方式中未详细描述的内容,可以参考上述任意实施方式中的描述。
S202,基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
S203,基于所述当前区块生成节点,采用当前区块生成节点的密钥存储区中第二密钥,对所述当前区块进行签名,以得到当前区块签名。
第二密钥用于作为当前区块生成节点的可信标识。第二密钥存储在TEE中的密钥存储区,表明第二密钥为不可篡改的密钥。第二密钥的签名操作可以由可信执行区中的指定程序或者非可信执行区的常规程序执行。
当前区块签名用于判断当前区块生成节点是否可信。
S204,向区块链网络中其他节点发送所述当前区块签名,以指示所述其他节点通过验签确定当前区块生成节点是否可信。
区块链网络中其他节点可以采用第二密钥关联的密钥(可以互为对称密钥或互为非对称密钥)对当前区块签名进行验签。如果验签通过,则表明该区块是由经过可信执行区的随机数共识机制确定当前区块生成节点生成,也即表明当前区块生成节点为可信节点;如果验签失败,则表明当前区块生成节点不可信。具体的,确定节点可信是指,该节点确实经过随机数共识机制确定的区块生成节点,且该结果是采用的不可篡改的随机数算法进行运算得到的准确可靠的共识结果。
其他节点在确定当前区块生成节点可信时,可以对接收到的区块进行后续处理。
可选的,所述方法还包括:若本地可信节点为其他节点,则采用第三密钥对所述当前区块签名进行验签,以确定当前区块生成节点是否可信;若对所述当前区块签名验签通过,则采用第四密钥对所述当前事务数据签名进行验签,以得到当前事务数据;其中,所述第一密钥和所述第四密钥互为非对称密钥对;所述第二密钥和所述第三密钥互为非对称密钥对。
非对称密钥对可以是指两个不同的密钥,通常包括公钥和私钥。公钥加密的密文仅能通过私钥进行解密,同时,私钥加密的密文仅能通过公钥进行解密。具体的,第二密钥为私钥存储在密钥存储区,相应的,第三密钥为公钥。第一密钥可以是私钥,相应的,第四密钥可以是公钥;或者第一密钥可以是公钥,相应的,第四密钥可以是私钥。第一密钥、第三密钥和第四密钥可以存储在密钥存储区,也可以存储在非可信执行区中。密钥的形式和存储区域均可以根据需要进行设定,对此,本实施例不做具体限制。
通过第二密钥和第三密钥的密钥对分别对区块进行签名和验签,用于判断生成区块的节点是否可信,同时通过第一密钥和第四密钥的密钥对分别对事务数据进行签名和验签,用于加密事务数据,以保证事务数据在传输过程中的安全,从而提高事务数据的安全性和可靠性。
根据本申请实施例的技术方案,在采用第一密钥对事务数据进行签名并生成区块后,继续采用第二密钥对生成的区块进行签名,以使其他节点通过第一次验签确认当前区块生成节点为可信节点时,才对区块进行后续处理,也即通过对区块进行两次验签,保证区块是由经过可信执行的随机数共识机制确定的区块生成节点生成,提高区块的可靠性。
图3根据本申请实施例公开的一种区块链数据处理装置的结构示意图,本实施例可以适用于区块链网络中可信节点采用随机数共识机制确定区块生成节点的情况。本实施例该装置可采用软件和/或硬件的方式实现,并可配置于区块链网络中可信节点。区块链网络中可信节点可以部署在具备竞争区块生成权功能的任意单位或个人所控制的电子设备上。
如图3所示,本实施例公开的区块链数据处理装置300包括当前区块生成节点确定模块301和事务数据签名区块生成模块302,其中:
当前区块生成节点确定模块301,用于响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点;
事务数据签名区块生成模块302,用于基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
可选的,本实施例装置还包括:区块签名生成模块,用于根据所述当前事务数据签名生成当前区块之后,基于所述当前区块生成节点,采用当前区块生成节点的密钥存储区中第二密钥,对所述当前区块进行签名,以得到当前区块签名;节点可信验证模块,用于向区块链网络中其他节点发送所述当前区块签名,以指示所述其他节点通过验签确定当前区块生成节点是否可信。
可选的,本实施例装置还包括:第三密钥签名模块,用于若本地可信节点为其他节点,则采用第三密钥对所述当前区块签名进行验签,以确定当前区块生成节点是否可信;第四密钥签名模块,用于若对所述当前区块签名验签通过,则采用第四密钥对所述当前事务数据签名进行验签,以得到当前事务数据;其中,所述第一密钥和所述第四密钥互为非对称密钥对;所述第二密钥和所述第三密钥互为非对称密钥对。
可选的,所述当前区块生成节点确定模块301,包括:随机数共识计算单元,用于采用随机数生成函数以固定频率生成随机数;根据所述随机数和难度值,确定所述当前区块生成节点。
可选的,所述第一密钥为所述当前区块生成节点的密钥。
本申请实施例所公开的可配置于区块链数据处理装置300可执行本申请实施例所公开的任意应用于区块链网络中可信节点的、区块链数据处理方法,具备执行方法相应的功能模块和有益效果。本实施例中未详尽描述的内容可以参考本申请任意方法实施例中的描述。
据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图4所示,是根据本申请实施例的区块链数据处理方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图4所示,该电子设备包括:一个或多个处理器401、存储器402,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。图4中以一个处理器401为例。
存储器402即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的区块链数据处理方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的区块链数据处理方法。
存储器402作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的区块链数据处理方法对应的程序指令/模块(例如,附图3所示的当前区块生成节点确定模块301和事务数据签名区块生成模块302)。处理器401通过运行存储在存储器402中的非瞬时软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例中的区块链数据处理方法。
存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据区块链数据处理电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至区块链数据处理电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
区块链数据处理方法的电子设备还可以包括:输入装置403和输出装置404。处理器401、存储器402、输入装置403和输出装置404可以通过总线或者其他方式连接,图4中以通过总线连接为例。
输入装置403可接收输入的数字或字符信息,以及产生与区块链数据处理电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置404可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)、互联网和区块链网络。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请实施例的技术方案,通过在可信节点的可信执行区执行随机数共识算法确定当前区块生成节点,可以保证随机数共识算法不可改变,同时采用第一密钥对当前事务数据进行签名,并根据数据签名生成区块,实现对事务数据进行加密,提高事务数据的安全性,解决了随机数算法的系统稳定性差,结果不可靠的问题,可以保证随机数算法不可改变,提高随机数算法的系统稳定性,同时保证同一时间随机数共识算法的结果唯一,从而降低共识操作的能耗和复杂度。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (10)
1.一种区块链数据处理方法,其特征在于,由区块链网络中可信节点执行,所述方法包括:
响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点;
基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
2.根据权利要求1所述的方法,其特征在于,根据所述当前事务数据签名生成当前区块之后,还包括:
基于所述当前区块生成节点,采用当前区块生成节点的密钥存储区中第二密钥,对所述当前区块进行签名,以得到当前区块签名;
向区块链网络中其他节点发送所述当前区块签名,以指示所述其他节点通过验签确定当前区块生成节点是否可信。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若本地可信节点为其他节点,则采用第三密钥对所述当前区块签名进行验签,以确定当前区块生成节点是否可信;
若对所述当前区块签名验签通过,则采用第四密钥对所述当前事务数据签名进行验签,以得到当前事务数据;
其中,所述第一密钥和所述第四密钥互为非对称密钥对;所述第二密钥和所述第三密钥互为非对称密钥对。
4.根据权利要求1所述的方法,其特征在于,采用随机数共识机制确定当前区块生成节点,包括:
采用随机数生成函数以固定频率生成随机数;
根据所述随机数和难度值,确定所述当前区块生成节点。
5.根据权利要求1所述的方法,其特征在于,所述第一密钥为所述当前区块生成节点的密钥。
6.一种区块链数据处理装置,其特征在于,配置于区块链网络中可信节点,所述装置包括:
当前区块生成节点确定模块,用于响应于当前事务处理请求,通过本地可信节点的可信执行区,采用随机数共识机制确定当前区块生成节点;
事务数据签名区块生成模块,用于基于所述当前区块生成节点,采用第一密钥对当前事务处理请求的当前事务数据进行签名以得到当前事务数据签名,且根据所述当前事务数据签名生成当前区块。
7.根据权利要求6所述的装置,其特征在于,还包括:
区块签名生成模块,用于根据所述当前事务数据签名生成当前区块之后,基于所述当前区块生成节点,采用当前区块生成节点的密钥存储区中第二密钥,对所述当前区块进行签名,以得到当前区块签名;
节点可信验证模块,用于向区块链网络中其他节点发送所述当前区块签名,以指示所述其他节点通过验签确定当前区块生成节点是否可信。
8.根据权利要求7所述的装置,其特征在于,还包括:
第三密钥签名模块,用于若本地可信节点为其他节点,则采用第三密钥对所述当前区块签名进行验签,以确定当前区块生成节点是否可信;
第四密钥签名模块,用于若对所述当前区块签名验签通过,则采用第四密钥对所述当前事务数据签名进行验签,以得到当前事务数据;其中,所述第一密钥和所述第四密钥互为非对称密钥对;所述第二密钥和所述第三密钥互为非对称密钥对。
9.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-5中任一项所述的区块链数据处理方法。
10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-5中任一项所述的区块链数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010120534.3A CN111339569B (zh) | 2020-02-26 | 2020-02-26 | 区块链数据处理方法、装置、电子设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010120534.3A CN111339569B (zh) | 2020-02-26 | 2020-02-26 | 区块链数据处理方法、装置、电子设备和介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111339569A true CN111339569A (zh) | 2020-06-26 |
CN111339569B CN111339569B (zh) | 2023-05-26 |
Family
ID=71181859
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010120534.3A Active CN111339569B (zh) | 2020-02-26 | 2020-02-26 | 区块链数据处理方法、装置、电子设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111339569B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112184441A (zh) * | 2020-09-29 | 2021-01-05 | 平安科技(深圳)有限公司 | 数据处理方法、装置、节点设备及存储介质 |
CN112560104A (zh) * | 2021-01-17 | 2021-03-26 | 梁志彬 | 一种基于云计算和区块链的数据存储方法及安全信息平台 |
CN112799636A (zh) * | 2021-04-14 | 2021-05-14 | 北京百度网讯科技有限公司 | 随机数生成方法、装置、设备和存储介质 |
CN113949508A (zh) * | 2021-08-30 | 2022-01-18 | 深圳时空云科技有限公司 | 基于随机数共识机制的过程数据处理方法及装置 |
Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107046542A (zh) * | 2017-04-24 | 2017-08-15 | 杭州云象网络技术有限公司 | 一种在网络级采用硬件实现共识验证的方法 |
CN107070938A (zh) * | 2017-04-27 | 2017-08-18 | 电子科技大学 | 基于区块链的数据访问控制系统 |
CN108921556A (zh) * | 2018-07-02 | 2018-11-30 | 上海达家迎信息科技有限公司 | 一种区块链的验证方法、装置、设备及存储介质 |
CN109785130A (zh) * | 2018-12-17 | 2019-05-21 | 金蝶软件(中国)有限公司 | 区块链随机共识方法、装置、计算机设备和存储介质 |
CN110008715A (zh) * | 2019-01-31 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法及节点、存储介质 |
US20190220603A1 (en) * | 2019-03-27 | 2019-07-18 | Intel Corporation | Fast and secure protocol to bootstrap a blockchain by restoring the blockchain state using trusted execution environment |
CN110032876A (zh) * | 2019-02-19 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法、节点和存储介质 |
CN110071802A (zh) * | 2019-04-24 | 2019-07-30 | 西安纸贵互联网科技有限公司 | 适用于区块链的数据处理方法及装置 |
CN110268691A (zh) * | 2017-02-07 | 2019-09-20 | 微软技术许可有限责任公司 | 具有经验证的区块链和共识协议的联盟区块链网络 |
CN110264193A (zh) * | 2019-05-20 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 结合用户类型与交易类型的收据存储方法和节点 |
CN110264192A (zh) * | 2019-05-20 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 基于交易类型的收据存储方法和节点 |
CN110291756A (zh) * | 2018-11-07 | 2019-09-27 | 阿里巴巴集团控股有限公司 | 在区块链机密交易中恢复加密交易信息 |
CN110336779A (zh) * | 2019-05-07 | 2019-10-15 | 弦子科技(北京)有限公司 | 一种区块链的构建方法、装置和电子设备 |
CN110674217A (zh) * | 2019-09-23 | 2020-01-10 | 百度在线网络技术(北京)有限公司 | 区块链数据处理方法、装置、设备和介质 |
-
2020
- 2020-02-26 CN CN202010120534.3A patent/CN111339569B/zh active Active
Patent Citations (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110268691A (zh) * | 2017-02-07 | 2019-09-20 | 微软技术许可有限责任公司 | 具有经验证的区块链和共识协议的联盟区块链网络 |
CN107046542A (zh) * | 2017-04-24 | 2017-08-15 | 杭州云象网络技术有限公司 | 一种在网络级采用硬件实现共识验证的方法 |
CN107070938A (zh) * | 2017-04-27 | 2017-08-18 | 电子科技大学 | 基于区块链的数据访问控制系统 |
CN108921556A (zh) * | 2018-07-02 | 2018-11-30 | 上海达家迎信息科技有限公司 | 一种区块链的验证方法、装置、设备及存储介质 |
CN110291756A (zh) * | 2018-11-07 | 2019-09-27 | 阿里巴巴集团控股有限公司 | 在区块链机密交易中恢复加密交易信息 |
CN109785130A (zh) * | 2018-12-17 | 2019-05-21 | 金蝶软件(中国)有限公司 | 区块链随机共识方法、装置、计算机设备和存储介质 |
CN110008715A (zh) * | 2019-01-31 | 2019-07-12 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法及节点、存储介质 |
CN110032876A (zh) * | 2019-02-19 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 区块链中实现隐私保护的方法、节点和存储介质 |
US20190220603A1 (en) * | 2019-03-27 | 2019-07-18 | Intel Corporation | Fast and secure protocol to bootstrap a blockchain by restoring the blockchain state using trusted execution environment |
CN110071802A (zh) * | 2019-04-24 | 2019-07-30 | 西安纸贵互联网科技有限公司 | 适用于区块链的数据处理方法及装置 |
CN110336779A (zh) * | 2019-05-07 | 2019-10-15 | 弦子科技(北京)有限公司 | 一种区块链的构建方法、装置和电子设备 |
CN110264193A (zh) * | 2019-05-20 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 结合用户类型与交易类型的收据存储方法和节点 |
CN110264192A (zh) * | 2019-05-20 | 2019-09-20 | 阿里巴巴集团控股有限公司 | 基于交易类型的收据存储方法和节点 |
CN110674217A (zh) * | 2019-09-23 | 2020-01-10 | 百度在线网络技术(北京)有限公司 | 区块链数据处理方法、装置、设备和介质 |
Non-Patent Citations (2)
Title |
---|
任明等: "一种使用量子随机数的拜占庭容错机制", 《网络安全技术与应用 》 * |
雷敏等: "《北京邮电大学规划建设教材 区块链导论》", 30 June 2019 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112184441A (zh) * | 2020-09-29 | 2021-01-05 | 平安科技(深圳)有限公司 | 数据处理方法、装置、节点设备及存储介质 |
CN112184441B (zh) * | 2020-09-29 | 2024-01-19 | 平安科技(深圳)有限公司 | 数据处理方法、装置、节点设备及存储介质 |
CN112560104A (zh) * | 2021-01-17 | 2021-03-26 | 梁志彬 | 一种基于云计算和区块链的数据存储方法及安全信息平台 |
CN112799636A (zh) * | 2021-04-14 | 2021-05-14 | 北京百度网讯科技有限公司 | 随机数生成方法、装置、设备和存储介质 |
CN112799636B (zh) * | 2021-04-14 | 2021-08-27 | 北京百度网讯科技有限公司 | 随机数生成方法、装置、设备和存储介质 |
CN113949508A (zh) * | 2021-08-30 | 2022-01-18 | 深圳时空云科技有限公司 | 基于随机数共识机制的过程数据处理方法及装置 |
CN113949508B (zh) * | 2021-08-30 | 2023-09-22 | 深圳时空云科技有限公司 | 基于随机数共识机制的过程数据处理方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111339569B (zh) | 2023-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111310216B (zh) | 区块链数据处理方法、装置、电子设备和介质 | |
CN111683071B (zh) | 区块链的隐私数据处理方法、装置、设备以及存储介质 | |
CN111339569A (zh) | 区块链数据处理方法、装置、电子设备和介质 | |
CN111143890B (zh) | 一种基于区块链的计算处理方法、装置、设备和介质 | |
CN111565109A (zh) | 一种区块链的密钥处理方法、装置、设备和介质 | |
CN108140082B (zh) | 使用非对称密钥的多因素用户认证框架 | |
CN111769958B (zh) | 区块链跨链处理方法、装置、设备和存储介质 | |
CN111460429B (zh) | 基于可信执行环境的任务处理方法、装置、设备和介质 | |
CN111352996B (zh) | 基于区块链网络的数据共享方法、装置、设备及介质 | |
CN111737366B (zh) | 区块链的隐私数据处理方法、装置、设备以及存储介质 | |
CN111125763B (zh) | 隐私数据的处理方法、装置、设备和介质 | |
US20130086381A1 (en) | Multi-server authentication token data exchange | |
CN111131317B (zh) | 一种基于区块链的数据处理方法、装置、设备和介质 | |
CN110909372A (zh) | 数据处理方法、装置、设备和介质 | |
JP7317084B2 (ja) | トラステッド環境の遠隔検証方法、装置、機器、システムおよび媒体 | |
CN114363088B (zh) | 用于请求数据的方法和装置 | |
WO2022142436A1 (zh) | 基于区块链的数据处理方法、装置、设备及存储介质 | |
CN111275404A (zh) | 基于区块链的评审方法、装置、设备和介质 | |
CN111400743B (zh) | 基于区块链网络的事务处理方法、装置、电子设备和介质 | |
CN111459672B (zh) | 基于区块链网络的事务处理方法、装置、设备及介质 | |
CN111371557B (zh) | 区块链数据处理方法、装置、电子设备及介质 | |
CN111339571B (zh) | 一种区块链密钥管理方法、装置、设备和存储介质 | |
CN111371558B (zh) | 区块链数据处理方法、装置、电子设备及介质 | |
CN114548983A (zh) | 一种区块链隐私数据处理方法、碳交易实现方法及系统 | |
CN113127825A (zh) | 访问权限验证方法和装置 |
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 |