基于秘密分享的私钥恢复方法、系统、设备及存储介质技术方案

技术编号:38002462 阅读:10 留言:0更新日期:2023-06-30 10:16
本发明专利技术涉及密钥技术领域,具体涉及基于秘密分享的私钥恢复方法、系统、设备及存储介质。该方法包括以下步骤:接受私钥恢复请求。基于所述私钥恢复请求,从预设的密钥恢复问题集{Q1,Q2,Q3,......,Qn}中任选k个问题进行填写预设的答案,获得恢复答案集,且基于所述恢复答案集获得具有k个点值的第一点集,其中所述n和m均为正整数,所述m为预存的第二点集中点的数量值,m<n。利用第一点集攻击预存的第二点集,恢复n阶多项式。利用n阶多项式计算出点(0,Pri),即恢复出私钥。本发明专利技术解决了现有技术不能够恢复私钥的问题,且密钥恢复问题的答案不由服务端掌握,保证恢复的安全性。保证恢复的安全性。保证恢复的安全性。

【技术实现步骤摘要】
基于秘密分享的私钥恢复方法、系统、设备及存储介质


[0001]本专利技术涉及密钥
,尤其涉及基于秘密分享的私钥恢复方法、系统、设备及存储介质。

技术介绍

[0002]区块链中,用户掌握独一无二的非对称加密密钥对,其中公钥公开,私钥原则上只由用户自己掌握,如果用户丢失,遗忘了私钥,那么该密钥对在链上拥有的所有财产将会丢失。因此对用户私钥的恢复方案非常重要。但是用户私钥只能由用户持有,因此传统的密钥备份和恢复方案不适用私钥的恢复。

技术实现思路

[0003]为了解决上述现有技术中存在的技术问题,本专利技术提供了一种基于秘密分享的私钥恢复方法、系统、设备及存储介质。
[0004]为实现上述目的,本专利技术实施例提供了如下的技术方案:
[0005]第一方面,在本专利技术提供的一个实施例中,提供了基于秘密分享的私钥恢复方法,该方法包括以下步骤:
[0006]接受私钥恢复请求。
[0007]基于所述私钥恢复请求,从预设的密钥恢复问题集{Q1,Q2,Q3,......,Qn}中任选k个问题进行填写预设的答案,获得恢复答案集,且基于所述恢复答案集获得具有k个点值的第一点集。
[0008]利用第一点集攻击预存的第二点集,恢复n阶多项式。
[0009]利用n阶多项式计算出点(0,Pri),即恢复出私钥。
[0010]作为本专利技术的进一步方案,所述基于所述恢复答案集获得具有k个点值的第一点集,包括:
[0011]利用哈希函数对恢复答案集进行计算,获得第一点集。
[0012]作为本专利技术的进一步方案,所述第二点集通过如下方法获得:
[0013]基于预存的预存答案集{A1,A2,A3,...,An},获得哈希列表{H1,H2,H3,...,Hn},所述预存答案集{A1,A2,A3,...,An}中的答案与密钥恢复问题集{Q1,Q2,Q3,......,Qn}的问题一一对应;
[0014]利用预存的密钥对(Pri,Pub)和哈希列表{H1,H2,H3,...,Hn},获得第二点集{(0,Pri),(1,H1),(2,H2),(3,H3),...,(n,Hn)}。
[0015]作为本专利技术的进一步方案,所述利用第一点集攻击预存的第二点集,恢复n阶多项式,包括,使用拉格朗日插值法恢复n阶多项式。
[0016]第二方面,在本专利技术提供的又一个实施例中,提供了一种客户端,该客户端包括接受模块、请求模块、第一点集获取模块、多项式恢复模块和私钥恢复模块,
[0017]所述接受模块,用于接受用户提出的私钥恢复请求。
[0018]所述请求模块,用于基于私钥恢复请求,向服务端请求密钥恢复问题集{Q1,Q2,Q3,......,Qn};
[0019]所述第一点集获取模块,用于从预设的密钥恢复问题集{Q1,Q2,Q3,......,Qn}中任选n

m+1个问题进行填写预设的答案,获得恢复答案集,且基于所述恢复答案集获得具有n

m+1个点值的第一点集;
[0020]所述多项式恢复模块,用于利用第一点集攻击预存的第二点集,恢复n阶多项式;
[0021]所述私钥恢复模块,用于利用n阶多项式计算出点(0,Pri),即恢复出私钥。
[0022]第三方面,在本专利技术提供的又一个实施例中,提供了基于秘密分享的私钥恢复系统,该系统包括:包括客户端和服务端;
[0023]所述客户端,用于接受用户提出的私钥恢复请求;
[0024]基于私钥恢复请求,向服务端请求密钥恢复问题集{Q1,Q2,Q3,......,Qn};
[0025]从预设的密钥恢复问题集{Q1,Q2,Q3,......,Qn}中任选n

m+1个问题进行填写预设的答案,获得恢复答案集,且基于所述恢复答案集获得具有n

m+1个点值的第一点集;
[0026]利用第一点集攻击预存的第二点集,恢复n阶多项式;
[0027]利用n阶多项式计算出点(0,Pri),即恢复出私钥;
[0028]所述服务端,用于为客户端提供预存的密钥恢复问题集{Q1,Q2,Q3,......,Qn}和第二点集。
[0029]第四方面,在本专利技术提供的又一个实施例中,提供了一种设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器加载并执行所述计算机程序时实现基于秘密分享的私钥恢复方法的步骤。
[0030]第五方面,在本专利技术提供的再一个实施例中,提供了一种存储介质,存储有计算机程序,所述计算机程序被处理器加载并执行时实现所述基于秘密分享的私钥恢复方法的步骤。
[0031]本专利技术提供的技术方案,具有如下有益效果:
[0032]本专利技术提供的基于秘密分享的私钥恢复方法、系统、设备及存储介质,本专利技术接受私钥恢复请求;基于所述私钥恢复请求,从预设的密钥恢复问题集{Q1,Q2,Q3,......,Qn}中任选n

m+1个问题进行填写预设的答案,获得恢复答案集,且基于所述恢复答案集获得具有n

m+1个点值的第一点集;利用第一点集攻击预存的第二点集,使用拉格朗日插值法恢复n阶多项式;利用n阶多项式计算出点(0,Pri),即恢复出私钥。本专利技术解决了现有技术不能够恢复私钥的问题,且密钥恢复问题的答案不由服务端掌握,保证恢复的安全性。
[0033]本专利技术的这些方面或其他方面在以下实施例的描述中会更加简明易懂。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本专利技术。
附图说明
[0034]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
[0035]图1为本专利技术一个实施例的基于秘密分享的私钥恢复方法的流程图。
[0036]图2为本专利技术一个实施例的一种客户端的结构框图。
[0037]图3为本专利技术一个实施例的基于秘密分享的私钥恢复系统的结构框图。
[0038]图中:客户端

100、服务端

200、接受模块

101、请求模块

102、第一点集获取模块

103、多项式恢复模块

104、私钥恢复模块

105。
具体实施方式
[0039]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0040]附图中所示的流程图仅是示例本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于秘密分享的私钥恢复方法,其特征在于,该方法包括:接受私钥恢复请求;基于所述私钥恢复请求,从预设的密钥恢复问题集{Q1,Q2,Q3,......,Qn}中任选k个问题进行填写预设的答案,获得恢复答案集,且基于所述恢复答案集获得具有k个点值的第一点集;利用第一点集攻击预存的第二点集,恢复n阶多项式;利用n阶多项式计算出点(0,Pri),即恢复出私钥。2.如权利要求1所述的基于秘密分享的私钥恢复方法,其特征在于,所述基于所述恢复答案集获得具有k个点值的第一点集,包括:利用哈希函数对恢复答案集进行计算,获得第一点集。3.如权利要求1所述的基于秘密分享的私钥恢复方法,其特征在于,所述第二点集通过如下方法获得:基于预存的预存答案集{A1,A2,A3,...,An},获得哈希列表{H1,H2,H3,...,Hn},所述预存答案集{A1,A2,A3,...,An}中的答案与密钥恢复问题集{Q1,Q2,Q3,......,Qn}的问题一一对应;利用预存的密钥对(Pri,Pub)和哈希列表{H1,H2,H3,...,Hn},获得第二点集{(0,Pri),(1,H1),(2,H2),(3,H3),...,(n,Hn)}。4.如权利要求1所述的基于秘密分享的私钥恢复方法,其特征在于,所述利用第一点集攻击预存的第二点集,恢复n阶多项式,包括,使用拉格朗日插值法恢复n阶多项式。5.一种客户端,其特征在于,所述客户端包括接受模块、请求模块、第一点集获取模块、多项式恢复模块和私钥恢复模块;所述接受模块,用于接受用户提出的私钥恢复请求;所述请求模块,用于基于私钥恢复请求,向服务端请求密钥恢复问题集{Q1,Q2,Q3,......,Q...

【专利技术属性】
技术研发人员:刘岭峰王超博肖苗苗曾佑诚刘群华麦佩雨陈意斌
申请(专利权)人:厦门海峡链科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1