Einzelnen Beitrag anzeigen

Benutzerbild von rapante
rapante

Registriert seit: 3. Jun 2009
Ort: OPR
171 Beiträge
 
Delphi XE2 Professional
 
#3

AW: DEC 5.2 Encrypt -> PHP/JS etc. Decrypt

  Alt 5. Mär 2021, 16:26
Hy TurboMagic,
leider ist mein Verständnis der Thematik nicht sehr ausgeprägt.

Ich benutze die folgende Funktion zum verschlüsseln:
Delphi-Quellcode:
function Encrypt(const AText: String; const APassword: String): String; overload;
var
  ASalt: Binary;
  AData: Binary;
  APass: Binary;
begin
  with ValidCipher(TCipher_Rijndael).Create, Context do
  try
    ASalt := RandomBinary(16);
    APass := ValidHash(THash_Whirlpool).KDFx(APassword[1], Length(APassword) * SizeOf(APassword[1]), ASalt[1], Length(ASalt), KeySize, TFormat_Copy, 1);
    Mode := cmCBCx;
    Init(APass);
    SetLength(AData, Length(AText) * SizeOf(AText[1]));
    Encode(AText[1], AData[1], Length(AData));
    Result := ValidFormat(TFormat_Mime64).Encode(ASalt + AData + CalcMAC);
  finally
    Free;
    ProtectBinary(ASalt);
    ProtectBinary(AData);
    ProtectBinary(APass);
  end;
end;
Wenn ich das richtig verstanden habe, gibt es keine Entsprechung von KDFx in anderen Libs (Crypto.js) und ich weiß nicht wie ich das umsetzen kann.

Leider ist das Problem ein uneingeplanter Nebenschauplatz meines eigentlichen Projektes. Daher ist meine Hoffnung, dass ich das Rad nicht neu erfinden muss und mir jemand mit einem funktionierenden Codeschnipsel behilflich sein kann...

Welcher Algorithmus/Parameter verwendet werden ist im Prinzip egal. Es gibt keine Vorgaben. Nur Klartext darf es nicht sein

Wenn 6.1 "gefixt" ist, kann ich das gerne bei mir testen
  Mit Zitat antworten Zitat