CN116910726A - 用于将去中心化标识映射到真实实体的系统和方法 - Google Patents

用于将去中心化标识映射到真实实体的系统和方法 Download PDF

Info

Publication number
CN116910726A
CN116910726A CN202310957102.1A CN202310957102A CN116910726A CN 116910726 A CN116910726 A CN 116910726A CN 202310957102 A CN202310957102 A CN 202310957102A CN 116910726 A CN116910726 A CN 116910726A
Authority
CN
China
Prior art keywords
blockchain
proof
identity
request
identity authentication
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.)
Pending
Application number
CN202310957102.1A
Other languages
English (en)
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.)
Advanced New Technologies Co Ltd
Original Assignee
Advanced New Technologies 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
Priority claimed from PCT/CN2019/094396 external-priority patent/WO2019179533A2/en
Application filed by Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Publication of CN116910726A publication Critical patent/CN116910726A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • 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/3236Cryptographic 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 using cryptographic hash functions
    • H04L9/3239Cryptographic 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 using cryptographic hash functions involving non-keyed hash functions, e.g. modification detection codes [MDCs], MD5, SHA or RIPEMD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3829Payment protocols; Details thereof insuring higher security of transaction involving key management
    • 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
    • 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/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0637Modes of operation, e.g. cipher block chaining [CBC], electronic codebook [ECB] or Galois/counter mode [GCM]
    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • 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
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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
    • H04L9/0877Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3066Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
    • H04L9/3073Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves involving pairings, e.g. identity based encryption [IBE], bilinear mappings or bilinear pairings, e.g. Weil or Tate pairing
    • 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
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/3271Cryptographic 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 using challenge-response
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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/56Financial cryptography, e.g. electronic payment or e-cash

Abstract

用于将去中心化标识(DID)映射到真实实体的方法、系统和装置,包括编码在计算机存储介质上的计算机程序。所述方法之一包括:接收用于创建DID的请求;基于接收到的请求获得身份认证的证明;基于身份认证的证明获得DID;以及存储身份认证的证明与DID之间的映射关系。

Description

用于将去中心化标识映射到真实实体的系统和方法
相关申请的交叉引用
本申请要求享有2019年7月2日递交到中国国家知识产权局(SIPO)的国际申请No.PCT/CN2019/094396的优先权和权益。这里通过引用的方式结合上述申请的全部内容。
技术领域
本申请一般涉及基于身份认证将去中心化标识映射到真实实体的方法和设备。
背景技术
传统的身份管理系统基于中心化机构,例如公司目录服务、认证机构或域名注册机构。每个中心化机构都可以作为信任的根源,为其背书的身份提供可信度。对于这样的系统,与身份相关联的数据通常存储在中心化的数据库中,如果不是存储在传统的信息存储介质中。每个人或实体的身份维护都在中心化机构的控制下。鉴于其性质,传统的身份管理系统会承担每个中心化机构遭受的安全风险,并且提供低效的机制来收集由不同中心化机构提供的身份或凭证。在这样的系统中,个人实体或身份所有者通常既不能自由选择信任的根源,也不能控制他们自己的身份或凭证。对他们身份的认证和验证被证明通常是低效的。
区块链技术提供了建立值得信任的去中心化系统的机会,该系统不需要信任系统的每个成员。区块链通过将数据保存在相互之间具有优先关系的一系列数据区块中,以去中心化方式提供数据存储。区块的链由区块链节点的网络维护和更新,区块链节点也负责基于共识方案验证数据。存储的数据可以包括许多数据类型,例如各方之间的金融交易、历史访问信息等。
许多区块链(例如,以太坊区块链)已经能够实现通过区块链交易执行的区块链合约(也称为智能合约)。区块链交易为签名的消息,其由外部拥有的账户(例如区块链账户)发起,由区块链网络传输并记录在区块链中。可以编写区块链合约以实现各种功能,例如将数据添加到区块链账户、更改区块链中的数据等。因此,可以通过执行各种区块链交易来维护和更新区块链。
区块链技术提供了无需中心化机构即可管理信任的根源的方法。然而,基于区块链构建的身份管理系统通常通过要求区块链账本的存储、创建和执行区块链交易和合约的能力或区块链共识方案中的参与,而给普通用户带来实质性技术障碍。这种身份管理系统还可能需要频繁访问区块链网络并与区块链网络交互,这可能造成成本高和资源消耗。身份持有人可能被要求保存例如加密密钥的重要身份凭证,当这些身份凭证遭到破坏时,可能会使身份持有人遭受身份被盗用的风险。此外,对于需要管理大量用户身份的商业实体,这种身份管理系统被证明通常是低效且用户不友好的。由这样的身份管理系统管理的身份与由商业实体保存的账户或服务ID之间的映射通常很难维护。最后,身份管理系统可能通常允许匿名和任意创建去中心化的身份,并且提供很少的方法来认证去中心化的身份背后的个人的真实身份。
发明内容
本文的各种实施例包括但不限于用于将去中心化标识映射到真实实体的系统、方法和非暂时性计算机可读介质。
根据一些实施例,一种计算机实现的用于将去中心化标识(DID)映射到真实实体的方法包括:接收用于获得DID的请求;基于接收到的请求获得身份认证的证明;基于所述身份认证的证明获得所述DID;以及存储所述身份认证的证明与所述DID之间的映射关系。
在一些实施例中,所述身份认证的证明包括:真人认证的证明;或者实名认证的证明。
在一些实施例中,获得身份认证的证明包括:从所述请求获得所述身份认证的证明,其中,所述请求包括所述身份认证的证明与账户标识之间的关系。
在一些实施例中,所述方法还包括,在接收所述用于创建DID的请求之后:确定所述用于创建DID的请求包括所述身份认证的证明;以及基于确定所述请求包括所述身份认证的证明来接受所述请求。
在一些实施例中,所述方法还包括,在接收所述用于创建DID的请求之后:确定所述用于创建DID的请求不包括身份认证的证明;向所述用于创建DID的请求的发送者发送对于所述身份认证的证明的请求;以及从所述用于创建DID的请求的所述发送者接收所述身份认证的证明。
在一些实施例中,获得身份认证的证明包括:向与存储身份认证关联信息的区块链相关联的区块链接节点发送针对所述身份认证的证明进行查询的区块链交易;以及响应于所述区块链交易在所述区块链中被成功执行,从所述区块链获得所述身份认证的证明。
在一些实施例中,获得身份认证的证明包括:向与所述身份认证的证明的对象相关联的客户端侧应用发送用于获得与所述对象的一个或多个特征相关联的数据的指令;以及基于所获得的数据来获得所述身份认证的证明。
在一些实施例中,发送用于获得与所述对象的一个或多个特征相关联的数据的指令包括:向所述客户端侧应用发送捕获所述对象的一个或多个图像的指令。
在一些实施例中,发送用于获得与所述对象的一个或多个特征相关联的数据的指令包括:向所述客户端侧应用发送用于将所获得的与所述对象的一个或多个特征相关联的数据和与所述对象的标识相关联的预存储的数据进行比较的指令。
在一些实施例中,获得DID包括:生成秘钥别名;获得加密密钥对的公钥;以及存储所述身份认证的证明、所述公钥和所述秘钥别名之间的映射关系。
在一些实施例中,获得DID还包括:基于所述公钥生成用于创建所述DID并且将与所述DID相关联的DID文档添加到区块链的一个或多个区块链交易。
在一些实施例中,所述方法还包括:基于所述身份认证的证明生成可验证声明VC;以及将所述VC上传到与所获得的DID相关联的服务端点。
在一些实施例中,所述方法还包括:接收针对所述身份认证的证明的请求,其中,所述请求包括所获得的DID;以及基于所述身份认证的证明与所述DID之间的映射关系来定位所述身份认证的证明。
根据其它实施例,一种用于将去中心化标识(DID)映射到真实实体的系统包括一个或多个处理器以及耦接到所述一个或多个处理器并且具有存储在其上的指令的一个或多个计算机可读存储器,所述指令能够由所述一个或多个处理器执行以执行前述实施例中的任意一个的方法。
根据其它实施例,一种非暂时性计算机可读存储介质被配置有指令,所述指令能够由一个或多个处理器执行以使得所述一个或多个处理器执行前述实施例中的任意一个的方法。
根据其它实施例,一种用于将去中心化标识(DID)映射到真实实体的装置包括用于执行前述实施例中的任意一个的方法的多个模块。
根据一些实施例,一种用于将去中心化标识(DID)映射到真实实体的系统包括一个或多个处理器以及耦接到所述一个或多个处理器并且具有存储在其上的指令的一个或多个计算机可读存储器,所述指令能够由所述一个或多个处理器执行以执行操作,所述操作包括:接收用于获得DID的请求,基于接收到的请求获得身份认证的证明,基于所述身份认证的证明获得所述DID,以及存储所述身份认证的证明与所述DID之间的映射关系。
根据其它实施例,一种非暂时性计算机可读存储介质被配置有指令,所述指令能够由一个或多个处理器执行以使得所述一个或多个处理器能够执行操作,所述操作包括:接收用于获得DID的请求,基于接收到的请求获得身份认证的证明,基于所述身份认证的证明获得所述DID,以及存储所述身份认证的证明与所述DID之间的映射关系。
根据其它实施例,一种用于将去中心化标识(DID)映射到真实实体的装置包括:接收模块,用于接收用于获得DID的请求;第一获得模块,用于基于接收到的请求获得身份认证的证明;第二获得模块,用于基于所述身份认证的证明获得所述DID;以及存储模块,用于存储所述身份认证的证明与所述DID之间的映射关系。
本文公开的实施例具有一个或多个技术效果。在一些实施例中,在线平台提供用于基于区块链的去中心化身份管理的在线服务,例如代理服务和解析器服务,并且使这样的在线服务用户能够经由API界面进行访问。这允许除了由区块链所要求的那些之外使用编程语言或者协议来控制与去中心化身份管理有关的操作(例如,创建和认证去中心化标识、发布和验证可验证声明)。在其它实施例中,在线平台为实体提供用于代表多个其它实体管理身份的界面和自动软件解决方案。在线平台还包括存储去中心化身份与商业账户或服务ID之间的映射信息。这促进了使用简化的控制动作创建大量的去中心化标识或可验证声明以及对于单个人或实体不同身份的有效交叉引用。在其它实施例中,在线平台结合身份认证功能并且在创建去中心化身份时使用身份认证。这允许识别与去中心化身份相对应的真实实体,创建增强的信任系统,以及去中心化身份管理系统与传统身份管理系统的互操作性。
在参照附图考虑下面的说明书和所附权利要求书的情况(附图、说明书和权利要求书都形成本文的一部分)下,本文公开的系统、方法和非暂时性计算机可读介质的这些和其它特征、相关结构元件和部件的组合的操作方法和功能以及制造的经济性将变得更加明显,其中,在各个附图中相同的附图标记指代相应的部件。然而,需要明确理解的是,附图仅出于说明和描述的目的并且不意在是限制性的。
附图说明
图1示出根据一些实施例的与区块链相关联的网络环境。
图2示出根据一些实施例的用于实现区块链交易的框架。
图3示出根据一些实施例的与用于管理去中心化标识和可验证声明的系统相关联的网络环境。
图4示出根据一些实施例的与用于管理去中心化标识和可验证声明的基于区块链的系统相关联的架构。
图5示出根据一些实施例的与用于实现与去中心化标识和可验证声明相关联的功能的各种示例的系统相关联的网络环境。
图6示出根据一些实施例的用于创建去中心化标识的方法。
图7示出根据一些实施例的用于使用DID认证服务来认证去中心化标识的方法。
图8示出根据一些实施例的用于使用身份管理应用来认证去中心化标识的方法。
图9示出根据一些实施例的用于发布可验证声明的方法。
图10示出根据一些实施例的用于验证可验证声明的方法。
图11示出根据一些实施例的用于使用代理服务来创建去中心化标识的方法。
图12示出根据一些实施例的用于使用代理服务来认证去中心化标识的方法。
图13示出根据一些实施例的用于使用代理服务来发布可验证声明的方法。
图14示出根据一些实施例的用于使用代理服务来验证可验证声明的方法。
图15示出根据一些实施例的用于基于身份认证来获得去中心化标识的方法。
图16示出根据一些实施例的用于获得身份认证的证明的方法。
图17示出根据一些实施例的用于将去中心化标识映射到真实实体的方法的流程图。
图18示出根据一些实施例的用于将去中心化标识映射到真实实体的计算机系统的框图。
图19示出其中可以实现本文描述的任一实施例的计算机系统的框图。
具体实施方式
本文描述的实施例提供了与用于可以为实体提供唯一且可验证的身份的去中心化身份管理的生态系统相关联的方法、系统和装置。实体的去中心化标识(DID)可允许该实体获得对其身份以及与身份相关联的信息的完全控制。可验证声明(VC)可允许不同实体之间进行授权、背书和确认。在商业环境中,服务或产品提供商可以使用其客户的DID和VC来识别并认证客户,并相应地提供服务或产品。
在一些实施例中,DID可以是指示真实实体和在线实体之间的映射关系的唯一标识。DID可以包括URL方案标识、用于DID方法的标识以及DID方法专用标识。每个DID可以指向对应的DID文档。DID文档可以包括关于DID和DID的所有者的预设格式(例如,JSON-LD)的描述性文本。DID可以用作用于定位DID文档的统一资源标识(URI)。DID文档可以包括各种属性,例如上下文、DID主题、公钥、认证、授权和委托、服务端点、创建、更新、证明、可扩展性、其他合适的属性或其任意组合。DID文档可以定义或指向定义多个操作的资源,所述操作可以相对于DID执行。
在一些实施例中,VC可以提供关于实体的质量、特征、关系和其他相关信息的可验证在线信息。VC可以包含预设格式(例如JSON-LD)的描述性文本,该文本描述有关DID的一个或多个声明(例如,DID所有者的年龄、DID所有者的教育背景)以及实体对声明的背书。VC可以包括各种属性,例如上下文、标识、类型、凭证主题、发布者、发布日期、证明、到期日、状态、表示、其他合适的属性或其任意组合。VC可以指定其声明的类型,该类型可以指示该声明的结构。这可以促使VC发布者和VC验证者自动进行处理。
DID的所有者可以以不同的角色参与身份管理系统。例如,个人可能期望使用由商业实体提供的服务,该服务需要证明该个人已超过18岁。该个人可以是DID的所有者,并且可以请求由提供公民年龄验证的政府机构发布的VC。商业实体可以验证VC,以确保该个人符合年龄要求。在这种情况下,个人可以是DID所有者和VC持有者;政府机构可以是VC发布者,而商业实体可以是VC验证者。作为另一示例,用户可以向第一企业发布VC,以允许第一企业使用由第二企业存储的用户数据。在这种情况下,用户可以充当VC发布者;第一企业可以充当DID所有者和VC持有者;第二企业可以充当VC验证者。
一些实施例集成了各种组件,例如区块链网络、云应用、代理服务、解析器服务、用户应用、应用程序接口(API)服务、密钥管理系统(KMS)、身份认证系统和其他合适的组件,以实现诸如创建和认证DID以及发布和验证VC的功能。在一些实施例中,集成这些组件中的一个或多个的在线平台可以促进商业实体顺利地为其用户创建DID和发布VC。商业实体可以通过一个或多个API接口与在线平台进行交互,并将多个加密密钥信托给在线平台。在线平台可以提供代表商业实体和/或其用户来执行与DID和VC有关的各种操作的代理服务。可选地,在线平台可以提供可以集成到商业实体的应用中的SDK,以直接执行与DID和VC有关的操作。在线平台也可以促进对DID之间的关系、由商业实体维护的账户以及与DID和账户对应的真实个人的身份的管理。
图1示出了根据一些实施例的与区块链相关联的网络环境。如图所示,在环境100中,客户端111可以耦接到服务器端118,并且服务器端118和节点B可以通过各种通信网络耦接到区块链系统112。类似地,服务器端118可以可选地耦接到更多类似于区块链系统112的区块链系统,例如区块链系统113、区块链系统114等。每个区块链系统可以维护一个或多个区块链。
在一些实施例中,客户端111可以包括一个或多个服务器(例如,节点C)以及一个或多个其他计算设备(例如,节点A1、节点A2、节点A3)。节点A1、节点A2和节点A3可以耦接到节点C。在一些实施例中,节点C可以由具有各种本地账户(从节点A1、节点A2、节点A3评估的本地账户)的实体(例如,网站、移动电话应用、组织、公司、企业)来实现。例如,移动电话应用可能具有数百万个从相应的用户账户访问应用的服务器的端用户(end-user)。应用的服务器可以相应地存储数百万个用户账户。客户端111的组件及其布置可以具有许多其他配置。
在一些实施例中,节点B可以包括轻节点。轻节点可能无法下载完整的区块链,而是可以只下载区块头以验证区块链交易的真实性。轻节点可以由全节点(例如,区块链系统112中的区块链节点)服务并且有效地依赖于全节点来访问区块链的更多功能。通过安装适当的软件,可以在诸如膝上型电脑、移动电话等的电子设备中实现轻节点。
在一些实施例中,可以有更多类似于客户端111的客户端耦接到服务器端118。服务器端118可以提供区块链即服务(BaaS),并且被称为BaaS云。在一个实施例中,BaaS是一种云服务模型,其中客户端或开发人员将Web或移动应用的幕后方面外包。BaaS可以为区块链上发生的例如用户验证、数据库管理和远程更新的活动提供预先编写的软件。BaaS云可以在服务器、服务器集群或其他设备中实现。在一个实施例中,BaaS云提供基于区块链技术的企业级平台服务。该服务可以帮助客户端构建安全稳定的区块链环境,并轻松管理区块链的部署、操作、维护和开发。基于云的丰富的安全策略和多租户隔离,BaaS云可以使用芯片加密技术来提供高级的安全保护。基于高可靠性的数据存储,这项服务可以提供端到端的高可用性服务,所述服务能够快速扩展而不会中断。BaaS云可以为标准区块链应用和数据提供本地支持。
在一些实施例中,区块链系统112可包括维护一个或多个区块链(例如,公有区块链、私有区块链、联盟区块链)的多个区块链节点(例如,区块链节点1、区块链节点2、区块链节点3、区块链节点4、区块链节点i等)。其他区块链系统(例如,区块链系统113、区块链系统114)可以包括维护其他区块链的区块链节点的类似布置。每个区块链节点都可以在一个或多个区块链系统中找到。每个区块链系统的区块链节点可以维护一个或多个区块链。区块链节点可以包括全节点。全节点可以下载每个区块和区块链交易,并对照区块链的共识规则对它们进行检查。区块链节点可以形成网络(例如,点对点网络),其中一个区块链节点与另一区块链节点通信。所示的区块链节点的次序和数量仅仅是为了说明的示例。区块链节点可以在服务器、计算机等中实现。例如,每个区块链节点可以在服务器或服务器集群中实现。服务器集群可以采用负载平衡。每个区块链节点可以对应于经由诸如TCP/IP的各种类型的通信方法耦接在一起的一个或多个物理硬件设备或者虚拟设备。根据分类,区块链节点还可以被称为全节点、Geth节点、共识节点等。
在环境100中,每个节点和设备可以安装有适当的软件(例如,应用程序接口)和/或硬件(例如,有线、无线连接)以访问环境100的其他设备。通常,节点和设备可以能够通过一个或多个有线或无线网络(例如,互联网)彼此通信,通过所述网络可以对数据进行通信。节点和设备中的每一个可以包括一个或多个处理器以及耦接到一个或多个处理器的一个或多个存储器。存储器可以是非暂时性的且计算机可读的,并且配置有可由一个或多个处理器执行以促使所述一个或多个处理器执行本文描述的操作的指令。所述指令可以存储在存储器中或通过通信网络下载而不必存储在存储器中。尽管在该图中节点和设备被示为单独的组件,但是应当理解,这些节点和设备可以实现为单个设备或耦接在一起的多个设备。例如,节点B可以可选地集成到区块链节点2中。
诸如节点A1、节点A2、节点A3、节点B和节点C之类的设备可以安装有适当的区块链软件以创建区块链账户并发起、转发或访问区块链交易。术语“区块链交易”可以指在区块链系统中执行并记录在区块链中的任务单元。例如,节点A1可以通过与节点C、服务器端118和区块链节点1通信来访问区块链,并且节点B可以通过与区块链节点2通信来访问区块链。在一些实施例中,节点A1可以向节点C提交区块链账户创建请求。节点C可以将请求和其他类似请求转发给服务器端118。服务器端118可以相应地创建区块链账户。
在一些实施例中,在接收到未确认的区块链交易的区块链交易请求后,接收方区块链节点可以对区块链交易执行一些初步验证。例如,区块链节点1可以在从节点C接收到区块链交易之后执行初步验证。一旦被验证,区块链交易可以被存储在接收方区块链节点(例如,区块链节点1)的池数据库中,该节点也可以将该区块链交易转发到一个或多个其他区块链节点(例如,区块链节点3、区块链节点4)。由于每个区块链节点可以包括存储器或耦接到存储器,所以池数据库可以分别存储在区块链节点的存储器中。池数据库可存储由一个或多个客户端设备提交的多个区块链交易。在接收到区块链交易之后,一个或多个其他区块链节点可以重复由接收方区块链节点进行的处理。
每个区块链节点可以根据其偏好从池中选择一些区块链交易,并将其形成为向区块链提出的新区块。区块链节点可以通过投入算力来解决复杂的数学问题,从而对提出的新区块进行“挖矿”。如果区块链交易涉及区块链合约,则区块链节点可以在对应的虚拟机(VM)中本地执行区块链合约。为了处理区块链合约,区块链网络的每个区块链节点可以运行一个对应的虚拟机,并执行区块链合约中相同的指令。虚拟机是基于计算机架构并提供物理计算机的功能的计算机系统的软件仿真。区块链环境中的虚拟机可以被理解为被设计用作区块链合约的运行环境的系统。
根据共识规则成功挖出所提出的区块链交易的新区块的特定区块链节点可以将新区块打包至其区块链的本地副本中,并将结果多播到其他区块链节点。特定区块链节点可以是首先成功完成验证、已获得验证特权、或者已经基于另一共识规则被选择等的区块链节点。然后,其他区块链节点可以遵循与特定区块链节点执行的执行顺序相同的执行顺序在本地执行新区块中的区块链交易,彼此验证执行结果(例如,通过执行哈希计算),并将它们的区块链的本地副本与特定区块链节点的副本同步。通过更新区块链的本地副本,其他区块链节点可以类似地将区块链交易中这样的信息写入对应的本地存储器。因此,区块链合约可以部署在区块链上。如果在某一时刻验证失败,则拒绝区块链交易。
部署的区块链合约可以具有地址,根据该地址可以访问部署的合约。区块链节点可以通过向区块链合约输入某些参数来调用已部署的区块链合约。在一个实施例中,节点C或节点B可以请求调用部署的区块链合约以执行各种操作。例如,可以检索存储在部署的区块链合约中的数据。对于另一示例,可以将数据添加到部署的区块链合约中。对于又一示例,可以执行在部署的区块链合约中指定的金融交易。尽管如此,其他类型的区块链系统和相关的共识规则可以应用于所公开的区块链系统。
图2示出了根据一些实施例的用于实现区块链交易的框架。在一些实施例中,客户端111可以向服务器端118发送信息(例如,具有用于创建区块链账户的相关信息的请求),以供服务器端118创建区块链账户。为此,服务器端118可以生成加密密钥,将该请求与其他账户创建请求一起编译,和/或执行其他操作。然后,服务器端118可以将包括编译的账户创建请求的区块链交易(例如,区块链交易A)发送到区块链节点中的一个或多个以供执行。
在一些实施例中,节点B可以构建签名的区块链交易并将其发送到一个或多个区块链节点以供执行。在一个实施例中,节点B可以构建区块链交易B。区块链交易B可以包括用于部署或调用已部署的区块链合约的区块链合约B。例如,区块链交易B可以包括创建区块链账户或调用已部署的区块链合约A的区块链合约。可以在用户端应用221处以源代码对区块链合约B进行编程。例如,用户或机器可以对区块链合约B进行编程。节点B可以使用相应的编译器来编译源代码,该编译器将源代码转换为字节码。区块链交易B可以包括诸如随机数(例如,交易序列号)、从(例如,节点B的区块链地址或另一区块链地址)、至(例如,在部署区块链合约的情况下为空)、交易费、价值(例如,交易金额)、签名(例如,节点B的签名)、数据(例如,至合约账户的消息)等的信息。节点B可通过远程过程调用(RPC)接口223将区块链交易B发送到一个或多个区块链节点以供执行。RPC是第一程序(例如,用户端应用)可以用来从位于网络上的另一计算机(例如,区块链节点)中的第二程序请求服务而无需理解网络细节的协议。当第一程序促使进程在不同地址空间中执行时,则其好像正常(本地)进程调用一样,而无需程序员明确地编码远程交互的细节。
在一些实施例中,在接收到区块链交易(例如,区块链交易A或B)时,接收方区块链可以验证区块链交易是否有效。例如,可以验证签名和其他格式。如果验证成功,接收方区块链节点可以将接收到的区块链交易(例如,区块链交易A或B)广播到区块链网络,该区块链网络包括各种其他区块链节点。一些区块链节点可以参与区块链交易的挖矿过程。区块链交易可以由特定节点挑选以进行共识验证,从而打包到新区块中。如果区块链交易涉及区块链合约,特定节点可以创建区块链合约的与合约账户地址相关联的合约账户。如果区块链交易涉及调用部署的区块链合约,则特定节点可以触发其本地虚拟机执行接收到的区块链交易,因此从其区块链的本地副本调用部署的区块链合约并更新区块链中的账户状态。如果特定节点成功挖出新区块,则特定节点可以将新区块广播到其他区块链节点。其他区块链节点可以验证该新区块为由该特定区块链节点挖出的。如果达成共识,则将区块链交易B分别打包到由区块链节点维护的区块链的本地副本中。区块链节点可以类似地触发其本地虚拟机以执行区块链交易B,从而调用部署在区块链的本地副本上的区块链合约A并进行相应的更新。
在接收到新区块时,其他区块链节点可以执行验证。如果对新区块有效达成了共识,则将新区块分别打包到由区块链节点维护的区块链的本地副本中。区块链节点可以类似地触发它们的本地虚拟机(例如,本地虚拟机1、本地虚拟机i、本地虚拟机2)以执行新区块中的区块链交易,从而调用区块链的本地副本(例如,本地区块链副本1、本地区块链副本i、本地区块链副本2)并进行相应的更新。每个区块链节点的硬件机器可以访问一个或多个虚拟机,所述虚拟机可以是相应的区块链节点的一部分或耦接到相应的区块链节点。每次都可以触发相应的本地虚拟机来执行区块链交易。同样,将执行新区块中的所有其他区块链交易。轻节点也可以与更新的区块链同步。
图3示出了根据一些实施例的与用于管理去中心化标识和可验证声明的系统相关联的网络环境。在一些实施例中,用户侧系统310可以对应于实体。该实体可以是向多个用户提供一个或多个产品或服务的商业实体。该实体还可以是单个用户、用户组、组织、其他合适的实体或其任意组合。用户侧系统310可以包括多个计算机系统、数据存储、云服务、移动应用、其他合适的组件或其任意组合。用户侧系统310可以包括服务器311和数据库313。数据库313可以存储与实体的用户的多个用户账户相关联的数据。与用户侧系统310对应的实体可能期望为其自身以及其用户创建和管理DID和VC。它可以包括用于管理DID的创建和认证或者VC的发布和验证的一个或多个软件开发工具包(SDK)312。
在一些实施例中,为了实现与DID和VC相关联的功能,用户侧系统310可以与服务侧系统320对接。在一些实施例中,如图3所示的服务侧系统320可以等同于如图1和图2所示的服务器端118的一个或多个组件、成为其一部分、或将其包括在内。服务侧系统320可以包括一个或多个代理321、一个或多个解析器322、一个或多个密钥管理系统323、一个或多个云324、其他合适的组件或其任意组合。代理321可以提供与DID或VC有关的各种服务或应用,并维护数据库,该数据库将来自用户侧系统310的账户信息或其他商业数据映射到存储在一个或多个区块链上的DID、VC或者其他信息或数据。代理321可以提供一个或多个应用程序接口(API),用户侧系统310可以使用该API来直接提交与DID或VC有关的请求。代理321可以管理用户侧系统310与解析器322和云324之间的通信。
在一些实施例中,代理321可以耦接到密钥管理系统(KMS)323。KMS 323可以生成、分发和管理用于设备和应用的加密密钥。它们可能涵盖从密钥的安全生成到密钥的安全交换,再到安全的密钥处理和存储的安全性方面。KMS 323的功能可以包括密钥生成、分发和替换以及密钥注入、存储和管理。KMS 323可以包括或耦接到可信执行环境(TEE)。TEE可以是设备的主处理器上与主操作系统分离的隔离区域。TEE可以提供隔离执行环境,该隔离执行环境提供例如隔离执行、使用TEE执行的应用的完整性以及其资产的机密性的安全性特征。它可以保证内部加载的代码和数据在机密性和完整性方面得到保护。在一些实施例中,KMS 323可以在TEE中生成一个或多个加密密钥对。在输出加密密钥对之前,TEE可以对私钥进行加密。可以基于例如数据加密标准(DES)、TripleDES、RSA、高级加密标准(AES)、Twofish等的各种方法或标准对私钥进行加密。KMS 323可以存储与公钥相关联的加密私钥。为了使用私钥,KMS 323可以将加密私钥馈送到TEE以进行解密和处理。
在一些实施例中,代理321可以耦接到解析器322,解析器322可以包括软件应用以管理与DID或VC有关的交易中代理与区块链330之间的交互(例如,DID与DID文档之间的对应关系)。在本文中,根据上下文,区块链330可以指记录的账本或者包括去中心化节点网络的区块链系统,所述节点存储记录的账本并参与到共识过程中以将数据添加到记录的账本。解析器322可以是一个或多个基于云的服务的一部分,或者与一个或多个基于云的服务耦接。一个或多个基于云的服务可以与区块链即服务(BaaS)云324或其他合适的云服务相关联。BaaS云324可以构建为一个或多个区块链330提供各种接口的平台。它可以接收来自外部应用的输入并基于输入促进操作的创建和执行,例如区块链交易部署、区块链合约创建和执行、区块链账户创建。BaaS云324还可以从一个或多个区块链330获得信息和数据,并使用BaaS云324将信息和数据馈送到一个或多个其他系统。在一些实施例中,代理321可以直接耦接到云324以使用其服务。在一些实施例中,代理321、解析器322和KMS 323中的一个或多个可以集成为BaaS云324的一部分或另一合适的在线平台的一部分。
在一些实施例中,解析器322和云324可以耦接到区块链330。区块链330可以包括一个或多个区块链合约331。一个或多个区块链合约331可以被配置为由与区块链300相关联的虚拟机执行,以执行与DID和VC相关联的一个或多个操作。所述操作可以包括创建新的DID、存储DID文档、更新DID文档、基于DID来识别DID文档、存储与VC相关联的信息、检索与VC相关联的信息、其他合适的操作或其任意组合。解析器322和云324可以被配置为在区块链330上部署调用一个或多个区块链合约331的一个或多个交易。所述交易可以触发与DID和VC有关的一个或多个操作。
在一些实施例中,网络环境可以包括身份认证系统340。身份认证系统340可用于建立DID与真实身份之间的映射关系。身份认证系统340可以与为个人或实体执行身份认证的实体相关联。身份认证可基于个人或实体提供的文档、照片或其他适当材料来执行。身份认证还可以基于例如照片、指纹、密码输入、其他合适的数据或其任意组合等直接收集的数据来执行。身份认证系统340可以耦合到用户侧系统310和/或服务侧系统320。身份认证系统340可以接收来自用户侧系统310或服务侧系统320的用于身份认证的证明的一个或多个请求。作为响应,身份认证系统340可以执行任何必要的身份认证,并将身份认证的证明发送回请求者。身份认证的证明可以包括例如确认消息、安全密钥、唯一标识码、其他合适的证明或其任意组合。在一些实施例中,身份认证系统340可以耦接到区块链系统。连接到身份认证系统340的区块链系统可以是耦接到服务侧系统320的区块链系统330。可选地,尽管图3示出了身份认证系统340耦接到区块链330,但是本公开考虑了身份认证系统340耦接到不同区块链系统的场景。身份认证系统340可以直接访问区块链330或其他合适的区块链,或者经由中间系统(例如,BaaS云324)访问区块链330或其他合适的区块链。
身份认证系统340可以包括身份服务341,身份服务341可以在一个或多个服务器或云平台上实现。在一些实施例中,身份服务341可以实现为服务侧系统320(例如,云324)的一部分。在其他实施例中,身份服务341可以在与服务侧系统320分离的系统上实现。身份服务341可被配置为处理身份认证的请求、控制客户端侧应用342以收集身份数据、生成身份认证的证明、在数据库343中存储或访问身份信息、在区块链330上执行一个或多个操作(例如,获取身份信息,存储身份认证的证明)。在一些实施例中,身份认证系统340可以包括经由网络连接到身份服务341的客户端侧应用342。客户端侧应用342可以专用于身份认证,或者可以将身份认证与一个或多个其他功能合并为其功能之一。客户端侧应用342可以被配置为收集与用户相关联的数据。客户端侧应用342还可以被配置成将收集的数据与对应于用户的声称身份的预存储数据进行比较,以认证用户的身份。在一些实施例中,身份认证系统340可以包括连接到身份服务341的数据库343。数据库343可以存储与多个个人或实体相关联的身份信息。身份信息可以包括例如身份认证的证明、人的视觉特征、人的声音特征、人的指纹、人的签名、与身份相关联的密码、其他合适的身份信息或其任意组合。
图4示出了根据一些实施例的与基于区块链的系统相关联的架构,该系统用于管理去中心化标识和可验证声明。在一些实施例中,系统可以包括三种主要组件:一个或多个代理服务321、一个或多个解析器服务322以及一个或多个区块链合约331。一个或多个代理服务321可以被配置为处理从用户接收的与DID和VC有关的请求。一个或多个代理服务321可以管理用户侧系统310上的账户信息与账户所有者的DID之间的映射关系。代理服务321可以包括用于从用户侧系统310接收与DID相关的请求的DID代理服务API 410。取决于请求的性质,可以将其馈送到用于执行诸如创建和认证DID的操作的用户代理411,或者用于执行诸如发布VC的操作的发布代理412。来自期望验证VC的一方的请求可以被馈送到验证者代理413。一个或多个代理服务321还可提供用于存储一个或多个VC的可验证声明存储库414。代理服务321也可以使用一个或多个存储器415以及一个或多个数据库416。代理服务321可以耦接到KMS 323和BaaS云324。代理服务321可以耦接到解析器服务322。
在一些实施例中,代理服务321的一个或多个代理可以向与解析器服务322相关联的DID解析器API 420发送一个或多个请求。解析器服务322可以被配置为处理代理服务321与区块链330之间的交互。解析器服务322可以执行诸如从区块链330获得数据、向区块链330添加数据、创建区块链合约331、将交易部署至区块链330以调用区块链合约331、其他合适的操作或其任意组合的操作。解析器服务322可以包括DID解析器421和VC解析器422,所述DID解析器421被配置为管理存储在区块链330上的DID和DID文档,所述VC解析器422被配置为管理基于区块链330创建的DID的VC。解析器服务322还可包括用于从区块链331获得数据的监听器424。监听器424可以将获得的数据存储到数据库423。该数据可以由DID解析器421和VC解析器422使用。DID解析器421、VC解析器422和监听器424可以耦接到BaaS云324,用于与区块链330交互。
在一些实施例中,区块链330可以包括用于管理DID和DID文档的一个或多个区块链合约(331a、331b、331c),并且包括用于管理VC的一个或多个合约(331d、331e、331f)。合约可以由与区块链330相关联的一个或多个虚拟机执行,以执行诸如创建DID、存储DID文档、更新DID文档、存储与VC相关联的信息、其他合适的操作或其任意组合的操作。
图5示出了根据一些实施例的与用于实现与去中心化标识和可验证声明相关联的各种功能的示例的系统相关联的网络环境。网络环境的组件可以分类为三层510、520和530。在一些实施例中,底层或核心层510可以包括一个或多个区块链330,区块链330可以包括可以被执行以进行与DID和VC有关的操作的一个或多个区块链合约(331g、331h、331i)。区块链330可以存储多个DID和与所述多个DID相对应的多个DID文档。区块链合约(331g、331h、331i)可以被配置为管理DID和DID文档之间的映射关系以及DID文档的创建和更改。区块链330可以对于一个或多个解析器(322a、322b)为可访问的,以进行与DID和VC有关的操作。解析器(322a、322b)可以被配置为基于输入的DID向外部系统提供例如搜索DID文档或DID文档中包含的数据的服务。一个或多个方法库511也可以对于外部系统为可采用的,以与区块链330交互。
在一些实施例中,中间层或增强层520可以包括一个或多个用户代理411、一个或多个发布者代理412或一个或多个验证者代理413。在一些实施例中,区块链330可以包括联盟区块链,该联盟区块链对于不是联盟区块链的共识节点的用户可以直接访问或不可以直接访问。用户代理411可以为普通用户提供与区块链进行交互的接口。在一些实施例中,用户代理411可以被配置为创建一个或多个DID、认证一个或多个DID、与一个或多个可验证数据注册表521或者一个或多个DID中心(DID hub)522交互、向DID的所有者发送通知、执行其他合适的功能或其任意组合。这里,DID中心522可以包括DID所有者在其中存储DID所有者的敏感数据的系统。所有者可以准许某些其他实体(例如,发布可验证声明的机构)访问存储在DID中心522中的数据。可验证数据注册表521可以包括用于存储和管理发布给DID所有者的VC的VC存储库。发布者代理412可以包括一个或多个API(例如,REST API)或SDK。发布者代理412可以被配置为发布一个或多个可验证声明、撤回一个或多个可验证声明、检查和检验现有的可验证声明、发布可验证声明的模板、维护可验证声明的模板、执行其他合适的操作或它们的任意组合。验证者代理413可以包括一个或多个API(例如,REST API)或SDK,并且被配置为验证可验证声明或执行一个或多个其他合适的操作。在一些实施例中,层520还可包括一个或多个代码库(例如,DID解析库523、DID认证库524),所述代码库可被采用并可被用于与DID解析器322交互或直接与区块链330交互。代码库可被打包到一个或多个SDK中并可被用于执行例如DID认证、与区块链300的交互或与区块链合约331的对接的功能。发布者代理412和验证者代理413可以由网络环境中与DID和VC相关联的关键参与者(例如,能够执行了解您的客户(KYC)认证或为用户背书的实体、或者发布或验证可验证声明的实体(例如,政府机构、银行、金融服务提供商))使用。关键参与者可以提供第三方服务,该第三方服务可以通过与发布者代理412、可验证代理413或网络环境的其他合适组件的连接来集成。
在一些实施例中,上层或扩展层530可以包括与DID和VC有关的一个或多个外部服务或应用。服务或应用可以包括一个或多个发布者应用531、一个或多个验证者应用532、身份管理应用533、服务应用534、一个或多个其他合适的服务或应用或者其任意组合。发布者应用531可以与为用户发布由实体签名或背书的可验证声明的实体(例如,政府机构、银行、信贷机构)相对应。发布者应用531可以在用户侧系统310上操作。发布者应用531可以包括发布者可验证声明管理器服务,该服务可以允许发布者管理发布的VC、维护其状态(例如,有效性)或执行其他合适的操作。发布者应用531可以通过与发布者代理412或者一个或多个代码库523和524连接或对接来与层510和520交互。验证者应用532可以与需要验证可验证声明以确定用户的信息(例如,身份、年龄、信用评分)的实体(例如,服务提供商、信用发布者)相对应。验证者应用532可以在用户侧系统310上操作。验证者应用532可以通过与验证者代理413或者一个或多个代码库523和524连接或对接来与层510和520交互。身份管理应用533可以安装在与用户相关联的客户端设备或终端上。用户可以是DID所有者,DID所有者可以是个人、企业、组织、应用或任何其他合适的实体。身份管理应用533可以允许用户管理与DID、原始数据或VC相关联的加密密钥对,以从用户代理411接收通知、认证DID、授予对数据的访问权、使用VC、执行其他合适的操作或其任意组合。身份管理应用533可以通过与用户代理411连接或对接来与层510和520交互。服务应用534也可以耦接到用户代理411,并且被配置为管理与一个或多个用户或账户的DID或VC有关的功能。
图6至图10示出了由一个或多个用户侧系统310、一个或多个解析器322、一个或多个云324或者一个或多个区块链系统330执行的与DID或VC相关联的示例性操作。在一些实施例中,用户侧系统310可以通过与DID解析器322以及存储DID和DID文档的区块链330对接来管理一个或多个DID或者一个或多个VC。用户侧系统310可以使用一个或多个SDK 312来管理与和DID相关联的方法可兼容的DID。SDK 312可以与用户侧系统310使用的一个或多个应用集成。用户侧系统310还可以与用于存储可验证声明的一个或多个服务端点、用于存储可验证声明的状态信息的一个或多个服务端点、用于认证DID的一个或多个服务端点、其他合适的系统或其任意组合进行对接。
图6示出了根据一些实施例的用于创建去中心化标识的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。所述方法可以从步骤602开始,其中,用户侧系统310的服务器311可以获得将获得DID的用户的身份认证。在一些实施例中,用户侧系统310可以基于例如用户提供的识别文档或照片来为用户执行身份认证。在其他实施例中,用户侧系统310可以从身份认证系统340获得用户的身份认证的证明。用户的身份认证的证明可以包括实名认证的证明、真人认证的证明、其他身份认证的证明或其任意组合。用户侧系统310可以以图15至图18所示的方式获得身份认证的证明。用户侧系统310还可以生成或检索包括用于创建DID的公钥和私钥的加密密钥对。
在步骤604,服务器可以调用SDK 312的功能以创建新的DID。在此,至少加密密钥对中的公钥可以被输入,或者以其他方式使其可用于SDK 312。在步骤606,用户侧系统310可以使用SDK 312向解析器322发送用于创建新的DID的请求。在步骤608,解析器322可以向区块链系统330发送创建新的区块链账户的请求。在此,该请求可以以一个或多个区块链交易的形式被直接发送到区块链330的一个或多个区块链节点,或者被发送到BaaS云324或与区块链330相关联的其他合适的接口系统。响应于来自解析器322的请求,在步骤610,解析器322可以从云324获得已经创建了新的区块链账户的指示。区块链账户可以与区块链330上的地址相关联。解析器322获得的信息可以包括与新创建的区块链地址相关联的信息。它可以包括新创建的DID或至少足以构成DID的信息。在步骤612,解析器322可以将消息发送回与用户侧系统310相关联的SDK 312。该消息可以包括与新创建的DID相关联的信息。
在一些实施例中,可以创建DID文档并将其存储在区块链330上。在步骤614,用户侧系统可以使用SDK 312来生成DID文档,并将与新创建的DID相关联的公钥和认证信息添加到DID文档。在步骤616,用户侧系统310可以使用SDK 312来将与一个或多个服务端点相关联的信息(例如,与认证服务端点相关联的信息、与可验证声明存储库相关联的信息)添加到DID文档。认证服务端点和可验证声明存储库可以作为包括解析器322的系统的一部分来提供,或者可以由第三方系统来提供。然后,在步骤618,用户侧系统可以使用SDK 312来生成用于将DID文档存储到区块链330的一个或多个区块链交易。用户侧系统310还可以使用SDK 312来生成区块链交易的哈希值,并使用与DID相关联的私钥生成交易的数字签名。在步骤620,SDK 312可以将DID文档以及区块链交易发送到DID解析器322,用以发送到区块链系统。在步骤622,DID解析器可以将一个或多个交易发送到区块链系统(例如,一个或多个区块链节点、BaaS云324)。一个或多个交易可以调用用于管理区块链330上的DID和DID文档的区块链合约331。在步骤624,解析器322可以从区块链330获得指示DID文档已经被成功存储的信息。在步骤626,解析器322可以将确认转发至SKD 312。在步骤628,SDK 312可以将与创建的DID和DID文档相关联的信息发送到用户侧系统310的服务器311,然后在步骤630服务器311可以向用户发送确认成功创建DID的通知。
图7示出了根据一些实施例的用于使用DID认证服务来认证去中心化标识的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,拥有DID的用户可以使用由商业实体提供的DID认证服务来实现对其DID所有权的认证。所有者可以将与DID对应的公钥-私钥对信托给商业实体以进行存储。所有者可以提供DID认证服务的网络位置(例如,由URL标识)作为DID认证的服务端点。DID认证服务的位置标识可以被包括在与DID相关联的DID文档的“服务”文件中。
在一些实施例中,验证者532(例如,需要验证客户信息的服务提供商)可以使用SDK 312来发起DID认证处理。在步骤702,验证者532可以获得由声称的所有者提供的DID。在步骤704,验证者532可以调用SDK 312以创建DID认证质询。验证者532可以将待认证的DID和要向其发送对质询的响应的网络地址(例如,URL)输入到SDK 312。在步骤706,SDK312可以将对与待认证的DID相关联的DID文档的查询发送到解析器322。在步骤708,解析器322可以制定调用用于管理DID的区块链合约331的区块链交易,并将该区块链交易发送到与区块链330相关联的一个或多个区块链节点以供执行。结果,解析器322可在步骤710获得与DID相对应的DID文档,并在步骤712将其转发至SDK 312。在步骤714,验证者532可以使用SDK 312基于获得的DID文档来创建DID认证质询。在一些实施例中,DID认证质询可以包括通过使用与记录在DID文档中的与DID相关联的公钥对原始文本进行加密而创建的密文。质询还可以包括要向其发送响应的网络地址。在步骤716,验证者532可以从DID文档获得与DID的认证服务端点相关联的信息。在步骤718,验证者532可以使用SDK 312将质询发送到与DID相关联的DID认证服务。
在一些实施例中,在从验证者532获得DID认证质询之后,在步骤720,DID认证服务可以从所有者获得对于这种认证请求的同意。如果所有者提供了对于身份认证的同意或许可,则在步骤722,DID认证服务可以调用它的SDK 312版本以创建对DID认证质询的响应。在一些实施例中,对DID认证质询的响应可以包括明文,该明文是使用与DID相关联的私钥对质询中的密文进行解密的结果。在步骤724,SDK 312可以将响应返回至DID认证服务,然后在步骤726,DID认证服务可以将响应发送到由验证者432提供的网络地址。在接收到对DID认证质询的响应之后,在步骤728,验证者532可以调用它的SDK 312以检查响应。在步骤730,SDK 312可以确定响应是否证明提供DID的用户是该DID的所有者。在一些实施例中,SDK 312可以通过将响应中的解密文本与用于创建DID认证质询的原始文本进行比较来检查响应。如果确定响应正确,则在步骤732,SDK 312可以向验证者532返回指示DID是用户身份的有效证明的消息。在步骤734,验证者532可以将DID的有效性通知给用户。
图8示出了根据一些实施例的使用身份管理应用来认证去中心化标识的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,用户可以使用终端来管理DID,该终端可以包括身份管理应用或另一合适的应用。该应用可以包括SDK 312的版本。在此示例中,用户可能需要来自服务提供商(即验证者)的服务,该服务提供商需要验证用户拥有特定的DID以便提供其服务。用户可以向验证者发送服务请求。服务请求可以是HTTP请求的形式。
在步骤802,用户可以调用身份管理应用以提供用于服务请求的认证信息。用户可以将原始服务请求作为输入提供给包括在身份管理应用中的SDK 312。在步骤804,SDK 312可以使用与DID相关联的加密密钥对中的私钥对原始服务请求的内容进行签名。SDK 312可用于将原始服务请求的DID和数字签名添加到原始服务请求,以创建签名的服务请求。在原始服务请求是HTTP请求的情况下,SDK 312可以将DID和数字签名添加到HTTP请求的报头。在步骤806,SDK 312可以将签名的服务请求发送到验证者532。
在一些实施例中,在步骤808,验证者532可以调用它的SDK 312版本以认证包括在签名的服务请求中的DID。在步骤810,SDK 312可以获得包括在签名的服务请求中的DID和数字签名。在签名的服务请求是HTTP请求的情况下,可以从HTTP请求的报头获得DID和数字签名。在步骤812,SDK 312可以将对与待认证的DID相关联的DID文档的查询发送到解析器322。在步骤814,解析器322可以制定调用用于管理DID的区块链合约331的交易,并将该交易发送到与区块链330相关联的一个或多个区块链节点以供执行。结果,解析器322可在步骤816获得与DID相对应的DID文档,并在步骤818将其转发至SDK 312。在步骤820,与验证者532相关联的SDK 312可以基于获得的DID文档检查签名的服务请求,以确定它是否来自DID的所有者。在一些实施例中,SDK 312可以使用从DID文档获得的公钥来对服务请求的内容进行签名,并对照包括在签名的服务请求中的数字签名来检查所得到的签名,以确定公钥是否与用于创建签名的服务请求中的数字签名的密钥相关联。如果是,则SDK 312可以确定来自用户的服务请求是有效的。然后,在步骤822,SDK 312可以将服务请求发送到验证者532以供处理。在步骤824,验证者532可以处理服务请求并向用户提供适当的服务。然后,在步骤826,验证者532可以向用户发送响应以确认所请求的服务的完成。
图9示出了根据一些实施例的用于发布可验证声明的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,发布者531可以向用户发布VC。VC可以用作对发布者531背书的用户的某些事实或特征的证明。
在步骤902,发布者531可以获得与用户相关联的DID以及要包括在VC中的事实的证明。这里,要包括在VC中的事实的证明可以基于用户向发布者531提交的材料、发布者531从第三方系统获得的信息或数据、事实的本人验证、其他合适的证明来源或其任意组合。在获得DID和证明之后,在步骤904,发布者531可以调用与VC的创建相关联的SDK 312以发起用于创建VC的处理。来自发布者531的消息可以包括关于用户的被证明的事实的陈述或声明。SDK 312可以使用与发布者531相关联的加密密钥对来创建包括声明的VC文档。在一些实施例中,VC可以包括基于与发布者531相关联的私钥创建的数字签名。在步骤908,SDK312可以更新VC的本地存储状态。
在步骤910,SDK 312可以将对与被发布了VC的DID相关联的DID文档的查询发送到解析器322。在步骤912,解析器322可以制定调用用于管理DID的区块链合约331的交易,并将该交易发送到与区块链330相关联的一个或多个区块链节点以供执行。结果,解析器322可在步骤914获得与DID相对应的DID文档,并在步骤916将其转发至SDK 312。在步骤918,SDK 312可以识别与用户的DID相关联的用于存储VC的VC服务端点。VC服务端点可以与DID的用户或所有者使用的VC存储库414相对应。然后,在步骤920,发布者可以使用SDK 312将VC发送到VC存储库414以进行存储。VC还可以包括与VC状态服务端点相关联的信息,该VC状态服务端点可以存储并提供VC的状态信息。在一些实施例中,该信息可以包括由发布者531用来保存VC的状态的发布代理服务的网络地址(例如,URL)。VC状态服务端点可以或可以不与VC存储库414相关联。SDK 312可以将新生成的VC的当前状态提供给VC状态服务端点以进行存储。VC的状态可以存储在区块链上。
图10示出了根据一些实施例的用于验证可验证声明的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,用户可以向另一方(例如,验证者532)提供VC以证明VC中陈述的事实。可以在验证者532已经验证用户是与VC相关联的DID的所有者之后提供VC。
在步骤1002,验证者532可以调用包括与VC验证相关联的代码库的SDK 312以验证VC。SDK 312可以从VC(例如,在“凭证状态”字段中)识别与用于VC的VC状态服务端点相关联的信息。VC状态服务端点可以与发布者531相关联。在步骤1004,SDK 312可以向发布者531发送对VC的状态的查询。作为响应,在步骤1006,发布者531可以调用SDK 312以获得VC的状态。SDK 531可以获得VC的状态。作为示例,在步骤1008,SDK 312可以确定VC具有有效状态并且可以将信息返回给发布者531。然后,在步骤1010,发布者可以将有效状态信息返回给与验证者532相关联的SDK 312。
验证者532可以获得与VC的发布者531相关联的标识。例如,标识可以是发布者531的DID。在步骤1012,SDK 312可以将对与VC的发布者531的DID相关联的公钥的查询发送到解析器322。在步骤1014,解析器322可以制定调用用于管理DID的区块链合约331的交易,并将该交易发送到与区块链330相关联的一个或多个区块链节点以供执行。结果,解析器322可以在步骤1016获得与DID相对应的公钥,并且在步骤1018将其转发到与验证者532相关联的SDK 312。在步骤1020,与验证者532相关联的SDK 312可以基于其中包括的数字签名以及与VC的发布者531相关联的公钥来验证VC。在步骤1022,如果VC被验证,SDK 312可以将确认发送至验证者532。
图11至图14示出了与由一个或多个用户侧系统310、一个或多个代理321、一个或多个解析器322、一个或多个云324、一个或多个区块链系统330、一个或多个KMS或其他合适的系统、应用、服务执行的与DID或VC相关联的示例性操作。在一些实施例中,用户侧系统310可以通过经由一个或多个API接口(例如,REST API)与集成了一个或多个上述组件的在线平台进行交互来管理一个或多个DID或VC。用户侧系统310可以将诸如加密密钥对的机密信息信托给在线平台以进行安全保存。
图11示出了根据一些实施例的用于使用代理服务创建去中心化标识的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,与实体相关联的用户侧系统310可以使用一个或多个代理服务321来为该实体的一个或多个用户创建一个或多个DID,并将该DID与由实体维护的内部账户或标识(例如,服务ID)相关联。为了为其用户创建DID,该实体可能已被在线平台认证为可信实体,并且可能已承诺提供真实信息。在一些实施例中,该实体可能已经由引导程序(bootstrap)发布者DID发布了VC,以证明该实体已由权威实体认证。实体可能需要认证其用户的身份。用户侧系统310可以使用一个或多个KMS 323和它们提供的安全环境(例如,TEE)来管理与所创建的DID相关联的加密密钥并将加密密钥映射到实体所维护的内部账户或标识。借助于代理服务321,用户侧系统310可以使用与DID相关联的服务,而无需保留DID的记录。取而代之的,它可以简单地经由与代理服务321相关联的一个或多个接口来提供其用于识别DID的内部账户信息或标识信息。
在一些实施例中,用于管理DID的在线平台可以接收用于创建DID的请求。该请求可以来自代表第二实体的第一实体,用于为第二实体创建DID。在图11所示的示例中,实体(例如,第一实体)可以为用户(例如,第二实体)创建DID,该用户可以具有商业实体的账户。在一些实施例中,实体可以在为用户创建DID之前认证用户的身份。例如,在图11的步骤1102,与实体相关联的用户侧系统310的服务器311可以执行身份认证或以其他方式获得用户的身份认证信息。该实体可能先前验证了用户的身份,并且可以在数据库中维护这样的信息。在步骤1002,服务器311可以检索这样的信息。然后,在步骤1004,服务器311可以将用于创建DID的请求发送到与用户代理411相关联的代理服务API 410,用户代理411与在线平台相关联。该请求可以包括与用户相对应的账户标识。该请求可以采取API消息的形式。在步骤1006,代理服务API 410可以将请求发送到用户代理411以创建DID。
在步骤1108,用户代理411可以检查对于所需信息的请求。在一些实施例中,为了创建用户的DID,实体可需要具有其自身的现有DID。用户代理411可以检查该请求以确定该请求的发送者具有现有DID并且确定与该发送者相关联的DID。在一些实施例中,实体可需要为用户提供身份认证的证明。身份认证的证明可以包括真人认证的证明、实名认证的证明、其他合适的认证证明或其任意组合。例如,实名认证的证明可以基于用户的官方标识(例如,政府颁发的ID)。示例性证明可以例如是通过将哈希函数(例如SHA-256)应用于ID类型、ID号和用户编号的组合而创建的数字。这样的证明可以在维护用户机密的敏感信息的同时确保与特定用户的唯一对应。
在一些实施例中,用户代理411可以确定用于创建DID的请求是否包括身份认证的证明。身份认证的证明可以包括实名认证的证明、真人认证的证明、其他合适的身份认证方法的证明或者其任意组合。如果用户代理411确定该请求确实包括身份认证的证明,则用户代理411可以基于该确定接受该请求。如果用户代理411确定用于创建DID的请求不包括身份认证的证明,则用户代理411可以拒绝该请求。可选地,用户代理411可以向服务器311发送对于身份认证的证明的请求。然后,用户代理411可以从服务器311接收所需的身份认证的证明。用户代理411还可以使用其他方法来获得用户的身份认证。
在步骤1109,用户代理411可以获得与要创建的DID相对应的用户的身份认证的证明。在一些实施例中,用户代理411可以基于接收到的请求或从服务器311接收到的其他信息来直接获得身份认证的证明。用户侧系统310可以通过执行身份认证或通过使用身份服务341来获得证明。用户侧系统310可以在用于创建DID的请求中包括身份认证的证明,或者包括获取证明的装置(例如,链接)。在一些实施例中,用户侧系统310可以将发送用于创建DID的请求的功能委托给身份服务341。服务器311可以向身份服务341发送与它打算为其创建DID的一个或多个用户相关联的信息。身份服务341可以对用户执行身份认证,或者确认已成功完成对用户的身份认证。身份服务341可以基于从服务器311接收到的信息创建用于创建DID的一个或多个请求,所述请求包括用户的身份认证的证明。在一些实施例中,响应于来自身份服务341的请求而创建的DID文档可以包括指示DID是基于身份服务341的身份认证而创建的字段(例如,“创建者”字段)。在一些实施例中,在由身份服务341基于身份认证创建DID之后,身份服务341可以向DID发布VC,以证明DID的所有者的真实身份。在一些实施例中,在另一发布者向DID的所有者发布VC之前,该另一发布者可以要求由身份服务341发布的VC作为DID所有者的身份认证的证明。
在一些实施例中,用户代理411可以通过使用身份服务341独立地获得身份认证的证明。在一些实施例中,身份服务341可以对应于由服务侧系统320信托的实体。该实体可以对用户执行身份认证(例如,实名认证、真人认证)。身份认证可以包括收集与对应于身份的个人相关联的各种身份信息(例如,姓名、出生日期、地址、外貌特征、指纹),并将收集到的信息与由权威来源(例如,政府机构)维护的信息进行比较。在成功认证个人的身份之后,身份服务341可以存储成功认证的记录(例如,身份认证的证明)和与个人相关联的身份信息以及个人的标识,例如帐户或服务ID。身份服务341可以在数据库343中存储身份信息和身份认证的证明。可选地,身份服务341可以在区块链330中存储身份信息和身份认证的证明。在一些实施例中,身份服务341可以创建用于将身份信息保存在区块链330中的一个或多个区块链交易,并将一个或多个区块链交易发送到与区块链330相关联的一个或多个区块链节点。可选地,身份服务341可以经由例如BaaS云324而与区块链330交互。身份服务341可以向BaaS云324发送请求,以将身份信息和身份认证的证明存储在区块链330上。用户代理411可以向身份服务341发送对于用户的身份认证的证明的请求。用户可以对应于创建DID的请求。身份服务341可以发回请求的身份认证的证明。
在一些实施例中,用户代理411可以响应请求而获得DID,而无需获得身份验证的证明。以这种方式创建的DID可以被分配“认证挂起”的状态。它可以被映射至虚拟帐户标识(dummy account identifier)。该状态可以在与DID相对应的DID文档中表示,保存在存储DID的状态信息的系统中,或者由用户代理411保存。可以关于具有这种状态的DID执行的操作可能受到限制。例如,DID的所有者可能被禁止发布VC或被发布VC。在向用户代理411提供身份认证的证明之后,可以移除“认证挂起”的状态。身份服务341可以主动地向用户代理411发送身份认证的证明,或者在用户侧系统310或用户代理411请求时向用户代理411发送身份认证的证明。在接收到证明之后,用户代理411可以更新与DID相关联地存储的状态信息。此外,用户代理411可以存储DID与和其身份已被认证的用户相关联的帐户标识之间的映射关系。关于身份认证的进一步细节参照图15至图18来描述。
在获得身份认证的证明之后,在步骤1110,用户代理411可以为用户创建与身份认证的证明相对应的密钥别名。在一些实施例中,用户代理411可响应于接收到请求而获得加密密钥对的公钥。公钥以后可以用作创建DID的基础。在一些实施例中,用户代理411可以从KMS 323获得公钥。在步骤1112,用户代理411可以向KMS 323发送用于生成和存储加密密钥对的请求。KMS 323可以生成加密密钥对。在一些实施例中,KMS 323可促使在与KMS 323相关联的TEE中生成加密密钥对。在密钥对生成之后,KMS 323可以从TEE获得公钥和加密的私钥。在步骤1114,KMS 323可以向用户代理411发送公钥。
在一些实施例中,在线平台可以基于公钥获得DID。在步骤1116,用户代理411可以将用于创建新的DID的请求发送至解析器322。该请求可以包括公钥。作为响应,解析器322可以基于公钥生成用于创建DID并将与该DID相关联的DID文档添加到区块链的一个或多个区块链交易。可选地,DID解析器可以将请求发送到BaaS云324以生成这种交易。例如,在步骤1118,解析器322可以向区块链系统330发送创建新的区块链账户的请求。在此,该请求可以以一个或多个区块链交易的形式被直接发送到区块链330的一个或多个区块链节点,或者被发送到BaaS云324或与区块链330相关联的其他合适的接口系统。区块链交易可以调用被配置用于管理DID的一个或多个区块链合约。响应于来自解析器322的请求,在步骤1120,DID解析器可以从区块链330或云324获得成功创建新的区块链账户的指示。区块链账户可以与区块链330上的地址相关联。由解析器322获得的信息可以包括与新创建的区块链地址相关联的信息。它可以直接包括新创建的DID或至少足以构成DID的信息。在步骤1122,解析器322可以将消息发送回用户代理411。该消息可以包括与新创建的DID相关联的信息。
在一些实施例中,可以创建DID文档并将其存储在区块链330中。在步骤1124,用户代理411可以生成DID文档,并将与新创建的DID相关联的公钥以及认证信息添加到DID文档。在步骤1126,用户代理411可以将与一个或多个服务端点相关联的信息(例如,与认证服务端点相关联的信息、与可验证声明存储库相关联的信息)添加到DID文档。认证服务端点和可验证声明存储库414可以被提供为在线平台的一部分。DID文档可以包括:与所获得的DID相关联的一个或多个公钥、与所获得的DID相关联的认证信息、与所获得的DID相关联的授权信息、与所获得的DID相关联的委托信息、与所获得的DID相关联的一个或多个服务、与所获得的DID相关联的一个或多个服务端点、所获得的DID的创建者的DID、其他合适的信息或其任意组合。在一些实施例中,DID文档可以包括“创建者”字段,该“创建者”字段包含代表用户发送了用于创建DID的请求的实体的标识信息(例如,DID)。“创建者”字段可以用作对DID的所有者的身份进行认证或对DID的所有者背书的实体的记录。然后,在步骤1128,用户代理411可以生成用于将DID文档存储到区块链330的一个或多个区块链交易。用户代理411还可以生成区块链交易的一个或多个哈希值。
在一些实施例中,对于将要由区块链330的一个或多个节点执行的一个或多个区块链交易,需要使用与DID相关联的私钥对它们进行签名。用户代理411可以从KMS 323获得这样的数字签名。在步骤1130,用户代理411可以向KMS 323发送请求,以使用与DID相关联的加密密钥对中的私钥对区块链交易进行签名。该请求可以包括交易的哈希值和与DID相关联的公钥。KMS 323可以创建交易的数字签名。在一些实施例中,可以在与KMS 323关联的TEE中生成数字签名。KMS 323可以识别与公钥相关联的加密的私钥,并将该加密的私钥馈送到TEE。加密的私钥可以在TEE中被解密,并用于生成交易的数字签名。然后可以将数字签名馈送回KMS 323。在步骤1132,用户代理411可以从KMS接收签名版本的区块链交易。
在步骤1134,用户代理411可以将DID文档以及签名的区块链交易发送到解析器322,用于发送到区块链系统。在步骤1136,解析器322可以将一个或多个交易发送到区块链系统(例如,一个或多个区块链节点、BaaS云324)。交易可以调用用于管理区块链330上的DID和DID文档的区块链合约331。在步骤1138,解析器322可以从区块链330获得指示DID文档已经被成功存储的信息。在步骤1140,解析器322可以将确认转发至用户代理411。
在步骤1142,在已经创建了DID及其对应的DID文档之后,用户代理411可以更新数据库416以存储以下之间的映射关系:DID、用户的账户标识、用户的身份认证的证明、用户的服务ID、与DID相关联的公钥、与用户或身份认证的证明相关联的密钥别名、其他合适的信息或其任意组合。在一些实施例中,映射关系可以以加密形式存储。为了存储映射关系,用户代理411可以为DID和其他标识信息中的一项或多项的组合计算哈希值。在一些实施例中,这样的哈希值可以被存储为DID文档的一部分。所存储的映射关系可以允许用户代理441基于从用户侧系统310接收到的信息来识别DID。在一些实施例中,用户代理411可以接收与所获得的DID相关联的请求,其中该请求包括账户标识,然后基于账户标识与所获得的DID之间的映射关系来识别所获得的DID。在其他实施例中,用户代理441可以接收对身份认证的证明的请求,其中该请求包括DID,然后基于身份认证的证明和DID之间的映射关系来定位身份认证的证明。在一些实施例中,用户代理411可以存储用于恢复与和用户的标识信息相关联的DID对应的私钥的恢复密钥。以这种方式,用户代理411可以允许用户使用恢复密钥来控制DID。然后,在步骤1144,用户代理411可以将与DID相关联的信息发送到服务器311,在步骤1146,服务器311可以向用户发送通知,以通知用户DID的成功创建。
图12示出了根据一些实施例的用于使用代理服务认证去中心化标识的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,一方(例如,验证者)可能期望认证另一方(例如,声称的DID的所有者)是DID的真实所有者。认证处理可通过双方都可用的代理服务321来促进。
在一些实施例中,在步骤1202,验证者532可以获得由声称的所有者提供的DID。在步骤1204,验证者532可以将请求发送到代理服务API 410以创建DID认证质询。该请求可以包括待认证的DID和对质询的响应要被发送到的网络地址(例如,URL)。该网络地址可以为验证者532可访问的。在步骤1206,可以将请求从代理服务API 410转发到被配置为执行与DID的认证有关的操作的验证者代理413。在步骤1208,验证者代理413可以将对与待认证的DID相关联的DID文档的查询发送到解析器322。在步骤1210,解析器322可以制定调用用于管理DID的区块链合约331的交易,并将该交易发送到与区块链330相关联的一个或多个区块链节点以供执行。结果,在步骤1212,解析器322可获得与DID相对应的DID文档,并在步骤1214将其转发至验证者代理413。在步骤1216,验证者代理413可以基于获得的DID文档来创建DID认证质询。在一些实施例中,DID认证质询可以包括通过使用与记录在DID文档中的与DID相关联的公钥对原始文本进行加密而创建的密文。质询还可以包括与验证者关联的网络地址,响应将被发送到该网络地址。在步骤1218,验证者代理413可以从DID文档获得与DID的认证服务端点相关联的信息。在步骤1220,验证者代理413可以使用键值结构(key-value structure)将质询的标识存储在存储器中,该质询的标识与和质询相关联的信息相关。例如,验证者代理413可以存储与和待认证的DID相关联的质询关联的质询ID、用于创建密文的明文以及用于发送对质询的响应的网络地址。在步骤1222,验证者代理413可以基于来自DID文档的信息将质询发送至与DID相关联的DID认证服务。
在一些实施例中,在从验证者代理413获得DID认证质询之后,在步骤1224,DID认证服务可以从DID的所有者获得对于这种质询的响应的同意。在步骤1226,如果所有者提供对于身份认证的同意或许可,则DID认证服务可以向与用户代理411相关联的代理服务API410发送对DID认证质询的响应的请求。在步骤1228,代理服务API 410可以调用用户代理411的相应功能以创建对质询的响应。对质询的响应可能要求使用与待认证的DID相关联的私钥恢复用于创建质询中包含的密文的明文。在步骤1230,用户代理411可以将来自质询的密文和由KMS 323识别的与ID相关联的标识信息一起发送到KMS 323以用于解密。KMS 323可以存储多个公钥-私钥对,所述多个公钥-私钥对与账户的标识信息或与该密钥对对应的DID相关联。基于从用户代理411接收到的标识信息,KMS 323可以识别与DID相关联的公钥-私钥对。在一些实施例中,KMS 323可以存储公钥和加密版本的私钥。它可以将加密的私钥发送到与KMS 323关联的TEE以进行解密。然后,可以使用私钥对TEE中的密文进行解密。在步骤1232,用户代理411可以从KMS 323获得解密出的明文。
在步骤1234,用户代理411可以使用明文生成对质询的响应,并将该响应发送回DID认证服务。该响应可以包括原始质询中包含的质询标识。在步骤1236,DID认证服务可以将响应发送到验证者532提供的网络地址。然后,在步骤1238,验证者532可以将响应转发至验证者代理413以进行检查。在步骤1240,验证者代理413可首先将响应中的质询标识与存储在存储器415中的一个或多个质询标识进行比较,以识别与对应于响应的质询关联的信息。然后在步骤1242,验证者代理413可以确定DID的声称所有者是否是实际所有者。在一些实施例中,验证者代理可以确定响应中包含的明文是否与用于创建质询中的密文的明文相同。如果是,则验证者代理413可以确定认证成功。在步骤1244,验证者代理413可以将确认消息发送给验证者,在步骤1246,验证者可以将确认消息转发给DID的所有者。
图13示出了根据一些实施例的用于使用代理服务发布可验证声明的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,第一实体(例如,发布者)可能期望为第二实体(例如,用户)发布VC以证明与第二实体有关的事实。通过实体可用的代理服务321可以促进发布VC的处理。
在一些实施例中,在步骤1302,代理服务API 410可以从发布者531接收用于为与用户相关联的DID创建未签名的VC的请求。在步骤1304,代理服务API 410可以调用发布者代理412以执行生成新的VC的操作。在步骤1306,发布者代理412可以基于从发布者531接收到的请求来创建VC。VC可以包括请求中包含的消息。在一些实施例中,出于机密性原因,VC可以包括加密版本的消息。该消息可以包括关于用户的声明或陈述,或者可被传输至具有对VC的访问权的一方的其他合适的信息或数据。在一些实施例中,VC可以包括与用户的身份认证(例如,实名认证、真人认证)相对应的声明。该请求可以包括用户的DID。发布者代理412可以基于DID直接创建VC。可选地,该请求可以包括与用户(例如,用户在发布VC的实体的账户)相关联的账户标识。在这种情况下,发布者代理412可以从请求中获得与用户相关联的账户标识,并且基于预存储的账户标识和DID之间的映射关系来识别DID。发布者代理412然后可以基于识别的DID创建未签名的VC。发布者代理412还可以计算未签名的VC的内容的哈希值。
在一些实施例中,发布者代理412可以响应于接收到请求而获得与发布者相关联的数字签名。在一些实施例中,可以从KMS 323获得数字签名。在步骤1308,发布者代理412可以确定与发布者531相关联的密钥别名。在步骤1310,发布者代理412可以将针对与发布者531相关联的对VC的数字签名的请求发送到KMS 323。该请求可以包括密钥别名,该密钥别名可以用于识别与发布者531相关联的加密密钥。该请求还可以包括由发布者代理412创建的未签名的VC的哈希值。KMS 323可以存储与实体或用户的密钥别名相关联的多个公钥-私钥对。基于从发布者代理412接收到的密钥别名,KMS 323可以识别与发布者531相关联的公钥-私钥对。在一些实施例中,KMS 323可以存储公钥和加密版本的私钥。它可以将加密的私钥发送到与KMS 323关联的TEE以进行解密。然后可以使用私钥创建发布者对VC的数字签名。可以通过使用私钥对未签名的VC的哈希值进行加密来创建数字签名。在步骤1312,可以将数字签名发送回发布者代理412。然后,在步骤1314,发布者代理412可以将未签名的VC与数字签名结合以组成签名的VC。以这种方式,基于从发布者531接收到的请求和数字签名来生成签名的VC。
在一些实施例中,发布者代理412可以将VC上传到与用户或VC的持有者的DID相关联的服务端点。发布者代理412可以基于与DID相关联的DID文档来识别服务端点。在步骤1316,发布者代理412可以向解析器322发送对与被发布了VC的DID相关联的DID文档的查询。在步骤1318,解析器322可以制定调用用于管理DID的区块链合约331的交易,并将该交易发送到与区块链330相关联的一个或多个区块链节点以供执行。该交易可以包括与DID相关联的信息,并且可以用于检索与该DID相对应的DID文档。结果,在步骤1320,解析器322可获得与DID相对应的DID文档,并在步骤1322将其转发至SDK 312。基于DID文档,发布者代理412可以从DID文档获得与DID的服务端点(例如,VC存储库414)相关联的信息(例如,网络地址)。在步骤1324,发布者代理412可以将VC上传到服务端点。
在一些实施例中,发布者代理412可以存储VC的状态。VC的状态可以被存储在区块链330中。在一些实施例中,与VC的发布者531相关联的服务端点可以使用区块链330。在步骤1326,发布者代理412可以将VC的状态(例如,有效、无效)和VC的哈希值发送到解析器322以存储在区块链330中。在步骤1328,解析器322可以生成用于将与VC相关联的信息添加至区块链的区块链交易并将其发送至与服务端点相关联的区块链330的区块链节点。该信息可以包括VC的状态和哈希值。在一些实施例中,区块链交易可以调用用于管理VC的区块链合约331。在将交易发送到区块链节点之后,解析器322可以在步骤1330确定已经成功存储了VC的哈希值和状态,并且在步骤1332可以将确认发送至发布者代理412。在一些实施例中,VC的状态也可以被本地存储。在步骤1334,发布者代理412可以将VC及其状态存储在数据库416中。发布者代理412可以在步骤1336接收成功存储的确认,在步骤1338将确认发送至代理服务API 410,然后在步骤1340,代理服务API 410可以向发布者531发送指示VC已经成功创建的确认。发送至发布者的确认可以包括已经创建的VC。
在一些实施例中,可以将VC提供给用户或VC的持有者。在步骤1342,发布者代理412可以将VC和/或VC的状态发送至与VC的持有者的用户代理411相关联的代理服务API410。在步骤1344,代理服务API 410可以调用用户代理411以上传VC。这里,用户代理411可以用作VC持有者的DID的服务端点。用户代理411可以在与发布者代理412相同的物理系统上实现。在步骤1346,用户代理411可以将VC保存到数据库416。在成功保存VC之后,在步骤1348,数据库416可以将成功确认返回给用户代理411。在步骤1350,用户代理411可以将确认发送至代理服务API 410,在步骤1352,代理服务API 410可以将确认转发给发布者代理412。
图14示出了根据一些实施例的用于使用代理服务验证可验证声明的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,VC的持有者(或VC的对象)可以向第一实体(例如,验证者)展示由第二实体(例如,VC的发布者)发布的VC。验证者可以借助于代理服务321来验证VC。
在一些实施例中,在步骤1402,代理服务API 410可以从验证者532接收验证VC的请求。VC可以包括与VC的发布者相关联的数字签名。在步骤1404,代理服务API 410可以调用验证者代理413的函数以验证VC。在一些实施例中,验证者532可以已经从VC的持有者直接获得了VC。可选地,验证者532可能仅接收到与VC的对象相关联的账户标识。验证者532可以通过以下获得VC:基于账户标识和DID之间的预存储的映射关系来获得与VC的对象相关联的DID、获得与DID相关联的DID文档、从DID文档获得与用于管理VC的服务端点相关联的信息以及从服务端点获得VC。
在一些实施例中,验证者代理413可以验证VC的状态。验证者代理413可以使用步骤1406a、1408a、1410a和1412a或者步骤1406b、1408b、1410b和1412b获得并验证状态。在一些实施例中,验证者代理413可以从存储与多个VC相关联的信息的区块链获得VC的状态。在步骤1406a,验证者代理413可以向解析器322发送对VC的状态的查询。该查询可以包括VC的标识。在步骤1408a,解析器322可以创建用于检索哈希值和VC的状态的区块链交易,并将其发送到与区块链300相关联的一个或多个区块链节点。区块链交易可以包括VC的对象的DID,并且可以调用用于管理VC的区块链合约331。在步骤1410a,解析器322可以从区块链330获得VC的状态以及与VC相关联的哈希值。然后在步骤1412a,解析器322可以将哈希值和状态发送给验证者代理413以进行验证。验证者代理413可以通过对由持有者提供的VC应用哈希函数来计算哈希值。验证者代理413可以通过将从区块链330接收的哈希值与计算出的哈希值进行比较来认证接收到的VC的状态。如果它们相同,则验证者代理413可以确定接收到的状态确实对应于VC。如果状态指示VC有效,则验证者代理413可以完成该验证步骤。
在一些实施例中,验证者代理413可以从与VC相关联的服务端点获得VC的状态。在一些实施例中,服务端点可以对应于与发布者相关联的发布者代理412。在步骤1406b,验证者代理413可以向发布者代理412发送对VC的状态的查询。发布者代理412可以在步骤1408b向数据库416查询VC的状态,并且在步骤1410b获得VC的状态和对应的哈希值。在步骤1412b,发布者代理412可以将哈希值和状态发送给验证者代理413。验证者代理413可以以上述方式认证该状态并验证VC有效。
在一些实施例中,验证者代理413可以确定VC是由对VC标识的发布者发布的。验证者代理413可以基于VC获得与发布者相关联的公钥。验证者代理413可以基于VC中的标识来识别发布者。在一些实施例中,标识可以包括发布者的DID。可以基于发布者的DID从区块链330获得公钥。在步骤1414,验证者代理413可以向解析器322发送对与发布者相关联的公钥的请求。该请求可以包括发布者的DID。在步骤1416,解析器322可以创建调用用于基于DID检索公钥或DID文档的区块链合约331的区块链交易,并将区块链交易发送到区块链330的区块链节点。解析器322可以在步骤1418获得公钥(例如,通过从DID文档中检索),并且在步骤1420将公钥转发给验证者代理413。然后,在步骤1422,验证者代理413可以通过确定数字签名是基于与公钥相关联的私钥创建的来使用公钥验证VC。在一些实施例中,验证者代理413可以验证关于VC的一个或多个其他事实。例如,验证者代理413可以从VC获得VC的发布日期,并且基于所获得的发布日期和当前日期之间的比较来验证所获得的发布日期。作为另一示例,验证者代理413可以从VC获得VC的到期日期,并且基于到期日期和当前日期来验证VC尚未到期。如果VC的验证成功,则在步骤1424验证者代理可以将确认发送到代理服务API 410。在步骤1426,代理服务API 410可以向验证者532发送确认验证了VC的消息。
图15示出了根据一些实施例的用于基于身份认证获得去中心化标识的方法。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。在一些实施例中,在步骤1510,服务侧系统320可以从用户侧系统310接收用于创建DID的请求。为了创建DID,服务侧系统320可以要求待创建的DID的所有者的身份认证。在一些实施例中,服务侧系统320可以确定请求包括身份认证的证明。例如,请求可以包括身份认证的证明以及与对应于DID的用户相关联的账户标识之间的关系。服务侧系统320可以从请求直接获得所要求的身份认证的证明。
在一些实施例中,服务侧系统320可以确定请求不包括身份认证的证明并且可以进行到基于接收到的请求获得身份认证的证明。在步骤1520,服务侧系统320可以基于请求获得一个或多个标识。标识可以包括与用户侧系统310相关联的实体的标识、与待创建的DID相对应的用户的标识、其它合适的识别信息或者其任意组合。在步骤1530,服务侧系统320可以向身份认证系统340发送针对身份认证的证明的请求。请求可以包括根据请求获得的一个或多个标识。身份认证系统340可以基于一个或多个标识识别身份认证的证明。如果没有身份认证的证明能够被识别,则身份认证系统340可以认证在请求中标识的用户的身份并且创建身份认证的证明。在步骤1540,身份认证系统340可以向服务侧系统320发送所请求的身份认证的证明。在一些实施例中,身份认证的证明可以包括真人认证的证明、实名认证的证明、其它适合的证明或者其任意组合。
在一些实施例中,在获得身份认证的证明之后,在步骤1550,服务侧系统320可以进行到基于身份认证的证明获得DID。DID可以使用本文公开的一种或多种方法获得。例如,服务侧系统320可以获得公钥并且基于公钥生成一个或多个区块链交易,用于创建DID并且将与DID相关联的DID文档添加到区块链。区块链交易可以被发送到与区块链330相关联的一个或多个区块链节点以供执行。在一些实施例中,服务侧系统320也可以基于身份认证的证明生成VC并且将VC上传到与所获得的DID相关联的服务端点以进行存储。
在一些实施例中,在步骤1560,服务侧系统320可以存储身份认证的证明与DID之间的映射关系。例如,服务侧系统320可以生成秘钥别名并且存储身份认证的证明、与DID相关联的公钥以及秘钥别名之间的映射关系。所存储的映射关系可以用于在未来提供关于身份认证的信息。例如,服务侧系统320可以接收对于身份认证的证明的请求,其中请求包括所获得的DID。服务侧系统320可以基于身份认证的证明与DID之间的映射关系定位身份认证的证明并且向请求方提供身份认证的证明。
图16示出了根据一些实施例的获得身份认证的证明的方法。在一些实施例中,客户端侧应用342和存储在区块链系统330上的数据可以用于认证用户的身份并且生成身份认证的证明。这样的身份认证的证明能够用于根据图6、图11和图15示出的实施例来创建或者验证DID。以下呈现的方法的操作旨在是说明性的。取决于实施方式,所述方法可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。
在一些实施例中,在步骤1610,用于创建用户的DID的系统可以向身份服务341发送对于用户的身份认证的请求。发送请求的系统可以例如包括与服务侧系统320相关联的代理321、与用户侧系统310相关联的服务器311、另一适合的系统或者其任意组合。图16示出了作为示例的代理321。在步骤1620,身份服务341可以通过向区块链系统330发送请求来发起真人身份认证的处理。请求可以是发送到一个或多个区块链节点以供执行的一个或多个区块链交易的形式或者是发送到与区块链330相关联的接口系统(例如,BaaS云324)的请求的形式。请求可以包括与用户相关联的一个或多个标识并且可以查询存储在区块链中的与用户相关联的身份信息(例如,一个或多个外貌特征)。
响应于请求,在步骤1630,用户的身份信息可以从区块链系统330获得并且提供到客户端侧应用342。在一些实施例中,客户端侧应用342可以被安装在与用户相关联的客户端设备上并且可以访问与客户端设备相关联的一个或多个传感器。客户端侧应用342和客户端设备可以基于与待创建的DID相对应的用户的登录来确定。在一些实施例中,身份服务341可以向客户端侧应用发送用于获得与身份认证的对象的一个或多个特征相关联的数据的指令。例如,身份服务341可以向客户端侧应用342发送使用客户端设备上的一个或多个相机捕获用户的一个或多个图像的指令。身份认证的证明可以基于由客户端侧应用342收集的数据获得。例如,身份服务341可以向客户端侧应用342发送将所获得的与对象的一个或多个特征相关联的数据和与对象的标识相关联的预存储的数据进行比较的指令。预存储的数据可以从与身份服务341相关联的数据库获得或者可以从区块链330获得,如上所述。
在一些实施例中,可以包括客户端侧应用342和身份服务341的身份认证系统340可以基于由客户端侧应用342收集的数据执行真人认证。身份认证系统340可以结合诸如面部识别和活体检测的功能。面部识别功能可以从图像识别面部并且将经识别的面部的特征与一个或多个其它面部的特征进行比较。这可以用于识别图像中的一个或多个用户。活体检测功能可以将真人的图像与另一图像/视频的图像区分开并且可以使用运行客户端侧应用342的客户端设备验证被认证的用户是真人。在一些实施例中,身份认证系统340可以将存储在区块链330上的身份信息视为权威信息。身份信息可以包括用户面部的一个或多个特征。身份认证系统340可以将由客户端侧应用342收集到的信息(例如,用户的一个或多个图像)与从区块链330获得的权威信息进行比较以验证登录到客户端侧应用342的用户与存储在区块链330上的身份相对应。在步骤1640,如果用户的认证成功,则客户端侧应用342可以向身份认证的请求方(例如,代理321)返回确定真人认证完成的消息。身份认证系统340也可以通过向一个或多个区块链节点发送一个或多个区块链交易或者通过向与区块链330相关联的系统(例如,BaaS云324)发送一个或多个请求来将身份认证的结果(例如身份认证的证明)存储在区块链系统330中。
在一些实施例中,身份认证的证明的请求方(例如,代理321)可以从区块链系统330接受并且直接获得身份认证的证明。按照这一方式,可能不需要在步骤1610-1640中描述的实时身份认证。在步骤1650,代理321可以向身份服务341发送针对身份认证的证明的请求。在步骤1660,身份服务341可以针对身份认证的证明查询区块链系统330。在一些实施例中,身份服务341可以向与存储身份认证关联信息的区块链330相关联的区块链节点发送用于查询身份认证的证明的区块链交易。在步骤1670,身份服务341可以从区块链系统330获得身份认证的证明。在步骤1680,身份服务341可以向代理321发送身份认证的证明。
图17示出了根据一些实施例的用于将去中心化标识映射到真实实体的方法的流程图。方法1700可以由用于将去中心化标识映射到真实实体的设备、装置或者系统执行。方法1700可以由图1至图5示出的环境或系统的一个或多个组件执行,例如服务侧系统320的一个或多个组件。取决于实施方式,方法1700可以包括以各种次序或并行执行的附加的、更少的或可选的步骤。
框1710包括接收用于获得DID的请求。在一些实施例中,该方法还包括,在接收用于创建DID的请求之后,确定用于创建DID的请求包括身份认证的证明并且基于确定该请求包括身份认证的证明来接受该请求。在一些实施例中,该方法还包括,在接收用于创建DID的请求之后,确定用于创建DID的请求不包括身份认证的证明,向用于创建DID的请求的发送者发送对身份认证的证明的请求,并且从用于创建DID的请求的发送者接收身份认证的证明。
框1720包括基于接收到的请求获得身份认证的证明。在一些实施例中,身份认证的证明包括真人认证的证明或者实名认证的证明。在一些实施例中,获得身份认证的证明包括从请求获得身份认证的证明,其中请求保护身份认证的证明与账户标识之间的关系。在一些实施例中,获得身份认证的证明包括向与存储身份认证关联信息的区块链相关联的区块链节点发送用于查询身份认证的证明的区块链交易,并且响应于区块链交易在区块链中被成功执行,从区块链获得身份认证的证明。
在一些实施例中,获得身份认证的证明包括向与身份认证的证明的对象相关联的客户端侧应用发送获得与对象的一个或多个特征相关联的数据的指令并且基于所获得的数据来获得身份认证的证明。在一些实施例中,发送获得与对象的一个或多个特征相关联的数据的指令包括向客户端侧应用发送捕获对象的一个或多个图像的指令。在一些实施例中,发送获得与对象的一个或多个特征相关联的数据的指令包括向客户端侧应用发送将所获得的与对象的一个或多个特征相关联的数据和与对象的标识相关联的预存储的数据进行比较的指令。
框1730包括基于身份认证的证明获得DID。在一些实施例中,获得DID包括生成秘钥别名、获得加密密钥对的公钥并且存储身份认证的证明、公钥和秘钥别名之间的映射关系。在一些实施例中,获得DID还包括基于公钥生成用于创建DID的一个或多个区块链交易并且将与DID相关联的DID文档添加到区块链。
框1740包括存储身份认证的证明与DID之间的映射关系。在一些实施例中,所述方法还包括接收对于身份认证的证明的请求,其中请求包括所获得的DID,并且基于身份认证的证明与DID之间的映射关系定位身份认证的证明。
在一些实施例中,所述方法还包括基于身份认证的证明来生成可验证声明(VC)并且将VC上传到与所获得的DID相关联的服务端点。
图18示出了根据一些实施例的用于将去中心化标识映射到真实实体的计算机系统的框图。系统1800可以是图3的服务侧系统320的一个或多个部件或者图1至图5中所示的一个或多个其它部件的实施方式的示例。方法1700可以由计算机系统1800实现。计算机系统1800可以包括一个或多个处理器以及一个或多个非暂时性计算机可读存储介质(例如,一个或多个存储器),该一个或多个非暂时性计算机可读存储介质耦接到一个或多个处理器并且配置有能够由一个或多个处理器执行以使得系统或者设备(例如,处理器)执行上述方法(例如,方法1700)的指令。计算机系统1800可以包括与指令(例如,软件指令)相对应的各种单元/模块。在一些实施例中,计算机系统1800可以被称为用于将去中心化标识映射到真实实体的装置。该装置可以包括:接收模块1810,用于接收用于获得DID的请求;第一获得模块1820,用于基于接收到的请求获得身份认证的证明;第二获得模块1830,用于基于身份认证的证明获得DID;以及存储模块1840,用于存储身份认证的证明与DID之间的映射关系。
这里描述的技术由一个或多个专用计算设备实现。专用计算设备可以是台式计算机系统、服务器计算机系统、便携式计算机系统、手持设备、网络设备或包含硬连线和/或程序逻辑以实现这些技术的任何其他设备或设备的组合。专用计算设备可以被实现为个人计算机、膝上型计算机、蜂窝电话、照相电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板电脑、可穿戴设备或其组合。计算设备通常由操作系统软件控制和协调。传统的操作系统控制和调度用于执行的计算机进程,执行存储器管理,提供文件系统、网络、I/O服务,以及提供用户接口功能,例如图形用户界面(“GUI”)等。这里描述的各种系统、装置、存储介质、模块和单元可以在专用计算设备或者一个或多个专用计算设备的一个或多个计算芯片中实现。在一些实施例中,这里描述的指令可以在专用计算设备上的虚拟机中实现。当被执行时,所述指令可以促使专用计算设备执行本文描述的各种方法。虚拟机可以包括软件、硬件或其组合。
图19示出了可以实现本文描述的任何实施例的计算机系统的框图。系统1900可以在图1至图5所示的环境或系统的任何组件中实现。可以在系统1900上实现和操作图1至图5中所示的软件应用或服务。图6至图17所示的一个或多个示例性方法可以由计算机系统1900的一个或多个实施方式执行。
计算机系统1900可以包括用于对信息进行通信的总线1902或其他通信机制、与总线1902耦接以处理信息的一个或多个硬件处理器1904。硬件处理器1904可以是例如一个或多个通用微处理器。
计算机系统1900还可以包括耦接到总线1902、用于存储可由处理器1904执行的信息和指令的主存储器1906,例如随机存取存储器(RAM)、高速缓存和/或其他动态存储设备。主存储器1906还可以用于在执行可由处理器1904执行的指令期间存储临时变量或其他中间信息。当这些指令存储在处理器1904可访问的存储介质中时,这些指令将计算机系统1900呈现为被定制以执行指令中指定的操作的专用机器。计算机系统1900还可以包括耦接到总线1902、用于存储处理器1904的静态信息和指令的只读存储器(ROM)1908或其他静态存储设备。诸如磁盘、光盘或USB拇指驱动器(闪存驱动器)等的存储设备1910可以被提供并被耦接到总线1902以存储信息和指令。
计算机系统1900可以使用与计算机系统相结合使得计算机系统1900成为专用机器或将计算机系统1900编程为专用机器的定制硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑实现本文所述的技术。根据一个实施例,这里描述的操作、方法和处理由计算机系统1900响应于处理器1904执行主存储器1906中包含的一个或多个指令的一个或多个序列而执行。这些指令可以从例如存储设备1910的另一存储介质读入主存储器1906。主存储器1906中包含的指令序列的执行可以促使处理器1904执行这里描述的处理步骤。在替代实施例中,可以使用硬连线电路代替软件指令或与软件指令组合。
主存储器1906、ROM 1908和/或存储设备1910可以包括非暂时性存储介质。这里使用的术语“非暂时性介质”和类似术语是指存储促使机器以特定方式操作的数据和/或指令的介质,所述介质不包括暂时性信号。这种非暂时性介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,例如存储设备1910。易失性介质包括动态存储器,例如主存储器1906。常规形式的非暂时性介质包括,例如,软磁盘、软盘、硬盘、固态驱动器、磁带或任何其他磁数据存储介质、CD-ROM、任何其他光学数据存储介质、具有孔图案的任何物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他存储器芯片或盒式磁带以及它们的网络版本。
计算机系统1900还可以包括耦接到总线1902的网络接口1918。网络接口1918可以提供耦接到一个或多个网络链路的双向数据通信,所述一个或多个网络链路连接到一个或多个本地网络。例如,网络接口1918可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或调制解调器,以提供与相应类型的电话线的数据通信连接。作为另一示例,网络接口1918可以是局域网(LAN)卡,以提供与兼容LAN(或WAN组件以与WAN通信)的数据通信连接。还可以实现无线链路。在任何这样的实施方式中,网络接口1918可以发送和接收携带表示各种类型的信息的数字数据流的电信号、电磁信号或光信号。
计算机系统1900可以通过网络、网络链路和网络接口1918发送消息和接收数据,包括程序代码。在互联网示例中,服务器可以通过互联网、ISP、本地网络和网络接口1918发送用于应用程序的请求代码。
所接收的代码当被接收时可以由处理器1904执行,和/或存储在存储设备1910或其他非易失性存储器中以用于稍后执行。
前面部分中描述的每个处理、方法和算法可以体现在由包括计算机硬件的一个或多个计算机系统或者计算机处理器执行的代码模块中并且被其完全或部分自动化地实现。处理和算法可以部分或全部地在专用电路中实现。
上述各种特征和处理可以彼此独立地使用,或者可以以各种方式组合。所有可能的组合和子组合都旨在落入本文的范围内。另外,在一些实施方式中可以省略某个方法或处理框。本文描述的方法和处理也不限于任何特定顺序,与其相关的框或状态可以以适当的其他顺序执行。例如,所描述的框或状态可以以不同于具体公开的顺序执行,或者多个框或状态可以在单个框或状态中组合。框或状态的示例可以串行、并行或以某种其他方式执行。可以将框或状态添加到所公开的实施例中或从所公开的实施例中移除。这里描述的系统和组件的示例可以与所描述的不同地被配置。例如,与所公开的实施例相比,可以添加、移除或重新布置元件。
本文描述的方法的各种操作可以至少部分地由被临时配置(例如,通过软件)或被永久配置为执行相关操作的一个或多个处理器执行。无论是临时配置还是永久配置,这样的处理器可以构成处理器实现的引擎,所述处理器实现的引擎用于执行本文描述的一个或多个操作或功能。
类似地,这里描述的方法可以至少部分地由处理器实现,其中特定处理器是硬件的示例。例如,所述方法的至少一些操作可以由一个或多个处理器或处理器实现的引擎执行。此外,一个或多个处理器还可操作以支持“云计算”环境中的相关操作的性能,或作为“软件即服务”(SaaS)操作。例如,至少一些操作可以由一组计算机(作为包括处理器的机器的示例)执行,这些操作可以经由网络(例如,互联网)以及经由一个或多个适当的接口(例如,应用程序接口(API))被访问。
某些操作的性能可以在处理器之间分配,不仅驻留在单个机器中,而且跨多个机器被部署。在一些实施例中,处理器或处理器实现的引擎可以位于单个地理位置(例如,在家庭环境、办公室环境或服务器群内)。在其他实施例中,处理器或处理器实现的引擎可以分布在多个地理位置。
在本文中,多个实例可以实现作为单个实例所描述的组件、操作或结构。尽管一种或多种方法的各个操作被示出并描述为独立的操作,但是可以同时执行一个或多个独立的操作,并且不需要以所示的顺序执行所述操作。在配置中作为独立组件呈现的结构和功能可以实现为组合结构或组件。类似地,作为单个组件呈现的结构和功能可以实现为独立的组件。这些和其他变化、修改、添加和改进都落入本文中的主题的范围内。
尽管已经参考具体实施例描述了主题的概述,但是在不脱离本文的实施例的较宽范围的情况下,可以对这些实施例进行各种修改和改变。具体实施方式不应被视为具有限制意义,并且各种实施例的范围仅由所附权利要求以及这些权利要求所赋予的等同物的全部范围限定。此外,这里使用的相关术语(诸如“第一”、“第二”、“第三”等)不表示任何顺序、高度或重要性,而是用于将一个元件与另一元件区分开。此外,术语“一”、“一个”和“多个”在本文中并不表示对数量的限制,而是表示存在至少一个所述的物品。

Claims (18)

1.一种计算机实现的用于将去中心化标识DID映射到真实实体的方法,应用于基于区块链搭建的在线平台,所述方法包括:
接收用于获得DID的请求;
基于接收到的请求获得身份认证的证明;
基于所述身份认证的证明获得所述DID;以及
存储所述身份认证的证明与所述DID之间的映射关系。
2.根据权利要求1所述的方法,其中,所述身份认证的证明包括:
真人认证的证明;或者
实名认证的证明。
3.根据权利要求1至2中任一项所述的方法,其中,所述获得身份认证的证明包括:
从所述请求获得所述身份认证的证明,其中,所述请求包括所述身份认证的证明与账户标识之间的关系。
4.根据权利要求1至2中任一项所述的方法,还包括,在接收所述用于创建DID的请求之后:
确定所述用于创建DID的请求包括所述身份认证的证明;以及
基于确定所述请求包括所述身份认证的证明来接受所述请求。
5.根据权利要求1至2中任一项所述的方法,还包括,在接收所述用于创建DID的请求之后:
确定所述用于创建DID的请求不包括身份认证的证明;
向所述用于创建DID的请求的发送者发送对于所述身份认证的证明的请求;以及
从所述用于创建DID的请求的所述发送者接收所述身份认证的证明。
6.根据权利要求1至2中任一项所述的方法,其中,所述获得身份认证的证明包括:
向与存储身份认证关联信息的区块链相关联的区块链接节点发送针对所述身份认证的证明进行查询的区块链交易;以及
响应于所述区块链交易在所述区块链中被成功执行,从所述区块链获得所述身份认证的证明。
7.根据权利要求1所述的方法,其中,所述获得身份认证的证明,包括:
向与身份认证的证明的对象相关联的客户端侧应用,发送用于获得与所述对象的一个或多个特征相关联的数据的指令;以及,
基于所获得的数据来获得所述身份认证的证明。
8.根据权利要求7所述的方法,其中,用于获得与所述对象的一个或多个特征相关联的数据的指令包括:用于捕获所述对象的一个或多个图像的指令。
9.根据权利要求7所述的方法,其中,发送用于获得与所述对象的一个或多个特征相关联的数据的指令,包括:
向所述客户端侧应用发送用于将所获得的与所述对象的一个或多个特征相关联的数据和预存储的与所述对象的标识相关联的数据进行比较的指令。
10.根据权利要求1所述的方法,其中,获得DID包括:
生成秘钥别名;
获得加密密钥对的公钥;以及
存储所述身份认证的证明、所述公钥和所述秘钥别名之间的映射关系。
11.根据权利要求10所述的方法,其中,获得DID还包括:
基于所述公钥生成用于创建所述DID以及将与所述DID相关联的DID文档添加到区块链的一个或多个区块链交易。
12.根据权利要求1所述的方法,还包括:
基于所述身份认证的证明生成可验证声明VC;以及
将所述VC上传到与所获得的DID相关联的服务端点。
13.根据权利要求1所述的方法,还包括:
接收针对所述身份认证的证明的请求,其中,所述请求包括所获得的DID;以及
基于所述身份认证的证明与所述DID之间的映射关系来定位所述身份认证的证明。
14.根据权利要求1所述的方法,所述在线平台还可以集成有下述组件至少之一:
云应用、代理服务、解析器服务、用户应用、应用程序接口服务、秘钥管理系统、身份认证系统。
15.根据权利要求1所述的方法,所述在线平台提供下述至少之一的在线功能:
身份认证功能、去中心化身份管理功能、加密秘钥信托功能。
16.一种用于将去中心化标识DID映射到真实实体的系统,包括:
一个或多个处理器;以及
耦接到所述一个或多个处理器并且具有存储在其上的指令的一个或多个计算机可读存储器,所述指令能够由所述一个或多个处理器执行以执行权利要求1至15中任一项所述的方法。
17.一种配置有指令的非暂时性计算机可读存储介质,所述指令能够由一个或多个处理器执行以使得所述一个或多个处理器执行权利要求1至15中任一项所述的方法。
18.一种用于将去中心化标识DID映射到真实实体的装置,所述装置包括用于执行权利要求1至15中任一项所述的方法的多个模块。
CN202310957102.1A 2019-07-02 2019-07-09 用于将去中心化标识映射到真实实体的系统和方法 Pending CN116910726A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
PCT/CN2019/094396 WO2019179533A2 (en) 2019-07-02 2019-07-02 System and method for issuing verifiable claims
CNPCT/CN2019/094396 2019-07-02
CN201980004578.5A CN111164594B (zh) 2019-07-02 2019-07-09 用于将去中心化标识映射到真实实体的系统和方法
PCT/CN2019/095299 WO2021000337A1 (en) 2019-07-02 2019-07-09 System and method for mapping decentralized identifiers to real-world entities

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201980004578.5A Division CN111164594B (zh) 2019-07-02 2019-07-09 用于将去中心化标识映射到真实实体的系统和方法

Publications (1)

Publication Number Publication Date
CN116910726A true CN116910726A (zh) 2023-10-20

Family

ID=68699004

Family Applications (5)

Application Number Title Priority Date Filing Date
CN202310957102.1A Pending CN116910726A (zh) 2019-07-02 2019-07-09 用于将去中心化标识映射到真实实体的系统和方法
CN201980004578.5A Active CN111164594B (zh) 2019-07-02 2019-07-09 用于将去中心化标识映射到真实实体的系统和方法
CN201980004748.XA Active CN111295869B (zh) 2019-07-02 2019-08-30 用于认证去中心化标识的系统和方法
CN201980004741.8A Active CN111213350B (zh) 2019-07-02 2019-08-30 用于创建去中心化标识的系统和方法
CN201980004590.6A Active CN111183426B (zh) 2019-07-02 2019-08-30 基于区块链的通知的系统和方法

Family Applications After (4)

Application Number Title Priority Date Filing Date
CN201980004578.5A Active CN111164594B (zh) 2019-07-02 2019-07-09 用于将去中心化标识映射到真实实体的系统和方法
CN201980004748.XA Active CN111295869B (zh) 2019-07-02 2019-08-30 用于认证去中心化标识的系统和方法
CN201980004741.8A Active CN111213350B (zh) 2019-07-02 2019-08-30 用于创建去中心化标识的系统和方法
CN201980004590.6A Active CN111183426B (zh) 2019-07-02 2019-08-30 基于区块链的通知的系统和方法

Country Status (5)

Country Link
US (7) US10924284B2 (zh)
EP (4) EP3704620B1 (zh)
CN (5) CN116910726A (zh)
SG (3) SG11202004456TA (zh)
WO (3) WO2019228555A2 (zh)

Families Citing this family (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11604868B2 (en) * 2019-03-21 2023-03-14 BadgeCert Inc. Systems and methods for leveraging internet identity for digital credentialing
US11392467B2 (en) * 2019-04-17 2022-07-19 Microsoft Technology Licensing, Llc Failover between decentralized identity stores
US11381567B2 (en) 2019-04-29 2022-07-05 Microsoft Technology Licensing, Llc Execution of an application within a scope of user-granted permission
US11429743B2 (en) 2019-04-29 2022-08-30 Microsoft Technology Licensing, Llc Localization of DID-related claims and data
US11411959B2 (en) 2019-05-03 2022-08-09 Microsoft Technology Licensing, Llc Execution of application in a container within a scope of user-granted permission
EP3688930B1 (en) 2019-07-02 2021-10-20 Advanced New Technologies Co., Ltd. System and method for issuing verifiable claims
CN111316303B (zh) 2019-07-02 2023-11-10 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
EP3721603B1 (en) 2019-07-02 2021-12-08 Advanced New Technologies Co., Ltd. System and method for creating decentralized identifiers
SG11202003792QA (en) 2019-07-02 2020-05-28 Advanced New Technologies Co Ltd System and method for verifying verifiable claims
CN116910726A (zh) 2019-07-02 2023-10-20 创新先进技术有限公司 用于将去中心化标识映射到真实实体的系统和方法
CN111213147B (zh) 2019-07-02 2023-10-13 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
WO2021033262A1 (ja) * 2019-08-20 2021-02-25 日本電信電話株式会社 ユーザクレデンシャル制御システムおよびユーザクレデンシャル制御方法
CN111373402B (zh) 2019-11-08 2022-03-25 支付宝(杭州)信息技术有限公司 轻量去中心化应用平台
WO2020035089A2 (en) 2019-11-08 2020-02-20 Alipay (Hangzhou) Information Technology Co., Ltd. System and method for blockchain-based decentralized application development
US11012233B1 (en) * 2020-01-22 2021-05-18 Coinplug, Inc. Method for providing authentication service by using decentralized identity and server using the same
US20230036353A1 (en) * 2020-01-27 2023-02-02 Sony Group Corporation Communication network node, user equipment, communication network, method
SG11202013145YA (en) 2020-02-03 2021-01-28 Alipay Hangzhou Inf Tech Co Ltd Blockchain-based trustable guarantees
CN111417945B (zh) * 2020-02-03 2022-06-17 支付宝(杭州)信息技术有限公司 基于区块链的可信保函
WO2020098837A2 (en) 2020-02-03 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable guarantees
EP3794773B1 (en) 2020-02-03 2022-09-07 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable guarantees
SG11202012851YA (en) 2020-02-03 2021-01-28 Alipay Hangzhou Inf Tech Co Ltd Blockchain-based trustable guarantees
SG11202013137TA (en) 2020-02-03 2021-01-28 Alipay Hangzhou Inf Tech Co Ltd Blockchain-based trustable guarantees
EP3799642B1 (en) * 2020-02-14 2022-06-29 Alipay (Hangzhou) Information Technology Co., Ltd. Data authorization based on decentralized identifiers
US20210273931A1 (en) * 2020-02-27 2021-09-02 Microsoft Technology Licensing, Llc Decentralized authentication anchored by decentralized identifiers
US11587084B2 (en) * 2020-02-28 2023-02-21 Microsoft Technology Licensing, Llc Decentralized identification anchored by decentralized identifiers
US11411736B2 (en) * 2020-03-03 2022-08-09 Microsoft Technology Licensing, Llc Automatic renewal of a verifiable claim
CN111527489A (zh) 2020-03-13 2020-08-11 支付宝(杭州)信息技术有限公司 基于去中心化标识的数据授权
US20210314293A1 (en) * 2020-04-02 2021-10-07 Hewlett Packard Enterprise Development Lp Method and system for using tunnel extensible authentication protocol (teap) for self-sovereign identity based authentication
CN111193597B (zh) * 2020-04-10 2020-07-31 支付宝(杭州)信息技术有限公司 一种可验证声明的传输方法、装置、设备及系统
US11218481B2 (en) * 2020-06-04 2022-01-04 Verizon Patent And Licensing Inc. Personal identity system
CN114930330A (zh) 2020-06-08 2022-08-19 支付宝实验室(新加坡)有限公司 基于区块链的海关清关服务平台的用户管理
EP3844655B1 (en) 2020-06-08 2023-05-03 Alipay Labs (Singapore) Pte. Ltd. Managing user authorizations for blockchain-based custom clearance services
WO2020169124A2 (en) 2020-06-08 2020-08-27 Alipay Labs (singapore) Pte. Ltd. Distributed storage of custom clearance data
EP3844699A4 (en) 2020-06-08 2021-08-18 Alipay Labs (Singapore) Pte. Ltd. BLOCKCHAIN-BASED PROCESSING OF IMPORT CLEARANCE DATA
CN111936994A (zh) 2020-06-08 2020-11-13 支付宝实验室(新加坡)有限公司 用于海关清关的基于区块链的文档注册
CN111989663A (zh) 2020-06-08 2020-11-24 支付宝实验室(新加坡)有限公司 基于区块链的智能合约池
KR102412852B1 (ko) 2020-06-26 2022-06-27 주식회사 코인플러그 탈중앙화 아이디 기반의 가상 자산 서비스 제공 방법 및 이를 이용한 가상 자산 서비스 제공 서버
JP7462903B2 (ja) * 2020-07-01 2024-04-08 日本電信電話株式会社 利用者端末、認証者端末、登録者端末、管理システムおよびプログラム
CN112818380A (zh) * 2020-07-10 2021-05-18 支付宝(杭州)信息技术有限公司 业务行为的回溯处理方法、装置、设备及系统
CN111818491A (zh) * 2020-07-10 2020-10-23 成都淞幸科技有限责任公司 一种5g环境d2d场景下去中心化身份管理的方法
CN111813795B (zh) 2020-08-28 2020-12-04 支付宝(杭州)信息技术有限公司 在区块链网络中确认交易的方法及装置
US11968301B2 (en) * 2020-09-10 2024-04-23 International Business Machines Corporation Decentralized asset identifiers for cross-blockchain networks
JP7100330B1 (ja) * 2020-10-06 2022-07-13 株式会社Gfs 押印管理方法、押印管理装置、プログラム、及び情報処理方法
CN112565184B (zh) * 2020-10-30 2023-01-31 重庆恢恢信息技术有限公司 一种智慧工地数据安全工作系统
KR102263202B1 (ko) * 2020-11-18 2021-06-10 주식회사 마크애니 분산 ID 를 이용한 IoT 디바이스의 인증 방법 및 시스템
KR102542880B1 (ko) * 2020-11-30 2023-06-15 한국전자통신연구원 개인정보 관리 장치 및 방법
CN112507391B (zh) * 2020-12-01 2024-01-30 杭州企达信息技术有限公司 基于区块链的电子签章方法、系统、装置及可读存储介质
CN112199714B (zh) * 2020-12-04 2021-09-07 支付宝(杭州)信息技术有限公司 基于区块链的隐私保护方法、装置及电子设备
CN112738253B (zh) * 2020-12-30 2023-04-25 北京百度网讯科技有限公司 基于区块链的数据处理方法、装置、设备及存储介质
CN112822010B (zh) * 2021-01-28 2022-08-26 成都信息工程大学 一种基于量子密钥和区块链的可移动存储介质管理方法
KR102465467B1 (ko) * 2021-02-22 2022-11-09 주식회사 블록체인기술연구소 Did 기반의 탈중앙화된 사용자 데이터 저장 및 공유 시스템
WO2022184558A1 (en) * 2021-03-01 2022-09-09 Sony Group Corporation Communication network nodes, methods for providing communication network nodes, terminal device, method for operating a terminal device, methods for communication networks
EP4315744A1 (en) * 2021-03-31 2024-02-07 Sony Group Corporation Method and apparatus for providing and using a virtual representation of a user
US11729157B2 (en) * 2021-05-26 2023-08-15 Microsoft Technology Licensing, Llc Bootstrapping trust in decentralized identifiers
KR102442874B1 (ko) * 2021-05-27 2022-09-13 울산대학교 산학협력단 블록체인 기반의 콘텐츠 서비스 구현 방법 및 시스템
CN113327165A (zh) 2021-06-07 2021-08-31 支付宝(杭州)信息技术有限公司 一种基于区块链的交易方法
CN113452704B (zh) * 2021-06-28 2022-08-09 湖南天河国云科技有限公司 基于分布式身份标识的异构工业设备可信互联方法及装置
CN113660308B (zh) * 2021-07-20 2022-07-08 同济大学 一种基于密码承诺的二进制智能合约审核方法
CN113722196A (zh) * 2021-08-27 2021-11-30 北京八分量信息科技有限公司 一种基于去中心化的用户行为信息分析系统
TWI788989B (zh) * 2021-09-01 2023-01-01 中華電信股份有限公司 一種基於區塊鏈的行動支付整合系統、方法及其電腦可讀媒介
CN113541970B (zh) * 2021-09-17 2021-11-26 中国信息通信研究院 分布式标识符的使用方法和分布式标识符使用系统
US20230142147A1 (en) * 2021-11-10 2023-05-11 Microsoft Technology Licensing, Llc Network communication using proof of presence
US11714894B2 (en) 2021-12-10 2023-08-01 Fmr Llc Authenticating client applications using an identity fabric blockchain
WO2023133521A1 (en) * 2022-01-07 2023-07-13 GCOM Software LLC Method and system for digital identity and transaction verification
US20230319039A1 (en) * 2022-03-31 2023-10-05 Microsoft Technology Licensing, Llc Securing authentication flows using a decentralized identifier
CN114499896B (zh) * 2022-04-13 2022-07-01 飞天诚信科技股份有限公司 一种基于区块链的实名认证方法及系统
CN114666069B (zh) * 2022-05-25 2022-08-30 天津安锐捷技术有限公司 一种基于区块链的社会治理要素数据管理系统
CN115002130A (zh) * 2022-05-31 2022-09-02 赵瑞 基于区块链的个人数字孪生did构建应用方法
CN114862388B (zh) * 2022-07-01 2022-11-29 浙江毫微米科技有限公司 基于数字钱包的身份管理方法、计算机设备和存储介质
WO2024062375A1 (en) * 2022-09-21 2024-03-28 Lenovo (Singapore) Pte. Ltd. Decentralized identity authentication and authorization
CN116521143B (zh) * 2023-07-04 2023-09-29 上海鉴智其迹科技有限公司 一种故障诊断did读写服务处理方法及装置

Family Cites Families (205)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
US7610390B2 (en) 2001-12-04 2009-10-27 Sun Microsystems, Inc. Distributed network identity
US20060053296A1 (en) 2002-05-24 2006-03-09 Axel Busboom Method for authenticating a user to a service of a service provider
US20040158723A1 (en) 2003-02-06 2004-08-12 Root David C. Methods for providing high-integrity enrollments into biometric authentication databases
EP1829332A2 (en) * 2004-12-15 2007-09-05 Exostar Corporation Enabling trust in a federated collaboration of networks
US7631346B2 (en) 2005-04-01 2009-12-08 International Business Machines Corporation Method and system for a runtime user account creation operation within a single-sign-on process in a federated computing environment
GB0519424D0 (en) 2005-09-23 2005-11-02 Smithies Christopher P K Method and system for verification of personal identity
CA2568096C (en) 2005-12-08 2008-07-29 Sxip Identity Corporation Networked identity framework
US8850209B2 (en) 2006-09-12 2014-09-30 Microsoft Corporation Schema signing
US20090126001A1 (en) 2007-11-08 2009-05-14 Microsoft Corporation Techniques to manage security certificates
US20090254968A1 (en) * 2008-04-03 2009-10-08 International Business Machines Corporation Method, system, and computer program product for virtual world access control management
US8505078B2 (en) 2008-12-28 2013-08-06 Qualcomm Incorporated Apparatus and methods for providing authorized device access
US8364969B2 (en) 2009-02-02 2013-01-29 Yahoo! Inc. Protecting privacy of shared personal information
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US9130917B2 (en) 2011-05-02 2015-09-08 Verisign, Inc. DNSSEC signing server
US8850535B2 (en) 2011-08-05 2014-09-30 Safefaces LLC Methods and systems for identity verification in a social network using ratings
US9203819B2 (en) 2012-01-18 2015-12-01 OneID Inc. Methods and systems for pairing devices
US8731203B2 (en) 2012-02-13 2014-05-20 Alephcloud Systems, Inc. Securing a secret of a user
US20170140145A1 (en) 2012-05-14 2017-05-18 Netspective Communications Llc Computer-controlled physically distributed collaborative asynchronous digital transactions
US9053329B2 (en) 2012-05-24 2015-06-09 Lockbox Llc Systems and methods for validated secure data access
US20140089670A1 (en) 2012-09-27 2014-03-27 Atmel Corporation Unique code in message for signature generation in asymmetric cryptographic device
US9148285B2 (en) 2013-01-21 2015-09-29 International Business Machines Corporation Controlling exposure of sensitive data and operation using process bound security tokens in cloud computing environment
TWI614636B (zh) 2013-06-10 2018-02-11 Jie Chen 基於數位簽章代碼的內容驗證方法
US10459986B2 (en) 2013-06-28 2019-10-29 Paypal, Inc. Multi-identifier user profiling system
US10127378B2 (en) 2014-10-01 2018-11-13 Kalman Csaba Toth Systems and methods for registering and acquiring E-credentials using proof-of-existence and digital seals
US10243945B1 (en) * 2013-10-28 2019-03-26 Amazon Technologies, Inc. Managed identity federation
CN103856332B (zh) * 2014-03-22 2017-02-08 中国科学院信息工程研究所 一种多屏多因子便捷web身份认证的一对多账号映射绑定的实现方法
US10050787B1 (en) 2014-03-25 2018-08-14 Amazon Technologies, Inc. Authentication objects with attestation
US9332018B2 (en) 2014-04-03 2016-05-03 Prote. Us Converged Systems Corporation Method and system for secure authentication
US20150356523A1 (en) 2014-06-07 2015-12-10 ChainID LLC Decentralized identity verification systems and methods
WO2016076934A2 (en) 2014-08-22 2016-05-19 Thomas John K Verification system for secure transmission in a distributed processing network
US9479337B2 (en) 2014-11-14 2016-10-25 Motorola Solutions, Inc. Method and apparatus for deriving a certificate for a primary device
WO2017122187A2 (fr) 2016-01-15 2017-07-20 Enrico Maim Procédés et systèmes mis en œuvre dans une architecture en réseau de nœuds susceptibles de réaliser des transactions basées sur messages
CN107636662A (zh) 2015-02-13 2018-01-26 优替控股有限公司 网络内容认证
US10853592B2 (en) 2015-02-13 2020-12-01 Yoti Holding Limited Digital identity system
US9578505B2 (en) 2015-04-21 2017-02-21 International Business Machines Corporation Authentication of user computers
EP3955146A1 (en) 2015-05-05 2022-02-16 Ping Identity Corporation Identity management service using a block chain
US10063540B2 (en) 2015-06-07 2018-08-28 Apple Inc. Trusted status transfer between associated devices
GB201511964D0 (en) 2015-07-08 2015-08-19 Barclays Bank Plc Secure digital data operations
US20170048209A1 (en) 2015-07-14 2017-02-16 Fmr Llc Crypto Key Recovery and Social Aggregating, Fractionally Efficient Transfer Guidance, Conditional Triggered Transaction, Datastructures, Apparatuses, Methods and Systems
CN106411520B (zh) 2015-07-29 2020-08-04 腾讯科技(深圳)有限公司 一种虚拟资源数据的处理方法、装置及系统
US11329980B2 (en) 2015-08-21 2022-05-10 Veridium Ip Limited System and method for biometric protocol standards
US11587096B2 (en) * 2015-10-14 2023-02-21 Accreditrust Technologies, LLC Systems and methods for interdependent identity based credential collection validation
BR112018007449B1 (pt) * 2015-10-17 2024-02-20 Banqu, Inc Dispositivo de computação, método implementado por computador e dispositivo de memória legível por computador
US10298396B1 (en) 2015-11-10 2019-05-21 Wells Fargo Bank, N.A. Identity management service via virtual passport
US9832024B2 (en) * 2015-11-13 2017-11-28 Visa International Service Association Methods and systems for PKI-based authentication
EP3394779B1 (en) * 2015-12-22 2021-11-03 Financial & Risk Organisation Limited Methods and systems for identity creation, verification and management
US10079682B2 (en) 2015-12-22 2018-09-18 Gemalto Sa Method for managing a trusted identity
US10129238B2 (en) 2016-02-10 2018-11-13 Bank Of America Corporation System for control of secure access and communication with different process data networks with separate security features
US10142347B2 (en) * 2016-02-10 2018-11-27 Bank Of America Corporation System for centralized control of secure access to process data network
US10607285B2 (en) 2016-02-22 2020-03-31 Bank Of America Corporation System for managing serializability of resource transfers in a process data network
US10135870B2 (en) 2016-02-22 2018-11-20 Bank Of America Corporation System for external validation of secure process transactions
US10679215B2 (en) 2016-02-22 2020-06-09 Bank Of America Corporation System for control of device identity and usage in a process data network
SG11201806709PA (en) 2016-02-23 2018-09-27 Nchain Holdings Ltd Universal tokenisation system for blockchain-based cryptocurrencies
IL278834B2 (en) 2016-02-23 2023-09-01 Nchain Holdings Ltd Automatic registration and management method for smart contracts based on 'block chain'
AU2017225932C1 (en) 2016-02-29 2021-06-24 Securekey Technologies Inc. Systems and methods for distributed identity verification
WO2017152150A1 (en) * 2016-03-04 2017-09-08 ShoCard, Inc. Method and system for authenticated login using static or dynamic codes
US9985964B2 (en) 2016-03-28 2018-05-29 Black Gold Coin, Inc. Systems and methods for providing block chain-based multifactor personal identity verification
CN107306183B (zh) 2016-04-22 2021-12-21 索尼公司 客户端、服务端、方法和身份验证系统
US10333705B2 (en) 2016-04-30 2019-06-25 Civic Technologies, Inc. Methods and apparatus for providing attestation of information using a centralized or distributed ledger
CN109314635A (zh) 2016-05-09 2019-02-05 诺基亚技术有限公司 基于区块链的资源管理
EP3455998B1 (en) 2016-05-12 2021-09-01 Boland, Michael, J. Identity authentication and information exchange system and method
US10142333B1 (en) 2016-06-21 2018-11-27 Wells Fargo Bank, N.A. Biometric reference template record
US10411905B2 (en) 2016-07-01 2019-09-10 Intel Corporation Public key infrastructure using blockchains
US10700853B2 (en) 2016-07-12 2020-06-30 International Business Machines Corporation Token identity and attribute management
US10225088B2 (en) 2016-07-25 2019-03-05 International Business Machines Corporation Deterministic verification of digital identity documents
US10700861B2 (en) 2016-07-29 2020-06-30 Workday, Inc. System and method for generating a recovery key and managing credentials using a smart blockchain contract
US10715311B2 (en) 2017-07-28 2020-07-14 Workday, Inc. System and method for blockchain-based user authentication based on a cryptographic challenge
US10325081B2 (en) 2016-08-18 2019-06-18 Hrb Innovations, Inc. Online identity scoring
CA3033385A1 (en) 2016-08-23 2018-03-01 BBM Health LLC Blockchain-based mechanisms for secure health information resource exchange
CN110036613B (zh) 2016-09-08 2022-06-10 金融与风险组织有限公司 提供用于去中心化应用的身份认证的系统和方法
CA3039031C (en) 2016-10-06 2022-06-21 Mastercard International Incorporated Method and system for identity and credential protection and verification via blockchain
GB201617913D0 (en) 2016-10-24 2016-12-07 Trustonic Limited Multi-stakeholder key setup for lot
US20180343120A1 (en) 2016-10-26 2018-11-29 Black Gold Coin, Inc. Systems and methods for providing a universal decentralized solution for verification of users with cross-verification features
US10460126B2 (en) 2016-11-21 2019-10-29 Adobe Inc. Providing user control of shared personal information
EP3552139B1 (fr) 2016-12-06 2021-03-10 Enrico Maim Procédés et entités notamment transactionnels mettant en jeu des dispositifs sécurisés
US10594702B2 (en) * 2016-12-16 2020-03-17 ULedger, Inc. Electronic interaction authentication and verification, and related systems, devices, and methods
US10257206B2 (en) 2016-12-21 2019-04-09 International Business Machines Corporation Monitoring actions performed by a network of peer devices using a blockchain
US10091195B2 (en) 2016-12-31 2018-10-02 Nok Nok Labs, Inc. System and method for bootstrapping a user binding
US10237070B2 (en) 2016-12-31 2019-03-19 Nok Nok Labs, Inc. System and method for sharing keys across authenticators
US9992022B1 (en) 2017-02-06 2018-06-05 Northern Trust Corporation Systems and methods for digital identity management and permission controls within distributed network nodes
JP6931999B2 (ja) * 2017-02-06 2021-09-08 株式会社日立製作所 信用度管理システムおよび信用度管理方法
US10810290B2 (en) 2017-03-05 2020-10-20 Ronald H Minter Robust method and an apparatus for authenticating a client in non-face-to-face online interactions based on a combination of live biometrics, biographical data, blockchain transactions and signed digital certificates
CN110945549A (zh) 2017-03-15 2020-03-31 努Id公司 用于对用于跨机构数字认证的用户拥有的凭证的通用存储和访问的方法和系统
US20200067697A1 (en) 2017-03-22 2020-02-27 NEC Laboratories Europe GmbH Method for operating a blockchain
US10476862B2 (en) * 2017-03-31 2019-11-12 Mastercard International Incorporated Systems and methods for providing digital identity records to verify identities of users
US20180285996A1 (en) * 2017-04-03 2018-10-04 FutureLab Consulting Inc. Methods and system for managing intellectual property using a blockchain
KR102414732B1 (ko) 2017-04-05 2022-06-28 삼성에스디에스 주식회사 블록체인 기반 디지털 아이덴티티 관리 방법
US10708070B2 (en) * 2017-05-24 2020-07-07 Nxm Labs Canada Inc. System and method for utilizing connected devices to enable secure and anonymous electronic interaction in a decentralized manner
US20180365201A1 (en) 2017-06-14 2018-12-20 Clause, Inc. System and method for compound data-driven contracts and documentation
EP3416334B1 (en) 2017-06-15 2020-01-15 Accenture Global Solutions Limited Portable biometric identity on a distributed data storage layer
CN107257340B (zh) * 2017-06-19 2019-10-01 阿里巴巴集团控股有限公司 一种认证方法、基于区块链的认证数据处理方法及设备
CN107562775B (zh) 2017-07-14 2020-04-24 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
CN107316239A (zh) 2017-07-14 2017-11-03 众安信息技术服务有限公司 一种基于区块链的信息认证和溯源方法及系统
US20190050855A1 (en) 2017-07-24 2019-02-14 William Martino Blockchain-based systems, methods, and apparatus for securing access to information stores
US10587413B1 (en) 2017-07-26 2020-03-10 EMC IP Holding Company LLC Decentralized identities for cross-enterprise authentication and/or authorization
US10681034B2 (en) 2017-08-01 2020-06-09 Verizon Patent And Licensing Inc. Identity management via a centralized identity management server device
US20190044917A1 (en) 2017-08-04 2019-02-07 Bank Of America Corporation System for secure verification of identity data
US10771459B2 (en) * 2017-09-04 2020-09-08 Electronics And Telecommunications Research Institute Terminal apparatus, server apparatus, blockchain and method for FIDO universal authentication using the same
US20190087832A1 (en) 2017-09-15 2019-03-21 Pearson Education, Inc. Digital credential field data mapping
US11699166B2 (en) 2017-10-09 2023-07-11 American Express Travel Related Services Company, Inc. Multi-merchant loyalty point partnership
US11397962B2 (en) * 2017-10-09 2022-07-26 American Express Travel Related Services Company, Inc. Loyalty point distributions using a decentralized loyalty ID
WO2019075156A1 (en) 2017-10-11 2019-04-18 Cambridge Blockchain, Inc. SYSTEMS AND METHODS FOR MANAGING RELATIONS BETWEEN DIGITAL IDENTITIES
WO2019075311A1 (en) * 2017-10-12 2019-04-18 Mastercard International Incorporated SYSTEM AND METHOD FOR SECURE INDIVIDUAL IDENTIFICATION ON A SET OF MULTIPLE DISPARATE ENTITIES
US20190121813A1 (en) 2017-10-20 2019-04-25 Social Patent LLC System and Method of Sovereign Digital Identity Search and Bidirectional Matching
US10135834B1 (en) * 2017-10-20 2018-11-20 Social Patent LLC System and method of executing operations in a social network application
US20190141026A1 (en) 2017-11-07 2019-05-09 General Electric Company Blockchain based device authentication
US11025419B2 (en) * 2017-11-15 2021-06-01 Alexander J. M. Van Der Velden System for digital identity authentication and methods of use
CN108055125B (zh) 2017-11-23 2020-06-30 阿里巴巴集团控股有限公司 一种产品信息的加密、解密方法及装置
US11868995B2 (en) * 2017-11-27 2024-01-09 Nok Nok Labs, Inc. Extending a secure key storage for transaction confirmation and cryptocurrency
US10833861B2 (en) 2017-11-28 2020-11-10 International Business Machines Corporation Protection of confidentiality, privacy and ownership assurance in a blockchain based decentralized identity management system
US10642967B2 (en) 2017-11-28 2020-05-05 American Express Travel Related Services Company, Inc. Single sign-on solution using blockchain
US10505920B2 (en) 2017-11-30 2019-12-10 Mocana Corporation System and method of device identification for enrollment and registration of a connected endpoint device, and blockchain service
US10678598B2 (en) 2017-12-07 2020-06-09 International Business Machines Corporation Enforcing compute equity models in distributed blockchain
US10476847B1 (en) 2017-12-08 2019-11-12 Symbiont.Io, Inc. Systems, methods, and devices for implementing a smart contract on a distributed ledger technology platform
WO2019118459A1 (en) * 2017-12-11 2019-06-20 Celo Labs Inc. Decentralized name verification using recursive attestation
US10715317B2 (en) 2017-12-12 2020-07-14 International Business Machines Corporation Protection of confidentiality, privacy and financial fairness in a blockchain based decentralized identity management system
US11139979B2 (en) 2017-12-18 2021-10-05 Koninklijke Kpn N.V. Primary and secondary blockchain device
US11288740B2 (en) 2017-12-29 2022-03-29 Intel Corporation Securing distributed electronic wallet shares
US11831409B2 (en) 2018-01-12 2023-11-28 Nok Nok Labs, Inc. System and method for binding verifiable claims
US11159315B2 (en) 2018-01-22 2021-10-26 Microsoft Technology Licensing, Llc Generating or managing linked decentralized identifiers
US10121025B1 (en) 2018-02-22 2018-11-06 Capital One Services, Llc Content validation using blockchain
US20190266576A1 (en) 2018-02-27 2019-08-29 Anchor Labs, Inc. Digital Asset Custodial System
US11088826B2 (en) 2018-02-27 2021-08-10 International Business Machines Corporation Managing assets with expiration on a blockchain
US10797883B2 (en) 2018-02-28 2020-10-06 Kyocera Document Solutions Inc. Deploying multiple nodes for creation of blockchains for trackable actions
WO2019169297A1 (en) 2018-03-02 2019-09-06 Intertrust Technologies Corporation Trust and identity management systems and methods
US20190281028A1 (en) 2018-03-06 2019-09-12 Michael Thomas Gillan System and method for decentralized authentication using a distributed transaction-based state machine
US10135835B1 (en) * 2018-03-19 2018-11-20 Cyberark Software Ltd. Passwordless and decentralized identity verification
US11698979B2 (en) 2018-03-27 2023-07-11 Workday, Inc. Digital credentials for access to sensitive data
US11700117B2 (en) * 2018-03-27 2023-07-11 Workday, Inc. System for credential storage and verification
US11792180B2 (en) 2018-03-27 2023-10-17 Workday, Inc. Digital credentials for visitor network access
US11683177B2 (en) 2018-03-27 2023-06-20 Workday, Inc. Digital credentials for location aware check in
EP3776421A4 (en) 2018-03-27 2021-12-08 Workday, Inc. SYSTEM FOR STORAGE AND VERIFICATION OF ACCESS DATA
US11531783B2 (en) 2018-03-27 2022-12-20 Workday, Inc. Digital credentials for step-up authentication
US11716320B2 (en) 2018-03-27 2023-08-01 Workday, Inc. Digital credentials for primary factor authentication
US11641278B2 (en) 2018-03-27 2023-05-02 Workday, Inc. Digital credential authentication
US11531975B2 (en) 2018-04-13 2022-12-20 International Business Machines Corporation Network node management on a blockchain
US20190318399A1 (en) 2018-04-17 2019-10-17 Filmio, Inc. Project creation system using blockchain
US20190333054A1 (en) 2018-04-20 2019-10-31 Infonetworks Llc System for verification of pseudonymous credentials for digital identities with managed access to personal data on trust networks
US11159306B2 (en) 2018-04-24 2021-10-26 Duvon Corporation Autonomous exchange via entrusted ledger token and transaction management
US11102255B2 (en) 2018-04-27 2021-08-24 Filmio, Inc. Project creation and distribution system
US10917234B2 (en) 2018-05-03 2021-02-09 International Business Machines Corporation Blockchain for on-chain management of off-chain storage
US11444952B2 (en) 2018-05-03 2022-09-13 Springcoin, Inc. Synthetic identification protocol apparatus and method
US10692086B2 (en) 2018-05-07 2020-06-23 Accenture Global Solutions Limited Distributed ledger based identity and origins of supply chain application enabling financial inclusion and sustainability
US10965673B2 (en) 2018-05-11 2021-03-30 Civic Technologies, Inc. User ID codes for online verification
WO2019226580A1 (en) 2018-05-21 2019-11-28 Integra, Inc. Blockchain-anchored smart documents
US20190363896A1 (en) 2018-05-26 2019-11-28 Keir Finlow-Bates Blockchain based decentralized and distributed certificate authority
CN108932297B (zh) * 2018-06-01 2022-03-22 创新先进技术有限公司 一种数据查询、数据共享的方法、装置及设备
WO2019237126A1 (en) 2018-06-08 2019-12-12 Gcp Ip Holdings I, Llc Blockchain overwatch
CN108833114A (zh) * 2018-06-13 2018-11-16 上海交通大学 一种基于区块链的去中心化身份认证系统及方法
CN110611563B (zh) 2018-06-15 2022-09-06 富泰华工业(深圳)有限公司 设备识别码配发方法、装置及物联网设备
WO2020006138A1 (en) 2018-06-29 2020-01-02 Arcblock, Inc. Blockchain adapter, protocol, and access layer
US11108544B2 (en) 2018-07-02 2021-08-31 International Business Machines Corporation On-chain governance of blockchain
US10911240B2 (en) 2018-07-23 2021-02-02 Hitachi, Ltd. Off-chain blockchain storage with validation
US20200026834A1 (en) 2018-07-23 2020-01-23 One Kosmos Inc. Blockchain identity safe and authentication system
US11233641B2 (en) 2018-07-31 2022-01-25 Hewlett Packard Enterprise Development Lp Systems and methods for using distributed attestation to verify claim of attestation holder
US10944560B2 (en) * 2018-08-02 2021-03-09 International Business Machines Corporation Privacy-preserving identity asset exchange
US11057366B2 (en) 2018-08-21 2021-07-06 HYPR Corp. Federated identity management with decentralized computing platforms
US10972274B2 (en) 2018-08-29 2021-04-06 International Business Machines Corporation Trusted identity solution using blockchain
US11233648B2 (en) 2018-09-04 2022-01-25 Microsoft Technology Licensing, Llc Identity system for use with blockchain platform
IL261679A (en) 2018-09-06 2018-10-31 Acuant Inc System and method for management of digital id
US11789933B2 (en) 2018-09-06 2023-10-17 Docusign, Inc. System and method for a hybrid contract execution environment
US10841094B2 (en) 2018-09-14 2020-11-17 Microsoft Technology Licensing, Llc Private and public media data in a decentralized system
EP3627363A1 (en) 2018-09-19 2020-03-25 Vocalink Limited Information processing system, devices and methods
US11277261B2 (en) 2018-09-21 2022-03-15 Netiq Corporation Blockchain-based tracking of program changes
CN109493082A (zh) * 2018-09-25 2019-03-19 西安纸贵互联网科技有限公司 一种农产品区块链溯源方法及装置
CN109067801B (zh) * 2018-09-29 2021-09-03 平安科技(深圳)有限公司 一种身份认证方法、身份认证装置及计算机可读介质
US10977687B2 (en) 2018-10-08 2021-04-13 Microsoft Technology Licensing, Llc Data collection and pattern analysis in a decentralized network
US11038891B2 (en) 2018-10-29 2021-06-15 EMC IP Holding Company LLC Decentralized identity management system
CN109327456A (zh) * 2018-11-06 2019-02-12 北京知道创宇信息技术有限公司 一种去中心化的集群鉴权方法、集群节点及电子设备
US20200177373A1 (en) 2018-11-14 2020-06-04 Royal Bank Of Canada System and method for storing contract data structures on permissioned distributed ledgers
US10506104B1 (en) 2018-11-28 2019-12-10 Sap Se Identity verification using blockchain technology
WO2020118262A1 (en) 2018-12-06 2020-06-11 Pasig And Hudson, Pvt Limited Computer method and graphical user interface for identity management using blockchain
US10452828B1 (en) 2018-12-11 2019-10-22 block.one Systems and methods for creating a verified digital association
US11636776B2 (en) 2018-12-28 2023-04-25 Conéctate Soluciones Y Aplicaciones Sl Unified identification protocol in training and health
US11196568B2 (en) 2019-01-07 2021-12-07 International Business Machines Corporation Identity protection
US11038677B2 (en) 2019-01-31 2021-06-15 Re Formsnet, Llc Systems and methods for encryption and authentication
US10454906B1 (en) 2019-01-31 2019-10-22 Re Formsnet, Llc Systems and methods for encryption and authentication
US11563561B2 (en) 2019-01-31 2023-01-24 Megachain Inc. Systems and methods for linkage data elements
CN109688163B (zh) * 2019-02-20 2021-11-30 中国联合网络通信集团有限公司 基于联盟链的数据处理方法、装置、设备及存储介质
CN109936569B (zh) 2019-02-21 2021-05-28 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化数字身份登录管理系统
CN109936570B (zh) 2019-02-21 2021-05-28 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化标识符属性管理系统
US20200272619A1 (en) 2019-02-21 2020-08-27 Fiducia DLT LTD Method and system for audit and payment clearing of electronic trading systems using blockchain database
CN109918942B (zh) * 2019-02-21 2020-07-31 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化标识符管理系统
US10425230B1 (en) 2019-03-01 2019-09-24 Capital One Services, Llc Identity and electronic signature verification in blockchain
US11314763B2 (en) 2019-03-26 2022-04-26 Centurylink Intellectual Property Llc Off-chain functionality for data contained in blocks of blockchain
CN109922077B (zh) * 2019-03-27 2021-06-04 北京思源理想控股集团有限公司 一种基于区块链的身份认证方法及其系统
CN114207643A (zh) * 2019-04-19 2022-03-18 科恩巴斯公司 用于区块链经营的系统和方法
CN109918878B (zh) 2019-04-24 2021-03-02 中国科学院信息工程研究所 一种基于区块链的工业物联网设备身份认证及安全交互方法
US11003771B2 (en) 2019-05-03 2021-05-11 Microsoft Technology Licensing, Llc Self-help for DID claims
KR20200132518A (ko) * 2019-05-17 2020-11-25 삼성에스디에스 주식회사 블록체인 네트워크 간에 트랜잭션 연동을 지원하는 시스템 및 그 방법
US11838425B2 (en) 2019-05-20 2023-12-05 Jpmorgan Chase Bank, N.A. Systems and methods for maintaining decentralized digital identities
US11341503B2 (en) 2019-06-17 2022-05-24 American Express Travel Related Services Company, Inc. Deploying a cloud-based system using a distributed ledger
WO2020257472A1 (en) 2019-06-18 2020-12-24 Transmute Industries, Inc. Systems and methods for a decentralized data authentication platform
US11245524B2 (en) 2019-06-18 2022-02-08 Microsoft Technologly Licensing, LLC Binding of decentralized identifiers to verified claims
EP3688710B1 (en) 2019-06-28 2022-05-25 Advanced New Technologies Co., Ltd. System and method for blockchain address mapping
CN111213147B (zh) 2019-07-02 2023-10-13 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
EP3688930B1 (en) 2019-07-02 2021-10-20 Advanced New Technologies Co., Ltd. System and method for issuing verifiable claims
SG11202003792QA (en) 2019-07-02 2020-05-28 Advanced New Technologies Co Ltd System and method for verifying verifiable claims
CN111316303B (zh) 2019-07-02 2023-11-10 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
EP3721603B1 (en) 2019-07-02 2021-12-08 Advanced New Technologies Co., Ltd. System and method for creating decentralized identifiers
CN116910726A (zh) 2019-07-02 2023-10-20 创新先进技术有限公司 用于将去中心化标识映射到真实实体的系统和方法
US10944574B2 (en) 2019-07-03 2021-03-09 Coinplug, Inc. Method for providing virtual asset service based on decentralized identifier and virtual asset service providing server using them
US11727120B2 (en) 2019-07-11 2023-08-15 Battelle Memorial Institute Blockchain cybersecurity solutions
US11140154B2 (en) 2019-09-26 2021-10-05 Bank Of America Corporation User authentication using tokens

Also Published As

Publication number Publication date
US20200242221A1 (en) 2020-07-30
US20200143019A1 (en) 2020-05-07
EP3732856A2 (en) 2020-11-04
WO2019228555A2 (en) 2019-12-05
EP3704620B1 (en) 2021-12-15
US20210185041A1 (en) 2021-06-17
CN111183426B (zh) 2023-11-21
WO2019228556A3 (en) 2020-04-30
CN111164594A (zh) 2020-05-15
US20200145223A1 (en) 2020-05-07
WO2019228555A3 (en) 2020-04-30
EP3788523B1 (en) 2022-03-16
EP3732856B1 (en) 2022-04-06
EP3732856A4 (en) 2021-01-20
US20200145209A1 (en) 2020-05-07
WO2019228557A3 (en) 2020-04-30
EP3732857A2 (en) 2020-11-04
CN111183426A (zh) 2020-05-19
CN111213350B (zh) 2022-07-29
WO2019228556A2 (en) 2019-12-05
US10924284B2 (en) 2021-02-16
SG11202006574PA (en) 2020-08-28
US11159526B2 (en) 2021-10-26
US10685099B2 (en) 2020-06-16
EP3704620A4 (en) 2020-11-25
US10824701B2 (en) 2020-11-03
EP3704620A2 (en) 2020-09-09
CN111164594B (zh) 2023-08-25
EP3788523A1 (en) 2021-03-10
EP3732857A4 (en) 2020-12-30
WO2019228557A2 (en) 2019-12-05
US10708060B2 (en) 2020-07-07
US20210126916A1 (en) 2021-04-29
US20200153639A1 (en) 2020-05-14
EP3732857B1 (en) 2023-02-22
SG11202006772QA (en) 2020-08-28
US11038883B2 (en) 2021-06-15
CN111295869A (zh) 2020-06-16
CN111295869B (zh) 2022-04-22
CN111213350A (zh) 2020-05-29
EP3788523A4 (en) 2021-03-10
US11477032B2 (en) 2022-10-18
SG11202004456TA (en) 2020-06-29

Similar Documents

Publication Publication Date Title
CN111164594B (zh) 用于将去中心化标识映射到真实实体的系统和方法
CN111066020B (zh) 用于创建去中心化标识的系统和方法
CN111095865B (zh) 用于发布可验证声明的系统和方法
CN111095327B (zh) 用于验证可验证声明的系统和方法
CN111213147B (zh) 用于基于区块链的交叉实体认证的系统和方法
CN111316303B (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