Lithe Hash 是一個強大的模組,專為使用 Bcrypt 演算法對密碼進行安全散列而設計。此模組簡化了建立、驗證和管理密碼雜湊的流程,確保遵循最佳安全實務。
要安裝 lithemod/hash 套件,您可以使用 Composer。在終端機中執行以下命令:
composer require lithemod/hash
這會將套件添加到您的專案的依賴項中,從而允許您在應用程式中使用 Hash 類別。
在使用 Hash 類別之前,您必須將其匯入 PHP 檔案中:
use Lithe\Support\Security\Hash;
要從密碼建立哈希,請使用 make 方法。此方法接受密碼和可選選項數組:
$hash = Hash::make('sua_senha', ['cost' => 10]);
參數:
傳回:可以儲存在資料庫中的雜湊字串。
範例:
$password = 'minha_senha_segura'; $hash = Hash::make($password, ['cost' => 12]); echo "Senha Hashed: " . $hash;
要檢查密碼是否與雜湊值匹配,請使用 check:
方法
$isValid = Hash::check('sua_senha', $hash); if ($isValid) { echo 'Senha é válida!'; } else { echo 'Senha inválida.'; }
參數:
傳回: 如果密碼與雜湊值匹配,則傳回 true;否則為 false。
範例:
if (Hash::check('minha_senha_segura', $hash)) { echo 'Senha está correta!'; } else { echo 'Senha está incorreta!'; }
您可以使用needsRehash:
方法來確定雜湊是否需要重新散列(例如,如果您更改成本因子)
$needsRehash = Hash::needsRehash($hash, ['cost' => 14]); if ($needsRehash) { // Rehash com um novo custo $hash = Hash::make('sua_senha', ['cost' => 14]); }
參數:
傳回: 如果雜湊值需要重新哈希,則傳回 true;否則為 false。
範例:
composer require lithemod/hash
Bcrypt 是一種廣泛使用的密碼雜湊函數,其設計速度慢且計算密集型,使其能夠抵抗暴力攻擊。透過利用可配置的成本係數,Bcrypt 可讓您隨著硬體變得更快而增加哈希難度。
如果成本設定超出有效範圍(4 到 31),則 make 方法會拋出 InvalidArgumentException。您必須在程式碼中處理此問題以確保穩健性:
use Lithe\Support\Security\Hash;
以上是Lithe Hash:用於安全密碼雜湊的強大模組的詳細內容。更多資訊請關注PHP中文網其他相關文章!