CN116232763A - 选择性披露的动态组合可验证凭证生成方法及系统 - Google Patents

选择性披露的动态组合可验证凭证生成方法及系统 Download PDF

Info

Publication number
CN116232763A
CN116232763A CN202310493312.XA CN202310493312A CN116232763A CN 116232763 A CN116232763 A CN 116232763A CN 202310493312 A CN202310493312 A CN 202310493312A CN 116232763 A CN116232763 A CN 116232763A
Authority
CN
China
Prior art keywords
credential
certificate
verifiable
assertion
holder
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
CN202310493312.XA
Other languages
English (en)
Other versions
CN116232763B (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.)
Minyuxing Beijing Technology Co ltd
Original Assignee
Minyuxing Beijing Technology Co ltd
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 Minyuxing Beijing Technology Co ltd filed Critical Minyuxing Beijing Technology Co ltd
Priority to CN202310493312.XA priority Critical patent/CN116232763B/zh
Publication of CN116232763A publication Critical patent/CN116232763A/zh
Application granted granted Critical
Publication of CN116232763B publication Critical patent/CN116232763B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0457Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0478Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload applying multiple layers of encryption, e.g. nested tunnels or encrypting the content with a first key and then with at least a second key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0884Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/321Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving a third party or a trusted authority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/72Signcrypting, i.e. digital signing and encrypting simultaneously
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/76Proxy, i.e. using intermediary entity to perform cryptographic operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请公开了一种选择性披露的动态组合可验证凭证生成方法及系统。该方法包括:生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;多个凭证发行方分别加密其对应的每个断言数据;针对多个加密后的断言数据生成相对应的多个断言证明;将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。本申请解决了由于证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据造成的需要披露可验证凭证的全部断言数据的技术问题。

Description

选择性披露的动态组合可验证凭证生成方法及系统
技术领域
本申请涉及动态组合可验证凭证领域,具体而言,涉及一种选择性披露的动态组合可验证凭证生成方法及系统。
背景技术
分布式数字身份(Decentralized Identity,DID)亦称之为自我主权身份(Self-Sovereign Identity,SSI),区别与传统数字身份技术的主要不同是数字身份以“人”为中心,由人自主控制数字身份的使用。
可验证凭证时分布式数字身份的核心数据模型,W3C 在 2022 年发布了可验证凭证数据模型和分布式数字身份核心架构数据模型,规范了分布式数字身份的可验证凭证(Verifiable Credential,VC)和可验证表达(Verifiable Presentation,VP)数据模型定义,其中可验证表达是可验证凭证的组合。
在可验证凭证动态组合生成可验证表达时,存在以下的问题:凭证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据,导致需要披露可验证凭证的全部断言数据。
针对相关技术中凭证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据造成的需要披露可验证凭证的全部断言数据的问题,目前尚未提出有效的解决方案。
发明内容
本申请的主要目的在于提供一种选择性披露的动态组合可验证凭证生成方法及系统,以解决凭证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据造成的需要披露可验证凭证的全部断言数据的问题。
为了实现上述目的,根据本申请的一个方面,提供了一种选择性披露的动态组合可验证凭证生成方法。
根据本申请的选择性披露的动态组合可验证凭证生成方法包括:生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;多个凭证发行方分别加密其对应的每个断言数据;针对多个加密后的断言数据生成相对应的多个断言证明;将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。
进一步的,凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证之后还包括:凭证持有方对每个凭证发行方的断言证明进行一次聚合签名,再对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名;将再次聚合签名结果更新到可验证凭证。
进一步的,将再次聚合签名结果更新到可验证凭证之后还包括:凭证验证方对可验证凭证进行聚合验证。
进一步的,凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证之后还包括:凭证验证方对可验证凭证进行验证。
进一步的,多个凭证发行方分别加密其对应的每个断言数据之前还包括:生成凭证持有方授权凭证验证方解密数据的代理重加密秘钥;将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方之后还包括:凭证持有方通过代理重加密秘钥对多个加密后的断言数据进行重加密;凭证验证方对可验证凭证进行验证,或,凭证验证方对可验证凭证进行聚合验证之后还包括:当凭证持有方接收到代理重加密授权时,通过代理重加密秘钥解密获取断言数据。
为了实现上述目的,根据本申请的另一方面,提供了一种选择性披露的动态组合可验证凭证生成系统。
根据本申请的选择性披露的动态组合可验证凭证生成系统包括:第一秘钥生成模块,用于生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;断言加密模块,用于多个凭证发行方分别加密其对应的每个断言数据;证明生成模块,用于针对多个加密后的断言数据生成相对应的多个断言证明;凭证组合模块,用于将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;第一凭证更新模块,用于凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。
进一步的,还包括:聚合签名模块,用于凭证持有方对每个凭证发行方的断言证明进行一次聚合签名,再对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名;第二凭证更新模块,用于将再次聚合签名结果更新到可验证凭证。
进一步的,还包括:第二凭证验证模块,用于凭证验证方对可验证凭证进行聚合验证。
进一步的,还包括:第一凭证验证模块,用于凭证验证方对可验证凭证进行验证。
进一步的,还包括:第二秘钥生成模块,用于生成凭证持有方授权凭证验证方解密数据的代理重加密秘钥;断言重加密模块,用于凭证持有方通过代理重加密秘钥对多个加密后的断言数据进行重加密;授权获取模块,用于当凭证持有方接收到代理重加密授权时,通过代理重加密秘钥解密获取断言数据。
在本申请实施例中,采用生成选择性披露的动态组合可验证凭证的方式,通过生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;多个凭证发行方分别加密其对应的每个断言数据;针对多个加密后的断言数据生成相对应的多个断言证明;将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证;达到了凭证持有方在动态组合可验证凭证时可以选择性披露特定的断言数据的目的,从而实现了无需暴露可验证凭证的全部断言数据的技术效果,进而解决了由于证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据造成的需要披露可验证凭证的全部断言数据的技术问题。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,使得本申请的其它特征、目的和优点变得更明显。本申请的示意性实施例附图及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的选择性披露的动态组合可验证凭证生成方法的流程示意图;
图2是根据本申请实施例的选择性披露的动态组合可验证凭证生成系统的结构示意图;
图3是根据本申请实施例的选择性披露的动态组合可验证凭证生成方法和系统的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本申请中,术语“上”、“下”、“左”、“右”、“前”、“后”、“顶”、“底”、“内”、“外”、“中”、“竖直”、“水平”、“横向”、“纵向”等指示的方位或位置关系为基于附图所示的方位或位置关系。这些术语主要是为了更好地描述本申请及其实施例,并非用于限定所指示的装置、元件或组成部分必须具有特定方位,或以特定方位进行构造和操作。
并且,上述部分术语除了可以用于表示方位或位置关系以外,还可能用于表示其他含义,例如术语“上”在某些情况下也可能用于表示某种依附关系或连接关系。对于本领域普通技术人员而言,可以根据具体情况理解这些术语在本申请中的具体含义。
此外,术语“安装”、“设置”、“设有”、“连接”、“相连”、“套接”应做广义理解。例如,可以是固定连接,可拆卸连接,或整体式构造;可以是机械连接,或电连接;可以是直接相连,或者是通过中间媒介间接相连,又或者是两个装置、元件或组成部分之间内部的连通。对于本领域普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
根据本发明实施例,提供了一种选择性披露的动态组合可验证凭证生成方法,如图1和图2所示,该方法包括如下的步骤S101至步骤S105:
步骤S101、生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;
生成公共参数:
Figure SMS_1
,其中,
Figure SMS_2
是秩为
Figure SMS_3
的群,
Figure SMS_4
Figure SMS_5
的生成元,双线性对
Figure SMS_6
,哈希函数
Figure SMS_7
生成多个凭证发行方、凭证持有方和凭证验证方的公私钥对:
Figure SMS_8
随机选择
Figure SMS_9
Figure SMS_10
。K个凭证发行方生成的公私钥对为
Figure SMS_11
,凭证持有方生成的公私钥对为
Figure SMS_12
,凭证验证方生成的公私钥对为
Figure SMS_13
步骤S102、多个凭证发行方分别加密其对应的每个断言数据;
加密每个断言数据
Figure SMS_14
Figure SMS_15
,其中,DID为分布式数字身份,
Figure SMS_16
为加密后的断言数据。
步骤S103、针对多个加密后的断言数据生成相对应的多个断言证明;
针对多个加密后的断言数据
Figure SMS_17
生成证明
Figure SMS_18
Figure SMS_19
步骤S104、将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;
每个凭证发行方对应一个基础元数据、相对应的加密后的凭证数据和凭证证明,将以上的数据组合后,形成如下的可验证凭证:
Figure SMS_20
,其中,
Figure SMS_21
为凭证
Figure SMS_22
的基础元数据,基础元数据至少包括凭证DID和凭证发行方公钥
Figure SMS_23
步骤S105、凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。
凭证持有方收到发型的可验证凭证
Figure SMS_24
后,可以将其中的加密后的断言数据,通过任一一个断言数据替代,凭证验证方可以选择可验证凭证的部分断言组合成新的验证凭证,从而无需暴露可验证凭证的全部断言数据,实现了凭证数据的选择性披露。
从以上的描述中,可以看出,本发明实现了如下技术效果:
在本申请实施例中,采用生成选择性披露的动态组合可验证凭证的方式,通过生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;多个凭证发行方分别加密其对应的每个断言数据;针对多个加密后的断言数据生成相对应的多个断言证明;将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证;达到了凭证持有方在动态组合可验证凭证时可以选择性披露特定的断言数据的目的,从而实现了无需暴露可验证凭证的全部断言数据的技术效果,进而解决了由于证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据造成的需要披露可验证凭证的全部断言数据的技术问题。
根据本发明实施例,优选的,凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证之后还包括:
步骤S201、凭证持有方对每个凭证发行方的断言证明进行一次聚合签名,再对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名;
步骤S202、将再次聚合签名结果更新到可验证凭证。
Figure SMS_25
聚合签名。具体地,对每个凭证发行方的断言证明进行一次聚合签名:
Figure SMS_26
对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名:
Figure SMS_27
凭证持有方对不同凭证发行方的发行凭证的断言证明进行两次聚合签名,形成一个独立的签名,凭证验证方验证签名数量由
Figure SMS_28
降低到
Figure SMS_29
,可验证凭证验证效率得到有效提高。
根据本发明实施例,优选的,将再次聚合签名结果更新到可验证凭证之后还包括:
步骤S301、凭证验证方对可验证凭证进行聚合验证。
针对每个凭证 k 计算:
Figure SMS_30
判断以下等式是否成立,成立则返回
Figure SMS_31
,否则返回
Figure SMS_32
Figure SMS_33
从而实现了凭证验证方对可验证凭证的验证,大大减小了凭证验证方的验证量,可验证凭证验证效率得到有效提高。
根据本发明实施例,优选的,凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证之后还包括:
步骤S401、凭证验证方对可验证凭证进行验证。
采用动态组合可验证凭证中的验证方法,对每个可验证凭证的每一个断言进行逐个验证,得到是否验证成功的结果,再汇总出一个总验证结果。
根据本发明实施例,优选的,
多个凭证发行方分别加密其对应的每个断言数据之前还包括:
步骤S501、生成凭证持有方授权凭证验证方解密数据的代理重加密秘钥;
将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方之后还包括:
步骤S502、凭证持有方通过代理重加密秘钥对多个加密后的断言数据进行重加密;
凭证验证方对可验证凭证进行验证,或,凭证验证方对可验证凭证进行聚合验证之后还包括:
步骤S503、当凭证持有方接收到代理重加密授权时,通过代理重加密秘钥解密获取断言数据。
Figure SMS_34
:代理重加密秘钥生成。凭证持有方授权凭证验证方解密数据,生成的重加密秘钥是
Figure SMS_35
Figure SMS_36
:代理重加密。凭证持有方对
Figure SMS_37
进行重加密,重加密后只有授权的凭证验证方才能解密。
Figure SMS_38
:解密。凭证验证方对
Figure SMS_39
进行解密计算得到
Figure SMS_40
Figure SMS_41
实现了加密、可验证凭证快速验证基础上的代理重加密和解密,从而可验证凭证的关联数据需要在凭证持有方授权的前提下,其他各方才能解密可验证凭证数据并获取明文,保证了可验证凭证数据的安全性,充分保证凭证持有方的数据隐私。
需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
根据本发明实施例,还提供了一种用于实施上述选择性披露的动态组合可验证凭证生成方法的系统,如图2和图3所示,该装置包括:
第一秘钥生成模块10,用于生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;
生成公共参数:
Figure SMS_42
,其中,
Figure SMS_43
是秩为
Figure SMS_44
的群,
Figure SMS_45
Figure SMS_46
的生成元,双线性对
Figure SMS_47
,哈希函数
Figure SMS_48
生成多个凭证发行方、凭证持有方和凭证验证方的公私钥对:
Figure SMS_49
随机选择
Figure SMS_50
Figure SMS_51
。K个凭证发行方生成的公私钥对为
Figure SMS_52
,凭证持有方生成的公私钥对为
Figure SMS_53
,凭证验证方生成的公私钥对为
Figure SMS_54
断言加密模块11,用于多个凭证发行方分别加密其对应的每个断言数据;
加密每个断言数据
Figure SMS_55
Figure SMS_56
,其中,DID为分布式数字身份,
Figure SMS_57
为加密后的断言数据。
证明生成模块12,用于针对多个加密后的断言数据生成相对应的多个断言证明;
针对多个加密后的断言数据
Figure SMS_58
生成证明
Figure SMS_59
Figure SMS_60
凭证组合模块13,用于将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;
每个凭证发行方对应一个基础元数据、相对应的加密后的凭证数据和凭证证明,将以上的数据组合后,形成如下的可验证凭证:
Figure SMS_61
,其中,
Figure SMS_62
为凭证
Figure SMS_63
的基础元数据,基础元数据至少包括凭证DID和凭证发行方公钥
Figure SMS_64
第一凭证更新模块14,用于凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。
凭证持有方收到发型的可验证凭证
Figure SMS_65
后,可以将其中的加密后的断言数据,通过任一一个断言数据替代,凭证验证方可以选择可验证凭证的部分断言组合成新的验证凭证,从而无需暴露可验证凭证的全部断言数据,实现了凭证数据的选择性披露。
从以上的描述中,可以看出,本发明实现了如下技术效果:
在本申请实施例中,采用生成选择性披露的动态组合可验证凭证的方式,通过生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;多个凭证发行方分别加密其对应的每个断言数据;针对多个加密后的断言数据生成相对应的多个断言证明;将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证;达到了凭证持有方在动态组合可验证凭证时可以选择性披露特定的断言数据的目的,从而实现了无需暴露可验证凭证的全部断言数据的技术效果,进而解决了由于证持有方在动态组合可验证凭证时,无法选择性披露特定的断言数据造成的需要披露可验证凭证的全部断言数据的技术问题。
根据本发明实施例,优选的,还包括:
聚合签名模块20,用于凭证持有方对每个凭证发行方的断言证明进行一次聚合签名,再对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名;
第二凭证更新模块21,用于将再次聚合签名结果更新到可验证凭证。
Figure SMS_66
聚合签名。具体地,对每个凭证发行方的断言证明进行一次聚合签名:
Figure SMS_67
对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名:
Figure SMS_68
凭证持有方对不同凭证发行方的发行凭证的断言证明进行两次聚合签名,形成一个独立的签名,凭证验证方验证签名数量由
Figure SMS_69
降低到
Figure SMS_70
,可验证凭证验证效率得到有效提高。
根据本发明实施例,优选的,还包括:
第二凭证验证模块30,用于凭证验证方对可验证凭证进行聚合验证。
针对每个凭证 k 计算:
Figure SMS_71
判断以下等式是否成立,成立则返回
Figure SMS_72
,否则返回
Figure SMS_73
Figure SMS_74
从而实现了凭证验证方对可验证凭证的验证,大大减小了凭证验证方的验证量,可验证凭证验证效率得到有效提高。
根据本发明实施例,优选的,还包括:
第一凭证验证模块40,用于凭证验证方对可验证凭证进行验证。
采用动态组合可验证凭证中的验证方法,对每个可验证凭证的每一个断言进行逐个验证,得到是否验证成功的结果,再汇总出一个总验证结果。
根据本发明实施例,优选的,还包括:
第二秘钥生成模块50,用于生成凭证持有方授权凭证验证方解密数据的代理重加密秘钥;
断言重加密模块51,用于凭证持有方通过代理重加密秘钥对多个加密后的断言数据进行重加密;
授权获取模块52,用于当凭证持有方接收到代理重加密授权时,通过代理重加密秘钥解密获取断言数据。
Figure SMS_75
:代理重加密秘钥生成。凭证持有方授权凭证验证方解密数据,生成的重加密秘钥是
Figure SMS_76
Figure SMS_77
:代理重加密。凭证持有方对
Figure SMS_78
进行重加密,重加密后只有授权的凭证验证方才能解密。
Figure SMS_79
:解密。凭证验证方对
Figure SMS_80
进行解密计算得到
Figure SMS_81
Figure SMS_82
实现了加密、可验证凭证快速验证基础上的代理重加密和解密,从而可验证凭证的关联数据需要在凭证持有方授权的前提下,其他各方才能解密可验证凭证数据并获取明文,保证了可验证凭证数据的安全性,充分保证凭证持有方的数据隐私。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种选择性披露的动态组合可验证凭证生成方法,其特征在于,包括:
生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;
多个凭证发行方分别加密其对应的每个断言数据;
针对多个加密后的断言数据生成相对应的多个断言证明;
将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;
凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。
2.根据权利要求1所述的方法,其特征在于,凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证之后还包括:
凭证持有方对每个凭证发行方的断言证明进行一次聚合签名,再对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名;
将再次聚合签名结果更新到可验证凭证。
3.根据权利要求2所述的方法,其特征在于,将再次聚合签名结果更新到可验证凭证之后还包括:
凭证验证方对可验证凭证进行聚合验证。
4.根据权利要求1所述的方法,其特征在于,凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证之后还包括:
凭证验证方对可验证凭证进行验证。
5.根据权利要求3或4所述的方法,其特征在于,
多个凭证发行方分别加密其对应的每个断言数据之前还包括:
生成凭证持有方授权凭证验证方解密数据的代理重加密秘钥;
将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方之后还包括:
凭证持有方通过代理重加密秘钥对多个加密后的断言数据进行重加密;
凭证验证方对可验证凭证进行验证,或,凭证验证方对可验证凭证进行聚合验证之后还包括:
当凭证持有方接收到代理重加密授权时,通过代理重加密秘钥解密获取断言数据。
6.一种选择性披露的动态组合可验证凭证生成系统,其特征在于,包括:
第一秘钥生成模块,用于生成公共参数,及多个凭证发行方、凭证持有方和凭证验证方的公私钥对;
断言加密模块,用于多个凭证发行方分别加密其对应的每个断言数据;
证明生成模块,用于针对多个加密后的断言数据生成相对应的多个断言证明;
凭证组合模块,用于将每个凭证发行方的基础元数据、相对应的多个加密后的断言数据和多个断言证明组成可验证凭证,并发行给凭证持有方;
第一凭证更新模块,用于凭证持有方通过选择的每个凭证发行方的至少一个加密后的断言数据更新可验证凭证。
7.根据权利要求6所述的系统,其特征在于,还包括:
聚合签名模块,用于凭证持有方对每个凭证发行方的断言证明进行一次聚合签名,再对不同凭证发行方对应的一次聚合签名结果进行再次聚合签名;
第二凭证更新模块,用于将再次聚合签名结果更新到可验证凭证。
8.根据权利要求7所述的系统,其特征在于,还包括:
第二凭证验证模块,用于凭证验证方对可验证凭证进行聚合验证。
9.根据权利要求6所述的系统,其特征在于,还包括:
第一凭证验证模块,用于凭证验证方对可验证凭证进行验证。
10.根据权利要求8或9所述的系统,其特征在于,还包括:
第二秘钥生成模块,用于生成凭证持有方授权凭证验证方解密数据的代理重加密秘钥;
断言重加密模块,用于凭证持有方通过代理重加密秘钥对多个加密后的断言数据进行重加密;
授权获取模块,用于当凭证持有方接收到代理重加密授权时,通过代理重加密秘钥解密获取断言数据。
CN202310493312.XA 2023-05-05 2023-05-05 选择性披露的动态组合可验证凭证生成方法及系统 Active CN116232763B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310493312.XA CN116232763B (zh) 2023-05-05 2023-05-05 选择性披露的动态组合可验证凭证生成方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310493312.XA CN116232763B (zh) 2023-05-05 2023-05-05 选择性披露的动态组合可验证凭证生成方法及系统

Publications (2)

Publication Number Publication Date
CN116232763A true CN116232763A (zh) 2023-06-06
CN116232763B CN116232763B (zh) 2023-07-07

Family

ID=86569763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310493312.XA Active CN116232763B (zh) 2023-05-05 2023-05-05 选择性披露的动态组合可验证凭证生成方法及系统

Country Status (1)

Country Link
CN (1) CN116232763B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200412546A1 (en) * 2019-06-27 2020-12-31 Koninklijke Philips N.V. Selective disclosure of attributes and data entries of a record
CN112580102A (zh) * 2020-12-29 2021-03-30 郑州大学 基于区块链的多维度数字身份鉴别系统
EP3805963A1 (en) * 2019-10-11 2021-04-14 Koninklijke Philips N.V. Provenance verification for selective disclosure of attributes
CN113014392A (zh) * 2021-02-19 2021-06-22 湖南大学 基于区块链的数字证书管理方法及系统、设备、存储介质
CN113221089A (zh) * 2021-03-15 2021-08-06 东北大学 基于可验证声明的隐私保护属性认证系统及方法
WO2021222284A1 (en) * 2020-04-28 2021-11-04 Microsoft Technology Licensing, Llc Derived child verifiable credential with selective claims
CN113901424A (zh) * 2021-09-10 2022-01-07 苏州长通互联科技有限公司 一种数字身份属性的选择性披露方法和装置
CN113922962A (zh) * 2021-09-10 2022-01-11 杭州溪塔科技有限公司 一种数字身份属性的选择性披露方法和装置
CN114584316A (zh) * 2022-02-28 2022-06-03 广州世安智链科技有限公司 一种面向物联网的去中心化did身份聚合验证方法及装置
CN114666168A (zh) * 2022-05-23 2022-06-24 浙江毫微米科技有限公司 去中心化身份凭证验证方法、装置,以及,电子设备
CN114944937A (zh) * 2022-04-19 2022-08-26 网易(杭州)网络有限公司 分布式数字身份验证方法、系统、电子设备及存储介质
CN115310978A (zh) * 2022-06-21 2022-11-08 网易(杭州)网络有限公司 一种数字资产的交易方法及装置
CN115461746A (zh) * 2020-04-28 2022-12-09 微软技术许可有限责任公司 具有动态声明的可验证凭证

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200412546A1 (en) * 2019-06-27 2020-12-31 Koninklijke Philips N.V. Selective disclosure of attributes and data entries of a record
EP3805963A1 (en) * 2019-10-11 2021-04-14 Koninklijke Philips N.V. Provenance verification for selective disclosure of attributes
CN115461746A (zh) * 2020-04-28 2022-12-09 微软技术许可有限责任公司 具有动态声明的可验证凭证
WO2021222284A1 (en) * 2020-04-28 2021-11-04 Microsoft Technology Licensing, Llc Derived child verifiable credential with selective claims
CN112580102A (zh) * 2020-12-29 2021-03-30 郑州大学 基于区块链的多维度数字身份鉴别系统
CN113014392A (zh) * 2021-02-19 2021-06-22 湖南大学 基于区块链的数字证书管理方法及系统、设备、存储介质
CN113221089A (zh) * 2021-03-15 2021-08-06 东北大学 基于可验证声明的隐私保护属性认证系统及方法
CN113901424A (zh) * 2021-09-10 2022-01-07 苏州长通互联科技有限公司 一种数字身份属性的选择性披露方法和装置
CN113922962A (zh) * 2021-09-10 2022-01-11 杭州溪塔科技有限公司 一种数字身份属性的选择性披露方法和装置
CN114584316A (zh) * 2022-02-28 2022-06-03 广州世安智链科技有限公司 一种面向物联网的去中心化did身份聚合验证方法及装置
CN114944937A (zh) * 2022-04-19 2022-08-26 网易(杭州)网络有限公司 分布式数字身份验证方法、系统、电子设备及存储介质
CN114666168A (zh) * 2022-05-23 2022-06-24 浙江毫微米科技有限公司 去中心化身份凭证验证方法、装置,以及,电子设备
CN115310978A (zh) * 2022-06-21 2022-11-08 网易(杭州)网络有限公司 一种数字资产的交易方法及装置

Also Published As

Publication number Publication date
CN116232763B (zh) 2023-07-07

Similar Documents

Publication Publication Date Title
CN108881314B (zh) 雾计算环境下基于cp-abe密文隐私保护方法及系统
US9065637B2 (en) System and method for securing private keys issued from distributed private key generator (D-PKG) nodes
CN108292402B (zh) 用于信息的安全交换的公共秘密的确定和层级确定性密钥
WO2021042685A1 (zh) 一种区块链的交易方法、装置及系统
US10129034B2 (en) Signature delegation
US10243939B2 (en) Key distribution in a distributed computing environment
US7634085B1 (en) Identity-based-encryption system with partial attribute matching
CN114730420A (zh) 用于生成签名的系统和方法
CN106341232B (zh) 一种基于口令的匿名实体鉴别方法
US20220327530A1 (en) Digital signature generation using a cold wallet
US10237249B2 (en) Key revocation
KR20170076742A (ko) 보안 접속 및 관련 서비스를 위한 효율적인 개시
CN110933033B (zh) 智慧城市环境下多物联网域的跨域访问控制方法
CN110599163B (zh) 一种面向区块链交易监管的交易记录外包方法
CN105933345B (zh) 一种基于线性秘密共享的可验证外包属性基加密方法
CN111600711A (zh) 一种细粒度移动访问的加密、解密系统及加密、解密方法
WO2021183441A1 (en) Privacy-preserving signature
Wang et al. Lightweight and secure data sharing based on proxy re-encryption for blockchain-enabled industrial internet of things
Ramachandran et al. Secure and efficient data forwarding in untrusted cloud environment
Hathaliya et al. A Smart contract-based secure data sharing scheme in Healthcare 5.0
NL1043779B1 (en) Method for electronic signing and authenticaton strongly linked to the authenticator factors possession and knowledge
CN109257165A (zh) 细粒度移动访问的加密、解密方法及加密、解密系统
CN116232763B (zh) 选择性披露的动态组合可验证凭证生成方法及系统
Kaaniche et al. Id-based user-centric data usage auditing scheme for distributed environments
CN116192540B (zh) 动态组合可验证凭证的验证方法及系统

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