密钥生成方法、装置、电子设备及存储介质与流程
- 国知局
- 2024-08-02 14:13:36
本技术涉及区块链,特别是涉及一种密钥生成方法、装置、电子设备及存储介质。
背景技术:
1、在金融分布式账本系统中,一般是通过持有的密钥管理账户并对拥有的数字资产进行操作。相关技术中,可以将密钥托管在系统中,使用账户名和口令去获取密钥的使用权限,在这种系统中,通常需要由一个权威机构统一管理账户的密钥,这种密钥管理方式属于中心化的管理方式,账户持有者需要完全信任该中心化的机构,然而,这在分布式账本这种弱信任场景中缺乏稳健性,容易带来单点故障等安全性问题。
技术实现思路
1、以下是对本技术详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
2、本技术实施例提供了一种密钥生成方法、装置、电子设备及存储介质,能够提升密钥的稳定性和安全性。
3、一方面,本技术实施例提供了一种密钥生成方法,包括:
4、生成目标随机数,对所述目标随机数进行派生处理,得到目标秘密值;
5、获取目标账户的账户标识,根据所述账户标识构建密钥生成请求,将所述密钥生成请求发送至区块链网络中的多个目标节点,以供多个所述目标节点根据所述目标节点的节点私钥和所述账户标识生成各自对应的秘密分片;
6、获取各个所述目标节点发送的所述秘密分片,对多个所述秘密分片进行聚合处理,得到私钥组件;
7、根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
8、另一方面,本技术实施例还提供了一种密钥生成方法,包括:
9、接收终端根据目标账户的账户标识构建的密钥生成请求;
10、获取目标节点的节点私钥,从所述密钥生成请求中提取出所述账户标识,根据节点私钥和所述账户标识生成秘密分片;
11、将秘密分片发送至终端,以供终端对不同目标节点的多个所述秘密分片进行聚合处理得到私钥组件后,根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
12、另一方面,本技术实施例还提供了一种密钥生成方法,包括:
13、终端生成目标随机数,对所述目标随机数进行派生处理,得到目标秘密值;
14、终端获取目标账户的账户标识,根据所述账户标识构建密钥生成请求,将所述密钥生成请求发送至区块链网络中的多个目标节点;
15、目标节点接收终端发送的密钥生成请求,获取目标节点的节点私钥,从所述密钥生成请求中提取出所述账户标识,根据节点私钥和所述账户标识生成秘密分片,将秘密分片发送至终端;
16、终端获取各个所述目标节点发送的所述秘密分片,对多个所述秘密分片进行聚合处理,得到私钥组件,根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
17、另一方面,本技术实施例还提供了一种密钥生成方法,包括:
18、获取目标账户的账户标识,根据所述账户标识构建目标密钥的密钥恢复请求;
19、获取区块链网络中各个所述目标节点根据所述密钥恢复请求发送的秘密分片,将多个所述秘密分片进行聚合得到私钥组件,其中,所述秘密分片是由所述目标节点根据所述目标节点的节点私钥和所述账户标识生成的;
20、获取生成所述目标密钥时使用的目标随机数,根据所述目标随机数恢复出生成所述目标密钥时使用的目标秘密值;
21、根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
22、另一方面,本技术实施例还提供了一种密钥生成方法,包括:
23、接收智能合约发送的共识消息,根据共识消息对终端构建的目标密钥的密钥恢复请求进行共识处理;
24、当共识处理通过,响应于在同步阶段中的合约订阅事件,从所述密钥恢复请求中提取出目标账户的账户标识;
25、获取目标节点的节点私钥,根据节点私钥和所述账户标识生成秘密分片;
26、将秘密分片发送至终端,以供终端对不同目标节点的多个所述秘密分片进行聚合处理得到私钥组件后,根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
27、另一方面,本技术实施例还提供了一种密钥生成方法,包括:
28、终端获取目标账户的账户标识,根据所述账户标识构建目标密钥的密钥恢复请求,将密钥恢复请求发送至区块链网络中的智能合约;
29、目标节点接收智能合约发送的共识消息,根据共识消息对终端构建的目标密钥的密钥恢复请求进行共识处理;
30、当共识处理通过,目标节点响应于在同步阶段中的合约订阅事件,从所述密钥恢复请求中提取出目标账户的账户标识;
31、目标节点获取目标节点的节点私钥,根据节点私钥和所述账户标识生成秘密分片,将秘密分片发送至终端;
32、终端获取各个所述目标节点根据所述密钥恢复请求发送的秘密分片,将多个所述秘密分片进行聚合得到私钥组件;
33、终端获取生成所述目标密钥时使用的目标随机数,根据所述目标随机数恢复出生成所述目标密钥时使用的目标秘密值,根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
34、另一方面,本技术实施例还提供了一种密钥生成装置,包括:
35、目标秘密值生成模块,用于生成目标随机数,对所述目标随机数进行派生处理,得到目标秘密值;
36、第一请求模块,用于获取目标账户的账户标识,根据所述账户标识构建密钥生成请求,将所述密钥生成请求发送至区块链网络中的多个目标节点,以供多个所述目标节点根据所述目标节点的节点私钥和所述账户标识生成各自对应的秘密分片;
37、第一聚合模块,用于获取区块链网络中各个所述目标节点发送的所述秘密分片,对多个所述秘密分片进行聚合处理,得到私钥组件;
38、密钥生成模块,用于根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
39、进一步,第一聚合模块具体用于:
40、确定各个所述秘密分片对应的权重系数;
41、根据所述权重系数将多个所述秘密分片进行连乘,得到所述私钥组件。
42、进一步,第一聚合模块具体用于:
43、获取所述区块链网络中各个所述目标节点的节点公钥,根据所述节点公钥对所述秘密分片进行验证;
44、当所述秘密分片验证通过,确定验证通过的所述秘密分片对应的所述权重系数。
45、进一步,目标秘密值生成模块具体用于:
46、生成第一预设长度的初始随机数,对所述初始随机数进行哈希运算,得到第一目标参数;
47、从所述第一目标参数中提取出第二预设长度的校验值,将所述初始随机数和所述校验值进行拼接,得到第二目标参数;
48、对所述第二目标参数进行分割,得到多个目标子参数,根据所述目标子参数从预设词典中匹配得到目标单词,根据多个所述目标单词得到所述目标账户的明文信息;
49、根据所述明文信息生成所述目标随机数。
50、进一步,目标秘密值生成模块具体用于:
51、对所述目标随机数进行哈希运算,得到初始父链秘密值以及父链编码;
52、获取预设长度的首位字符,确定所述初始父链秘密值的父链索引号,将所述首位字符、初始父链秘密值以及所述父链索引号进行拼接,得到拼接父链秘密值;
53、对所述拼接父链秘密值以及所述父链编码进行哈希运算,得到子链秘密值;
54、将所述初始父链秘密值和所述子链秘密值进行求模,得到所述目标秘密值。
55、进一步,所述目标密钥包括账户私钥,密钥生成模块具体用于:
56、获取预设的第一公共参数,根据所述第一公共参数和所述目标秘密值得到第三目标参数;
57、对所述第三目标参数进行哈希运算,得到第四目标参数;
58、根据所述第四目标参数、所述目标秘密值和所述私钥组件生成所述账户私钥。
59、进一步,第一请求模块具体用于:
60、确定所述目标秘密值的派生路径,根据所述派生路径生成路径标识;
61、根据所述路径标识和所述账户标识构建所述密钥生成请求。
62、进一步,所述秘密分片由所述目标节点通过以下步骤生成:
63、将所述路径标识以及所述账户标识进行拼接,得到第五目标参数;
64、对所述第五目标参数进行哈希运算,得到第六目标参数;
65、获取所述目标节点的节点私钥,根据所述第六目标参数和所述节点私钥生成所述秘密分片。
66、另一方面,本技术实施例还提供了一种密钥生成装置,包括:
67、第二请求模块,用于获取目标账户的账户标识,根据所述账户标识构建目标密钥的密钥恢复请求;
68、第二聚合模块,用于获取各个所述目标节点根据所述密钥恢复请求发送的秘密分片,将多个所述秘密分片进行聚合得到私钥组件,其中,所述秘密分片是由所述目标节点根据所述目标节点的节点私钥和所述账户标识生成的;
69、目标秘密值恢复模块,获取生成所述目标密钥时使用的目标随机数,根据所述目标随机数恢复出生成所述目标密钥时使用的目标秘密值;
70、密钥恢复模块,用于根据所述私钥组件以及所述目标秘密值生成所述目标账户的目标密钥。
71、进一步,目标秘密值恢复模块具体用于:
72、获取所述目标账户的账户公钥,从所述账户公钥中提取出所述路径标识,其中,所述路径标识用于指示所述目标秘密值的派生路径;
73、对所述目标随机数进行派生处理,得到多个候选秘密值;
74、根据所述路径标识从多个所述候选秘密值中,确定生成所述目标密钥时使用的所述目标秘密值。
75、进一步,第二聚合模块具体用于:
76、将所述密钥恢复请求发送至区块链网络中的智能合约,以供所述智能合约通知所述区块链网络中各个所述目标节点对所述密钥恢复请求发起共识处理;
77、当所述共识处理通过后,获取在同步阶段中各个所述目标节点基于合约订阅事件触发而生成的所述秘密分片。
78、另一方面,本技术实施例还提供了一种电子设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述的密钥生成方法。
79、另一方面,本技术实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行实现上述的密钥生成方法。
80、另一方面,本技术实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存介质中。计算机设备的处理器从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行实现上述的密钥生成方法。
81、本技术实施例至少包括以下有益效果:通过生成目标随机数,对目标随机数进行派生处理,得到目标秘密值,获取目标账户的账户标识,根据账户标识构建密钥生成请求,将密钥生成请求发送至区块链网络中的多个目标节点,使得目标节点可以根据目标节点的节点私钥和账户标识生成各自对应的秘密分片,后续利用不同目标节点生成的秘密分片来进行目标密钥的生成,从而能够利用多个目标节点代替传统方案中的中心化机构进行密钥生成,达到去中心化的效果,提升密钥的稳定性和安全性,并且,通过获取各个目标节点发送的秘密分片,对多个秘密分片进行聚合处理得到私钥组件,使得私钥组件的生成需要依赖多个目标节点生成的秘密分片,有利于提升私钥组件的安全性和可靠性,从而进一步提升目标密钥的稳定性和安全性,最后,根据私钥组件以及目标秘密值生成目标账户的目标密钥,由于秘密分片是根据账户标识生成的,可以起到目标密钥与账户标识的绑定作用,便于后续在密钥丢失时可以通过账户标识找回目标密钥,提升目标密钥找回的安全性与便捷性。
82、当目标密钥丢失时,可以根据账户标识构建目标密钥的密钥恢复请求,获取各个目标节点根据密钥恢复请求发送的秘密分片并聚合成私钥组件,再获取生成所述目标密钥时使用的目标随机数,根据目标随机数恢复出生成目标密钥时使用的目标秘密值,进一步根据私钥组件以及目标秘密值生成目标账户的目标密钥,从而能够基于账户标识快速可靠地恢复出目标密钥,提升对目标密钥进行恢复的稳定性与可靠性。
83、本技术的其他特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术而了解。
本文地址:https://www.jishuxx.com/zhuanli/20240801/242096.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表