我想使用PHP访问API。规格为:
我尝试了许多不同的PHP函数和库,但是似乎都没有用。
这是我的代码:
function encrypt($data, $key)
{
// Pad for PKCS7
$blockSize = mcrypt_get_block_size(MCRYPT_TWOFISH, MCRYPT_MODE_ECB);
$len = strlen($data);
$pad = $blockSize - ($len % $blockSize);
$data .= str_repeat(chr($pad), $pad);
$encryptedData = mcrypt_encrypt( MCRYPT_TWOFISH, $key, $data, MCRYPT_MODE_ECB);
return $encryptedData;
}
您看到此代码有问题吗?
答案 0 :(得分:0)
mcrypt_encrypt
不支持PKCS7填充。也已淘汰了很长一段时间。
如果您要与之交谈的API使用的是Twofish和ECB模式,那么您可能根本不想使用该API-如果他们很乐意为前端API共同制定一个极其不安全的加密方案那么他们的其余代码库也可能非常笨拙。