Формат ключей RSA не поддерживается для python, сохраненных в djagno

Когда пользователи регистрируются в моем приложении, я добавляю новый закрытый ключ и открытый ключ в профиль каждого пользователя.

    import Crypto
    from Crypto.PublicKey import RSA
    from Crypto.Hash import SHA256
    from  Crypto.Cipher import PKCS1_OAEP
    from Crypto import Random



    recipient = get_object_or_404(User, email=request.POST.get('email'))
    random = Random.new().read
    private_key = RSA.generate(1024, random)
    public_key = private_key.publickey()
    recipient.private_key = private_key.exportKey('PEM')
    recipient.public_key = public_key.exportKey('PEM')
    recipient.save()

и затем я получаю открытый ключ для шифрования сообщения для пользователя из фонового процесса следующим образом.

user = User.objects.get(id=xyz)
pvt_key = RSA.importKey(user.private_key)

и выдает такую ошибку:

ValueErro
RSA key format is not supported

В базе данных открытый ключ был сохранен таким образом:

b'-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDxcmh0/JQ+2WrpP/1PuSotY7+B\nghEzIjVrqN+rLwSrgzowKIU8Ch3sUMynE2XNgpN6jMiv/Jjb0odptuWwSoZg/NYR\necIr0eLuYIN1R3zic7OwCy86DcML/bNAer89NEk5XHmC5goRZJFn8B+nPyeaQ4Uw\n7JXqmMcCCYflpr9X/QIDAQAB\n-----END PUBLIC KEY-----'

Может ли кто-нибудь сказать мне, что там не так? Как я могу решить эту проблему?

Вернуться на верх