(Tcl) Create PKCS1 RSA Signature with PEM Private Key
Demonstrates how to load a private key from a PEM file and create a PKCS1 RSA digital signature.
load ./chilkat.dll
# This example assumes the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set pkey [new_CkPrivateKey]
# Load the private key from an RSA PEM file:
set success [CkPrivateKey_LoadPemFile $pkey "pvkey2_rsa.pem"]
# Get the private key in XML format:
set pkeyXml [CkPrivateKey_getXml $pkey]
set rsa [new_CkRsa]
# Import the private key into the RSA object:
set success [CkRsa_ImportPrivateKey $rsa $pkeyXml]
if {$success != 1} then {
puts [CkRsa_lastErrorText $rsa]
delete_CkPrivateKey $pkey
delete_CkRsa $rsa
exit
}
# Get the signature as hex.
CkRsa_put_EncodingMode $rsa "hex"
set strData "This is the string to be signed."
# Sign the string using the sha-1 hash algorithm.
# Other valid choices are "md2", "md5", "sha256",
# "sha384", and "sha512".
set hexSig [CkRsa_signStringENC $rsa $strData "sha-1"]
puts "$hexSig"
puts "Success!"
delete_CkPrivateKey $pkey
delete_CkRsa $rsa
|