GNUPG – stdinencryption的文件和密码在Windows上

如何在gpg.exe中input密码和encryption文件?

我已经尝试了几种不同的组合,但我无法得到它的工作。

这是我的尝试,

C:\>gpg.exe --output [OUTPUT_FILE] --batch --passphrase-fd 0 --decrypt < [INPUT_FILE] < [PASSPHRASE_FILE] 

从这我得到错误

 gpg: decrypt_message failed: eof 

交换input和密码周围我得到的错误

 gpg: no valid OpenPGP data found. gpg: decrypt_message failed: eof 

如果我不尝试通过stdin发送encryption文件,那么解密工作正常。

最终,我想要做的是解密一个文件基于文件的掩码与文件名中的date时间戳。 下面列出,

 C:\>gpg.exe --output yyyyMMdd.csv --batch --passphrase-fd 0 --decrypt < *_yyyyMMdd_*.txt < [PASSPHRASE_FILE] 

我不确定这是否能工作,因为我无法得到基本的情况,如果有人能告诉我实现这个目标的最好方法,我也会很感激。

不要对要解密的文件使用重定向,只对包含密码的文件使用重定向:

 C:\>gpg.exe --output [OUTPUT_FILE] --batch --passphrase-fd 0 --decrypt [INPUT_FILE] < [PASSPHRASE_FILE] 

但说实话,你可能更容易从密钥中删除密码。 毕竟,将密码存储在文件中并不是很安全。 只要将您的密码改为空白,并保护您的gpg主目录以拒绝访问除您自己以外的任何进程。