Sample code for 30+ languages & platforms
PHP ActiveX

Example: Crypt2.GetSignedAttributes method

Demonstrates how to call the GetSignedAttributes method.

Chilkat PHP ActiveX Downloads

PHP ActiveX
<?php

$success = 0;

$crypt = new COM("Chilkat.Crypt2");

$bdPkcs7 = new COM("Chilkat.BinData");
$success = $bdPkcs7->LoadFile('qa_data/cades/CAdES-T/Signature-C-T-1.p7m');
if ($success == 0) {
    print $bdPkcs7->LastErrorText . "\n";
    exit;
}

$json = new COM("Chilkat.JsonObject");
$json->EmitCompact = 0;

$sbJson = new COM("Chilkat.StringBuilder");
$i = 0;
$tryNext = 1;
while ($tryNext) {
    if ($crypt->GetSignedAttributes($i,$bdPkcs7,$sbJson) == 1) {
        $json->LoadSb($sbJson);
        print $i . ': ' . "\n";
        print $json->emit() . "\n";
    }
    else {
        $tryNext = 0;
    }

    $i = $i + 1;
}

// Sample output:

// 0: 
// {
//   "signedAttributes": [
//     {
//       "oid": "1.2.840.113549.1.9.3",
//       "name": "Content Type"
//     },
//     {
//       "oid": "1.2.840.113549.1.9.5",
//       "name": "Signing Time"
//     },
//     {
//       "oid": "1.2.840.113549.1.9.4",
//       "name": "Message Digest"
//     },
//     {
//       "oid": "1.2.840.113549.1.9.16.2.47",
//       "name": "Signing Certificate V2"
//     }
//   ]
// }

?>