web-dev-qa-db-ja.com

GPGコマンドのパスフレーズプロンプトを非表示にする

編集されたバージョン

GPGについて質問がありますが、すべてのプロセスを記述します。多分それが誰かを助けるでしょう。

したい:GPGコマンドでパスフレーズプロンプトを表示しないしたくない:-cオプションを使用する(--symmetric)。

LinuxとWindowsの2つのシステムがあります。 LinuxからWindowsにデータを送信したい。 Linuxでデータを暗号化し、Windowsで復号化したい。

  • myFileOnLinux.txtは、暗号化したいLinux上のファイルです。
  • [email protected]ペアキーのUID。
  • myPasswordPhraseはパスワードフレーズです。

両方にGPGをインストールして、次の手順を実行しました。

  1. Windowsにペアキーを生成します。

    gpg --gen-key
    
  2. Windowsのキーパラメータを変更します。

    gpg --edit-key [email protected]
    
    trust
    5
    expire
    0
    
  3. 公開鍵をエクスポートします。

    gpg -a --export [email protected] > public.key
    
  4. 公開鍵をLinuxマシンに送信します。

  5. Linuxに公開鍵をインポートします。

    gpg --import public.key
    
  6. Linuxで信頼パラメーターを変更する

    gpg --edit-key [email protected]
    
    trust
    5
    
  7. Linuxでファイルを暗号化する

    gpg --output output.enc --encrypt --recipient [email protected] myFileOnLinux.txt
    
  8. 暗号化されたファイルをWindowsに送信します。

  9. ファイルを復号化します。

    gpg --batch --passphrase "myPasswordPhrase" -d -o test.dec output.enc
    

ポップアップウィンドウのあるWindowsでは、Passphraseをもう一度尋ねられました。どうすれば回避できますか?

8
Malus Jan

たくさん掘り下げた後、私はこのコマンドを見つけました。これは、ウィンドウのプロンプトを無効にします(* nixシステムでも機能します):

--pinentry-mode=loopback

完全なコマンドは次のとおりです。

gpg --pinentry-mode=loopback --passphrase  "PASSWORD" -d -o "PATH\TO\OUTPUT" "PATH\TO\FILE.gpg"
23
Marc Tifrea