Sample code for 30+ languages & platforms
Perl

Verify Factura Electronica Chile SII (iso-8859-1)

See more XAdES Examples

Demonstrates how to verify SII XML stored as iso-8859-1 having just a single signature.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

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

# The signed XML to be verified in this example contains the following:

# <?xml version="1.0" encoding="ISO-8859-1"?>
# <DTE version="1.0" xmlns="http://www.sii.cl/SiiDte">
# <Documento ID="F13T34">
# ...
# </Documento>
# <Signature xmlns="http://www.w3.org/2000/09/xmldsig#">
# ....
# </Signature>
# </DTE>

# Load the signed XML into sbXml -- telling Chilkat to interpret the bytes as iso-8859-1 
$sbXml = chilkat::CkStringBuilder->new();
$success = $sbXml->LoadFile("qa_data/xml_dsig/sii_cl/signed1.xml","iso-8859-1");
if ($success == 0) {
    print "Failed to load input file." . "\r\n";
    exit;
}

$dsig = chilkat::CkXmlDSig->new();

$success = $dsig->LoadSignatureSb($sbXml);
if ($success != 1) {
    print $dsig->lastErrorText() . "\r\n";
    exit;
}

$bVerifyReferenceDigests = 1;
$bVerified = $dsig->VerifySignature($bVerifyReferenceDigests);
if ($bVerified == 0) {
    print $dsig->lastErrorText() . "\r\n";
    exit;
}

print "Signature verified = " . $bVerified . "\r\n";