Как создать в Linux защищенный паролем файл, чтобы он запрашивал пароль каждый раз, когда пользователь захочет открыть его на компьютерах Linux или Windows.
Этот процесс должен быть выполнен в командной строке Linux, но файлы могут быть открыты на компьютерах Linux или Windows, поэтому защита должна работать в обеих ОС.
EDIT для Ramhound
Я попробовал это:
7za a -tzip -pPASSWORD -mem=AES256 file.zip file.txt
ЭтоКРОСС-ПЛАТФОРМЕННАЯспособ, при этом файл можно распаковать в любой ОС
Но я не должен использовать метод сжатия.
vim +x file.txt
Это шифрует, но запрашивает пароль только тогда, когда я открываю его с помощью Vim, а не с помощью Notepad (извините, если это глупо, но я прикладываю свои усилия)
gpg -c file.txt
Это создает новый файл с расширением «.gpg», но, как и zip, для этого мне нужно определенное ПО.
решение1
Используйте защищенный паролем 7z или Zip-файл. Он будет работать на любой ОС, которая может их обрабатывать. Лично я предпочитаю 7z.
решение2
Это можно сделать, хотя и довольно некрасивым способом.
Вам нужно написать скрипт шифрования, который считывает файл открытого текста, передает его в какое-то симметричное шифрование, предоставляя также пароль (например, с помощью
openssl des3
).
Затем он записывает двоичный файл. Двоичный файл, содержащий закодированную версию зашифрованного файла, передает вышеупомянутый файл двоичному файлу дешифратора и открывает полученный файл.
Однако решение выше довольно неэлегантно. Гораздо более простым подходом было бы использование архивов, защищенных паролем; почему бы вам не использовать их?