(Tcl) Workaround for the deprecated Crypt2.OpaqueSignBytes method
Shows how to replace the deprecated OpaqueSignBytes method. (Chilkat is moving away from the use of CkByteData.) Note: This example requires Chilkat v11.0.0 or greater.
load ./chilkat.dll
set crypt [new_CkCrypt2]
set cert [new_CkCert]
# ...
# Load the cert from a source such as a .pfx/.p12 file, smart card, USB token, Apple keychain, Windows certificate store, etc.
#
set success [CkCrypt2_SetSigningCert $crypt $cert]
# ...
# ...
# ...
set path "c:/someDir/example.dat"
# ------------------------------------------------------------------------
# The OpaqueSignBytes method is deprecated:
set inData [new_CkByteData]
CkByteData_loadFile $inData $path
set outData [new_CkByteData]
set success [CkCrypt2_OpaqueSignBytes $crypt $inData $outData]
# ------------------------------------------------------------------------
# Workaround.
# (Chilkat is moving away from using CkByteData)
set bd [new_CkBinData]
CkBinData_LoadFile $bd $path
# If successful, the contents of bd are replaced with the PKCS#7 signed-data.
set success [CkCrypt2_OpaqueSignBd $crypt $bd]
delete_CkCrypt2 $crypt
delete_CkCert $cert
delete_CkByteData $inData
delete_CkByteData $outData
delete_CkBinData $bd
|