自 2017 年 CryptoKitties 亮相以來,非同質化代幣(NFT)變得越來越受歡迎。雖然游戲行業目前擁有最多的 NFT 活躍用例,但身份識別等其他領域也在逐步開始使用非同質化代幣技術,
NFT 代幣擁有的元數據獨一無二,僅與特定獨特資產產生關聯,因此,NFT 無法被任何其他代幣取代,因為其他所有代幣——即使是遵守同一代幣標準(ERC-721)的令牌——也無法取代其記錄的元數據,
數據存儲和共享能力帶來了諸多好處,資訊數字化已成為日益增長的趨勢,但同時也引發了許多對個人數據安全性的質疑,近些年出現了許多黑客和個人資訊泄露事件,用戶并不(也不應該)一直依靠第三方的外部服務器來存儲個人數據,
新機遇
區塊鏈試圖為此提供解決方案,以兼顧可訪問性、隱私性和安全性,這項舉措主要得益于非同質化代幣(NFT)的發展,可以專門用來存儲、管理數據身份和數據,
NFT 包含特定商品或資產的獨特資訊,這使得 NFT 成為區塊鏈上用于識別和認證的一個很好的用例,每個人都擁有獨特屬性和身份資訊——NFT 可以使病例、個人檔案、教育資訊、地址等資訊數字化,讓數據由自己輕松操控,隨著區塊鏈的應用越來越多,越來越多人將會使用 NFT 存儲個人數據。這項技術擁有光明前景,
談及數字身份管理,區塊鏈會使公私機構運營更加高效,改善服務質量,區塊鏈身份管理提供了一個私密、安全、功能強大的軟體生態系統。但盡管區塊鏈技術顯著改善了數字身份管理,但當下仍然存在一些問題:可用性,(丟失的)私鑰處理方式,用戶數量,此外,大多數用于數字身份管理的區塊鏈都將部分數據存儲在第三方系統中(比如將資訊存儲在計算機或服務器內存中的錢包)。
本文中,我們將引入一個新的概念,IdToken,IdToken 的使用讓身份識別更加安全、快速,可重復使用,
傳統身份管理模式
傳統身份管理模式存在一些問題,例如,往往需要委托中央機構,無法保證透明度的問題,為這些用例開發新的身份管理模型已成為重要趨勢,而在區塊鏈生態系統中,并沒有傳統上中心化收集身份資訊的組織。區塊鏈賬本不可改變,可以驗證并確保用戶、交易、消息的合法性。區塊鏈認證通過智能合約完成,不需要第三方驗證交易,這可以降低成本,同時提高安全性和私密性。
在傳統身份管理中,最受歡迎的區塊鏈軟體無疑是 Hyperledger Indy. 利用 Hyperledger Indy 進行數據管理的例子有很多,如 Sovrin(去中心化全球自主權身份公共事業),MyData(與 Sovrin 聯合構建自主權身份和認證機制的計劃)等。Indy是一個分布式賬本,專門為去中心化身份認證而設計,擁有完整的開源規范、術語和設計模式,有助于助推去中心化身份解決方案的提出,Hyperledger Indy 是管理數字身份問題的一個不錯的方案,但 Indy 并沒有完全解決問題。
Indy 存在的問題
1. 用戶資訊存儲在錢包或者簡歷夾中,并沒有存儲在區塊鏈上,容易丟失,
2. 如果用戶更換公司,該用戶需要向原公司申請所有身份資訊,耗時耗力。
3. 每次申請需要擁有去中心化標識符(Decentralized Identifiers, DID),也就是說,每次申請都需要新建 DID 用戶名和密碼,占據了區塊鏈很大內存。
4. DID 長度過短有可能造成安全數據泄漏,引發安全問題,
針對這些問題,我們以 IdToken 為例,對以上問題做出了回答,下文我們將予以詳細討論,(融合了 IdToken 的 Hyperledger Indy 稱為 IdChain)
IdToken 身份管理模式
為了更好地理解 IdToken 和 IdChain 的發展,舉例來說,至少需要考慮三個要素、用戶、公司和機構(為用戶提供身份屬性保證),在 IdChain 中,每個用戶的注冊方式和模式都是一樣的。用戶想要在 IdChain 中注冊,需要提供個人資料(即姓名、姓氏)和生物識別數據(指紋或面部識別),生物識別數據經過加密哈希轉換后成為私鑰,私鑰存儲在個人設備的加密引擎中,生成私鑰后生成公鑰。
在 IdChain 中注冊完成后,賬本中需要創建一個新區塊,代幣智能合約生成器會執行并自動生成,在新區塊中,用戶可以插入,并用公鑰存儲和加密所有個人數據。用戶可以使用私鑰(生物識別數據的哈希值)在 IdToken 中讀取和插入新的資訊;若想授予某人只讀數據訪問權,用戶必須分享公鑰。
這種模式的優點是,用戶可以在 IdToken 里面插入所有資訊,在 Hyperledger Indy 中,錢包的很多的數據都存儲在本地設備(智能行動電話,電腦)上,可能會導致資訊丟失,但在 IdChain 中,即使用戶的個人設備丟失,仍可以使用生物識別數據訪問,免去的中央機構的干預。
如果用戶想要讓其公司從機構方獲得自己的身份資訊,需要進行以下步驟:
1. 用戶和公司在 IdChain 上擁有賬號。用戶用自己的 IdToken 向公司表明身份,身份由其所在機構認證,
2. 用戶向公司申請提供 IdToken 訪問權限,提供其公鑰。公司收到請求后,驗證 IdToken 中的可驗證憑證,接受請求,
3. 用戶和公司的身份得到驗證(數字簽名),
4.身份驗證后,公司向用戶發送請求,要求提供企業決定是否雇傭用戶所需的資訊,
5. 用戶接受并發送 IdToken(只包含公司所需資訊,并由機構進行驗證),
6. 公司能夠讀取用戶數據,用其公鑰解密其 IdToken,
7. 此系列步驟中,每一個操作都會有時間戳。這樣一來,雙方都知曉對方身份,能夠安全可靠地進行操作。
IdToken 的優點
– 無需專有軟體或基礎設施,IdChain 使用公共區塊鏈,用戶不需要投入大量資金建立技術基礎設施進行身份管理,
– 數據可撤銷,身份數據可以被數據所有者撤銷,假如用戶更換了信用卡號,數據所有者可以在區塊鏈上撤銷以前/無效信用卡號數據,
– 全球兼容,用戶在世界任何地方都課題存儲和分享身份資訊,用戶數據無論在什么國家都可以進行訪問和使用。如果用戶更換新公司,只需將 idToken 的訪問權限開放給新公司即可,
– 所有資訊為區塊鏈原生,無需本地存儲,
– 安全性和可驗證憑證,個人資訊都將經過哈希加密,安全地存儲在 IdToken 中,無需擔心安全性問題,此外,IdToken 獨一無二,不可復制,
這種新數字身份管理和證書分發方法十分有用,經且安全,提高了隱私性、安全性和效率。此外,idToken可以很取代紙質資訊交換,并加快用戶和公司的身份識別速度,消除傳統數字身份管理中無法解決的公開性問題。該模式另一個重要特點是提高了區塊鏈的可用性。IdChain 使用嵌入在便攜式設備(如智能卡等)中的加密引擎,將身份資訊與特定設備(如計算機等)分離。生物識別密鑰作為第二種認證因素,解決了 Indy 認證系統中缺乏認證機構的問題,
未來發展
未來仍然存在隱私問題,還要進一步發展生物識別數據(除指紋方案外)在區塊鏈中的使用。此外,還需要開發工具,將IdToken 內的數據量進行分區,使所訪問的數據僅為有必要訪問的數據,提高區塊鏈的可用性和實用性。
在不久的將來,我們可以預見一個安全性極高的身份管理模式,解鎖、分享 NFT 代幣的更多可能,證明物品所有權和身份真實性,為用戶身份安全提供保障,同時確保資產/代幣的所有權以一種安全、可信的方式進行分享。