一种区块链共识方法及装置制造方法及图纸

技术编号:24036101 阅读:15 留言:0更新日期:2020-05-07 01:57
本发明专利技术公开了一种区块链共识方法及装置,该方法包括:确定见证节点;基于量子密钥分发网络,为各个所述见证节点分发全局密钥;利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点。因为所有见证节点共同持有该全局密钥,利用该全局密钥选出满足预设条件的节点,即通过量子彩票机制选择得到记账节点,因此,基于量子密钥的使用,解决了见证节点的信任问题及如何在见证节点中公平选择记账节点的问题。

A blockchain consensus method and device

【技术实现步骤摘要】
一种区块链共识方法及装置
本专利技术涉及区块链
,特别是涉及一种区块链共识方法及装置。
技术介绍
区块链是一个分布式账本,每一个交易参与者都是区块链网络的节点,每个节点都有一份完整的公共账簿备份,上面记载着交易历史信息。任何一个节点发起交易行为都需要将相关信息更新到区块网络中的每一个节点的账簿,从而所有节点均可参与对这一笔交易的验证。怎样协调、保持各个账本之间的一致性,就是共识机制需要解决的问题。共识机制的基本思路是每次临时选择一个节点作为记账节点,其他节点核实该记账节点记录的每一笔交易是否真实有效,如果不是则需要更换下一个记账节点。由于安全性问题,区块链设计时规定每次记账都需要重新选择记账节点,而现有的共识机制的区别主要是在记账节点的选取方式上,例如,DPoS(股权授权证明)机制其核心思路就是选取见证节点轮流记账,这种方法的公正性不高,依赖于见证节点的可信度和选取见证节点的方案,该共识机制会存在见证节点的信任问题,因此无法公平的选择记账节点。
技术实现思路
针对于上述问题,本专利技术提供一种区块链共识方法及装置,基于量子密钥的使用,解决了见证节点的信任问题及如何在见证节点中公平选择记账节点的问题。为了实现上述目的,本专利技术提供了如下技术方案:一种区块链共识方法,包括:确定见证节点;基于量子密钥分发网络,为各个所述见证节点分发全局密钥;利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点。可选地,所述基于量子密钥分发网络,为各个所述见证节点分发全局密钥,包括:在所述见证节点之间构建量子密钥分发网络;在所述量子密钥分发网络中,随机选取一对量子网络节点,并生成一组对称密钥,将所述对称密钥作为全局密钥;将所述全局密钥分发至所有量子网络节点,并指示所述见证节点从与之对应的量子网络节点中提取所述全局密钥,实现所有所述见证节点获得完全相同的全局密钥。可选地,还包括:当所述见证节点从与之对应的量子网络节点中提取到所述全局密钥之后,通过发送所述见证节点的摘要校验所述全局密钥的准确性,若校验成功,则指示所述见证节点记录所述全局密钥。可选地,所述利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点,包括:响应于交易数据积累完成前,根据所述见证节点的全局密钥生成组密钥;将所述组密钥进行划分得到若干块组密钥,将每一块组密钥发送至各个所述见证节点,其中,所述每一块组密钥仅作为一个所述见证节点的凭证;响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据;获取各个所述见证节点的差值信息,将差值最小的见证节点作为候选记账节点;对所述候选记账节点的凭证和交易数据进行验证,若验证成功将所述候选记账节点作为记账节点。可选地,所述响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据,包括:获取所述见证节点全局密钥中未使用的随机数;将所述见证节点对应的交易数据和上一区块的散列值进行组合,生成组合后的数据;通过所述未使用的随机数生成预设矩阵,并将所述预设矩阵与所述组合后的数据相乘,得到所述散列数据;其中,所述差值信息表征所述散列数据与对应的见证节点的凭证之间的差值。可选地,所述响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据,包括:获取所述见证节点全局密钥中未使用的随机数;将所述见证节点对应的交易数据和上一区块的散列值进行组合,生成组合后的数据;通过所述见证节点的凭证生成预设矩阵,并将所述预设矩阵与所述组合后的数据相乘,得到所述散列数据;其中,所述差值信息表征所述散列数据与所述未使用的随机数之间的差值。可选地,所述响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据,包括:获取所述见证节点全局密钥中未使用的随机数;将所有所述见证节点对应的交易数据、上一区块的散列值和凭证进行组合,生成组合后的数据;通过预设哈希函数对所述组合后的数据进行散列,得到所述散列数据;其中,所述差值信息表征所述散列数据与所述未使用的随机数之间的差值。一种区块链共识装置,包括:确定单元,用于确定见证节点;分发单元,用于基于量子密钥分发网络,为各个所述见证节点分发全局密钥;选取单元,用于利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点。可选地,所述分发单元包括:构建子单元,用于在所述见证节点之间构建量子密钥分发网络;密钥生成子单元,用于在所述量子密钥分发网络中,随机选取一对量子网络节点,并生成一组对称密钥,将所述对称密钥作为全局密钥;密钥提取子单元,用于将所述全局密钥分发至所有量子网络节点,并指示所述见证节点从与之对应的量子网络节点中提取所述全局密钥,实现所有所述见证节点获得完全相同的全局密钥。可选地,还包括:校验子单元,用于当所述见证节点从与之对应的量子网络节点中提取到所述全局密钥之后,通过发送所述见证节点的摘要校验所述全局密钥的准确性,若校验成功,则指示所述见证节点记录所述全局密钥。可选地,所述选取单元包括:组密钥生成子单元,用于响应于交易数据积累完成前,根据所述见证节点的全局密钥生成组密钥;划分子单元,用于将所述组密钥进行划分得到若干块组密钥,将每一块组密钥发送至各个所述见证节点,其中,所述每一块组密钥仅作为一个所述见证节点的凭证;散列生成子单元,用于响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据;差值确定子单元,用于获取各个所述见证节点的差值信息,将差值最小的见证节点作为候选记账节点;验证子单元,用于对所述候选记账节点的凭证和交易数据进行验证,若验证成功将所述候选记账节点作为记账节点。可选地,所述散列生成子单元包括:第一随机数获取子单元,用于获取全局密钥中未使用的随机数;第一组合子单元,用于将所述见证节点对应的交易数据和上一区块的散列值进行组合,生成组合后的数据;第一散列数据生成子单元,用于通过所述未使用的随机数生成预设矩阵,并将所述预设矩阵与所述组合后的数据相乘,得到所述散列数据;其中,所述差值信息表征所述散列数据与对应的见证节点的凭证之间的差值。可选地,所述散列生成子单元包括:第二随机数获取子单元,用于获取全局密钥中未使用的随机数;第二组合子单元,用于将所述见证节点对应的交易数据和上一区块的散列值进行组合,生成组合后的数据;第二散列数据生成子单元,用于通过所述见证节点的凭证生成预设矩阵,并将所述预设矩阵与所述组合后的数据相乘,得到所述散列数据;其中,所述差值信息表征所述散列数据与所述未使用的随机数之间的差值。<本文档来自技高网...

【技术保护点】
1.一种区块链共识方法,其特征在于,包括:/n确定见证节点;/n基于量子密钥分发网络,为各个所述见证节点分发全局密钥;/n利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点。/n

【技术特征摘要】
1.一种区块链共识方法,其特征在于,包括:
确定见证节点;
基于量子密钥分发网络,为各个所述见证节点分发全局密钥;
利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点。


2.根据权利要求1所述的方法,其特征在于,所述基于量子密钥分发网络,为各个所述见证节点分发全局密钥,包括:
在所述见证节点之间构建量子密钥分发网络;
在所述量子密钥分发网络中,随机选取一对量子网络节点,并生成一组对称密钥,将所述对称密钥作为全局密钥;
将所述全局密钥分发至所有量子网络节点,并指示所述见证节点从与之对应的量子网络节点中提取所述全局密钥,实现所有所述见证节点获得完全相同的全局密钥。


3.根据权利要求2所述的方法,其特征在于,还包括:
当所述见证节点从与之对应的量子网络节点中提取到所述全局密钥之后,通过发送所述见证节点的摘要校验所述全局密钥的准确性,若校验成功,则指示所述见证节点记录所述全局密钥。


4.根据权利要求1至3任意一项所述的方法,其特征在于,所述利用所述全局密钥和交易数据选取出所述见证节点中满足预设条件的节点作为记账节点,包括:
响应于交易数据积累完成前,根据所述见证节点的全局密钥生成组密钥;
将所述组密钥进行划分得到若干块组密钥,将每一块组密钥发送至各个所述见证节点,其中,所述每一块组密钥仅作为一个所述见证节点的凭证;
响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据;
获取各个所述见证节点的差值信息,将差值最小的见证节点作为候选记账节点;
对所述候选记账节点的凭证和交易数据进行验证,若验证成功将所述候选记账节点作为记账节点。


5.根据权利要求4所述的方法,其特征在于,所述响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据,包括:
获取所述见证节点全局密钥中未使用的随机数;
将所述见证节点对应的交易数据和上一区块的散列值进行组合,生成组合后的数据;
通过所述未使用的随机数生成预设矩阵,并将所述预设矩阵与所述组合后的数据相乘,得到所述散列数据;
其中,所述差值信息表征所述散列数据与对应的见证节点的凭证之间的差值。


6.根据权利要求4所述的方法,其特征在于,所述响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据,包括:
获取所述见证节点全局密钥中未使用的随机数;
将所述见证节点对应的交易数据和上一区块的散列值进行组合,生成组合后的数据;
通过所述见证节点的凭证生成预设矩阵,并将所述预设矩阵与所述组合后的数据相乘,得到所述散列数据;
其中,所述差值信息表征所述散列数据与所述未使用的随机数之间的差值。


7.根据权利要求4所述的方法,其特征在于,所述响应于交易数据收集完成,将交易数据和对应上一个区块的散列值组合在一起生成散列数据,包括:
获取所述见证节点全局密钥中未使用的随机数;
将所有所述见证节点对应的交易数据、上一区块的散列值和凭证进行组合,生成组合后的数据;
通过预设哈希函数对所述组合后的数据进行散列,得到所述散列数据;
其中,所述差值信息表征所述散列数据与所述未使用的随机数之间的差值。


8.一种区块链共识装置,其特征在于,包...

【专利技术属性】
技术研发人员:唐鹏毅刘建宏余刚卢昌斌薛路
申请(专利权)人:北京国盾量子信息技术有限公司科大国盾量子技术股份有限公司
类型:发明
国别省市:北京;11

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

1