Use*_*920 5 security authentication hash caching jakarta-ee
我正在制作后端服务器作为个人项目。目前,当有人注册时,他们的密码是用 Bcrypt 散列的,并保存在数据库中。但是,每次我需要验证请求是否来自经过身份验证的用户时都要查询数据库似乎太多了。结果,我开始怀疑将这些缓存在服务器的内存中。我认为在此内存中存储未散列的密码是不安全的。实现此目的最安全的方法是什么?我可以缓存 Bcrypte 的密码副本,然后验证用户的密码是否与缓存的 Bcrypt 副本匹配,但如果可以的话,我也希望尽可能少地使用 bcrypt。我认为将密码和它的 Bcrypt 版本一起存储在缓存中,即使没有链接到用户名,也是一个坏主意。
缓存明文密码及其哈希值通常不是一个好主意。安全是有代价的,这就是你的性能。
如果您不需要一流的安全性(即较慢的散列),您可以选择基于 SHA512 的快速散列解决方案。
对于数据库性能,请尝试调整数据库缓存以加快检索速度。
归档时间: |
|
查看次数: |
1096 次 |
最近记录: |