| 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);    }}
 |