一种基于动态门限多秘密共享的设备口令托管方法及系统

文档序号:409963 发布日期:2021-12-17 浏览:1次 >En<

阅读说明:本技术 一种基于动态门限多秘密共享的设备口令托管方法及系统 (Equipment password escrow method and system based on dynamic threshold multi-secret sharing ) 是由 刘伟 李睿 谢满 于 2021-09-14 设计创作,主要内容包括:本发明涉及网络安全技术领域,涉及一种基于动态门限多秘密共享的设备口令托管方法及系统,方法包括:一、托管分量及系统中心完成完成系统初始化;二、各托管分量计算子秘密并将其加密后返回,系统中心将返回结果解密后构造多项式,实现设备口令的分发及隐藏;三、在进行口令恢复时,系统中心选取部分分量发送重构信号,托管分量根据保存的秘密份额计算子秘密后将结果加密返回给系统中心,系统中心再重构该多项式恢复设备口令;四、在进行秘密更新时,系统中心更新参数,向所有的托管分量发送更新信号,待收到托管分量重新计算子秘密加密的结果后,构造新的多项式,实现秘密的更新。本发明能有效实现口令的自动生成、加密托管及自动更新。(The invention relates to the technical field of network security, in particular to a device password escrow method and a device password escrow system based on dynamic threshold multi-secret sharing, wherein the method comprises the following steps: firstly, a hosting component and a system center finish system initialization; secondly, calculating the sub-secrets of each managed component, encrypting the sub-secrets, returning the sub-secrets, and decrypting a returned result by the system center to construct a polynomial so as to realize the distribution and hiding of the equipment password; thirdly, when password recovery is carried out, the system center selects part of the components to send reconstruction signals, the escrow component calculates the operator secrets according to the stored secret share and then encrypts the results and returns the results to the system center, and the system center reconstructs the password of the polynomial recovery equipment; and fourthly, when secret updating is carried out, the system center updates parameters, sends updating signals to all managed components, and constructs a new polynomial after receiving the result of secret encryption by recalculating the managed components so as to realize secret updating. The invention can effectively realize automatic generation, encrypted escrow and automatic update of the password.)

一种基于动态门限多秘密共享的设备口令托管方法及系统

技术领域

本发明涉及网络安全技术领域,具体地说,涉及一种基于动态门限多秘密共享的设备口令托管方法及系统。

背景技术

随着网络应用的发展,面对数量众多的服务器设备、安防监控设备或网络通信设备,如何安全、高效的批量管理设备口令问题越来越受到人们的关注。一方面,由于用户普遍缺乏安全口令意识,或出于方便运维管理目的,往往会对设备直接采用空口令或弱口令;另一方面,面对大量的设备,采用人工方式手动更改设备口令极其繁琐,管理员往往会直接沿用设备默认口令或对所有的设备采用相同口令。这些方式极大的增加了系统被入侵的风险。此外,为方便管理所有设备,常常采用堡垒机实现设备的统一纳管,若用户需登录某台设备,只要将该设备的口令信息提前录入到堡垒机中,然后通过堡垒机即可登录指定设备。然而这种方式仍存在不少安全隐患:其一,所有的设备口令集中存储在堡垒机中,若堡垒机被非法入侵,会造成所有的口令信息泄露,导致一点攻破全局;其二,设备口令信息无法实现自动修改及自动更新,灵活性不高。

针对现有口令托管系统所存在的上述问题,如何实现口令的自动化安全托管,目前尚未提出有效的解决方案。

发明内容

为克服人工管理设备口令存在低效、繁琐、不安全等缺陷,本发明提供一种基于动态门限多秘密共享的设备口令托管方法及系统,能有效实现口令的自动生成、加密托管、及自动更新。

根据本发明的一种基于动态门限多秘密共享的设备口令托管方法,其包括以下步骤:

一、采用密钥分割存储和多方联合计算的方式,托管分量及系统中心完成完成系统初始化;

二、各托管分量从系统中心下载数据根据保存的秘密份额计算子秘密并将其加密后返回,系统中心将返回结果解密后再利用拉格朗日插值法构造多项式,实现设备口令的分发及隐藏;

三、在进行口令恢复时,系统中心随机选取部分分量发送重构信号,托管分量根据保存的秘密份额计算子秘密将结果加密返回给系统中心,系统中心再重构该多项式恢复设备口令;

四、在进行秘密更新时,系统中心更新部分参数,向所有的托管分量发送更新信号,待收到托管分量重新计算子秘密加密的结果后,构造新的多项式,即可实现秘密的更新。

作为优选,系统初始化的方法为:

记D为秘密分发者,P1,P1,…,Pn为n个参与者,C1,C2,…,Cm为用户输入的m个设备的初始口令,t∈[3,n]为用户输入的门限值即至少需要多少个参与者才能恢复设备口令;

分发者D随机选取两个大的素数P,Q,及其一个关于P的本原根α,从[α,P-2]上选取一个整数d作为私钥加密保存,计算β=αdmodP,将β作为D的公钥,再从[m,Q]上为每个参与者随机选取一个整数Idi作为唯一身份标识,并公布信息{P,Q,α,β,Idi};最后,每个参与者随机选取一个整数S作为秘密份额加密保存。

作为优选,设备口令的分发及隐藏的方法为:

2.1)每个参与者从D中下载参数{P,α,β},i从1到n,对每个Pi,将其秘密份额S加密计算:Ui1=αSmodP,Ui2=αS*SmodP,即可得到Pi的伪份额(Ui1,Ui2);

2.2)i从1到n,对每个Pi,将其伪份额(Ui1,Ui2)通过普通信道发送给D;

2.3)D在收到所有参与者发送的伪份额(Ui1,Ui2)后,对伪份额进行解密计算:Ei即为Pi的秘密份额;

2.4)D利用n+m个点:(1,C1),(2,C2),…,(m,Cm)和(Id1,E1modP),(Id2,E2modP),…,(Idn,EnmodP)根据拉格朗日插值法构造n+m-1次多项式g(x):

2.5)D从集合[m,Q]–{Idi|i=1,2,…n}中选出n+m–t个整数x1,x2,…,xn+m-t,计算g(xi),公布(x1,g(x1)),(x2,g(x2)),…,(xn+m-t,g(xn+m-t)),同时销毁(1,C1),(2,C2),…,(m,Cm),(Id1,E1modP),(Id2,E2modP),…,(Idn,EnmodP)及收到的数据(U11,U12),(U21,U22),…,(Un1,Un2)。

此时,即可完成所有设备口令的分发及隐藏。

作为优选,重构的方法为:

3.1)D从n个参与者中随机选取t个参与者发送重构信息;

3.2)被选中的参与者分别从分发者D中下载参数{P,α,β},将秘密份额加密计算Ui1=αSmodP,Ui2=αS*SmodP得到伪份额(Ui1,Ui2),将伪份额(Ui1,Ui2)通过普通信道发给D;

3.3)分发者利用已公布的信息

(x1,g(x1)),(x2,g(x2)),…,(xn+m-t,g(xn+m-t))及

(Id1,E1modP),(Id2,E2modP),…,(Idt,EtmodP)根据拉格朗日插值法重构n+m-1次多项式g(x),若用(Xi,Yi)(i=1,2,…,n+m)表示以上点,则g(x)为:

此时,对于设备口令i,计算g(i)即可获得。

作为优选,秘密更新的步骤为:

4.1)D根据设备数量重新生成m个设备口令,即C′1,C′2,…,C′m,并重新选择一个关于P的本原根α′,向所有的参与者发送更新更新信号;

4.2)每个参与者重新计算U′i1=α′SmodP和U′i2=α′S*SmodP;并将(U′i1,U′i2)通过普通信道发送给D;

4.3)每收到Pi发送的更新点(U′i1,U′i2)后,D则计算

4.4)D利用n+m个点:(1,C′1),(2,C′2),…,(m,C′m)和(Id1,E′1modP),(Id2,E′2modP),…,(Idn,E′nmodP)根据拉格朗日插值法构造新的n+m-1次多项式g′(x),若用(Xi,Yi)(i=1,2,…,n+m)表示以上点,则g′(x)为:

4.5)对i从1到n+m-t,计算g′(xi),公布(x1,g′(x1)),(x2,g′(x2)),…,(xn+m-t,g′(xn+m-t)),同时销毁(1,C′1),(2,C′2),…,(m,C′m),(Id1,E′1modP),(Id2,E′2modP),…,(Idn,E′nmodP),及收到的数据(U′11,U′12),(U′21,U′22),…,(U′n1,U′n2)即可实现所有设备口令的更新。

本发明还提供了一种基于动态门限秘密共享的设备口令托管系统,其采用上述一种基于动态门限秘密共享的设备口令托管方法。

本发明实现了对设备口令的自动化批量托管,用户只需要在系统初始化时输入设备的初始口令,设定更新周期,系统便能自动维护所有设备口令。在恢复设备口令时,无需和所有的托管分量通信,且传输的数据已加密,无需维护复杂的安全信道,极大的降低了口令泄露的风险。同时,设备口令信息分散存储在N个托管分量中,即使系统或部分托管分量被非法入侵,仍不会造成设备口令信息泄露,具有很高的安全性。与现有的密钥托管系统相比,本系统实现简单,操作方便,只需加密保存少量信息便能实现设备口令自动生成,加密托管及自动更新,具有很高的实用性。

附图说明

图1为实施例1中一种基于动态门限秘密共享的设备口令托管方法的流程图。

具体实施方式

为进一步了解本发明的内容,结合附图和实施例对本发明作详细描述。应当理解的是,实施例仅仅是对本发明进行解释而并非限定。

实施例1

如图1所示,本实施例提供了一种基于动态门限多秘密共享的设备口令托管方法,其包括以下步骤:

一、采用密钥分割存储和多方联合计算的方式,由各个托管分量及系统中心完成完成系统初始化;

二、各托管分量从系统中心下载数据根据保存的秘密份额计算子秘密并将其加密后返回,系统中心将返回结果解密后再利用拉格朗日插值法构造多项式,实现设备口令的分发及隐藏;

三、在进行口令恢复时,系统中心随机选取部分分量发送重构信号,托管分量根据保存的秘密份额计算子秘密后将结果加密返回给系统中心,系统中心再重构该多项式恢复设备口令;

四、在进行秘密更新时,系统中心更新部分参数,向所有的托管分量发送更新信号,待收到托管分量重新计算子秘密加密的结果后,构造新的多项式,即可实现秘密的更新。

本实施例包括四个部分:系统初始化、秘密分发、秘密重构及秘密更新。首先,对托管中心秘密分发者(分发者)及密钥托管分量参与者(参与者)进行初始化,分发者先生成一对公私钥,再为每个参与者生成一个唯一身份标识;其次,每个参与者从分发者中下载公布的信息,根据保存的秘密份额计算子秘密,将子秘密利用分发者提供的公钥加密后发送给分发者,分发者收到数据解密后,根据拉格朗日插值法构造多项式,将所有的设备口令隐藏其中,同时销毁接收到的所有数据并公布多项式的部分函数值。这样就完成了设备口令的分发及隐藏。在进行设备口令重构时,分发者只需要随机选取t个参与者发送重构信号,被选中的参与者将从分发者中下载信息,计算子秘密后加密发送给分发者,分发者即可基于门限秘密共享思想根据拉格朗日插值法利用t个子秘密重构多项式,恢复所有的设备口令信息。在进行秘密更新时,分发者根据设备数量重新生成口令信息并更新部分参数,由于参与者每次提交的的是秘密的伪份额,秘密份额不会暴露,因此所有的参数可保持不变。分发者在收到所有的子密码后重新构造多项式,将新的口令信息隐藏其中即可实现秘密的更新。

系统初始化的方法为:

记D为秘密分发者,P1,P2,P3,P4为4个参与者,C1,C2,C3为用户输入的3个设备的初始口令,t=3为用户输入的门限值即至少需要3个参与者才能恢复设备口令。

分发者D随机选取两个大的素数P,Q,及其一个关于P的本原根α,从[α,P-2]上选取一个整数d作为私钥加密保存,计算β=αdmodP,将β作为D的公钥,再从[4,Q]上为每个参与者随机选取一个整数Idi作为唯一身份标识,并公布信息{P,Q,α,β,Idi};最后,每个参与者随机选取一个整数S作为秘密份额加密保存。

设备口令的分发及隐藏的方法为:

2.1)参与者P1,P2,P3,P4分别从D中下载公布的信息{P,α,β},对P1,P2,P3,P4,根据保存的秘密份额S计算伪份额Ui1=αSmodP,Ui2=αS*SmodP;

2.2)每个参与者将伪份额(Ui1,Ui2)通过普通信道发送给D;

2.3)在收到P1,P2,P3,P4发送的伪份额后,D则将伪份额进行解密计算得到秘密份额;

2.4)D利用点:(1,C1),(2,C2),(3,C3)和(Id1,E1modP),(Id2,E2modP),(Id3,E3modP),(Id4,E4modP)根据拉格朗日插值法构造多项式g(x):

2.5)D从集合[4,Q]–{Idi|i=1,2,…,4}中随机选取4个整数x1,x2,x3,x4,计算g(xi),公布(x1,g(x1)),(x2,g(x2)),(x3,g(x3)),(x4,g(x4)),同时销毁(1,C1),(2,C2),(3,C3),(Id1,E1modP),(Id2,E2modP),(Id3,E3modP),(Id4,E4modP)及收到的数据(U11,U12),(U21,U22),(U31,U32),(U41,U42),即可完成设备口令的分发及隐藏;

重构的方法为:

3.1)D从P1,P2,P3,P4 4个参与者中随机选取3个参与者发送重构信息;

3.2)假设被选中的参与者为P1,P2,P3,则P1,P2,P3分别从D中下载参数{P,α,β},计算根据保存的秘密份额计算伪份额Ui1=αSmodP,Ui2=αS*SmodP,并将(U11,U12),(U21,E22),(U31,U32)通过普通信道发送给D;

3.3)收到Pi发送的伪份额(Ui1,Ui2)后,D则将进行伪份额解密计算

3.4)D再利用已公布的信息(x1,g(x1)),(x2,g(x2)),(x3,g(x3)),(x4,g(x4))及(Id1,E1modP),(Id2,E2modP),(Id3,E3modP)根据拉格朗日插值法重构次多项式g(x);

此时,依次计算g(1),g(2),g(3),结果即为设备口令C1,C2,C3

秘密更新的步骤为:

4.1)D根据设备数量重新生成3个符合密码复杂度要求的设备口令,即C′1,C′2,C′3,并重新选择一个关于P的本原根α′,向P1,P2,P3,P4发送更新请求。

4.2)P1,P2,P3,P4根据保存的秘密份额重新计算伪份额U′i1=α′SmodP和U′i2=α′S*SmodP,并将(U′i1,U′i2)通过普通信道发送给D;

4.3)对i从1到4每收到一个Pi发送的更新点(U′i1,U′i2)后,D则进行解密计算

4.4)D利用点:

(1,C′1),(2,C′2),(3,C′3),(Id1,E′1modP),(Id2,E′2modP),(Id3,E′3modP),(Id4,E′4modP)构造新的多项式g′(x):

4.5)对i从1到4,计算g′(xi),公布(x1,g′(x1)),(x2,g′(x2)),(x3,g′(x3)),(x4,g′(x4)),同时销毁(1,C′1),(2,C′2),(3,C′3),(Id1,E′1modP),(Id2,E′2modP),(Id3,E′3modP),(Id4,E′4modP)及收到的数据(U′11,U′12),(U′21,U′22),(U′31,U′32),(U′41,U′42)即可实现P1,P2,P3,P4设备口令的更新。

本实施例还提供了一种基于动态门限秘密共享的设备口令托管系统,其采用上述一种基于动态门限秘密共享的设备口令托管方法。

以上示意性的对本发明及其实施方式进行了描述,该描述没有限制性,附图中所示的也只是本发明的实施方式之一,实际的结构并不局限于此。所以,如果本领域的普通技术人员受其启示,在不脱离本发明创造宗旨的情况下,不经创造性的设计出与该技术方案相似的结构方式及实施例,均应属于本发明的保护范围。

10页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种抗陷门泄露的链上数据修复系统及方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!