Tcl
Tcl
Workaround for the deprecated EncryptBytes and DecryptBytes methods
Shows how to replace the deprecated DecryptBytes method. (Chilkat is moving away from the use of CkByteData.)Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
set crypt [new_CkCrypt2]
CkCrypt2_put_CryptAlgorithm $crypt "aes"
CkCrypt2_put_CipherMode $crypt "cbc"
CkCrypt2_put_KeyLength $crypt 128
CkCrypt2_put_PaddingScheme $crypt 0
CkCrypt2_SetEncodedKey $crypt "000102030405060708090A0B0C0D0E0F" "hex"
CkCrypt2_SetEncodedIV $crypt "000102030405060708090A0B0C0D0E0F" "hex"
CkCrypt2_put_EncodingMode $crypt "base64"
set success 0
# ------------------------------------------------------------------------
# The EncryptBytes and DecryptBytes methods are deprecated and will eventually be removed.
set unencryptedBytes [new_CkByteData]
CkByteData_appendEncoded $unencryptedBytes "AABBCCDDEEFF01020304" "hex"
set encryptedBytes [new_CkByteData]
set decryptedBytes [new_CkByteData]
set success [CkCrypt2_EncryptBytes $crypt $unencryptedBytes $encryptedBytes]
set success [CkCrypt2_DecryptBytes $crypt $encryptedBytes $decryptedBytes]
# ------------------------------------------------------------------------
# Replace the above CkByteData usage with the following code:
# (Chilkat is moving away from using CkByteData)
set bd [new_CkBinData]
CkBinData_AppendEncoded $bd "AABBCCDDEEFF01020304" "hex"
# in-place encrypt
CkCrypt2_EncryptBd $crypt $bd
puts "Encrypted: [CkBinData_getEncoded $bd hex]"
# in-place decrypt
CkCrypt2_DecryptBd $crypt $bd
puts "Decrypted: [CkBinData_getEncoded $bd hex]"
delete_CkCrypt2 $crypt
delete_CkByteData $unencryptedBytes
delete_CkByteData $encryptedBytes
delete_CkByteData $decryptedBytes
delete_CkBinData $bd