Aries Agent 的組成要素

一個 Aries Agent 通常是由以下的組件構成的

密鑰管理服務 Key Management Service(KMS)

原來在 Indy 中被稱為數(shù)字錢包,在 Aries 中被稱為 KMS。KMS 就是用來存儲像 DIDs,密鑰,可驗證的憑證以及其他私有信息的一個數(shù)據(jù)庫。

SQLite 實現(xiàn)的 KMS 可以用來做一個小型的 agent,或者是手機的 agent。PostgreSQL 實現(xiàn)的 KMS 可以用于企業(yè)級的應用。不管是兩種中的哪個,其存儲的數(shù)據(jù)都是經過加密的。

因為存儲在 KMS 里的數(shù)據(jù)都是加密的,那么數(shù)據(jù)是如何被加密和解密的呢?通常是通過運行著 agent 的設備的硬件來處理的,比如手機上的指紋服務,人臉識別服務。所以所有的需要使用存儲在 KMS 中的密鑰才能進行的操作,比如創(chuàng)建、存儲、驗證數(shù)據(jù)等,都只能通過調用 KMS 的代碼以及上邊所講的使用運行 agent 的設備硬件提供的密鑰來實現(xiàn),這樣可以避免密鑰被暴漏給其他人或者程序。

Agent 通信接口

Agent 通信接口負責在 agent 間建立連接,發(fā)送和接收消息。Aries 使用 DIDComm(DID Communication)協(xié)議來在 agent 間進行通信的。

賬本接口

Agent 需要提供跟賬本進行互動的接口,比如查詢、插入 DIDs 等。一個 Aries 賬本接口一般會分為三部分:

  • DID resolver:負責處理接收到的 DID,到賬本中取回 DID 文檔(DIDDoc)
  • 賬本寫入機制:負責如何向賬本中寫入數(shù)據(jù)
  • 可驗證憑證的處理:負責處理可驗證的憑證

控制器 controller

Controller 就是為不同業(yè)務服務的應用程序,他提供了業(yè)務規(guī)則。對于一個手機 agent,它會設計針對不同的操作應該觸發(fā)指定的服務。對于一個頒發(fā)/驗證憑證的 agent,controller 可能會是一個企業(yè)已有的數(shù)據(jù)庫系統(tǒng),從中提取元數(shù)據(jù)并生成新的憑證數(shù)據(jù)。這個對于企業(yè)(憑證頒發(fā)者)以及個人(數(shù)據(jù)持有者)都是有好處的,企業(yè)擁有高質量的數(shù)據(jù),不需要再進行人工的審核校驗,對于個人來說,具有高質量的數(shù)據(jù),不需要手動輸入以及更快速的回復,不需要再次手動檢驗。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容