Unicode C
Unicode C
Apple Keychain - Import RSA Private Key
See more Apple Keychain Examples
Imports an RSA private key to the Apple Keychain.Note: This example requires Chilkat v10.0.0 or greater.
Chilkat Unicode C Downloads
#include <C_CkPrivateKeyW.h>
void ChilkatSample(void)
{
BOOL success;
const wchar_t *pemPath;
const wchar_t *pemPassword;
HCkPrivateKeyW privKey;
success = FALSE;
pemPath = L"/Users/chilkat/qa_data/rsa/rsaPrivKey_pkcs8.pem";
// Provide a password if your PEM is encrypted. Otherwise pass the empty string.
pemPassword = L"";
privKey = CkPrivateKeyW_Create();
success = CkPrivateKeyW_LoadAnyFormatFile(privKey,pemPath,pemPassword);
if (success == FALSE) {
wprintf(L"%s\n",CkPrivateKeyW_lastErrorText(privKey));
CkPrivateKeyW_Dispose(privKey);
return;
}
// In Apple Keychain, the label for an item such as a private key is a user-friendly identifier that helps distinguish one item from
// another in the Keychain. It is typically a brief name or description associated with the item.
// The label is displayed in the Keychain Access application and is useful for quickly identifying the purpose
// or source of a specific key, certificate, or password entry.
// The label does not affect the functionality or security of the item; it is purely for organizational purposes.
// You can edit or assign labels to make your Keychain easier to navigate.
// On MacOS, you can save the private key to the Keychain by calling SavePkcs8File with a "filename" in the format"keychain:<label>"
success = CkPrivateKeyW_SavePkcs8File(privKey,L"keychain:MyRsaKey123");
if (success == FALSE) {
wprintf(L"%s\n",CkPrivateKeyW_lastErrorText(privKey));
CkPrivateKeyW_Dispose(privKey);
return;
}
wprintf(L"Success.\n");
// Here you can see:
//
//
CkPrivateKeyW_Dispose(privKey);
}