一文详解为什么 Web 3.0 时代不再需要 JWT ?_WEB3:DAP

一个使用签名信息用web3验证用户的简单方法

以太坊登录很快就会成为用户标准,不再需要密码,这已经不是什么新鲜事了。尽管如此,dApp开发仍然是一个相当新的赛道,其开发的许多标准仍在设定之中。现在,所有的开发者都在延续用传统做法编写dApp,本能地使用相同的JWT进行认证。我这里提出一个稍微不同的方法。我自己也开始使用JWT开发dApp。从第一个项目开始,我就觉得认证总是变得很棘手,而且在这个过程中一定有些多余的东西。在几个项目之后,我意识到JWT本身就是多余的。让我解释一下原因:

观点:在中国基于公链做数字藏品是不行的,底层技术一定是联盟链:3月26日消息,数字藏品的全球趋势与中国创新的直播中,数藏中国创始人兼CEO王鹏飞在题为《合规是中国数字藏品行业发展的牛鼻子》的分享中称,所谓的合规有三点。第一,数字藏品要注重版权。第二点是链的选择,在中国做数字藏品基于公链是不行的,在中国一定是联盟链,大家不要怕联盟链做不好,它具有成为技术基础的条件。第三,二级市场流转的合规,2022年会成为二级市场合规的竞争年。“我认为这个市场的监管一定会来。”他说。(8btc)[2022/3/26 14:19:31]

BUS chain宣布进军中国市场 用区块链技术赋能商业产业服务:据BUS chain官方东亚区负责人介绍:Business universal services chain(简称BUS chain)宣布进入中国市场,这也是Business universal services chain走向全球普及的关键步伐。

据了解,Business universal services chain是旨在通过连接私链、联盟链、公链、开放式网络和预言机等技术,让用户可以在资产跨链的同时完成Staking并获得相应的权益。[2020/9/19]

这张图显示了我在前几个项目中是如何进行认证的。这里的方案几乎完全复制了JWT的标准程序,唯一的一点是,用户发送的不是登录和密码,而是签名。为什么我们需要得到JWT呢?毕竟,即使没有它,你也可以通过从用户的签名中获取地址来可靠地识别身份。下面是如何简化的:

声音 | 观点:印度在区块链创新方面明年可能落后于美国和中国:Incrypt Blockchain创始人Nitin Sharma表示,印度在区块链创新方面明年可能落后于美国和中国的公司。其表示,这是因为监管机构仅关注“区块链技术的某个部分——分布式账本系统”,而不是(专注于)像智能合约这样的其他一些去中心化系统,所以创新的速度不会像那些允许在这方面进行实验的国家那样快。Sharma补充称,印度的区块链开发人员或企业家缺乏接触真正尖端的去中心化、分布式系统和密码学工作的机会。(Economic Times)[2019/12/31]

使用web3-token的认证流程用户依旧会产生一个签名,但里面有了一个过期日期,所以即便攻击者得到了这个签名,也持续不了多久。此外,签名被放在标准的授权头中,并在服务器上通过获取用户的地址和在数据库中找到用户来处理。这就是全部。你不需要在服务器上不断地更新JWT的加密密钥,所以通常来说,服务器承担了绝大部分职责。为了进一步简化这一流程,我制作了web3-token模块。要安装它,请使用以下命令。1$npmiweb3-token这个模块既可以用在服务器上,也可以用在客户端。让我们看一个例子,从客户端开始:

调用.sign方法后,你会看到与此类似的东西。

MetaMask提醒去签署令牌正如你所看到的,该信息对用户来说是完全透明的,因为他们必须看到他们正在签署的东西。因此,我决定不使用JSON结构来提高可读性,而是使用与HTTP头相同的结构。在消息的正文中,我们可以看到令牌的版本和过期日期。接下来,这里是后端对这个令牌的处理。

这很简单,只有一行,模块会处理所有加密问题。我们则可以从签名中获得用户的地址,并使用这个地址在数据库中找到他们。举个例子,然后你就可以通过他的地址授予这个用户一个NFT。最终我们得到了一个非常方便的无状态用户认证方法,这也是混合型dApp的理想选择。唯一的缺点是,它很难在Postman中测试。本文来自比推Bitpush.News,星球日报经授权转载。

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

金智博客

[0:15ms0-3:408ms