Tcl
Tcl
Duplicate openssl smime -encrypt -binary -aes-256-cbc -in some_file.dat -out some_file.dat.enc -outform DER cert.crt
See more OpenSSL Examples
Demonstrates how to encrypt to binary DER using 256-bit AES (CBC mode) as the underlying symmetric encryption algorithm, to produce PKCS7 enveloped data (binary DER).Duplicates the following openssl command:
openssl smime -encrypt -binary -aes-256-cbc -in some_file.dat -out some_file.dat.enc -outform DER cert.crt
Chilkat Tcl Downloads
load ./chilkat.dll
set success 0
# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.
set cert [new_CkCert]
set success [CkCert_LoadFromFile $cert "qa_data/openssl/EE.cer"]
if {$success == 0} then {
puts [CkCert_lastErrorText $cert]
delete_CkCert $cert
exit
}
set bd [new_CkBinData]
set success [CkBinData_LoadFile $bd "qa_data/openssl/hello.txt"]
# Assuming success..
set crypt [new_CkCrypt2]
set success [CkCrypt2_SetEncryptCert $crypt $cert]
if {$success == 0} then {
puts [CkCrypt2_lastErrorText $crypt]
delete_CkCert $cert
delete_CkBinData $bd
delete_CkCrypt2 $crypt
exit
}
CkCrypt2_put_CryptAlgorithm $crypt "PKI"
# Indicate the underlying symmetric encryption to be used:
CkCrypt2_put_Pkcs7CryptAlg $crypt "aes"
CkCrypt2_put_KeyLength $crypt 256
CkCrypt2_put_CipherMode $crypt "cbc"
set success [CkCrypt2_CkEncryptFile $crypt "qa_data/openssl/hello.txt" "qa_output/hello.txt.enc"]
if {$success == 0} then {
puts [CkCrypt2_lastErrorText $crypt]
delete_CkCert $cert
delete_CkBinData $bd
delete_CkCrypt2 $crypt
exit
}
puts "Success."
delete_CkCert $cert
delete_CkBinData $bd
delete_CkCrypt2 $crypt