Einzelnen Beitrag anzeigen

ringli

Registriert seit: 7. Okt 2004
510 Beiträge
 
Delphi 11 Alexandria
 
#1

Passwortlänge DEC 3.0 vs. DEC 5.1

  Alt 21. Apr 2006, 21:16
Ich verwende das DEC um einen String zu verschlüsseln und wollte jetzt von Version 3.0 auf Version 5.1 aktualisieren. Den Funktionsaufruf habe ich entsprechend angepasst und grundsätzlich funktioniert das Ganze auch. Das einzige Problem ist das die angepasste Funktion keine Passwörter über 32 Zeichen erlaubt. Wenn ich nämlich ein Passwort >32 Zeichen verwende, erhalte ich vom Compiler nur den Fehler Keymaterial is to large as can be used, security issue. Mit dem alten DEC war ein Passwort >32 Zeichen kein Problem, also vermute ich mal das ich noch irgendwas falsch mache. Die Frage ist nur was ich falsch mache...

So sah die Funktion bei Verwendung des DEC 3.0 aus:
Delphi-Quellcode:
{*** Einen beliebigen String verschlüsseln ***}
function Encode(const Value : String): String;
begin
  with TCipher_Rijndael.Create('Passwort mit über 32 Zeichen ohne Probleme', nil) do
    try
      Result := CodeString(Value, paEncode, fmtMIME64);
    finally
      Free;
  end;
end;
So sieht die Funktion bei Verwendung des DEC 5.1 aus:
Delphi-Quellcode:
{*** Einen beliebigen String verschlüsseln ***}
function Encode(const Value : String): String;
begin
  with TCipher_Rijndael.Create do
    try
      Mode := cmCBCx;
      Init('Passwort bis maximal 32 Zeichen');
      Result := EncodeBinary(Value, TFormat_MIME64);
    finally
      Free;
    end;
end;
  Mit Zitat antworten Zitat