Het MD5 Message-Digest Algorithm is een cryptografische hashfunctie. MD5 wordt vaak gebruikt om de integriteit van bestanden te controleren, bijvoorbeeld om ervoor te zorgen dat een bestand ongewijzigd is gebleven.
Een voorbeeld hiervan is bij het online downloaden van een programma. Als de softwareverdeler de MD5-hash van het bestand verspreidt, kunt u de hash produceren met Delphi en vervolgens de twee waarden vergelijken om te controleren of ze hetzelfde zijn. Als ze anders zijn, betekent dit dat het gedownloade bestand niet het bestand is dat u op de website hebt aangevraagd en daarom schadelijk kan zijn.
Een MD5-hashwaarde is 128 bits lang, maar wordt meestal gelezen in de 32-cijferige hexadecimale waarde.
Met Delphi kunt u eenvoudig een functie maken om de MD5-hash voor een bepaald bestand te berekenen. Alles wat je nodig hebt zit in de twee eenheden IdHashMessageDigest en idHash, beide maken deel uit van Indy.
Hier is de broncode:
toepassingen IdHashMessageDigest, idHash;
// geeft MD5 terug voor een bestand
functie MD5 (const bestandsnaam : draad): draad;
var
idmd5: TIdHashMessageDigest5;
fs: TFileStream;
hash: T4x4LongWordRecord;
beginnen
idmd5: = TIdHashMessageDigest5.Create;
fs: = TFileStream.Create (fileName, fmOpenRead OF fmShareDenyWrite);
proberen
resultaat: = idmd5.AsHex (idmd5.HashValue (fs));
Tenslotte
fs.Free;
idmd5.Free;
einde;
einde;
Naast het gebruik van Delphi zijn er nog andere manieren om de MD5-controlesom van een bestand te vinden. Een methode is om Microsoft File Checksum Integrity Verifier te gebruiken. Het is een gratis programma dat alleen op het Windows-besturingssysteem kan worden gebruikt.
MD5 Hash Generator is een website die iets soortgelijks doet, maar in plaats van de MD5-controlesom van een bestand te produceren, doet dit dit uit elke reeks letters, symbolen of cijfers die u in het invoervak plaatst.