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

PHP加密与解密函数实例

发布时间:2023-07-03 00:29:05

在PHP中,可以使用各种加密算法来对数据进行加密和解密。以下是几个常用的加密和解密函数的实例。

1. md5加密与解密函数:

// 加密
$data = 'Hello World';
$hashed_data = md5($data);

// 解密(不可逆)
$original_data = $hashed_data;

2. sha1加密与解密函数:

// 加密
$data = 'Hello World';
$hashed_data = sha1($data);

// 解密(不可逆)
$original_data = $hashed_data;

3. base64编码与解码函数:

// 加密
$data = 'Hello World';
$encoded_data = base64_encode($data);

// 解密
$decoded_data = base64_decode($encoded_data);

4. 对称加密与解密函数:

// 加密
$data = 'Hello World';
$key = 'secret_key';
$cipher = 'AES-128-ECB'; // 使用AES算法,ECB模式
$encrypted_data = openssl_encrypt($data, $cipher, $key);

// 解密
$decrypted_data = openssl_decrypt($encrypted_data, $cipher, $key);

5. 非对称加密与解密函数(使用RSA算法):

// 生成公钥和私钥
$config = [
    'private_key_bits' => 2048,
    'private_key_type' => OPENSSL_KEYTYPE_RSA,
];
$rsa_key = openssl_pkey_new($config);
openssl_pkey_export($rsa_key, $private_key);
$public_key = openssl_pkey_get_details($rsa_key)['key'];

// 加密
$data = 'Hello World';
openssl_public_encrypt($data, $encrypted_data, $public_key);

// 解密
openssl_private_decrypt($encrypted_data, $decrypted_data, $private_key);

以上是一些常用的加密与解密函数的实例。需要根据具体的需求和安全性要求选择合适的加密算法和函数。