Ключи шифрования RSA.Записываю ключ в базу данных и преобразую в тип string и как после этого по нему шифровать? (pubkey, privkey) = rsa.newkeys(512)
cur.execute("INSERT INTO persons (domain, key ) VALUES (%s,%s)", (domain, str(pubkey)))
conn.commit()
как видно на скрине я создаю ключи шифрования и заношу их в бд, как после этого использовать этот ключ для шифрования? Мне его надо считать с бд и шифровать по нему информацию, но в бд он типа string, а сам по себе ключ как я понял байтовый

21 Авг 2019 в 07:11
219 +1
0
Ответы
1

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

Для этого вам нужно сначала выполнить запрос к базе данных, чтобы получить ключ шифрования в виде строки, затем преобразовать строку обратно в объект ключа RSA. Это можно сделать с помощью метода rsa.key.PublicKey.load_pkcs1.

Ниже приведен пример кода, который демонстрирует этот процесс:

import rsa
# Получение ключа из базы данных
cur.execute("SELECT key FROM persons WHERE domain = %s", (domain,))
result = cur.fetchone()
key_str = result[0]
# Преобразование строки в объект ключа RSA
pubkey = rsa.key.PublicKey.load_pkcs1(key_str)
# Использование ключа для шифрования данных
data = b'Hello, World!'
encrypted_data = rsa.encrypt(data, pubkey)
print("Зашифрованные данные:", encrypted_data)

Этот код получит ключ шифрования из базы данных, преобразует его обратно в объект ключа RSA и затем использует этот ключ для шифрования данных. Не забудьте подключиться к базе данных в вашем коде перед выполнением запросов.

20 Апр 2024 в 13:06
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 95 688 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир