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

PHP加密和解密相关函数汇总

发布时间:2023-06-29 23:41:14

在PHP中,加密和解密是常见的操作。以下是一些常用的加密和解密相关的函数和类的汇总。

1. md5(): 这是最常见的加密函数之一,它将输入的字符串转换为32位的MD5哈希值。

   $encrypted_string = md5($original_string);
   

2. sha1(): 这个函数类似于md5(),它将输入的字符串转换为40位的SHA-1哈希值。

   $encrypted_string = sha1($original_string);
   

3. hash(): 这个函数可以根据指定的加密算法对字符串进行加密。

   $encrypted_string = hash('sha256', $original_string);
   

4. base64_encode() / base64_decode(): 这对函数可以将字符串进行base64编码和解码。base64编码不是真正的加密,但可以将字符串转换为不可读的格式。

   $encoded_string = base64_encode($original_string);
   $decoded_string = base64_decode($encoded_string);
   

5. password_hash() / password_verify(): 这对函数用于安全地进行密码加密和验证。password_hash()将密码进行哈希加密,password_verify()用于验证密码是否与哈希值匹配。

   $hashed_password = password_hash($password, PASSWORD_DEFAULT);
   $is_verified = password_verify($password, $hashed_password);
   

6. openssl_encrypt() / openssl_decrypt(): 这对函数可以使用openssl库对字符串进行对称加密和解密。可以指定不同的加密算法和加密模式。

   $encrypted_string = openssl_encrypt($original_string, 'AES-128-ECB', $encryption_key);
   $decrypted_string = openssl_decrypt($encrypted_string, 'AES-128-ECB', $encryption_key);
   

7. mcrypt_encrypt() / mcrypt_decrypt(): 这对函数可以使用mcrypt库对字符串进行对称加密和解密。与openssl类似,可以指定不同的加密算法和加密模式。

   $encrypted_string = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $encryption_key, $original_string, MCRYPT_MODE_ECB);
   $decrypted_string = mcrypt_decrypt(MCRYPT_RIJNDAEL_128, $encryption_key, $encrypted_string, MCRYPT_MODE_ECB);
   

8. Cipher类: PHP提供了一个Cipher类,可以用于对称加密和解密。可以使用不同的加密算法和加密模式。

   $cipher = new Cipher('AES-128-ECB', $encryption_key);
   $encrypted_string = $cipher->encrypt($original_string);
   $decrypted_string = $cipher->decrypt($encrypted_string);
   

总结:以上是一些常见的PHP加密和解密相关的函数和类。根据需要选择合适的加密方法和算法,确保数据的安全性。