1

私は単純な 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 行目、impl = Crypto.PublicKey.RSA.RSAImplementation(use_fast_math = True) 属性エラー: 'モジュール' オブジェクトに属性 'RSAImplementation' がありません

私はPythonに本当に慣れていないので、それが何を意味するのかわかりません。どんな助けにも感謝します。

4

3 に答える 3

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 を強制すると、使用できない場合に実行時エラーが発生するだけです。

于 2010-12-28T02:23:13.660 に答える
0

うーん、同じエラーが発生します。ドキュメントとコードの不一致でしょうか?

私が pyCrypto を使ったことはほとんどありませんが、M2Crypto は全体的に優れたライブラリであることがわかりました。ぜひ試してみてください。

于 2010-12-28T00:42:53.400 に答える
0

これは、Crypto.PublicKey.RSA に「RSAImplementation」という関数/変数がないことを意味します。

于 2010-12-28T00:46:18.210 に答える