BTC
ETH
HTX
SOL
BNB
查看行情
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt

科普| 可信身份模型初探

星球君的朋友们
Odaily资深作者
本文約3138字,閱讀全文需要約5分鐘
如何通過可信第三方使沒有信任基礎的兩方達成交易。
AI總結
如何通過可信第三方使沒有信任基礎的兩方達成交易。

(圖片來自medium(圖片來自

(圖片來自攝圖網)

本文為Jim McDonald 介紹身份系統的文章。在這篇文章中他由淺入深地介紹了身份系統中的不同角色和不同的身份系統方案,一步一步邁向更理想的解決方案。雖然這仍然不是終極解決,但至少是一個不錯的開端。

二級標題

二級標題

實體,斷言以及身份

實體(entity)是需要信息進行描述的東西。人是最常見的一種實體,除此之外電腦程序(包括智能合約)、有形資產(房屋、藝術品)、邏輯資產(迷戀貓、股權證明、產品原型)、法人實體(公司、信託)等等都是實體。

斷言是為一個或多個實體提供信息的陳述。舉例來說,以下是和Iris 有關的一些斷言:


  • Iris 的生日是1970 年1 月1 號

  • Iris 是美國公民

  • John 和Iris 結婚了

  • Iris 喜歡搖滾樂隊“Kings of Leon”

  • 圖片描述

圖片描述

二級標題

二級標題

請求者

想要獲取身份信息的實體可以視作請求者(requester)。賦予這些信息價值的訴求大相徑庭,可能是興趣的邀約(“我有一張多的Kings of Leon 演唱會的門票,有哪個熟人想一起去嗎”),也可能是嚴格的限制(“如果你是美國公民,我不能讓你購買代幣”)。

獲取信息最簡單的方法是直接提問。如果Rob (作為請求者)想要得知Iris(一個身份)的年齡,他可以遵循以下簡單流程:

  • Rob 向Iris 詢問她的年齡

  • 圖片描述

  • 圖片描述

-圖2:直接獲取斷言-

在Rob 相信Iris 或者即使Iris 撒謊了也不會有嚴重後果的情況下,這樣的簡單流程是沒問題的。但很多情況下,Rob 不應該信任Iris 關於自身信息的回复,舉例來說,如果Rob 正在向Iris 售賣一張音樂會門票,而她所需要支付的費用正和她的年齡有關,這時顯然不應該直接信任Iris 的回复。

那麼在Rob 不相信Iris 的情況下,他如何相信Iris 的信息呢?為了解決這個問題,我們得引入一個概念:“權威”。

所謂“權威” 就是生成斷言的實體。任何實體都能通過生成斷言從而成為權威,並且絕大多數的實體都是對自身斷言的權威。

在需要評估斷言準確性的場景中,權威至關重要。還是以Iris 出生日期的斷言為例,來自她本人和來自她的家庭、雇主以及政府機構的斷言,會根據信息被採用的場景而被賦予不同的權重。不止一個實體會生成Iris 生日的斷言,比如親屬、雇主、社交網站以及政府部門等等。如果該斷言被用於核驗Iris 是否有資格進入酒吧,那酒吧老闆應該採信政府部門的斷言;而如果該斷言僅用於領取餐廳裡的免費生日蛋糕,餐廳老闆從社交媒體、Iris 家人,甚至是Iris 本人處獲得斷言就足夠了。

至此,Rob 的信息獲取有了新選擇:他可以信任某個權威,確切來說是某個權威發布的憑證(比如由政府發行的,包含Iris 生日信息的身份證)。這一流程表述如下:

  • 權威(本例中的政府取名為“Grace” )向Iris 發行一種包含她出生日期的憑證

  • 圖片描述

  • 圖片描述


-圖3:基於權威的Iris 相關信息驗證過程-

當前絕大多數現實-電子身份信息核驗過程就是採用了上述流程或者基於此流程的改進方案。然而其中存在的問題遠不止一星半點。

首當其衝的是信息洩露問題。以採用政府發行的身份證為例,身份證上所包含出生日期之外的,諸如家庭住址、簽名等等信息,都無差別地暴露在Rob 的視線下。此外,Rob 其實只需要確認Iris 的年齡,但他卻獲得了Iris 的出生日期,憑證提供的信息超過了請求者的需要。上述信息被Rob 取得後,可能會被非法保存、重用甚至出售。

傳統信息核驗流程的另一大缺陷是必須存在信任鏈。還是上文這個例子中,Grace(或者它的代理人)可能是不可信的,某些情況下它可能會提供含有錯誤信息的憑證。此外,Iris 本人也不可信,她可以修改該憑證、提供虛假信息,或者同時持有包含不同信息的多個憑證(可能通過非法途徑取得),然後根據場景需要而提供對自己最有利的那一份。

上述核驗流程中的第三個缺陷是Iris 需要物理或者電子上持有該憑證。憑證的效用帶來了憑證的價值,可同時吸引了竊賊的目光。倘若憑證被竊取或遺失,Iris 在拿到新憑證之前都不能證明自己的年齡了。

最後一個缺陷在於Rob 可能沒有能力識別Iris 所提供的憑證文件是真實的,比如Rob 不熟悉發布該憑證的政府,以至無法確定能否在當前場景下採信該憑證。

提供者

提供者

願意直接和請求者交互的權威可以被視作提供者(provider)。他們保有身份信息,並將其作為斷言向請求者提供服務。

需要留意雖然某些情況下斷言和信息(information)一模一樣,但通常來說斷言是從信息導出來的。比如說,提供者可能保有某個身份的出生日期,根據信息指向性的降序排列,可以導出如下斷言:


  • 某個身份的出生日期

  • 某個身份的年齡

  • 某個身份是否大於某個給定的年齡

  • 斷言越具體,就越難重用到其他場景下。回到剛才那個例子,如果售票方願意給小於21歲的年輕人優惠,並收到了上述斷言中的一種,那他能進行如下信息重用操作:

  • 如果斷言包括了身份的出生日期,那售票方就獲得了和該身份年齡有關的全部信息。

  • 如果該斷言包含了身份的年齡,售票方僅獲取了能在未來重用的部分年齡信息(如果買票時提交的年齡為18 歲,那麼一年後是19 歲,兩年後是20 歲等等)。

  • 如果斷言僅僅判定了該身份在21 歲以下,售票方掌握的重用信息最少(他們只能確定21 年後這個身份大於21 歲)。

  • 在滿足請求者需求的同時,需要保障身份所屬人的利益,提供者應該產生指向性盡可能強的斷言以減少潛在的信息洩露和重用。通過引入提供者,請求者可以獲取到可信信息。當前售票場景下,存在某些保有Iris 年齡信息的提供者,同時也有Rob 信任的一些可信提供者。因此,Rob 和Iris 可以從兩者的交集中選出一個提供者作為第三方,以保證Rob 能收到可信的回答。

基本的流程描述如下:

基本的流程描述如下:

  • Rob 向Iris 詢問有哪些提供者知道她的年齡

  • Iris 發送確知自己年齡的提供者列表給Rob

  • Rob 向列表其中之一的提供者(本例中為“Peter” )詢問Iris 的年齡

  • 圖片描述

  • 圖片描述

問題

問題

問題

上述流程仍然存在一定問題,最重要的是由誰來提供交易費用(誰為這套服務買單?)、信息主權(Rob 能否在Iris 不同意的情況下獲取她的年齡信息?)、信息所有權(由誰來阻止Rob 售賣從Peter 那裡獲取到的信息)?以後我將就上述問題撰文,詳細討論,尋求解決方案,並提出一種完整的身份系統。

开发者
ETH
歡迎加入Odaily官方社群