Go 和 Pycrypto 与 AES-CFB 之间的不同结果
当尝试使用 Python 的 Pycrypto 和 Go 的 crypto 包实现 AES-CFB 加密时,观察到密文结果存在显着差异。这种差异是由于加密过程中使用的不同设置造成的:
Python Pycrypto:
加密货币package:
分辨率
Go原生不支持CFB8 开箱即用。不过,通过修改crypto包中内置的CFBDecrypter和CFBEncrypter的源码,可以适配Go支持CFB8。此修改涉及替换某些硬编码常量以适应 8 位段大小。
通过实现此修改,Go 与 Python Pycrypto 实现中使用的加密设置完全兼容。因此,它可以成功解密 Pycrypto 生成的密文,反之亦然。
以上是为什么 Go 和 Pycrypto 生成不同的 AES-CFB 密文?的详细内容。更多信息请关注PHP中文网其他相关文章!