CN112035870A - 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质 - Google Patents
去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质 Download PDFInfo
- Publication number
- CN112035870A CN112035870A CN202010707663.2A CN202010707663A CN112035870A CN 112035870 A CN112035870 A CN 112035870A CN 202010707663 A CN202010707663 A CN 202010707663A CN 112035870 A CN112035870 A CN 112035870A
- Authority
- CN
- China
- Prior art keywords
- identity
- holder
- authority
- certificate
- certificate authority
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 238000012795 verification Methods 0.000 claims abstract description 58
- 230000000977 initiatory effect Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 230000007246 mechanism Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 15
- 210000000554 iris Anatomy 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 4
- 230000008520 organization Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000003862 health status Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000002427 irreversible effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/32—User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Medical Informatics (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Storage Device Security (AREA)
Abstract
本发明涉及去中心化身份系统中隐藏用户具体年龄的方法。可验证证书颁发机构基于自身密钥向身份注册机构进行注册。身份持有者基于自身密钥和注册信息向所述可验证证书颁发机构进行注册。所述身份持有者基于所述验证证书机构的要求从所述可验证证书颁发机构获取可验证证书,所述可验证证书中包含所述可验证证书颁发机构提供的年龄范围。所述身份持有者采用所述持有者私钥对所述可验证证书进行签名并提交到所述验证证书机构。所述验证证书机构对所述可验证证书进行验证。本发明还涉及计算机可读存储介质。本发明不需要透露用户的具体年龄即可以筛选出年龄满足某个条件的用户,因此在用户具体年龄验证过程中,隐藏用户具体年龄,从而保证用户隐私。
Description
技术领域
本发明涉及区块链领域,更具体地说,涉及一种去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质。
背景技术
传统的数字认证是中心化的,比如互联网名称与数字地址分配机构(TheInternet Corporation for Assigned Names and Numbers,ICANN)管理的域名与IP地址分配,以及公钥基础设施(Public Key Infrastructure,PKI)系统中的证书授权(Certificate Authority,CA)机构管理的数字证书。中心化身份系统的本质就是,中央集权化的权威机构掌握着身份数据,因为围绕数据进行的认证、授权等也都由中心化的机构来决定。身份不是由用户自己控制的。
为了解决这个问题,许多网站自己联合起来推出了联盟身份(这个概念是首先由微软在1999年提出的)。在联盟身份体系下,用户的在线身份有了一定的可移植性。如今的不少网站注册都可以支持第三方登录,比如微信、QQ、新浪微博等。
身份系统的去中心化依然成为一个大趋势,著名的国际组织w3c和dif也都推出了其去中心化身份系统标准。在去中心化系统中,用户在执行某些业务操作时,通常需要对其年龄进行验证。然而,用户具体年龄是非常隐私的数据,其传送可能会导致用户隐私泄密,给黑客提供可趁之机。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质,其能够在用户具体年龄验证过程中,隐藏用户具体年龄,从而保证用户隐私,提高交易的安全性。
本发明解决其技术问题采用的技术方案是,构造一种去中心化身份系统中隐藏用户具体年龄的方法,包括:
S1、可验证证书颁发机构基于自身密钥向身份注册机构进行注册;
S2、身份持有者基于自身密钥和注册信息向所述可验证证书颁发机构进行注册;
S3、所述身份持有者基于所述验证证书机构的要求从所述可验证证书颁发机构获取可验证证书,所述可验证证书中包含所述可验证证书颁发机构提供的年龄范围;
S4、所述身份持有者采用所述持有者私钥对所述可验证证书进行签名并提交到所述验证证书机构;
S5、所述验证证书机构对所述可验证证书进行验证。
在本发明所述的去中心化身份系统中隐藏用户具体年龄的方法中,所述步骤S1进一步包括:
S11、所述可验证证书颁发机构生成机构私钥并基于所述机构私钥生成机构公钥;
S12、所述可验证证书颁发机构生成注册请求,并采用所述机构私钥签名所述注册请求,并将签名注册请求发送到所述身份注册机构;
S13、所述身份注册机构验证所述签名注册请求,并在验证通过后生成所述可验证证书颁发机构的去中心化身份标识符和去中心化身份标识符文档。
在本发明所述的去中心化身份系统中隐藏用户具体年龄的方法中,所述步骤S2进一步包括:
S21、所述身份持有者生成持有者私钥并基于所述持有者私钥生成持有者公钥;
S22、所述身份持有者向所述可验证证书颁发机构提交注册请求,并采用所述持有者私钥签名所述注册请求,并将签名注册请求发送到所述可验证证书颁发机构;
S23、所述可验证证书颁发机构验签所述签名注册请求,并在验签通过后验证所述身份持有者的注册信息,并在验证通过之后继续向所述身份注册机构发送验证请求,所述验证请求中包含所述持有者公钥;
S24、所述身份注册机构根据所述持有者公钥生成所述身份持有者的去中心化身份标识符和去中心化身份标识符文档,并将其返回给所述可验证证书颁发机构;
S25、所述可验证证书颁发机构将所述身份持有者的去中心化身份标识符和去中心化身份标识符文档返回给所述身份持有者。
在本发明所述的去中心化身份系统中隐藏用户具体年龄的方法中,在所述步骤S21中,所述身份持有者选取椭圆曲线上面的一个随机标量作为持有者密钥,并将所述持有者密钥与椭圆曲线上的基点做椭圆曲线乘法得到所述持有者公钥。
在本发明所述的去中心化身份系统中隐藏用户具体年龄的方法中,所述步骤S3进一步包括:
S31、所述身份持有者向所述验证证书机构发送业务开始请求,所述业务开始请求包括所述去中心化身份标识符、所述去中心化身份标识符文档、以及所述身份持有者对业务开始请求的签名;
S32、所述验证证书机构基于所述请求返回可验证证书信息,所述可验证证书信息包括需要证明的年龄范围;
S33、所述身份持有者向所述可验证证书颁发机构发送证书颁发请求,所述证书颁发请求包括所述身份持有者的所述去中心化身份标识符、需要认证的内容包括年龄,需要证明的年龄范围、以及所述身份持有者对证书颁发请求的签名;
S34、所述可验证证书颁发机构基于所述去中心化身份标识符请求所述持有者公钥,并对所述身份持有者对证书颁发请求的签名进行验证,如果验证通过则执行步骤S35,否则拒绝颁发证书;
S35、判断所述身份持有者在所述可验证证书颁发机构注册的年龄是否位于所述需要证明的年龄范围内,如果是则颁发所述可验证证书给所述身份持有者,否则拒绝颁发证书。
在本发明所述的去中心化身份系统中隐藏用户具体年龄的方法中,所述可验证证书包括:所述身份持有者的去中心化身份标识符、颁发所述可验证证书的所述可验证证书颁发机构的去中心化身份标识符、所述身份持有者对所述可验证证书的签名、所述可验证证书颁发机构对所述可验证证书的签名,所述可验证证书颁发机构提供的年龄范围。
在本发明所述的去中心化身份系统中隐藏用户具体年龄的方法中,所述步骤S5进一步包括:
S51、所述验证证书机构根据所述可验证证书颁发机构的去中心化身份标识符向所述身份注册机构请求所述机构公钥,并使用所述机构公钥验证所述可验证证书颁发机构对所述可验证证书的签名以获得第一验证结果;
S52、所述验证证书机构根据所述身份持有者的去中心化身份标识符向所述身份注册机构请求所述持有者公钥,并使用所述持有者公钥验证所述身份持有者对所述可验证证书的签名以获得第二验证结果;
S53、基于所述第一验证结果、所述第二验证结果以及需验证的内容的验证结果,判定验证是否通过。
本发明解决其技术问题采用的另一技术方案是,构造一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的去中心化身份系统中隐藏用户具体年龄的方法。
实施本发明的去中心化身份系统中隐藏用户具体年龄的方法和计算机可读存储介质,不需要透露用户的具体年龄即可以筛选出年龄满足某个条件的身份持有者(即用户),因此在用户具体年龄验证过程中,隐藏用户具体年龄,从而保证用户隐私,提高交易的安全性。进一步的可以录入用户的虹膜或者指纹来生成作为随机种子来生成身份持有者私钥,从而可以使得身份持有者在使用身份信息的时候可以无接触地使用身份信息和使用区块链上的资产。进一步地,本发明还明确定义了身份持有者、可验证证书颁发机构的注册过程和验证过程,从而提供了安全有效的构建去中心化区块链身份的方法。
附图说明
下面将结合附图及实施例对本发明作进一步说明,附图中:
图1是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第一优选实施例的流程图;
图2是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第二优选实施例的可验证证书颁发机构的注册流程示意图;
图3是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第二优选实施例的身份持有者的注册流程示意图;
图4是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第二优选实施例的可验证证书的验证流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明涉及一种去中心化身份系统中隐藏用户具体年龄的方法。可验证证书颁发机构基于自身密钥向身份注册机构进行注册。身份持有者基于自身密钥和注册信息向所述可验证证书颁发机构进行注册。所述身份持有者基于所述验证证书机构的要求从所述可验证证书颁发机构获取可验证证书,所述可验证证书中包含所述可验证证书颁发机构提供的年龄范围。所述身份持有者采用所述持有者私钥对所述可验证证书进行签名并提交到所述验证证书机构。所述验证证书机构对所述可验证证书进行验证。因此,不需要透露用户的具体年龄即可以筛选出年龄满足某个条件的身份持有者(即用户),因此在用户具体年龄验证过程中,隐藏用户具体年龄,从而保证用户隐私,提高交易的安全性。
图1是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第一优选实施例的流程图。如图1所示,在步骤S1中,可验证证书颁发机构基于自身密钥向身份注册机构进行注册,从而使得其可以获得颁发可验证证书的资格。例如,所述可验证证书颁发机构生成机构私钥并基于所述机构私钥生成机构公钥。例如可以采用椭圆曲线密钥体系获得机构私钥和机构公钥。当然,也可以采用本领域中已知的任何密钥生成算法。述可验证证书颁发机构生成注册请求,并采用所述机构私钥签名所述注册请求,并将签名注册请求发送到所述身份注册机构。所述身份注册机构验证所述签名注册请求,并在验证通过后生成所述可验证证书颁发机构的去中心化身份标识符和去中心化身份标识符文档。
在步骤S2中,身份持有者基于自身密钥和注册信息向所述可验证证书颁发机构进行注册。在本发明的一个优选实施例中,所述身份持有者生成持有者私钥并基于所述持有者私钥生成持有者公钥。例如,扫描所述身份持有者的虹膜以生成虹膜码;对所述虹膜码做哈希,使用获得的哈希值作为随机种子生成所述持有者私钥;然后基于所述持有者私钥生成所述持有者公钥。本领域技术人员知悉,虹膜码可以采用本领域中任何的虹膜采集器生成。针对获得的虹膜码,可以采用哈希函数,将其进行计算,从而获得具有唯一固定长度的字符串,并将其作为随机种子生成所述持有者私钥。在此,可以采用任何已知方法生成持有者私钥。可以采用任何已知的方法生成所述持有者公钥。在本发明的优选实施例中,所述身份持有者选取椭圆曲线上面的一个随机标量作为持有者密钥,并将所述持有者密钥与椭圆曲线上的基点做椭圆曲线乘法得到所述持有者公钥。例如可以采用椭圆曲线密钥体系获取所述持有者公钥,例如R=r*G。其中,G表示椭圆曲线算法中的私钥公钥换算因子。因此可以从持有者私钥r推导出持有者公钥R,但是无法从持有者公钥R推导出持有者私钥r,因此是不可逆的。又例如,可以扫描所述身份持有者的至少一个指纹以生成指纹码;对所述指纹码做哈希,使用获得的哈希值作为随机种子生成所述持有者私钥;然后基于所述持有者私钥生成所述持有者公钥。又例如,可以扫描所述身份持有者的多个指纹以生成多个指纹码;对每个指纹码做哈希,使用获得的每个哈希值分部作为随机种子生成多个所述持有者私钥;然后基于各个所述持有者私钥生成多个所述持有者公钥。
随后,所述身份持有者向所述可验证证书颁发机构提交注册请求,并采用所述持有者私钥签名所述注册请求,并将签名注册请求发送到所述可验证证书颁发机构。所述可验证证书颁发机构验签所述签名注册请求,并在验签通过后验证所述身份持有者的注册信息,并在验证通过之后继续向所述身份注册机构发送验证请求,所述验证请求中包含所述持有者公钥。该注册信息可以是所述身份持有者的某个属性,例如:年龄,资产金额,身体健康状况等。
所述身份注册机构针对所述可验证证书颁发机构的请求,根据所述持有者公钥生成所述身份持有者的去中心化身份标识符和去中心化身份标识符文档,并将其返回给所述可验证证书颁发机构。随后,所述可验证证书颁发机构将所述身份持有者的去中心化身份标识符和去中心化身份标识符文档返回给所述身份持有者。
在所述步骤S3中,所述身份持有者基于所述验证证书机构的要求从所述可验证证书颁发机构获取可验证证书,所述可验证证书中包含所述可验证证书颁发机构提供的年龄范围。在本发明的优选实施例中,所述身份持有者向所述验证证书机构发送业务开始请求,所述业务开始请求包括所述去中心化身份标识符、所述去中心化身份标识符文档、以及所述身份持有者对业务开始请求的签名。所述验证证书机构基于所述请求返回可验证证书信息,所述可验证证书信息包括需要证明的年龄范围。所述身份持有者向所述可验证证书颁发机构发送证书颁发请求,所述证书颁发请求包括所述身份持有者的所述去中心化身份标识符、需要认证的内容包括年龄,需要证明的年龄范围、以及所述身份持有者对证书颁发请求的签名。所述可验证证书颁发机构基于所述去中心化身份标识符请求所述持有者公钥,并对所述身份持有者对证书颁发请求的签名进行验证,如果验证不通过则拒绝颁发证书。如果验证通过,则判断所述身份持有者在所述可验证证书颁发机构注册的年龄是否位于所述需要证明的年龄范围内,如果是则颁发所述可验证证书给所述身份持有者,否则拒绝颁发证书。优选的,所述可验证证书包括:所述身份持有者的去中心化身份标识符、颁发所述可验证证书的所述可验证证书颁发机构的去中心化身份标识符、所述身份持有者对所述可验证证书的签名、所述可验证证书颁发机构对所述可验证证书的签名,所述可验证证书颁发机构提供的年龄范围。
在步骤S4中,所述身份持有者采用所述持有者私钥对所述可验证证书进行签名并提交到所述验证证书机构。
在步骤S5中,所述验证证书机构对所述可验证证书进行验证。优选的,所述验证证书机构根据所述可验证证书颁发机构的去中心化身份标识符向所述身份注册机构请求所述机构公钥,并使用所述机构公钥验证所述可验证证书颁发机构对所述可验证证书的签名,如果验证通过则进行下一步验证。所述验证证书机构根据所述身份持有者的去中心化身份标识符向所述身份注册机构请求所述持有者公钥,并使用所述持有者公钥验证所述身份持有者对所述可验证证书的签名,如果验证通过,则进行内容验证。该内容验证所述可验证证书中的条件的验证(即例如年龄范围认证),如符合要求则验证通过,否则验证不通过。
实施本发明的去中心化身份系统中隐藏用户具体年龄的方法,不需要透露用户的具体年龄即可以筛选出年龄满足某个条件的身份持有者(即用户),因此在用户具体年龄验证过程中,隐藏用户具体年龄,从而保证用户隐私,提高交易的安全性。进一步的可以录入用户的虹膜或者指纹来生成作为随机种子来生成身份持有者私钥,从而可以使得身份持有者在使用身份信息的时候可以无接触地使用身份信息和使用区块链上的资产。进一步地,本发明还明确定义了身份持有者、可验证证书颁发机构的注册过程和验证过程,从而提供了安全有效的构建去中心化区块链身份的方法。
图2是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第二优选实施例的可验证证书颁发机构的注册流程示意图。图3是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第二优选实施例的身份持有者的注册流程示意图。图4是本发明的去中心化身份系统中隐藏用户具体年龄的方法的第二优选实施例的可验证证书的验证流程示意图。
下面结合图2-4对本发明的第二优选实施例说明如下。首先对本发明中使用到的进行术语解释如下:
去中心化身份标识符(Decentralized Identifier,简称DID)
一串作用类似于URL的字符串,其标准可以遵循w3c或者dif等标准组织制定的标准,也可以遵循多个联盟机构制定的标准。DID记录了在多个联盟机构内唯一的身份标识符,以及查找DID所需要的协议。多个联盟机构可以根据DID定位到存储了DID详细信息的实体,并向该实体请求DID的详细信息,包括公钥等。
去中心化身份标志符文档(Decentralized Identifier Document,简称DID文档)
DID文档保存了DID的详细信息,包括:DID的公钥,DID签名类型,DID认证类型,DID支持的服务类型以及支持DID服务的URL等。
私钥(Secret Key,简称SK)
用于发送消息前,加签本发明各个实体之间交互的消息的密钥,证明实体身份的真实性,该密钥隐私不可见
公钥(Public Key,简称PK)
用于验证各个实体之间交互的消息的密钥,该密钥公开
椭圆曲线(Elliptic Curve)
基于离散对数难题的非对称加密算法,满足乘法交换律,乘法结合律,加法交换律,加法结合律。选取椭圆曲线上的通用基点(base point)G,选取椭圆曲线上一个随机的标量(scalar)作为加密的私钥,通过与基点G做椭圆曲线乘法可以生成对应的公钥
哈希函数
哈希函数用于对椭圆曲线上的标量或者基点做不可逆哈希
身份持有者(Identifier Holder,简称IH)
持有唯一身份的人,身份持有者需要通过录入虹膜或者指纹来生成自己的SK和PK,例如RSA或者椭圆曲线
可验证证书(Verifiable Credentials,简称VC)
可以验证的证书,证书中包含颁发证书的机构,以及需要验证的信息,以及颁发机构对该证书的签名等信息
可验证证书发行机构(ISSUER,简称IS)
被信任的有资格颁发VC证书的机构,可以是学校,银行,律师事务所,公立医院,连锁酒店,连锁旅馆等
验证证书机构(Inspector Verifier,简称IV)
需要对IH进行身份验证的机构,例如:用人单位,信贷机构等。IV不仅可以对IH的身份进行验证,并且可以对IH的某个属性进行验证,例如:年龄,资产数,身体健康状况等
身份注册机构(Identifier Registry,简称IR)
用于注册身份的机构,维护本发明当中所有实体的DID的数据库,如某条区块链、分布式账本。
在图2所示实施例中,首先IS向IR注册,以获取得到颁发VC的资格,其具体注册步骤如下:
①IS首先生成一个SK,然后通过SK再生成PK
②IS通过SK加签注册请求,并将注册请求提交到IR
③IR对IS的注册请求进行验证,验证通过之后生成IS的DID,以及DID文档。
在图3所示实施例中,IH向IS注册,其具体注册步骤如下:
①IH选取椭圆曲线上面的一个随机标量做为SK,然后与椭圆曲线上的基点做椭圆曲线乘法得到PK;
②IH提交注册请求到IS,IS对IH请求进行验签,并对IH的注册信息进行验证,验证包括IH的身份证号码,年龄,性别等;
③如果验证通过,则继续向IR提交验证请求,验证请求当中包含IH的公钥;
④IR根据IS的请求,针对IH的公钥生成DID和DID文档,返回给IS;
⑤IS将DID和DID文档返回给IH。
在图4所示实施例中IH使用VC向IV进行认证。IH需要进行某项业务,而进行业务的前提条件是IV需要确认IH具有进行该业务的资格,在本实施例中,为年龄,也可以包括其他注册信息(例如年龄或者其他)。其具体步骤如下
①IH向IV发送业务开始请求,该业务开始请求包括:IH的DID、DID文档,以及IH对业务请求的签名;而IV返回可验证证书信息,该可验证证书信息即为需要IH提交VC的信息,VC的内容包括:IH的DID,颁发VC的IS的DID,IH对VC的签名,IS对VC的签名,IS提供的年龄范围。当然VC还可以包括其他需要的资料。
②IH向IS发送VC颁发请求,该VC颁发请求包括:IH的DID,需要认证的内容包括年龄,需要证明年龄的范围,如:18-64,以及IH对本次请求的签名。
③对于IH要求颁发VC的请求,IS根据IH的DID向IR请求IH的公钥,并对IH的请求签名进行验证。并对IH的请求签名进行验证。如果验证不通过则拒绝颁发VC给IH。
④如果验签通过进行年龄的验证,具体如下。
对于IH要求颁发VC的请求,如果IH在IS注册的年龄在IH要求证明的范围内,则IS颁发的VC当中会包含IH要求证明的年龄范围,如果IH在IS注册的年龄不在IH要求证明的范围内,则IS拒绝颁发VC。
⑤IH提交VC到IV,IV对VC进行认证:
根据VC当中IS的DID向IR请求IS的公钥;使用IS的公钥验证VC当中IS的签名;
根据VC当中IH的DID向IR请求IH的公钥,使用IH的公钥验证VC当中IH的签名;
如果IS和IH的签名都验证通过,则判断验证通过。当然在所述VC中包含其他验证内容是,需要对其他验证内容进行验证(例如资产,身份等等),如果验证通过,则判断验证通过。
本发明解决其技术问题采用的另一技术方案是,构造一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现所述的去中心化身份系统中隐藏用户具体年龄的方法。
因此,本发明可以通过硬件、软件或者软、硬件结合来实现。本发明可以在至少一个计算机系统中以集中方式实现,或者由分布在几个互连的计算机系统中的不同部分以分散方式实现。任何可以实现本发明方法的计算机系统或其它设备都是可适用的。常用软硬件的结合可以是安装有计算机程序的通用计算机系统,通过安装和执行程序控制计算机系统,使其按本发明方法运行。
本发明还可以通过计算机程序产品进行实施,程序包含能够实现本发明方法的全部特征,当其安装到计算机系统中时,可以实现本发明的方法。本文件中的计算机程序所指的是:可以采用任何程序语言、代码或符号编写的一组指令的任何表达式,该指令组使系统具有信息处理能力,以直接实现特定功能,或在进行下述一个或两个步骤之后实现特定功能:a)转换成其它语言、编码或符号;b)以不同的格式再现。
虽然本发明是通过具体实施例进行说明的,本领域技术人员应当明白,在不脱离本发明范围的情况下,还可以对本发明进行各种变换及等同替代。另外,针对特定情形或材料,可以对本发明做各种修改,而不脱离本发明的范围。因此,本发明不局限于所公开的具体实施例,而应当包括落入本发明权利要求范围内的全部实施方式。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,包括:
S1、可验证证书颁发机构基于自身密钥向身份注册机构进行注册;
S2、身份持有者基于自身密钥和注册信息向所述可验证证书颁发机构进行注册;
S3、所述身份持有者基于所述验证证书机构的要求从所述可验证证书颁发机构获取可验证证书,所述可验证证书中包含所述可验证证书颁发机构提供的年龄范围;
S4、所述身份持有者采用所述持有者私钥对所述可验证证书进行签名并提交到所述验证证书机构;
S5、所述验证证书机构对所述可验证证书进行验证。
2.根据权利要求1所述的去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,所述步骤S1进一步包括:
S11、所述可验证证书颁发机构生成机构私钥并基于所述机构私钥生成机构公钥;
S12、所述可验证证书颁发机构生成注册请求,并采用所述机构私钥签名所述注册请求,并将签名注册请求发送到所述身份注册机构;
S13、所述身份注册机构验证所述签名注册请求,并在验证通过后生成所述可验证证书颁发机构的去中心化身份标识符和去中心化身份标识符文档。
3.根据权利要求1所述的去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,所述步骤S2进一步包括:
S21、所述身份持有者生成持有者私钥并基于所述持有者私钥生成持有者公钥;
S22、所述身份持有者向所述可验证证书颁发机构提交注册请求,并采用所述持有者私钥签名所述注册请求,并将签名注册请求发送到所述可验证证书颁发机构;
S23、所述可验证证书颁发机构验签所述签名注册请求,并在验签通过后验证所述身份持有者的注册信息,并在验证通过之后继续向所述身份注册机构发送验证请求,所述验证请求中包含所述持有者公钥;
S24、所述身份注册机构根据所述持有者公钥生成所述身份持有者的去中心化身份标识符和去中心化身份标识符文档,并将其返回给所述可验证证书颁发机构;
S25、所述可验证证书颁发机构将所述身份持有者的去中心化身份标识符和去中心化身份标识符文档返回给所述身份持有者。
4.根据权利要求3所述的去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,在所述步骤S21中,所述身份持有者选取椭圆曲线上面的一个随机标量作为持有者密钥,并将所述持有者密钥与椭圆曲线上的基点做椭圆曲线乘法得到所述持有者公钥。
5.根据权利要求1所述的去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,所述步骤S3进一步包括:
S31、所述身份持有者向所述验证证书机构发送业务开始请求,所述业务开始请求包括所述去中心化身份标识符、所述去中心化身份标识符文档、以及所述身份持有者对业务开始请求的签名;
S32、所述验证证书机构基于所述请求返回可验证证书信息,所述可验证证书信息包括需要证明的年龄范围;
S33、所述身份持有者向所述可验证证书颁发机构发送证书颁发请求,所述证书颁发请求包括所述身份持有者的所述去中心化身份标识符、需要认证的内容包括年龄,需要证明的年龄范围、以及所述身份持有者对证书颁发请求的签名;
S34、所述可验证证书颁发机构基于所述去中心化身份标识符请求所述持有者公钥,并对所述身份持有者对证书颁发请求的签名进行验证,如果验证通过则执行步骤S35,否则拒绝颁发证书;
S35、判断所述身份持有者在所述可验证证书颁发机构注册的年龄是否位于所述需要证明的年龄范围内,如果是则颁发所述可验证证书给所述身份持有者,否则拒绝颁发证书。
6.根据权利要求5所述的去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,所述可验证证书包括:所述身份持有者的去中心化身份标识符、颁发所述可验证证书的所述可验证证书颁发机构的去中心化身份标识符、所述身份持有者对所述可验证证书的签名、所述可验证证书颁发机构对所述可验证证书的签名,所述可验证证书颁发机构提供的年龄范围。
7.根据权利要求5所述的去中心化身份系统中隐藏用户具体年龄的方法,其特征在于,所述步骤S5进一步包括:
S51、所述验证证书机构根据所述可验证证书颁发机构的去中心化身份标识符向所述身份注册机构请求所述机构公钥,并使用所述机构公钥验证所述可验证证书颁发机构对所述可验证证书的签名以获得第一验证结果;
S52、所述验证证书机构根据所述身份持有者的去中心化身份标识符向所述身份注册机构请求所述持有者公钥,并使用所述持有者公钥验证所述身份持有者对所述可验证证书的签名以获得第二验证结果;
S53、基于所述第一验证结果、所述第二验证结果以及需验证的内容的验证结果,判定验证是否通过。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现根据权利要求1-7中任意一项权利要求所述的去中心化身份系统中隐藏用户具体年龄的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010707663.2A CN112035870B (zh) | 2020-07-21 | 2020-07-21 | 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质 |
PCT/CN2021/073096 WO2022016842A1 (zh) | 2020-07-21 | 2021-01-21 | 去中心化身份系统中隐藏用户信息的方法和计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010707663.2A CN112035870B (zh) | 2020-07-21 | 2020-07-21 | 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112035870A true CN112035870A (zh) | 2020-12-04 |
CN112035870B CN112035870B (zh) | 2023-12-08 |
Family
ID=73579349
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010707663.2A Active CN112035870B (zh) | 2020-07-21 | 2020-07-21 | 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112035870B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113014392A (zh) * | 2021-02-19 | 2021-06-22 | 湖南大学 | 基于区块链的数字证书管理方法及系统、设备、存储介质 |
WO2022016842A1 (zh) * | 2020-07-21 | 2022-01-27 | 杜晓楠 | 去中心化身份系统中隐藏用户信息的方法和计算机可读介质 |
WO2023160090A1 (zh) * | 2022-02-25 | 2023-08-31 | 蚂蚁区块链科技(上海)有限公司 | 证明生成方法及装置、电子设备、存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1130844A2 (en) * | 2000-02-29 | 2001-09-05 | Sony Corporation | Public-key-encryption data-communication system and data-communication-system forming method |
KR20050101501A (ko) * | 2004-04-19 | 2005-10-24 | 한국신용평가정보주식회사 | 신용정보를 포함한 공인인증서 발급 방법 및 이 방법에의해 발급된 공인인증서가 기록된 컴퓨터로 판독 가능한기록매체 |
CN107370600A (zh) * | 2017-08-14 | 2017-11-21 | 华南理工大学 | 一种生成核心身份数字证书和身份侧面数字证书的方法 |
WO2019179533A2 (en) * | 2019-07-02 | 2019-09-26 | Alibaba Group Holding Limited | System and method for issuing verifiable claims |
WO2019191213A1 (en) * | 2018-03-27 | 2019-10-03 | Workday, Inc. | Digital credential authentication |
-
2020
- 2020-07-21 CN CN202010707663.2A patent/CN112035870B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1130844A2 (en) * | 2000-02-29 | 2001-09-05 | Sony Corporation | Public-key-encryption data-communication system and data-communication-system forming method |
KR20050101501A (ko) * | 2004-04-19 | 2005-10-24 | 한국신용평가정보주식회사 | 신용정보를 포함한 공인인증서 발급 방법 및 이 방법에의해 발급된 공인인증서가 기록된 컴퓨터로 판독 가능한기록매체 |
CN107370600A (zh) * | 2017-08-14 | 2017-11-21 | 华南理工大学 | 一种生成核心身份数字证书和身份侧面数字证书的方法 |
WO2019191213A1 (en) * | 2018-03-27 | 2019-10-03 | Workday, Inc. | Digital credential authentication |
WO2019179533A2 (en) * | 2019-07-02 | 2019-09-26 | Alibaba Group Holding Limited | System and method for issuing verifiable claims |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022016842A1 (zh) * | 2020-07-21 | 2022-01-27 | 杜晓楠 | 去中心化身份系统中隐藏用户信息的方法和计算机可读介质 |
CN113014392A (zh) * | 2021-02-19 | 2021-06-22 | 湖南大学 | 基于区块链的数字证书管理方法及系统、设备、存储介质 |
WO2023160090A1 (zh) * | 2022-02-25 | 2023-08-31 | 蚂蚁区块链科技(上海)有限公司 | 证明生成方法及装置、电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112035870B (zh) | 2023-12-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11223614B2 (en) | Single sign on with multiple authentication factors | |
CN108777684B (zh) | 身份认证方法、系统及计算机可读存储介质 | |
CN112035883B (zh) | 去中心化身份系统中用户信用评分的方法和计算机可读介质 | |
US7069440B2 (en) | Technique for obtaining a single sign-on certificate from a foreign PKI system using an existing strong authentication PKI system | |
US8006288B2 (en) | Method and apparatus for accessing a computer application program | |
JP7083892B2 (ja) | デジタル証明書のモバイル認証相互運用性 | |
CN112035806B (zh) | 区块链中基于指纹识别生成分布式身份的方法和计算机可读介质 | |
EP3973477A1 (en) | Systems and methods for maintaining decentralized digital identities | |
CN111901106B (zh) | 去中心化身份系统中隐藏用户真实公钥的方法和计算机可读介质 | |
CN112035870B (zh) | 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质 | |
WO2014182957A1 (en) | Authentication system | |
AU2003212617A1 (en) | A biometric authentication system and method | |
CN113743921B (zh) | 数字资产的处理方法、装置、设备及存储介质 | |
CN114666168B (zh) | 去中心化身份凭证验证方法、装置,以及,电子设备 | |
CN111641615A (zh) | 一种基于证书的分布式身份验证方法及系统 | |
KR20160085143A (ko) | 익명 서비스 제공 방법 및 사용자 정보 관리 방법 및 이를 위한 시스템 | |
CN112037054B (zh) | 去中心化身份系统中隐藏用户的资产额度的方法和计算机可读介质 | |
CN112035813B (zh) | 区块链中基于指纹识别分层生成分布式身份的方法和计算机可读介质 | |
WO2022016842A1 (zh) | 去中心化身份系统中隐藏用户信息的方法和计算机可读介质 | |
JP2008176383A (ja) | ワンタイムパスワード生成方法、ワンタイムパスワード認証方法、ワンタイムパスワード生成装置、ワンタイムパスワードの生成機能を備えたicカード、ワンタイムパスワード認証装置、icカードプログラム及びコンピュータプログラム | |
CN112035814B (zh) | 区块链中基于虹膜识别生成分布式身份的方法和计算机可读介质 | |
WO2021107755A1 (en) | A system and method for digital identity data change between proof of possession to proof of identity | |
EP4220454A1 (en) | Attribute information conversion device, attribute information conversion program, and attribute information conversion method | |
Beuchat et al. | A Digital Identity in the Hands of Swiss Citizens | |
KR20230004312A (ko) | Did를 이용한 개인정보의 인증 및 식별 시스템과 그 방법 |
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 |