我用這個函數散列我的密碼:在MySQL表64位密碼哈希
// RETURNS: rAyZOnlNBxO2WA53z2rAtFlhdS+M7kec9hskSCpeL6j+WwcuUvfFbpFJUtHvv7ji
base64_encode(hash_hmac('sha384', $str . SC_NONCE, SC_SITEKEY, true));
我哈希存儲在CHAR(64)場(MySQL的-InnoDB)。
我應該用varchar(64)而不是char(64)?爲什麼?
編輯: 我改變SHA256與SHA384。因爲在這個例子中,sha256總是爲我返回44個字節。抱歉讓人困惑。現在它是64個字節。
確實是這樣的情況,基地64編碼的字符串返回長度爲64位的散列?我不認爲它... –
@BrendanBullen - 我更新了問題。對不起,令人困惑的例子:( – dino