Sample code for 30+ languages & platforms
Unicode C++

Serialize a PFX to BinData

See more PFX/P12 Examples

Demonstrates Pfx.ToBd, which serializes the current PFX contents as PKCS#12 data into a BinData object, using the supplied output password.

Background. This is the in-memory equivalent of ToFile, producing the PKCS#12 bytes for further processing or transport.

Chilkat Unicode C++ Downloads

Unicode C++
#include <CkPfxW.h>
#include <CkBinDataW.h>

void ChilkatSample(void)
    {
    bool success = false;

    CkPfxW pfx;

    //  The file path is relative to the application's current working directory.  An absolute path
    //  may also be used.  Supply the path appropriate to your own environment.
    //  The PFX password should come from a secure source rather than being hard-coded.
    const wchar_t *password = L"myPfxPassword";
    success = pfx.LoadPfxFile(L"qa_data/identity.pfx",password);
    if (success == false) {
        wprintf(L"%s\n",pfx.lastErrorText());
        return;
    }

    //  Serialize the PFX contents as PKCS#12 data into a BinData, using the given output password.
    const wchar_t *outputPassword = L"myOutputPassword";
    CkBinDataW bd;
    success = pfx.ToBd(outputPassword,bd);
    if (success == false) {
        wprintf(L"%s\n",pfx.lastErrorText());
        return;
    }

    wprintf(L"Serialized %d bytes of PKCS#12 data.\n",bd.get_NumBytes());
    }