(Delphi ActiveX) Hash the Contents of a File (SHA256 and other hash algorithms)
Demonstrates how to hash the contents of a file using SHA256, SHA384, SHA512, MD2, MD5, HAVAL, RIPEMD, etc.
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Chilkat_TLB;
...
procedure TForm1.Button1Click(Sender: TObject);
var
crypt: TChilkatCrypt2;
hashBytes: Array of Byte;
sb: TChilkatStringBuilder;
begin
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
crypt := TChilkatCrypt2.Create(Self);
// Choose the hash algorithm.
// Can be "sha1", "sha256", "sha384", "sha512", "md2", "md5", "haval", "ripemd128", "ripemd160","ripemd256", or "ripemd320".
crypt.HashAlgorithm := 'sha256';
hashBytes := crypt.HashFile('qa_data/jpg/starfish.jpg');
// Let's examine the hash as a hex string.
sb := TChilkatStringBuilder.Create(Self);
sb.AppendEncoded(hashBytes,'hex');
Memo1.Lines.Add('SHA256 hash = ' + sb.GetAsString());
end;
|