Visual FoxPro
Visual FoxPro
Verify XML Digital Signature
See more XML Digital Signatures Examples
Verifies XML signatures in an XML file.Chilkat Visual FoxPro Downloads
LOCAL lnSuccess
LOCAL loSbXml
LOCAL loDsig
LOCAL i
LOCAL lnBVerifyReferenceDigests
LOCAL lnBVerified
lnSuccess = 0
* This example requires the Chilkat API to have been previously unlocked.
* See Global Unlock Sample for sample code.
loSbXml = CreateObject('Chilkat.StringBuilder')
lnSuccess = loSbXml.LoadFile("qa_data/xml_dsig_verify/csioz_sample.xml","utf-8")
IF (lnSuccess <> 1) THEN
? "Failed to load XML file."
RELEASE loSbXml
CANCEL
ENDIF
loDsig = CreateObject('Chilkat.XmlDSig')
* First load the XML containing the signatures to be verified.
lnSuccess = loDsig.LoadSignatureSb(loSbXml)
IF (lnSuccess <> 1) THEN
? loDsig.LastErrorText
RELEASE loSbXml
RELEASE loDsig
CANCEL
ENDIF
* It's possible that an XML document can contain multiple signatures.
* Each can be verified as follows:
i = 0
DO WHILE i < loDsig.NumSignatures
* Select the Nth signature by setting the Selector property.
loDsig.Selector = i
* The bVerifyReferenceDigests argument determines if we want
* to also verify each reference digest. If set to 0,
* then only the SignedInfo part of the Signature is verified.
lnBVerifyReferenceDigests = 1
lnBVerified = loDsig.VerifySignature(lnBVerifyReferenceDigests)
? "Signature " + STR(i + 1) + " verified = " + STR(lnBVerified)
i = i + 1
ENDDO
RELEASE loSbXml
RELEASE loDsig