Я использую gpg в оболочке Bash на Ubuntu 14.04. Я пытаюсь автоматизировать ввод пароля при шифровании и дешифровании больших блоков файлов. У меня есть длинная строка
gpg -c Filename.doc
но для каждых из тех строк мне предлагают пароль. Как я решаю это (простыми словами)?
Если Вы потянете страницу справочника gpg, то Вы будете видеть, что существуют полезные параметры командной строки:
--passphrase-file file
чтения пароль из файла
--passphrase string
использует string
как пароль
, Вы также захотите добавить --batch
, который препятствует тому, чтобы gpg использовал интерактивные команды, и --no-tty
, который удостоверяется, что терминал не используется ни для какого вывода.
имейте в виду, что использование этих опций является угрозой безопасности. Если пароль находится в файле, то хакер мог добраться до него. Если пароль предоставляется сценарию, то существуют способы, которыми хакер мог прервать его. Поэтому изучите последствия безопасности и не используйте эти опции слегка.
Хотя это возможно для автоматизации шифрования путем помещения строк пароля в виде открытого текста в файлы, это победило бы всю цель для использования GPG.
, Чтобы просто охранять данные из компромисса скорее затем передают его третьим лицам, шифруют с Вашим СОБСТВЕННЫЙ открытый ключ. Это позволит автоматизировать шифрование с помощью неинтерактивного сценария, т.е.:
gpg --batch --yes --trust-model always -r $YOURGPGPUBKEYEMAILADDRESS -e ./file.txt
ПРИМЕЧАНИЕ : Я загружаю мой ОБЩЕСТВЕННОСТЬ ключ к общедоступному серверу, по которому я хочу защитить данные, сохраняя ЗАКРЫТЫЙ КЛЮЧ кроме него. Так никакие пароли или даже закрытый ключ для дешифрования с на том общедоступном сервере из-за опасности компромисса.
, Очевидно, если Вы НЕ использование Вашего собственного открытого ключа, действуйте осторожно с эти --trust-model always
переключатель.