(JavaScript) Get an EC Key in Raw Hex Format
Demonstrates how to get the private and public key parts of an EC (ECDSA) key in lowercase hex formmat.
Note: This example requires Chilkat v9.5.0.83 or greater.
var success = false;
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Load an EC key from some format..
var privKey = new CkPrivateKey();
// This loads an ECDSA key from an unencrypted PEM file (no password required).
success = privKey.LoadAnyFormatFile("qa_data/ecc/openssl_ecc_privKey.pem","");
if (success == false) {
console.log(privKey.LastErrorText);
return;
}
// The key type should be "ecc" to indicate an EC key.
console.log("key type = " + privKey.KeyType);
// What is the size of the private key in bits?
console.log("size in bits = " + privKey.BitLength);
// Get the private and public EC key parts in raw hex format:
var sbPubKeyHex = new CkStringBuilder();
var privKeyHex = privKey.GetRawHex(sbPubKeyHex);
// If the private key size in bits is 256, then we should have a 32-byte key (a 64 character hex string).
console.log("private key = " + privKeyHex);
// The public key is composed of the "x" and "y" parts, and is composed like this: 04||HEX(x)||HEX(y)
console.log("public key = " + sbPubKeyHex.GetAsString());
// Sample output:
// key type = ecc
// size in bits = 256
// private key = ced36f2ba3332be439f79143d69937fc52494cd38e45243c3ea05db183919f1b
// public key = 045b4edcd501831740895f5907feabb71587076a6314d9d5141f9f8c33a478b8ce08b8dfd2a091eb6355803d7e729876c790bc0b176f2015f3bb103813753f676a
|