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

PHP加密和解密函数的示例代码

发布时间:2023-05-28 22:08:49

在 PHP 中,加密和解密是常见的需求,需要使用加密算法来对敏感信息进行保护,防止被恶意获取。下面是一些常用的 PHP 加密和解密函数示例代码。

1. MD5 加密和解密

MD5 是一种常见的散列算法,常用于对口令等敏感信息进行加密。

加密函数:

$pass = 'password';
$md5_pass = md5($pass);
echo $md5_pass;

解密函数:

由于 MD5 是单向加密,不可逆,故无法通过解密函数进行解密。

2. SHA1 加密和解密

SHA1 也是一种散列算法,常用于对密码等敏感信息进行加密。与 MD5 不同的是,SHA1 更为安全,计算出的哈希值更长。

加密函数:

$pass = 'password';
$sha1_pass = sha1($pass);
echo $sha1_pass;

解密函数:

同样地,SHA1 也是单向加密,无法通过解密函数进行解密。

3. Base64 编码和解码

Base64 是一种编码方式,最初用于电子邮件中传输二进制数据。它将原始二进制数据转换成具有可读性的 ASCII 字符串。虽然它并不是真正的加密算法,但常用于对 URL、Cookie 等敏感信息进行编码,以防止被篡改或攻击。

编码函数:

$str = 'Hello';

$encoded_str = base64_encode($str); // SGVsbG8=
echo $encoded_str;

解码函数:

$encoded_str = 'SGVsbG8=';

$decoded_str = base64_decode($encoded_str); // Hello
echo $decoded_str;

4. 对称加密和解密

对称加密是指使用相同的密钥进行加密和解密的加密方式。常用的有 DES、AES 等算法。

加密函数:

$key = 'my_key';
$data = 'Hello';

$encrypted_data = openssl_encrypt($data, 'AES-256-ECB', $key);
echo $encrypted_data;

解密函数:

$encrypted_data = 'bS9aUHltbmVzWDNxam8wOW5aOUJtQT09';

$decrypted_data = openssl_decrypt($encrypted_data, 'AES-256-ECB', $key); // Hello
echo $decrypted_data;

以上就是一些常用的 PHP 加密和解密函数示例代码,可以根据需要灵活运用。需要注意的是,加密算法虽然能提高数据安全性,但也不是绝对安全的,重要信息还需进一步加强保护。