一种块链式账本中的权重分配方法、装置及设备制造方法及图纸

技术编号:27201693 阅读:24 留言:0更新日期:2021-01-31 12:12
本发明专利技术公开了一种块链式账本中的权重分配方法、装置及设备。通过本说明书实施例所提供的方案,在需要加入监管用户时,通过选取目标签名用户,并根据目标签名用户的权重值和其所需要的操作指令权重确定出权重差值,从而在权重差值的范围内分配相应的目标权重至监管用户,以实现在对监管用户进行有限授权的同时,保证目标签名用户的相关操作不受影响。保证目标签名用户的相关操作不受影响。保证目标签名用户的相关操作不受影响。

【技术实现步骤摘要】
一种块链式账本中的权重分配方法、装置及设备


[0001]本说明书实施例涉及信息
,尤其涉及一种块链式账本中的权重分配方法、装置及设备。

技术介绍

[0002]在服务端以块链式账本对外提供服务时,可能需要多名用户同时对数据记录进行签名。此时,基于业务需要,需要在服务端中加入新的一些监管用户或者监管节点,并对其进行合理的权重分配。
[0003]基于此,需要一种在块链式账本中灵活的进行权重分配的方案。

技术实现思路

[0004]本申请实施例的目的是提供一种在块链式账本中灵活的进行权重分配的方案。
[0005]为解决上述技术问题,本申请实施例是这样实现的:
[0006]一种块链式账本中的权重分配方法,包括:
[0007]获取待授权的监管用户,确定所述监管用户所对应的块链式账本;
[0008]获取所述块链式账本所对应的签名配置记录,其中,所述签名配置记录包含多个签名用户;
[0009]从所述多个签名用户中选取出一个目标签名用户,确定所述目标签名用户的用户权重;
[0010]确定在所述用户权重下进行用户操作时所需要的最高的操作指令权重,计算所述用户权重与所述最高的操作指令权重的权重差值;
[0011]生成应用于所述块链式账本中的不超过所述权重差值的目标权重,将所述目标权重分配给所述待授权的监管用户,并根据所述目标权重更新所述目标签名用户的用户权重。
[0012]对应的,本说明书实施例还提供一种块链式账本中的权重分配装置,包括:
[0013]账本确定模块,获取待授权的监管用户,确定所述监管用户所对应的块链式账本;
[0014]签名配置记录获取模块,获取所述块链式账本所对应的签名配置记录,其中,所述签名配置记录包含多个签名用户;
[0015]用户权重确定模块,从所述多个签名用户中选取出一个目标签名用户,确定所述目标签名用户的用户权重;
[0016]权重差值确定模块,确定在所述用户权重下进行用户操作时所需要的最高的操作指令权重,计算所述用户权重与所述最高的操作指令权重的权重差值;
[0017]权重分配模块,生成应用于所述块链式账本中的不超过所述权重差值的目标权重,将所述目标权重分配给所述待授权的监管用户,并根据所述目标权重更新所述目标签名用户的用户权重。
[0018]通过本说明书实施例所提供的方案,在需要加入监管用户时,通过选取目标签名
用户,并根据目标签名用户的权重值和其所需要的操作指令权重确定出权重差值,从而在权重差值的范围内分配相应的目标权重至监管用户,以实现在对监管用户进行有限授权的同时,保证目标签名用户的相关操作不受影响,实现在块链式账本中灵活的进行权重分配。
[0019]应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本说明书实施例。
[0020]此外,本说明书实施例中的任一实施例并不需要达到上述的全部效果。
附图说明
[0021]为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
[0022]图1为本说明书实施例所提供的一种块链式账本中的数据块生成方法的流程示意图;
[0023]图2为本说明书实施例所提供的一种数据块的块头的示意图;
[0024]图3是本说明书实施例提供的一种块链式账本中的权重分配方法的流程示意图;
[0025]图4是本说明书实施例提供的一种块链式账本中的权重分配装置的结构示意图;
[0026]图5是用于配置本说明书实施例方法的一种设备的结构示意图。
具体实施方式
[0027]为了使本领域技术人员更好地理解本说明书实施例中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行详细地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于保护的范围。
[0028]首先对本说明书实施例中所涉及的块链式账本进行简要说明,如图1所示,图1为本说明书实施例所提供的一种块链式账本中的数据块生成方法的流程示意图,该流程具体包括如下步骤:
[0029]S101,接收待存储的数据记录,确定各数据记录的哈希值。此处的待存储的数据记录,可以是客户端个人用户的各种消费记录,也可以是应用服务器基于用户的指令,在执行业务逻辑时产生的业务结果、中间状态以及操作记录等等。具体的业务场景可以包括消费记录、审计日志、供应链条、政府监管记录、医疗记录等等。
[0030]S103,当达到预设的成块条件时,确定待写入数据块中的各数据记录,生成包含数据块的哈希值和数据记录的第N个数据块。
[0031]所述预设的成块条件包括:待存储的数据记录数量达到数量阈值,例如,每接收到一千条数据记录时,生成一个新数据块,将一千条数据记录写入块中;或者,距离上一次成块时刻的时间间隔达到时间阈值,例如,每隔5分钟,生成一个新数据块,将在这5分钟内接收到的数据记录写入块中。
[0032]此处的N指的是数据块的序号,换言之,在本说明书实施例中,数据块是以块链的形式,基于成块时间的顺序先后排列,具有很强的时序特征。其中,数据块的块高基于成块
时间的先后顺序单调递增。块高可以是序号,此时第N个数据块的块高即为N;块高也可以其它方式生成,例如,将数据块的成块时间戳转换为单调递增的大整型数据,以该大整型数据作为数据块的块高。
[0033]当N=1时,即此时的数据块为初始数据块。初始数据块的哈希值和块高基于预设方式给定。例如,初始数据块中不包含数据记录,哈希值则为任一给定的哈希值,块高blknum=0;又例如,初始数据块的生成触发条件与其它数据块的触发条件一致,但是初始数据块的哈希值由对初始数据块中的所有内容取哈希确定。
[0034]当N>1时,由于前一数据块的内容和哈希值已经确定,则此时,可以基于前一数据块(即第N-1个数据块)的哈希值生成当前数据块(第N个数据块)的哈希值。
[0035]具体而言,可以确定每一条将要写入第N个块中的数据记录的哈希值,按照在块中的排列顺序,生成一个默克尔树,将默克尔树的根哈希值和前一数据块的哈希值拼接在一起,再次采用哈希算法,生成当前块的哈希值,以及还可以根据默克尔树的根哈希值和其它一些元数据(例如版本号、数据块的生成时间戳等等)生成当前快的哈希值。并且,将所述数据记录写入数据块的块体中,将所述根哈希写入数据块的块头中,其中,数据块的块高基于成块时间的先后顺序单调递增。
[0036]块链式账本中的数据块,可以包括块头和块体两个部分。块体中可以用于存储拼接数据的明文,或者拼接数据的哈希值等等;块头中可以用于存储有关本数本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种块链式账本中的权重分配方法,用于向添加到块链式账本的监管用户分配用户权重,所述方法包括:从所述块链式账本对应的全部具有用户权重的签名用户中,确定一个签名用户,作为目标签名用户;确定在所述目标签名用户的用户权重下进行用户操作时所需要的最高的操作指令权重,计算所述目标签名用户的用户权重与所述最高的操作指令权重的权重差值;确定不超过所述权重差值的目标权重,作为分配给所述监管用户的用户权重。2.如权利要求1所述的方法,从所述块链式账本对应的全部具有用户权重的签名用户中,确定一个签名用户,包括:从所述块链式账本对应的全部具有用户权重的签名用户中,随机确定一个签名用户;或者,从所述块链式账本对应的全部具有用户权重的签名用户中,随机确定一个签名用户,确定用户权重最高的一个签名用户;或者,从所述块链式账本对应的全部具有用户权重的签名用户中,,确定权重差值最大的一个签名用户。3.如权利要求1所述的方法,所述方法还包括:计算所述目标签名用户的用户权重与所述目标权重的差值,将所述目标签名用户的用户权重重新确定为该差值。4.如权利要求1所述的方法,从所述块链式账本对应的全部具有用户权重的签名用户中,确定一个签名用户,包括:基于签名配置记录,确定一个签名用户;所述签名配置记录用于记录所述块链式账本对应的全部具有用户权重的签名用户。5.如权利要求1至4任一所述的方法,所述方法还包括:接收任一签名用户所发送的联合签名请求;将所述联合签名请求发送至每个签名用户;接收每个签名用户所返回的对于所述联合签名请求的确认信息;监测返回确认信息的签名用户的用户权重之和,当所述用户权重之和不低于签名权重阈值时,进行...

【专利技术属性】
技术研发人员:杨新颖杨伊婷张渊李亿泽俞本权闫文远
申请(专利权)人:支付宝杭州信息技术有限公司
类型:发明
国别省市:

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

1