撰文:万物研究院 陈剑 Jason
MetaMask 于上周发文官宣支持EIP-4361,不少朋友对于这个协议比较疑惑,从表面来看与普通的签名没有太大区别,本文为大家进行解读,首先要明白EIP-4361这个事其实挺小的,但是背后能够引申出来的领域很大。
EIP4361是与以太坊登录相关的技术规范标准提案,以太坊登录SiwE(Sign-in with Ethereum) 是一种去中心化的身份验证方法,它使用户能够使用他们的以太坊账户实现统一登录并控制身份,而不是依赖于由中心化的公司用的传统用户名/密码身份验证,Vitalik在之前的访谈中曾经提出了认为2023年Web3的三个最大机会,其中就包括以太坊登录,他表示任何有助于以太坊从Facebook、google和twitter等中心化垄断企业手中夺走登录权的技术,最终都会使以太坊在互联网应用程序中获得更多市场主导地位,所以登录体系是Vitalik认为争抢下一个10亿人重要的方向。
其中ENS大家已经很熟悉了,对于Spruce比较陌生,中文区几乎少有对它的报道和解读,它的使命是一家致力于让用户可以控制自己个人数据,得到包括A16Z、YC等一众明星资本的支持,其所在的领域从类别划分属于DID大类下面的SSI自我主权身份,使个人能够控制自己的身份数据,包括决定哪些第三方应用可以使用它,如何使用等问题,所以如果说我们常理解的DID是通过数据收集后证明你是谁,那SSI则是专注于数据层面的授权、使用和管理。
在聊以太坊登录SiwE之前,需要先聊清楚传统的账号登录体系与现存的连接钱包签名,然后才能理解SiwE的区别与优势。
后续随着腾讯和阿里具备了自己的产品矩阵并有生态后,用户在自家的各个产品之间登录,还需要切换不同的账号非常麻烦,以及最大的问题在于各个产品之间的账号是隔离的,导致腾讯阿里无法去充分的“利用用户数据”,比如我用淘宝购买了床单,又用饿了么点了份外卖,那么通过数据分析其实可以给我贴上“打工单身青年”的标签,但因为这是两个产品,每个产品又有各自的账户体系,所以完全无法知道这两个产品用户之间的关联关系,方法要么就是通过统一的账号来进行匹配识别,比如都使用手机号注册,这样所有的产品中只要使用同一个手机号的那就是同一个人,另外就是用单点登录或统一登录的方式,如现在最常用的微信登录,下图为微信登录的流程图,用户使用微信作为登录方式则免除了重新注册账号和管理账号的冗余流程,对于第三方产品降低了用户的使用门槛从而更好获客,对于微信来说更多的用户和第三方产品以微信作为账户登录入口,则可以很大的提升其竞争壁垒。
toC的登录体系可以使用腾讯阿里这类生态级企业解决方案,toB的登录体系同样面临更麻烦的问题,因为随着企业的发展内部使用的产品会五花八门,来源包括第三方定制化采购、SaaS厂商、自研等,再加上员工众多涉及到大量的权限、数据安全等问题,所以如何能够让上万名员工顺畅且安全的使用内部数百个产品也是需要被解决的问题,有如Authing、Okta等公司为企业提供单点登录解决方案。
但因链上资产的特性导致每个人要为自己的安全负责,不再像Web2那样存在一个可以有责任和义务保证用户资金安全的第三方平台了,从而面临用户会被大量的暴露在充满钓鱼网站的环境中,只要进行了相关签名和授权资产就可能被盗,尤其是目前以metamask为代表的钱包交互时披露的信息太少,并且可读性非常差,非技术背景的人甚至大多时候都看不懂要求进行签名和授权的弹窗内容到底意味着什么,所以需要对于索取用户签名授权的动作制定严格的标准,充分的告诉用户要执行的内容。
如文档中所说“作为 web2 公司,您将有机会成为用户进入 web3 的第一个接触点,并帮助他们控制自己的数字身份”,SiwE是希望能够通过将连接钱包-发送签名-完成登录这个过程标准化出来后,让更多的Web2产品可以接入,成为一个登录选项,就像是我们在使用某些产品时,可以让我们选择登录方式包括谷歌登录、twitter登录、facebook登录,下面就可以再放一个以太坊登录,通过登录入口嵌入从而覆盖极大规模用户的web2产品。
关于EIP-4361的提案链接如下:https://eips.ethereum.org/EIPS/eip-4361 下图为SiwE的模板消息、完整的ABNF和对应的弹窗样式,可见以非常结构标准化的方式透出了用户要执行的内容Message、请求登录的网址URI、当前版本Version、所登录的链Chain ID、防止重放攻击的Nonce、登录的有效时间Issued AT和结束时间Expires AT。
上文中提到了EIP-4361背后有ENS,所以在该提案中也包含了对ENS比较深度的嵌入,使用SiwE可以解析ENS的数据,包括ENS名称、ENS头像和ENS文档中指定的任何可解析资源,如下图所示ENS除了本身的域名以外,还可以绑定大量的信息包括钱包地址、邮箱、discord、twitter等。
除了标准化登录以外,EIP-4361还可以一定程度预防钓鱼攻击,目前每天都发生大量的用户被钓鱼网站盗取资产的事件,其中EIP-4361在钱包进行登录的过程中有三个步骤
2.验证域名,如果符合EIP-4361的登录标准,钱包会验证发起登录的网址是否符合ABNF中所提交的网址,从而避免张冠李戴
在设计规范里提到了4条
2.应用程序的后端需要为其终端进行完全可用的支持,不需要强制修改钱包,这一点主要是要求接入SiwE时不能对用户产生体验上的门槛
4.需要做好充分的重放攻击、恶意签名等预防准备
以上就是从EIP-4361出发对Web2到Web3账户体系变革的解读,其实EIP-4361本身并不是如账户抽象、上海升级这类影响巨大的事件,它更多的是建立一种规范的行业标准,但也正是这类润物细无声的优化,才会逐渐的提升Web2与Web3用户的体验。
在撰写本文时向几位朋友进行了请教交流,特别在此鸣谢周载南、余弦、方军等各位的交流探讨!
【相关文章】
本文地址:https://www.qubaike.com/qlk/9vn7gfb0.html
声明:本文信息为网友自行发布旨在分享与大家阅读学习,文中的观点和立场与本站无关,如对文中内容有异议请联系处理。