10个PHP加密函数,并举例说明
发布时间:2023-11-11 19:50:48
1. md5函数:
$password = "password"; $hashedPassword = md5($password);
md5函数可以将字符串密码加密为32位的16进制数字。然而,md5加密容易被暴力破解,不适用于存储敏感信息。
2. sha1函数:
$password = "password"; $hashedPassword = sha1($password);
sha1函数将字符串密码加密为40位的16进制数字。与md5一样,sha1也被认为是不够安全,因为它也容易受到暴力破解的攻击。
3. password_hash函数:
$password = "password"; $hashedPassword = password_hash($password, PASSWORD_DEFAULT);
password_hash函数是PHP为密码加密设计的默认函数。它使用安全的哈希算法,如bcrypt、argon2i和argon2id,以确保生成更安全的哈希密码。
4. base64_encode函数:
$string = "Hello World"; $encodedString = base64_encode($string);
base64_encode函数将字符串转换为base64编码。它可以用于非加密的场景,例如将二进制数据转换为可传输的ASCII文本。
5. base64_decode函数:
$encodedString = "SGVsbG8gV29ybGQ="; $string = base64_decode($encodedString);
base64_decode函数将base64编码的字符串解码为原始字符串。
6. openssl_encrypt函数:
$data = "Hello World"; $key = "password"; $encryptedData = openssl_encrypt($data, "AES-256-CBC", $key, 0, "1234567890123456");
openssl_encrypt函数使用AES-256-CBC算法将数据加密。它使用指定的密钥和IV(初始化向量)对数据进行加密,并返回加密后的数据。
7. openssl_decrypt函数:
$encryptedData = "encrypted data"; $key = "password"; $decryptedData = openssl_decrypt($encryptedData, "AES-256-CBC", $key, 0, "1234567890123456");
openssl_decrypt函数使用AES-256-CBC算法对加密的数据进行解密。
8. hash函数:
$data = "Hello World";
$hashedData = hash("sha256", $data);
hash函数可以使用指定的哈希算法对指定的数据进行哈希运算。上述例子使用sha256算法对数据进行哈希运算。
9. hmac函数:
$data = "Hello World";
$key = "password";
$hashedData = hash_hmac("sha256", $data, $key);
hmac函数使用指定的哈希算法和密钥对指定的数据进行哈希运算。上述例子使用sha256算法和密钥对数据进行哈希运算。
10. crypt函数:
$password = "password"; $salt = "saltvalue"; $hashedPassword = crypt($password, $salt);
crypt函数使用指定的算法和盐对密码进行加密。上述例子使用给定的盐值对密码进行加密。
