TW202103033A - 用以實現用於去中心化標識的解析器服務的系統和方法 - Google Patents

用以實現用於去中心化標識的解析器服務的系統和方法 Download PDF

Info

Publication number
TW202103033A
TW202103033A TW109110468A TW109110468A TW202103033A TW 202103033 A TW202103033 A TW 202103033A TW 109110468 A TW109110468 A TW 109110468A TW 109110468 A TW109110468 A TW 109110468A TW 202103033 A TW202103033 A TW 202103033A
Authority
TW
Taiwan
Prior art keywords
blockchain
parser
information
request
user
Prior art date
Application number
TW109110468A
Other languages
English (en)
Other versions
TWI721840B (zh
Inventor
林渝淇
陳遠
楊仁慧
劉佳偉
Original Assignee
開曼群島商創新先進技術有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 開曼群島商創新先進技術有限公司 filed Critical 開曼群島商創新先進技術有限公司
Publication of TW202103033A publication Critical patent/TW202103033A/zh
Application granted granted Critical
Publication of TWI721840B publication Critical patent/TWI721840B/zh

Links

Images

Classifications

    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/80ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for detecting, monitoring or modelling epidemics or pandemics, e.g. flu
    • 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/3242Cryptographic 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 keyed hash functions, e.g. message authentication codes [MACs], CBC-MAC or HMAC
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services
    • 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
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
    • 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/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/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
    • 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/3234Cryptographic 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 additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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
    • 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
    • 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Power Engineering (AREA)
  • Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Public Health (AREA)
  • General Health & Medical Sciences (AREA)
  • Accounting & Taxation (AREA)
  • Data Mining & Analysis (AREA)
  • Finance (AREA)
  • Medical Informatics (AREA)
  • Bioethics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Human Computer Interaction (AREA)
  • Technology Law (AREA)
  • Pathology (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Biomedical Technology (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Storage Device Security (AREA)
  • Medical Treatment And Welfare Office Work (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

用以實現解析器服務的方法、系統和裝置,包括在電腦儲存媒體上編碼的電腦程式。所述方法之一包括:從區塊鏈獲得事件資料,其中,所述事件資料包括與儲存在區塊鏈上的多個去中心化標識(DID)文件相關聯的多個更新;將所述事件資料儲存在資料庫中;接收對與所述事件資料相關聯的資訊的請求;以及回應於所述請求,提供關於與一個或多個DID文件相關聯的一個或多個更新的資訊。

Description

用以實現用於去中心化標識的解析器服務的系統和方法
本發明總體上係有關基於區塊鏈技術管理去中心化標識和可驗證聲明的方法和設備。 相關發明申請案的交叉引用 本發明主張享有2019年7月2日遞交到中國國家知識產權局(SIPO)的國際發明申請案號PCT/CN2019/094396的優先權和權益。這裡透過參考引用的方式結合上述發明申請案的全部內容。
傳統的身份管理系統基於中心化機構,例如公司目錄服務、認證機構或功能變數名稱註冊機構。每個中心化機構都可以作為信任的根源,為其背書的身份提供可信度。對於這樣的系統,與身份相關聯的資料通常儲存在中心化的資料庫中,如果不是儲存在傳統的資訊儲存媒體中。每個人或實體的身份維護都在中心化機構的控制下。鑒於其性質,傳統的身份管理系統會承擔每個中心化機構遭受的安全風險,並且提供低效的機制來收集由不同中心化機構提供的身份或憑證。在這樣的系統中,個人實體或身份所有者通常既不能自由選擇信任的根源,也不能控制他們自己的身份或憑證。對他們身份的認證和驗證被證明通常是低效的。 區塊鏈技術提供了建立值得信任的去中心化系統的機會,該系統不需要信任系統的每個成員。區塊鏈透過將資料保存在相互之間具有優先關係的一系列資料區塊中,以去中心化方式提供資料儲存。區塊的鏈由區塊鏈節點的網路維護和更新,區塊鏈節點也負責基於共識方案驗證資料。儲存的資料可以包括許多資料類型,例如各方之間的金融交易、歷史存取資訊等。 許多區塊鏈(例如,乙太坊區塊鏈)已經能夠實現透過區塊鏈交易執行的區塊鏈合約(也稱為智能合約)。區塊鏈交易為簽名的訊息,其由外部擁有的帳戶(例如,區塊鏈帳戶)發起,由區塊鏈網路傳輸並記錄在區塊鏈中。可以編寫區塊鏈合約以實現各種功能,例如將資料添加到區塊鏈帳戶、更改區塊鏈中的資料等。因此,可以透過執行各種區塊鏈交易來維護和更新區塊鏈。 區塊鏈技術提供了無需中心化機構即可管理信任的根源的方法。然而,基於區塊鏈構建的身份管理系統通常透過要求區塊鏈帳本的儲存、創建和執行區塊鏈交易和合約的能力或區塊鏈共識方案中的參與,而給普通用戶帶來實質性技術障礙。身份持有人可能被要求保存例如加密密鑰的重要身份憑證,當這些身份憑證遭到破壞時,可能會使身份持有人遭受身份丟失的風險。此外,對於需要管理大量用戶身份的商業實體,這種身份管理系統被證明通常是低效且用戶不友好的。由這樣的身份管理系統管理的身份與由商業實體保存的帳戶或服務ID之間的映射通常很難維護。最後,這樣的身份管理系統通常需要頻繁存取區塊鏈網路和與區塊鏈網路互動,這可能是昂貴的並且消耗資源。
本說明書的各種實施例包括但不限於用以實現解析器服務的系統、方法和非暫態性電腦可讀媒體。 根據一些實施例,一種電腦實現的用以實現解析器服務的方法包括:從區塊鏈獲得事件資料,其中,所述事件資料包括與儲存在區塊鏈上的多個去中心化標識(DID)文件相關聯的多個更新;以及將所述事件資料儲存在資料庫中。所述方法還包括:接收對與所述事件資料相關聯的資訊的請求;以及回應於所述請求,提供關於與所述一個或多個DID文件相關聯的一個或多個更新的資訊。 在一些實施例中,所述事件資料還包括與多個可驗證聲明(VC)相關聯的多個更新。 在一些實施例中,獲得事件資料包括週期性地存取區塊鏈的最新版本。 在一些實施例中,獲得事件資料包括:獲得區塊鏈的目前高度;將獲得的區塊鏈的目前高度與目前儲存在資料庫中的資料對應的區塊鏈中的最大高度進行比較;以及從區塊鏈中獲取多個區塊,其中,每個獲得的區塊對應於區塊鏈中大於最大高度的高度。 在一些實施例中,獲得事件資料還包括在獲得的區塊中搜尋涉及與DID或VC相關聯的一個或多個區塊鏈合約的交易,以及收集與所述一個或多個區塊鏈合約相關聯的一個或多個輸入和輸出。 在一些實施例中,提供有關一個或多個更新的資訊包括將所述資訊發送到配置為管理多個用戶的DID或VC的線上代理。 在一些實施例中,接收對與所述事件資料相關聯的資訊的請求包括:從實體接收請求,其中,所述請求包括一個或多個帳戶標識。提供關於一個或多個更新的資訊包括:基於預儲存的多個帳戶標識和多個DID之間的映射關係識別一個或多個DID,以及將與所識別出的一個或多個DID相關聯的資訊發送至實體。 在一些實施例中,所述方法還包括:接收用以創建DID的請求,並將用以創建DID以及用以添加與所述DID相關聯的DID文件的一個或多個區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收用以更新DID文件的請求;以及將用以更新DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收對DID文件的查詢,所述查詢包括DID;以及將用以基於所述DID識別DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收對與DID相關聯的公鑰的查詢,以及將用以基於DID存取包含公鑰的DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收對與VC相關聯的資訊的查詢,所述查詢包括用於VC的一個或多個標識;以及將用以基於一個或多個標識存取與VC的相關聯的資訊的區塊鏈交易發送至區塊鏈節點以進行執行。 根據其他實施例,一種用以實現解析器服務的系統包括:一個或多個處理器;以及耦接到所述一個或多個處理器並且具有儲存在其上的指令的一個或多個電腦可讀記憶體,所述指令可由所述一個或多個處理器執行以執行前述實施例中任一個的方法。 根據又一其他實施例,一種非暫態性電腦可讀儲存媒體配置有可由一個或多個處理器執行的指令,以促使一個或多個處理器執行前述實施例中任一個的方法。 根據又一其他實施例,一種用以實現解析器服務的裝置包括用以執行前述實施例中的任一個的方法的多個模組。 根據一些實施例,一種用以實現解析器服務的系統包括:一個或多個處理器以及耦接到所述一個或多個處理器並且具有其上儲存的指令的一個或多個電腦可讀記憶體,所述指令可由一個或多個處理器執行以執行包括以下各項的操作:從區塊鏈獲得事件資料,其中,所述事件資料包括與區塊鏈上儲存的多個去中心化標識(DID)文件相關聯的多個更新,以及將所述事件資料儲存在資料庫中。所述操作還包括:接收對與所述事件資料相關聯的資訊的請求;以及回應於所述請求,提供關於與所述一個或多個DID文件相關聯的一個或多個更新的資訊。 根據其他實施例,一種非暫態性電腦可讀儲存媒體配置有可由一個或多個處理器執行的指令,以促使一個或多個處理器執行包括以下各項的操作:從區塊鏈獲得事件資料,其中,所述事件資料包括與區塊鏈上儲存的多個去中心化標識(DID)文件相關聯的多個更新,以及將所述事件資料儲存在資料庫中。所述操作還包括:接收用於與所述事件資料相關聯的資訊的請求;以及回應於所述請求,提供關於與所述一個或多個DID文件相關聯的一個或多個更新的資訊。 根據又一些實施例,一種用以實現解析器服務的裝置包括:獲得模組,用以從區塊鏈獲得事件資料,其中,所述事件資料包括與區塊鏈上儲存的多個去中心化標識(DID)文件相關聯的多個更新;儲存模組,用以將所述事件資料儲存在資料庫中;接收模組,用以接收對與所述事件資料相關聯的資訊的請求;以及提供模組,用以回應於所述請求,提供關於與一個或多個DID文件相關聯的一個或多個更新的資訊。 本文揭示的實施例具有一個或多個技術效果。在一些實施例中,用以基於區塊鏈的去中心化身份管理的解析器服務整合了執行DID方法、創建區塊鏈操作以及從區塊鏈收集資料的功能,並使此類功能可經由API介面被外部系統或應用程式存取。這允許使用除區塊鏈所需的編程語言或協定之外的編程語言或協定靈活控制與去中心化身份管理相關的操作並方便地存取與去中心化身份相關的資訊。在其他實施例中,解析器服務為實體提供介面和自動化軟體解決方案,以管理代表多個其他實體的身份。解析器服務還配置為利用去中心化身份與業務帳戶或服務ID之間的映射資訊。這促進了儲存有關去中心化身份的資訊的區塊鏈與儲存有關與去中心化身份對應的本地帳戶的資訊的外部資料庫之間的資料的有效同步。在其他實施例中,解析器服務聚合並執行某些交易(否則所述交易將由用於去中心化身份管理的區塊鏈系統執行),並對從區塊鏈系統獲得的大量資料進行分類和過濾。這降低了與區塊鏈交易和資料查詢的零碎執行相關的成本和資源消耗。 參考圖式考慮以下描述和所附申請專利範圍,本文揭示的系統、方法和非暫態性電腦可讀媒體的這些和其他特徵,以及操作方法和相關結構組件的功能以及部件的組合和製造經濟性將變得更加明顯,上述都形成本說明書的一部分,其中,在各個圖式中相同的圖式標記表示對應的部分。然而,應該清楚地理解,圖式僅用於說明和描述的目的,而不是限制性的。
本文描述的實施例提供了與用於可以為實體提供唯一且可驗證的身份的去中心化身份管理的生態系統相關聯的方法、系統和裝置。實體的去中心化標識(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文件或VC之間的關係的軟體組件。解析器可以包括被設計為接收用於DID查找的請求的API,並且可以執行相應的DID方法以檢索可信的DID文件。解析器可以進一步與區塊鏈介接並執行各種操作,例如創建新的DID或更新DID文件。此外,解析器可從區塊鏈獲得與DID和VC有關的各種資訊,並將該資訊提供給本文所述的其他系統或組件。 圖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的功能可以包括密鑰產生、分發和替換以及密鑰注入(key injection)、儲存和管理。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有關的一個或多個操作。 圖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還可以產生或檢索包括用於創建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,SDK 312可以將對與待認證的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,SDK 312可以更新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可以執行身份認證或以其他方式獲得用戶的身份認證資訊。該實體可能先前驗證了用戶的身份,並且可以在資料庫中維護這樣的資訊。在步驟1102,伺服器311可以檢索這樣的資訊。然後,在步驟1104,伺服器311可以將用於創建DID的請求發送到與用戶代理411相關聯的代理服務API 410,用戶代理411與線上平台相關聯。該請求可以包括與用戶相對應的帳戶標識。該請求可以採取API訊息的形式。在步驟1106,代理服務API 410可以將請求發送到用戶代理411以創建DID。 在步驟1108,用戶代理411可以檢查對於所需資訊的請求。在一些實施例中,為了創建用戶的DID,可以要求實體具有其自身的現有DID。用戶代理411可以檢查該請求以確定該請求的發送者具有現有DID並且確定與該發送者相關聯的DID。在一些實施例中,可能需要實體為用戶提供身份認證的證明。身份認證的證明可以包括真人認證的證明、實名認證的證明、其他合適的認證證明或其任意組合。例如,實名認證的證明可以基於用戶的官方標識(例如,政府頒發的ID)。示例性證明可以例如是透過將雜湊函數(例如,SHA-256)應用於ID類型、ID號和用戶編號的組合而創建的數字。這樣的證明可以在維護用戶保密的敏感資訊的同時確保與特定用戶的唯一對應。用戶代理411可以確定該請求是否包括身份認證的證明,並且如果是,則接受該請求。如果該請求不包括身份認證的證明,則用戶代理411可以拒絕該請求,或者可以向實體發送對身份認證的證明的請求。用戶代理411可以基於接收到的請求來獲得身份認證的證明,該請求可以直接包括證明或與用於獲得證明的方法相關聯的資訊。如果請求包括所需資訊,則在步驟1110,用戶代理411可以為用戶創建與用戶的身份認證的證明相對應的密鑰別名(key alias)。 在一些實施例中,用戶代理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可以使用鍵值結構將質詢的標識儲存在記憶體中,該質詢的標識與和質詢相關聯的資訊相關。例如,驗證者代理413可以儲存與和待認證的DID相關聯的質詢關聯的質詢ID、用於創建密文的明文以及用於發送對質詢的回應的網路位址。在步驟1222,驗證者代理413可以基於來自DID文件的資訊將質詢發送至與DID相關聯的DID認證服務。 在一些實施例中,在從驗證者代理413獲得DID認證質詢之後,在步驟1224,DID認證服務可以從DID的所有者獲得對於這種質詢的回應的同意。在步驟1226,如果所有者提供對於身份認證的同意或許可,則DID認證服務可以向與用戶代理411相關聯的代理服務API 410發送對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相關聯的代理服務API 410。在步驟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示出了根據一些實施例的解析器的結構。在一些實施例中,解析器322可以包括用於從解析器322外部的系統接收請求(例如,API呼叫)的解析器API 420。所述請求可以針對解析器322的各種功能。所述功能可以被分類為在區塊鏈330上發布資訊以及從區塊鏈330查詢資訊。解析器322可以包括用於將資訊發布到區塊鏈330的一個或多個執行器(例如,帳戶創建執行器1502、DID文件更新執行器1504)。執行器可以是解析器322的軟體組件。解析器322可以包括用於從區塊鏈330查詢和獲得資訊的監聽器424以及用於儲存由監聽器424獲得的資訊的資料庫423。在一些實施例中,監聽器424可以是解析器322的軟體組件,其可以週期性地檢查與區塊鏈330中的新創建區塊或新事件相關聯的交易,確定與由解析器322管理的DID和VC有關的交易或事件,並將更新儲存在資料庫423中以供使用。在一些實施例中,解析器322可以直接與和區塊鏈330相關聯的一個或多個區塊鏈節點通訊。可選擇地或附加地,解析器322可以經由一個或多個軟體介面(例如,BaaS雲端324)與區塊鏈330通訊。 在經由解析器API 420接收請求之後,解析器322可以將請求引向解析器322的一個或多個組件以進行處理。在一些實施例中,解析器322可以接收與將資訊發布到區塊鏈330相關聯的一個或多個請求。作為示例,解析器322可以經由解析器API 420接收用於創建新DID的請求。解析器322可以將該請求引向帳戶創建執行器1502。帳戶創建執行器1502可以向與區塊鏈330相關聯的一個或多個區塊鏈節點發送用於創建DID的一個或多個區塊鏈交易以供執行。區塊鏈交易可以包括用於在區塊鏈330上創建新帳戶的區塊鏈交易。新帳戶的標識可用於創建DID。在一些實施例中,在創建DID之後,DID文件更新執行器1504可以被調用以向與區塊鏈330關聯的一個或多個區塊鏈節點發送用於添加與DID關聯的DID文件的一個或多個區塊鏈交易以進行執行。作為另一個示例,解析器322可以經由解析器API 420接收用於更新DID文件的請求。解析器322可以將該請求導引向DID文件更新執行器1504。DID文件更新執行器1504可以基於該請求產生用於更新DID文件的一個或多個區塊鏈交易,並將該一個或多個區塊鏈交易發送至與區塊鏈330相關聯的一個或多個區塊鏈節點以進行執行。 在一些實施例中,解析器322可以從區塊鏈330接收查詢資訊的一個或多個請求。作為示例,解析器322可以經由解析器API 420接收對DID文件的查詢。該查詢可以包括DID,針對該DID的DID文件被請求。解析器322可以產生用於基於DID來識別DID文件的一個或多個區塊鏈交易,並將其發送到與區塊鏈330相關聯的一個或多個區塊鏈節點以進行執行。然後,解析器322可以從區塊鏈330獲得DID文件,並將DID文件返回給該請求的發送方。作為另一個示例,解析器322可以經由解析器API 420接收對與DID相關聯的公鑰的查詢。解析器322可以產生用於基於該DID存取包含公鑰的DID文件的一個或多個區塊鏈交易並將其發送到與區塊鏈330相關聯的一個或多個區塊鏈節點以進行執行。解析器322可以從區塊鏈330獲得公鑰,並將公鑰返回至該請求的發送方。 圖16示出了根據一些實施例的用於將與去中心化標識或可驗證聲明相關聯的事件資訊從區塊鏈同步至應用的系統。在一些實施例中,解析器322可以用作為仲介並在用於管理DID和VC的區塊鏈330與利用與DID和VC相關聯的資訊的一個或多個服務應用534之間創建資料通道。在一些實施例中,由解析器322創建的資料通道可以用於由提供服務應用534的實體維護的本地資料庫與區塊鏈中儲存的資料之間的同步。在一些實施例中,解析器322可以透過將相關資料從區塊鏈330饋送或推送到服務應用534來支援同步。在一些實施例中,解析器322可以經由軟體介面或平台(例如,BaaS雲端324)與區塊鏈330的一個或多個區塊鏈節點通訊。 在一些實施例中,解析器322可以透過BaaS雲端324獲得被添加到區塊鏈330的新區塊中儲存的資料。所述資料可以包括區塊鏈330上儲存的多個區塊鏈交易,可以包括與DID或VC有關的一個或多個區塊鏈交易。在一些實施例中,此類區塊鏈交易可以基於與它們相關聯的一個或多個區塊鏈合約331被識別。與區塊鏈交易相關聯的資料可以被分類為例如與DID文件相關聯的一個或多個更新和與VC相關聯的一個或多個更新。所述資料可以被發布到訊息佇列1610中,該訊息佇列1610可以包括DID主題訊息佇列1612和VC主題訊息佇列1614。訊息佇列1610可以由訊息代理商或佇列信使平台或服務支援。訊息代理商可以從訊息生產方(例如,解析器322)接收多個訊息,並將所述訊息傳遞給一個或多個消費者(例如,服務應用534)。在一些實施例中,服務應用534可以從DID主題訊息佇列1612或VC主題訊息佇列1614訂閱並收接訊息的一部分。服務應用534可以訂閱與DID相關聯的訊息或更新,該DID與由服務應用534維護的帳戶相關聯。 圖17示出了根據一些實施例的用於從區塊鏈獲得與去中心化標識或可驗證聲明相關聯的更新的方法。以下呈現的方法的操作旨在是說明性的。取決於實施方式,所述方法可以包括以各種次序或並存執行的附加的、更少的或可選的步驟。在一些實施例中,解析器322可從區塊鏈330獲得與DID或VC相關聯的一個或多個資訊,並將更新提供給伺服器311。伺服器311可以與基於與DID或VC相關聯的資訊提供服務的用戶側系統310相關聯。在一些實施例中,在週期性的基礎上或在選擇的時間點以合適的方式,解析器322可以存取區塊鏈330的最新版本並從區塊鏈330獲得事件資料。所述事件資料可以包括與區塊鏈330上儲存的多個DID文件相關聯的多個更新和/或與多個VC相關聯的多個更新。 在一些實施例中,在步驟1702處,解析器322可以將同步任務發送到其監聽器424,以發起獲得更新的處理。監聽器424可以獲得解析器322之前尚未存取或儲存的區塊鏈330中的新資料。來自區塊鏈330的資料可以被儲存在與解析器322相關聯的資料庫423中。在步驟1704處,監聽器424可以獲得區塊鏈330的目前高度。區塊鏈330中的區塊的高度可以被定義為區塊鏈330上的該區塊之前的區塊的數量。區塊鏈330的高度可以等於區塊鏈330中最新區塊的高度。在步驟1706處,監聽器424可以將獲得的區塊鏈的目前高度與資料庫423中目前儲存的資料對應的區塊鏈中的最大高度進行比較。資料庫423可以儲存區塊鏈330的完整副本、區塊鏈330的一部分或來自區塊鏈330的各個部分的資料。為了確定最大高度值,監聽器424可以識別區塊鏈330中包含資料庫423中儲存的資料的區塊,並在所識別的區塊中找到具有最大高度的區塊。區塊鏈330中該區塊的高度將是最大高度。如果該儲存資料的最大高度小於區塊鏈330的目前高度,監聽器424可以確定新資料已被添加到區塊鏈,並且需要對資料庫423進行更新。在步驟1708處,監聽器可以從區塊鏈獲得多個區塊。每個獲得的區塊可以對應於區塊鏈中大於最大高度的高度。換句話說,獲得的區塊是沒有被解析器322儲存的新添加到區塊鏈330的區塊。 在一些實施例中,解析器322可以過濾從區塊鏈330獲得的事件資料以識別與DID、DID文件或VC有關的事件資料。在步驟1710處,監聽器424可以在獲得的新區塊中搜尋涉及與DID或VC相關聯的一個或多個區塊鏈合約331的交易。新創建的區塊中的一個或多個交易可以是一個或多個區塊鏈合約331的輸入或輸出,因此可以包括其對應區塊鏈合約331的標識。解析器322可基於其包含的與例如DID的創建、DID文件的更新、VC狀態的更新、其他操作或其任何組合相關聯的區塊鏈合約的標識來識別感興趣的交易。從而解析器322可以收集與DID或VC相關聯區塊鏈合約相關聯的一個或多個輸入和輸出。解析器322可以進一步識別與對區塊鏈330上儲存的資訊的更新有關的一個或多個交易,該資訊與一個或多個DID、DID文件或VC有關。在步驟1712處,監聽器424可以將獲得的交易或其資料發布到訊息佇列1610。在步驟1714處,監聽器424可以將事件資料儲存在資料庫423中。在步驟1716處,監聽器424可以將確認同步任務完成的訊息返回到解析器322。 在一些實施例中,訊息佇列1610可以向用戶側系統310使用的用戶代理411提供更新。在步驟1718處,與訊息佇列1610相關聯的訊息代理商應用可以向用戶代理411發送多個更新。在1720處,用戶代理411可以基於從訊息佇列1610接收的更新來更新本地資料庫416。作為示例,用戶代理411可以基於接收的更新來更新儲存DID文件的狀態以及其對應DID的結構資料庫。 在一些實施例中,用戶代理411可以向用戶側系統310提供該更新。作為示例,在步驟1722處,用戶代理411可以經由代理服務API 410從與用戶側系統310相關聯的伺服器311接收對與一個或多個DID、DID文件或VC相關聯的更新的請求。用戶代理411可以在步驟1724處在資料庫416中查詢此類更新,並在步驟1726處獲得該更新。在步驟1728處,用戶代理411可以將請求的更新發送到伺服器331。 在一些實施例中,解析器322可以直接向用戶代理411提供與一個或多個DID或VC相關聯的更新且無需使用訊息佇列1610。作為示例,在步驟1730處,解析器322可以接收對與從區塊鏈330獲得的事件資料相關聯的資訊的請求。所述請求的資訊可以包括與一個或多個DID、DID文件或VC相關聯的更新。在一些實施例中,所述請求可以包括與用戶側系統310相關聯的一個或多個帳戶標識。可以基於預儲存的帳戶標識和DID之間的映射關係識別一個或多個DID。然後,可以識別和提供與關於DID的事件資料相關聯的資訊。解析器322可以在步驟1732處在資料庫423中查詢所請求的資訊,並在步驟1734中獲得所請求的資訊。在步驟1736處,解析器322可以將所請求的資訊發送至用戶代理411。在一些實施例中,解析器322可以將關於與一個或多個DID文件或VC相關聯的一個或多個更新的資訊提供給用戶代理411或被配置為管理多個用戶的DID或VC的其他合適的代理服務或軟體。可選擇地,解析器322可以將此類資訊直接提供給外部系統諸如伺服器311。 在一些實施例中,透過使用訊息佇列1610來遞送與區塊鏈事件相關聯的資訊並將此類資訊保存在本地資料庫423中,解析器可以以高效且低成本的方式向使用此類資訊的系統(例如,代理服務321、用戶側系統310)提供事件資訊。使用此類資訊的系統減輕了在區塊鏈330上存取資訊或執行操作的負擔。相反,解析器322可以與區塊鏈330聯合執行操作,並批量獲得事件和更新資訊。實體可以直接從解析器322及其資料庫423獲取所需的資訊。 圖18示出了根據一些實施例的用於從區塊鏈獲得可驗證聲明的狀態的方法。以下呈現的方法的操作旨在是說明性的。取決於實施方式,所述方法可以包括以各種次序或並存執行的附加的、更少的或可選的步驟。在一些實施例中,與一個或多個VC相關聯的狀態可以被儲存在區塊鏈330上。解析器322可以從區塊鏈330獲得與VC狀態相關聯的資訊,並將其提供給一個或多個其他系統。在一些實施例中,在步驟1802處,解析器322可以將同步任務發送到監聽器424,以開始從區塊鏈獲取VC的狀態的處理。在步驟1804處,監聽器424可以針對這種狀態查詢儲存在區塊鏈330中的資料。在一些實施例中,監聽器424可將用於獲得VC狀態的一個或多個區塊鏈交易發送到與區塊鏈330相關聯的一個或多個區塊鏈節點以進行執行。所述區塊鏈交易可包括與作為查詢主題的VC相關聯的一個或多個標識。所述區塊鏈交易可以調用被配置為管理標識和VC的狀態之間的對應關係的一個或多個區塊鏈合約。在步驟1806處,監聽器424可以獲得一個或多個VC的狀態資訊。監聽器424還可獲得與狀態資訊有關的與每個VC相關聯的雜湊值。雜湊值可用於本文所述的驗證目的。在步驟1808處,監聽器424可以基於獲得的狀態資訊更新資料庫423。在步驟1810處,監聽器424可以將確認同步任務已經完成的訊息返回到解析器322。在一些實施例中,解析器322還可以回應於請求獲得VC的狀態資訊。解析器322可以接收對與VC相關聯的資訊的查詢。所述查詢可以包括用於VC的一個或多個標識。作為回應,解析器322可以基於一個或多個標識將用於存取與VC相關聯的資訊的區塊鏈交易發送到區塊鏈330的區塊鏈節點。 在一些實施例中,解析器322可以回應於來自代理服務321的請求提供關於一個或多個VC的狀態資訊。例如,在步驟1812處,與用戶側系統310相關聯的伺服器311可以將請求發送到代理321,以查詢VC的狀態。在步驟1814處,代理321可以向解析器322發送對所查詢的狀態資訊的請求。在步驟1816處,解析器322可以針對回應資訊搜尋資料庫423,並在步驟1818處獲得VC的狀態。在步驟1820處,解析器322可以將狀態資訊發送到代理321。在步驟1822處,代理321可以將狀態資訊發送到伺服器311。 圖19示出了根據一些實施例的用以實現解析器服務的方法的流程圖。方法1900可以由用於解析器服務的設備、裝置或系統執行。方法1900可以由圖1至圖5、圖15和圖16所示的環境或系統的一個或多個組件,例如解析器服務322的一個或多個組件執行。取決於實施方式,方法1900可以包括以各種順序或並存執行的附加、更少或替代步驟。 方塊1910包括從區塊鏈獲得事件資料。方塊1920包括將所述事件資料儲存在資料庫中。在一些實施例中,所述事件資料包括與區塊鏈上儲存的多個去中心化標識(DID)文件相關聯的多個更新。在一些實施例中,所述事件資料還包括與多個可驗證聲明(VC)相關聯的多個更新。在一些實施例中,獲得事件資料包括週期性地存取區塊鏈的最新版本。 在一些實施例中,獲得事件資料包括:獲得區塊鏈的目前高度;將獲得的區塊鏈的目前高度與目前儲存在資料庫中的資料對應的區塊鏈的最大高度進行比較;以及從區塊鏈中獲取多個區塊,其中,每個獲得的區塊對應於區塊鏈中大於最大高度的高度。在一些實施例中,獲得事件資料還包括在獲得的區塊中搜尋涉及與DID或VC相關聯的一個或多個區塊鏈合約的交易,以及收集與所述一個或多個區塊鏈合約相關聯的一個或多個輸入和輸出。 方塊1930包括接收對與事件資料相關聯的資訊的請求。方塊1940包括回應所述請求,提供有關與一個或多個DID文件關聯的一個或多個更新的資訊。在一些實施例中,提供有關一個或多個更新的資訊包括將所述資訊發送到配置為管理多個用戶的DID或VC的線上代理。在一些實施例中,接收對與事件資料相關聯的資訊的請求包括:從實體接收所述請求,其中,所述請求包括一個或多個帳戶標識;提供有關一個或多個更新的資訊包括:基於預儲存的多個帳戶標識和多個DID之間的映射關係識別一個或多個DID,以及將與所識別的一個或多個DID相關聯的資訊發送給實體。 在一些實施例中,所述方法還包括:接收用於創建DID的請求,以及將用於創建DID以及用於添加與所述DID相關聯的DID文件的一個或多個區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收用於更新DID文件的請求;以及將用於更新DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收對DID文件的查詢,所述查詢包括DID;以及將用於基於所述DID識別DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收對與DID相關聯的公鑰的查詢,以及將用於基於DID存取包含公鑰的DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。 在一些實施例中,所述方法還包括:接收對與VC相關聯的資訊的查詢,所述查詢包括用於VC的一個或多個標識;以及將用於基於一個或多個標識存取與VC的相關聯的資訊的區塊鏈交易發送至區塊鏈節點以進行執行。 圖20示出了根據一些實施例的用以實現解析器服務的電腦系統的方塊圖。所述系統2000可以是圖3的服務側系統320的一個或多個組件或圖1至圖5、圖15和圖16中示出的一個或多個其他組件的實施方式的示例。方法1900可以由電腦系統2000來實現。電腦系統2000可以包括一個或多個處理器和一個或多個非暫態性電腦可讀儲存媒體(例如,一個或多個記憶體),所述非暫態性電腦可讀儲存媒體耦接到一個或多個處理器並配置有可由一個或多個處理器執行的指令,以促使系統或設備(例如,處理器)執行上述方法,例如方法1900。電腦系統2000可以包括與指令(例如,軟體指令)相對應的各種單元/模組。在一些實施例中,電腦系統2000可以被稱為用以實現解析器服務的裝置。所述裝置可以包括:獲得模組2010,用於從區塊鏈獲得事件資料,其中,所述事件資料包括與區塊鏈上儲存的多個去中心化標識(DID)文件相關聯的多個更新;儲存模組2020,用於將所述事件資料儲存在資料庫中;接收模組2030,用於接收對與所述事件資料相關聯的資訊的請求;以及提供模組2040,用於回應於所述請求,提供關於與一個或多個DID文件相關聯的一個或多個更新的資訊。 這裡描述的技術由一個或多個專用計算裝置實現。專用計算裝置可以是桌上型電腦系統、伺服器電腦系統、可攜式電腦系統、手持設備、網路設備或包含硬連線和/或程式邏輯以實現這些技術的任何其他裝置或裝置的組合。專用計算裝置可以被實現為個人電腦、膝上型電腦、蜂巢式電話、照相電話、智慧型電話、個人數位助理、媒體播放機、導航裝置、電子郵件裝置、遊戲控制台、平板電腦、可穿戴裝置或其組合。計算裝置通常由操作系統軟體控制和協調。傳統的操作系統控制和調度用於執行的電腦進程,執行記憶體管理,提供檔案系統、網路、I/O服務,以及提供用戶介面功能,例如圖形用戶介面(“GUI”)等。這裡描述的各種系統、設備、儲存媒體、模組和單元可以在專用計算裝置或一個或多個專用計算裝置的一個或多個計算晶片中實現。在一些實施例中,這裡描述的指令可以在專用計算裝置上的虛擬機器中實現。當被執行時,指令可以促使專用計算裝置執行本文描述的各種方法。虛擬機器可以包括軟體、硬體或其組合。 圖21示出了電腦系統的方塊圖,其中,可以實現本文描述的任何實施例。系統2100可以在圖1至圖5、圖15和圖16所示的環境或系統的任何組件中實現。圖1至圖5、圖15和圖16所示的軟體應用程式或服務可以在系統2100上被實現或操作。圖6至圖14和圖17至圖19所示的一個或多個示例方法可以由電腦系統2100的一種或多種實施方式執行。 電腦系統2100可以包括用於通訊資訊的匯流排2102或其他通訊機制,與匯流排2102耦接以處理資訊的一個或多個硬體處理器2104。硬體處理器2104可以是例如一個或多個通用微處理器。 電腦系統2100還可以包括耦接到匯流排2102用於儲存可由處理器2104執行的資訊和指令的主記憶體2106,例如隨機存取記憶體(RAM)、快取記憶體和/或其他動態儲存裝置。主記憶體2106還可以用於在執行可由處理器2104執行的指令期間儲存臨時變數或其他中間資訊。當這些指令被儲存在處理器2104可存取的儲存媒體中時,這些指令將電腦系統2100呈現為被定制以執行指令中指定的操作的專用機器。電腦系統2100還可以包括耦接到匯流排2102用於儲存處理器2104的靜態資訊和指令的唯讀記憶體(ROM)2108或其他靜態儲存裝置。儲存設備2110諸如磁碟、光碟或USB拇指驅動器(隨身碟(flash drive))等可以被提供並被耦接到匯流排2102以儲存資訊和指令。 電腦系統2100可以使用與電腦系統相結合使得電腦系統2100成為專用機器或將電腦系統2100編程為專用機器的定制硬連線邏輯、一個或多個ASIC或FPGA、韌體和/或程式邏輯實現本文所述的技術。根據一個實施例,這裡描述的操作、方法和處理由電腦系統2100回應於處理器2104執行主記憶體2106中包含的一個或多個指令的一個或多個序列而執行。這些指令可以從例如儲存裝置2110的另一儲存媒體讀入主記憶體2106。主記憶體2106中包含的指令序列的執行可以促使處理器2104執行這裡描述的處理步驟。在替代實施例中,可以使用硬連線電路代替軟體指令或與軟體指令組合。 主記憶體2106、ROM 2108和/或儲存裝置2110可以包括非暫態性儲存媒體。這裡使用的術語“非暫態性媒體”和類似術語是指儲存促使機器以特定方式操作的資料和/或指令的媒體,所述媒體不包括暫態性信號。這種非暫態性媒體可以包括非易失性媒體和/或易失性媒體。非易失性媒體包括例如光碟或磁碟,例如儲存裝置2110。易失性媒體包括動態記憶體,例如主記憶體2106。習知形式的非暫態性媒體包括,例如,軟碟、軟碟、硬碟、固態驅動器、磁帶或任何其他磁性資料儲存媒體、CD-ROM、任何其他光學資料儲存媒體、具有孔圖案的任何物理媒體、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其他記憶體晶片或盒式磁帶以及它們的網路版本。 電腦系統2100還可以包括耦接到匯流排2102的網路介面2118。網路介面2118可以提供耦接到一個或多個網路鏈路的雙向資料通訊,所述一個或多個網路鏈路連接到一個或多個本地網路。例如,網路介面2118可以是整合式服務數位網路(ISDN)卡、電纜數據機、衛星數據機或數據機,以提供與相應類型的電話線的資料通訊連接。作為另一示例,網路介面2118可以是區域網(LAN)卡,以提供與相容LAN(或WAN組件以與WAN通訊)的資料通訊連接。還可以實現無線鏈路。在任何這樣的實施方式中,網路介面2118可以發送和接收攜帶表示各種類型的資訊的數位資料流程的電信號、電磁信號或光信號。 電腦系統2100可以透過網路、網路鏈路和網路介面2118發送訊息和接收資料,包括程式碼。在網際網路示例中,伺服器可以透過網際網路、ISP、本地網路和網路介面2118發送用於應用程式的請求代碼。 所接收到的代碼當被接收時可以由處理器2104執行,和/或儲存在儲存設備2110或其他非易失性記憶體中以用於稍後執行。 前面部分中描述的每個處理、方法和演算法可以體現在由包括電腦硬體的一個或多個電腦系統或者電腦處理器執行的代碼模組中並且被其完全或部分自動化地實現。處理和演算法可以部分或全部地在專用電路中實現。 上述各種特徵和處理可以彼此獨立地使用,或者可以以各種方式組合。所有可能的組合和子組合都旨在落入本文的範圍內。另外,在一些實施方式中可以省略某些方法或處理方塊。本文描述的方法和處理也不限於任何特定順序,與其相關的方塊或狀態可以以適當的其他循序執行。例如,所描述的方塊或狀態可以以不同於具體揭示的循序執行,或者多個方塊或狀態可以在單個方塊或狀態中組合。方塊或狀態的示例可以串列、並行或以某種其他方式執行。可以將方塊或狀態添加到所揭示的實施例中或從所揭示的實施例中移除。這裡描述的系統和組件的示例可以與所描述的不同地被配置。例如,與所揭示的實施例相比,可以添加、移除或重新布置組件。 本文描述的方法的各種操作可以至少部分地由被臨時配置(例如,透過軟體)或被永久配置為執行相關操作的一個或多個處理器執行。無論是臨時配置還是永久配置,這樣的處理器可以構成處理器實現的引擎,所述處理器實現的引擎用於執行本文描述的一個或多個操作或功能。 類似地,這裡描述的方法可以至少部分地由處理器來實現,其中,特定處理器是硬體的示例。例如,所述方法的至少一些操作可以由一個或多個處理器或處理器實現的引擎來執行。此外,一個或多個處理器還可操作以支援“雲端計算”環境中的相關操作的性能,或作為“軟體即服務”(SaaS)操作。例如,至少一些操作可以由一組電腦(作為包括處理器的機器的示例)執行,這些操作可以經由網路(例如,網際網路)經由一個或多個適當的介面(例如,應用程式介面(API))被存取。 某些操作的性能可以在處理器之間分配,不僅駐留在單個機器中,而且跨多個機器被部署。在一些實施例中,處理器或處理器實現的引擎可以位於單個地理位置(例如,在家庭環境、辦公室環境或伺服器群內)。在其他實施例中,處理器或處理器實現的引擎可以分布在多個地理位置。 在本文中,多個實例可以實現作為單個實例所描述的組件、操作或結構。儘管一個或多個方法的各個操作被示出並描述為獨立的操作,但是可以同時執行一個或多個獨立的操作,並且不需要以所示的循序執行所述操作。在配置中作為獨立組件呈現的結構和功能可以實現為組合結構或組件。類似地,作為單個組件呈現的結構和功能可以實現為獨立的組件。這些和其他變化、修改、添加和改進都落入本文中的專利標的的範圍內。 儘管已經參考具體實施例描述了專利標的的概述,但是在不脫離本文的實施例的較寬範圍的情況下,可以對這些實施例進行各種修改和改變。具體實施方式不應被視為具有限制意義,並且各種實施例的範圍僅由所附申請專利範圍以及這些申請專利範圍所賦予的等同物的全部範圍限定。此外,這裡使用的相關術語(諸如“第一”、“第二”、“第三”等)不表示任何順序、高度或重要性,而是用於將一個組件與另一組件區分開。此外,術語“一”、“一個”和“多個”在本文中並不表示對數量的限制,而是表示存在至少一個所述的物品。
100:環境 111:客戶端 112:區塊鏈系統 113:區塊鏈系統 114:區塊鏈系統 118:伺服器端 221:用戶端應用 223:遠端程式呼叫(RPC)介面 310:用戶側系統 311:伺服器 312:軟體開發套件(SDK) 313:資料庫 320:服務側系統 321:代理 322:解析器 323:密鑰管理系統(KMS) 324:BaaS雲端 330:區塊鏈 331:區塊鏈合約 331a,331b,331c:DID合約 331d,331e,331f:可驗證聲明合約 410:DID代理服務API 411:用戶代理 412:發布者代理 413:驗證者代理 414:可驗證聲明儲存庫 415:記憶體 416:資料庫 420:DID解析器API 421:DID解析器 422:VC解析器 423:資料庫 424:監聽器 A1,A2,A3:節點 510:底層或核心層 511:方法庫 520:中間層或增強層 521:可驗證資料註冊表 522:DID中心 523:DID解析庫 524:DID認證庫 530:上層或擴展層 531:發布者應用 532:驗證者應用 533:身份管理應用 534:服務應用 1502:帳戶創建執行器 1504:DID文檔更新執行器 1602:DID文檔更新 1604:VC更新 1610:訊息查詢 1612:DID主題訊息佇列 1614:VC主題訊息佇列 2000:電腦系統 2010:獲得模組 2020:儲存模組 2030:接收模組 2040:提供模組 2100:電腦系統 2102:匯流排 2104:處理器 2106:主記憶體 2108:唯讀記憶體(ROM) 2110:記憶體 2118:網路介面
[圖1]示出了根據一些實施例的與區塊鏈相關聯的網路環境。 [圖2]示出了根據一些實施例的用以實現區塊鏈交易的框架。 [圖3]示出了根據一些實施例的與用於管理去中心化標識和可驗證聲明的系統相關聯的網路環境。 [圖4]示出了根據一些實施例的與用於管理去中心化標識和可驗證聲明的基於區塊鏈的系統相關聯的架構。 [圖5]示出了根據一些實施例的與用以實現與去中心化標識和可驗證聲明相關聯的功能的各種示例的系統相關聯的網路環境。 [圖6]示出了根據一些實施例的用於創建去中心化標識的方法。 [圖7]示出了根據一些實施例的用於使用DID認證服務認證去中心化標識的方法。 [圖8]示出了根據一些實施例的用於使用身份管理應用認證去中心化標識的方法。 [圖9]示出了根據一些實施例的用於發布可驗證聲明的方法。 [圖10]示出了根據一些實施例的用於驗證可驗證聲明的方法。 [圖11]示出了根據一些實施例的用於使用代理服務創建去中心化標識的方法。 [圖12]示出了根據一些實施例的用於使用代理服務認證去中心化標識的方法。 [圖13]示出了根據一些實施例的用於使用代理服務發布可驗證聲明的方法。 [圖14]示出了根據一些實施例的用於使用代理服務驗證可驗證聲明的方法。 [圖15]示出了根據一些實施例的解析器的結構。 [圖16]示出了根據一些實施例的用於將與去中心化標識或可驗證聲明相關聯的事件資訊從區塊鏈同步至應用的系統。 [圖17]示出了根據一些實施例的用於從區塊鏈獲得與去中心化標識或可驗證聲明相關聯的更新的方法。 [圖18]示出了根據一些實施例的用於從區塊鏈獲得可驗證聲明的狀態的方法。 [圖19]示出了根據一些實施例的用以實現解析器服務的方法的流程圖。 [圖20]示出了根據一些實施例的用以實現解析器服務的電腦系統的方塊圖。 [圖21]示出了電腦系統的方塊圖,其中,可以實現本文描述的任何實施例。
322:解析器
330:區塊鏈
420:DID解析器API
423:資料庫
424:監聽器
1502:帳戶創建執行器
1504:DID文檔更新執行器

Claims (15)

  1. 一種電腦實現的用以實現解析器服務的方法,包括: 從區塊鏈獲得事件資料,其中,該事件資料包括與該區塊鏈上儲存的多個去中心化標識DID文件相關聯的多個更新; 將該事件資料儲存在資料庫中; 接收對與該事件資料相關聯的資訊的請求;以及 回應該請求,提供有關與該DID文件中的一個或多個相關聯的一個或多個更新的資訊。
  2. 如請求項1的方法,其中,該事件資料還包括與多個可驗證聲明VC相關聯的多個更新。
  3. 如請求項1或2的方法,其中,該獲得事件資料包括:週期性地存取該區塊鏈的最新版本。
  4. 如請求項1或2的方法,其中,該獲得事件資料包括: 獲得該區塊鏈的目前高度; 將獲得的該區塊鏈的目前高度與該資料庫中目前儲存的資料對應的該區塊鏈中的最大高度進行比較;以及 從該區塊鏈中獲得多個區塊,其中,每個獲得的區塊對應於該區塊鏈中大於該最大高度的高度。
  5. 如請求項4的方法,其中,該獲得事件資料還包括: 在該獲得的區塊中搜尋涉及與DID或VC相關聯的一個或多個區塊鏈合約的交易;以及 收集與該一個或多個區塊鏈合約相關聯的一個或多個輸入和輸出。
  6. 如請求項1或2的方法,其中: 該提供有關一個或多個更新的資訊包括:將該資訊發送到被配置為管理多個用戶的DID或VC的線上代理。
  7. 如請求項1或2的方法,其中: 該接收對與該事件資料相關聯的資訊的請求包括:從實體接收該請求,其中,該請求包括一個或多個帳戶標識;以及 該提供關於一個或多個更新的資訊包括:基於預儲存的多個帳戶標識和多個DID之間的映射關係識別一個或多個DID,以及將與所識別出的一個或多個DID相關聯的資訊發送至該實體。
  8. 如請求項1或2的方法,還包括: 接收用以創建DID的請求;以及 發送用以創建該DID以及將與該DID相關聯的DID文件添加到區塊鏈節點的一個或多個區塊鏈交易以進行執行。
  9. 如請求項1或2的方法,還包括: 接收用以更新DID文件的請求;以及 將用以更新該DID文件的區塊鏈交易發送到區塊鏈節點以進行執行。
  10. 如請求項1或2的方法,還包括: 接收對DID文件的查詢,該查詢包括DID;以及 將用以基於該DID識別該DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。
  11. 如請求項1或2的方法,還包括: 接收對與DID相關聯的公鑰的查詢;以及 將用以基於該DID存取包含該公鑰的DID文件的區塊鏈交易發送至區塊鏈節點以進行執行。
  12. 如請求項1或2的方法,還包括: 接收對與VC相關聯的資訊的查詢,該查詢包括用於該VC的一個或多個標識;以及 將用以基於該一個或多個標識存取與該VC相關聯的資訊的區塊鏈交易發送至區塊鏈節點以進行執行。
  13. 一種用以實現解析器服務的系統,包括: 一個或多個處理器;以及 耦接到該一個或多個處理器並具有指令儲存在其上的一個或多個電腦可讀記憶體,該指令能由該一個或多個處理器執行以執行如請求項1至12中任一項所述的方法。
  14. 一種用以實現解析器服務的裝置,包括用以執行如請求項1至12中的任一項所述的方法的多個模組。
  15. 一種非暫態性電腦可讀儲存媒體,配置有能由一個或多個處理器執行的指令,以促使該一個或多個處理器執行如請求項1至12中任一項所述的方法。
TW109110468A 2019-07-02 2020-03-27 用以實現用於去中心化標識的解析器服務的系統和方法 TWI721840B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
WOPCT/CN2019/094396 2019-07-02
PCT/CN2019/094396 WO2019179533A2 (en) 2019-07-02 2019-07-02 System and method for issuing verifiable claims
WOPCT/CN2019/095303 2019-07-09
PCT/CN2019/095303 WO2019179537A2 (en) 2019-07-02 2019-07-09 System and method for implementing a resolver service for decentralized identifiers

Publications (2)

Publication Number Publication Date
TW202103033A true TW202103033A (zh) 2021-01-16
TWI721840B TWI721840B (zh) 2021-03-11

Family

ID=67988429

Family Applications (3)

Application Number Title Priority Date Filing Date
TW109109956A TWI737236B (zh) 2019-07-02 2020-03-25 用於發佈可驗證聲明的方法、系統、非暫時性電腦可讀儲存媒體和裝置
TW109110468A TWI721840B (zh) 2019-07-02 2020-03-27 用以實現用於去中心化標識的解析器服務的系統和方法
TW109110467A TWI725793B (zh) 2019-07-02 2020-03-27 用於將分散識別符映射到真實世界實體的系統及方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW109109956A TWI737236B (zh) 2019-07-02 2020-03-25 用於發佈可驗證聲明的方法、系統、非暫時性電腦可讀儲存媒體和裝置

Family Applications After (1)

Application Number Title Priority Date Filing Date
TW109110467A TWI725793B (zh) 2019-07-02 2020-03-27 用於將分散識別符映射到真實世界實體的系統及方法

Country Status (6)

Country Link
US (5) US11082233B2 (zh)
EP (5) EP3688930B1 (zh)
CN (2) CN111095865B (zh)
SG (5) SG11202003757TA (zh)
TW (3) TWI737236B (zh)
WO (5) WO2019179533A2 (zh)

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11394718B2 (en) * 2019-06-10 2022-07-19 Microsoft Technology Licensing, Llc Resolving decentralized identifiers using multiple resolvers
CN111316303B (zh) 2019-07-02 2023-11-10 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
WO2019179533A2 (en) 2019-07-02 2019-09-26 Alibaba Group Holding Limited System and method for issuing verifiable claims
WO2019179534A2 (en) 2019-07-02 2019-09-26 Alibaba Group Holding Limited System and method for creating decentralized identifiers
WO2019179535A2 (en) 2019-07-02 2019-09-26 Alibaba Group Holding Limited System and method for verifying verifiable claims
CN111164594B (zh) 2019-07-02 2023-08-25 创新先进技术有限公司 用于将去中心化标识映射到真实实体的系统和方法
CN111213147B (zh) 2019-07-02 2023-10-13 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
US11363032B2 (en) 2019-08-22 2022-06-14 Microsoft Technology Licensing, Llc Resolving decentralized identifiers at customized security levels
US10965447B1 (en) * 2019-09-10 2021-03-30 Currency Com Limited Distributed blockchain-type implementations configured to manage tokenized digital assets and improved electronic wallets, and methods of use thereof
CN110795501A (zh) * 2019-10-11 2020-02-14 支付宝(杭州)信息技术有限公司 基于区块链的可验证声明的创建方法、装置、设备及系统
WO2020035090A2 (en) 2019-11-08 2020-02-20 Alipay (Hangzhou) Information Technology Co., Ltd. Lightweight decentralized application platform
WO2020035089A2 (en) 2019-11-08 2020-02-20 Alipay (Hangzhou) Information Technology Co., Ltd. System and method for blockchain-based decentralized application development
CN110798483A (zh) * 2019-11-12 2020-02-14 北京芯际科技有限公司 一种基于区块链的身份认证的方法
EP4062308A1 (en) * 2019-11-19 2022-09-28 Consensys AG Network multi-tenant architecture for distributed ledger systems
KR102245382B1 (ko) * 2019-12-31 2021-04-28 주식회사 코인플러그 블록체인 네트워크 기반의 가상 공통 아이디 서비스 방법 및 이를 이용한 서비스 제공 서버
CN111277577B (zh) * 2020-01-14 2022-06-07 北京百度网讯科技有限公司 数字身份验证方法、装置、设备和存储介质
LU101620B1 (en) * 2020-01-30 2021-07-30 Microsoft Technology Licensing Llc Issuing verifiable pairwise claims
WO2020098837A2 (en) 2020-02-03 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable guarantees
WO2020098833A2 (en) 2020-02-03 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable gurantees
WO2020098838A2 (en) 2020-02-03 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable gurantees
CN113826134B (zh) 2020-02-03 2024-05-28 支付宝(杭州)信息技术有限公司 基于区块链的可信保函
WO2020098835A2 (en) 2020-02-03 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable gurantees
WO2020098834A2 (en) 2020-02-03 2020-05-22 Alipay (Hangzhou) Information Technology Co., Ltd. Blockchain-based trustable gurantees
SG11202012921XA (en) 2020-02-14 2021-01-28 Alipay Hangzhou Inf Tech Co Ltd Data authorization based on decentralized identifiers
SG11202013204QA (en) 2020-03-13 2021-01-28 Alipay Hangzhou Inf Tech Co Ltd Data authorization based on decentralized identifiers
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
CN111339536B (zh) * 2020-05-15 2020-11-24 支付宝(杭州)信息技术有限公司 一种基于安全执行环境的数据验证方法及装置
CN111989663A (zh) 2020-06-08 2020-11-24 支付宝实验室(新加坡)有限公司 基于区块链的智能合约池
EP3844655B1 (en) 2020-06-08 2023-05-03 Alipay Labs (Singapore) Pte. Ltd. Managing user authorizations for blockchain-based custom clearance services
EP3841507B1 (en) 2020-06-08 2023-04-26 Alipay Labs (Singapore) Pte. Ltd. User management of blockchain-based custom clearance service platform
CN111936995A (zh) 2020-06-08 2020-11-13 支付宝实验室(新加坡)有限公司 海关清关数据的分布式存储
EP3844699A4 (en) 2020-06-08 2021-08-18 Alipay Labs (Singapore) Pte. Ltd. BLOCKCHAIN-BASED PROCESSING OF IMPORT CLEARANCE DATA
EP3844654B1 (en) 2020-06-08 2023-05-17 Alipay Labs (Singapore) Pte. Ltd. Blockchain-based document registration for custom clearance
KR102412852B1 (ko) 2020-06-26 2022-06-27 주식회사 코인플러그 탈중앙화 아이디 기반의 가상 자산 서비스 제공 방법 및 이를 이용한 가상 자산 서비스 제공 서버
CN111523147B (zh) 2020-07-03 2020-11-24 支付宝(杭州)信息技术有限公司 一种基于区块链的核身方法及相关硬件
CN115812292A (zh) * 2020-07-07 2023-03-17 上海诺基亚贝尔股份有限公司 用于设备预配的方法和装置
CN112035870B (zh) * 2020-07-21 2023-12-08 杜晓楠 去中心化身份系统中隐藏用户具体年龄的方法和计算机可读介质
CN111770199B (zh) 2020-08-31 2020-12-08 支付宝(杭州)信息技术有限公司 一种信息共享方法、装置及设备
CN113129017B (zh) 2020-08-31 2022-06-24 支付宝(杭州)信息技术有限公司 一种信息共享方法、装置及设备
CN112968967B (zh) * 2020-09-25 2023-05-19 支付宝(杭州)信息技术有限公司 区块同步方法及装置
US11228656B1 (en) 2020-10-23 2022-01-18 Express Scripts Strategic Development, Inc. Systems and methods for resilient communication protocols and interfaces
CN112395647B (zh) * 2020-11-02 2023-06-13 迅鳐成都科技有限公司 一种区块链轻节点数据采集系统
CN112506678A (zh) * 2020-12-08 2021-03-16 平安国际智慧城市科技股份有限公司 基于认证和鉴权的rpc远程调用方法、系统以及存储介质
US11972241B2 (en) * 2021-02-26 2024-04-30 Microsoft Technology Licensing, Llc. Validation of payload for deployment to a target environment
KR102559571B1 (ko) * 2021-03-26 2023-07-26 한국전자통신연구원 분산 id를 활용한 소유권 증명 및 이전 내역 증명 방법
US20220329436A1 (en) * 2021-04-13 2022-10-13 International Business Machines Corporation Token-based identity validation via blockchain
US11928049B2 (en) 2021-05-10 2024-03-12 Bank Of America Corporation Blockchain system for source code testing and script generation with artificial intelligence
US20220358031A1 (en) * 2021-05-10 2022-11-10 Bank Of America Corporation Blockchain System for Source Code Testing and Script Generation with Artificial Intelligence
CN113271211B (zh) * 2021-05-18 2023-03-24 网易(杭州)网络有限公司 一种数字身份验证系统、方法、电子设备及存储介质
US11729157B2 (en) * 2021-05-26 2023-08-15 Microsoft Technology Licensing, Llc Bootstrapping trust in decentralized identifiers
US11804966B2 (en) * 2021-05-31 2023-10-31 Microsoft Technology Licensing, Llc Trusted custody chain for verifiable claims
CN113312664B (zh) * 2021-06-01 2022-06-28 支付宝(杭州)信息技术有限公司 用户数据授权方法及用户数据授权系统
CN113395281B (zh) * 2021-06-11 2022-11-01 网易(杭州)网络有限公司 可验证声明的验证方法、装置和电子设备
CN113452704B (zh) * 2021-06-28 2022-08-09 湖南天河国云科技有限公司 基于分布式身份标识的异构工业设备可信互联方法及装置
US20230073938A1 (en) * 2021-08-31 2023-03-09 Mastercard International Incorporated Systems and methods for use in implementing self-sovereign credentials
CN115828223A (zh) * 2021-09-17 2023-03-21 鸿海精密工业股份有限公司 操作系统登录方法、电子设备及存储介质
US11971929B2 (en) 2021-09-24 2024-04-30 Wacom Co., Ltd. Secure signing method, device and system
KR20230064354A (ko) * 2021-11-03 2023-05-10 펜타시큐리티시스템 주식회사 블록체인 기반의 인증 심사 데이터 공유 및 무결성 검증 시스템, 장치 및 방법
US20230142147A1 (en) * 2021-11-10 2023-05-11 Microsoft Technology Licensing, Llc Network communication using proof of presence
CN114944937B (zh) * 2022-04-19 2024-04-09 网易(杭州)网络有限公司 分布式数字身份验证方法、系统、电子设备及存储介质
KR102582016B1 (ko) * 2022-04-29 2023-09-25 케이포시큐리티(주) 분산 아이디 환경을 위한 다계층 통합 해석기 시스템 및 구동 방법
WO2024009544A1 (ja) * 2022-07-06 2024-01-11 株式会社ワコム 書類の署名者の証明に関する方法、コンピュータ、及びプログラム
NL2032459B1 (en) * 2022-07-12 2023-06-16 Shenzhen Blockchain Financial Services Co Ltd Metaverse community governance method, apparatus, terminal device and storage medium
NL2032458B1 (en) * 2022-07-12 2023-06-16 Shenzhen Hande Finmaker Co Ltd Metaverse authentication method, system and apparatus, terminal device and storage medium
CN116011028B (zh) * 2022-12-21 2023-10-20 蚂蚁区块链科技(上海)有限公司 电子签名方法、电子签名设备和电子签名系统

Family Cites Families (196)

* 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
ATE367043T1 (de) 2002-05-24 2007-08-15 Ericsson Telefon Ab L M Verfahren zur authentifizierung eines anwenders bei einem zugang zu einem dienst eines diensteanbieters
US20040158723A1 (en) 2003-02-06 2004-08-12 Root David C. Methods for providing high-integrity enrollments into biometric authentication databases
WO2006065973A2 (en) 2004-12-15 2006-06-22 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
WO2007065262A1 (en) 2005-12-08 2007-06-14 Sxip Identity Corporation Networked identtty 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
US9256742B2 (en) * 2012-01-30 2016-02-09 Intel Corporation Remote trust attestation and geo-location of servers and clients in cloud computing environments
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
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
EP3189414A4 (en) 2014-08-22 2018-04-18 Priv8Pay, Inc. 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
WO2016128569A1 (en) * 2015-02-13 2016-08-18 Yoti Ltd Digital identity system
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
EP3292484B1 (en) 2015-05-05 2021-07-07 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
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
WO2017066002A1 (en) 2015-10-17 2017-04-20 Banqu, Inc. Blockchain-based identity and transaction platform
US10298396B1 (en) 2015-11-10 2019-05-21 Wells Fargo Bank, N.A. Identity management service via virtual passport
US10079682B2 (en) 2015-12-22 2018-09-18 Gemalto Sa Method for managing a trusted identity
CA3002235C (en) 2015-12-22 2021-01-26 Thomson Reuters Global Resources Unlimited Company Methods and systems for identity creation, verification and management
EP3403213A2 (fr) 2016-01-15 2018-11-21 Enrico Maim Procédés et systèmes mis en oeuvre dans une architecture en réseau de noeuds susceptibles de réaliser des transactions basées sur messages
US10142347B2 (en) 2016-02-10 2018-11-27 Bank Of America Corporation System for centralized control of secure access to process data network
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
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
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
CA3227439A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Registry and automated management method for blockchain-enforced smart contracts
CA3013182A1 (en) 2016-02-23 2017-08-31 nChain Holdings Limited Universal tokenisation system for blockchain-based cryptocurrencies
US10237259B2 (en) * 2016-02-29 2019-03-19 Securekey Technologies Inc. Systems and methods for distributed identity verification
EP3424179B1 (en) 2016-03-04 2022-02-16 Ping Identity Corporation 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
EP3455996A4 (en) 2016-05-09 2020-01-22 Nokia Technologies Oy BLOCK CHAIN-BASED RESOURCE MANAGEMENT
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
CA3027424A1 (en) * 2016-07-15 2018-01-18 Knox Spencer Associates Llc Systems and methods for determining, tracking, and predicting common infectious illness outbreaks
US10225088B2 (en) 2016-07-25 2019-03-05 International Business Machines Corporation Deterministic verification of digital identity documents
US10715311B2 (en) 2017-07-28 2020-07-14 Workday, Inc. System and method for blockchain-based user authentication based on a cryptographic challenge
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
US20180052970A1 (en) * 2016-08-16 2018-02-22 International Business Machines Corporation Tracking pathogen exposure
US10325081B2 (en) 2016-08-18 2019-06-18 Hrb Innovations, Inc. Online identity scoring
AU2017315345B2 (en) 2016-08-23 2022-01-06 BBM Health LLC Blockchain-based mechanisms for secure health information resource exchange
CN110036613B (zh) * 2016-09-08 2022-06-10 金融与风险组织有限公司 提供用于去中心化应用的身份认证的系统和方法
CA3154810A1 (en) 2016-10-06 2018-04-12 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
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
US20180374571A1 (en) * 2017-06-23 2018-12-27 EDWARD Via COLLEGE OF OSTEOPATHIC MEDICINE CREDO Logging System
CN107562775B (zh) * 2017-07-14 2020-04-24 创新先进技术有限公司 一种基于区块链的数据处理方法及设备
CN107316239A (zh) 2017-07-14 2017-11-03 众安信息技术服务有限公司 一种基于区块链的信息认证和溯源方法及系统
WO2019023286A1 (en) * 2017-07-24 2019-01-31 Martino William SYSTEMS, METHODS AND APPARATUS BASED ON BLOCK CHAIN TO SECURE 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
US20190087830A1 (en) 2017-09-15 2019-03-21 Pearson Education, Inc. Generating digital credentials with associated sensor data in a sensor-monitored environment
US11397962B2 (en) * 2017-10-09 2022-07-26 American Express Travel Related Services Company, Inc. Loyalty point distributions using a decentralized loyalty ID
US11699166B2 (en) 2017-10-09 2023-07-11 American Express Travel Related Services Company, Inc. Multi-merchant loyalty point partnership
EP3729721A4 (en) 2017-10-11 2021-10-13 Cambridge Blockchain, Inc. SYSTEMS AND PROCESSES FOR MANAGING RELATIONSHIPS BETWEEN DIGITAL IDENTITIES
US10848496B2 (en) 2017-10-12 2020-11-24 Mastercard International Incorporated System and method for secure individual identification across multiple disparate entities
US10135834B1 (en) 2017-10-20 2018-11-20 Social Patent LLC System and method of executing operations in a social network application
US20190121813A1 (en) 2017-10-20 2019-04-25 Social Patent LLC System and Method of Sovereign Digital Identity Search and Bidirectional Matching
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
US10642967B2 (en) 2017-11-28 2020-05-05 American Express Travel Related Services Company, Inc. Single sign-on solution using blockchain
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
US10162968B1 (en) * 2017-11-30 2018-12-25 Mocana Corporation System and method for securely updating a registered device using a development system and a release management system operated by an update provider and an update publisher
US10678598B2 (en) 2017-12-07 2020-06-09 International Business Machines Corporation Enforcing compute equity models in distributed blockchain
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
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
US10790975B2 (en) 2018-01-22 2020-09-29 Microsoft Technology Licensing, Llc Attestation management
US10250381B1 (en) 2018-02-22 2019-04-02 Capital One Services, Llc Content validation using blockchain
US11088826B2 (en) 2018-02-27 2021-08-10 International Business Machines Corporation Managing assets with expiration on a blockchain
US20190266576A1 (en) 2018-02-27 2019-08-29 Anchor Labs, Inc. Digital Asset Custodial System
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
CA3035817A1 (en) 2018-03-06 2019-09-06 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
US11683177B2 (en) 2018-03-27 2023-06-20 Workday, Inc. Digital credentials for location aware check in
WO2019191216A1 (en) 2018-03-27 2019-10-03 Workday, Inc. System for credential storage and verification
US11641278B2 (en) 2018-03-27 2023-05-02 Workday, Inc. Digital credential authentication
US11792180B2 (en) 2018-03-27 2023-10-17 Workday, Inc. Digital credentials for visitor network access
US11716320B2 (en) * 2018-03-27 2023-08-01 Workday, Inc. Digital credentials for primary factor authentication
US11698979B2 (en) 2018-03-27 2023-07-11 Workday, Inc. Digital credentials for access to sensitive data
US11531783B2 (en) 2018-03-27 2022-12-20 Workday, Inc. Digital credentials for step-up authentication
US11700117B2 (en) * 2018-03-27 2023-07-11 Workday, Inc. System for credential storage and verification
US11531975B2 (en) 2018-04-13 2022-12-20 International Business Machines Corporation Network node management on a blockchain
WO2019204315A1 (en) 2018-04-17 2019-10-24 Filmio, Inc. Project creation system using blockchain
US11159306B2 (en) 2018-04-24 2021-10-26 Duvon Corporation Autonomous exchange via entrusted ledger token and transaction management
WO2019210138A1 (en) 2018-04-27 2019-10-31 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
US20190363896A1 (en) 2018-05-26 2019-11-28 Keir Finlow-Bates Blockchain based decentralized and distributed certificate authority
CN113015989A (zh) 2018-06-08 2021-06-22 通信安全集团公司 区块链监督
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
US20200026834A1 (en) 2018-07-23 2020-01-23 One Kosmos Inc. Blockchain identity safe and authentication system
US10911240B2 (en) 2018-07-23 2021-02-02 Hitachi, Ltd. Off-chain blockchain storage with validation
CN109146583A (zh) * 2018-07-24 2019-01-04 腾讯科技(深圳)有限公司 票据处理方法和装置、存储介质及电子装置
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
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 西安纸贵互联网科技有限公司 一种农产品区块链溯源方法及装置
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 北京知道创宇信息技术有限公司 一种去中心化的集群鉴权方法、集群节点及电子设备
CA3061603A1 (en) 2018-11-14 2020-05-14 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
US11468176B2 (en) 2018-12-06 2022-10-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
US11563561B2 (en) 2019-01-31 2023-01-24 Megachain Inc. Systems and methods for linkage data elements
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
CN109936569B (zh) * 2019-02-21 2021-05-28 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化数字身份登录管理系统
CN109918942B (zh) * 2019-02-21 2020-07-31 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化标识符管理系统
CN109936570B (zh) * 2019-02-21 2021-05-28 领信智链(北京)科技有限公司 一种基于以太坊区块链的去中心化标识符属性管理系统
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
WO2019170178A2 (en) 2019-06-28 2019-09-12 Alibaba Group Holding Limited System and method for blockchain address mapping
CN111213147B (zh) 2019-07-02 2023-10-13 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
CN111164594B (zh) 2019-07-02 2023-08-25 创新先进技术有限公司 用于将去中心化标识映射到真实实体的系统和方法
WO2019179534A2 (en) 2019-07-02 2019-09-26 Alibaba Group Holding Limited System and method for creating decentralized identifiers
CN111316303B (zh) 2019-07-02 2023-11-10 创新先进技术有限公司 用于基于区块链的交叉实体认证的系统和方法
WO2019179535A2 (en) 2019-07-02 2019-09-26 Alibaba Group Holding Limited System and method for verifying verifiable claims
WO2019179533A2 (en) 2019-07-02 2019-09-26 Alibaba Group Holding Limited System and method for issuing verifiable claims
WO2021002692A1 (en) 2019-07-03 2021-01-07 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
US20210111867A1 (en) 2021-04-15
WO2019179537A2 (en) 2019-09-26
TWI737236B (zh) 2021-08-21
WO2021000337A1 (en) 2021-01-07
CN111373400B (zh) 2023-11-21
EP3688930A4 (en) 2020-09-23
SG11202005591SA (en) 2021-02-25
EP3788522A1 (en) 2021-03-10
US20200127847A1 (en) 2020-04-23
SG11202003936WA (en) 2021-02-25
EP3788522A4 (en) 2021-03-10
SG11202003757TA (en) 2020-05-28
US11171789B2 (en) 2021-11-09
CN111095865B (zh) 2023-08-04
EP3688930B1 (en) 2021-10-20
US11316697B2 (en) 2022-04-26
WO2019179533A2 (en) 2019-09-26
EP4016544A1 (en) 2022-06-22
WO2021000420A1 (en) 2021-01-07
US20200244439A1 (en) 2020-07-30
EP3688930A2 (en) 2020-08-05
TW202103029A (zh) 2021-01-16
TWI725793B (zh) 2021-04-21
EP3688634A2 (en) 2020-08-05
US10700851B2 (en) 2020-06-30
EP3688634B1 (en) 2022-02-16
CN111095865A (zh) 2020-05-01
EP3688634A4 (en) 2020-10-07
TWI721840B (zh) 2021-03-11
TW202103036A (zh) 2021-01-16
US11082233B2 (en) 2021-08-03
WO2019179537A3 (en) 2020-04-30
SG11202004850PA (en) 2021-02-25
SG11202003946PA (en) 2020-05-28
US20210351934A1 (en) 2021-11-11
EP3814948A4 (en) 2021-12-01
WO2021000419A1 (en) 2021-01-07
US20200145196A1 (en) 2020-05-07
EP3814948A1 (en) 2021-05-05
CN111373400A (zh) 2020-07-03
US10938551B2 (en) 2021-03-02
EP3788522B1 (en) 2022-11-30
WO2019179533A3 (en) 2020-05-07

Similar Documents

Publication Publication Date Title
TWI721840B (zh) 用以實現用於去中心化標識的解析器服務的系統和方法
TWI727716B (zh) 用於創建去中心化標識的系統和方法
TWI748387B (zh) 用於驗證可驗證聲明的系統和方法
US10708060B2 (en) System and method for blockchain-based notification