繁体   English   中英

验证 SignedXml 的最佳实践

[英]Best practices for validating SignedXml

何时使用 CheckSignature() -确定 Signature 属性是否使用签名中的公钥进行验证。

超过

CheckSignature(X509Certificate2, Boolean) -确定 Signature 属性是否验证指定的 X509Certificate2 object 以及证书是否有效(可选)。

https://docs.microsoft.com/en-us/dotnet/api/system.security.cryptography.xml.signedxml.checksignature?view=dotnet-plat-ext-6.0

通常,使用无参数CheckSignature()是一个坏主意。 仅当您还验证 KeyInfo 中的密钥是“正确的”和/或“可信赖的”时,它才是真正合适的。 这有点难做......所以,基本上,永远不要调用这个版本。

CheckSignature(AsymmetricAlgorithm)CheckSignature(X509Certificate2, bool)重载通过假设您已经确定输入是上下文可接受的密钥来避免此问题。

(意见:此外,SignedXml 是一个基于非常糟糕的规范的古老组件。除非您必须与已经在使用它的东西进行互操作,否则不要使用它。)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM