C++
C++
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 C++ Downloads
#include <CkMime.h>
#include <CkCrypt2.h>
void ChilkatSample(void)
{
bool success = false;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkMime mime;
success = mime.LoadMimeFile("c:/aaworkarea/EmailInBytes.txt");
if (success != true) {
std::cout << mime.lastErrorText() << "\r\n";
return;
}
success = mime.SaveBody("c:/aaworkarea/smime.p7m");
if (success != true) {
std::cout << mime.lastErrorText() << "\r\n";
return;
}
CkCrypt2 crypt;
success = crypt.AddPfxSourceFile("c:/aaworkarea/my.pfx","pfxPassword");
if (success == false) {
std::cout << crypt.lastErrorText() << "\r\n";
return;
}
// Indicate the public-key (PKCS7) encryption/decryption should be used:
crypt.put_CryptAlgorithm("pki");
const char *inPath = "c:/aaworkarea/smime.p7m";
const char *outPath = "c:/aaworkarea/decrypted.dat";
success = crypt.CkDecryptFile(inPath,outPath);
if (success == false) {
std::cout << crypt.lastErrorText() << "\r\n";
return;
}
std::cout << "Success." << "\r\n";
}