Python PyCrypto和RSA问题

时间:2010-12-27 23:04:48

标签: python rsa pycrypto

我有简单的RSA python脚本:

import Crypto.PublicKey.RSA
import rsakey
from Crypto.PublicKey import pubkey

# Some global stuff
impl = Crypto.PublicKey.RSA.RSAImplementation(use_fast_math = True)
RSAObj = impl.construct(rsakey.RSAKeys)

def decrypt(encrypted):
        return RSAObj.decrypt(encrypted)

当我尝试运行它时,我的CLI显示错误:

  

追踪(最近的呼叫最后):
  文件“otrsa.py”,第6行,in       impl = Crypto.PublicKey.RSA.RSAImplementation(use_fast_math   = True)AttributeError:'module'对象没有属性   'RSAImplementation'

我是Python新手,我不知道它意味着什么。 我会感谢任何帮助。

3 个答案:

答案 0 :(得分:3)

Crypto.PublicKey.RSA包含一个名为RSAImplementation的类(请参阅http://www.dlitz.net/software/pycrypto/apidoc/Crypto.PublicKey.RSA.RSAImplementation-class.html)。

以下适用于我(在32位Windows上的Python 2.7.1中):

import Crypto.PublicKey.RSA
impl = Crypto.PublicKey.RSA.RSAImplementation()

请注意,默认情况下,如果可用,将使用快速数学运算。强制use_fast_math只会导致运行时错误(如果不可用)。

答案 1 :(得分:0)

嗯,我得到了同样的错误 - 也许是文档和代码之间的一些错过匹配?

我使用pyCrypto有点小,我发现M2Crypto整体上是一个更好的库 - 你可能想尝试一下。

答案 2 :(得分:0)

这意味着Crypto.PublicKey.RSA没有名为'RSAImplementation'的函数/变量