* @version : HUOSDK 7.2 */ namespace huolib\tool; class Aes { /** * 与doDecrypt 加密 * * @param string $str * @param array $option * * @return string */ public static function doEncrypt($str = '', $option = array()) { $aes_type = isset($option['aes_type']) ? $option['aes_type'] : 'aes-128-cbc'; $key = isset($option['key']) ? $option['key'] : '1Q2W3E4R5T6Y7U8I9O0P'; $iv = isset($option['iv']) ? $option['iv'] : '9876543219638521'; $aes_option = isset($option['aes_option']) ? $option['aes_option'] : OPENSSL_RAW_DATA; return bin2hex(openssl_encrypt($str, $aes_type, $key, $aes_option, $iv)); } /** * 与doEncrypt 配套的解密 * * @param string $str * @param array $option * * @return string */ public static function doDecrypt($str = '', $option = array()) { $aes_type = isset($option['aes_type']) ? $option['aes_type'] : 'aes-128-cbc'; $key = isset($option['key']) ? $option['key'] : '1Q2W3E4R5T6Y7U8I9O0P'; $iv = isset($option['iv']) ? $option['iv'] : '9876543219638521'; $aes_option = isset($option['aes_option']) ? $option['aes_option'] : OPENSSL_RAW_DATA; return openssl_decrypt(pack('H*', $str), $aes_type, $key, $aes_option, $iv); } }