(CkPython) Workaround for the deprecated Crypt2.MacBytesENC method
Shows how to replace the deprecated MacBytesENC method. (Chilkat is moving away from the use of CkByteData.) Note: This example requires Chilkat v11.0.0 or greater.
import chilkat
crypt = chilkat.CkCrypt2()
# Do HMAC using SHA-256.
crypt.put_MacAlgorithm("hmac")
crypt.put_HashAlgorithm("sha256")
keyHex = "000102030405060708090A0B0C0D0E0F"
success = crypt.SetMacKeyEncoded(keyHex,"hex")
# Return the HMAC using the lowercase hex encoding.
crypt.put_EncodingMode("hex_lower")
path = "c:/someDir/example.dat"
# ------------------------------------------------------------------------
# The MacBytesENC method is deprecated:
inData = chilkat.CkByteData()
inData.loadFile(path)
hmac_hex = crypt.macBytesENC(inData)
print(hmac_hex)
# ------------------------------------------------------------------------
# Workaround.
# (Chilkat is moving away from using CkByteData)
bdIn = chilkat.CkBinData()
bdIn.LoadFile(path)
hmac_hex = crypt.macBdENC(bdIn)
print(hmac_hex)
|