首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从M2Crypto到pycrypto的AES代码移植

从M2Crypto到pycrypto的AES代码移植
EN

Stack Overflow用户
提问于 2013-01-16 10:41:49
回答 1查看 751关注 0票数 1

我想将一些现有的AES代码从M2Crypto转换成等价的pycrypto,但是文档很薄,特别是对于M2Crypto。我已经将相关代码简化为要旨。主要问题是:

  • Pycrypto要求输入的长度为16倍,m2crypto不需要。
  • 即使当输入长度为16的倍数时,密文也不同。在对M2Crypto密码参数进行实验之后,结果表明将paddingkey_as_bytes设置为假加密到使用pycrypto的同一密文。因此,我需要在纯python中模仿padding=Truekey_as_bytes=True

任何帮助都将不胜感激。

编辑:解决- gist已经更新了等价的M2Crypto/pycrypto代码和测试,我将留在那里,以防有人发现它在未来有用。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-17 01:00:45

您必须实现PKCS#7填充/解填充,这是一种简单的、由RSA实验室公开提供的标准中指定的,当然也可以在维基百科上实现。也见这个答案:

AES 256加密与PyCrypto使用CBC模式-有什么弱点?

请注意,PKCS#7填充和PKCS#5填充是相同的,尽管后者只用于8字节块密码(例如DES/TDEA)。默认情况下,OpenSSL使用PKCS#7填充。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14356471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档