小编Bra*_*een的帖子

PHP使用TripleDes,PKCS7和ECB加密/解密

我的加密功能正常工作但是我无法弄清楚如何获得解密功能以提供正确的输出.

这是我的加密功能:

function Encrypt($data, $secret)
{    
  //Generate a key from a hash
  $key = md5(utf8_encode($secret), true);

  //Take first 8 bytes of $key and append them to the end of $key.
  $key .= substr($key, 0, 8);

  //Pad for PKCS7
  $blockSize = mcrypt_get_block_size('tripledes', 'ecb');
  $len = strlen($data);
  $pad = $blockSize - ($len % $blockSize);
  $data .= str_repeat(chr($pad), $pad);

  //Encrypt data
  $encData = mcrypt_encrypt('tripledes', $key, $data, 'ecb');

  return base64_encode($encData);

}
Run Code Online (Sandbox Code Playgroud)

这是我的解密功能:

function Decrypt($data, $secret)
{
    $text = base64_decode($data);

    $data = mcrypt_decrypt('tripledes', $secret, $text, …
Run Code Online (Sandbox Code Playgroud)

php encryption ecb tripledes pkcs#7

7
推荐指数
1
解决办法
1万
查看次数

标签 统计

ecb ×1

encryption ×1

php ×1

pkcs#7 ×1

tripledes ×1