Tcl
Tcl
RSA Encrypt with Modulus and Exponent
See more RSA Examples
Demonstrates how to RSA encrypt with a given modulus and exponent.Chilkat Tcl Downloads
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 rsa [new_CkRsa]
# Assuming you already have a base64 modulus and exponent,
# wrap it in XML like this:
set modulus "qMBRpdYrAy5aMmo31NErUizh5sbweguSmh4wlK6uJEIDl+kwTlROnE34KOFExeTbJSX0WygPi+vWl0yNq7buIMUKpytossAAWut5khO3CQJxTk7G2gnEPNUUXHiExGgNrLzcSLv8YIlfVALhoRWyC67KOL+a+3taNq3h+BHeWhM="
set exponent "AQAB"
set xml [new_CkXml]
CkXml_put_Tag $xml "RSAPublicKey"
CkXml_NewChild2 $xml "Modulus" $modulus
CkXml_NewChild2 $xml "Exponent" $exponent
set pubKey [new_CkPublicKey]
set success [CkPublicKey_LoadFromString $pubKey $xml]
if {$success == 0} then {
puts [CkPublicKey_lastErrorText $pubKey]
delete_CkRsa $rsa
delete_CkXml $xml
delete_CkPublicKey $pubKey
exit
}
set success [CkRsa_UsePublicKey $rsa $pubKey]
if {$success == 0} then {
puts [CkRsa_lastErrorText $rsa]
delete_CkRsa $rsa
delete_CkXml $xml
delete_CkPublicKey $pubKey
exit
}
set usePrivateKey 0
set plainText "message in a bottle"
CkRsa_put_EncodingMode $rsa "base64"
set encryptedStrBase64 [CkRsa_encryptStringENC $rsa $plainText $usePrivateKey]
puts "$encryptedStrBase64"
delete_CkRsa $rsa
delete_CkXml $xml
delete_CkPublicKey $pubKey