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.可选的,所述非对称加密采用国密sm2算法。
32.可选的,所述对称加密采用国密sm4算法。
33.根据本发明提供的具体实施例,本发明公开了以下技术效果:本发明不同用户秘钥对应的加密种子是不一样的,同时加密种子不是以明文存储在设备中,可以提高用户秘钥托管的安全性。
附图说明
34.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
35.图1为本发明实施例提供的秘钥托管电子设备的组成框图;
36.图2为本发明实施例提供的秘钥托管电子设备的示意图。
具体实施方式
37.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
38.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
39.因为区块链是多方协作的基础设施平台,在区块链上架设了供应链金融应用系统。为了系统的灵活性,将供应链金融平台按照不同用户的角解耦成多个子业务系统。例如:核心企业操作的业务系统、供应商操作的业务系统、金融机构操作的业务系统等。秘钥托管电子设备承载了供应链金融多个子业务系统的秘钥托管,而每个子业务系统都有对应的业务系统身份(系统公钥和系统私钥),用于的身份识别,因此,本发明实施例提供了一种秘钥托管电子设备,如图1和图2所示,包括:秘钥托管模块、秘钥授权模块和秘钥获取模块。
40.所述秘钥托管模块包括:
41.随机生成子模块,用于随机生成待托管用户的身份信息和所述待托管用户的秘钥种子,所述身份信息包括地址、公钥明文和私钥明文,具体为:电子设备随机生成对称加密的种子(秘钥种子)和用户的身份信息。
42.加密及托管子模块,用于根据所述待托管用户的秘钥种子、所述待托管用户的公钥明文、所述待托管用户的私钥明文和所述待托管用户的系统公钥,得到所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文,并将所述待托管用户的地址、所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文进行存储。
43.所述秘钥授权模块,用于根据所述待托管用户的系统私钥、所述待托管用户的随机种子密文和被授权用户的系统公钥得到所述待托管用户授予所述被授权用户的随机种子密文,将获取所述待托管用户秘钥的权限授权给所述被授权用户。
44.所述秘钥获取模块包括:
45.判断子模块,用于根据获取用户待获取的秘钥判断获取用户是否为被授权用户。
46.授权用户子模块,用于若所述获取用户不为被授权用户,则根据所述待托管用户的系统私钥、所述待托管用户的随机种子密文、所述待托管用户的公钥密文和所述待托管用户的私钥密文得到所述待托管用户的公钥明文和所述待托管用户的私钥明文。
47.被授权用户子模块,用于若所述获取用户为被授权用户,则根据所述被授权用户
的系统私钥、所述待托管用户授予所述被授权用户的随机种子密文、所述待托管用户的公钥密文和所述待托管用户的私钥密文得到所述待托管用户的公钥明文和所述待托管用户的私钥明文。
48.作为一种可选的实施方式,所述加密及托管子模块包括:
49.对称加密单元,用于利用所述待托管用户的秘钥种子分别对所述待托管用户的公钥明文和所述待托管用户的私钥明文进行对称加密得到所述待托管用户的公钥密文和所述待托管用户的私钥密文。
50.第一非对称加密单元,用于利用所述待托管用户的系统公钥对所述待托管用户的秘钥种子进行非对称加密得到所述待托管用户的随机种子密文。
51.托管单元,用于将所述待托管用户的地址、所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文进行存储。
52.作为一种可选的实施方式,所述秘钥授权模块,包括:
53.获取子模块,用于获取所述待托管用户的随机种子密文,授权用户可以为核心企业操作的子系统(n),被授权用户为供应商操作的子系统(m)。
54.非对称解密子模块,用于利用所述待托管用户的系统私钥对所述待托管用户的随机种子密文进行非对称解密得到所述待托管用户的随机种子。
55.非对称加密子模块,用于利用所述被授权用户的系统公钥对所述待托管用户的随机种子进行非对称加密得到所述待托管用户授予所述被授权用户的随机种子密文,将随机种子密文进行存储。
56.作为一种可选的实施方式,所述授权用户子模块,包括:
57.授权用户获取单元,用于获取所述待托管用户的系统私钥、所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文。
58.第一授权非对称解密单元,用于利用所述待托管用户的系统私钥对所述待托管用户的随机种子密文进行非对称解密得到所述待托管用户的随机种子。
59.第二授权非对称解密单元,用于利用所述待托管用户的随机种子对所述待托管用户的公钥密文和所述待托管用户的私钥密文进行非对称解密得到所述待托管用户的公钥明文和所述待托管用户的私钥明文,返回目标用户的地址、公钥明文和私钥明文。
60.作为一种可选的实施方式,被授权用户子模块,包括:
61.被授权用户获取单元,用于获取所述待托管用户的公钥密文、所述待托管用户的私钥密文、所述被授权用户的系统私钥和所述待托管用户授予所述被授权用户的随机种子密文。
62.第一被授权非对称解密单元,用于利用所述被授权用户的系统私钥对所述待托管用户授予所述被授权用户的随机种子密文进行非对称解密得到所述被授权用户的随机种子。
63.第二被授权非对称解密单元,用于利用所述被授权用户的随机种子对所述待托管用户的公钥密文和所述待托管用户的私钥密文进行非对称解密得到所述待托管用户的公钥明文和所述待托管用户的私钥明文。
64.作为一种可选的实施方式,所述非对称加密采用国密sm2算法。
65.作为一种可选的实施方式,所述对称加密采用国密sm4算法。
66.本发明有以下优点:
67.该设备可以对链上的身份的秘钥进行托管,且秘钥都是经过加密,只有存秘钥的人才能进行解密和授权。
68.综合利用了对称加密和非对称加密的技术的优点,可以保障不同用户的秘钥对应的加密种子都是随机且不一样的,提高秘钥托管的安全性。
69.每个用户的秘钥对应的加密种子都是密文存储,且这个密文只能被授权或拥有系统私钥的系统才能解密,提高秘钥托管的安全性。
70.可以通过授权的方式将用户身份授权给关联信任的子系统,提供了秘钥授权的便捷性,每个秘钥对称加密的种子都不一样,可通过将对称加密种子解密再通过对方的公钥加密,即可授权给对方,安全同时操作也便捷。
71.本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
72.本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
技术特征:
1.一种秘钥托管电子设备,其特征在于,包括:秘钥托管模块、秘钥授权模块和秘钥获取模块;所述秘钥托管模块包括:随机生成子模块,用于随机生成待托管用户的身份信息和所述待托管用户的秘钥种子,所述身份信息包括地址、公钥明文和私钥明文;加密及托管子模块,用于根据所述待托管用户的秘钥种子、所述待托管用户的公钥明文、所述待托管用户的私钥明文和所述待托管用户的系统公钥,得到所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文,并将所述待托管用户的地址、所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文进行存储;所述秘钥授权模块,用于根据所述待托管用户的系统私钥、所述待托管用户的随机种子密文和被授权用户的系统公钥得到所述待托管用户授予所述被授权用户的随机种子密文,将获取所述待托管用户秘钥的权限授权给所述被授权用户;所述秘钥获取模块包括:判断子模块,用于根据获取用户待获取的秘钥判断获取用户是否为被授权用户;授权用户子模块,用于若所述获取用户不为被授权用户,则根据所述待托管用户的系统私钥、所述待托管用户的随机种子密文、所述待托管用户的公钥密文和所述待托管用户的私钥密文得到所述待托管用户的公钥明文和所述待托管用户的私钥明文;被授权用户子模块,用于若所述获取用户为被授权用户,则根据所述被授权用户的系统私钥、所述待托管用户授予所述被授权用户的随机种子密文、所述待托管用户的公钥密文和所述待托管用户的私钥密文得到所述待托管用户的公钥明文和所述待托管用户的私钥明文。2.根据权利要求1所述的一种秘钥托管电子设备,其特征在于,所述加密及托管子模块包括:对称加密单元,用于利用所述待托管用户的秘钥种子分别对所述待托管用户的公钥明文和所述待托管用户的私钥明文进行对称加密得到所述待托管用户的公钥密文和所述待托管用户的私钥密文;第一非对称加密单元,用于利用所述待托管用户的系统公钥对所述待托管用户的秘钥种子进行非对称加密得到所述待托管用户的随机种子密文;托管单元,用于将所述待托管用户的地址、所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文进行存储。3.根据权利要求1所述的一种秘钥托管电子设备,其特征在于,所述秘钥授权模块,包括:获取子模块,用于获取所述待托管用户的随机种子密文;非对称解密子模块,用于利用所述待托管用户的系统私钥对所述待托管用户的随机种子密文进行非对称解密得到所述待托管用户的随机种子;非对称加密子模块,用于利用所述被授权用户的系统公钥对所述待托管用户的随机种子进行非对称加密得到所述待托管用户授予所述被授权用户的随机种子密文。4.根据权利要求1所述的一种秘钥托管电子设备,其特征在于,所述授权用户子模块,
包括:授权用户获取单元,用于获取所述待托管用户的系统私钥、所述待托管用户的公钥密文、所述待托管用户的私钥密文和所述待托管用户的随机种子密文;第一授权非对称解密单元,用于利用所述待托管用户的系统私钥对所述待托管用户的随机种子密文进行非对称解密得到所述待托管用户的随机种子;第二授权非对称解密单元,用于利用所述待托管用户的随机种子对所述待托管用户的公钥密文和所述待托管用户的私钥密文进行非对称解密得到所述待托管用户的公钥明文和所述待托管用户的私钥明文。5.根据权利要求1所述的一种秘钥托管电子设备,其特征在于,所述被授权用户子模块,包括:被授权用户获取单元,用于获取所述待托管用户的公钥密文、所述待托管用户的私钥密文、所述被授权用户的系统私钥和所述待托管用户授予所述被授权用户的随机种子密文;第一被授权非对称解密单元,用于利用所述被授权用户的系统私钥对所述待托管用户授予所述被授权用户的随机种子密文进行非对称解密得到所述被授权用户的随机种子;第二被授权非对称解密单元,用于利用所述被授权用户的随机种子对所述待托管用户的公钥密文和所述待托管用户的私钥密文进行非对称解密得到所述待托管用户的公钥明文和所述待托管用户的私钥明文。6.根据权利要求2所述的一种秘钥托管电子设备,其特征在于,所述非对称加密采用国密sm2算法。7.根据权利要求2所述的一种秘钥托管电子设备,其特征在于,所述对称加密采用国密sm4算法。
技术总结
本发明涉及一种秘钥托管电子设备,具体涉及区块链技术领域。所述设备包括秘钥托管模块用于随机生成待托管用户的身份信息和秘钥种子并根据秘钥种子、公钥明文、私钥明文和系统公钥,得到公钥、私钥和随机种子密文,秘钥授权模块,用于根据待托管用户的系统私钥、随机种子密文和被授权用户系统公钥得到待托管用户授予被授权用户的随机种子密文;秘钥获取模块用于若获取用户不为被授权用户,则根据所述待托管用户的系统私钥、随机种子、公钥和私钥密文得到待托管用户的公钥和私钥明文;若为被授权用户,则根据被授权用户的系统私钥、随机种子密文、待托管用户的公钥和私钥密文得到待托管用户的公钥和私钥明文。本发明可以提高用户秘钥托管的安全性。秘钥托管的安全性。秘钥托管的安全性。
技术研发人员:
谢翔 潘宇 蒋琦洪 杨艳秋 王思涵 吴涛 张春晖
受保护的技术使用者:
上海欧冶金融信息服务股份有限公司
技术研发日:
2022.08.12
技术公布日:
2022/12/16