【技术实现步骤摘要】
基于区块链的密钥生成方法、装置、电子设备和可读介质
[0001]本申请涉及计算机
,尤其涉及一种密钥生成方法、装置、电子设备和可读介质。
技术介绍
[0002]在联盟链的共识过程中,通常会将门限加密和门限签名引入到共识过程中,解决单个节点权限过大导致密钥丢失时加密失效、节点权限滥用或该节点被攻击者控制等安全风险。
[0003]在相关技术中,区块链在初始化的过程中会为各个共识节点下发门限密钥分片,从而允许共识节点在共识过程中采用门限签名的方式进行共识。
[0004]然而,在上述的方案中,门限密钥分片的分发由中心机构根据区块链中的共识节点的情况生成和分发,一旦中心机构发生密钥泄露或者被攻击,会导致整个鉴权系统失效,从而影响区块链的安全性和稳定性。
技术实现思路
[0005]基于上述技术问题,本申请提供一种基于区块链的密钥生成方法,以避免单个节点的密钥泄露或者被攻击而导致整个区块链的鉴权系统失效,提升了系统的稳定性和安全性。
[0006]本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
[0007]根据本申请实施例的一个方面,提供一种基于区块链的密钥生成方法,包括:根据目标共识节点的承诺函数生成所述目标共识节点的承诺值,并根据所述目标共识节点的承诺函数计算所述目标共识节点的辅助分片;将所述目标共识节点的承诺值在所述区块链中上链,并从所述区块链中获取其他共识节点的承诺值,其中,所述其他共识节点的承诺值由所述其他共识节点根据所拥有的承诺函 ...
【技术保护点】
【技术特征摘要】
1.一种基于区块链的密钥生成方法,其特征在于,包括:根据目标共识节点的承诺函数生成所述目标共识节点的承诺值,并根据所述目标共识节点的承诺函数计算所述目标共识节点的辅助分片;将所述目标共识节点的承诺值在所述区块链中上链,并从所述区块链中获取其他共识节点的承诺值,其中,所述其他共识节点的承诺值由所述其他共识节点根据所拥有的承诺函数生成;根据所述其他共识节点的承诺值验证接收到的所述其他共识节点的辅助分片,所述其他共识节点的辅助分片由所述其他共识节点根据所拥有的承诺函数计算得到;根据所述目标共识节点的辅助分片和所述其他共识节点的辅助分片生成所述目标共识节点的私钥,并根据所述目标共识节点的承诺值和所述其他共识节点上链的承诺值生成所述私钥对应的公钥。2.根据权利要求1所述的方法,其特征在于,所述根据所述其他共识节点的承诺值验证接收到的所述其他共识节点的辅助分片,包括;接收各个其他共识节点发送的辅助分片;根据所述其他共识节点的承诺值,对所述其他共识节点发送的辅助分片进行验证;若验证通过,则将所述其他共识节点的辅助分片加入验证结果;若验证失败,则丢弃所述其他共识节点的辅助分片并向所述区块链中的剩余共识节点发送验证失败的辅助分片,以使所述剩余共识节点根据所述验证失败的辅助分片丢弃从所述其他共识节点接收到的辅助分片。3.根据权利要求2所述的方法,其特征在于,所述根据所述其他共识节点的承诺值验证接收到的所述其他共识节点的辅助分片,还包括:从所述其他共识节点接收所述其他共识节点验证失败的辅助分片,其中,所述其他共识节点验证失败的辅助分片是所述区块链中的特定共识节点针对于所述其他共识节点生成的辅助分片;根据所述特定共识节点上链的承诺值,对所述其他共识节点验证失败的辅助分片进行验证;根据验证结果,丢弃从所述特定共识节点接收到的辅助分片。4.根据权利要求1所述的方法,其特征在于,所述根据所述目标共识节点的辅助分片和所述其他共识节点的辅助分片生成所述目标共识节点的私钥,并根据所述目标共识节点的承诺值和所述其他共识节点上链的承诺值生成所述私钥对应的公钥之后,所述方法还包括:当所述区块链的共识节点数量发生变化时,判断所述区块链的门限值是否发生变化,所述门限值用于指示所述区块链中进行门限加密所需的共识节点数量;若所述共识节点数量增加并且所述门限值未发生变化,则触发新增的共识节点生成所述私钥和所述公钥;若所述共识节点数量减少或者所述门限值发生变化,则触发所述区块链中的共识节点重新生成所述私钥和所述公钥。5.根据权利要求4所述的方法,其特征在于,所述若所述共识节点数量增加并且所述门限值未发生变化,则触发新增的共识节点生成所述私钥和所述公钥,包括:
若所述共识节点数量增加并且所述门限值未发生变化,根据所述承诺函数生成针对于所述新增的共识节点的辅助分片;向所述新增的共识节点发送所生成的辅助分片,以使所述新增的共识节点根据所接收的辅助分片生成私钥。6.根据权利要求4所述的方法,其特征在于,所述若所述共识节点数量减少或者所述门限值发生变化,则触发所述区块链中的共识节点重新生成所述私钥和所述公钥,包括:若所述门限值发生变化,则从所述区块链中选择共识节点作为协商节点,其中,所述协商节点的数量满足变化后门限值;向所述协商节点发送密钥更新指令,以通过所述协商节点触发所述区块链中的共识节点重新生成所述私钥和所述公钥。7.根据权利要求6所述的方法,其特征在于,所述从所述区块链中选择共识节点作为协商节点,包括:通过预设映射关系,将所述区块链的区块高度扩展为密钥信息;根据所述区块高度和所述变化后门限值,生成多个密钥标签,所述密钥标签的数量满足所述变化后门限值;根据所述密钥信息分别与所述多个密钥标签通过伪随机映射得到所选择的共识节点的编号,得到共识节点...
【专利技术属性】
技术研发人员:张靖宁,张韬,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。