用户登录

在数据仓库里直接存储用户设置的密码会有非常严重的安全问题,如果有人盗走了应用的数据,他就知道用户设置的真实的密码是什么。这会给用户带来非常大的安全的问题,因为用户可能在多个应用里使用同样的用户名与密码。所以,要在应用里存储用户设置的密码,就必须存储经过特别处理之后的密码,不能让别人猜出来真实的密码是什么。

一般我们会用 Hash 这种方法来处理密码数据,Bcrypt 是其中的一种 Hash 方法。用 Hash 方法处理过的文字,很难猜到数据原本的样子。Hash 同样的内容,每次都会得到同样的结果。为了让 Hash 之后的数据更安全,更难猜到,在 Hash 的时候,可以加点盐(Salt),加的盐就是一串随机生成的字符,把加了盐的字符再用 Hash 方法处理一下,这样得到的结果就更难被猜到了。

在数据仓库里,要存储的就是经过 Hash 处理之后的用户密码。顺便还得存储一下当初在 Hash 密码的时候用的那个 Salt,因为以后在实现用户登录功能的时候,需要对比用户的密码,到时候需要用到这个 Salt 的值,重新 Hash 在登录请求里用户提供的密码,再把得到的结果跟我们在数据仓库里存储的 Hash 之后的密码做一下比较,如果匹配就让用户登录。

存储密码《 Node.js 服务端应用开发:注册用户 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点