パスワード + ソルトで実行する予定ですが、MySQL データベースをセットアップするときにSHA256
どのくらいの長さになるかわかりません。VARCHAR
良い長さとは?
306016 次
5 に答える
405
sha256 は、その名前が示すように 256 ビット長です。
sha256 は 16 進数表現を返すため、各文字をエンコードするには (ASCII のように 8 ビットではなく) 4 ビットで十分であるため、256 ビットは 64 個の 16 進数文字を表すため、長さが常に同じであるため、 varchar(64)
、または さえも必要です。 char(64)
、まったく変化しません。
そしてデモ:
$hash = hash('sha256', 'hello, world!');
var_dump($hash);
あなたに与えます:
$ php temp.php
string(64) "68e656b251e67e8358bef8483ab0d51c6619f3e7a1a9f0e75838d41ff368f728"
つまり、64 文字の文字列です。
于 2010-02-10T23:04:22.787 に答える
78
SHA256 の 256 ビットのエンコード オプション:
- Base64: 1 文字あたり 6 ビット =
CHAR(44)
パディング文字を含む - 16 進数: 1 文字あたり 4 ビット =
CHAR(64)
- バイナリ: 1 バイトあたり 8 ビット =
BINARY(32)
于 2015-03-05T02:34:14.847 に答える
24
なぜそれをVARCHARにするのですか?変わりません。これは常に64文字であり、オンラインのSHA-256計算機の1つに何かを実行することで判別できます。
于 2010-02-10T23:01:48.840 に答える
7
64文字固定となりますので、char(64)
于 2012-10-13T18:34:00.793 に答える