为什么我使用from CryptoCipher import DES3模块模式为MODE_CBC模式每次加密出来的结果都不一样。但是pyDes每次加密结果都是一样的pyDes也是CBC模式。我可以让使用Crypto模块和使用pyDes一样每次加密出来的结果都是一样的吗。我已经使用了固定的IV值可Crypto除了第一次加密时的结果与pyDes相同外后面每次调用encrypt方法结果都不一样了。
这是因为在使用Crypto.Cipher模块时,IV(初始化向量)每次加密时都需要重新生成,而pyDes中的IV是固定的。如果您想让Crypto.Cipher模块的加密结果与pyDes相同,可以将IV固定,确保每次加密使用相同的IV。但是要注意,使用相同的IV可能会导致安全问题,因为相同的IV可能会使加密更容易受到攻击。因此,建议使用随机生成的IV来确保安全性。
原文地址: http://www.cveoy.top/t/topic/eTZP 著作权归作者所有。请勿转载和采集!