Как реализовать шифрования эллиптической кривой для базы данных? Не знаю как реализовать шифрование алгоритмом эллиптических кривых базы данных, в встроенных методах не нашел, ни в одной из СУБД(oracle,microsoft sql server,mysql), там много методов шифрования, но ни в одном нету реализации эллиптической кривой. Получается нужно создать процедуру, которая при Insert-е данных заносились в базу данных в шифрованном виде и select-а данных она выводилась бы дешифрованном виде, к сожалению не смог найти хотя бы наброски может, кто нибудь уже делал? или может поделиться опытом в этом деле?

21 Авг 2019 в 07:12
223 +1
0
Ответы
1

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

Для создания процедур шифрования и дешифрования в БД, вы можете написать хранимые процедуры на языке SQL или использовать язык программирования, поддерживаемый вашей СУБД, для создания пользовательских функций.

В качестве примера, вот как могут выглядеть процедуры шифрования и дешифрования на эллиптической кривой с использованием OpenSSL в MySQL:

DELIMITER //
CREATE FUNCTION encrypt_data(data VARCHAR(255), public_key VARCHAR(255)) RETURNS VARCHAR(255)
BEGIN
DECLARE encrypted_data VARCHAR(255);
SET @cmd = CONCAT("openssl ec -in <(echo '", data, "') -pubin -inkey <(echo '", public_key, "') | openssl base64");
SET encrypted_data = EXECUTE COMMAND @cmd;
RETURN encrypted_data;
END//
CREATE FUNCTION decrypt_data(encrypted_data VARCHAR(255), private_key VARCHAR(255)) RETURNS VARCHAR(255)
BEGIN
DECLARE decrypted_data VARCHAR(255);
SET @cmd = CONCAT("echo '", encrypted_data, "' | openssl base64 -d | openssl ec -inkey <(echo '", private_key, "') -decrypt");
SET decrypted_data = EXECUTE COMMAND @cmd;
RETURN decrypted_data;
END//
DELIMITER ;

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

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