首页 > 解决方案 > 如何使用 TripleDES 和 Python 加密数据?

问题描述

我正在使用 TripleDES 集成来自第三方的 API。他们有一个 PHP 代码示例,我一直在尝试用 Python 做同样的事情,但仍然无法正常工作。以下是PHP代码,任何帮助将不胜感激,非常感谢。

 class TripleDES {
    function mencrypt_3des($text, $key) {
        // echo 'plain text: '.$text;
        // echo '</br>'.'========='.'</br>';
        // echo 'key: '.$key;
        $text = $this -> pkcs5_pad($text, 8);
        $size = mcrypt_get_iv_size(MCRYPT_3DES, MCRYPT_MODE_ECB);
        $iv = mcrypt_create_iv($size, MCRYPT_RAND);
        $bin = pack('H*', bin2hex($text));
        $encrypted = mcrypt_encrypt(MCRYPT_3DES, $key, $bin, MCRYPT_MODE_ECB, $iv);
        $encrypted = bin2hex($encrypted);
        // echo '</br>'.'========='.'</br>';
        // echo 'encrypted: '.$encrypted;
        return $encrypted;
    }

    function pkcs5_pad($text, $blocksize) {
        $pad = $blocksize - (strlen($text) % $blocksize);
        return $text . str_repeat(chr($pad), $pad);
    }
}

标签: pythondjango

解决方案


推荐阅读