用 public 键签署 XML

sign XML with public Key

我是 .Net MVC 的新手,甚至是 Signatures 的新手。

我必须签署一个 XML 文件,然后将其与响应流一起发送给我的客户。

Aftwe 与我能够签署我的代码的一大堆战斗 XML 信封。 使用 RSACryptoServiceProvider 私钥、Dataobject、KeyInfo 和一切。

但后来我的客户告诉我,我只从他那里得到了一把 public 钥匙。

网上查了一天还是不知道怎么办。

所以我的问题是: 如何使用 C# 在 .Net MVC 中使用 public 密钥对我的 XML 进行签名?

您不能使用 public 密钥签署 XML 文件,public 密钥仅用于验证。

要进行签名,您需要一个私钥,该密钥可以由 OpenSSL 生成。你可以暂时处理这个,然后你应该要求你的客户将你的代码与他的密钥库实现合并。

一旦您能够对文件进行签名,您将看到 base64 格式的证书作为签名文档的一部分,该证书包含一个 public 密钥,用于验证由私钥。