如何结合区块链、身份证明和预言机来创建链上身份层?
原文:《》
的第一轮创新主要集中在两点,一是用区块链通证来代表资产价值(即通证化);二是将通证用于智能合约应用(即dApp)。这催生出了功能型、治理型和资产抵押型通证,而且dApp可以在各个商业和社交应用场景中使用、交易、借贷和赚取通证。
Web3为社会带来了诸多好处,降低了资本门槛,提高了应用的透明性和加密保障,并为大众提供了无需许可的金融服务。虽然Web3取得了如此大的成功,但却面临着超级金融化的风险。一旦超级金融化发生,财力最雄厚的人就会对生态的开发、治理和文化等核心领域拥有过度的影响力。目前而言,Web3用户除了对方的链上地址以外彼此一无所知。
为了解锁更多创新的应用场景,Web3需要建立技术栈,基于用户的经济和社交属性来进行操作。这样一来,链上关系就不仅限于交易,而是可以扩展至个人关系、文化、声誉、身份以及信任等各个维度。
将社会资本融入Web3,就需要创建链上身份层,扩展链上地址的用途,不仅可以显示账户余额,还包括用户特征、社会关系以及声誉等各种信息。将这些身份信息结合在一起,Web3用户就可以拥有“灵魂”。E. Glen Weyl、Puja Ohlhaver和Vitalik Buterin在名为“Decentralized Society: Finding Web3’s Soul”的研究论文中详细阐述了这个概念。
本文将以宏观的视角讨论Web3身份这一主题,重点聚焦如何结合区块链、身份证明和预言机来创建功能丰富的链上身份层,满足各种应用场景和用户信任假设。
Web3为什么要创建身份层?
Web3的核心是实现,流程几乎可以百分百地保障会按照参与者预想的那样进行。区块链之所以会采用去中心化、经济激励和加密技术,就是为了实现信任最小化,为用户保障运算的准确性、及时性、抗操控性以及不可篡改性。在区块链上以信任最小化的方式来执行代码和储存数据,这也称为“”。
加密事实结合了加密技术和去中心化的共识,在分布式的网络中达成共识,创建统一的记录,并以确定性的方式为应用展开计算。
加密事实主要是基于博弈论创建的,即通过奖励来激励正确的行为并惩罚错误的行为,以此来激励去中心化网络中大多数节点采取理性的行为。比如,大多数区块链博弈论都会假设如果网络完全透明、去中心化且受到经济激励,那么攻击者就很难成功,因为他们发起攻击必须付出一定的经济成本(比如PoW网络中需要计算资源,PoS网络中需要质押通证)。这个博弈机制的最终目标是打造确定性的软件,即:输入x永远都能输出结果y。
然而问题是,要搭建框架让终端用户开展社会和经济活动,只靠经济激励是完全不够的。首先,在某些应用场景中要实现信任最小化而建立的惩罚机制可能对用户来说太过严格,惩罚大过于奖励,因此得不偿失。如果由于意外或误会而导致被罚款怎么办?在许多应用场景中,用户不希望受到经济因素的影响,或者至少不想在交互中由于质押大量资产而承担风险(比如治理、公共物品和社交俱乐部)。
Web3协议可能还面临诸多其他挑战,比如法律合规、验证链下行为或解决纠纷。对于用户伪匿名的协议来说尤其如此。虽然伪匿名在有些应用场景中是一个有价值的功能(比如可以抵御操纵风险),但对于许多应用来说,必须要知道终端用户的某些个人信息才能保证正常运行。
因此,我们急需为Web3创建链上身份层,向区块链应用证明用户社交身份的同时又能保护用户声誉、KYC/AML、特征等个性化数据的隐私,在一定程度上或完全保留区块链信任最小化的特点。身份解决方案可以帮助用户和应用了解除了用户账户余额和交易历史之外的其他信息,并基于各种类型的社交信息来开展链上交互。
比如,货币市场可以针对信用记录良好的用户降低贷款利率;DAO可以向支持某一事业的用户airdrop会员资格;企业在建立业务关系之前可以先开展KYC/KYB验证。最终,在链上添加身份层将打破现有Web3技术栈的瓶颈,催生出一系列创新的应用。
Web3身份解决方案的底层技术
为了更好地理解身份信息,我们先来看以下三类身份信息:
-
官方身份——指个人在某一司法管辖区获得的官方认证或受法律承认的成就和事实。
-
社交身份——指个人从他人那里获得的非官方属性、成就或声明。
-
自我身份——指个人为自己创建的属性、成就或声明。
这三类身份信息如何应用到Web3领域要取决于开发者、用户或去中心化社区具体的价值取向和业务需求。比如,有些企业可能由于自身的运行机制,会更偏向官方的隐私身份信息。而一些Web3原生应用可能更倾向于透明的社交身份解决方案,去中心化社区可以通过共识来验证链上用户的信息。每一种身份信息都各有优劣势,在采用前需要充分考虑。
Web3的身份解决方案主要分成三大类,可以单独使用,也可以组合在一起使用,以满足不同的需求。
区块链:身份数据库
区块链是公共数据库,从技术上来说,用户储存的数据无法被篡改,世界上任何一个人都可以访问这些数据,并且可以轻松应用于各种场景。然而,在公链上储存原始的个人身份信息(PII)可能会导致严重的隐私问题,因为公链本质上是公开透明的。
索性,还有其他办法可以访问区块链的身份数据和断言(assertion)。用户可以在区块链上储存个人身份信息数据的哈希值,而数据则储存在链下数据库;还可以将个人身份信息或关于数据的主张(claim)变成区块链上的通证。或者,可以利用外部实体(即区块链)来验证用户的链下身份信息,然后将证明发布到链上供智能合约参考(即:发布一个yes或no的证明,证明Alice是否满21岁)。
身份证明:身份信息和证明
身份证明指关于个人资质、成就、特征或任何背景信息的主张(claim)。身份解决方案通过证明来验证个人是否有资格执行某些操作,比如只有拥有驾照的人才能驾驶汽车,或有相关职业证明的人才能在某一行业执业。
Web3的根本目的是建立数字关系,因此要开发Web3身份解决方案,关键是要能访问数字证明。Web3身份有两个最常见的特征,那就是可验证的身份证明(verifiable credentials)和去中心化的身份标识(DID)。可验证的身份证明是关于用户身份的不可篡改的声明,由发行方进行加密签名。验证者(verifier)可以通过DID来验证这个身份证明,比如采用区块链上的公私密钥对来验证经过哈希运算的身份证明属于某一用户。
另外,还可以将身份数据或证明变成通证。比如,灵魂绑定通证(SBT)是不可转让的非同质化通证(),代表了通证所有者的承诺、资质、会员身份、隶属关系或声明。SBT可以由一个用户发给另一个用户,也可以由机构发放。另外,用户也可以给自己发。SBT包含各种信息,可以是大学颁发的学位证书,也可以是用户希望被公开问责的声明。SBT具有不可转让性,因此对链上地址来说是非常可靠的独特身份标识,但它们本质上却是透明的,所以很难用于需要保障隐私的场景中。POAPs是另一种类型的通证化身份解决方案,活动组织者可以向参与者发放NFT,来证明他们参与了活动。
用户将通证化和非通证化的身份证明结合在一起使用,并有权控制这两类身份证明,这将为去中心化身份或自我主权身份(SSI)奠定基础。这个概念的精髓是用户能够拥有和管理自己的身份证明,并可以按照自己的意愿将身份证明分享给应用。
预言机:身份证明的验证者和传递者
预言机可以对原本储存在链下或在链下生成的用户身份信息进行验证,并上传到链上。预言机可以直接从链下API传输原始数据,或在不同区块链之间传输数据。预言机向链上传输数据并触发链上执行(注:比如基于某一储存在链下的个人身份数据触发在链上铸造通证)之前还可以对原始数据进行运算。
预言机最新颖的一个应用场景就是用户可以自己请求数据,比如从大学获取学位证书,或从政府网站获取法律证明,并且验证数据的来源。用户无需向预言机暴露数据隐私,而是可以通过零知识主张来进行证明。最终,预言机可以验证用户链下身份信息的有效性,同时还能保障数据隐私。
Web3身份解决方案赋能全新应用场景
以下是七个独特的链上身份解决方案,可以解锁各种Web3创新应用场景。这些解决方案利用了链上数据、身份证明和预言机来验证用户身份的各个维度,以实现不同类型的经济或社交场景。
法律身份证明——“你是某人”
如果公司或项目需要符合某个司法管辖区的监管规定,或在合约发生纠纷后跟进用户,合法姓名、出生日期和居住地这些身份信息都是非常重要的。
可以采取几种方式来证明一个人的法律身份。其中一个方式就是官方身份证明的发行方(如政府或银行)发行可验证的身份证明。不过这样做存在一个问题,那就是大多数身份证明发行方目前都不想要从零开始搭建可验证身份证明的系统,也没能力投资新技术来改善现有IT系统。
因此,一个更实际的办法就是采用DECO。DECO是一个保护隐私的预言机协议,目前正在开发者中。其采用零知识证明技术,让用户可以向应用证明关于自己身份的数据,同时不向大众或甚至预言机公开个人隐私数据。DECO可以接入现有API,即使需要终端用户验证,也无需API数据提供商做任何修改。
Burrata参与了DECO概念验证项目,Web3用户可以利用Chainlink接入Burrata生态中的链下API数据提供商,向链上应用证明用户的Web2身份。这个概念验证项目可以通过DECO接入身份认证平台和文档签名服务,不用在链上或对预言机公开任何隐私数据,只需要发布关于隐私数据的主张即可。在2022年SmartCon上,Burrata展示了一个房屋租赁的产品原型。用户在租房前需要先验证身份并签署临时租赁协议。
社交身份证明——“你拥有某个线上账户”
很多应用会想要在Web3相关服务中利用已经创建的社交身份(如Facebook和Twitter)。因此,用户要与Web3平台的其他用户交互,出于安全考虑就必须先验证关联其Web3地址的Web2社交身份。
PhotoChromic这个项目已经成功完成了DECO概念验证项目,使用DECO将Web3用户与其Twitter或Discord社交账户绑定,并在过程中不暴露底层个人身份数据。Photochromic可以很好地绑定用户的Web2和Web3身份,让用户可以在钱包中添加更多社会属性,将社会属性做成NFT,以保证身份的真实性和便携性。最终,我们可以将用户的链上和链下身份结合在一起,并避免反复做KYC而浪费时间。应用只需要基于某些标准向用户开放,不需要知道用户在现实世界中的身份或他们的社交媒体账号。
创作证明——“你创造了某个东西”
许多应用场景都不需要做KYC,但却需要证明某一声明或艺术品的来源。通过追溯文字或物品的创作者,用户可以证明其艺术创作或奢侈品的真实性,也可以验证视频或声明的真实性。
建立创作证明(proof-of-creation)机制的一种方式就是发行SBT。正如论文《Decentralized Society: Finding Web3’s Soul》所述,艺术家可以从自己的灵魂(地址)发行一枚NFT,其他人可以验证这枚NFT确实来自这个艺术家。艺术家还可以发布一个声明,该声明是关联某一NFT的SBT,并储存在他的“灵魂”地址中,以此来证明NFT属于某一系列,以及NFT的稀缺性。另外,摄影师也可以发行关联SBT的照片和视频,避免作品被伪造。社会评论家也可以发行关联某一声明的SBT(注:声明可以是关于金融、政治或任何其他热点话题),并基于他过去评论的准确性和道德操守来建立个人声誉系统。
这些应用场景都符合“记录账本”(Ledger of Record)的概念,这个概念由Balaji Srinivasan提出。“记录账本”采用去中心化的协议在链上对数据进行加密签名,其中包括社交媒体数据、数据API接口、活动流媒体、newsletter以及RSS feed等。记录账本的概念旨在为官方信息提供单一事实来源。
资金证明——“你有多少钱”
还有一件重要的事情就是证明某人拥有多少资产,这无法只靠区块链完成,因为资产可能储存在链下或其他区块链上。在金融交易中,资金证明对于评估风险来说非常重要,因为交易对手方拥有的资金越多,通常就越可靠。
Teller是一个DiFi协议,为数字资产借贷提供市场,并支持低抵押贷款。Teller在概念验证项目中采用了DECO协议,证明用户在链下银行账户中的资产余额超过了贷款所要求的动态最低门槛。如果用户账户余额超过了最低门槛,那么他们作为贷款人的风险就会降低,因此贷款抵押条件也会大幅降低。比如,如果贷款人需要贷款5000美元,那么就必须证明银行账户里的余额至少超过5000美元,以证明其还款能力。
了解更多详情,请查看博客文章《DECO如何实现低抵押DeFi贷款:Teller的概念验证项目》:
https://blog.chain.link/undercollateralized-lending-teller-deco-poc/
(链接请复制至浏览器打开)
DECO可以让贷款人证明其链下银行账户余额超过了一定门槛。
社会声誉证明——你拥有多少社会声誉
社会声誉是新兴的身份细分领域,它是指利用去中心化的社区来验证用户的某些操作或特征。还可以从用户的链上交易历史或SBT中提取社会声誉。
比如,如果用户链上交易历史可以证明其还款记录良好,那么借贷协议就可以降低该用户的抵押门槛。Weyl、Ohlhaver和Buterin 在论文中提到了用户可以质押SBT(即声誉)来获得更好的贷款条件。一旦贷款还完,SBT就会被销毁或换成一个新的SBT,代表用户已经还完贷款。如果贷款逾期,就会自动发布一个SBT,代表用户违约,这有点类似差评。不过值得一提的是,如果无需任何许可就可以随意给别人发差评SBT,可能会导致一些问题,比如会导致个人信息被公开、网络霸凌或内容操控等。
这篇论文还谈到了SBT的社会声誉如何用于冷启动一个Web3社区,具体而言就是通过向符合某些条件的灵魂地址airdrop通证。比如,如果一个DAO希望建立强大的开发者社区,就可以对开发者airdrop通证,条件是开发者持有五个会议发放的SBT中的其中三个,或持有其他证明其参加过会议的通证,比如POAP。还可以综合评估SBT组合,来调节airdrop权重。比如,如果一个灵魂地址同时持有环境保护方面的SBT、园艺SBT以及碳截存通证,就有资格获得某一植树造林NGOairdrop的治理通证。
人格证明——“你是谁”
如果应用可以得知用户的关键信息,即:用户到底是bot还是无法被复制的真实人类,就可以极大提升功能性。不可转让且不可重复使用的人格证明(proof of personhood)只要可以保障用户个人数据隐私,就可以有效用于各类应用。比如,社交媒体平台可以采用人格证明来避免bot给用户发送垃圾信息或恶意链接,还可以防止通过女巫攻击达成虚假的社会共识。
DAO可以采用人格证明来抵御女巫攻击,防止某一用户通过操控多个不同账户来获得巨大控制权。一个方法是对灵魂地址中的一系列SBT展开计算,如果地址中有一定数量声誉较高的SBT(特别是由多个不同的机构或灵魂账户发放的SBT),那么账户主人就更有可能是真人而不是bot。不过,抗女巫攻击非常难做到,因为要验证个人身份证明的独特性需要接入一个数据库来验证是否有重复信息。
交互证明——你与谁互动过
如果应用可以证明用户曾经以某种方式与某个对象互动过,将有潜力实现各种创新的应用场景。交互证明(proof of interaction)在市场营销活动中特别适用,用户受到经济激励来进行某些具体的操作以获得奖励。某些交互甚至还会触发SBT发放,比如向慈善事业捐款或提供社区服务,可以获得社会公益SBT。另外,这个触发模式还适用于反复发生的操作,比如在x-to-earn应用中,每次交互都可以触发airdrop。
Clique展开了DECO概念验证项目,并开发了一个粉丝证明解决方案。该方案可以让用户证明他们在某一艺术家或创作者的推特下面互动过,或者他们关注了推特上的某个内容创作者。而在整个过程中,用户都无需向应用透露自己的推特账户,以此来保护自己的隐私。这个机制可以证明你是某一创作者的粉丝,并获得各类通证/NFT奖励、声誉或特权。除此之外,Clique还可以通过DECO获得更优质的数据,保障用户粉丝数量和内容观看次数的真实性。
Web3的下一个发展阶段
毫无疑问,身份是Web3应用和服务扩展的关键环节。不过,在区块链上实现身份证明有很大难度,我们需要保护用户隐私,在发布身份证明的过程中防止欺诈,还需要在数据不可篡改性和证明效率之间的达成平衡。虽然困难重重,但Web3身份确实能为用户带来前所未有的价值,能够让用户只与应用分享自己想要分享的信息。用户甚至可以在不透露隐私的前提下证明自己的身份信息,而这可以通过DECO技术实现。
正是通过这些技术创新,社会资本将成为链上不可或缺的一部分,防止Web3陷入过度金融化的漩涡,并且实现一系列创新的应用场景,将企业和成熟机构都吸引至Web3。最终,身份解决方案将实现Web3的信任最小化,融入到我们的日常生活,为用户更好地保障敏感数据的隐私、透明性和所有权。