Sample code for 30+ languages & platforms
B4X

Verify XML Digital Signature

See more XML Digital Signatures Examples

Verifies XML signatures in an XML file.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

'  This example requires the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

Dim sbXml As ChilkatStringBuilder
sbXml.Initialize
success = sbXml.LoadFile("qa_data/xml_dsig_verify/csioz_sample.xml", "utf-8")
If success <> True Then
    Log("Failed to load XML file.")
    Return
End If


Dim dsig As ChilkatXmlDSig
dsig.Initialize

'  First load the XML containing the signatures to be verified.
success = dsig.LoadSignatureSb(sbXml)
If success <> True Then
    Log(dsig.LastErrorText)
    Return
End If


'  It's possible that an XML document can contain multiple signatures.
'  Each can be verified as follows:
Dim i As Int = 0
Do While i < dsig.NumSignatures
    '  Select the Nth signature by setting the Selector property.
    dsig.Selector = i

    '  The bVerifyReferenceDigests argument determines if we want
    '  to also verify each reference digest.  If set to False,
    '  then only the SignedInfo part of the Signature is verified.
    Dim bVerifyReferenceDigests As Boolean = True
    Dim bVerified As Boolean = dsig.VerifySignature(bVerifyReferenceDigests)
    Log("Signature " & (i + 1) & " verified = " & bVerified)

    i = i + 1
Loop