123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- <?php
- /**
- * Aes.php UTF-8
- * AES 对称加密解密
- *
- * @date : 2017/7/17 22:01
- *
- * @license 这不是一个自由软件,未经授权不许任何使用和传播。
- * @author : guxiannong <gxn@huosdk.com>
- * @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);
- }
- }
|