web-dev-qa-db-ja.com

CLI引数として渡されたキーを使用してGPGで暗号化する

自動的に暗号化してGitHubにプッシュして公開したくないいくつかの賢明なファイルをパブリックリポジトリにプッシュするスクリプトを作成したい(ただし、プロジェクト全体と一緒に保持したい)。

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

誰かがこれを行う方法を知っていますか?

4
ddnomad

バッチモードで、--passphrase-...オプションの1つを使用します。

  • --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を使用してmysuperpassphraseを(file.gpgに)暗号化します。

9
Stephen Kitt