不兼容仅适用于 PGP v2.x。对于 v5.x,GPG(不是您所说的 PGP)需要有更多选项。
如果 PGP 2.x 的问题确实是个问题,那么您可能不得不为 PGP 命令行版本买单。请注意,PGP v5 似乎是在 1997 年发布的,而 PGP v2 是在 1992 年左右发布的,所以除非您正在处理不升级的接收者,否则您可能会有很好的覆盖范围。
导入您的密钥和其他人:
gpg -v --import c:\pgp\my-pub-and-priv-pgp-key.asc
导入每个收件人密钥
gpg -v --import c:\pgp\pub\recipient1.asc
...
gpg -v --import c:\pgp\pub\recipientN.asc
出于某种原因,在本地安装的 Windows 手册中很难找到命令行选项;他们在这里。
现在使用 --batch 进行批处理模式,使用 --passphrase-file 让您的私钥解锁短语从给定文件中读取,而不是通过 gpg-agent* 从键盘读取,并始终信任收件人密钥。如果您不需要对输出进行签名,那么显然您不需要使用或解锁您的私钥。
加密 (-e) 并签署 (-s) 文件
gpg -v --always-trust --batch --passphrase-file mypassphrasefile -se -r
recipient1 -r recipient2 ... -r recipientN -o output-file file-to-encrypt
文件应该能够由收件人使用 PGP 解密和验证。
*我认为我不必说将您的私钥密码短语存储在明文文件中是什么潜在的坏主意。请注意,在 Windows 上,gpg-agent 将从键盘读取您的私钥并将其缓存。它缓存它的时间段可以在 gpg-agent.conf 文件中设置,尽管我没有尝试过(请参阅此处了解一些潜在的指针;gpg-agent.conf 位于您的主目录中,该目录使用GNUPGHOME env var 或通过设置 HKCU\Software\GNU\GnuPG:HomeDir 字符串变量)。