从 DID 到 SSI 观念的「变迁」,也许意味着这一问题的「标准答案」已经不再遥远了。
撰文:ICPL 研究院 Minority
修订:Blockpunk
Web2 的用户十年如一日地在社交网络上生产并消费内容,他们受制于创造和消费的平台本身。为了使用平台的功能,用户必须授权中心化的第三方平台管理大量数据,也因为此,中心化公司在数据和内容权限方面被赋予了巨大的权力和影响力,拥有用户数据和所有用户生成的内容的所有权,这意味着用户的身份、数据都受到控制。海量的用户数据成为了如 Facebook 等平台谋利的工具,甚至于不少本应享受互联网便利的个人被迫成为「数据民工」,为平台算法而服务——毫无疑问,这种对用户数据和身份的亵渎行为无疑违反了互联网精神。
与此同时,Web2 的平台垄断与割地为王的基础设施,使得社交图谱与用户关系变得固化,用户无法迁移,倘若原有的平台因为各种原因而无法使用,那么将你的好友们搬迁到新平台的路将会变得异常繁琐和复杂——由于缺乏相对应的身份机制,且原有平台的数据并不属于用户本人,你仍然无法向原有平台的好友证明「我是我」这件事。
Web2 的身份是暂时的,但改变正悄然发生,随着用户需求的日益增长,这一概念正被 Web3 重新拾起,各种各样的去中心化身份验证方案正作为宏大架构下最原生的组件,用户既可以在去中心化的架构下保护自己的隐私,又能通过对外渠道证明自己作为「有价值的人」的存在。
去中心化身份标识 (Decentralized Identity,DID) 是一个运用较广的概念,该理念来由 w3c 提出标准,DID 更多从技术本身出发,强调去中心化的技术标准,实现分布式的注册和身份提供方案,其设计与历练对于日新月异的世界来说显得过于老旧且复杂了。不仅如此,传统 DID 项目的表现并不尽如人意,不仅需要花费大量的用户教育成本,而且在实际功能上也受到限制。
而在 Web3 的时代,人们为去中心化身份赋予了更多超越标准的想象:这个身份除了要区别于 Web2 ,是全球唯一且永久的、并能被解析、且具有高人类可读性、可加密验证的标准协议,还能通过区块链的特性,使得在不需要任何中心化的第三方参与的情况下,用户的身份标识完全由所有者控制,并同时解决身份之产物——用户数据的确权、验证、存储、管理与使用。
这种身份与其周围系统,从用户角度出发,被称为自我主权身份(Self-sovereign Identity,SSI)。可以说,SSI 包含了 DID。
加密钱包如 MetaMask 登陆正逐渐取代传统账号,使用户的身份做到唯一、永久且可验证。某种意义上说,钱包只是代替了中心化组织进行认证这一环节——密钥,或者说助记词。
当前对钱包的发展主要集中在密钥的管理、验证方式等方向(如智能合约钱包)。然而需要注意的是,身份验证,也就是钱包并不是身份的全部,这种认证方式仅限于对己而非对系统外部。因为区块链公共协议层对数据的可访问,EVM 钱包等事实上牺牲了用户数据的机密性,数据的确权、验证、存储、管理与使用也就无从说起。
如果只是简单的用钱包地址一对一的作为 Web3 身份,这就类似在物理世界里,用户只能用自己明文的身份证号码,被记录在用户出入过的每个地方(地铁,便利店,办公室,公寓门口,酒店,路口监控等等),身份信息可以被第三方轻易获取,将会产生非常严重的隐私泄露问题。
所以,Web3 世界需要一个独立的身份服务协议层,在用户钱包和第三方dapp之间。
更多的开发者尝试将链上数据通过地址序列化,并通过不同的价值观产出简单的证明,这种证明也被称为「声誉」。因为基于可验证的链上数据,这种声誉并不依赖于平台,可以在不同场景下使用(实际上依赖于不同的价值观社区)。
因此「声誉」可以在同一价值观社区中被快速地验证为「是否做出了贡献」、「是否为高价值用户」,比如 Project galaxy 和 POAP 的徽章类证明,RabbitHole 中通过学习而获得证书记录,甚至像 Gitcoin 一样设置 Trust Bouns,本质上都是通过参与而赋予认证使女巫攻击的可能性降到最小,使得 Bot 无机可乘——原因在于,只有「人」才会真正的参与到声誉称号的获取中。
还有观点认为,Web3 原生的身份无需准确地复原一个真实用户(允许更灵活的使用方式),而是衡量一个行为的价值,尽管仍然可以通过人工刷量的方式获取「声誉」,但这些行为依然被认为是做出的贡献。
声誉系统是身份的巨大进步,但对链上数据的过渡依赖又导致了新的问题,输入身份的数据类型过于单调——大部分都是金融交易数据,这很难从中产出有效的多维度的社会关系;同时,声誉基于同一价值观的社交网络的认证,而完全依赖链上历史也将让社交网络变得封闭,因为这种声誉的产出并不公平,反而会加剧「马太效应」,新来者天然地会拒绝加入该社交网络或接受其价值观(见《 Status as a Service 》)。
我们看到更多的 Web3 社交项目试图在链上映射 web2 的社会关系,并通过更多场景为身份添加更多类型的数据输入(而非只是金融)。你可以简单的因为持有同一种 NFT 而被准入进入某个 Discord 社区,或者通过 CyberConnect 将 Twitter 的 Web2 朋友迁移过来,或者通过 RSS3 的订阅,从 web2 获取社交媒体信息流。
但由于基础设施的天然缺陷(缺少存储层与存储分片能力),非交易的数据本身不会被部署在链上,而是被各项目方/平台以自己的方式序列化,存储到自建基础或 IPFS、AR 等去中心化存储中。这其实走了 Web2 平台的老路,一定程度上有数据泄露和丢失的风险;同时社交图谱并没有被共享,而系列化后的社交关系数据本身是难以验证的,因此也很难互相组合获得 DeFi 上类似的乘数效应。不过也有例如 Lens protocol 这类协议尝试打通社交数据层,但在短期内很难对数据标准形成共识。
同时,用户数据被永久地、不可选择的记录,事实上并不利于社交形象的改变——尤其是在日新月异的虚拟世界里,用户应该有权力去控制展示哪些声誉/数据而隐藏哪些。
更棘手的是来自多链/多标准等的挑战,由于不同链上的数据都互相不可见,甚至账户模型都存在巨大差异,导致 Web3 的身份事实上又回到了 Web2 时代各大平台/基础设施互相割裂的情况。
一个在链上运行一个独立的身份数据服务层 SSI 有机会解决上述问题,SSI 作为原语为链上声誉体系提供底层数据积木。
应用总是先于基础设施出现,而基础设施的天然缺陷导致了大量的权宜之计,引发了上述的问题。我们需要怎么样的基础设施呢?首先存储层对数据的确权来说是必要的,而通用计算能力也能让社交逻辑发生在链上,实现数据的可验证与业务的可组合。
DFINITY 的互联网计算机基础为身份提供了完美的载体,这里需要介绍 IC 网络的特性:IC 是目前唯一的存储、通用计算、智能合约为一体的全栈区块链计算机,其智能合约也被称为容器,容器间不会通过区块数据共享状态,而是独立维护自身的内部状态,每个容器当前具备 4 GB 的运行内存与 8 GB 的静态存储,容器间通过固定的 API 互相调用,容器内的 WASM 虚拟机进行确定性运算,网络对容器间的调用顺序进行共识。
IC 的容器是身份数据确权的天然载体,我们认为附带 IC 独立存储与通用计算能力的智能合约/容器,是 Web3 原生的基础设施,合约中不仅能存储不可篡改的业务逻辑,更能承载任何类型的数据:身份的 KYC、社交图谱、头像等,其容器可以通过 API 有选择地让其他容器调用数据,而不用担心泄漏无关数据。
同时 DFINITY 也为 IC 建立了被称为 Internet Identity(以下简称 II)的身份验证技术,用户可以使用支持 webauthn 的硬件(目前大部分的智能手机与电脑都支持)通过面部扫描或指纹识别,在几秒钟里创建去中心化的 ID。用户不再需要管理用户名/密码,也不需要接触难以理解的私钥/助记词,就可以轻松的控制自己的 ID。
以 IC 网络中的聊天服务 Openchat 为例,在与 II 集成后, Openchat 为每一个用户创建了独立的容器,用于存储他们聊天历史与社交关系,用户可以还能通过自主控制的 API 来管理数据。另一个例子是 IC 网络中的去中心化云笔记 Dstar,它使用了 II 提供的「秘密同步容器」在多个设备上同步笔记,而每个笔记本就是一个独立容器,用户甚至可以修改其读取/写入权限将其接入新的笔记服务中。这真正做到了用户数据的可迁移,这是 Web3 数据所有权的基础。
相比基于其他公链的 Web3 DApp,需要利用中心化服务器运行复杂的业务逻辑并存储数据,IC 独有的底层架构使得数据迁移不再困难,也有利于除交易外的更多业务在链上落地,为数据提供新的输入场景。
在 IC 最近的治理中,社区关于强对真人的证明(Proof of Humanity)支持的提案被通过,这样讲为 IC 的服务提供抗女巫攻击(Sybli attack)的能力,在 IC 上 ModClub 也提供了这类的服务。
从 Web3 Native 的身份服务的角度来说,IC 生态上已经有一系列方案包括 Identity Labs、AstroX Me、Relation 等。以 AstroX Me 为例,AstroX Me 通过提供自我主权身份(Self-sovereign Identity),作为易用的多链智能合约钱包帮助更多互联网用户进入 Web3。
AstroX Me 抽象出了一个更通用的身份服务。在 Internet Identity 的安全设备登录基础上,AstroX Me 允许用户将 MetaMask 作为一个安全硬件来登录 II 从而使用 IC 生态,AstroX Me作为多设备多身份的聚合器,大大地降低核心用户的准入门槛。
在 Web3 世界上构建身份服务只是一个开始,AstroX Me 的目标是成为 Web3 系统的集成商,也将支持支持 Email 验证登录,以及传统互联网社交方式(GoogleID等)的登录,从而引入非加密世界的更大数量级的互联网普通用户。AstroX也在开发多身份登录协议的统一插件SDK,类似以太生态WalletConnect,降低Web3应用开发门槛。
AstroX Me 将为每个用户创建独立的身份容器,可以讲这个容器看作是你的智能合约钱包,但同时存储了与你身份有关的相关数据。
作为自我主权身份服务,AstroX Me 让用户能真正掌控属于个人的身份、资产和数据,用户可以对 DApps(去中心化程序)访问用户个人信息或加密资产的权限进行授权/取消授权,来维护自己的隐私与身份。
在多链的挑战下,让用户自行管理多链的私钥/助记词的成本是巨大的,Astrox Me 计划推出支持多链签名的智能合约钱包,让用户在无需接触多链的私钥/助记词地基础上,一次性管理多链的地址与服务。
这将使用 IC 底层的 ChainKey 聚合签名技术:IC 的网络节点保存了私钥碎片,这些碎片的签名可以被节点聚合出一个唯一的私钥签名,这个签名被 BTC、以太坊(以及其他所有使用 ECDSA 加密算法的区块链网络)验证。基于地址衍生算法,Astrox Me 可以为每个容器创建一个符合以太坊标准的地址作为其钱包地址,并调用 IC 底层技术通过共识进行签名,这就相当于在 IC 上创建了一个 ETH 的智能合约钱包。
在实现多链智能合约钱包的过程中,Astrox Me 实现与多链节点的端到端的集成,来读取多链状态,让其在 IC 上具备数据可用性,从而为智能合约钱包提供服务。DFINITY 官方会在接下来的 完成 BTC、ETH 与 IC 网络的集成,这将帮助 Astrox Me 创建多链智能合约钱包,同时未来还将会有 BSC、SOL、AVAX 等网络的集成。
无论是 DID 还是 SSI,本质上都是为了避免中心化模式下由个人数据而引起的种种弊端——数据控制方对个人信息的滥用,互不打通数据层的平台壁垒,以及用户对自己个人信息控制权的丧失。但对于基础设施尴尬过渡期的 Web3 来说,大部分身份/声誉的方案并不足够原生,我们仍然面对着很多薄弱的中心化环节与极其有限的社交场景,这极大地限制了创新。
基础设施的革新会带来新一轮的应用爆发,IC 的独有架构似乎提供了可能,容器看起来就是 Web3 身份的完美载体,我们是否能在 IC 上创造真正具备记忆(存储)与思维(通用计算)能力的「加密孪生」 ?
【免责声明】市场有风险,投资需谨慎。本文不构成投资建议,用户应考虑本文中的任何意见、观点或结论是否符合其特定状况。据此投资,责任自负。