C
C
Load a Private Key from XML Text
See more Private Key Examples
Demonstrates the Chilkat PrivateKey.LoadXml method, which loads a private key from XML text. The only argument is the XML string. Supported roots include RSAKeyValue, DSAKeyValue, ECCKeyValue, and Ed25519KeyValue.
Background: XML key representations such as
RSAKeyValue come from the .NET/XML-DSIG world, where keys are exchanged as XML elements. This loads that form — the inverse of GetXml — which is handy for interoperating with .NET code or systems built around XML signatures. It is a plaintext format, so protect the XML like any unencrypted key material.Chilkat C Downloads
#include <C_CkPrivateKey.h>
void ChilkatSample(void)
{
BOOL success;
HCkPrivateKey privKey;
const char *xmlText;
success = FALSE;
// Demonstrates the PrivateKey.LoadXml method, which loads a private key from XML text. The only
// argument is the XML string. Supported roots include RSAKeyValue, DSAKeyValue, ECCKeyValue,
// and Ed25519KeyValue.
privKey = CkPrivateKey_Create();
// The XML text of a private key (for example as produced by GetXml).
xmlText = "<RSAKeyValue><Modulus>...</Modulus><Exponent>AQAB</Exponent>...</RSAKeyValue>";
success = CkPrivateKey_LoadXml(privKey,xmlText);
if (success == FALSE) {
printf("%s\n",CkPrivateKey_lastErrorText(privKey));
CkPrivateKey_Dispose(privKey);
return;
}
printf("Loaded a %s private key.\n",CkPrivateKey_keyType(privKey));
CkPrivateKey_Dispose(privKey);
}