作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何正确编写脚本来设置 cookie,以便在选中登录表单上的复选框时记住用户的用户名和密码?
另外,如果这可以用 PHP 完成,请告诉我。
最佳答案
存储密码内存内容的最佳方法是将其与一些浏览器特定数据一起存储为 md5 哈希值。例如,您存储一个字符串,例如
username-4155b1b6e53ad73e06c4c58e709cdeea19915ea84de517500d9ba3280e27cf59
例如,您可以像这样在 PHP 中生成此字符串
$string=$username.'-'.md5(substr($http_user_agent, 5, 10)) .md5($password).md5(substr($http_user_agent, 0, 10));
我们的目标是让我们的字符串足够复杂。在登录阶段,我们用只有我们知道的方法提取密码md5。
$somearray=explode('-', $string);
$username=$somearray[0];
$passwordmd5=str_replace(md5(substr($http_user_agent, 0, 10)),'',str_replace(md5(substr($http_user_agent, 5, 10)),'', $string));
现在,我们可以像这样在数据库中进行比较,
select * from users where username='$username' and md5(password)='$passwordmd5';
HTTP 用户代理的东西消除了一点未经授权使用 cookie 字符串的风险。尽管未经授权的人窃取了 cookie,但他无法在其他浏览器中使用该 cookie。如果我们没有这样做,具有相同字符串的人可能会表现得好像他拥有密码一样,并且可以作为我们的真实用户登录。
关于php - 还记得我 JavaScript 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6318975/
在不使用 ANT 的情况下,有没有办法让 Eclipse 在我每次发布 Android 应用程序(我使用导出向导)时不提示我输入 keystore 密码(两次!)? p.s.-我的开发 PC 位于 a
我是一名优秀的程序员,十分优秀!