CLIパラメータに渡されたキーを使用してGPGを介して暗号化

CLIパラメータに渡されたキーを使用してGPGを介して暗号化

いくつかの重要なファイルを自動的に暗号化して公開したくないGitHubパブリックリポジトリにプッシュするスクリプトを作成したいと思います(しかしプロジェクト全体でアーカイブしたい)。

解決策として、GPGを使用して暗号化することにしました。問題は、コマンドにCLI引数として渡されたパスワードを使用して特定のファイルを暗号化する方法についての手がかりが見つからないことですgpg -c

これを行う方法を知っている人はいますか?

ベストアンサー1

バッチモードでは、次のいずれかのオプションを使用してください--passphrase-...

  • --passphrase-fd指定されたファイル記述子からパスワードを読み込みます。

      echo mysuperpassphrase | gpg --batch -c --passphrase-fd 0 file
    
  • --passphrase-file与えられたファイルからパスワードを読む

      echo mysuperpassphrase > passphrase
      gpg --batch -c --passphrase-file passphrase file
    
  • --passphrase与えられた文字列を使う

      gpg --batch -c --passphrase mysuperpassphrase file
    

これらはすべて暗号化を使用しますfile(to file.gpgmysuperpassphrase

GPG 2.1以降では、PIN入力モードを「ループバック」に設定する必要があります。

gpg --batch -c --pinentry-mode loopback --passphrase-file passphrase file

など。

-d代わりにを使用して-c出力をリダイレクトする方法で、同様の方法で復号化を実行できます。

gpg --batch -d --passphrase-file passphrase file.gpg > file

など。

おすすめ記事