Я пишу веб-приложение для хранения файлов в зашифрованном виде, но позже оно может быть расшифровано в среде без php. Допустим, пользователь загрузил файл с именем doc.pdf
.
Затем он шифруется и сохраняется на сервере в зашифрованном виде. Затем пользователь может загрузить зашифрованный файл позже и расшифровать его в своей системе.
Поскольку файлы, зашифрованные с использованием расширения mcrypt в php, являются непереносимыми, я решил написать программу на языке c под названием «encrypt». Затем я вызываю его в php:
$return_var=exec("encrypt $file_path $key");
Теперь еще один метод, о котором я подумал, - это создать сервер шифрования, который, по сути, является оболочкой для программы шифрования с возможностью прослушивания запросов через сокеты. Допустим, скрипт php сделает запрос к этой программе, указав имя файла и ключ для шифрования.
Я подумал, что это может быть более гибким подходом, поскольку нагрузку на процесс шифрования можно легко отрегулировать, поместив программу сервера шифрования на другой компьютер.
Теперь мой вопрос: какой из двух подходов эффективен (с точки зрения скорости, обработки большого количества клиентов и т. Д.)?