cookie中的用户名

时间:2011-04-20 17:33:26

标签: php security cookies

我想创建一个只包含用户用户名的cookie。我希望我们的登录表单记住用户名(如果用户选择),但他们每次都必须输入密码。

在cookie中使用用户名是否有任何风险?用户名是否应该加密?

建议?

3 个答案:

答案 0 :(得分:3)

虽然这不是最好的事情,但问题的答案是 您可以在cookie中加密和存储用户名,在运行时读取和解密

加密:

base64_encode(mcrypt_encrypt(MCRYPT_RIJNDAEL_256, md5($username), $salt, MCRYPT_MODE_CBC, md5(md5($username))));

DECRYPT

rtrim(mcrypt_decrypt(MCRYPT_RIJNDAEL_256, md5($username), base64_decode($salt), MCRYPT_MODE_CBC, md5(md5($username))), "\0");

答案 1 :(得分:2)

只要该cookie永远不会授予用户权限,从安全角度来看就没问题。 Cookie很容易被欺骗,因此您不希望手动创建的Cookie允许某人访问网站的安全部分。

它确实会向碰巧看到cookie jar的人暴露一些可嗅探的数据,这对您和/或您的用户来说可能是重要的,也可能不重要。

答案 2 :(得分:0)

我见过系统,例如Moodle这样做。所以这并不罕见。 这样做会带来风险,但像这样的网站上的选项已经变得很普遍了。