以太坊证明服务 (Ethereum Attestation Service,EAS) 是什么?为什么会需要一套链上的认证系统?又是如何做到的呢?本文将从需求出发,讲述证明基础设施对于 Web3 发展的重要性。
EAS 想解决什么问题?
Web3 缺乏认证机制以建立信任
先来看看一个生活例子,假如今天去夜市,通常会选择什么样的摊贩进行交易?一般来说可能是自己常去的店铺或是熟悉老板摆的摊,或者是同事推荐的餐厅,更可能是看到多人排队或是有贴出电视台采访照片的商家。
如果那间摊位都没有人、看起来脏兮兮的或是自己以前也没有去过,通常一般人前去消费的可能性较低。
其实上述事件可以归纳出一个重要的结论:若商业行为要发生,信任是非常重要的关键。
因为自己去过、因为朋友推荐、因为老板有认识等个体的内部连结,无疑可以带来信任。
但若双方本来就没有既有连结 (例如光观客选择要吃哪一摊小吃),那么信任通常来自于外部证明,例如排队人数或者是贴出电视台采访照片的证明,而这类证明 (Attestation) 现在于 Web3 来说是相对缺乏管道的,
因为 Web3 的产品都是在网路上,又不像是 Web2 可能有政府保障 (消保法) 或者是平台政策保护 (例如某电商的消费者保护规定),因此很难出现多元、长尾商业生态,更可能出现像是大者恒大的现象,例如 Lido 或是 Aave 的 TVL 远高于其他同业。
Web3 现有其他证明机制不完善
上述缺乏信任的产业问题,是因为外部证明机制的缺乏,更广泛地说就是人格证明的基础设施未完善。在网路上很难新象来路不明的陌生人,因为双方都缺乏证明身份的方式。
虽然是这么说,但其实已经有很多专案与技术都已经在尝试提供 Web3 的证明机制。例如 Worldcoin 利用虹膜确保地址与生物特征绑定,或者是 POAPs 利用 NFT 证明参与者有来过活动。但这些做法都有过犹不及之处,前者验证成本太高且充满争议、后者的验证成本太低 (被证明者不需要提交任何资料)不容易成为有力证据。
ESA 产品设计介绍
EAS 为了提供 Web3 可以广泛使用的证明机制,使用两套合约实现:
- 模板合约:让发证单位可以规定审核资料规定
- 证明合约:让被证明者提交证明所需要的资料
EAS 建构一种标准化的方法来,让产业的证明流程更加简单且有效率。
证明模版:为各种证明提供结构
EAS 团队认为,身份的的根本来自于个体从过去到未来的累积,而非一次性的检核。医生证明你的出生日期,政府证明你的护照,老师证明你的成绩,学校证明你的学位,雇主证明你的就业记录,例子不胜枚举。在生活的每一步,从出生到职业生涯都有证明,正是这些细小的线索与证明,编织了每个人身分的结构。
团队认为完整的证明机制,应该是要让任何事情都可以被记录,从小到每一次的交易或是活动参与证明,大到证明驾照与学历,都应该可以使用同一套系统。因此将 EAS 设计为一套通用型证明系统。
EAS 提供认证方 (发行证明者、验证者) 一套模板 (Schema),以设定证明流程相关内容,包含 UID、发证者资讯、被证明者需要缴交的资讯等。
提出证明:被证明者提交相应资料
一旦确定证明流程的架构,进行证明的过程就很简单,只需要被证明者依照格式填入资料,并使用钱包签名即可。也可以依据需求与重要度选择链上或是链下纪录,当然前者更加严谨,但后者则是零成本。
EAS 的目标是成为标准
EAS 的设计简单,包含模板背后的后端也就是几行程式代码,团队的目标是成为未来其他应用的认证通用标准,作为所有应用场景的认证标准。
当所有认证格式都标准化之后,可以强化 Web3 可组合性的优势。例如未来某演唱会要开放抢票活动,可以依照需求纳入不同单位的认证来确保购买资格,例如驾照证明、粉丝证明、非假帐号证明等。而这将仰赖证明标准化的基础。
EAS 困难点在于广泛采用
由上述 EAS 设计可以想见,成为标准最困难的部分就是说服大多数的人都采用,而这需要一定的影响力。
EAS 的团队成员来自以太坊核心开发者社群,正统性并不是问题。但市场是否接受甚至大规模采用,这之间仍充满未知数,也是后续看待去中心化身份(DID) 专案的关键。