Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.014 Beiträge
 
Delphi 12 Athens
 
#18

AW: SHA-3 von Wolfang Ehrhardt

  Alt 16. Jan 2018, 12:01
Das ist aber doch unnötig kompliziert, oder? (auch eine Art von Code-Obfuscation)
Delphi-Quellcode:
  fbytes := TEncoding.GetEncoding('UTF-16').GetBytes(fToHash);
  fSize := TEncoding.GetEncoding('UTF-16').GetByteCount(fToHash);
Warum nicht gleich so?
Delphi-Quellcode:
  
  fbytes := TEncoding.GetEncoding('UTF-16').GetBytes(fToHash);
  fSize := Length(fBytes);
Oder so?
Delphi-Quellcode:
  
  fbytes := TEncoding.Unicode.GetBytes(fToHash);
  fSize := Length(fBytes);
Wobei der ByteCount von Unicode auch wieder nur CharCount * SizeOf(Char) ist. TEncoding.Default ist von den aktuellen Windows-Einstellungen abhängig, also eher ungünstig. Etwas sparsamer und trotzdem allgemein gültig wäre da noch UTF8:
Delphi-Quellcode:
  
  fbytes := TEncoding.UTF8.GetBytes(fToHash);
  fSize := Length(fBytes);
Wenn die Hashes auch anderweitig verwendet werden, muss sowieso das Encoding bekannt gemacht werden. Sonst kann niemand was damit anfangen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat