Torna al Thread
XmlDocument doc = new XmlDocument() { PreserveWhitespace = true };
MemoryStream ms = new MemoryStream(signedBytes);
doc.Load(ms);
CspParameters cspParams = new CspParameters();
cspParams.KeyContainerName = "XML_DSIG_RSA_KEY";
RSACryptoServiceProvider rsaKey = new RSACryptoServiceProvider(cspParams);
SignedXml signedXml = new SignedXml(doc);
XmlNodeList nodeList = doc.GetElementsByTagName("ds:Signature");
XmlNodeList certificates = doc.GetElementsByTagName("ds:X509Certificate");
X509Certificate2 dcert2 = new X509Certificate2(Convert.FromBase64String(certificates[0].InnerText));
foreach (XmlElement element in nodeList)
{
signedXml.LoadXml(element);
bool passes = signedXml.CheckSignature(dcert2, true);
}