我正在使用GAE(python)并且必须使用公钥(pem格式)验证数字签名 我不能使用M2Crypto(它不支持GAE),以下代码都不起作用:
pubKey = pem
from Crypto import PublicKey
key = PublicKey.RSA.importKey(pubKey)
现在,为了使这个代码工作,我们必须有Pycrypto包,它已经在appengine中,仍然'impotkey()'函数给出错误 另外,我无法在GAE的Pycrypto包中找到类RSAImplementation
编辑:
OKAY, 经过几个小时的沉思,终于找到了问题所在。 问题在于pycrypto模块的版本。 从我看来,GAE支持Pycrypto版本2.0.1,它似乎没有某些类和方法,如RSAImplementation和ImportKey() 我在本地机器上将Pycrypto更新为2.4,在那里它可以找出RSAImplementation和importKey()。
还查看了Pycrypto https://github.com/dlitz/pycrypto/blob/62247ca754657b6ee8370d8fd62c58b8b881f396/ChangeLog的更改日志 看起来支持以pem格式导入公钥仅来自版本2.2
仍然存在基本问题..如何在GAE上使用RSA验证数字签名(因为GAE使用的是Pycrypto版本2.0.1)