【问题标题】:How to connect web3 frontend to web2 backend如何将 web3 前端连接到 web2 后端
【发布时间】:2023-01-23 14:28:48
【问题描述】:

我想知道所有的 web3 教程,像 Metamask 这样的钱包总是通过不同的库连接到前端 (FE)。

如果仍然应该有一个带有数据库的 web2 后端(BE),该方法是什么?

那么如果我从 Metamask 连接到 FE,BE 如何信任来自 FE 的验证? 那么验证过程是否必须通过 BE 而不再是 FE,这意味着我们必须引入一些消息签名?这是怎么做到的?

这是否已经以合理的方式实施,例如有一个节点 BE?

具体来说,我在 FE 上使用 wagmi 身份验证,并通过注入的 Metamask 提供程序连接到 FE。 现在 express BE 应该存储登录用户的用户数据(钱包地址、可用代币、完成的投资等)。

但是 FE 和 BE 之间的这种交互可以有中间人攻击,不是吗?所以我不能相信 FE 请求,我如何结合 FE 和 BE 身份验证仍然使用 wagmi 但在 BE 方面是安全的?同时,我不希望 FE 和 BE 有 2 个身份验证过程,这会影响用户体验。

【问题讨论】:

  • 不清楚你的意思。 “web2”和“web3”只是网络使用方式的抽象标签。描述您在编程方面的实际前端和后端。你使用什么语言?您实际想要实现什么功能?
  • 我有同样的问题@Caruso33。你找到正确答案了吗?

标签: authentication backend verification signing


【解决方案1】:

有一个解决方案,通过使用认证API提供的服务道德. 它基本上所做的是,它通过根据用户的钱包地址生成一条消息来创建一个独特的挑战,然后我们可以使用这个独特的消息来签署来自用户钱包的签名。

在您的 web2 前端签署签名后,您可以将签名哈希发送到后端的 Auth API 以验证钱包。这样您就可以在后端验证用户钱包。

为了便于理解,这里是 Auth API 工作流程。您可以在文档中阅读有关如何使用它的更多信息:https://docs.moralis.io/authentication-api/tutorials

我希望这有帮助。

【讨论】:

    猜你喜欢
    • 2021-09-14
    • 2019-11-14
    • 1970-01-01
    • 2022-07-28
    • 2015-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多