Sample code for 30+ languages & platforms
Delphi DLL

HMAC MD5 to Match RFC 2022 Test Vectors

See more Encryption Examples

Demonstrates using Chilkat in _LANGUAGE_ to computer HMAC MD5 message authentication codes to match the test vectors given by RFC 2202.

Chilkat Delphi DLL Downloads

Delphi DLL
uses
    Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
    Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Crypt2;

...

procedure TForm1.Button1Click(Sender: TObject);
var
crypt: HCkCrypt2;
mac: PWideChar;

begin
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

crypt := CkCrypt2_Create();

// The output will be Hex, so set the EncodingMode:
CkCrypt2_putEncodingMode(crypt,'hex');

// Set the hash algorithm:
// Choices are: md5, sha-1, sha256, sha384, sha512, md2, haval
CkCrypt2_putHashAlgorithm(crypt,'md5');
CkCrypt2_putMacAlgorithm(crypt,'hmac');

// Set the HMAC key:
CkCrypt2_SetMacKeyEncoded(crypt,'0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b0b','hex');
mac := CkCrypt2__macStringENC(crypt,'Hi There');
Memo1.Lines.Add(mac);

CkCrypt2_SetMacKeyEncoded(crypt,'Jefe','ansi');
mac := CkCrypt2__macStringENC(crypt,'what do ya want for nothing?');
Memo1.Lines.Add(mac);

CkCrypt2_Dispose(crypt);

end;