主页 > imtoken钱包官网大陆苹果怎么下载 > 以太坊账户登录:改变游戏规则#1

以太坊账户登录:改变游戏规则#1

本文解释了以太坊账户登录和钱包连接的区别,描述了以太坊登录提案(EIP-4361)中用户体验的提升。

使用以太坊登录将改变互联网上用户选择的登录方式。 用户可以使用控制其区块链帐户的相同密钥登录,而不是提交到没有中介的大登录。

译者注:大登录是指在众多互联网服务(如:Facebook、Google、微信等)上使用同一种登录方式。

为什么用以太坊登录是一个游戏规则的改变-第一部分

以太坊登录 - 游戏规则改变者。

用户现在可以使用控制其区块链帐户的相同密钥登录,而不是提交到没有中介的大登录。 这种方法有望回归用户权力。 通过 Ethereum Login,我们开辟了一条道路:大公司不能再剥夺用户访问服务的能力,也不能监视他们的行为。

以太坊密钥破解_以太坊团队持有以太比例_以太坊联盟和以太坊的关系

Sign-In with Ethereum 是一个完全公开的认证标准,它是在与社区成员(包括 dapps、应用程序、钱包、安全公司等)的公开讨论中形成的。您可以在 login.xyz 找到所有会议记录和注释。 这种方法与科技巨头或政府提供商封闭式开发专有身份系统大相径庭,后者理所当然地受到隐私和数字权利倡导者的抗议。

相比之下,以太坊登录 (EIP-4361) 为以太坊帐户定义了一种开放的知识共享 (CC) 签名格式,以安全地验证任何基于 Web 的服务。 它是由社区在以太坊基金会和 ENS 的直接支持下创建的。 我很高兴讨论 Ethereum Login 意味着什么以太坊密钥破解,以及比 Connect Wallet 对 Web3 的所有构建者意味着什么。

连接钱包与登录

img

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

但是,Link Wallet 允许您告诉应用程序您要从哪个帐户领取,仅此而已。 更多的是让钱包知道你想使用哪个账户与智能合约交互、发送加密货币,甚至通过 dapps 签署消息。 连接钱包是非常基本的——该应用程序不会跟踪您的任何信息,它只是创建一个前端显示以进行简单的交互。

以太坊密钥破解_以太坊团队持有以太比例_以太坊联盟和以太坊的关系

当应用程序想要在更丰富的上下文中与用户交互时,例如加载他们的偏好或私人聊天消息,它首先需要确保我们正在与帐户背后的实际密钥持有者交谈,而不是假装控制它的人。 “Connect Wallet”不提供此保证,但Sign-In with Ethereum(简称SIWE:Sign-In with Ethereum)提供。 换句话说,我们需要对用户进行身份验证,与他们建立会话,并安全地读写他们的数据。 对于这个例子,我想介绍一下Connected Carl(Carl使用connection)和Session Sam(Sam使用session)。

img

Connected Carl 使用 dapp,感觉不错。 他可以在 Uniswap 上交易,在 Aave 上借钱,甚至在 OpenSea 上购买 NFT,只需连接他的钱包。 有一段时间 Carl 的事情进展顺利,直到有一天,他遇到了一个问题:他希望 dapps 记住他,以便他第三次、第四次、第五次使用它们时,他可以给他更好的体验。

卡尔在想,如果 Uniswap 可以自动导入他的流动性偏好,Aave 可以记住他最喜欢的借贷市场,甚至 OpenSea 可以记住他的名字而不是 0x2Fe1a3... 的账户,他的体验会好很多。 但每次他连接钱包时,一切都从头开始。

“Session Sam”没有这个问题。 在使用 dapps 进行身份验证并建立会话后以太坊密钥破解,此信息将被保存。 即使 Sam 断开连接并再次进行身份验证,Sam 也会从他离开的地方继续,并且仍然记得应用程序中关于他的一切。 他的信息甚至可能保存在他控制的远程数据库中。

与以太坊统一登录

以太坊密钥破解_以太坊联盟和以太坊的关系_以太坊团队持有以太比例

在整个 Web3 中,您会发现许多现有服务提供某种形式的以太坊登录,但标准的服务并不多。 他们通常利用这一点与用户建立基于 cookie 的会话,并可以管理有关帐户的特权元数据。 例如,如果您想让用户能够在网站上自定义他们自己的个人资料(如 OpenSea 所做的那样),您应该在进行任何更改之前对用户进行身份验证,确保只有用户可以编辑他们自己的个人资料。 工作流程如下所示:

img

连接钱包后的第一步是给用户一条可读的信息,让他们明白他们在做什么。 提示给用户的签名信息是LOGIN,或者一些与登录不一致的措辞,有时甚至是任意数字(比如提示用户用一组随机的魔术字母和数字来签名)的情况已经很多了。 事实上,我们可以根据现有的做法,定义一组必要的字段,一些好的安全措施,以及严格的语法来在人类可读性和安全性之间取得平衡。 此外,钱包无需更改其现有界面和做法即可继续向用户提供此信息。

我们可以首先获取所有这些混乱的“使用以太坊登录”信息,并使用它以可接受的通用方式向用户发出请求。

img

通用消息 - 通用接口

以太坊密钥破解_以太坊团队持有以太比例_以太坊联盟和以太坊的关系

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

在这一点上,钱包可以呈现一个友好的程式化界面,让用户感觉良好,并消除对用户将要采取的行动的任何疑虑,而不是向用户呈现任意文本块进行签名。 用户现在可以通过单击确认对话框直接登录,因为钱包理解签名请求。 为了完全透明,规范规定必须在附加子界面中提供完整的消息和字段(如提供详细界面)。

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

img

该规范还对钱包引入了额外的安全要求,例如域绑定以防止网络钓鱼攻击和随机数设置以防止重放攻击,并在整个体验过程中进一步保护用户。 例如,如果钱包发现一条有效的 SIWE 消息,但用户登录的是 example.com 但实际上是在 examie.com,则钱包可以警告用户这种情况。

img

以太坊团队持有以太比例_以太坊密钥破解_以太坊联盟和以太坊的关系

超越认证

使用以太坊登录也可以解释为访问特定资源的授权,或授予会话密钥以增加 dapp 用户体验的功能和易用性。 例如,想象一个世界,用户可以使用他们持有的数据填充他们的会话,而不是持有用户数据的应用程序? 对此,推荐查看这篇文章:

在这篇文章之后,我将再写一篇文章,介绍使用以太坊登录为 Web2 带来的好处。

但现在您可以使用以太坊登录:login.xyz!

请随时关注我们继续支持以太坊登录。 如果您有兴趣参与,请加入我们的 Discord 服务器:

此翻译由 Duet Protocol 赞助。

本文参与登联社区写作激励计划,好文章好收益,欢迎正在阅读的你加入。