所有,

我正在使用以下PHP函数对Web应用程序的用户密码进行加盐和哈希处理:

function stringHashing($password,$salt){
 $hashedString=$password.$salt;
 for ($i=0; $i<50; $i++){
  $hashedString=hash('sha512',$password.$hashedString.$salt);
  }
 return $hashedString;
}

在MySQL中存储结果字符串的最佳方法是什么?我想这是一个固定的CHAR字段?我应该如何计算正确的长度?

谢谢,

JDelage

最佳答案

好吧,SHA512将始终返回512位哈希值,而二元参数hash()方法将其返回为十六进制数字,即512位/每字节8位*每字节2个十六进制数字= 128个十六进制数字
CHAR(128)应该是您所需要的

08-05 00:02