Big*_*ike 6 php mysql password-protection
我有一个密码通过php脚本user.php从我的iPhone应用程序传递到数据库.
变量$ pass由以下内容填充:
$pass = str_replace("'", "", $_REQUEST['pass']);
Run Code Online (Sandbox Code Playgroud)
如何在插入数据库之前对其进行加密?我已经阅读了一些关于不同技术的内容,但寻找管理它的最佳方法.
谢谢大家.
虽然下面的答案在技术上仍然是正确的,但php有关于要使用的散列算法的新建议.他们的建议,从php> = 5.5.0开始,是使用password_hash和password_verify函数来散列和验证散列密码.作为额外的好处,这些函数会自动将个性化的salt作为返回哈希的一部分,因此您无需明确担心.
$pass = sha1($_REQUEST['pass']);
有一点,为了使它更安全,可以在哈希中添加一个盐并再次运行哈希函数.这使得更难以恶意生成密码哈希,因为盐值仅在服务器端处理.
例:
$pass = sha1(sha1($_REQUEST['pass']).sha1("mySalt@$#(%"));