为什么“使用以太坊登录”会改变游戏规则?它对Web3的构建者来说,意味着什么?_比特币:莱特币

原标题:《为什么“使用以太坊登录”会成为游戏规则的改变者?》

使用以太坊登录是互联网上用户选择的游戏规则改变者。

用户现在可以使用控制其区块链帐户的相同密钥登录,而不是提交“大登录”,并且无需中间人。这种方法有希望但不能保证重新平衡有利于用户的功率动态。通过使用以太坊登录,我们开辟了一条道路,让大公司不再能够剥夺用户访问服务的能力,也不能监视他们的行为。

使用以太坊登录是一种完全公开开发的身份验证开放标准,通过与dapp、应用程序、钱包、安全公司等社区成员的公开讨论获得信息。您可以在login.xyz上找到所有会议记录和笔记。这种方法与科技巨头或政府供应商中发现的专有身份系统的封闭式开发相去甚远,这种封闭式开发受到了隐私和数字权利倡导者的正当抗议。

相比之下,使用以太坊登录(EIP-4361)为以太坊帐户定义了一种开放的知识共享(CC)签名格式,以安全地使用任何基于Web的服务进行身份验证。它是由社区在以太坊基金会和ENS的直接支持下建立的,去年年底Spruce被任命为领导者。我很高兴与以太坊讨论登录的重要性,以及它对于Web3中的所有构建者来说不仅仅是“连接钱包”。

连接钱包vs登录

“连接钱包”按钮是当今dapps的主要接入方式。点击按钮开始进入Web3和区块链交互的旅程。

但是,连接钱包可以让您告诉应用程序您知晓正在使用哪个帐户,并且保证到此为止。您的钱包更需要了解您想使用哪个帐户与智能合约交互、发送加密货币,甚至通过dapp签署消息。连接钱包是非常基础的——dapp不会记住任何关于你的信息,并且正在为简单的交互建立一个前台。

当应用程序想要与用户进行更丰富的上下文交互时,例如加载他们的偏好或私人聊天消息,我们需要首先确保我们正在与帐户背后的实际密钥持有者交谈,而不是假装控制帐户的人。“连接钱包”不提供此保证,但使用以太坊登录(SIWE)提供。换句话说,我们需要对用户进行身份验证以与他们建立会话以安全地读取和写入他们的数据。对于这个例子,我想介绍一下ConnectedCarl和SessionSam:

ConnectedCarl使用dapps并且玩得很开心。他可以在Uniswap上进行交易,在Aave上借贷,甚至在OpenSea上购买NFT,只需连接他的钱包。有一段时间,Carl的事情进展顺利,直到有一天,他遇到了一个问题:他希望这些dapp能记住一些关于他的事情,以便在他第三次、第四次和第五次使用它们时给他更好的体验.

Carl正在考虑如果Uniswap自动导入他的清算偏好,Aave记住他最喜欢的借贷市场,甚至OpenSea记住他的名字而不是0x2Fe1a3...帐户,他的体验会好多少。每次连接钱包时,Carl都必须从第一格重新开始。

SessionSam没有这个问题。在使用dapps进行身份验证并建立会话后,此信息将被保存。即使Sam断开连接并再次进行身份验证,Sam仍会从他离开的地方继续,并且仍然会在应用程序中记住关于他的所有内容。他的信息甚至可以保存在他控制的远程数据保险库中。

统一使用以太坊登录

在Web3中,您会发现许多现有服务提供某种形式的“使用以太坊登录”,但没有多少符合标准。他们通常会使用它与可以管理有关帐户的特权元数据的用户建立基于cookie的会话。例如,如果您想让用户能够在您的网站上自定义他们自己的配置文件,您应该在用户进行任何更改之前对用户进行身份验证,确保只有用户可以编辑他们自己的配置文件。其工作流程如下所示:

连接钱包后的第一步是为用户提供人类可读的信息,以便他们了解自己正在进入什么状态。有很多情况下,用户会看到“登录”,一些关于“登录”的不一致的措辞,甚至有时只是一个任意数字。相反,我们可以根据现有的实践、一些良好的安全措施以及在人类可读性和安全性之间取得平衡的严格语法来定义一组必填字段。此外,钱包不必改变其现有的界面和做法,至少可以继续为用户提供这种信息。

我们可以首先获取所有这些混乱的“使用以太坊登录”消息,并采用一种公认的通用方式向用户展示请求:

通用消息——通用接口

通过商定的签名消息格式,应用程序和钱包现在可以使用相同的语言。当应用程序向用户提出签名请求时,钱包可以检查该请求,检查它是否适合作为EIP-4361消息,并让用户知道他们正在登录网站。

在这一点上,钱包可以呈现一个友好的风格化界面,让用户感觉良好,并消除对用户将要采取的行动的任何疑虑,而不是向用户呈现任意文本块以进行签名。用户现在只需点击确认对话框即可“登录”,因为钱包理解签名请求。为了完全透明,规范声明整个消息和字段仍必须在其他子界面中可用。

从EIP-4361消息中,我们现在得到了一个更简洁的界面:

该规范还为钱包引入了额外的安全要求,例如防止网络钓鱼攻击的域绑定和防止重放攻击的随机数,在整个体验过程中进一步保护用户。例如,如果钱包找到有效的SIWE消息,但用户正在为example.com签名,但实际上是在exampie.com上,则钱包可以警告用户以下情况:

超越身份验证

使用以太坊消息登录也可以解释为对访问特定资源的授权,或对会话密钥的委托,以增加功能和围绕dappUX的易用性。例如,想象一个世界,用户可以使用他们保留的数据来丰富他们的会话,而不是应用程序保存用户的数据?有关更多信息,我们强烈建议您查看以下内容:https://blog.spruceid.com/from-sign-in-with-ethereum-to-session-keys/

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

[0:15ms0-7:304ms