Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/330.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# java中检查.net签名的问题_C#_Java_Digital Signature - Fatal编程技术网

C# java中检查.net签名的问题

C# java中检查.net签名的问题,c#,java,digital-signature,C#,Java,Digital Signature,我正在用.net中的x509Certificate对xml文档进行签名。如果我使用signedXml.CheckSignature函数在.net中验证签名,签名就可以了。如果我尝试在java中检查相同的签名,我总是得到java.lang.RuntimeException:Error signature:Error signature。有人有这方面的经验吗 public static bool verifyXMLSignature(XmlDocument ADoc, string ACertifi

我正在用.net中的x509Certificate对xml文档进行签名。如果我使用signedXml.CheckSignature函数在.net中验证签名,签名就可以了。如果我尝试在java中检查相同的签名,我总是得到java.lang.RuntimeException:Error signature:Error signature。有人有这方面的经验吗

public static bool verifyXMLSignature(XmlDocument ADoc, string ACertificateSerial)
    {
        X509Certificate2 cert = null;
        cert = podpisi.getCertificate(ACertificateSerial);



        // Create a new SignedXml object and pass it
        // the XML document class.
        SignedXml signedXml = new SignedXml(ADoc);

        // Find the "Signature" node and create a new
        // XmlNodeList object.
        XmlNodeList nodeList = ADoc.GetElementsByTagName("Signature");

        // Load the signature node.
        signedXml.LoadXml((XmlElement)nodeList[0]);

        // Check the signature and return the result.
        return signedXml.CheckSignature(cert, true);

    }

您发布的代码是工作的c#代码-非工作的代码是尚未发布的Java代码。 了解您的Java代码将允许我们指出您的问题可能在代码中的位置