PHP Requires Chilkat v11.4.0+
Chilkat2 PHP
Example: Mime.GetDecryptCertInfo method
Demonstrates theGetDecryptCertInfo method.
Chilkat PHP Downloads
<?php
use Chilkat2\JsonObject;
use Chilkat2\Mime;
$mime = new Mime();
// Load MIME that is has Content-Type like this:
// Content-Type: application/pkcs7-mime; smime-type="enveloped-data"; name="smime.p7m"; smime-type="enveloped-data"
try {
$mime->LoadMimeFile('qa_data/mime/enveloped_data.eml');
// Get information about the certificate that would be needed to decrypt.
// An enveloped-data can potentially be decrypted by multiple certificates if it was encrypted in a way that allows it,
// but in most cases, only a single certificate with associated private key (that of the message recipient) is possible.
$json = new JsonObject();
$mime->GetDecryptCertInfo($json);
} catch (\Chilkat2\Exception $e) {
echo $e->getMessage(), "\n";
exit;
}
$json->EmitCompact = false;
echo $json->Emit(), "\n";
// Sample output:
// {
// "recipientInfo": [
// {
// "serial": "****",
// "issuerCN": "****"
// }
// ]
// }
// Get each certificate's information like this:
$serial = '';
$issuerCN = '';
$i = 0;
$count = $json->SizeOfArray('recipientInfo');
while ($i < $count) {
$json->I = $i;
$serial = $json->StringOf('recipientInfo[i].serial');
$issuerCN = $json->StringOf('recipientInfo[i].issuerCN');
$i = $i + 1;
}