Sample code for 30+ languages & platforms
PHP Extension

Extract PKCS7 from MIME and Decrypt

See more MIME Examples

Extracts the base64-encoded PKCS7 body of a MIME message to a file, and then decrypts using Chilkat Crypt2.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

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

$mime = new CkMime();

$success = $mime->LoadMimeFile('c:/aaworkarea/EmailInBytes.txt');
if ($success != true) {
    print $mime->lastErrorText() . "\n";
    exit;
}

$success = $mime->SaveBody('c:/aaworkarea/smime.p7m');
if ($success != true) {
    print $mime->lastErrorText() . "\n";
    exit;
}

$crypt = new CkCrypt2();

$success = $crypt->AddPfxSourceFile('c:/aaworkarea/my.pfx','pfxPassword');
if ($success == false) {
    print $crypt->lastErrorText() . "\n";
    exit;
}

// Indicate the public-key (PKCS7) encryption/decryption should be used:
$crypt->put_CryptAlgorithm('pki');

$inPath = 'c:/aaworkarea/smime.p7m';
$outPath = 'c:/aaworkarea/decrypted.dat';

$success = $crypt->CkDecryptFile($inPath,$outPath);
if ($success == false) {
    print $crypt->lastErrorText() . "\n";
    exit;
}

print 'Success.' . "\n";

?>