欢迎访问宙启技术站
智能推送

利用PHP函数进行加密和解密操作的示例

发布时间:2023-11-04 07:05:09

PHP提供了很多用于加密和解密的函数,以下是一些常用的函数和示例。

1. base64_encode和base64_decode函数

base64_encode函数将字符串进行Base64编码,base64_decode函数将Base64编码的字符串进行解码。

$str = 'Hello World!';
$encoded = base64_encode($str);
$decoded = base64_decode($encoded);

echo "Encoded string: $encoded
";
echo "Decoded string: $decoded
";

输出结果为:

Encoded string: SGVsbG8gV29ybGQh
Decoded string: Hello World!

2. md5函数

md5函数将字符串进行MD5哈希算法加密,产生一个32位的加密字符串。

$str = 'Hello World!';
$hashed = md5($str);

echo "Hashed string: $hashed
";

输出结果为:

Hashed string: e4d7f1b4ed2e42d15898f4b27b019da4

3. password_hash和password_verify函数

password_hash函数将密码进行哈希算法加密,并生成一个安全的密码哈希,password_verify函数用于验证密码哈希的正确性。

$password = 'password1';
$hashedPassword = password_hash($password, PASSWORD_DEFAULT);

echo "Hashed password: $hashedPassword
";

// 验证密码
$isValid = password_verify($password, $hashedPassword);
if($isValid) {
    echo "Password is valid.
";
} else {
    echo "Password is invalid.
";
}

输出结果为:

Hashed password: $2y$10$MylxOIiFSRgWu2yCXz1zBOe8ZLOdnr8bM61njWtgzdAyZsjpWnVuK
Password is valid.

4. openssl_encrypt和openssl_decrypt函数

这些函数使用OpenSSL库进行对称加密算法的加密和解密。

$data = 'Hello World!';
$key = 'secretkey';
$encrypted = openssl_encrypt($data, "AES-128-ECB", $key);
$decrypted = openssl_decrypt($encrypted, "AES-128-ECB", $key);

echo "Encrypted data: $encrypted
";
echo "Decrypted data: $decrypted
";

输出结果为:

Encrypted data: gj1DcxKqwInw/0thxtT2GQ==
Decrypted data: Hello World!

以上是一些常用的PHP函数和示例,可以用于进行加密和解密操作。具体使用哪种方法取决于你的需求和安全性要求。