CN115664649A - 基于动态委员会的高安全性区块链身份管理方法及系统 - Google Patents

基于动态委员会的高安全性区块链身份管理方法及系统 Download PDF

Info

Publication number
CN115664649A
CN115664649A CN202211281135.0A CN202211281135A CN115664649A CN 115664649 A CN115664649 A CN 115664649A CN 202211281135 A CN202211281135 A CN 202211281135A CN 115664649 A CN115664649 A CN 115664649A
Authority
CN
China
Prior art keywords
user
committee
certificate
context
dynamic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202211281135.0A
Other languages
English (en)
Other versions
CN115664649B (zh
Inventor
吴晓华
冯雪琪
吴丰恒
张庭博
王静
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Magic Sea Dune Network Technology Co ltd
University of Electronic Science and Technology of China
Original Assignee
Chengdu Magic Sea Dune Network Technology Co ltd
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chengdu Magic Sea Dune Network Technology Co ltd, University of Electronic Science and Technology of China filed Critical Chengdu Magic Sea Dune Network Technology Co ltd
Priority to CN202211281135.0A priority Critical patent/CN115664649B/zh
Publication of CN115664649A publication Critical patent/CN115664649A/zh
Application granted granted Critical
Publication of CN115664649B publication Critical patent/CN115664649B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02WCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO WASTEWATER TREATMENT OR WASTE MANAGEMENT
    • Y02W90/00Enabling technologies or technologies with a potential or indirect contribution to greenhouse gas [GHG] emissions mitigation

Landscapes

  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于区块链技术领域,尤其涉及一种基于动态委员会的高安全性区块链身份管理方法及系统,将区块链身份管理系统基于动态委员会进行构建,将动态秘密共享技术应用于凭证构建中,提出了全新的主凭证颁发协议、上下文凭证颁发协议和密钥恢复协议。主凭证颁发协议负责生成用户唯一的主凭证;上下文凭证颁发协议负责颁发用户的上下文凭证,该上下文凭证能够满足用户与不同应用程序的交互需求;密钥恢复协议负责恢复用户的私钥。本发明在保证用户凭证唯一性的同时,解决了在委员会节点动态变换阶段的用户隐私信息的安全问题,同时解决了委员会动态变化阶段的用户私钥易被盗取问题,有效提高了用户信息的安全性。

Description

基于动态委员会的高安全性区块链身份管理方法及系统
技术领域
本发明属于区块链技术领域,尤其涉及一种基于动态委员会的高安全性区块链身份管理方法及系统。
背景技术
身份管理是区块链的核心要素,因此它不仅要满足区块链去中心化的特性,还要保证用户身份信息的安全。去中心化身份DID(Decentralized Identity)的提出打破了身份管理的中心化特点,用户可通过私钥自主管理身份信息。同时为了避免用户私钥丢失所带来的损失,使用秘密共享技术为用户私钥提供备份,以确保用户私钥的可恢复性。W3C首次提出了委员会这一概念,它是由任意多个区块链中的节点组成,用于用户凭证的颁发以及用户私钥的备份。
许多关于去中心化身份的研究都以静态委员会节点为前提,利用委员会颁发用户凭证同时备份用户私钥,忽略了委员会节点的动态变化。同时,许多研究都只专注于取消验证节点之间的不可链接性,忽略了委员会节点之间的不可链接性。
在区块链身份管理过程中,为安全获得现存web服务器中的数据信息,使用DECO协议进行数据信息的安全转移。DECO协议是证明者P,验证者V和TLS服务器之间的三方协议。它允许P说服V从S检索到的一段数据-可能是P的私有数据-满足谓词Pred。DECO依靠多方计算(MPC)来保护数据的隐私和真实性,并且满足零知识证明来证明谓词。由此,DECO协议实现了将现有web服务器中的属性信息安全移植到区块链中。
MPC安全多方计算协议多用来保护数据的隐私和真实性。MPC协议实现了彼此不信任的多方可以正确计算任何函数,同时还保证了各方的输入输出数据不被其他方学习到。MPC协议提供了可信第三方,将输入信息从各方以加密的方式收集起来,输入函数进行计算,最终将结果安全返回各方。MPC协议确保了各方信息的私密性与安全性。参与协议的任意一方都只会知道自己的输出结果,并且通过MPC所获得的结果均保证是正确的。
发明内容
为了解决上述现有技术中存在的技术问题,本发明提供了一种基于动态委员会的高安全性区块链身份管理系统,结合动态秘密共享技术,构建了基于动态委员会的凭证颁发协议和密钥恢复协议,以解决背景技术中提到的委员会节点动态变化时的私钥安全、委员会节点之间的链接性等问题。
为解决上述技术问题,本发明采用的技术方案如下:
一种基于动态委员会的高安全性区块链身份管理方法,其负责凭证颁发的委员会由区块链中的动态节点组成,将动态秘密共享技术应用于凭证构建中,基于动态委员会搭建了全新的身份管理协议,包括基于动态委员会的A主凭证颁发阶段、B上下文凭证颁发阶段和C密钥恢复阶段;其中,A主凭证颁发阶段分别与B上下文凭证颁发阶段、C密钥恢复阶段连接,B上下文凭证颁发阶段和C密钥恢复阶段相互独立;
所述A主凭证颁发阶段:生成用户唯一的主凭证,该协议首先将用户的遗留数据转化为预凭证,然后由得到的预凭证来生成主凭证;
所述B上下文凭证颁发阶段:颁发用户的上下文凭证,该上下文凭证能够满足用户与不同应用程序的交互需求,并且实现上下文凭证之间的不可链接性;
所述C密钥恢复阶段:在委员会节点动态变化的条件下恢复用户的私钥。
作为优选,所述A主凭证颁发阶段包括以下步骤:
A1.用户首先生成自己的公私钥对,而后委员会节点执行分布式密钥生成协议,生成委员会的公私钥对,并初始化表格CmTable为空,该表格用于重复数据删除,以保证主凭证的唯一性;
A2.用户选择想要生成预凭证的属性,并利用DECO协议安全移植现有web服务器中的属性,经委员会节点签名后得到预凭证PC;
A3.委员会节点判断用户要生成的主凭证是否唯一,若是,则进入步骤A4,否则,返回步骤A2;
A4.委员会节点通过预凭证PC来为用户颁发主凭证,并附上声明确保主凭证的唯一性;
所述B上下文凭证颁发阶段包括以下步骤:
B1.用户在获得主凭证CDmaster之后,生成新的公钥
Figure BDA0003898264480000021
同时在与应用程序交互时指定要使用的上下文字符串ctx;
B2.用户向委员会节点发送主凭证CDmaster,新公钥
Figure BDA0003898264480000022
以及满足上下文字符串ctx的新预凭证PCnew
B3.委员会节点以动态秘密共享的方式存储ctxTable表,将已颁发的上下文凭证存储于表格中,同时根据
Figure BDA0003898264480000023
来为用户颁发上下文凭证;
所述C密钥恢复阶段包括以下步骤:
C1.用户首先指定一组用于身份验证的账户以及对它们的访问结构;
C2.用户通过使用DECO协议,在注册密钥恢复服务时将身份验证方案发送到委员会节点中;
C3.注册完成之后,用户使用动态秘密共享技术将私钥sku备份到委员会中;
C4.当用户想要恢复私钥时,需要执行指定的身份验证,若验证成功,则进入步骤C5,若验证失败,则返回步骤C1;
C5.验证节点生成零知识证明,证明用户已通过身份认证,并将该证明发送给委员会节点,委员会节点验证成功后执行动态秘密共享协议,将秘密碎片发送给用户,使得用户重新恢复私钥sku
作为优选,所述步骤A1包括以下步骤:
A101.用户生成自己的公私钥对sku和pku,而后委员会节点执行分布式密钥生成协议,生成委员会节点的私钥skc和公钥pkc;委员会节点共有n个,分别为C1,C2,…,Cn
A102.委员会节点Ci接收私钥skc的秘密份额ski以及公钥pkc,并初始化表格CmTable为空,表格存储已发布主凭证的用户的公钥pku和唯一属性值Vu,委员会以秘密共享的方式共同维护该表格。
作为优选,所述步骤A2包括以下步骤:
A201.用户选择想要生成预凭证的属性a,并利用DECO协议安全移植现有web服务器中的属性a所对应的值v,生成CL声明,其中CL={a,Cv},Cv=com(v,p),表示对属性值v的承诺,其中证人为p;
A202.委员会节点使用门限签名算法,将ski作为门限签名密钥,对CL进行签名,生成预凭证中的证明πDECO,用户最终生成预凭证PC=(pku,CL,πDECO)。
作为优选,所述步骤A3包括以下步骤:
A301.委员会节点产生新的随机盲因子([b],B=gb),并将其发送给用户U,而后用户U从中重构出b;
A302.用户计算V′u=Vu+b来隐藏属性值Vu,然后产生正确致盲证明
Figure BDA0003898264480000031
Pokb,Vu,p:Vu′=Vu+b(gb=B)(com(Vu,p)=Cv);
A303.用户根据Vu生成对应的预凭证PCu,然后用户将(PCu,Vu′,πblind)发送给委员会节点,每个委员会节点Ci验证收到的证明,计算
Figure BDA0003898264480000032
其中λ是拉格朗日系数;
A304.委员会节点执行动态秘密共享协议,将存储的CmTable秘密共享份额合并成完整的CmTable,同时执行MPC协议,以计算出Vu=∑λiVui,然后将属性Vu与CmTable中的内容进行匹配;
A305.判断Vu在CmTable中是否匹配成功,若匹配成功,则说明主凭证唯一,委员会节点可为用户颁发主凭证,进入步骤A4,否则返回步骤A2。
作为优选,所述步骤A4包括以下步骤:
A401.每个委员会节点Ci计算h={pku,“主凭证”,CL,{“删除重复凭证”,a}},并使用私钥ski对h进行签名,生成部分签名σi=TS.Sig(ski,h);
A402.委员会节点Ci使用用户公钥pku对生成的部分签名σi进行加密,然后将其发送给用户U;
A403.用户U使用私钥sku解密t个有效签名{σi},将其组合成完整签名σc=TS.Comb({σi}),得到主凭证CDmaster={pku,“主凭证”,CL,{“删除重复凭证”,a},σc}。
作为优选,所述步骤B2包括以下步骤:
B201.用户在生成新公钥
Figure BDA0003898264480000041
之后,通过遗留数据,即满足应用程序上下文要求的数据,生成新声明CLnew,该声明为应用程序上下文所需的声明;
B202.用户在CLnew中附加零知识证明,证明该声明属于持有主凭证的用户,即该声明是有效的;
B203.用户通过新声明CLnew和上下文字符串ctx构建新的预凭证PCnew,然后将主凭证CDmaster、新公钥
Figure BDA0003898264480000042
和预凭证PCnew发送给委员会节点。
作为优选,所述步骤B3包括以下步骤:
B301.委员会以动态秘密共享的方式存储ctxTable表,以实现委员会节点之间的不可链接性,表中存储成对的pku
Figure BDA0003898264480000043
委员会节点将已颁发上下文凭证的成对DID存储于表格中;
B302.用户选取m(m>max(tx+1,ty+1))个委员会节点作为秘密共享节点,使用非对称双变量多项式
Figure BDA0003898264480000044
将每个成对DID秘密划分为m个秘密碎片,发送到m个委员会节点中;
B303.用户随机指定一个委员会节点执行动态秘密共享协议,使该节点获得完整的ctxTable表,然后将用户所发送的
Figure BDA0003898264480000045
与表中内容比较,若未找到相同的
Figure BDA0003898264480000046
则进入步骤B304,否则,直接为用户颁发上下文凭证;
B304.委员会节点更新ctxTable,将新的DID加入列表中,执行动态秘密共享协议,将ctxTable以秘密共享的方式存储于委员会节点中,同时为用户颁发上下文凭证。
作为优选,所述步骤C3包括以下步骤:
C301.用户执行动态秘密共享协议,将私钥sku作为秘密,使用双变量多项式S(x,y)=k0,0+K0,1x+k1,0y+k1,1xy+…+km,2mxmy2m,使多项式满足S(0,0)=k0,0=sku
C302.令y=0,使得共享方案的阈值为m,将任意k(k>m+1)个x值带入多项式得到秘密碎片S(i0,0),S(i1,0),…,S(im,0),S(im+1,0),…,S(ik,0);
C303.当委员会节点动态变化时,令x=0,使得阈值变为2m,再重新选取k′(k′>2m+1)个x值带入多项式,得到新的秘密碎片S(0,j0),S(0,j1),…,S(0,j2m),S(0,j2m+1),S(0,jk′),将得到的秘密碎片备份到委员会节点中。
为解决上述技术问题,本发明还采用的技术方案如下:
一种基于动态委员会的高安全性区块链身份管理系统,将区块链身份管理系统基于动态委员会进行构建,将动态秘密共享技术应用于凭证构建中,基于动态委员会搭建了全新的身份管理协议,包括基于动态委员会的主凭证颁发协议、上下文凭证颁发协议、密钥恢复协议;其中,主凭证颁发协议分别与上下文凭证颁发协议、密钥恢复协议连接,上下文凭证颁发协议和密钥恢复协议相互独立;
所述主凭证颁发协议用于生成用户唯一的主凭证,该协议首先将用户的遗留数据转化为预凭证,然后由得到的预凭证来生成主凭证;
所述上下文凭证颁发协议用于颁发用户的上下文凭证,该上下文凭证能够满足用户与不同应用程序的交互需求,并且实现上下文凭证之间的不可链接性;
所述密钥恢复协议用于在委员会节点动态变化的条件下恢复用户的私钥。
本发明的有益效果:
本发明将系统分为三个阶段:首先,三个阶段中负责颁发凭证与密钥备份的委员会均由区块链中的动态节点组成。主凭证颁发阶段负责为用户颁发唯一的主凭证,该阶段首先为用户生成预凭证,而后再通过预凭证生成主凭证;上下文凭证颁发阶段负责为用户颁发上下文凭证,将动态秘密共享技术应用于凭证设计中,该凭证可用于用户与不同应用程序的交互需求;密钥恢复阶段负责恢复用户的私钥,即隐私信息,在委员会节点动态变化的情况下,也能够恢复用户的私钥。通过这三个阶段的设计,本发明实现了区块链系统中动态委员会下的用户隐私保护,既满足了用户的应用程序交互需求,又给予用户恢复隐私信息的权利,大大增强了用户的数据安全。
附图说明
图1为本发明的系统结构示意图;
图2为本发明的方法流程图;
图3为实施例中主凭证颁发活动图;
图4为实施例中上下文凭证颁发活动图;
图5为实施例中的上下文凭证颁发协议各阶段执行时间对比图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面结合图1到图5对本发明作进一步的详细说明:
一种基于动态委员会的高安全性区块链身份管理方法,其负责凭证颁发的委员会由区块链中的动态节点组成,将动态秘密共享技术应用于凭证构建中,基于动态委员会搭建了全新的身份管理协议,包括基于动态委员会的A主凭证颁发阶段、B上下文凭证颁发阶段和C密钥恢复阶段;其中,A主凭证颁发阶段分别与B上下文凭证颁发阶段、C密钥恢复阶段连接,B上下文凭证颁发阶段和C密钥恢复阶段相互独立;
所述A主凭证颁发阶段:生成用户唯一的主凭证,该协议首先将用户的遗留数据转化为预凭证,然后由得到的预凭证来生成主凭证;
所述B上下文凭证颁发阶段:颁发用户的上下文凭证,该上下文凭证能够满足用户与不同应用程序的交互需求,并且实现上下文凭证之间的不可链接性;
所述C密钥恢复阶段:在委员会节点动态变化的条件下恢复用户的私钥。
所述A主凭证颁发阶段包括以下步骤:
A1.用户首先生成自己的公私钥对,而后委员会节点执行分布式密钥生成协议,生成委员会的公私钥对,并初始化表格CmTable为空,该表格用于重复数据删除,以保证主凭证的唯一性;
所述步骤A1包括以下步骤:
A101.用户生成自己的公私钥对sku和pku,而后委员会节点(共有n个,分别为C1,C2,…,Cn)执行分布式密钥生成协议,生成委员会节点的私钥skc和公钥pkc
A102.委员会节点Ci接收私钥skc的秘密份额ski以及公钥pkc,并初始化表格CmTable为空,表格存储已发布主凭证的用户的公钥pku和唯一属性值Vu,委员会以秘密共享的方式共同维护该表格。
A2.用户选择想要生成预凭证的属性,并利用DECO协议安全移植现有web服务器中的属性,经委员会节点签名后得到预凭证PC;
所述步骤A2包括以下步骤:
A201.用户选择想要生成预凭证的属性a,并利用DECO协议安全移植现有web服务器中的属性a所对应的值v,生成CL声明,其中CL={a,Cv},Cv=com(v,p),表示对属性值v的承诺,其中证人为p;
A202.委员会节点使用门限签名算法,将ski作为门限签名密钥,对CL进行签名,生成预凭证中的证明πDECO,用户最终生成预凭证PC=(pku,CL,πDECO)。
A3.委员会节点判断用户要生成的主凭证是否唯一,若是,则进入步骤A4,否则,返回步骤A2;
所述步骤A3包括以下步骤:
A301.委员会节点产生新的随机盲因子([b],B=gb),并将其发送给用户U,而后用户U从中重构出b;
A302.用户计算V′u=Vu+b来隐藏属性值Vu,然后产生正确致盲证明
Figure BDA0003898264480000071
Figure BDA0003898264480000072
A303.用户根据Vu生成对应的预凭证PCu,然后用户将(PCu,Vu′,πblind)发送给委员会节点,每个委员会节点Ci验证收到的证明,计算
Figure BDA0003898264480000073
其中λ是拉格朗日系数;
A304.委员会节点执行动态秘密共享协议,将存储的CmTable秘密共享份额合并成完整的CmTable,同时执行MPC协议,以计算出Vu=∑λiVui,然后将属性Vu与CmTable中的内容进行匹配;
A305.判断Vu在CmTable中是否匹配成功,若匹配成功,则说明主凭证唯一,委员会节点可为用户颁发主凭证,进入步骤A4,否则返回步骤A2。
A4.委员会节点通过预凭证PC来为用户颁发主凭证,并附上“删除重复凭证”声明来确保主凭证的唯一性;
所述步骤A4包括以下步骤:
A401.每个委员会节点Ci计算h={pku,“主凭证”,CL,{“删除重复凭证”,a}},并使用私钥ski对h进行签名,生成部分签名σi=TS.Sig(ski,h);
A402.委员会节点Ci使用用户公钥pku对生成的部分签名vi进行加密,然后将其发送给用户U;
A403.用户U使用私钥sku解密t个有效签名{σi},将其组合成完整签名σc=TS.Comb({σi}),得到主凭证CDmaster={pku,“主凭证”,CL,{“删除重复凭证”,a},σc}。
所述B上下文凭证颁发阶段包括以下步骤:
B1.用户在获得主凭证CDmaster之后,生成新的公钥
Figure BDA0003898264480000081
同时在与应用程序交互时指定要使用的上下文字符串ctx,例如“同意此颁发”;
B2.用户向委员会节点发送主凭证CDmaster,新公钥
Figure BDA0003898264480000082
以及满足上下文字符串ctx的新预凭证PCnew
所述步骤B2包括以下步骤:
B201.用户在生成新公钥
Figure BDA0003898264480000083
之后,通过遗留数据,即满足应用程序上下文要求的数据,生成新声明CLnew,该声明为应用程序上下文所需的声明;
B202.用户在CLnew中附加零知识证明,证明该声明属于持有主凭证的用户,即该声明是有效的;
B203.用户通过新声明CLnew和上下文字符串ctx构建新的预凭证PCnew,然后将主凭证CDmaster、新公钥
Figure BDA0003898264480000084
和预凭证PCnew发送给委员会节点。
B3.委员会节点以动态秘密共享的方式存储ctxTable表,将已颁发的上下文凭证存储于表格中,同时根据
Figure BDA0003898264480000085
来为用户颁发上下文凭证;
所述步骤B3包括以下步骤:
B301.委员会以动态秘密共享的方式存储ctxTable表,以实现委员会节点之间的不可链接性,表中存储成对的pku
Figure BDA0003898264480000086
委员会节点将已颁发上下文凭证的成对DID存储于表格中;
B302.用户选取m(m>max(tx+1,ty+1))个委员会节点作为秘密共享节点,使用非对称双变量多项式
Figure BDA0003898264480000087
将每个成对DID秘密划分为m个秘密碎片,发送到m个委员会节点中;
B303.用户随机指定一个委员会节点执行动态秘密共享协议,使该节点获得完整的ctxTable表,然后将用户所发送的
Figure BDA0003898264480000088
与表中内容比较,若未找到相同的
Figure BDA0003898264480000089
则进入步骤B304,否则,直接为用户颁发上下文凭证;
B304.委员会节点更新ctxTable,将新的成对DID加入列表中,执行动态秘密共享协议,将ctxTable以秘密共享的方式存储于委员会节点中,同时为用户颁发上下文凭证。
所述C密钥恢复阶段包括以下步骤:
C1.用户首先指定一组用于身份验证的账户以及对它们的访问结构,例如用户提供的身份验证方案为成功登录微信、百度、QQ中任意三分之二的账户,即为验证成功;
C2.用户通过使用DECO协议,在注册密钥恢复服务时将身份验证方案发送到委员会节点中;
C3.注册完成之后,用户使用动态秘密共享技术将私钥sku备份到委员会中;
所述步骤C3包括以下步骤:
C301.用户执行动态秘密共享协议,将私钥sku作为秘密,使用双变量多项式S(x,y)=k0,0+K0,1x+k1,0y+k1,1xy+…+km,2mxmy2m,使多项式满足S(0,0)=k0,0=sku
C302.令y=0,使得共享方案的阈值为m,将任意k(k>m+1)个x值带入多项式得到秘密碎片S(i0,0),S(i1,0),…,S(im,0),S(im+1,0),…,S(ik,0);
C303.当委员会节点动态变化时,令x=0,使得阈值变为2m,再重新选取k′(k′>2m+1)个x值带入多项式,得到新的秘密碎片S(0,j0),S(0,j1),…,S(0,j2m),S(0,j2m+1),S(0,jk′),将得到的秘密碎片备份到委员会节点中。
C4.当用户想要恢复私钥时,需要执行指定的身份验证,若验证成功,则进入步骤C5,若验证失败,则返回步骤C1;
C5.验证节点生成零知识证明,证明用户已通过身份认证,并将该证明发送给委员会节点,委员会节点验证成功后执行动态秘密共享协议,将秘密碎片发送给用户,使得用户重新恢复私钥sku
首先,三个阶段中负责颁发凭证与密钥备份的委员会均由区块链中的动态节点组成。主凭证颁发阶段负责为用户颁发唯一的主凭证,该阶段首先为用户生成预凭证,而后再通过预凭证生成主凭证;上下文凭证颁发阶段负责为用户颁发上下文凭证,将动态秘密共享技术应用于凭证设计中,该凭证可用于用户与不同应用程序的交互需求;密钥恢复阶段负责恢复用户的私钥,即隐私信息,在委员会节点动态变化的情况下,也能够恢复用户的私钥。通过这三个阶段的设计,本发明实现了区块链系统中动态委员会下的用户隐私保护,既满足了用户的应用程序交互需求,又给予用户恢复隐私信息的权利,大大增强了用户的数据安全。
下面以实施例的对比实验对基于动态委员会的高安全性区块链身份管理系统的可行性作进一步描述。
在基于动态委员的高安全性区块链身份管理系统中,上下文凭证颁发协议的执行时间作为衡量整个系统可行性的重要标准。在本对比实施例中将上下文凭证颁发协议的执行时间划分为四个阶段,分别为“去重”、“重组ctxTable”、“更新ctxTable”、“颁发上下文凭证”。在上下文凭证办法协议中,ctxTable为存储成对DID的表格以记录已经颁发的上下文凭证信息。ctxTable以动态秘密共享的方式存储于委员会中,在上下文凭证协议执行阶段,为检查用户所需上下文凭证的唯一性,委员会首先需要将各个节点所存储的关于ctxTable秘密份额重新组合为完整的ctxTable,该阶段为上下文凭证颁发协议的“重组ctxTable”。在委员会重组ctxTable后,委员会将用户所需上下文凭证中的成对DID与ctxTable中的内容进行比对,检查上下文凭证的唯一性,该阶段为“去重”。在确定用户所需的上下文凭证具有唯一性后,将该上下文凭证所对对应的成对DID加入到ctxTable,对该表进行更新,该阶段为“更新ctxTable”。在进行以上三阶段后,委员会为用户颁发所需的上下文凭证,该阶段为“颁发上下文凭证”。以上四个阶段有效展现了上下文凭证颁发协议的具体实现流程,能够更为全面详细的展现了系统的执行效率。
在本实施例中,进行500次的上下文凭证颁发协议的执行并取平均值,如图5所示,将基于动态委员会的高安全性区块链身份管理系统与基于静态委员会的低安全性区块链身份管理系统进行对比。通过上下文凭证颁发协议执行的四个阶段所需执行时间的比较,直观表现出本发明不仅解决了现存区块链身份管理系统在动态委员会下不能保证用户隐私安全问题,而且具有可行性。从图中可以看出,本发明在有效提高用户信息安全的前提下,上下文凭证颁发协议四个阶段的执行时间与现存低安全性的系统相比,并未存在较大时间差。基于动态委员会的高安全性区块链身份管理系统在解决区块链节点变化期间用户隐私安全问题的情况下,其上下文凭证颁发协议的执行时间仍能与现存低安全性系统的执行时间相差较小,充分说明了本发明中基于动态委员会的高安全性区块链身份管理系统的可行性。
以上所述实施例仅表达了本申请的具体实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请保护范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请技术方案构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。

Claims (10)

1.一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,其负责凭证颁发的委员会由区块链中的动态节点组成,将动态秘密共享技术应用于凭证构建中,基于动态委员会搭建了全新的身份管理协议,包括基于动态委员会的A主凭证颁发阶段、B上下文凭证颁发阶段和C密钥恢复阶段;其中,A主凭证颁发阶段分别与B上下文凭证颁发阶段、C密钥恢复阶段连接,B上下文凭证颁发阶段和C密钥恢复阶段相互独立;
所述A主凭证颁发阶段:生成用户唯一的主凭证,该协议首先将用户的遗留数据转化为预凭证,然后由得到的预凭证来生成主凭证;
所述B上下文凭证颁发阶段:颁发用户的上下文凭证,该上下文凭证能够满足用户与不同应用程序的交互需求,并且实现上下文凭证之间的不可链接性;
所述C密钥恢复阶段:在委员会节点动态变化的条件下恢复用户的私钥。
2.根据权利要求1所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述A主凭证颁发阶段包括以下步骤:
A1.用户首先生成自己的公私钥对,而后委员会节点执行分布式密钥生成协议,生成委员会的公私钥对,并初始化表格CmTable为空,该表格用于重复数据删除,以保证主凭证的唯一性;
A2.用户选择想要生成预凭证的属性,并利用DECO协议安全移植现有web服务器中的属性,经委员会节点签名后得到预凭证PC;
A3.委员会节点判断用户要生成的主凭证是否唯一,若是,则进入步骤A4,否则,返回步骤A2;
A4.委员会节点通过预凭证PC来为用户颁发主凭证,并附上声明确保主凭证的唯一性;
所述B上下文凭证颁发阶段包括以下步骤:
B1.用户在获得主凭证CDmaster之后,生成新的公钥
Figure FDA0003898264470000011
同时在与应用程序交互时指定要使用的上下文字符串ctx;
B2.用户向委员会节点发送主凭证CDmaster,新公钥
Figure FDA0003898264470000012
以及满足上下文字符串ctx的新预凭证PCnew
B3.委员会节点以动态秘密共享的方式存储ctxTable表,将已颁发的上下文凭证存储于表格中,同时根据
Figure FDA0003898264470000013
来为用户颁发上下文凭证;
所述C密钥恢复阶段包括以下步骤:
C1.用户首先指定一组用于身份验证的账户以及对它们的访问结构;
C2.用户通过使用DECO协议,在注册密钥恢复服务时将身份验证方案发送到委员会节点中;
C3.注册完成之后,用户使用动态秘密共享技术将私钥sku备份到委员会中;
C4.当用户想要恢复私钥时,需要执行指定的身份验证,若验证成功,则进入步骤C5,若验证失败,则返回步骤C1;
C5.验证节点生成零知识证明,证明用户已通过身份认证,并将该证明发送给委员会节点,委员会节点验证成功后执行动态秘密共享协议,将秘密碎片发送给用户,使得用户重新恢复私钥sku
3.根据权利要求2所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤A1包括以下步骤:
A101.用户生成自己的公私钥对sku和pku,而后委员会节点执行分布式密钥生成协议,生成委员会节点的私钥skc和公钥pkc;委员会节点共有n个,分别为C1,C2,…,Cn
A102.委员会节点Ci接收私钥skc的秘密份额ski以及公钥pkc,并初始化表格CmTable为空,表格存储已发布主凭证的用户的公钥pku和唯一属性值Vu,委员会以秘密共享的方式共同维护该表格。
4.根据权利要求3所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤A2包括以下步骤:
A201.用户选择想要生成预凭证的属性a,并利用DECO协议安全移植现有web服务器中的属性a所对应的值v,生成CL声明,其中CL={a,Cv},Cv=com(v,p),表示对属性值v的承诺,其中证人为p;
A202.委员会节点使用门限签名算法,将ski作为门限签名密钥,对CL进行签名,生成预凭证中的证明πDECO,用户最终生成预凭证PC=(pku,CL,πDECO)。
5.根据权利要求4所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤A3包括以下步骤:
A301.委员会节点产生新的随机盲因子([b],B=gb),并将其发送给用户U,而后用户U从中重构出b;
A302.用户计算V′u=Vu+b来隐藏属性值Vu,然后产生正确致盲证明
Figure FDA0003898264470000021
Figure FDA0003898264470000022
A303.用户根据Vu生成对应的预凭证PCu,然后用户将(PCu,Vu′,πblind)发送给委员会节点,每个委员会节点Ci验证收到的证明,计算
Figure FDA0003898264470000023
其中λ是拉格朗日系数;
A304.委员会节点执行动态秘密共享协议,将存储的CmTable秘密共享份额合并成完整的CmTable,同时执行MPC协议,以计算出Vu=∑λiVui,然后将属性Vu与CmTable中的内容进行匹配;
A305.判断Vu在CmTable中是否匹配成功,若匹配成功,则说明主凭证唯一,委员会节点可为用户颁发主凭证,进入步骤A4,否则返回步骤A2。
6.根据权利要求5所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤A4包括以下步骤:
A401.每个委员会节点Ci计算h={pku,“主凭证”,CL,{“删除重复凭证”,a}},并使用私钥ski对h进行签名,生成部分签名σi=TS.Sig(ski,h);
A402.委员会节点Ci使用用户公钥pku对生成的部分签名σi进行加密,然后将其发送给用户U;
A403.用户U使用私钥sku解密t个有效签名{σi},将其组合成完整签名σc=TS.Comb({σi}),得到主凭证CDmaster={pku,“主凭证”,CL,{“删除重复凭证”,a},σc}。
7.根据权利要求2所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤B2包括以下步骤:
B201.用户在生成新公钥
Figure FDA0003898264470000031
之后,通过遗留数据,即满足应用程序上下文要求的数据,生成新声明CLnew,该声明为应用程序上下文所需的声明;
B202.用户在CLnew中附加零知识证明,证明该声明属于持有主凭证的用户,即该声明是有效的;
B203.用户通过新声明CLnew和上下文字符串ctx构建新的预凭证PCnew,然后将主凭证CDmaster、新公钥
Figure FDA0003898264470000032
和预凭证PCnew发送给委员会节点。
8.根据权利要求7所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤B3包括以下步骤:
B301.委员会以动态秘密共享的方式存储ctxTable表,以实现委员会节点之间的不可链接性,表中存储成对的pku
Figure FDA0003898264470000033
委员会节点将已颁发上下文凭证的成对DID存储于表格中;
B302.用户选取m(m>max(tx+1,ty+1))个委员会节点作为秘密共享节点,使用非对称双变量多项式
Figure FDA0003898264470000034
将每个成对DID秘密划分为m个秘密碎片,发送到m个委员会节点中;
B303.用户随机指定一个委员会节点执行动态秘密共享协议,使该节点获得完整的ctxTable表,然后将用户所发送的
Figure FDA0003898264470000035
与表中内容比较,若未找到相同的
Figure FDA0003898264470000036
则进入步骤B304,否则,直接为用户颁发上下文凭证;
B304.委员会节点更新ctxTable,将新的成对DID加入列表中,执行动态秘密共享协议,将ctxTable以秘密共享的方式存储于委员会节点中,同时为用户颁发上下文凭证。
9.根据权利要求2所示的一种基于动态委员会的高安全性区块链身份管理方法,其特征在于,所述步骤C3包括以下步骤:
C301.用户执行动态秘密共享协议,将私钥sku作为秘密,使用双变量多项式S(x,y)=k0,0+K0,1x+k1,0y+k1,1xy+…+km,2mxmy2m,使多项式满足S(0,0)=k0,0=sku
C302.令y=0,使得共享方案的阈值为m,将任意k(k>m+1)个x值带入多项式得到秘密碎片S(i0,0),S(i1,0),…,S(im,0),S(im+1,0),…,S(ik,0);
C303.当委员会节点动态变化时,令x=0,使得阈值变为2m,再重新选取k′(k′>2m+1)个x值带入多项式,得到新的秘密碎片S(0,j0),S(0,j1),…,S(0,j2m),S(0,j2m+1),S(0,jk′),将得到的秘密碎片备份到委员会节点中。
10.一种基于动态委员会的高安全性区块链身份管理系统,其特征在于,将区块链身份管理系统基于动态委员会进行构建,将动态秘密共享技术应用于凭证构建中,基于动态委员会搭建了全新的身份管理协议,包括基于动态委员会的主凭证颁发协议、上下文凭证颁发协议、密钥恢复协议;其中,主凭证颁发协议分别与上下文凭证颁发协议、密钥恢复协议连接,上下文凭证颁发协议和密钥恢复协议相互独立;
所述主凭证颁发协议用于生成用户唯一的主凭证,该协议首先将用户的遗留数据转化为预凭证,然后由得到的预凭证来生成主凭证;
所述上下文凭证颁发协议用于颁发用户的上下文凭证,该上下文凭证能够满足用户与不同应用程序的交互需求,并且实现上下文凭证之间的不可链接性;
所述密钥恢复协议用于在委员会节点动态变化的条件下恢复用户的私钥。
CN202211281135.0A 2022-10-19 2022-10-19 基于动态委员会的高安全性区块链身份管理方法及系统 Active CN115664649B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211281135.0A CN115664649B (zh) 2022-10-19 2022-10-19 基于动态委员会的高安全性区块链身份管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211281135.0A CN115664649B (zh) 2022-10-19 2022-10-19 基于动态委员会的高安全性区块链身份管理方法及系统

Publications (2)

Publication Number Publication Date
CN115664649A true CN115664649A (zh) 2023-01-31
CN115664649B CN115664649B (zh) 2023-08-01

Family

ID=84989335

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211281135.0A Active CN115664649B (zh) 2022-10-19 2022-10-19 基于动态委员会的高安全性区块链身份管理方法及系统

Country Status (1)

Country Link
CN (1) CN115664649B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117118618A (zh) * 2023-10-25 2023-11-24 北京天润基业科技发展股份有限公司 数据共享方法、电子设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190305938A1 (en) * 2018-03-30 2019-10-03 Spyrus, Inc. Threshold secret share authentication proof and secure blockchain voting with hardware security modules
WO2020143246A1 (zh) * 2019-01-07 2020-07-16 苏宁云计算有限公司 一种结合区块链和秘密共享的去匿名化的方法及系统
KR20210020851A (ko) * 2020-10-26 2021-02-24 주식회사 코인플러그 컨소시엄 블록체인 네트워크에서의 프라이빗 키를 백업 및 복원하는 방법 및 장치
CN113098838A (zh) * 2021-02-21 2021-07-09 西安电子科技大学 一种可信分布式身份认证方法、系统、存储介质及应用
CN113221089A (zh) * 2021-03-15 2021-08-06 东北大学 基于可验证声明的隐私保护属性认证系统及方法
CN114448639A (zh) * 2021-12-15 2022-05-06 电子科技大学 具有唯一性和密钥安全的去中心化身份系统及实现方法
CN114866259A (zh) * 2022-07-01 2022-08-05 北京大学 一种基于秘密分享的区块链受控可追溯身份隐私方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190305938A1 (en) * 2018-03-30 2019-10-03 Spyrus, Inc. Threshold secret share authentication proof and secure blockchain voting with hardware security modules
WO2020143246A1 (zh) * 2019-01-07 2020-07-16 苏宁云计算有限公司 一种结合区块链和秘密共享的去匿名化的方法及系统
KR20210020851A (ko) * 2020-10-26 2021-02-24 주식회사 코인플러그 컨소시엄 블록체인 네트워크에서의 프라이빗 키를 백업 및 복원하는 방법 및 장치
CN113098838A (zh) * 2021-02-21 2021-07-09 西安电子科技大学 一种可信分布式身份认证方法、系统、存储介质及应用
CN113221089A (zh) * 2021-03-15 2021-08-06 东北大学 基于可验证声明的隐私保护属性认证系统及方法
CN114448639A (zh) * 2021-12-15 2022-05-06 电子科技大学 具有唯一性和密钥安全的去中心化身份系统及实现方法
CN114866259A (zh) * 2022-07-01 2022-08-05 北京大学 一种基于秘密分享的区块链受控可追溯身份隐私方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117118618A (zh) * 2023-10-25 2023-11-24 北京天润基业科技发展股份有限公司 数据共享方法、电子设备
CN117118618B (zh) * 2023-10-25 2024-01-23 北京天润基业科技发展股份有限公司 数据共享方法、电子设备

Also Published As

Publication number Publication date
CN115664649B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
Tomescu et al. Transparency logs via append-only authenticated dictionaries
CN111130757B (zh) 一种基于区块链的多云cp-abe访问控制方法
Huang et al. Scalable and redactable blockchain with update and anonymity
Yang et al. Arbitrated quantum signature scheme based on cluster states
Hu et al. Merkle 2: A low-latency transparency log system
CN113271204B (zh) 一种基于量子密钥分发的拜占庭容错共识方法
CN108965342B (zh) 数据请求方访问数据源的鉴权方法及系统
CN109257183A (zh) 基于量子游走隐形传输的仲裁量子签名方法
CN110351297B (zh) 一种应用于区块链的验证方法及装置
WO2023093319A1 (zh) 基于区块链的账户重置方法和设备
CN114051031A (zh) 基于分布式身份的加密通讯方法、系统、设备及存储介质
KR20220065049A (ko) 블록체인 상의 보증된 데이터를 저장하기 위한 컴퓨터 구현 방법 및 시스템
CN115664649B (zh) 基于动态委员会的高安全性区块链身份管理方法及系统
Xie et al. A novel blockchain-based and proxy-oriented public audit scheme for low performance terminal devices
Larsen et al. Direct anonymous attestation on the road: Efficient and privacy-preserving revocation in c-its
Liu et al. Eke meets tight security in the universally composable framework
Mishra et al. MPoWS: Merged proof of ownership and storage for block level deduplication in cloud storage
CN112926983A (zh) 一种基于区块链的存证交易加密系统及方法
Abo-Alian et al. Auditing-as-a-service for cloud storage
CN118074905A (zh) 一种后量子安全的voprf协议、匿名令牌认证方法及系统
Das et al. BSCIAM: A Blockchain based Secure Cloud Identity and Access Management Framework
Cheng et al. Ocean data sharing based on blockchain
Ma et al. Secure and Efficient Cloud Data Deduplication Supporting Dynamic Data Public Auditing.
Feng et al. A Searchable CP-ABE Privacy Preserving Scheme.
Zou et al. Dynamic provable data possession based on ranked Merkle hash tree

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant