使用 Gpg4win 命令行使用 public 密钥批量加密

Batch encrypt with public key using Gpg4win command line

我们正在建立我们的第一个 EDI 系统,该系统依赖于使用 OpenPGP 的传入和传出文件加密。使用我们的 public 密钥加密的传入文件,我们可以使用 Gpg4win 的命令行选项使用我们的私钥成功解密:

gpg --batch --passphrase "SOME_KEY" --decrypt-files "%decryptingdir%\*.pgp"

我现在需要做的是相反,并使用我们的合作伙伴 public 密钥加密传出文件。

我一直无法找到任何有关使用 public 密钥批量加密的命令行文档。我假设它的顺序是:

gpg --batch --encrypt-files "%encryptingdir%\*.pgp" --key "SOME_KEY_PATH"

谁能告诉我如何通过命令行实现这种加密?

使用 --recipient 选项表示要加密的密钥。 GnuPG 在选项和命令之间有区别,而选项最好放在第一位。

gpg --batch --recipient [key-id] --encrypt-files "%encryptingdir%\*.pgp"

GnuPG 希望将密钥导入钥匙串,所以 gpg --import [key-file] 首先导入。有黑客使用 --keyring [your-key-file],但简单地导入密钥文件是更安全的方法。

对于 scripted/programmed 操作,最佳做法是始终表示完整指纹。阅读 key ID collisions 以了解短密钥 ID 的问题。