欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

PHP实现sha1加密AES算法加密解密数据

程序员文章站 2022-04-14 20:26:55
一、加密代码如下: 二、解密代码如下: ......

一、加密代码如下:

/**
     *
     * @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;
    }