Gibt es einen gemeinsamen Vorfahren der Hashes in
DEC welchen ich als Parameter verwenden kann?
Mein Ziel: ich möchte eine einzige Prozedur haben, welcher ich einen String und den Hash-Typ übergeben kann welcher verwendet werden soll.
Der Code hier unten stammt aus dem WWW und wurde von mir leicht abgeändert.
Delphi-Quellcode:
function CalcHash(input: string; aHashMethod: TDECHash): string;
var
val: TStringStream;
aHash: TDECHash;
len: Int64;
begin
val := TStringStream.Create;
try
len := Length(input);
val.Write(input[1], len);
val.Position := 0;
aHash := aHashMethod.Create;
try
Result := string(aHash.CalcStream(val, len, TFormat_HEX));
finally
aHash.Free;
end;
finally
val.Free;
end;
end;
// s := CalcHash(s, TDECHash(THash_SHA256));
Ich dachte eigentlich TDECHash wäre der gemeinsame Vorfahre, aber der Code gibt eine
AV zurück, welche ich nicht zurückverfolgen kann.