Einzelnen Beitrag anzeigen

Benutzerbild von Zacherl
Zacherl

Registriert seit: 3. Sep 2004
4.629 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#18

AW: C# nach Delphi aber keine Ahnung wie?

  Alt 16. Jun 2019, 17:31
Wenn du jetzt TBytes verwendest, muss hier AES_CBC_Decrypt(@EncryptedData[1], @Res[1], length(EncryptedData), ctx); auf jeden Fall der Index schonmal jetzt 0 sein - sowohl bei EncryptedData , als auch bei Res .

Die Zuweisung ctx.IV := aesblck ist überflüssig.

An dieser Stelle steht nicht der Key, sondern der IV!
Delphi-Quellcode:
FS.Seek($24, soBeginning);
SetLength(Key, 16);
FS.Read(Key[0], length(Key));
Auch würde ich Res definitiv nicht hardcoded auf 4096 Bytes festlegen. Vorher hattest du doch bereits einmal korrekt die Länge mit FS.Size - $38 festgelegt. Wenn am Ende noch zufällige Daten stehen kann hier auch später die Dekompression evtl. fehlschlagen.

Wenn es danach immer noch nicht klappt, kann es natürlich durchaus sein, dass das Entschlüsseln bereits fehlschlägt (es werden zwar Daten entschlüsselt, aber ob die Blöcke später korrekt sind weißt du nicht - könnte man aber prüfen, indem man dem C# Programm beibringt mal einen Zwischenstand zu printen).
Projekte:
- GitHub (Profil, zyantific)
- zYan Disassembler Engine ( Zydis Online, Zydis GitHub)
  Mit Zitat antworten Zitat