【发布时间】:2012-01-06 12:43:46
【问题描述】:
说到记住我 cookie,有两种不同的方法:
哈希
记住我 cookie 存储了一个可以识别用户的字符串(即用户 ID)和一个可以证明所识别的用户是它假装的用户的字符串 - 通常是基于用户密码的哈希.
代币
remember me cookie 存储一个随机(无意义)但唯一的字符串,该字符串与 tokens 表中的记录相对应,该表存储用户 ID。
哪种方法更安全,它有什么缺点?
【问题讨论】:
-
直觉表明一次性随机字符串必须比算法产生的确定性字符串更安全,但我想您需要一些参考。无论如何,直觉并不总是正确的。
-
为什么标记为 Ruby?
-
对于找到此内容的任何人,请阅读:Persistent Login Cookie Best Practice。基本上,您还需要以与哈希密码相同的方式对令牌进行哈希处理。