Sample code for 30+ languages & platforms
B4X

Verify XAdES with External File Reference

See more XML Digital Signatures Examples

Demonstrates how to validate an XML digital signature that contains a reference to an external file. (This is one way of doing it..)

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.

'  Load the XAdES file to be validated..
Dim sbXml As ChilkatStringBuilder
sbXml.Initialize
success = sbXml.LoadFile("qa_data/xml_dsig_valid_samples/externalFile/test.pdf.XAdES", "utf-8")
If success = False Then
    Log("Failed to load XAdES input file.")
    Return
End If


Dim validator As ChilkatXmlDSig
validator.Initialize

'  Specify a set of absolute or relative directory paths to be searched for any external file references.
'  Directory paths are separated by semicolon chars.
validator.ExternalRefDirs = "qa_data/externalFiles;qa_data/xml_dsig_valid_samples/externalFile;c:/someOtherDir"

success = validator.LoadSignatureSb(sbXml)
If success = False Then
    Log(validator.LastErrorText)
    Return
End If


'  Validate signatures as usual..
Dim i As Int = 0
Do While i < validator.NumSignatures
    validator.Selector = i

    Dim valid As Boolean = validator.VerifySignature(True)
    Log("Signature " & (i + 1) & " and all reference digests OK = " & valid)

    i = i + 1
Loop