我正在为Web应用程序的安全系统工作 - 管理部分。如果一个管理员想要在应用程序中进行一些重要更改,他将需要回答安全问题。
我的问题是:这个问题的答案应该在数据库中进行散列?
此外,我正在考虑让管理员可以更改他们的问题/答案但管理员可以在他使用密码确认他的身份时这样做。这是一个好方法吗?
答案 0 :(得分:10)
是的,但一定要在散列之前将其标准化 - 小写它,考虑删除所有不是字母数字的字符等。如果我输入“ceejayoz”作为我的问题,它也应该接受“CEEJAYOZ”。 / p>
答案 1 :(得分:4)
在我看来,哈希是一个好主意。因为除了原始用户之外,没有人真正需要知道它,所以最好不要只是窥探眼睛来保持更多的“秘密”。
就改变它的能力而言,这也是一个好主意,并要求他/她输入密码来改变它是另一种很好的安全方法。
我认为你的想法是正确的。