C
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 C Downloads
#include <C_CkPfx.h>
#include <C_CkBinData.h>
void ChilkatSample(void)
{
BOOL success;
HCkPfx pfx;
const char *password;
const char *outputPassword;
HCkBinData bd;
success = FALSE;
pfx = CkPfx_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 = "myPfxPassword";
success = CkPfx_LoadPfxFile(pfx,"qa_data/identity.pfx",password);
if (success == FALSE) {
printf("%s\n",CkPfx_lastErrorText(pfx));
CkPfx_Dispose(pfx);
return;
}
// Serialize the PFX contents as PKCS#12 data into a BinData, using the given output password.
outputPassword = "myOutputPassword";
bd = CkBinData_Create();
success = CkPfx_ToBd(pfx,outputPassword,bd);
if (success == FALSE) {
printf("%s\n",CkPfx_lastErrorText(pfx));
CkPfx_Dispose(pfx);
CkBinData_Dispose(bd);
return;
}
printf("Serialized %d bytes of PKCS#12 data.\n",CkBinData_getNumBytes(bd));
CkPfx_Dispose(pfx);
CkBinData_Dispose(bd);
}