第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

yii CPasswordHelper:hashPassword和verifyPassword

yii CPasswordHelper:hashPassword和verifyPassword

慕田峪9158850 2019-12-05 15:42:46
我想我在這里錯(cuò)過了一些關(guān)鍵的事情。在CPasswordHelper::hashPassword函數(shù)中,我們有以下幾行:$salt=self::generateSalt($cost);  $hash=crypt($password,$salt);  return $hash;在CPasswordHelper::verifyPassword這行中:$test=crypt($password,$hash);  return self::same($test, $hash);那鹽呢?據(jù)我了解,它甚至沒有被保留,但沒有任何意義,所以我想我還沒有完全理解它
查看完整描述

3 回答

?
米脂

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超3個(gè)贊

CPasswordHelper的工作方式類似于PHP的函數(shù)password_hash()和password_verify(),它們是crypt()函數(shù)的包裝器。生成BCrypt哈希時(shí),您將得到一個(gè)包含鹽的60個(gè)字符的字符串。


// Hash a new password for storing in the database.

$hashToStoreInDb = password_hash($password, PASSWORD_BCRYPT);

變量$ hashToStoreInDb現(xiàn)在將包含一個(gè)哈希值,如下所示:


$2y$10$nOUIs5kJ7naTuTFkBy1veuK0kSxUFXfuaOKdOKf9xYT0KKIGSJwFa

 |  |  |                     |

 |  |  |                     hash-value = K0kSxUFXfuaOKdOKf9xYT0KKIGSJwFa

 |  |  |

 |  |  salt = nOUIs5kJ7naTuTFkBy1veu

 |  |

 |  cost-factor = 10 = 2^10 iterations

 |

 hash-algorithm = 2y = BCrypt

您可以在第三個(gè)鹽之后找到鹽$,它由password_hash()使用操作系統(tǒng)的隨機(jī)源自動(dòng)生成。因?yàn)辂}包含在結(jié)果字符串中,所以函數(shù)password_verify()或?qū)嶋H上是包裝的crypt函數(shù)可以從那里提取鹽,并可以使用相同的鹽(和相同的成本因數(shù))計(jì)算哈希。那么這兩個(gè)哈希是可比較的。


// Check if the hash of the entered login password, matches the stored hash.

// The salt and the cost factor will be extracted from $existingHashFromDb.

$isPasswordCorrect = password_verify($password, $existingHashFromDb);


查看完整回答
反對(duì) 回復(fù) 2019-12-05
?
喵喔喔

TA貢獻(xiàn)1735條經(jīng)驗(yàn) 獲得超5個(gè)贊

鹽作為哈希的一部分存儲(chǔ)。


查看完整回答
反對(duì) 回復(fù) 2019-12-05
?
阿波羅的戰(zhàn)車

TA貢獻(xiàn)1862條經(jīng)驗(yàn) 獲得超6個(gè)贊

由生成的散列CPasswordHelper包含一個(gè)$符號(hào),后跟所選算法的代碼,另一個(gè)$是成本因素(注意:如果看到10,則實(shí)際上意味著2 ^ 10次迭代?。?,另一個(gè)$是a固定數(shù)量的字符為“ salt”,然后直接加上實(shí)際的哈希。

查看完整回答
反對(duì) 回復(fù) 2019-12-05
  • 3 回答
  • 0 關(guān)注
  • 990 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)