基于区块链的资源核验方法、装置和计算机设备与流程

文档序号:22431787发布日期:2020-10-02 10:15阅读:122来源:国知局
基于区块链的资源核验方法、装置和计算机设备与流程

本申请涉及区块链技术领域,特别是涉及一种基于区块链的资源核验方法、装置、计算机设备和存储介质。



背景技术:

随着区块链技术的发展,区块链技术广泛应用到各个场景中,而区块链的某些应用场景中,需要核验各交易节点的账户资源总额。例如:区块链中的核验应用,需要确认某交易节点在某一时间点的资产总额(通常为数字货币)。

而目前通常采用的资源核验方式是获取每一条交易的交易明细,进行计算与比对,从而实现对核验各交易节点的账户资源总额,因此需要被核验的节点暴露交易明细,才能完成资源核验。因此,目前在对被核验的节点进行资源核验时,获取的数据过于暴露,容易导致被核验的节点的数据泄露,安全性低。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够提高被核验的节点的数据安全的基于区块链的资源核验方法、装置、计算机设备和存储介质。

一种基于区块链的资源核验方法,所述方法包括:

当数据核验指令被触发时,根据所述数据核验指令从参与记账的记账节点中,确定被核验记账节点,所述参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账;

获取所述被核验记账节点发送的记账私钥,以及所述被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥;

获取所述被核验记账节点在所述被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;

根据交易地址信息汇总密钥与所述记账私钥的乘积,验证所述交易地址信息汇总密钥是否准确;

当所述交易地址信息汇总密钥正确时,验证所述待核验资源总额是否准确。

在其中一个实施例中,所述当所述交易地址信息汇总密钥正确时,验证所述待核验资源总额是否准确,包括:

在所述交易地址信息汇总密钥正确时,对各所述单笔账本密钥进行求和,获得各所述单笔账本密钥的汇总信息;

根据所述资源加密运算点对待核验资源总额进行加密,获得加密信息;

将各所述单笔账本密钥的汇总信息,与所述加密信息和所述交易地址信息汇总密钥的和进行比较,确定所述待核验资源总额是否准确。

在其中一个实施例中,所述将各所述单笔账本密钥的汇总信息,与所述加密信息和所述交易地址信息汇总密钥的和进行比较,确定所述待核验资源总额是否准确,包括:

对所述加密信息和所述交易地址信息汇总密钥进行椭圆曲线加法运算,获得账本汇总密钥;

将所述账本汇总密钥与各所述单笔账本密钥的汇总信息进行比较;

当所述账本汇总密钥与各所述单笔账本密钥的汇总信息一致时,所述待核验资源总额准确;

当所述账本汇总密钥与各所述单笔账本密钥的汇总信息不一致时,所述待核验资源总额不准确。

在其中一个实施例中,所述根据交易地址信息汇总密钥与所述记账私钥的乘积,验证所述交易地址信息汇总密钥是否准确,包括:

根据所述交易地址信息汇总密钥与所述记账私钥进行椭圆曲线乘法运算,获得运算后的信息;

对各所述单笔地址密钥进行求和,获得各所述单笔地址密钥的汇总信息;

将所述运算后的信息与各所述单笔地址密钥的汇总信息进行比较;

当所述运算后的信息与各所述单笔地址密钥的汇总信息一致时,所述交易地址信息汇总密钥准确;

当所述运算后的信息与各所述单笔地址密钥的汇总信息不一致时,所述交易地址信息汇总密钥不准确。

在其中一个实施例中,所述当所述运算后的信息与各所述单笔地址密钥的汇总信息不一致时,所述交易地址信息汇总密钥不准确的步骤之后,还包括:

根据所述交易地址信息汇总密钥不准确,确定所述待核验资源总额不准确。

在其中一个实施例中,为所述参与记账的记账节点提供椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥的方式,包括:

在椭圆曲线上任意选取所述资源加密运算点和所述地址加密运算点,公布至所述区块链中;

为参与记账的记账节点生成对应的随机数,并对应发送至所述参与记账的记账节点作为代表记账节点地址的所述节点地址密钥。

在其中一个实施例中,所述方法还包括:

向所述待核验资源总额不准确的记账节点获取准确的资源总额,与所述被核验时间段内公开在区块链中的各对单笔账本密钥进行比对;

并对所述待核验资源总额不准确的记账节点进行资源扣除。

一种基于区块链的资源核验装置,所述装置包括:

被核验记账节点确定模块,用于当数据核验指令被触发时,根据所述数据核验指令从参与记账的记账节点中,确定被核验记账节点,所述参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账;

第一信息获取模块,用于获取所述被核验记账节点发送的记账私钥,以及所述被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥;

第二信息获取模块,用于获取所述被核验记账节点在所述被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;

第一验证模块,用于根据交易地址信息汇总密钥与所述记账私钥的乘积,验证所述交易地址信息汇总密钥是否准确;

第二验证模块,用于当所述交易地址信息汇总密钥正确时,验证所述待核验资源总额是否准确。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现所述的方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的方法的步骤。

上述基于区块链的资源核验方法、装置、计算机设备和存储介质,当核验节点需要对记账节点的某个时间段进行资源核验时,触发数据核验指令,进一步确定被核验记账节点;获取被核验记账节点发送的记账私钥,以及被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥;获取被核验记账节点在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;根据交易地址信息汇总密钥与所述记账私钥的乘积,无需解密出隐私数据,即可验证交易地址信息汇总密钥是否准确;当所述交易地址信息汇总密钥正确时,验证所述待核验资源总额是否准确,整个核验过程中,无需解密出单笔地址密钥中的地址信息和单笔账本密钥中账本信息,也无需记账节点提供单笔地址密钥中的地址信息和单笔账本密钥中账本信息,就可以完成资源的核验,提高了被核验的节点的数据安全。

附图说明

图1为一个实施例中基于区块链的资源核验方法的应用环境图;

图2为一个实施例中基于区块链的资源核验方法的流程示意图;

图3为一个实施例中基于区块链的资源核验方法的其中一个步骤的流程示意图;

图4为一个实施例中基于区块链的资源核验装置的结构框图;

图5为一个实施例中基于区块链的资源核验装置的结构框图;

图6为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的基于区块链的资源核验方法,可以应用于如图1所示的应用环境中。其中,核验节点102通过网络与被核验记账节点104进行通信。当核验节点102的数据核验指令被触发时,根据数据核验指令从参与记账的记账节点中,确定被核验记账节点104,参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账;获取被核验记账节点104发送的记账私钥,以及被核验记账节点104在被核验时间段的待核验资源总额、交易地址信息汇总密钥;获取被核验记账节点104在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;根据交易地址信息汇总密钥与记账私钥的乘积,验证交易地址信息汇总密钥是否准确;当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确。

其中,核验节点102可以是基于区块链的记账系统中的节点,也可以是基于区块链的记账系统以外的外部节点,该节点可以是终端或服务器;被核验记账节点104是基于区块链的记账系统中参与记账的记账节点,该记账节点可以是终端或服务器,被核验记账节点104可以是参与记账的所有记账节点,也可以是参与记账的所有记账节点中的一部分记账节点,还可以是参与记账的所有记账节点中的其中一个记账节点,被核验记账节点104有多个时,可采用多线程并行处理的方式,分别同时对各被核验记账节点104进行核验,也可以采用单线程串行处理的方式,依次对各被核验记账节点104进行核验。

在一个实施例中,如图2所示,提供了一种基于区块链的资源核验方法,以该方法应用于图1中的核验节点为例进行说明,包括以下步骤:

步骤s220,当数据核验指令被触发时,根据数据核验指令从参与记账的记账节点中,确定被核验记账节点,参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账。

其中,数据核验指令是控制核验节点的进行资源核验的指令,该数据核验指令可以是由核验节点自动触发,如:根据核验周期确定参与记账的记账节点中哪些记账节点需要进行资源核验,也可以是用户触发。参与记账的记账节点是基于区块链的记账系统对发生的交易信息进行记账的节点,参与记账的记账节点可以是发生的交易信息的节点,参与记账的记账节点可以是一个,也可以是两个以上。被核验记账节点是参与记账的记账节点中当前需要进行资源核验的记账节点。核验节点是对被核验记账节点的资源进行核验的节点。椭圆加密是采用椭圆加密算法(ecc)进行加密的体制,是一种公钥加密体制。资源加密运算点是从椭圆曲线上的选取用于椭圆加密运算的点,该点是用于在交易时,加密对应的交易资源。地址加密运算点是从椭圆曲线上的选取用于椭圆加密运算的另一个点,该点是用于在交易时,加密交易对手方的节点地址密钥,交易对手方是与当前记账节点发送交易的记账节点。节点地址密钥是代表记账节点地址的密钥,可以是由核验节点随机生成的随机数,然后对应分配给参与记账的记账节点。

在一个实施例中,为参与记账的记账节点提供椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥的方式,包括:在椭圆曲线上任意选取资源加密运算点和地址加密运算点,公布至区块链中;为参与记账的记账节点生成对应的随机数,并对应发送至参与记账的记账节点作为代表记账节点地址的节点地址密钥。

其中,资源加密运算点和地址加密运算点的选取,可以是由核验节点随机在在椭圆曲线上任意选取两个点,随机确定一个点为资源加密运算点,则另一个点为地址加密运算点。该区块链是记账系统中的共享数据库,存储于其中的数据或信息,具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征。随机数是由核验节点随机生成的数,或者是数组。

在一个场景中,由核验节点随机选取椭圆曲线上的两点g和h,g为资源加密运算点,h为地址加密运算点,将g为资源加密运算点和h为地址加密运算点广播并公布至链上,作为椭圆加密运算的点。同时核验节点为每一个参与记账的记账节点(记账节点与交易节点为同一个节点,在与其他节点发生交易时,需对交易的资源(即交易金额)和交易对手方的节点地址密钥进行记录)生成一组随机数ki,每一个记账节点对应一个ki,例如第一个记账节点对应的随机数为k1,第二记账节点对应的随机数为k2,该随机数作为代表记账节点地址的节点地址密钥,记账节点在记账时参与加密过程。

步骤s240,获取被核验记账节点发送的记账私钥,以及被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥。

其中,记账私钥是被核验记账节点生成的一个私钥,核验节点在对被核验记账节点的资源进行核验时,被核验记账节点需提供记账私钥进行核验。待核验资源总额是被核验记账节点提供在被核验时间段发生的所有交易的交易总额,原则上待核验资源总额等于实际在被核验时间段发生交易的交易总额,由于是被核验记账节点提供的,有可能待核验资源总额不等于实际在被核验时间段发生交易的交易总额,则核验节点需要验证被核验记账节点提供的待核验资源总额是否准确。交易地址信息汇总密钥是由被核验时间段发生的所有交易的对手方节点的节点地址密钥加密后获得的信息,由于交易地址信息汇总密钥的获得,需要获取对手方节点的节点地址密钥,属于隐私信息,由被核验记账节点计算获得后发送给核验节点,核验节点无需获取交易的对手方节点的节点地址密钥,可以避免信息泄露。

步骤s260,获取被核验记账节点在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥。

其中,单笔地址密钥是每一笔交易的地址密钥。每次交易时,记账节点对每笔交易除了生成账本密钥(即:commi),还要生成地址密钥(即:ti),地址密钥的生成方式为:记账节点根据自身预先生成的记账私钥,与核验节点提供的椭圆加密的地址加密运算点进行椭圆曲线乘法运算,即pki=h*xi,pki指记账节点的记账公钥,xi指记账节点的记账私钥,从而获得记账公钥,每次交易时,记账节点通过记账公钥与对手方节点的节点地址密钥进行椭圆曲线乘法运算,即:ti=ki*pki,其中,ti指的是地址密钥,从而获得交易的地址密钥,将该地址密钥公布至区块链上。单笔账本密钥是每一笔交易的账本密钥。当发生一笔交易时,记交易的交易金额为vi,记记账节点的节点地址密钥为ki,则单笔账本密钥为:commi=vig+kih,其中,commi指的是单笔账本密钥,单笔账本密钥可以理解为该笔交易加密后的账本信息,记账节点获得单笔账本密钥后,将单笔账本密钥公布至区块链上。

以记账节点a与记账节点b交易为例:记账节点a收到了记账节点b的数字货币100,记账节点a的节点地址密钥为k1,记账公钥为pk1;记账节点b的节点地址密钥为k2,记账公钥为pk2。记账节点a记账一笔交易:则vi=100,ki=k2,pki为pk1;则k2*pk1即为本次交易的单笔地址密钥,即ti;则100*g+k2*h即为本次交易的单笔账本密钥,即commi;将该单笔地址密钥和该单笔账本密钥公布至区块链上。收到数字货币为vi正数,付出数字货币vi为负数,反之:记账节点b记账该笔交易时,则k1*pk2即为本次交易的单笔地址密钥,即ti;则-100*g+k1*h即为本次交易的单笔账本密钥,即commi;将该单笔地址密钥和该单笔账本密钥公布至区块链上。

步骤s280,根据交易地址信息汇总密钥与记账私钥的乘积,验证交易地址信息汇总密钥是否准确。

其中,根据椭圆加密的数学特性,即椭圆加密符合交换律和结合律,因记账私钥参与了每一笔交易的单笔地址密钥的运算,而各单笔地址密钥的汇总信息是被核验时间段内所有交易的单笔地址密钥的求和,交易地址信息汇总密钥是被核验时间段内所有交易的对手方节点的节点地址密钥进行加密后的信息,则交易地址信息汇总密钥与记账私钥的乘积,应当与各单笔地址密钥的汇总信息相等。从而根据交易地址信息汇总密钥与记账私钥的乘积,与各单笔地址密钥的汇总信息相等的原理,验证交易地址信息汇总密钥是否准确。

在一个实施例中,根据交易地址信息汇总密钥与记账私钥的乘积,验证交易地址信息汇总密钥是否准确,包括:根据交易地址信息汇总密钥与记账私钥进行椭圆曲线乘法运算,获得运算后的信息;对各单笔地址密钥进行求和,获得各单笔地址密钥的汇总信息;将运算后的信息与各单笔地址密钥的汇总信息进行比较;当运算后的信息与各单笔地址密钥的汇总信息一致时,交易地址信息汇总密钥准确;当运算后的信息与各单笔地址密钥的汇总信息不一致时,交易地址信息汇总密钥不准确。

其中,根据交易地址信息汇总密钥与记账私钥进行椭圆曲线乘法运算,即:

,其中,x指的是记账私钥,指的是交易地址信息汇总密钥,

从而获得运算后的信息。对各单笔地址密钥进行求和,即:

,从而获得各单笔地址密钥的汇总信息,即,根据椭圆加密符合交换律和结合律,可得:

将运算后的信息与各单笔地址密钥的汇总信息进行比较;当运算后的信息与各单笔地址密钥的汇总信息一致时,则说明被核验节点提供的交易地址信息汇总密钥是准确;当运算后的信息与各单笔地址密钥的汇总信息不一致时,则说明被核验节点提供的交易地址信息汇总密钥是不准确,各单笔地址密钥是存储在区块链中的,存储在区块链中的数据具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征,记账私钥也是被核验节点提供的,被核验节点提供的交易地址信息汇总密钥是不准确,则说明被核验节点存在提供了假的数据。

步骤s300,当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确。

其中,单笔账本密钥是通过资源加密运算点对本次交易的资源进行加密后的加密信息,与本次交易的对手方节点的节点地址密钥进行加密后的加密信息进行椭圆曲线加法运算获得的,根据椭圆加密的数学特性,即椭圆加密符合交换律和结合律,在交易地址信息汇总密钥正确的情况下,被核验时间段发生的所有交易的交易总额加密后的加密信息与交易地址信息汇总密钥的和,是与各单笔账本密钥的汇总信息相同的,即:

从而根据在交易地址信息汇总密钥正确时,各单笔账本密钥的汇总信息与,通过资源加密运算点对待核验资源总额进行加密后获得的加密信息与交易地址信息汇总密钥的和相同的原理,验证待核验资源总额是否准确。

在一个实施例中,请参阅图3,当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确,包括步骤s302至步骤s306:

步骤s302,在交易地址信息汇总密钥正确时,对各单笔账本密钥进行求和,获得各单笔账本密钥的汇总信息。

步骤s304,根据资源加密运算点对待核验资源总额进行加密,获得加密信息。

步骤s306,将各单笔账本密钥的汇总信息,与加密信息和交易地址信息汇总密钥的和进行比较,确定待核验资源总额是否准确。

其中,对加密信息和交易地址信息汇总密钥进行椭圆曲线加法运算,获得账本汇总密钥;将账本汇总密钥与各单笔账本密钥的汇总信息进行比较;当账本汇总密钥与各单笔账本密钥的汇总信息一致时,待核验资源总额准确;当账本汇总密钥与各单笔账本密钥的汇总信息不一致时,待核验资源总额不准确。各单笔账本密钥是存储在区块链中的,存储在区块链中的数据具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征,交易地址信息汇总密钥是准确的,则说明被核验节点提供了假的待核验资源总额,导致账本汇总密钥与各单笔账本密钥的汇总信息不一致。

上述基于区块链的资源核验方法中,当核验节点需要对记账节点的某个时间段进行资源核验时,触发数据核验指令,进一步确定被核验记账节点;获取被核验记账节点发送的记账私钥,以及被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥;获取被核验记账节点在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;根据交易地址信息汇总密钥与记账私钥的乘积,无需解密出隐私数据,即可验证交易地址信息汇总密钥是否准确;当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确,整个核验过程中,无需解密出单笔地址密钥中的地址信息和单笔账本密钥中账本信息,也无需记账节点提供单笔地址密钥中的地址信息和单笔账本密钥中账本信息,就可以完成资源的核验,提高了被核验的节点的数据安全。

在一个实施例中,当运算后的信息与各单笔地址密钥的汇总信息不一致时,交易地址信息汇总密钥不准确的步骤之后,还包括:根据交易地址信息汇总密钥不准确,确定待核验资源总额不准确。

其中,各单笔地址密钥是存储在区块链中的,存储在区块链中的数据具有“不可伪造”“全程留痕”“可以追溯”“公开透明”“集体维护”等特征,记账私钥也是被核验节点提供的,被核验节点提供的交易地址信息汇总密钥是不准确,则说明被核验节点存在提供了假的数据,进一步将待核验资源总额也认定为是不准确的。

在一个实施例中,基于区块链的资源核验方法还包括:向待核验资源总额不准确的记账节点获取准确的资源总额,与被核验时间段内公开在区块链中的各对单笔账本密钥进行比对;并对待核验资源总额不准确的记账节点进行资源扣除。

其中,待核验资源总额不准确,则说明被核验节点存在提供了假的数据,可以根据每一比交易对应的单笔账本密钥,进行比对,要求节点提供正确资产总额信息,对造假的节点进行数字资产的惩罚,即对待核验资源总额不准确的记账节点进行资源扣除。

应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。

在一个实施例中,如图4所示,提供了一种基于区块链的资源核验装置,包括:被核验记账节点确定模块310、第一信息获取模块320、第二信息获取模块330、第一验证模块340和第二验证模块350,其中:

被核验记账节点确定模块310,用于当数据核验指令被触发时,根据数据核验指令从参与记账的记账节点中,确定被核验记账节点,参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账。

第一信息获取模块320,用于获取被核验记账节点发送的记账私钥,以及被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥。

第二信息获取模块330,用于获取被核验记账节点在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥。

第一验证模块340,用于根据交易地址信息汇总密钥与记账私钥的乘积,验证交易地址信息汇总密钥是否准确。

第二验证模块350,用于当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确。

在一个实施例中,第二验证模块350还用于:在交易地址信息汇总密钥正确时,对各单笔账本密钥进行求和,获得各单笔账本密钥的汇总信息;根据资源加密运算点对待核验资源总额进行加密,获得加密信息;将各单笔账本密钥的汇总信息,与加密信息和交易地址信息汇总密钥的和进行比较,确定待核验资源总额是否准确。

在一个实施例中,第二验证模块350还用于:对加密信息和交易地址信息汇总密钥进行椭圆曲线加法运算,获得账本汇总密钥;将账本汇总密钥与各单笔账本密钥的汇总信息进行比较;当账本汇总密钥与各单笔账本密钥的汇总信息一致时,待核验资源总额准确;当账本汇总密钥与各单笔账本密钥的汇总信息不一致时,待核验资源总额不准确。

在一个实施例中,第一验证模块340还用于:根据交易地址信息汇总密钥与记账私钥进行椭圆曲线乘法运算,获得运算后的信息;对各单笔地址密钥进行求和,获得各单笔地址密钥的汇总信息;将运算后的信息与各单笔地址密钥的汇总信息进行比较;当运算后的信息与各单笔地址密钥的汇总信息一致时,交易地址信息汇总密钥准确;当运算后的信息与各单笔地址密钥的汇总信息不一致时,交易地址信息汇总密钥不准确。

在一个实施例中,第一验证模块340还用于:根据交易地址信息汇总密钥不准确,确定待核验资源总额不准确。

请参阅图5,在一个实施例中,上述基于区块链的资源核验装置还包括:加密规则设定模块360,用于在椭圆曲线上任意选取资源加密运算点和地址加密运算点,公布至区块链中;为参与记账的记账节点生成对应的随机数,并对应发送至参与记账的记账节点作为代表记账节点地址的节点地址密钥。

在一个实施例中,第二验证模块350还用于:向待核验资源总额不准确的记账节点获取准确的资源总额,与被核验时间段内公开在区块链中的各对单笔账本密钥进行比对;并对待核验资源总额不准确的记账节点进行资源扣除。

关于基于区块链的资源核验装置的具体限定可以参见上文中对于基于区块链的资源核验方法的限定,在此不再赘述。上述基于区块链的资源核验装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器或终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储资源加密运算点和地址加密运算点数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于区块链的资源核验方法。

本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:

当数据核验指令被触发时,根据数据核验指令从参与记账的记账节点中,确定被核验记账节点,参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账;获取被核验记账节点发送的记账私钥,以及被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥;获取被核验记账节点在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;根据交易地址信息汇总密钥与记账私钥的乘积,验证交易地址信息汇总密钥是否准确;当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:在交易地址信息汇总密钥正确时,对各单笔账本密钥进行求和,获得各单笔账本密钥的汇总信息;根据资源加密运算点对待核验资源总额进行加密,获得加密信息;将各单笔账本密钥的汇总信息,与加密信息和交易地址信息汇总密钥的和进行比较,确定待核验资源总额是否准确。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:对加密信息和交易地址信息汇总密钥进行椭圆曲线加法运算,获得账本汇总密钥;将账本汇总密钥与各单笔账本密钥的汇总信息进行比较;当账本汇总密钥与各单笔账本密钥的汇总信息一致时,待核验资源总额准确;当账本汇总密钥与各单笔账本密钥的汇总信息不一致时,待核验资源总额不准确。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据交易地址信息汇总密钥与记账私钥进行椭圆曲线乘法运算,获得运算后的信息;对各单笔地址密钥进行求和,获得各单笔地址密钥的汇总信息;将运算后的信息与各单笔地址密钥的汇总信息进行比较;当运算后的信息与各单笔地址密钥的汇总信息一致时,交易地址信息汇总密钥准确;当运算后的信息与各单笔地址密钥的汇总信息不一致时,交易地址信息汇总密钥不准确。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:根据交易地址信息汇总密钥不准确,确定待核验资源总额不准确。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:在椭圆曲线上任意选取资源加密运算点和地址加密运算点,公布至区块链中;为参与记账的记账节点生成对应的随机数,并对应发送至参与记账的记账节点作为代表记账节点地址的节点地址密钥。

在一个实施例中,处理器执行计算机程序时还实现以下步骤:向待核验资源总额不准确的记账节点获取准确的资源总额,与被核验时间段内公开在区块链中的各对单笔账本密钥进行比对;并对待核验资源总额不准确的记账节点进行资源扣除。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

当数据核验指令被触发时,根据数据核验指令从参与记账的记账节点中,确定被核验记账节点,参与记账的记账节点采用核验节点提供的椭圆加密的资源加密运算点、地址加密运算点和节点地址密钥进行加密记账;获取被核验记账节点发送的记账私钥,以及被核验记账节点在被核验时间段的待核验资源总额、交易地址信息汇总密钥;获取被核验记账节点在被核验时间段内公开在区块链中的各单笔地址密钥和各单笔账本密钥;根据交易地址信息汇总密钥与记账私钥的乘积,验证交易地址信息汇总密钥是否准确;当交易地址信息汇总密钥正确时,验证待核验资源总额是否准确。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在交易地址信息汇总密钥正确时,对各单笔账本密钥进行求和,获得各单笔账本密钥的汇总信息;根据资源加密运算点对待核验资源总额进行加密,获得加密信息;将各单笔账本密钥的汇总信息,与加密信息和交易地址信息汇总密钥的和进行比较,确定待核验资源总额是否准确。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:对加密信息和交易地址信息汇总密钥进行椭圆曲线加法运算,获得账本汇总密钥;将账本汇总密钥与各单笔账本密钥的汇总信息进行比较;当账本汇总密钥与各单笔账本密钥的汇总信息一致时,待核验资源总额准确;当账本汇总密钥与各单笔账本密钥的汇总信息不一致时,待核验资源总额不准确。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据交易地址信息汇总密钥与记账私钥进行椭圆曲线乘法运算,获得运算后的信息;对各单笔地址密钥进行求和,获得各单笔地址密钥的汇总信息;将运算后的信息与各单笔地址密钥的汇总信息进行比较;当运算后的信息与各单笔地址密钥的汇总信息一致时,交易地址信息汇总密钥准确;当运算后的信息与各单笔地址密钥的汇总信息不一致时,交易地址信息汇总密钥不准确。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据交易地址信息汇总密钥不准确,确定待核验资源总额不准确。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:在椭圆曲线上任意选取资源加密运算点和地址加密运算点,公布至区块链中;为参与记账的记账节点生成对应的随机数,并对应发送至参与记账的记账节点作为代表记账节点地址的节点地址密钥。

在一个实施例中,计算机程序被处理器执行时还实现以下步骤:向待核验资源总额不准确的记账节点获取准确的资源总额,与被核验时间段内公开在区块链中的各对单笔账本密钥进行比对;并对待核验资源总额不准确的记账节点进行资源扣除。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-onlymemory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(randomaccessmemory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(staticrandomaccessmemory,sram)或动态随机存取存储器(dynamicrandomaccessmemory,dram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1