密码在请求有效负载 devtools 中可见

Posted

技术标签:

【中文标题】密码在请求有效负载 devtools 中可见【英文标题】:Password visible in request payload devtools 【发布时间】:2019-01-23 13:05:41 【问题描述】:

使用 bcrypt 对密码进行哈希处理,并将加密形式的密码保存在数据库中,因为我必须继续操作,以便密码在请求负载中不可见?

Example of payload at login

在与数据库用户名进行用户名比较后,我通过 bcrypt 进行密码比较。但问题实际上是如何隐藏或显示有效载荷中加密的密码。

编辑

Example of payload at recover password

另一个问题是何时恢复密码。在payload中显示的是新密码,请问如何解决request payload的这些问题?

提醒我,我正在使用 bcrypt 库,如下所示:

var hash = bcrypt.hashSync('myPassword', 10);

并进行验证:

if(bcrypt.compareSync('somePassword', hash)) 
// Passwords match
 else 
// Passwords don't match

【问题讨论】:

请避免将代码发布为图片,而是使用文本。 【参考方案1】:

您可以使用 RSA,这样您的密码就不会在“请求有效负载”中仅显示加密的密码

    您向服务器发送 ajax 以获取公钥 您将私钥存储在数据库中 在客户端使用公钥加密密码 向您的服务器发送请求并使用您存储的私钥对其进行解密

【讨论】:

以上是关于密码在请求有效负载 devtools 中可见的主要内容,如果未能解决你的问题,请参考以下文章

JSON Web 令牌 - 有效负载中的密码?

如何在 Laravel 5 中获取原始 json 请求有效负载?

如何在scrapy中发送带有标头和有效负载的Post请求

Python 请求:从有效负载中提取数据

使用发布请求获取身份验证令牌

从 Java servlet 中的 POST 请求获取请求有效负载