(Tcl) Generate RSA Key and Export to Encrypted PEM
Tcl sample showing how to generate an RSA key and export to encrypted PEM.
load ./chilkat.dll
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set rsa [new_CkRsa]
# Generate a 1024-bit key. Chilkat RSA supports
# key sizes ranging from 512 bits to 4096 bits.
set success [CkRsa_GenerateKey $rsa 1024]
if {$success != 1} then {
puts [CkRsa_lastErrorText $rsa]
delete_CkRsa $rsa
exit
}
# Get the private key as unencrypted XML:
set keyXml [CkRsa_exportPrivateKey $rsa]
puts "$keyXml"
# To encrypt the key -- meaning to get the key in
# an encrypted PEM format -- load it into a PrivateKey object,
# and then export to encrypted PEM:
set privKey [new_CkPrivateKey]
set success [CkPrivateKey_LoadXml $privKey $keyXml]
if {$success != 1} then {
puts [CkPrivateKey_lastErrorText $privKey]
delete_CkRsa $rsa
delete_CkPrivateKey $privKey
exit
}
set strEncPem [CkPrivateKey_getPkcs8EncryptedPem $privKey "myPassword"]
# You now have the private key in an encrypted format,
# which may be (for example) saved to a database
delete_CkRsa $rsa
delete_CkPrivateKey $privKey
|