【发布时间】:2021-08-29 09:40:48
【问题描述】:
我正在flask中创建一个简单的项目,这是一个简单的网站,您可以在其中注册和登录。每次用户注册时,我都会将他们的用户名和密码保存在数据库中。当有人尝试登录时,我会将他们输入的数据与我在数据库中的数据进行比较。
现在,我想为项目添加一个安全元素,所以我想要一种简单的方法来保护我保存在数据库中的密码。我想在数据库中保存hash(password) 而不是password,并将用户在尝试登录时输入的散列密码与我在数据库中的密码进行比较。这个问题是hash 每次都返回不同的值,所以这个解决方案不起作用。谁能建议我如何解决这个问题,或者建议一个简单的算法来保护我的密码?
【问题讨论】:
-
使用 BCrypt。它会为你做一切。
-
安全规则 1:永远不要自己动手。使用已知安全的预构建工具。否则,任何人都可能会错过一些东西。
-
哈希不能为同一个密码返回不同的值
标签: python database security hash passwords