Sowmya Sirsi

Sowmya Sirsi

  • NA
  • 173
  • 40.2k

Parameter cannot be null

Dec 10 2021 10:19 AM

Hi Team,

 

I am trying to create and verify signature using DSA algo. where in return result = false and I am getting a error in the below part of code.

ERROR: value cannot be null parameter value: value

 

CODE:

public bool CheckSignature(string signedxmldata)
        {
            Console.WriteLine("Verifying ");
            bool result = false;
            XmlDocument objDSAKeyPairXMLdocument = new XmlDocument();
            objDSAKeyPairXMLdocument.Load("C:/Users/sowmya_sirsi/XMLSignatureDSAPublicKey.xml");
            string strDSAKeyPairXML = objDSAKeyPairXMLdocument.InnerXml;

            // Create a SignedXml.
            SignedXml signedXml = new SignedXml();


            //// Uncomment these lines if you intend to comment KeyInfo in the previous function
            DSA objDSAkeyPair = DSA.Create();
            objDSAkeyPair.FromXmlString(strDSAKeyPairXML);
            KeyInfo keyInfo = new KeyInfo();
            keyInfo.AddClause(new DSAKeyValue(objDSAkeyPair));
            signedXml.KeyInfo = keyInfo;


            // Load the XML.
            XmlDocument xmlDocument = new XmlDocument();
            xmlDocument.LoadXml(signedxmldata);
            xmlDocument.PreserveWhitespace = true;
            try
            {

             
                XmlNodeList nodeList = xmlDocument.GetElementsByTagName("Signature");
                string Short_Fall = string.Empty;
                foreach (XmlNode node in nodeList)
                {
                    Short_Fall = node.InnerText;
                    
                }
                string respass = "Shree";
                string bankpass = "";
               
                signedXml.LoadXml((XmlElement)nodeList[0]);

                
                if (signedXml.CheckSignature())
                {
                    result = true;
                    Console.WriteLine("Signature check OK");
                }
                else
                {
                    Console.WriteLine("Signature check FAILED");
                }


            }
            catch(Exception e)
            {
                Console.WriteLine("Exception..." + e.Message); // value cannot be null parameter value: value
            }

                 
            return result;

        }

Can anyone please suggest me where am I going wrong?

 

Thanks

 

 


Answers (2)