Delphi DLL
Delphi DLL
Hash (Digest) a String
Hash the bytes of a string.Chilkat Delphi DLL Downloads
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, StringBuilder;
...
procedure TForm1.Button1Click(Sender: TObject);
var
sb: HCkStringBuilder;
sha256_hex: PWideChar;
sha384_hex: PWideChar;
sha512_base64: PWideChar;
sha1_hex: PWideChar;
crc8_decimal: PWideChar;
begin
sb := CkStringBuilder_Create();
CkStringBuilder_Append(sb,'Hello World');
// Hashing algorithms (i.e. digest algorithms) operate on raw bytes.
// Therefore, we must specify the character encoding (utf-8, utf-16, iso-8859-1, etc.) to be used when hashing.
// Get the SHA256 hash in hex
sha256_hex := CkStringBuilder__getHash(sb,'sha256','hex','utf-8');
Memo1.Lines.Add('SHA256: ' + sha256_hex);
// Get the SHA384 hash in hex lowercase
sha384_hex := CkStringBuilder__getHash(sb,'sha384','hex_lower','utf-8');
Memo1.Lines.Add('SHA384: ' + sha384_hex);
// Get the SHA512 hash in base64
sha512_base64 := CkStringBuilder__getHash(sb,'sha512','base64','utf-8');
Memo1.Lines.Add('SHA512: ' + sha512_base64);
// Get the SHA1 hash in hex lowercase
sha1_hex := CkStringBuilder__getHash(sb,'sha1','hex_lower','utf-8');
Memo1.Lines.Add('SHA1: ' + sha1_hex);
// Get the CRC8 digest in decimal
crc8_decimal := CkStringBuilder__getHash(sb,'crc8','decimal','utf-8');
Memo1.Lines.Add('CRC8: ' + crc8_decimal);
CkStringBuilder_Dispose(sb);
end;