签名验证失败
您好,我无法验证从服务器收到的响应的签名。我正在使用以下方法来验证它。
using (MemoryStream ms = new MemoryStream(System.IO.File.ReadAllBytes("D:\\Response.xml")))
{
XmlDocument responseDocument = new XmlDocument();
responseDocument.PreserveWhitespace = true;
responseDocument.Load(ms);
SignedXml sxml = new SignedXml(responseDocument);
XmlNodeList newNodeList = newDoc.GetElementsByTagName("Signature");
sxml.LoadXml((XmlElement)newNodeList[0]);
sxml.CheckSignature();
}
任何人都可以建议可能出现的问题吗?以及如何解决呢? 代码在c#.net中
Hi I am not able to verify signature for the response that I receive from server. I am using the following method to verify it.
using (MemoryStream ms = new MemoryStream(System.IO.File.ReadAllBytes("D:\\Response.xml")))
{
XmlDocument responseDocument = new XmlDocument();
responseDocument.PreserveWhitespace = true;
responseDocument.Load(ms);
SignedXml sxml = new SignedXml(responseDocument);
XmlNodeList newNodeList = newDoc.GetElementsByTagName("Signature");
sxml.LoadXml((XmlElement)newNodeList[0]);
sxml.CheckSignature();
}
Can anyone suggest what can be possible issues? And how to resolve it?
Code is in c#.net
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你的代码似乎是错误的。您的代码会遍历所有签名标签(很好)并尝试在每个签名标签内查找签名标签(奇怪?!)
请尝试使用以下代码:
Your code seems to be wrong. Your code iterates through all Signature tags (fine) and tries to look for a signature tag inside each signature tag (strange?!)
Try this code instead:
问题来自签名生成过程。现在已经解决了。
以上方法可以正确验证签名。
Issue was from signature generation process. It is resolved now.
Above method is correct to verify the signature.