У меня есть приложение C #, которое использует следующие открытые ключи для успешного шифрования и дешифрования (используя соответствующий закрытый ключ). Я использую тот же открытый ключ в Python для шифрования, используя следующий код. Я получаю следующую ошибку:
модуль «Crypto.PublicKey.RSA» не имеет атрибута «import_key»
Я ссылался RSA - pycryptodome.readthedocs.io чтобы проверить 'import_key'. Там написано extern_key (string or byte string)
.
Примечание: у меня установлена pycrypto 2.6.1
. Проверено с использованием conda list
.
Как это исправить, чтобы Python мог использовать тот же ключ, который был успешно использован приложением C #?
Код Python
import Crypto
from Crypto.PublicKey import RSA
pubkey = 'BgIAAACkAABSU0ExAAQAAAEAAQB5ad3IFUIQ+NJeJEVlHJb0BaXhPCpeP+477ql+2dsNLzpn+3f2Lm5UWZhig60rx7/5/rAlAH+emU6WwOZNxtMtFbdu9CNBUjRp9FiEmJHZLaGqqmEFDyp287k3HVCFVzxxRAEy8ftL/q6KaE3KKrHoFiMozretUXulYy5OE1yR7w=='
import base64
decodedPublicKey = base64.b64decode(pubkey)
pub_key = RSA.import_key(decodedPublicKey)
encrypted = pub_key.encrypt('hello world', None)
print(encrypted)
text = pvt_key.decrypt(encrypted)
print(text)