一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于门限秘密共享的分布式证书认证方法及装置与流程

2022-12-02 18:51:56 来源:中国专利 TAG:


1.本发明涉及信息安全技术领域,特别是涉及一种基于门限秘密共享的分布式证书认证方法及装置。


背景技术:

2.区块链技术基于区块链网络而实现,区块链网络中的分布式节点设备(以下简称为节点)通过运行区块链程序,从而实现区块数据的生成、共识以及存储,最终达成了数据的防篡改机制。传输网络中的网络节点利用链式数据结构来验证与存储数据,并采用分布式节点共识算法来生成和更新数据。当有新节点加入区块链网络时,需要对新节点的身份进行验证,只有通过认证的节点才能纳入集群的信任链中,从而保证安全的通信连接。基于此,需要提供一种分布式证书认证方法。


技术实现要素:

3.本发明实施例的目的在于提供一种基于门限秘密共享的分布式证书认证方法及装置,旨在解决在去中心化系统中实现证书的认证,建立安全的通信连接的问题。具体技术方案如下:
4.在本发明实施例的第一方面,提供一种基于门限秘密共享的分布式证书认证方法,所述方法应用于认证授权ca机构的服务器,所述方法包括:
5.新节点向区块链网络发起签发证书的申请;
6.确认收到申请的第一运营管理节点向第二运营管理节点发起投票;
7.投同意票的运营管理节点会附带自身的密钥分片予以回复;
8.当收集到大于或等于门限值的密钥分片时,恢复密钥并签发证书。
9.所述密钥分片的生成方法包括:
10.将区块链中的w个运营管理节点记为wi,其中i=1,2,

,w;
11.基于(t,w)门限秘密共享得到w个秘密分片si分发给各运营节点保存,其中,t为门限值,t≤w,0<i≤w;
12.当获取到t个或t个以上的运营节点保存的秘密分片si才能恢复秘密并签发证书。
13.可选地,所述(t,w)门限秘密共享方法包括:
14.构造多项式f(x)=(s a1x a2x2 ... a
(t-1)
x
(t-1)
)mod p,其中,s为ca根证书私钥的十进制数,p为素数,a1,a2,

,a
(t-1)
代表系数,
15.所述p和a1,a2,

,a
(t-1)
可以任意指定,但要满足s《p;
16.所述f(x)表示s a1x a2x2 ... a
(t-1)
x
(t-1)
除以p求余数;
17.取w个不相等的x进行计算,得到w组(xi,yi),分配给w个运营管理节点保存,同时公开p,销毁多项式f(x);
18.可选地,所述基于门限秘密共享的分布式证书认证方法包括:
19.区块链网络中的运营管理节点有各自的密钥分片(xi,yi);
20.新节点向区块链网络发起签发证书申请;
21.确认收到请求的运营管理节点向全体运营管理节点发起投票;
22.投同意票的运营管理节点会附带自身的密钥分片(xi,yi)予以回复;
23.当收集到大于或等于门限值t个密钥分片时,可根据密钥还原多项式f(x)进而还原出ca根证书私钥;
24.使用ca根证书私钥签发新节点证书,获得证书的节点纳入集群的信任链中。
25.在本发明实施例的第二方面,提供一种分布式证书认证装置,包括:
26.申请模块,用于新节点向区块链网络发起签发证书申请;
27.获取模块,用于获取新节点向区块链网络发起签发证书的申请;
28.发送模块,用于确认收到请求的运营节点向第二运营节点发起投票;
29.收集模块,用于收集全体运营节点的投票结果,收集密钥分片;
30.检测模块,用于判断收集到的密钥分片个数是否满足大于或等于门限值;
31.认证模块,当密钥分片个数满足大于或等于门限值时,还原出ca根证书私钥,并签发新节点证书。
32.在本发明实施例的第三方面,提供一种分布式证书签发装置,应用于认证授权ca机构的服务器,所述装置包括:
33.验证模块,用于当接收到新节点发起签发证书申请时,对该新节点的身份的合法性进行验证;
34.签发模块,用于对新节点的身份的合法性通过验证时,使用还原出的ca根证书私钥对证书进行签发;
35.发送模块,用于将经过认证的证书发送给新节点。
36.在本发明实施例的第四方面,提供一种计算机设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;所述存储器,用于存放计算机程序;所述处理器,用于在执行存储器上所存放的程序时,实现本发明分布式证书认证方法的步骤。
37.本发明第五方面公开一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可执行指令,所述计算机可执行指令用于执行如上述本发明第一方面任意一项公开的认证方法。
38.本发明中所述运营管理节点(node manager)具有本领域公知的含义和功能,是指在区块链中受domain(域)管理的节点。
39.本发明提供一种基于门限秘密共享的分布式证书认证方法、装置、服务器及存储介质,所述方法应用于认证授权ca机构的服务器,通过新节点向区块链网络发起签发证书的申请,收到申请的第一运营管理节点向第二运营管理节点发起投票,投同意票的运营管理节点会附带自身的密钥分片予以回复,当收集到大于或等于门限值的密钥分片时,恢复密钥并签发证书。本发明中,上述分布式证书认证方法、装置及系统,通过使用门限秘密共享方案实现去中心化系统中的证书认证。本发明提供的基于门限秘密实现ca私钥分片的方法具有安全可靠、性能高效等特点。
附图说明
40.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,以下描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
41.图1为本发明实施例提供的一种分布式证书认证方法的流程示意图;
42.图2为本发明实施例提供的一种密钥分片的生成方法的流程示意图;
43.图3为本发明实施例提供的另一种分布式证书认证方法的流程示意图;
44.图4为本发明实施例提供的一种分布式证书认证装置的结构示意图;
45.图5为本发明实施例提供的一种分布式证书签发装置的结构示意图;
46.图6为本发明实施例提供的一种服务器的结构框图。
具体实施方式
47.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
48.参见图1,示出了本发明实施例提供的一种分布式证书认证方法的流程示意图,该认证方法具体包括以下步骤:
49.s101:新节点向区块链网络发起签发证书的申请;
50.在具体执行步骤s101的过程中,新节点向区块链中的运营管理节点发送签发证书的申请,为了便于区分,将接收到新节点发送的申请的区块链运营管理节点称为第一运营管理节点。本技术中,所述运营管理节点具有本领域公知的含义和功能,是指在区块链中受domain(域)管理的节点。
51.s102:确认收到申请的运营管理节点即第一运营管理节点向第二运营管理节点发起投票;
52.本技术实施例中,第一运营管理节点收到申请并发起投票,由第二运营管理节点响应,执行投票过程,所述第二运营管理节点指区块链网络中除第一运营管理节点以外的其他运营管理节点。
53.s103:投同意票的运营管理节点会附带自身的密钥分片予以回复;
54.在具体执行步骤s103的过程中,运营管理节点可能投同意票也可能投不同意票,只有投同意票的运营管理节点才会附带本节点保管的密钥分片回复给发起投票的第一运营管理节点。
55.在本技术实施例中,区块链中的各个第二运营管理节点响应第一运营管理节点并投票,第一运营管理节点可能会收到通过的投票,也可能会收到不通过的投票,只有投通过票的第二运营管理节点才会将自己保管的密钥分片发送给第一运营管理节点。
56.s104:当收集到的密钥分片的个数大于或等于门限值时,恢复密钥并签发证书。
57.参见图2,示出了本发明实施例提供的一种密钥分片生成方法的流程示意图,该验证方法具体包括以下步骤:
58.s201:将区块链中的w个运营管理节点记为wi,其中i=1,2,

,w;
59.s202:利用(t,w)门限秘密共享方案得到w个秘密分片si分发给各运营节点保存,其中,t为门限值,t≤w,0<i≤w;
60.可选地,所述秘密分片si的生成方法包括:
61.构造多项式f(x)=(s a1x a2x2 ... a
(t-1)
x
(t-1)
)modp,其中,s为ca根证书私钥的十进制数,p为素数,a1,a2,

,a
(t-1)
代表系数;
62.所述p和a1,a2,

,a
(t-1)
可以任意指定,但要满足s《p;
63.所述f(x)表示s a1x a2x2 ... a
(t-1)
x
(t-1)
的和除以p的余数;
64.取w个不相等的x进行计算,得到w组(xi,yi),分配给w个运营管理节点保存,同时公开p,销毁多项式f(x);
65.s203:当获取到t个或t个以上的秘密分片si才能恢复秘密并签发证书。
66.例如,(3,4)门限秘密共享方案如下:
67.区块链网络有4个运营管理节点,即w=4,秘密s=2(ca根证书私钥的十进制数),设定门限值t=3,p=23,a1=3,a2=2;
68.则上述多项式为:f(x)=(2 3x 2x2)mod 23,即2 3x 2x2的和除以23的余数;
69.取x1=1,x2=2,x3=3,x4=4,求得f(x1)=7,f(x2)=16,f(x3)=6,f(x4)=0;
70.所得密钥分片分别为(1,7),(2,16),(3,6),(4,0);
71.将上述密钥分片分配给4个运营管理节点,保留p值,销毁多项式f(x)。
72.当收集到的密钥分片个数大于或等于门限值,即密钥分片的个数为3或4时,可以还原多项式f(x),进而还原ca根证书;
73.通过ca根证书为新节点签发证书。
74.参见图3,示出本发明实施例提供的一种基于门限秘密共享的分布式证书认证方法的流程示意图,该验证方法具体包括以下步骤:
75.s301:区块链网络中的运营管理节点有各自的密钥分片(xi,yi);
76.在具体执行步骤s301的过程中,密钥分片(xi,yi)的生成方法采用(t,w)门限秘密共享方案,具体步骤为:
77.构造多项式f(x)=(s a1x a2x2 ... a
(t-1)
x
(t-1)
)modp,其中,s为ca根证书私钥的十进制数,p为素数,a1,a2,

,a
(t-1)
代表系数;
78.所述p和a1,a2,

,a
(t-1)
可以任意指定,但要满足s《p;
79.该多项式表示s a1x a2x2 ... a
(t-1)
x
(t-1)
的和除以p求余数;
80.取w个不相等的x进行计算,得到w组(xi,yi),分配给w个运营管理节点保存,同时销毁多项式f(x),保存p。
81.s302:新节点向区块链网络发起签发证书申请;
82.s303:确认收到请求的第一运营管理节点向第二运营管理节点发起投票;
83.本实施例中将收到请求的运营管理节点称为第一运营管理节点,将区块链网络中除第一运营管理节点的其他运营管理节点称为第二运营管理节点。所述运营管理节点具有本领域公知的含义和功能,是指在区块链中受domain(域)管理的节点。
84.s304:投同意票的运营管理节点会附带自身的密钥分片(xi,yi)予以回复;
85.在具体执行步骤s304的过程中,运营管理节点可能投同意票也可能投不同意票,
只有投同意票的运营管理节点才会附带本节点保管的密钥分片(xi,yi)回复给发起投票的第一运营管理节点。
86.s305:当收集到大于或等于门限值t个密钥分片时,可根据密钥还原多项式f(x)进而还原出ca根证书私钥;
87.在具体执行步骤s305的过程中,当第一运营节点收到≥t个门限值的密钥分片时,才具备还原多项式f(x)的条件,通过f(x)可以还原出多项式中的s(ca根证书的十进制数),从而还原出ca根证书私钥。
88.s306:使用ca根证书私钥签发新节点证书,获得证书的节点纳入集群的信任链中。
89.基于同一发明构思,本发明实施例还提供一种分布式证书认证装置。参考图4,图4是本发明一实施例提出的分布式证书认证装置的示意图,该装置包括:
90.申请模块41,用于新节点向区块链网络发起签发证书申请;
91.获取模块42,用于获取新节点向区块链网络发起签发证书的申请;
92.发送模块43,用于确认收到请求的第一运营节点向第二运营节点发起投票;
93.收集模块44,用于收集全体运营节点的投票结果,收集密钥分片;
94.检测模块45,用于判断收集到的密钥分片个数是否满足大于或等于门限值;
95.认证模块46,当密钥分片个数满足大于或等于门限值时,还原出ca根证书私钥,并签发新节点证书。
96.上述本发明实施例公开的分布式证书认证装置中各个单元具体的原理和执行过程,与上述本发明实施例公开的认证方法相同,可参见上述本发明实施例公开的认证方法中相应的部分,这里不再进行赘述。
97.本发明实施例还提供一种分布式证书签发装置,应用于认证授权ca机构的服务器,当区块链网络中的第一运营管理节点收到新节点发起的签发证书申请时,通过验证模块对该新节点的身份的合法性进行验证。当全体运营管理节点投票后,当满足收集的密钥分片的个数大于或等于门限值时,还原出ca根证书私钥,即新节点的身份的合法性通过验证时,采用签名模块对证书进行签名。最后经发送模块将签名的证书发送给新节点。
98.参考图5,图5是本发明一实施例提出的分布式证书签发装置的示意图,该装置包括:
99.验证模块51,用于当接收到新节点发起签发证书申请时,对该新节点的身份的合法性进行验证;
100.签发模块52,用于对新节点的身份的合法性通过验证时,使用还原出的ca根证书私钥对证书进行签发;
101.发送模块53,用于将经过认证的证书发送给新节点。
102.下面以分布式证书的认证方法应用于服务端为例,对本技术实施例提供的一种认证方法所适用于的服务端的硬件结构进行详细说明。
103.本技术实施例提供的一种认证方法可应用于服务端,该服务端可以是网络侧为用户提供服务的服务设备,其可能是多台服务器组成的服务器集群,也可能是单台服务器。
104.可选的,图6示出了本技术实施例提供的一种认证方法所适用于的服务端的硬件结构框图,参照图6,服务端的硬件结构可以包括:处理器61,存储器62,通信接口63和通信总线64;
105.在本发明实施例中,处理器61、存储器62、通信接口63、通信总线64的数量均可以为至少一个,且处理器61、存储器62、通信接口63通过通信总线64完成相互间的通信;
106.处理器61可能是一个中央处理器cpu,或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
107.存储器62可能包含高速ram存储器,也可能还包括非易失性存储器(non-volatile memory)等,例如至少一个磁盘存储器;
108.其中,存储器存储有程序,处理器可调用存储器存储的程序,程序用于:
109.新节点向区块链网络发起签发证书的申请;
110.确认收到申请的第一运营管理节点向第二运营管理节点发起投票;
111.投同意票的运营管理节点会附带自身的密钥分片予以回复;
112.当收集到大于或等于门限值的密钥分片时,恢复密钥并签发证书。
113.有关程序的功能可参见上文对本技术实施例提供的一种认证方法的详细描述,在此不做赘述。
114.进一步的,本技术实施例还提供一种计算机可读计算机存储介质,该计算机可读存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述认证方法。
115.有关计算机可执行指令的具体内容可参见上文对本技术实施例提供的一种认证方法的详细描述,在此不做赘述。
116.需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
117.本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
118.以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献