第3部分 原理篇2去中心化數字身份標識符(DID)(2)

3.2.2.?DID相關概念

3.2.2.1.?去中心化標識符 (Decentralized identifier,DID)

第3部分 原理篇2去中心化數字身份標識符(DID)(2)

本聰老師:DID有兩個含義,一是Decentralized identity,就是去中心化身份,是廣泛意義的DID。另外一個是Decentralized identifier,是去中心化標識符,是指對應現實世界某個實體(entity)的全局唯一的id號。

小明:是,經常聽到DID這個詞,感覺更多是指去中心化身份。

本聰老師:對,DID出現在不同的語境中會分別對應不同的含義。為了區分,本書中提到的去中心化身份稱為DID,將后者稱為DID標識符。

本聰老師:我們接下來看下DID標識符的形式和組成部分(圖3-3):

第3部分 原理篇2去中心化數字身份標識符(DID)(2)

圖3-3DID標識符

小天:看起來DID標識符組成包括3部分:Scheme、DID Method及其特定字符串。

本聰老師:對。第1部分稱為scheme identifier,方案標識符。這里的did是固定不變的,用于區別身份標識符所屬的不同方案,表明這個身份標識符遵循DID的規范,并且兼容所有遵循DID規范的系統。

小天:也就是說,看到一個身份標識符開頭是DID,就能明確它是遵從DID規范所生成的DID標識符。

本聰老師:是的。第2部分example稱為DID Method identifier,用于說明這個身份標識符采用的是遵循DID規范的具體哪個方法(我們可以理解為自治域)。DID Method一般會由搭建DID平臺的組織機構自己定義,比如組織機構名稱或簡稱,然后到W3C網站(https://w3c.github.io/did-spec-registries/#did-methods)去注冊就可以。我們后面會詳細介紹一下DID方法。

小云:W3C這些國際組織只規劃設計DID相關規范,具體的實施部署是由這些方法運營商根據規范進行實現的。

本聰老師:對,這是DID去中心化體現的一方面吧。最后第3部分的字母數字組合就是特定DID方法中代表特定實體身份的一個唯一標識字符串。

小天:我理解由DID標識符這三部分形成的一個DID標識符一定是全局唯一的ID標識符,它就是對應主體的唯一數字身份。

本聰老師:對。一個DID標識符,形如did:ytm:653ca82******45d85a47代表含義就是說這個身份標識符遵循數字身份標識符的DID方案,存在于ytm方法中,具備某個唯一id。對照下面的圖3-4URN規范,就能更好理解了。

第3部分 原理篇2去中心化數字身份標識符(DID)(2)

圖3-4URN規范

小天:我理解DID標識符就像公民身份證號碼,是現實世界中的實體身份映射到數字世界身份的一個編號。

本聰老師:可以這么理解。我們再深入思考一下,DID標識符和人之間是一一對應嗎?

小明:一個人需要有多個數字身份嗎?我覺得當然需要。我是這么理解,每個人的身份證號碼只有一個,是國家政府為了管理方便強制要求的。但是在商業社會,不同的應用場景會存在不同的需求,就像一個人會有多個銀行的銀行卡一樣,每個銀行卡的id編號就類似與一個DID標識符,主要是用于不同的用途。

本聰老師:我贊同小明的理解。還有個問題,DID標識符只是一個id編號,除了表示人的數字身份,還可以與現實世界哪些實體有關系呢?

3.2.2.2.?DID主體?(DID Subject)

本聰老師:根據W3C《DID規范 v1.0》中的說法:“任何東西都可以是 DID 主體:人、團體、組織、物理事物、數字事物、邏輯事物等。”也就是說除了人之外,DID標識符可以與現實世界的一切進行映射,只要其數字身份有價值。

小明:這極大拓展了DID標識符的想象空間。可以想到的有商業公司、學校、社會機構。

小天:還有設備物資、固定資產。

小云:還有知識產權類的藝術作品、文學著作,甚至是品牌。

本聰老師:大家發散一下就能想到許多使用場景。

3.2.2.3.?DID URL

本聰老師:還有一個概念是DID URL。DID URL 是特定資源的網絡位置標識符,其中包含DID標識符,它擴展了基本 DID 的語法以包含其他標準組件,增加路徑(path)、查詢(query)和片段(fragment)等參數,可以定位特定資源,例如,DID 文檔內的加密公鑰,或DID 文檔以外的資源。一般業務場景中會大量使用DID URL這種形式,可用于檢索 DID 主體、驗證方法、服務、DID 文檔的特定部分或其他資源的表示形式。

它的語法形式是:did-url = did path-abempty [ “?” query ] [ “#” fragment ]

小明:似乎沒看明白。能舉幾個例子嗎?

本聰老師:好的。

比如DID路徑URL形如:did:example:123456/path

DID 查詢 URI:did:example:123456?versionId=1

DID文檔外部的資源:did:example:123?service=agent&relativeRef=/credentials#degree


本文內容摘自《對話去中心化數字身份》。作者:喬布施。首發平臺:https://ytm.app

歡迎轉載,請注明出處及作者。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/697162.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/697162.shtml
英文地址,請注明出處:http://en.pswp.cn/news/697162.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Web性能優化-瀏覽器工作原理-MDN文檔學習筆記

瀏覽器工作原理 查看更多學習筆記:GitHub:LoveEmiliaForever MDN中文官網 導航 導航是加載 web 頁面的第一步:輸入 URL、點擊一個鏈接、提交表單等等 DNS查詢 導航的第一步是要去尋找頁面資源的位置 例如訪問https://example.com&#x…

如何解決DNS解析錯誤故障

DNS解析錯誤會導致將一個域名解析為錯誤的IP地址,或者根本無法確定某個域名對應的IP地址,從而無法通過域名訪問相應的站點,形成DNS解析故障。最常見的癥狀是訪問站點對應的IP地址沒有問題,但訪問其域名時卻出現錯誤。 DNS解析異常…

qt-動畫圓圈等待-LED數字

qt-動畫圓圈等待-LED數字 一、演示效果二、關鍵程序三、下載鏈接 一、演示效果 二、關鍵程序 #include "LedNumber.h" #include <QLabel>LEDNumber::LEDNumber(QWidget *parent) : QWidget(parent) {//設置默認寬高比setScale((float)0.6);//設置默認背景色se…

【深入了解TensorFlow】TensorFlow的安裝與配置

【深入了解TensorFlow】TensorFlow的安裝與配置 TensorFlow的安裝與配置準備就緒:開始前的準備工作1. 確定您的硬件和操作系統2. 選擇安裝方式3. 創建虛擬環境(可選)安裝TensorFlow使用pip安裝使用conda安裝從源代碼編譯安裝配置TensorFlow導入TensorFlow模塊檢查安裝是否成…

Oracle 表被刪除或重命名后賬戶間的授權與同義詞關系

Oracle 表被刪除或重命名后賬戶間的授權與同義詞關系 情景一、 當數據表刪除后 數據表被刪除后&#xff0c;同義詞還是存在的&#xff0c;可以查看當前用戶下查看同義詞&#xff1a; -- 查看當前用戶下的同義詞 select * from user_synonyms但授權關系不在了&#xff0c;若重…

10 個 Linux 中超方便的 Bash 別名

1、 你有幾次遇到需要解壓 .tar 文件但無法記住所需的確切參數&#xff1f;別名可以幫助你&#xff01;只需將以下內容添加到 .bash_profile 中&#xff0c;然后使用 untar FileName 解壓縮任何 .tar 文件。 alias untartar -zxvf 2、 下載文件時&#xff0c;如果出現問題想要…

websocket與Socket的區別

概念講解 網絡&#xff1a;通俗意義上&#xff0c;也就是連接兩臺計算器 五層網絡模型&#xff1a;應用層、傳輸層、網絡層、數據鏈路層、物理層 應用層 (application layer)&#xff1a;直接為應用進程提供服務。應用層協議定義的是應用進程間通訊和交互的規則&#xff0c;不…

明明正常,卻不停return

明明正常&#xff0c;卻不停return if(!is); { return ; } 熬人

應急響應速查

最重要的&#xff1a;我是誰&#xff1f;我在哪&#xff1f;別人怎么進來的&#xff1f;我就是這個被挖礦被勒索的電腦。 分析項 &#xff1a; 一、了解大概的被入侵系統情況&#xff1a; 發現時間&#xff1f;怎么發現的&#xff1f;這臺機器有沒有人運維&#xff1f;平時還…

排序第三篇 直接插入排序

插入排序的基本思想是&#xff1a; 每次將一個待排序的記錄按其關鍵字的大小插入到前面已排好序的文件中的適當位置&#xff0c; 直到全部記錄插入完為止。 一 簡介 插入排序可分為2類 本文介紹 直接插入排序 它的基本操作是&#xff1a; 假設待排充序的記錄存儲在數組 R[1……

電路設計(27)——交通信號燈的multisim仿真

1.功能要求 使用數字芯片設計一款交通信號燈&#xff0c;使得&#xff1a; 主干道的綠燈時間為60S&#xff0c;紅燈時間為45S 次干道的紅燈時間為60S&#xff0c;綠燈時間為45S 主、次干道&#xff0c;綠燈的最后5S內&#xff0c;黃燈閃爍 使用數碼管顯示各自的倒計時時間。 按…

JavaScript 數組、遍歷

數組 多維數組&#xff1a;數組里面嵌套 一層數組為二維數組。一維數組的使用頻率是最高的。 如果數組訪問越界會返回undefined。 數組遍歷 數組方法Array.isArray() 這個方法可以去判定一個內容是否是數組。

AndroidStudio 2024-2-21 Win10/11最新安裝配置(Kotlin快速構建配置,gradle鏡像源)

AndroidStudio 2024 Win10/11最新安裝配置 教程目的&#xff1a; (從安裝到卸載) &#xff0c;針對Kotlin開發配置&#xff0c;gradle-8.2-src/bin下載慢&#xff0c;以及Kotlin構建慢的解決 好久沒玩AS了,下載發現裝個AS很麻煩,就覺得有必要出個教程了(就是記錄一下:嘻嘻) 因…

把一個對象變成可迭代對象的兩種方法,使用Symbol.iterator 和生成器Generator

方法一&#xff1a;自定義Symbol.iterator屬性 如果對象擁有[Symbol.iterator] 方法&#xff0c;改方法返回一個迭代器對象&#xff0c;就可以稱之為可迭代對象&#xff0c;注意迭代器是一個有 next 方法的對象 步驟如下 實現一個Symbol.iterator 鍵值是一個函數&#xff0c;…

java 時間格式 YYYY 于yyyy的區別

java formatDate 時間時&#xff0c;經常需要輸入格式比如 YYYYMMDD,yyyyMMdd 這兩個是有區別的 具體每個參數可以看下面

igolang學習1,dea的golang-1.22.0

參考&#xff1a;使用IDEA配置GO的開發環境備忘錄-CSDN博客 1.下載All releases - The Go Programming Language (google.cn) 2.直接next 3.window環境變量配置 4.idea的go插件安裝 5.新建go項目找不到jdk解決 https://blog.csdn.net/ouyang111222/article/details/1361657…

代碼隨想錄算法訓練營第40天| 343. 整數拆分、96.不同的二叉搜索樹

343. 整數拆分 完成 思路&#xff1a; dp數組存放正整數i拆分后的乘積最大值&#xff1b;i可以拆分為j和i-j&#xff0c;也可以是j和dp[i-j]。 代碼 class Solution {public int integerBreak(int n) {int[] dp new int[n1];dp[2] 1;// 推導i的拆分乘積最大值for (int i …

【js】無限虛擬列表的原理及實現

什么是虛擬列表 虛擬列表是長列表按需顯示思路的一種實現&#xff0c;即虛擬列表是一種根據滾動容器元素的可視區域來渲染長列表數據中某一個部分數據的技術。 簡而言之&#xff0c;虛擬列表指的就是「可視區域渲染」的列表。有三個概念需要了解一下&#xff1a; 視口容器元…

【linux】linux查看某個已經啟動進程的環境變量及命令行信息 /proc/${pid}/environ cmdline

隨便找一個進程 yeqiangyeqiang-MS-7B23:~$ ps aux | grep Vir yeqiang 3538 0.4 0.6 1797056 210332 ? Sl 08:38 0:06 /usr/lib/virtualbox/VirtualBox 查看命令行 yeqiangyeqiang-MS-7B23:~$ strings /proc/3538/cmdline /usr/lib/virtualbox/VirtualBox …

Swift基礎知識:17.Swift結構體

在 Swift 中&#xff0c;結構體&#xff08;Structures&#xff09;是一種用來封裝一組相關的數據和功能的數據類型。結構體是一種值類型&#xff0c;它在傳遞和賦值時會被復制&#xff0c;與類&#xff08;Class&#xff09;不同&#xff0c;類是引用類型&#xff0c;它在傳遞…