我应该将密码列创建为常规varchar,然后像这样插入:
sha1($pass_string)
Run Code Online (Sandbox Code Playgroud)
或者我应该在创建表时做一些额外的事情以确保密码字段是安全的?
谢谢!
yka*_*hou 13
这是一个普通的varchar字段(40个字符)但如果你想设置它更安全,你应该使用salt.
http://highedwebtech.com/2008/04/25/season-your-passwords-with-some-salt/
更新:
警告:没有盐的哈希密码真的很难!你永远不应该使用它!
密码腌制是这样做的好方法: 密码腌制
正如pst所建议的那样:
使用SHA-1和盐是更天真但非常安全的方法.
使用bcrypt:
这是更安全的方法:)因为它使用速度以使其更安全,bfish是围绕加密方法blowfish构建的哈希函数.(似乎比twofish还存在,应该是河豚的"现代"版本).
它是一个使用SHA-1链的版本,所以它是一个中间解决方案,但允许根据您的需要设置速度.事实上,速度会降低您的安全性.