私はPythonでRSA暗号化を試みています。公開鍵を使ってメッセージを暗号化し、暗号文をテキストファイルに書き込む公開鍵/秘密鍵が生成されました。NotImplementedError:代わりにCrypto.Cipher.PKCS1_OAEPモジュールを使用してください。
from Crypto.PublicKey import RSA
from Crypto import Random
import ast
random_generator = Random.new().read
key = RSA.generate(1024, random_generator)
publickey = key.publickey()
encrypted = publickey.encrypt('encrypt this message', 32)
print('encrypted message:', encrypted)
f = open('encryption.txt', 'w')
f.write(str(encrypted))
f.close()
f = open('encryption.txt', 'r')
message = f.read()
decrypted = key.decrypt(ast.literal_eval(str(encrypted)))
print('decrypted', decrypted)
f = open('encryption.txt', 'w')
f.write(str(message))
f.write(str(decrypted))
f.close()
しかし、私はアプリケーションを実行すると、今、私は次のエラーを取得:次のように私が使用していたコードがある私はCrypto.Cipher.PKCS1_OAEP
を実装してみてくださいどのように
Traceback (most recent call last):
File "C:/Users/RedCode/PycharmProjects/AdvancedApps/Encryption/RSA Example.py", line 10, in <module>
encrypted = publickey.encrypt('encrypt this message', 32)
File "C:\Users\RedCode\AppData\Local\Programs\Python\Python36-32\lib\site-packages\Crypto\PublicKey\RSA.py", line 390, in encrypt
raise NotImplementedError("Use module Crypto.Cipher.PKCS1_OAEP instead")
NotImplementedError: Use module Crypto.Cipher.PKCS1_OAEP instead
どんなにを、エラーが解消されません。私は、インポートCrypto.Cipher.PKCS1_OAEP
、from Crypto.Cipher.PKCS1_OAEP import RSA
、from Crypto.Cipher.PKCS1_OAEP import Random
、from Crypto.Cipher.PKCS1_OAEP import ast
、およびimport Crypto.Cipher
を試しましたが、助けられていませんでした。
私はfrom Crypto.Cipher.PKCS1_OAEP import RSA
を試みたが、エラーがあった。
Traceback (most recent call last):
File "C:/Users/RedCode/PycharmProjects/AdvancedApps/Encryption/RSA Example.py", line 3, in <module>
from Crypto.Cipher.PKCS1_OAEP import RSA
ImportError: cannot import name 'RSA'
私は私のファイルをチェックし、私はRSAパッケージを持っています。
この問題を修正するにはどうすればよいですか?
に同じ私は '輸入Crypto.Cipher'を欠けていると'試行のリストからCrypto.Cipher輸入PKCS1_OAEP'から、あなたにもそれらを試してみたのですか? –
@MaartenBodewes私は今それを試しただけで、まだ動作しませんでした。私はこれらの試みで質問を更新しました。 – RedCode