Einzelnen Beitrag anzeigen

Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#2

Re: DEC 5.2 Fehler unter Delphi 2009 (?)

  Alt 17. Dez 2008, 12:22
Hi Uli,

bei mir liefert TestHashHEX 03BEBC72 mit DEC 5.2 und D2009.

Übrigens: Glückwunsch zum "Lösen" der Probleme im anderen Thread.

Vielleicht ein Problem mit CheckEqual?

Getestet per
Delphi-Quellcode:
procedure TestHashHEX;
  var
    strResultV3: ANSIString;
    strResultV5: ANSIString;
    cResult: Cardinal;
    FText: AnsiString;
  begin
    FText := 'This is a confidential ANSI Text';
    strResultV3 := '03BEBC72'; //Hash.THash_CRC32.CalcString(FText, nil, fmtHEX);

    cResult := CRCCalc(CRC_32CCITT, PAnsiChar(FText)^, Length(FText));
    strResultV5 := TFormat_HEX.Encode(cResult, 4);

    Memo1.Lines.Add(strResultV3);
    Memo1.Lines.Add(strResultV5);
  end;
und einem einfachen Memo.

Nachtrag: CheckEqualsString hat keine überladene Funktion für AnsiString. Vielleicht liegt hier irgendwo das Problem. Schreibt Dir selbst mal ein Overload dafür.

Ein einfaches
Delphi-Quellcode:
  if strResultv3 = strResultV5 then
      Memo1.Lines.Add('jup');
gibt mir jedenfalls in obigem Testcase ebenfalls das gewünschte "jup" aus.

Edit2:
Bei der Umstellung war ich doch nicht nachlässig: Ich habe gegen jeden Cipher, Hash und das Text-Encoding Vergleichstests gefahren. Teilweise automatisch (aus Part_I\DECTest) und auch manuell mit Testvektoren und Monte-Carlo-Tests (z.B. bei Rijndael mit Vorgaben vom NIST).

Anbei mal die Ergebnisliste aus dem DECTest. Die ist aber auch im DEC 5.2 mit dabei und mit D2009 erstellt.

Gruß Assertor
Angehängte Dateien
Dateityp: txt dectest_160.txt (16,5 KB, 7x aufgerufen)
Frederik
  Mit Zitat antworten Zitat