GPG 在 powershell 脚本中使用多个 public 密钥加密文件

GPG Encrypt file with multiple public keys in a powershell script

我正在尝试使用多个 public 密钥加密文件,并使用与文档中相同的语法,但它抛出了以下错误。

错误信息

gpg : 用法:gpg [选项] --encrypt [文件名] 在 line:10 char:1 + gpg --encrypt \ --recipient "Sree" \ --recipient "Matam" \ "C:Reports\ ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : NotSpecified: (用法: gpg [opt...rypt [文件名]:String) [], RemoteException + FullyQualifiedErrorId : NativeCommandError

P.S:此加密是作为 powershell 脚本的一部分完成的

当我使用单个密钥加密时,它工作正常。有人可以指出我做错了什么吗?

gpg --encrypt \ --recipient "Sree" \ --recipient "Matam" \ "C:\Reports\test_encryption.xlsx"

我用这个线程来指导我,但看起来我遗漏了什么

Encryption with multiple different keys?

您一次用一个密钥加密。

用一个密钥加密后,您可以用第二个密钥重新加密密文。

但是,这在语义上没有任何合法目的。 Public 密钥用于以规定的方式提供保密性和保密性。我用我的私钥签署了一些东西,然后用你的 public 密钥为你加密。你用你的私钥恢复它并用我的 public 密钥验证它。任何对这个 public 密钥或那个私钥的过度使用充其量都是有问题的。

终于可以正常工作了。感谢@user2864740

$BeforeEncryptfilePathGPG = "C:\Reports\Test_Encryption.xlsx"
$SignedOrEncryptedLoc = "C:\Reports\Test_Encryption.xlsx.gpg"
gpg --output $SignedOrEncryptedLoc --always-trust --encrypt --recipient "Sreekar" --recipient "Matam" $BeforeEncryptfilePathGPG