我将SHA256
使用密码+ salt 运行,但我不知道VARCHAR
在设置MySQL数据库时需要多长时间.什么是好长度?
Pas*_*TIN 310
sha256长256位 - 正如其名称所示.
如果使用十六进制表示,则每个数字代码为4位; 所以你需要64位来表示256位 - 所以,你需要a varchar(64)
或a char(64)
,因为长度总是相同的,根本不变.
和演示:
$hash = hash('sha256', 'hello, world!');
var_dump($hash);
Run Code Online (Sandbox Code Playgroud)
会给你 :
$ php temp.php
string(64) "68e656b251e67e8358bef8483ab0d51c6619f3e7a1a9f0e75838d41ff368f728"
Run Code Online (Sandbox Code Playgroud)
即一个64个字符的字符串.
Ric*_*kNZ 63
SHA256的256位编码选项:
CHAR(44)
包括填充字符CHAR(64)
BINARY(32)
mar*_*rem 26
我更喜欢使用BINARY(32),因为它是优化的方式!
您可以在(00到FF)中放置32个十六进制数字.
因此BINARY(32)!
cee*_*yoz 21
你为什么要把它变成VARCHAR?它没有变化.它总是64个字符,可以通过在任何一个在线SHA-256计算器中运行任何东西来确定.
归档时间: |
|
查看次数: |
221065 次 |
最近记录: |