我似乎无法找到差异的来源。我发现在这个网上解密工具Blowfish和Blowfish-compat有什么区别?
http://www.tools4noobs.com/online_tools/decrypt/
我有我试图通过Python的PyCrypto模块来解密加密一些数据河豚这种差异。然而,问题在于数据似乎被“blowfish-compat”加密,因为这是通过在线工具解密的数据;我无法通过PyCrypto的模块对其进行解密,并且我正在收集它严格使用Blowfish解密(而不是Blowfish-compat,无论如何)。
是否有可能通过Python以某种方式解密blowfish-compat?我不知道两者的区别。
太棒了,谢谢!我几乎已经放弃了希望,正准备用PHP重写,但是你已经保存了一天!奖励! – Coldblackice 2012-07-10 22:45:41
你的答案是现货:但是对于每个使用pycrypto的人都有一点希望:你可以通过在加密之前颠倒字节顺序(4字节块)并再次加密加密结果来“模拟”blowfish-compat。一个例子是这个提交https://github.com/pyropeter/otrtool/commit/4282fbee1643ed2b37ae48c510619b2617a34bf1 – 2014-02-04 13:30:50
如果你使用像CTR这样的模式,那么仿真代码就不能很好地工作。就像如果你有1234,它返回4321,但如果你有12?明文不需要是CTR中块大小的倍数。你可以将NULL填充到最接近的8个字节,然后再不行 – neubert 2016-07-05 23:48:01