DataFlex
DataFlex
Demonstrates HMAC SHA256
See more Encryption Examples
Demonstrates HMAC-SHA256. Also demonstrates HMAC-SHA1 and HMAC-MD5.Chilkat DataFlex Downloads
Use ChilkatAx-win32.pkg
Procedure Test
Handle hoCrypt
Boolean iSuccess
String sSData
String sTemp1
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Demonstrates how to reproduce the following results found at
// https://en.wikipedia.org/wiki/Hash-based_message_authentication_code
// HMAC_SHA256("key", "The quick brown fox jumps over the lazy dog") = 0xf7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8
// HMAC_MD5("key", "The quick brown fox jumps over the lazy dog") = 0x80070713463e7749b90c2dc24911e275
// HMAC_SHA1("key", "The quick brown fox jumps over the lazy dog") = 0xde7c9b85b8b78aa6bc8a7a36f70a90701c9db4d9
Get Create (RefClass(cComChilkatCrypt2)) To hoCrypt
If (Not(IsComObjectCreated(hoCrypt))) Begin
Send CreateComObject of hoCrypt
End
Set ComMacAlgorithm Of hoCrypt To "hmac"
Set ComEncodingMode Of hoCrypt To "hex"
Get ComSetMacKeyString Of hoCrypt "key" To iSuccess
Move "The quick brown fox jumps over the lazy dog" To sSData
Set ComHashAlgorithm Of hoCrypt To "SHA-256"
Get ComMacStringENC Of hoCrypt sSData To sTemp1
Showln "HMAC_SHA256: " sTemp1
Set ComHashAlgorithm Of hoCrypt To "MD5"
Get ComMacStringENC Of hoCrypt sSData To sTemp1
Showln "HMAC_MD5: " sTemp1
Set ComHashAlgorithm Of hoCrypt To "SHA-1"
Get ComMacStringENC Of hoCrypt sSData To sTemp1
Showln "HMAC_SHA1: " sTemp1
// The output is the same (ignore case)
// HMAC_SHA256: F7BC83F430538424B13298E6AA6FB143EF4D59A14946175997479DBC2D1A3CD8
// HMAC_MD5: 80070713463E7749B90C2DC24911E275
// HMAC_SHA1: DE7C9B85B8B78AA6BC8A7A36F70A90701C9DB4D9
End_Procedure