Lua Requires Chilkat v11.0.0+
Lua
Generate an ECDSA Key
See more ECC Examples
Demonstrates how to generate an ECDSA key.Chilkat Lua Downloads
local chilkat = require("chilkat")
-- This requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.
-- Create a Fortuna PRNG and seed it with system entropy.
-- This will be our source of random data for generating the ECC private key.
local fortuna = chilkat.Prng.new()
local entropy = fortuna:get_entropy(32, "base64")
local success = fortuna:add_entropy(entropy, "base64")
local ecc = chilkat.Ecc.new()
-- Generate a random ECC private key on the secp256r1 curve.
-- Chilkat also supports other curves, such as secp384r1, secp521r1, and secp256k1.
local privKey = chilkat.PrivateKey.new()
success = ecc:gen_key("secp256r1", fortuna, privKey)
if not success then
print(ecc.last_error_text)
return
end
print(privKey:get_xml())
-- Save the private key to PKCS8 encrypted PEM
-- (The private key can be saved in a variety of different formats. See the online reference documentation.)
success = privKey:save_pkcs8_encrypted_pem_file("pemPassword", "myPemFiles/eccKey123.pem")
if not success then
print(privKey.last_error_text)
end
print("finished.")