隨著元宇宙、Web3的快速發展,去中心化身份(DID)再次成為被熱議的話題之一。除元宇宙、Web3外,DID在數字城市等領域中,也具有很大應用潛力。但為什麼是DID?和傳統身份管理方案相比,DID的價值是什麼?技術發展瓶頸又是什麼?針對這些問題,萬向區塊鏈首席經濟學家辦公室王普玉進行了深入研究,以下為研究報告全文,供大家參考。
作者:萬向區塊鏈首席經濟學家辦公室王普玉
稽核:萬向區塊鏈首席經濟學家鄒傳偉
近年來,大家對個人資料的隱私安全問題關注度明顯上升,本文將從身份管理角度討論該問題,主要包括四方面:第一,傳統身份管理方案有什麼問題?第二,DID是什麼?技術實現過程是怎麼樣的?第三,DID技術發展有什麼瓶頸?第四,區塊鏈技術和DID技術的結合能夠擦除什麼樣的火花?
一、身份管理
身份系統包括三個要素:身份、身份證明和身份驗證。我們結合三個要素,從物理世界和網際網路世界兩個維度分別討論身份管理。
1、身份系統
(1)身份
在物理世界中,每個人從出生就擁有獨一無二的身份特徵,包括外貌、體重、年齡、膚色、指紋等等;為了快速描述任何個體的身份特徵,我們使用姓名作為代號,可以幫助大家快速識別他人並聯想到關於對方的一切資訊,這些內容被統稱為身份。
與物理世界相對應的還有一個網際網路世界,身份的概念完全不同。在網際網路世界,使用者完全可以根據自己的喜好設定想象中的“身份”,包括姓名、性別、身高、體重等;甚至可以隨時更改這些“身份特徵”,確切來說,此時的身份不同於傳統意義上的身份,因為不具有唯一性和確定性。
(2)身份證明
在物理世界中,由人構成的系統變得日益龐大,為了便於中心化機構的管理,出現了身份證明。中心化機構根據不同人的身份特徵簽發了唯一身份證明,用於證明主體擁有某項資產的所有權或申明其享有某種社會權益,同時在不同個體及組織之間互動時,可以用於定責、糾紛追溯和信任保障。身份證明使身份的特徵從隱性變為可視以及可追蹤,例如政府簽發的身份證、護照等,證明主體屬於某個國家的身份以及享有某種權益;再比如駕駛證,能夠證明某個身份具有車輛駕駛技能。
在網際網路世界中的主體身份證明完全不同於物理世界。在物理世界中,身份證明與身份有著直接的關聯,即透過身份證明就能對映到主體本人;但在最初的網際網路世界中,身份證明和身份之間並不存在對映關係,不同主體只需根據設想中的身份特徵(年齡、身高、姓名等)提交身份證明申請,而無需與物理世界身份特徵保持一致,因此僅憑網際網路身份證明是無法對映到主體本人。隨著網際網路世界的發展,匿名性和不可追溯性逐漸影響到了物理世界的治理和安全,多項規定要求平臺方需做好使用者實名制驗證工作,這樣就出現了網際網路身份證明與物理世界身份證明對映的關係,進一步出現與主體身份對映的關係。
有意思的是,網際網路使用者的身份證明,需要依賴於物理世界身份證明的對映,來確定身份的唯一性和確定性。但網際網路世界中的網站卻完全不同,它從開始就有一套完整的身份證明體系,如圖1所示的統一資源識別符號URI。每個網站擁有獨一無二的域名,域名的簽發(身份證明)是由國際域名管理中心統一管理,我國是由中國網際網路絡資訊中心管理。
圖1:統一資源識別符號架構
(3)身份驗證
在現代社會體系下,身份的驗證是信任建立的基礎。當個體或組織之間發生互動關係時,均需要進行身份的驗證,即證明某個體或組織擁有某項資源的所有權或享有某些權益,目的是透過身份驗證系統維護系統執行的基本規則和安全。
① 物理世界身份驗證
物理介質證明,如各種紙質檔案或卡片證明,是人類發展史上依賴最長久的身份證明,包括身份證、護照、社會醫療保障卡、駕駛證等等。隨著技術的發展,物理介質證明作假越來越容易,且在身份驗證環節無法有效辨別,經常出現身份篡改、身份冒用等導致資產非法轉移及社會權益盜用等問題。因此,透過物理介質實現身份證明來維護原有的社會規則和安全難以持續下去。為了防止身份作假,各政府及組織從兩方面進行升級:第一方面是對身份證明的物理介質升級,增加了各種特徵可供驗證,如我國身份證上增加鐳射變色識別、增加微縮文字、視覺上呈現圖層疊放等;這些升級只是增加了非法分子的作假成本,一旦他們掌握了這些技術,依然可以複製出各種身份證明,而無法從根本上杜絕作假問題;第二方面是提升驗證手段,政府機構對接各類身份證明平臺,能夠在某主體享有權益或處置資產前,透過比對物理介質證明與系統資訊進行身份真偽識別,這種模式下存在兩方面問題,第一個問題是各類身份證明平臺未全面聯通,資料孤島導致驗證資訊不完整;第二個問題是企業及其他個體使用者無權對接身份識別平臺,在日常交易合作中,無法透過該模式驗證身份真偽。
② 網際網路使用者身份驗證
在網際網路世界中,身份驗證主要依賴於使用者名稱和密碼。能夠輸入正確的資訊,就意味著身份驗證透過。這種驗證體系存在兩種問題,第一種是使用者名稱和密碼容易被網路攻擊者盜用;第二是中心化平臺對使用者身份資訊擁有絕對控制權,他們可以在未獲得使用者許可的情況下,根據自己的需要刪除、增加、更改、甚至交易使用者的身份資訊。
2、身份資訊保安問題
無論是物理世界還是網際網路世界,都存在身份管理方面的問題,而且兩個平行世界的身份證明逐漸融合。物理世界中的身份證明作假問題,藉助網際網路來加強身份驗證能力;而網際網路世界由於匿名信和不可追溯性導致的安全問題,透過與物理世界的身份對映方式來解決。我們解決了身份的真實性和可信性帶來的困擾,但同時也給我們帶來了新的麻煩,即身份的特徵和行為暴露在網路中,被各個平臺無視相關規定,肆意收集身份相關的行為資訊並濫用這些資訊。
圖2:使用者資訊傳統資料庫管理模式
如圖2所示,在中心化管理模式下,使用者資訊被不同平臺重複收集並存儲,在2021年第76期《從使用者畫像實現看資料隱私問題》一文中,我們指出其中的問題,包括使用者資訊被過度採集、資訊被不同平臺交易、使用者對個人行為資料沒有控制權等問題。
3、其他
當前我們面對的不僅僅是上面所提到的關於人的身份管理問題,隨著網際網路技術及通訊技術的發展,網路連線萬事萬物,構築出一個與物理世界相平行的數字世界。數字世界裡的參與者不僅僅是人,還有包括其他萬事萬物,如何定義數字世界裡的這些萬事萬物所屬權,以及怎麼定義每一個數字物件的權益?這個問題關係著數字世界的正常秩序的維護以及信任的構建。前面提到的三要素“身份-身份證明-身份驗證”僅圍繞人來討論,但物理世界中,除人的身份以外,我們還有其他各種國際統一標識,比如商品相關的統一編碼(RFID,商品序列號,二維碼)等。未來我們需要管理數字世界中每一種要素,前提是做好這些要素的身份管理。進一步說,我們需要一項能夠統一維護不同身份標識方法的工具,能夠做到不同事物的“身份標識-身份證明-身份驗證”。
二、DID技術詳述
分散式數字身份(Decentralized Identifiers,簡稱DIDs),在W3C的《DID V1.0》中,將DID定義為一種新的全球唯一識別符號。這種識別符號不僅可以用於人,也可以用於萬事萬物,包括一輛車、一隻動物,甚至是一臺機器,本文主要以人為例來展開DID的討論。
下面我們從技術實現和應用兩個角度介紹DID技術,技術實現主要講述DID技術的構成要素;而應用主要圍繞“身份-身份證明-身份驗證”討論DID的實現。
1、技術實現
DID技術的核心構成要素包括三個:DID、DID Document和Verifiable Data Registry。
圖3:DID架構及相關構成要素之間的關係
(資料來源:W3C DID core)
(1)DID
DID屬於統一資源識別符號URI的一種,是一個永久不可變的字串,它存在的意義有兩點,第一,標記任何目標物件(DID Subject),可以是一個人、一件商品、一臺機器或者一隻動物等等;第二,DID是透過DID URL關聯到描述目標物件的檔案(DID Document,簡稱DID Doc)唯一識別符號,即透過DID能夠在資料庫中搜索到具體的DID Doc。
① DID標識方法
DID分為三個部分,如圖4所示,第一部分是DID Scheme(類似URL中的http,https,ftp等協議);第二部分是DID方法識別符號(一般是DID方法的名稱);第三部分是DID方法中特定的識別符號:在整個DID方法名稱空間是唯一的。W3C只規範了DID的表示結構,即<did:+DID method:+DID Method-Specific Identifier>,但沒有規範三部分內容的具體標準,具體內容與DID Method有關,將在下面第2部分介紹。
圖4:DID簡單示例
② DID Method
DID Method是一組公開的操作標準,定義了DID的建立、解析、更新和刪除,並涵蓋了DID在身份系統中註冊、替換、輪換、恢復和到期等。目前沒有統一的操作標準,各個公司可以根據場景特徵自行設計,由W3C CCG工作組統一維護。截至2021年8月3日釋出《DID V1.0》,在W3C登記的DID Method高達103項,均有不同的名稱和特定的識別符號表示方法。
③ DID URL
為融合現有URI網路位置標識方法,DID使用了DID URL表示資源的位置(如路徑、查詢和片段)。W3C對DID URL的語法描述ABNF規定如下:<did-url = did path-abempty [“?”query][“#”fragment]>。
(2)DID Document
DID Document(DID Doc)包含著所有與DID subject有關的資訊,在Doc中有身份資訊驗證方法(包括加密公鑰,相關地址等)。DID Doc是一個通用資料結構,通常是由DID controller負責資料寫入和更改,檔案裡包含與DID驗證相關的金鑰資訊和驗證方法,提供了一組使DID控制者能夠證明其對應DID控制的機制。需要說明的是,這裡的管理DID Doc的DID Controller可能是DID subject本人,也有可能是第三方機構,不同DID Method對DID Doc的許可權管理有所區別。
如圖5所示,是一個與圖4中的DID對應的DID Doc(用JSON-LD編寫的檔案),儲存在所有人能控制的位置(可以是中心化的,也可以去中心化的),以便輕鬆查詢。
圖5:DID Doc示例(資料來源:W3C DID白皮書)
DID Doc可以被看作是一個身份資訊地圖,如圖6所示由兩部分組成,第一部分被稱為標籤,在DID Doc中可以查詢到並可以直接閱讀的內容,包括三部分:核心標籤(如id,controller,authentication等)、拓展標籤(如以太坊地址等)、以及一些未在W3C DID規範登記的標籤;第二部分是未在DID Doc列出,而是藉助URL等特定形式,連結到第三方平臺或網站系統查詢相關身份資訊;為了保證最大程度的互操作性和資訊相容性,W3C建立了DID Specification Registry,保證特定形式的內容在DID Doc中是可以被識別和解析的。當有新的標籤出現,相關平臺或系統需要向DID Specification Registry登記。
圖6:DID Doc的身份特徵入口(資料來源:W3C DID白皮書)
不同DID之間可能存在資訊互動關係,如圖7所示,在W3C中提出了Production & Consumption概念:建立一個DID Document的過程是Production,而將建立的這條Document引用至該DID Subject其他DID建立過程則是Consumption。在驗證過程中,每個DID對應的DID Document是獨立的,相當於對每個DID做了資訊隔離。在驗證過程中,DID持有人可以根據需要對不同DID授權,驗證人只能閱讀到被授權的DID Doc,而無法獲得更多資訊,從而達到DID Subject的資訊保護目的。
圖7:DID生成和消耗的表示(資料來源:W3C DID白皮書)
(3)Verifiable Data Registries (VDR)
DID的初衷是將使用者身份資訊管理權從平臺交回使用者自己,這過程中使用者必須解決的問題是資訊儲存在哪裡?以及需要驗證的時候去哪裡找到這些資料?怎麼保證資料的真實性?VDR討論的就是怎麼解決這些問題,我們將支援記錄DID資料且能夠在生成DID Doc時提供相關資料的系統稱為Verifiable Data Registry(VDR),這種系統包括分散式賬本、分散式檔案系統、P2P網路或其他可被信任的渠道;而且VDR與DID Method有著直接的關聯性,一般每個VDR都會基於W3C DID規範提出自己的DID Method。目前市場主推DID儲存媒介是錢包,分為託管錢包(如Coinbase)、普通錢包(如imtoken),以及智慧錢包(Gnosis Safe, Dappe,Argent),具體哪種媒介能更有效的儲存DID資訊,暫不在本文詳細討論。
2、DID的實現:“身份-身份證明-身份驗證”
我們基於第一部分的“身份-身份證明-身份驗證“,簡單討論DID如何實現這些功能的。
(1)身份
在DID方案中,每個人可以在不同場景、不同時間,因為不同目的,在任意可信的第三平臺登記不同的DID,相關權益和資產所屬權與不同的DID直接繫結,而身份主體透過持有DID來證明其對資產的所有權或具體權益。DID沒有直接與物理世界身份生成對映關係,且DID資訊維護也是由身份主體或可信第三方來維護,保證了資訊的安全性。對於身份主體而言,需要做好DID的安全持有工作,同時維護好與DID對應的身份檔案(DID Doc)。
(2)身份證明
DID只是一串帶有金鑰的隨機數值,在具體使用中第三方機構根據DID資訊將身份證明寫入DID Doc,同時第三方機構會將自己的數字簽名加入檔案中,方便後期身份驗證。例如,張三,需要證明自己具有駕駛能力,此時無需像傳統的中心化方法,由權威機構簽發一張駕駛證給張三,具體個人資訊也無需儲存在權威機構的資料庫裡;透過DID技術給出的解決方案是[1]:張三向車管所提供自己準備的DID或使用車管所提供的DID,車管所按照DID Doc的JSON-LD資料結構寫入相關資訊(包括但不限於id,type,有效期,controller,驗證方法等),同時加入車管所的數字簽名。DID Doc可以儲存在車管所,可以儲存在張三的智慧錢包裡,或者其他儲存媒介。需要注意的是,此處DID並沒有洩露張三的身份特徵,沒有對映物理世界的其他身份證明,這個DID只是張三持有的眾多DID中的一個。因此,只要張三本人不出示DID證明,就沒有人能知道這份DID Doc是張三的,從而保護了張三的個人隱私。
(3)身份驗證
驗證的主要目的是為了證明目標主體可以合規的或有許可權的進行某項程式,在W3C《DID V1.0白皮書》中從驗證目的進行了梳理,分為五類,分別是:驗證、申明、重要協議、效能呼叫和效能授權。根據五種不同目的,在DID Method中可以設計不同的方案。驗證資訊的來源分為兩類,一類是DID Doc中列舉的資料;另一類是需要藉助於外部系統或平臺的資料,對於材料的格式W3C做了要求(主要包括publicKeyJwk和publickeymultibase),以方便解析及識別。下面以“申明”為例說明,根據國家最新青少年網路遊戲規定中要求每天限時一小時,傳統的方法則需要上傳身份證資訊,但分散式識別符號解決方案中,只需要提供自己持有的DID,透過零知識證明驗證使用者是否超過18歲即可,而無需告知平臺方使用者具體年齡。這只是眾多驗證方法中的一種。
三、DID的應用及發展
DID從提出到現在已經有四年時間,各行業協會、網際網路平臺、基金會都在積極推動並完善DID技術。經過長時間探索,W3C於2021年8月3日釋出了DID 1.0版白皮書。相比初期0.1版搭建了一個全新的身份標識體系,到1.0版開始考慮如何融合市場上已有的身份標識方法。其他協會、組織及企業也基於W3C的DID規範提出了多種DID Method,但距離DID技術落地應用,仍然有很多問題需要進一步去解決,主要包括:
1、如何滿足合規性要求?
網際網路最初只需要透過使用者名稱/密碼實現平臺身份驗證即可,但為了滿足合規要求,增加了物理世界身份驗證。這種方法初衷是為了讓網路使用者的行為可問責、可追溯,逐步建立網路信任體系,但負面影響是造成大量個人資訊洩露。DID有效解決了這些問題,但面臨的仍然是合規性問題。雖然當前未出臺相關規定,但不遠將來肯定會面臨如何將不同的DID對映到具體主體的問題,同時需要考慮這種對映關係,是否會造成新一輪資訊洩露問題?該問題有待進一步探討及觀察。
2、如何驗證DID與持有人之間的關係?
DID具有匿名性,當前主流DID技術給出的解決方案是:誰持有DID,誰就有權享受相關權益。這種方案無法驗證DID提供者是不是本人,也無法避免DID被盜取並用於非法目的。雖然部分DID Method提出將DID對映到中心化資料庫,透過中心化的一套方法驗證DID提供者是不是本人的問題,但這仍將給個人資訊保護留下漏洞,例如是否能夠透過中心化資料庫倒推出DID持有人?
3、DID如何市場化推行?
DID市場化過程中,當前有兩方面瓶頸:第一方面,沒有企業願意主動放棄使用者資料;使用者資料如同平臺護城河,產生了大量價值,如果同意DID的使用,就等於同意拆除護城河,對於網際網路企業是致命性打擊。第二方面,DID技術推行誰來買單?第一,不同使用者願不願意為自己的身份資訊買單?換句話說,使用者是否願意向類似智慧錢包這種供應方付費?雖然未來個人行為資料有機會變現,並足夠支付這部分費用,但商業模式不清晰的情況下,有多少人感興趣參與其中?第二,DID技術將打破各平臺方原有資料管理結構,必定需要新增相關驗證平臺,相關成本誰來承擔?這些瓶頸將會極大阻礙DID技術的推行,如何平衡相關方利益關係,目前仍沒有理想的方案。
4、金鑰管理風險大
DID的可信性主要依賴於金鑰技術,如果第三方機構的私鑰被竊取,會不會出現隨意簽發證書的行為?或者某個身份主體將私鑰無意丟失,是否永遠無法使用這些DID證書?這些問題目前沒有非常理想的解決方案,對於現實使用也會提出較大挑戰。
5、身份資訊洩露風險
相比傳統身份資訊管理手段,DID已經在很大程度上提升了資料的安全性,但在具體應用中仍有一定的風險,例如當第三方收集足夠量的個人DID資料時,有可能透過海量資料進行逆向推理,發現DID識別符號之間的對映關係並推出物理世界的個人身份。這一問題的根本原因在於大多基於W3C的DID Method是靜態身份,而非動態身份;如果未來能夠設計一套動態身份管理體系,定期可以更新DID識別符號,那麼即使第三方能夠收集到部分DID Subject的資料,但也無法透過海量資料發現DID之間的關聯關係。
四、區塊鏈與DID的結合
雖然區塊鏈不是DID技術的必選項,但區塊鏈技術能夠助力與DID技術的實施,避免很多爭端問題的發生,同時能夠以更低成本維護資料的可信性,主要體現在以下幾方面:
1、降低驗證成本
DID技術提倡的是將DID和DID Doc儲存在使用者端,但如何保證DID Doc不會在使用者端被篡改?如果不使用區塊鏈,則需要DID證書籤發者同步維護這些證書,增加了維護成本。當使用DID時,合作方可以將DID持有人的DID Doc與簽發方的資料庫進行一致性驗證,增加了驗證成本。但使用區塊鏈技術則能降低簽發方這部分成本,只要寫入持有人DID Doc的資訊將被記錄在鏈上,無法做出修改,保證了資訊的真實性和安全性;簽發人無需增加資料庫儲存及維護成本,而合作人也無需增加成本將持有人DID Doc與簽發方資料庫做一致性檢驗。
2、基於DID的信任體系的搭建
當前圍繞區塊鏈的方案大多沒有實現生態閉環,假如有人在區塊鏈生態中出現違約,仍需迴歸到中心化模式下尋找法律解決方法,並沒有減輕政府治理壓力。未來是否會透過構建基於DID的信用記錄系統,來補齊這塊生態閉環構建的短板?該問題值得觀察。不同主體的行為資訊會隨著DID被記錄在DID Doc中,也將成為不同相關方合作的重要參考,隨著資料的增加違約的成本也將增加,例如無法從銀行獲取貸款、無法找到工作、無法找到合作伙伴,因此,這種信任體系將會對生態治理起到非常積極影響。而這一切的基礎是可信資料,區塊鏈不能缺席。
附註:
[1]由於不同DID Method有不同操作建議,此處僅為舉例說明DID身份證明簽發的一種方法。