我最近使用了一个Python脚本来加密字符串。但是不能用C++++对C++进行解密。我只是比较了生成的加密字符串,发现它们不一样。有人能帮忙吗?在
下面是我的Python代码:
key = "0123456789abcdef"
data = "ccccccccccccccccdddddddddddddddd"
iv = "aaaaaaaaaaaaaaaa"
encryptor = AES.new(key, AES.MODE_CBC, iv)
enc = encryptor.encrypt(data)
print enc
这是我的C++代码:
^{pr2}$
默认情况下,Crypto++对明文字符串使用PKCS5填充。这在字符串的末尾添加填充,以确保字符串是块大小的倍数,对于AES,块大小是16字节。如果明文已经是16的倍数,Crypto++会在明文中再添加16个字节的填充,然后对整个内容进行加密。PyCrypto不添加这个额外的填充,让用户自己来确保正确的块大小。请注意,当您解密Crypto++加密的密码文本时,额外的填充将自动删除。在
相关问题 更多 >
编程相关推荐