ECB 模式下 PHP 示例中三重 DES 的加密和解密

Encryption and Decryption for Triple DES in PHP Example in ECB Mode

能否请您给我一个完整的示例,说明如何使用 PHP 语言创建加密和解密?我使用 hexa 作为数据和密钥。我搜索 google,发现有一个网站符合我的预期,即 here

以此为例:

数据: 225551100012FFFF

键: DC1C1F2B180F85D8D522A75D2354ED149A5B81F198387B51

我解密的时候得到了389da227862957c4

提前致谢!

从这个网站找到了我的答案http://www.isapp.it/en/menu-en/31-tips-a-tricks/php/118-php-how-to-encrypt-text-in-triple-des-ecb.html

但是因为我想用hexa加解密,所以我稍微修改了一下代码

function cryptECB($crypt, $key) {
    //Omit hex2bin and bin2hex if plain text is used
    $crypt = hex2bin($crypt);
    $key = hex2bin($key);

    $iv_size = mcrypt_get_iv_size(MCRYPT_3DES, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

    $cryptText = mcrypt_encrypt(MCRYPT_3DES, $key, $crypt, MCRYPT_MODE_ECB, $iv);

    return bin2hex($cryptText);
}

function decryptECB($encrypted, $key) {
    //Omit hex2bin and bin2hex if plain text is used
    $encrypted = hex2bin($encrypted);
    $key = hex2bin($key);
    $iv_size = mcrypt_get_iv_size(MCRYPT_3DES, MCRYPT_MODE_ECB);
    $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND);

    $stringText = mcrypt_decrypt(MCRYPT_3DES, $key, $encrypted, MCRYPT_MODE_ECB, $iv);

    return bin2hex($stringText);
}