(PHP ActiveX) Decrypt a .p7m File (using a PFX)
PHP ActiveX sample code showing how to decrypt a .p7m using a .p12 / .pfx certificate w/ private key.
<?php
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// For versions of Chilkat < 10.0.0, use new COM('Chilkat_9_5_0.Chilkat.Crypt2')
$crypt = new COM("Chilkat.Crypt2");
// Use a digital certificate and private key from a PFX file (.pfx or .p12).
$pfxPath = 'myCertAndKey.pfx';
$pfxPassword = 'test123';
$success = $crypt->AddPfxSourceFile($pfxPath,$pfxPassword);
if ($success != 1) {
print $crypt->LastErrorText . "\n";
exit;
}
// Set the outPath to whatever is appropriate.
// If you are decrypting a PDF, your output might be "out.pdf"...
$inPath = 'smime.p7m';
$outPath = 'original.txt';
// Indicate that we're doing public key decryption (i.e. PKCS7)
$crypt->CryptAlgorithm = 'pki';
$success = $crypt->CkDecryptFile($inPath,$outPath);
if ($success == 0) {
print $crypt->LastErrorText . "\n";
exit;
}
print 'Success.' . "\n";
?>
|