Мне нужно иметь возможность шифровать / дешифровать один текстовый файл, хранящийся на моем внешнем жестком диске в 12.04 LTS, предпочтительно приложение с графическим интерфейсом, если таковое имеется, или командную строку в противном случае. Спасибо.
Простой способ зашифровать отдельный файл - использовать openssl
:
openssl des3 < youfile.txt > yourfile.txt.des3
Вам будет предложено ввести кодовую фразу, которую вам нужно будет ввести позже при расшифровке файла.
openssl des3 -d < yourfile.txt.des3 > yourfile.txt.decrypted
Чтобы сделать это «графическим», вы можете поместить его в сценарий Nautilus
и сделать его доступным из контекстного меню. (См. Документацию Nautilus
для этого.)
UPDATE
des3
является лишь примером. Запустите openssl list-cipher-Algorithms
, чтобы увидеть полный список шифров.
Предположим, что человек хочет зашифровать файл с именем 'message.txt:
I.i. Команда:
gpg -c message.txt
.
делает это; запрашивает пароль (и подтверждение пароля) и генерирует зашифрованное 'message.txt.gpg', которое является двоичным
I.ii. Если вы хотите сгенерировать зашифрованный в ASCII файл, который является базовым64(я думаю) этого файла, то вы можете использовать
gpg -c --armor message.txt
Это сгенерирует 'message.txt.asc', который является тем же самым, что и предыдущая команда, но с кодом base64, т.е. зашифрованный файл в текстовом режиме (.asc, а не двоичный, как .gpg было бы).
II.i. Если вы хотите зашифровать файл с помощью своего ключа, а не только с помощью пароля, используйте команду gpg -e -r 'yourname' message.txt
.
Аргумент 'yourname' должен содержать часть имени, которое вы использовали для создания закрытого ключа. Если вы не зададите параметр -r, gpg запросит его. Тогда вы можете ввести наше имя (то же, что и в командной строке).
II.ii. Пункт II.i даст вам двоичный файл. Если вы хотите получить ASCII файл, используйте --armor. gpg -e -r 'yourname' --armor message.txt
.
, используйте команду gpg -d --output OUTPUTFILE message.txt.gpg
. При этом будет запрошена кодовая фраза, а затем расшифрован файл message.txt.gpg на OUTPUTFILE, если кодовая фраза верна. Эта кодовая фраза - та, которую вы использовали непосредственно (пункт I., параметр -c
), или через ваш закрытый ключ (пункт II., параметр -e
) Это работает как для двоичных (.gpg), так и для acii (.asc) файлов. Если вы нажмете на -выходной FILE
, он будет выведен в консоль (stdout), то вы можете сделать это также, то есть перенаправить его в файл: gpg -d message.txt.gpg > OUTPUTFILE.txt
оба делают то же самое. 8 )
Попробуйте http://www.aescrypt.com/ , он отлично работает.
Для (GnuPG) 1.4.16
gpg -a --output outfile.txt --encrypt infile.txt
Далее вам будет предложено:
Enter the user ID. End with an empty line:
, где "идентификатор пользователя" можно найти, запустив
gpg --list-keys
https://stackoverflow.com/questions/2811528/can-i- используйте-my-ssh-public-key-to-decrypt-a-file Есть вопрос по смежной теме. Вы можете использовать те же принципы для шифрования, если я не ошибаюсь.