Шифрование / дешифрование одного файла в Ubuntu 12.04 LTS


35

Мне нужно иметь возможность шифровать / дешифровать один текстовый файл, хранящийся на моем внешнем жестком диске в 12.04 LTS, предпочтительно приложение с графическим интерфейсом, если таковое имеется, или командную строку в противном случае. Спасибо.

Ответы:


44

Простой способ зашифровать один файл с помощью openssl:

openssl des3 < youfile.txt > yourfile.txt.des3

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

openssl des3 -d < yourfile.txt.des3 > yourfile.txt.decrypted

Чтобы сделать это «графическим», вы можете поместить его в Nautilusскрипт и сделать его доступным из контекстного меню. (См. Документы Nautilusдля этого.)

ОБНОВИТЬ

des3это просто пример. Запустите, openssl list-cipher-algorithmsчтобы увидеть полный список шифров.


9
Почему des3? Вы можете сделать намного лучшее шифрование быстрее сopenssl aes-128-cbc
Восстановите Монику

@BrendanLong: Я думаю, причина в том, что aes-128-cbcне упоминается в man openssl- интересно, почему. Это работает, хотя.
Уолтер Тросс

25

Предположим, что человек хочет зашифровать файл с именем ' message.txt ':

1. Шифрование файла с использованием GPG, для личного использования

I. Использование парольной фразы для шифрования файла (а не секретного ключа)

Ii . Команда: gpg -c message.txt делает это; он запрашивает пароль (и подтверждение пароля) и генерирует зашифрованный «message.txt.gpg», который является двоичным.

I.II . Если вы хотите сгенерировать зашифрованный файл ASCII, который является base64 (я думаю) для этого файла, вы можете использовать gpg -c --armor message.txt Это сгенерирует 'message.txt.asc', который является таким же, как сгенерированный командой ранее, но base64 закодированный, т. е. зашифрованный файл в текстовом режиме ( .asc , а не двоичный, как .gpg ).

II. Использование закрытого ключа для шифрования файла

II.I . Если вы хотите зашифровать файл, используя свой ключ, а не только пароль, используйте команду gpg -e -r 'yourname' message.txt. Аргумент 'ваше имя' должен содержать часть имени, которую вы использовали для создания закрытого ключа. Если вы не укажете параметр -r, gpg запросит его. Вы можете ввести наше имя (то же самое, что вы вводите в командной строке).

II.ii . Пункт II.i даст вам двоичный файл. Если вы хотите получить файл ASCII, используйте --armor. gpg -e -r 'yourname' --armor message.txt,

2. Расшифровка файла, зашифрованного с помощью GPG

Чтобы расшифровать файл, используйте команду gpg -d --output OUTPUTFILE message.txt.gpg. Это запросит пароль и расшифрует файл message.txt.gpg в OUTPUTFILE , если пароль правильный. Эта парольная фраза - та, которую вы использовали непосредственно (пункт I., -cпараметр) или через свой закрытый ключ (пункт II., -eПараметр). Это работает как для двоичных (.gpg), так и для файлов ascii (.asc). Если вы подавляете --output FILE, он выводится на консоль (stdout), то вы можете сделать это также, то есть перенаправить его в файл: gpg -d message.txt.gpg > OUTPUTFILE.txtоба делают то же самое. 8)




0

Для (GnuPG) 1.4.16

gpg -a --output outfile.txt --encrypt infile.txt

Затем вам будет предложено:

Enter the user ID.  End with an empty line:

где «идентификатор пользователя» можно найти, запустив

gpg --list-keys
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.