我有一个关于GPG的问题,但我写了所有的过程,也许它会帮助别人。
我想:在GPG命令中禁用密码提示。我不想:使用-c选项(--symmetric)。
我有2个系统Linux和Windows。我想将数据从Linux发送到Windows。我想在Linux中加密数据并在Windows中解密。
myFileOnLinux.txt
是Linux上我要加密的文件。my@Email.com
配对密钥的UID。myPasswordPhrase
是密码短语。我在两者上安装了GPG并执行了以下步骤:
在Windows
中生成一对密钥:
gpg --gen-key
更改Windows
中的关键参数:
gpg --edit-key my@Email.com
trust
5
expire
0
导出公钥:
gpg -a --export my@Email.com > public.key
将公钥发送到Linux计算机。
在Linux中导入公钥。
gpg --import public.key
更改Linux中的trust参数
gpg --edit-key my@Email.com
trust
5
在Linux中加密文件
gpg --output output.enc --encrypt --recipient my@Email.com myFileOnLinux.txt
将加密文件发送到Windows。
解密文件。
gpg --batch --passphrase "myPasswordPhrase" -d -o test.dec output.enc
在带有弹出窗口的Windows中,它再次向我询问Passphrase
。我怎么能避免它?
答案 0 :(得分:8)
经过大量挖掘后,我发现这个命令会禁用Windows上的输入提示:
--pinentry-mode=loopback
完整的命令是:
gpg --pinentry-mode=loopback --passphrase "PASSWORD" -d -o "PATH\TO\OUTPUT" "PATH\TO\FILE.gpg"
答案 1 :(得分:2)
gpg --batch --import sec.key
gpg -d --batch --passphrase mypassphrase encrypted_file.gpg
--batch 标志在导入密钥和解密文件时抑制密码提示。