Jak mogę odszyfrować wiele plików w katalogu za pomocą gpg?

12

Mam katalog z wieloma plikami .gpg, wszystkie zaszyfrowane tym samym hasłem. Jak mogę je wszystkie odszyfrować bez ciągłego wprowadzania hasła?

Chris Shain
źródło

Odpowiedzi:

12

Wygląda na to, że to załatwia sprawę:

gpg --decrypt-files *.gpg
Chris Shain
źródło
1

Na wypadek, gdybyś kiedyś potrzebował wierszy do napisania rozwiązania

#!/usr/bin/env bash
_dir="/some/directory"
_paraphrase=( "$@" )
Decrypt(){
    _pass=( "$@" )
    for _file in $(ls "${_dir}"); do
        case "${_file}" in
            *.gpg)
                echo "${_pass[*]}" | gpg --always-trust --passphrase-fd 0 --decrypt ${_file} --output ${_file%.gpg*}
            ;;
        esac
    done
    unset _pass
}
Decrypt "${_paraphrase[*]}"
unset _paraphrase

Podobne do powyższych działa w moich skryptach GnuPG, które muszą być odszyfrowywane bez interakcji człowieka. Jednak zaakceptowana odpowiedź gpg --decrypt-files *.gpgjest o wiele bezpieczniejsza, ponieważ GnuPG jest jedyną aplikacją obsługującą twoje hasło.

S0AndS0
źródło