Unicode C
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
#include <C_CkPfxW.h>
#include <C_CkBinDataW.h>
void ChilkatSample(void)
{
BOOL success;
HCkPfxW pfx;
const wchar_t *password;
const wchar_t *outputPassword;
HCkBinDataW bd;
success = FALSE;
pfx = CkPfxW_Create();
// 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.
password = L"myPfxPassword";
success = CkPfxW_LoadPfxFile(pfx,L"qa_data/identity.pfx",password);
if (success == FALSE) {
wprintf(L"%s\n",CkPfxW_lastErrorText(pfx));
CkPfxW_Dispose(pfx);
return;
}
// Serialize the PFX contents as PKCS#12 data into a BinData, using the given output password.
outputPassword = L"myOutputPassword";
bd = CkBinDataW_Create();
success = CkPfxW_ToBd(pfx,outputPassword,bd);
if (success == FALSE) {
wprintf(L"%s\n",CkPfxW_lastErrorText(pfx));
CkPfxW_Dispose(pfx);
CkBinDataW_Dispose(bd);
return;
}
wprintf(L"Serialized %d bytes of PKCS#12 data.\n",CkBinDataW_getNumBytes(bd));
CkPfxW_Dispose(pfx);
CkBinDataW_Dispose(bd);
}