国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

webman-hash 哈希加密插件

v1.0.1 版本
2023-05-11 版本更新時(shí)間
5336 安裝
4 star

簡介

webman-hash (laravel hashing) 為存儲(chǔ)用戶密碼提供了安全的 Bcrypt 和 Argon2 哈希加密方式。 默認(rèn)情況下,將使用 Bcrypt 進(jìn)行注冊和身份驗(yàn)證。 Bcrypt 是加密密碼的一個(gè)很好的選擇,因?yàn)樗摹讣用芟禂?shù)」是可調(diào)的,這意味著生成散列所需的時(shí)間可以隨著硬件功率的增加而增加。當(dāng)加密密碼時(shí)速度慢是相對(duì)比較好的。算法對(duì)密碼進(jìn)行哈希運(yùn)算的時(shí)間越長,惡意用戶生成所有可能用于對(duì)應(yīng)用程序進(jìn)行暴力攻擊的字符串哈希值的「彩虹表」的時(shí)間就越長。

配置

你可以在 config/plugin/yzh52521/hashing/app.php 配置文件中配置默認(rèn)哈希驅(qū)動(dòng)程序。目前支持三種驅(qū)動(dòng)程序: BcryptArgon2 (Argon2i and Argon2id variants)。

注意:Argon2i 驅(qū)動(dòng)程序需要 PHP 7.2.0 或更高版本,而 Argon2id 驅(qū)動(dòng)程序則需要 PHP 7.3.0 或更高版本。

安裝

composer require yzh52521/webman-hash

使用

哈希密碼

你可以通過調(diào)用 Hash facade 的 make 方法來加密你的密碼:

Hash::make('password');

調(diào)整 Bcrypt 加密系數(shù)

如果使用 Bcrypt 算法,你可以在 make 方法中使用 rounds 選項(xiàng)來配置該算法的加密系數(shù)。然而,對(duì)大多數(shù)應(yīng)用程序來說,默認(rèn)值就足夠了:

$hashed = Hash::make('password', [
    'rounds' => 12,
]);

調(diào)整 Argon2 加密系數(shù)

如果使用 Argon2 算法,你可以在 make 方法中使用 memory,time 和 threads 選項(xiàng)來配置該算法的加密系數(shù)。然后,對(duì)大多數(shù)應(yīng)用程序來說,默認(rèn)值就足夠了:

$hashed = Hash::make('password', [
    'memory' => 1024,
    'time' => 2,
    'threads' => 2,
]);

技巧:有關(guān)這些選項(xiàng)的更多信息,請(qǐng)查閱 關(guān)于 Argon Hash 的 PHP 官方文檔。

check 方法能為你驗(yàn)證一段給定的未加密字符串與給定的散列 / 哈希值是否一致:

if (Hash::check('plain-text', $hashedPassword)) {
    // 密碼匹配...
}

檢查密碼是否需要重新散列 / 哈希

needsRehash 方法可以為你檢查當(dāng)散列 / 哈希的加密系數(shù)改變時(shí),你的密碼是否被新的加密系數(shù)重新加密過。某些應(yīng)用程序選擇在身份驗(yàn)證時(shí)執(zhí)行這一項(xiàng)檢查:

if (Hash::needsRehash($hashed)) {
    $hashed = Hash::make('plain-text');
}

效果圖(可選)

贊助商