web-dev-qa-db-ja.com

コマンドラインを使用したフォルダーのGPG暗号化および復号化

gpgコマンドライン(Gnupg)のマニュアルページには、ファイルを暗号化および復号化するコマンドがあります。 gpgを使用してファイルを暗号化/復号化する標準コマンドを次に示します。

gpg --encrypt --recipient [email protected] ~/xxx/xxx.txt-暗号化する

gpg --output ~/xxx/xxx.txt --decrypt ~/xxx/xxx.gpg-解読する

しかし、複数のファイルとフォルダーを持つフォルダーがある場合、コマンドラインでどのように暗号化できますか?

13
0928e8f6

ソリューション1:

Gpg-Zipを使用します。

ユーザーBobのディレクトリmydocsの内容をファイルtest1に暗号化します。

gpg-Zip --encrypt --output test1 --gpg-args  -r Bob mydocs

アーカイブtest1の内容をリストします。

gpg-Zip --list-archive test1

これは、 アーカイブへのファイルの暗号化または署名 から直接の例です。そのページを詳細に読んでいただければ、大いに役立ちます。

解決策2:

ディレクトリをファイルに変える

ディレクトリを暗号化する場合は、最初にファイルに変換する必要があります。次のコマンドを実行します。

tar czf myfiles.tar.gz mydirectory/

これにより、新しいファイル「myfiles.tar.gz」が作成され、暗号化/復号化できます。 tarballをディレクトリに戻すには:

tar xzf myfiles.tar.gz

これで、上記と同じ方法で暗号化を使用できます。そう:

gpg --encrypt --recipient [email protected] ~/xxx/xxx.txt

これは、 berkeley encryptioning の例から直接引用されています。これは、迅速で便利な読み物でもあります。

こちらのmanページをご覧ください: gnu gpg man

23
Caleb Adams

すべてをまとめてtarballしたくなく、複数のファイルを個別に暗号化したい場合:

cdフォルダーに

暗号化:$ls | gpg --multifile --encryptまたは$ls | gpg --encrypt-files -r <recipient>

復号化:$ls | gpg --multifile --decryptまたは$ls | gpg --decrypt-files

3
Ryan

gpgtarも別のオプションです。 gpgtarは、アーカイブ内のファイルを暗号化または署名します。これは、PGPのPGPジップで使用されているものと同じ形式を使用したgpg化されたtarです。

MacOSおよびLinuxにgnupgとともにインストールされます。

ディレクトリの暗号化

gpgtar --encrypt --output <out_file_name> -r <recipient> <dir_name>

ディレクトリの復号化

gpgtar --decrypt <out_file_name>

gpgtar manページ

1
captam3rica