php,mcrypt_通用到openssl_通过mcrypt_模式进行加密转换

php,mcrypt_通用到openssl_通过mcrypt_模式进行加密转换,php,Php,由于Mcrypt已被弃用,我希望在代码中使用OpenSSL $key = md5($tenant, true); $iv_length = mcrypt_get_iv_size(self::$algorithm, MCRYPT_MODE_ECB); $iv = mcrypt_create_iv($iv_length, MCRYPT_DEV_URANDOM);//MCRYPT_RAND //$encrypted = mcrypt_en

由于Mcrypt已被弃用,我希望在代码中使用OpenSSL

        $key = md5($tenant, true);
        $iv_length = mcrypt_get_iv_size(self::$algorithm, MCRYPT_MODE_ECB);
        $iv = mcrypt_create_iv($iv_length, MCRYPT_DEV_URANDOM);//MCRYPT_RAND
        //$encrypted = mcrypt_encrypt(self::$algorithm, $key, $data, MCRYPT_MODE_ECB);
        $td = mcrypt_module_open(self::$algorithm, '', MCRYPT_MODE_ECB, '');
        mcrypt_generic_init($td, $key, $iv);
        $encrypted = mcrypt_generic($td, $data);
        mcrypt_generic_deinit($td);
        mcrypt_module_close($td);
        $result = hash('crc32', base64_encode($encrypted));
        return $result;

我不知道如何将mcrypt_generic转换为openssl_encrypt,谢谢

请使用以下代码进行ECB加密和解密

$encryptedValue = base64_encode(openssl_encrypt($value,'AES-256-ECB',$key,OPENSSL_RAW_DATA));
  
$decryptedValue = openssl_decrypt(base64_decode($encryptedValue),'AES-256-ECB',$key,OPENSSL_RAW_DATA);

请使用以下代码进行ECB加密和解密

$encryptedValue = base64_encode(openssl_encrypt($value,'AES-256-ECB',$key,OPENSSL_RAW_DATA));
  
$decryptedValue = openssl_decrypt(base64_decode($encryptedValue),'AES-256-ECB',$key,OPENSSL_RAW_DATA);

您的代码缺少算法(DES?AES?),因此在这种情况下很难帮助您。您的代码缺少算法(DES?AES?),因此在这种情况下很难帮助您。