Implements Keyed-Hashing using MD5 for message authentication in compliance with RFC 2104 and 2202.
This algorithm has been tested against official test vectors.
class HMAC_MD5 implements
| HMAC_MD5||The constructor for the HMAC_MD5 class.|
| Final (console safe) ||Use this function when you are done adding bytes to the HMAC_MD5 class.|
| Update (console safe) ||Use this method to add data with a MemoryBlock to the HMAC_MD5 stream.|
| Update (console safe) ||Use this method to add data with a String to the HMAC_MD5 stream.|
Test case for a known test vector
Dim key as String
Dim data as String
Dim hmac as HMAC_MD5
Dim result as String
Dim hexResult as String
Dim i as Integer
key = "Jefe"
data = "what do ya want for nothing?"
// We do this in ASCII because the well known test vectors come in ASCII
key = ConvertEncoding(key,Encodings.ASCII)
data = ConvertEncoding(data,Encodings.ASCII)
hmac = new HMAC_MD5(key)
result = hmac.Final()
// Convert to HEX
For i = 1 to 16
hexResult = hexResult + Right("0"+Hex(Asc(Mid(result,i,1))),2)
if hexResult = "750c783e6ab0b503eaa86e310a5db738" then
Supported Platforms:MacOS X CarbonMacOS X Cocoa 32 bitMacOS X Cocoa 64 bitWindows 32 bitWindows 64 bitLinux 32 bitLinux 64 bitLinux ARM