【发布时间】:2018-09-19 22:29:20
【问题描述】:
我想将用户凭据存储在实时云数据库中。我的基本思想是使用带有双盐和主密码的散列对其进行散列并存储散列凭证和使用的盐。
当我解密它时,我从用户那里获取主密码并使用存储了盐的凭据解密凭据。但问题是当用户忘记主密码时,所有凭证数据都将被废弃,因为没有盐和主密码的组合就无法解密。而且我无法存储主密码,否则它将变得容易受到攻击。
我应该在这里做什么来完成我的任务? 如果有人有完全不同的方法,那也很好。
【问题讨论】:
-
如果涉及到安全性,我建议至少先看看广泛使用的库(例如jasypt),然后再自己进行加密。顺便说一句,您应该无法解密哈希。您可能想比较哈希值。
标签: java security firebase-realtime-database hash