Thema: Hashverfahren

Einzelnen Beitrag anzeigen

Benutzerbild von glkgereon
glkgereon

Registriert seit: 16. Mär 2004
2.287 Beiträge
 
#1

Hashverfahren

  Alt 14. Jun 2005, 21:09
Hi

ich wollt ma fragen wie Hashverfahren funktionieren...

beziehen die wirklich jedes einzelne Byte in die Berechnung mit ein?
wie rechnen die überhaupt damit?

also ich hab mir selbst mal ein einfaches gebastelt...in wieweit ist das typisch für vorhandene Algos?
oder wie funktioniert zum beispiel MD5?

Delphi-Quellcode:
function Hash(FileName: TFileName):String;
var FS: TFileStream;
    i, Sum: Int64;
    Buf: Byte;
begin
  i:=0;
  Sum:=0;
  FS:=Nil;
  try
    FS:=TFileStream.Create(FileName,fmOpenRead or fmShareExclusive);
    Status.Max:=FS.Size div 1024;
    repeat
      FS.Read(Buf,1);
      FS.Position:=FS.Position+1023;
      inc(i);
      Sum:=Sum+Buf*i;
      Sum:=Sum Mod 4294967295;
    until FS.Position>=FS.Size;
    Sum:=Sum*FS.Size;
  finally
    FS.Free;
    Result:=IntToStr(Sum);
  end;
end;
»Unlösbare Probleme sind in der Regel schwierig...«
  Mit Zitat antworten Zitat