0
我試圖爲用戶每次需要在我的seafile服務器上登錄時生成一個隨機密碼。 seafile使用: - PBKDF2與SHA256 - 10000迭代 - 32個字節鹽seafile pbkdf2 hash php
我使用的代碼是這樣的:
<?php
$salt = random_bytes(32);
$salt = bin2hex($salt);
$iterations = 10000;
echo "GENERATED SALT: " . $salt . "<br>" . "<br>";
$hash = hash_pbkdf2 ("sha256" , "weirdone" , $salt , $iterations);
echo "GENERATED HASH: " . $hash . "<br>" . "<br>";
echo "FINAL RESULT: PBKDF2SHA256$" . $iterations . "$" . $salt . "$" . $hash . "<br>" . "<br>";
?>
的問題是,即使是相同的鹽我得到不同的輸出 例如:
SALT: 09d095a396852b525ce7f5408fe7d314a2632a19bfc8c495c8e79bd4e6aebfed
PASSWORD: weirdone
seafile output:
PBKDF2SHA256$10000$09d095a396852b525ce7f5408fe7d314a2632a19bfc8c495c8e79bd4e6aebfed$45145c60802f1fdce581a550b5e23f8027ba6ff0720c81f2efaa73025bd465ca
my output:
PBKDF2SHA256$10000$09d095a396852b525ce7f5408fe7d314a2632a19bfc8c495c8e79bd4e6aebfed$007c599ba2d0076e19589bb90303155efa2df8a2f6b49d845902c075bc5f5492
如果算法,鹽,密碼和迭代是相同的,他們爲什麼不匹配?
目標是生成新密碼,將其插入數據庫並將其提供給用戶以便他可以登錄。
感謝
yuo're對我沒想過,謝謝 – FreedomSka