函式名稱: crypt()
函式描述:該函式用於對字串進行加密處理。
用法: string crypt ( string $str [, string $salt ])
引數:
- $str:要進行加密的字串。
- $salt:可選引數,用於指定加密演算法的鹽。如果未提供鹽值,則函式將自動生成一個隨機鹽值。
返回值:
- 加密後的字串,或者在失敗時返回一個空字串。
示例:
- 使用預設鹽對字串進行加密:
$password = "mypassword";
$encrypted_password = crypt($password);
echo "加密後的密碼:" . $encrypted_password;
輸出: 加密後的密碼:$2y$10$CIqOXxfDS8q1CEXyHP2G9ulLg9BzXJpg1J6tSq.AD.WoF2jLvgifK
- 使用指定鹽對字串進行加密:
$password = "mypassword";
$salt = '$2a$07$usesomesillystringforsalt$';
$encrypted_password = crypt($password, $salt);
echo "加密後的密碼:" . $encrypted_password;
輸出: 加密後的密碼:$2a$07$usesomesillystringfore2uDLvp1Ii2e./U9C8sBjqp8I90dH6hi
- 驗證加密後的密碼:
$encrypted_password = '$2a$07$usesomesillystringfore2uDLvp1Ii2e./U9C8sBjqp8I90dH6hi';
$password = "mypassword";
if (crypt($password, $encrypted_password) === $encrypted_password) {
echo "密碼驗證透過";
} else {
echo "密碼驗證失敗";
}
輸出: 密碼驗證透過
注意事項:
- crypt() 函式使用的是系統的加密庫,因此其可用性依賴於系統環境的支援情況。