假设我有需要使用PGP加密的日常文件(然后通过电子邮件),我想要自动完成这项任务。我将使用Windows来操作文件(检查日期/时间等),但是如何使PowerShell部件自动化呢?
我正在使用PGP软件手动,但我没有看到任何命令行选项。我确实看到一个命令行软件从同一个地方(赛门铁克),但3000美元,我做不到。
我找到了GnuPG,但是(根据GnuPG的FAQ),如果使用v2.x或如果使用v5.x,则PGP必须使用更多的选项,则PGP无法解密GnuPG文件。接收用户不愿意在需要额外选项的情况下使事情变得更加复杂。
简而言之,我正在寻找一个用于Windows的命令行PGP。
发布于 2012-02-28 06:47:11
不兼容仅适用于PGP的v2.x。对于v5.x,GPG (而不是如您所述的PGP )需要有更多选择。
如果PGP 2.x的问题确实是个问题,那么您可能不得不为PGP命令行版本做准备。请注意,PGP v5似乎已于1997年发行.和PGP v2是在1992-ish,所以除非您处理的收件人没有升级,否则您可能有很好的覆盖率。
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手册中是很难找到的;它们在这里。
现在使用批处理模式--批处理模式,--密码文件--让您的私钥解锁短语从给定文件中读取,而不是通过gpg-agent*从键盘读取,并且始终信任收件人的键。如果不需要对输出进行签名,那么显然不需要使用或解锁私钥。
gpg -v --always-trust --batch --passphrase-file mypassphrasefile -se -r recipient1 -r recipient2 ... -r recipientN -o output-file file-to-encrypt
文件应该能够由接收者用PGP解密和验证。
*我想我不必说把你的私钥密码存储在一个明文文件中是什么可能的坏主意。请注意,在Windows上,gpg代理将从键盘读取您的私钥并缓存它。它缓存它的时间段可以在gpg-agent.conf文件中设置,尽管我还没有尝试过(看这里有一些潜在的指示;gpg-agent.conf驻留在使用GNUPGHOME或通过设置HKCU\Software\GNU\GnuPG:HomeDir字符串变量设置的主dir中)。
发布于 2012-02-28 01:51:04
我建议您在您的侧使用GPG,并使用自解密存档选项。您需要在您的Windows框上使用GPG,并且只需要附加一个密码。可能要玩一段时间,因为我已经很多年没有这样做了。
https://security.stackexchange.com/questions/12223
复制相似问题