Python 用给定模/指数的PyCrypto解码RSA数据

Python 用给定模/指数的PyCrypto解码RSA数据,python,delphi,google-app-engine,rsa,Python,Delphi,Google App Engine,Rsa,我正在将一个本机(Win32,Delphi 5和TP LockBox 2制作)应用程序移植到Google应用程序引擎,目前我正在努力通过RSA加密/解密。在我的代码中,模数和两个指数都是元组,如下所示: rsa_key = ( 0xABABAB....ABABABL, 0xABABL, 0xABABABA...ABABAL) 用my key中的正确值替换随机“ABABA”。但是,当我使用以下工具构建RSA实现时: rsa = RSA.RSAImplementation().construct(

我正在将一个本机(Win32,Delphi 5和TP LockBox 2制作)应用程序移植到Google应用程序引擎,目前我正在努力通过RSA加密/解密。在我的代码中,模数和两个指数都是元组,如下所示:

rsa_key = ( 0xABABAB....ABABABL, 0xABABL, 0xABABABA...ABABAL)
用my key中的正确值替换随机“ABABA”。但是,当我使用以下工具构建RSA实现时:

rsa = RSA.RSAImplementation().construct(rsa_key)
然后解密我的数据:

self.response.out.write(rsa.decrypt(serial[0:128]))
我只是胡言乱语。在翻译模数/指数时,有什么我可能没有考虑的吗

2012年1月18日更新

我使用以下命令使用OpenSSL生成了一个密钥:

openssl genrsa -out test.key 1024 -outform DER
并使用Base64字符串使用RSA.importKey导入密钥,结果成功。在同一个键上,我用命令提取了模数和指数:

openssl rsa -in prueba.key -text -modulus
并尝试使用这些值
构造具有指定元组的
键,并成功。我将再次检查我的旧密钥的值,以验证它是否按预期工作

最终更新


我的旧版应用程序似乎无法生成良好的模数/指数。这意味着这不是问题。忽略此帖子。

检查基本解密/加密是否有效。是rsa.decrypt(rsa.encrypt(“Hello”,1))==“Hello”?您是否使用构造中提到的参数构造密钥?要么您的密钥错误,要么您的数据错误,要么两者都错误。@ib.lundgren确实不起作用。。。也许我提取了错误的模和指数,只是用OpenSSL生成了一个密钥。加载DER格式的密钥时,它使用一个简单的加密-解密。但是,我使用OpenSSL来提取密钥的参数(模数和指数),当直接使用
构造
处理程序指定模数和指数时,它不起作用。