(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.Note: This example requires Chilkat v11.0.0 or greater.
load ./chilkat.dll
set success 0
# 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"]
if {$success == 0} then {
puts [CkPrivateKey_lastErrorText $pkey]
delete_CkPrivateKey $pkey
exit
}
set rsa [new_CkRsa]
# Import the private key into the RSA object:
set success [CkRsa_UsePrivateKey $rsa $pkey]
if {$success == 0} 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
|