一、加密代码如下:
/** * * @param string $string 需要加密的字符串 * @param string $key 密钥 * @return string */ public static function encrypts($string, $key) { $key = substr(openssl_digest(openssl_digest($key, 'sha1', true), 'sha1', true), 0, 16); // openssl_encrypt 加密不同Mcrypt,对秘钥长度要求,超出16加密结果不变 $data = openssl_encrypt($string, 'AES-128-ECB', $key, OPENSSL_RAW_DATA); $encrypted = strtolower(bin2hex($data)); return $encrypted; }
二、解密代码如下:
/** * @param string $string 需要解密的字符串 * @param string $key 密钥 * @return string */ public static function decrypts($string, $key) { $key = substr(openssl_digest(openssl_digest($key, 'sha1', true), 'sha1', true), 0, 16); $decrypted = openssl_decrypt(hex2bin($string), 'AES-128-ECB', $key, OPENSSL_RAW_DATA); return $decrypted; }