Visual C++ Examples

ChilkatHOMEAndroid™ASPVisual BasicVB.NETC#iOS (IPhone)Objective-CC++CMFCDelphiFoxProJavaPerl
PHP ExtensionPHP ActiveXPythonPowerShellRubySQL ServerVBScript

C++ Examples

CkString
Byte Array
Bounced Mail
Bz2
Character Encoding
CSV
DH Key Exchange
DKIM/DomainKeys
Digital Certificates
Digital Signatures
DSA
Email
Email Object
Encryption
FTP
HTML Conversion
HTTP
IMAP
MHT / HTML Email
POP3
RSA
S/MIME
SMTP
Socket
Spider
SSH Key
SSH
SSH Tunnel
SFTP
Tar
Upload
XML
XMP
Zip Compression


More Examples...
Amazon S3
NTLM
FileAccess
RSS
Atom
Self-Extractor
Service
PPMD
Deflate
Bzip2
LZW

 

 

 

 

 

 

 

 

Decrypt MIME with PFX

Demonstrates how to decrypt MIME using a PFX (containing a digital certificate with private key). The content-type of an encrypted MIME message looks like this:

Content-Type: application/x-pkcs7-mime;
	name="smime.p7m"

Downloads:

MS Windows Visual C/C++ Libraries
Linux/CentOS C/C++ Libraries
MAC OS X C/C++ Libraries
Solaris C/C++ Libraries
C++ Builder Libraries
#include <CkMime.h>
#include <CkCertStore.h>
#include <CkCert.h>
#include <CkPrivateKey.h>

void ChilkatSample(void)
    {
    CkMime mime;

    bool success;
    success = mime.UnlockComponent("Anything for 30-day trial");
    if (success == false) {
        printf("Failed to unlock component\n");
        return;
    }

    success = mime.LoadMimeFile("encryptedEmail.eml");
    if (success != true) {
        printf("%s\n",mime.lastErrorText());
        return;
    }

    CkCertStore certStore;
    success = certStore.LoadPfxFile("myPfx.pfx","myPfxPassword");
    if (success != true) {
        printf("%s\n",certStore.lastErrorText());
        return;
    }

    //  Find the certificate by email address.  There are many
    //  ways to find certificates within a Chilkat certificate store
    //  object...
    CkCert *cert = 0;
    cert = certStore.FindCertBySubjectE("support@chilkatsoft.com");
    if (cert == 0 ) {
        printf("%s\n",certStore.lastErrorText());
        return;
    }

    CkPrivateKey *privKey = 0;
    privKey = cert->ExportPrivateKey();
    if (privKey == 0 ) {
        printf("%s\n",cert->lastErrorText());
        delete cert;
        return;
    }

    success = mime.Decrypt2(*cert,*privKey);
    if (success != true) {
        printf("%s\n",mime.lastErrorText());
        return;
    }

    //  Show the decrypted MIME:
    printf("%s\n",mime.getMime());

    delete cert;
    delete privKey;


    }

© 2000-2010 Chilkat Software, Inc. All Rights Reserved.

Mail Component · .NET Mail Component · XML Parser