0

我们正在使用 Amplify 和 AWS Cognito,使用 SRP。根据我们对 SRP 的理解,密码不应通过网络以纯文本形式发送。

当用户需要在登录时更改密码时,我们使用 Auth.completeNewPassword 方法。查看请求,密码清楚地以纯文本形式发送。为什么是这样?

4

1 回答 1

0

这是因为即使在 SRP 中,您也需要至少向服务器发送一次密码。

当您注册或更改密码时,您会向服务器发送两个值:usernamepassword. 服务器为此生成一个新盐,username并计算一个名为verifierusing (以及其他)的值usernamepassword并且salt. 然后它存储以下信息usernamesaltverifier

从现在开始,您不再需要通过网络发送密码。

于 2021-08-09T17:09:25.697 回答