我试图避免在身份验证时访问数据库以提高性能
经过大量搜索后的有效解决方案似乎是将加密字符串存储在 cookie 中并尝试在身份验证时对其进行解密。
因此,我想知道以下是否是一个好主意:
- 通过 SSL 传输所有内容(我很懒惰..)
- 在我的程序中设置一个全局常量密钥
- 在注册和更改密码时生成一个新的随机验证字符串,将其存储在 User 对象中
- 生成带有验证字符串和密钥的加密验证字符串
- 将未加密和加密的验证字符串存储在 cookie 中
- 当用户尝试登录时,解密验证字符串并检查原始验证字符串
如果这是一个“好的”想法,我该如何让它发挥作用,例如:
我应该使用什么加密方法,AES-256?
如何使用 Bouncycastle 在 Java 中进行这种加密/解密?
如果这不是一个好主意,我应该怎么做才能避免在身份验证时查询数据库?
比提前!