Sample code for 30+ languages & platforms
AutoIt

Verify XML Digital Signature

See more XML Digital Signatures Examples

Verifies XML signatures in an XML file.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

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

$oSbXml = ObjCreate("Chilkat.StringBuilder")
$bSuccess = $oSbXml.LoadFile("qa_data/xml_dsig_verify/csioz_sample.xml","utf-8")
If ($bSuccess <> True) Then
    ConsoleWrite("Failed to load XML file." & @CRLF)
    Exit
EndIf

$oDsig = ObjCreate("Chilkat.XmlDSig")

; First load the XML containing the signatures to be verified.
$bSuccess = $oDsig.LoadSignatureSb($oSbXml)
If ($bSuccess <> True) Then
    ConsoleWrite($oDsig.LastErrorText & @CRLF)
    Exit
EndIf

; It's possible that an XML document can contain multiple signatures.
; Each can be verified as follows:
Local $i = 0
While $i < $oDsig.NumSignatures
    ; Select the Nth signature by setting the Selector property.
    $oDsig.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.
Local $bVerifyReferenceDigests = True
Local $bVerified = $oDsig.VerifySignature($bVerifyReferenceDigests)
    ConsoleWrite("Signature " & ($i + 1) & " verified = " & $bVerified & @CRLF)

    $i = $i + 1
Wend