一种基于零知识证明的私钥管理方法及系统技术方案

技术编号:31377321 阅读:67 留言:0更新日期:2021-12-15 11:16
本发明专利技术公开了一种基于零知识证明的私钥管理方法及系统,其中方法包括构造声明和证明身份;构造声明时,托管节点生成椭圆曲线参数并发送给普通节点;普通节点在依据椭圆曲线参数确定的椭圆曲线上选取初始点,进行点乘操作得到第一操作点,将声明及私钥密文发送给托管节点,声明包括初始点、第一操作点及普通节点的公钥;托管节点存储椭圆曲线参数、声明及私钥密文;证明身份时,托管节点将普通节点的公钥对应的初始点和椭圆曲线参数发送给普通节点;普通节点进行点乘操作得到第二操作点并发送给托管节点;当第二操作点与第一操作点相同时将私钥密文发送给普通节点。本发明专利技术通过椭圆曲线构造声明,用户不用提供身份信息时能从托管节点获取私钥密文。管节点获取私钥密文。管节点获取私钥密文。

【技术实现步骤摘要】
一种基于零知识证明的私钥管理方法及系统


[0001]本专利技术涉及区块链
,尤其是涉及一种基于零知识证明的私钥管理方法及系统。

技术介绍

[0002]区块链技术的兴起为可信互联网的实现提供了一种可行思路。在业界实践中,密码学及相关外延技术是确保区块链可信性的核心部件,其为节点身份及其行为的可靠性提供基础支撑。其中,基于非对称密码技术的公私钥对是节点身份的唯一标识,其在提供了极强的不可伪造性的同时,也由于其过于冗长而带来几乎无法让用户记住的问题。私钥一旦丢失,那么后续的任何基于该私钥的交易都无法进行。一种自然而然的思路是,将其存放于托管中心。但这样又带来两个问题,一是私钥会泄露给托管中心;二是丢失私钥的用户很难证明其是托管中心中的私钥的原持有者。
[0003]现有技术中,用户私钥丢失后就没有其他可信途径证明其对所托管的数据的所有权,要么人人可访问,这时增加私钥泄露的风险,要么人人都不能访问,此时就失去了托管的意义。

技术实现思路

[0004]本专利技术的目的是提供一种基于零知识证明的私钥管理方法及系统,以解决现有技术的私钥托管中因需提供用户身份信息可能泄密用户隐私的技术问题。
[0005]本专利技术的目的,可以通过如下技术方案实现:
[0006]一种基于零知识证明的私钥管理方法,包括构造声明和证明身份两个环节;
[0007]其中,构造声明包括以下步骤:
[0008]托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点;其中,所述托管节点为区块链中给普通节点提供托管服务的节点,所述普通节点为将其私钥密文托管给所述托管节点的节点;
[0009]所述普通节点在依据所述椭圆曲线参数确定的椭圆曲线上选取一个初始点,根据所述初始点和用户设定的循环数在所述椭圆曲线上进行点乘操作得到第一操作点;
[0010]所述普通节点构建声明并对私钥加密,将所述声明及其私钥密文发送给所述托管节点;其中,所述声明包括所述初始点、所述第一操作点及所述普通节点的公钥;
[0011]所述托管节点存储所述椭圆曲线参数、所述声明及所述普通节点的私钥密文;
[0012]证明身份包括以下步骤:
[0013]所述托管节点根据普通节点的公钥查找对应的初始点,将所述初始点和所述椭圆曲线参数发送给所述普通节点;
[0014]所述普通节点根据所述初始点和用户设定的循环数在所述椭圆曲线上进行点乘操作得到第二操作点,并将所述第二操作点发送给所述托管节点;
[0015]所述托管节点判断所述第二操作点与所述第一操作点是否相同,若相同,则所述
托管节点将所述普通节点的私钥密文发送给所述普通节点,否则,将满足预设条件的所述普通节点加入黑名单。
[0016]可选地,所述托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点包括:
[0017]所述托管节点随机生成椭圆曲线参数,利用第一会话密钥对所述椭圆曲线参数进行加密,并将加密后的所述椭圆曲线参数发送给所述普通节点。
[0018]可选地,利用第一会话密钥对所述椭圆曲线参数进行加密之前还包括:
[0019]所述普通节点生成第一会话密钥并利用所述托管节点的公钥对所述第一会话密钥进行加密,将所述加密后的第一会话密钥发送给所述托管节点,所述托管节点利用其私钥解密后得到所述第一会话密钥。
[0020]可选地,所述普通节点将所述声明及其私钥密文发送给所述托管节点包括:
[0021]所述普通节点利用对称密钥对私钥进行加密得到私钥密文,利用所述托管节点的公钥对所述声明和所述私钥密文进行加密得到第一密文,将所述第一密文发送给所述托管节点。
[0022]可选地,所述托管节点存储所述椭圆曲线参数、所述声明及所述普通节点的私钥密文包括:
[0023]所述托管节点利用其私钥对所述第一密文进行解密,得到所述声明及所述普通节点的私钥密文,存储所述椭圆曲线参数、所述声明及所述普通节点的私钥密文。
[0024]可选地,所述托管节点根据普通节点的公钥查找对应的初始点之前还包括:
[0025]所述普通节点生成第二会话密钥,并利用所述托管节点的公钥对所述第二会话密钥及普通节点的公钥进行加密得到第二密文;
[0026]所述托管节点利用其私钥对所述第二密文进行解密,得到所述第二会话密钥和所述普通节点的公钥。
[0027]可选地,将所述初始点和所述椭圆曲线参数发送给所述普通节点包括:
[0028]所述托管节点利用所述第二会话密钥对所述初始点和所述椭圆曲线参数进行加密得到第三密文,将所述第三密文发送给所述普通节点。
[0029]本专利技术还提供了一种基于零知识证明的私钥管理系统,包括托管节点和若干个普通节点,
[0030]托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点;其中,所述托管节点为区块链中给普通节点提供托管服务的节点,所述普通节点为将其私钥密文托管给所述托管节点的节点;
[0031]所述普通节点在依据所述椭圆曲线参数确定的椭圆曲线上选取一个初始点,根据所述初始点和用户设定的循环数在所述椭圆曲线上进行点乘操作得到第一操作点;
[0032]所述普通节点构建声明并对私钥加密,将所述声明及其私钥密文发送给所述托管节点;其中,所述声明包括所述初始点、所述第一操作点及所述普通节点的公钥;
[0033]所述托管节点存储所述椭圆曲线参数、所述声明及所述普通节点的私钥密文;
[0034]所述托管节点根据普通节点的公钥查找对应的初始点,将所述初始点和所述椭圆曲线参数发送给所述普通节点;
[0035]所述普通节点根据所述初始点和用户设定的循环数在所述椭圆曲线上进行点乘
操作得到第二操作点,并将所述第二操作点发送给所述托管节点;
[0036]所述托管节点判断所述第二操作点与所述第一操作点是否相同,若相同,则所述托管节点将所述普通节点的私钥密文发送给所述普通节点,否则,将满足预设条件的所述普通节点加入黑名单。
[0037]可选地,所述托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点包括:
[0038]所述托管节点随机生成椭圆曲线参数,利用第一会话密钥对所述椭圆曲线参数进行加密,并将加密后的所述椭圆曲线参数发送给所述普通节点。
[0039]可选地,利用第一会话密钥对所述椭圆曲线参数进行加密之前还包括:
[0040]所述普通节点生成第一会话密钥并利用所述托管节点的公钥对所述第一会话密钥进行加密,将所述加密后的第一会话密钥发送给所述托管节点,所述托管节点利用其私钥解密后得到所述第一会话密钥。
[0041]本专利技术提供了一种基于零知识证明的私钥管理方法及系统,其中方法包括构造声明和证明身份两个环节;其中,构造声明包括以下步骤:托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点;其中,所述托管节点为区块链中给普通节点提供托管服务的节点,所述普通节点为将其私钥密文托管给所述托管节点的节点;本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于零知识证明的私钥管理方法,其特征在于,包括构造声明和证明身份两个环节;其中,构造声明包括以下步骤:托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点;其中,所述托管节点为区块链中给普通节点提供托管服务的节点,所述普通节点为将其私钥密文托管给所述托管节点的节点;所述普通节点在依据所述椭圆曲线参数确定的椭圆曲线上选取一个初始点,根据所述初始点和用户设定的循环数在所述椭圆曲线上进行点乘操作得到第一操作点;所述普通节点构建声明并对私钥加密,将所述声明及其私钥密文发送给所述托管节点;其中,所述声明包括所述初始点、所述第一操作点及所述普通节点的公钥;所述托管节点存储所述椭圆曲线参数、所述声明及所述普通节点的私钥密文;证明身份包括以下步骤:所述托管节点根据普通节点的公钥查找对应的初始点,将所述初始点和所述椭圆曲线参数发送给所述普通节点;所述普通节点根据所述初始点和用户设定的循环数在所述椭圆曲线上进行点乘操作得到第二操作点,并将所述第二操作点发送给所述托管节点;所述托管节点判断所述第二操作点与所述第一操作点是否相同,若相同,则所述托管节点将所述普通节点的私钥密文发送给所述普通节点,否则,将满足预设条件的所述普通节点加入黑名单。2.根据权利要求1所述的基于零知识证明的私钥管理方法,其特征在于,所述托管节点生成椭圆曲线参数并将所述椭圆曲线参数发送给普通节点包括:所述托管节点随机生成椭圆曲线参数,利用第一会话密钥对所述椭圆曲线参数进行加密,并将加密后的所述椭圆曲线参数发送给所述普通节点。3.根据权利要求2所述的基于零知识证明的私钥管理方法,其特征在于,利用第一会话密钥对所述椭圆曲线参数进行加密之前还包括:所述普通节点生成第一会话密钥并利用所述托管节点的公钥对所述第一会话密钥进行加密,将所述加密后的第一会话密钥发送给所述托管节点,所述托管节点利用其私钥解密后得到所述第一会话密钥。4.根据权利要求1所述的基于零知识证明的私钥管理方法,其特征在于,所述普通节点将所述声明及其私钥密文发送给所述托管节点包括:所述普通节点利用对称密钥对私钥进行加密得到私钥密文,利用所述托管节点的公钥对所述声明和所述私钥密文进行加密得到第一密文,将所述第一密文发送给所述托管节点。5.根据权利要求4所述的基于零知识证明的私钥管理方法,其特征在于,所述托管节点存储所述椭圆曲线参数、所述声明及所述普通节点的私钥密文包括:所述托管节点利用其私钥对所述第一密文进行解密,得到所述声明及所述普通节点的私钥密文,存储所述椭圆曲线参数、所述声明及所述普通节点的...

【专利技术属性】
技术研发人员:梁增健陈志伟黄永丰庞启荣邓伊雯
申请(专利权)人:广州蚁比特区块链科技有限公司
类型:发明
国别省市:

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

1