![]() |
Problem mit RC4
Hi!
Ich verwende für die RC4 Verschlüsselung folgende Unit: ![]() Und habe folgenden Code:
Delphi-Quellcode:
Aber es kommt immer:
procedure TForm1.Button1Click(Sender: TObject);
var user, CryptedUser: String; RC4Context: TRC4Context; begin user:='fkerber'; RC4Init(RC4Context,'{52F3B05A-462E-495E-8C55-4D226A342E01}'); RC4Code(RC4Context,user[1],Crypteduser[1],length(user)); RC4Done(Rc4Context); end; Zitat:
Und zwar hier:
Delphi-Quellcode:
Wo ist der Fehler?
procedure RC4Code(var RC4: TRC4Context; const Source; var Dest; Count: Integer);
var S: Integer; T: Byte; begin with RC4 do for S := 0 to Count -1 do begin Inc(I); T := D[I]; Inc(J, T); D[I] := D[J]; D[J] := T; Inc(T, D[I]); TByteArray(Dest)[S] := TByteArray(Source)[S] xor D[T]; <------------------- end; end; Ciao Frederic |
Re: Problem mit RC4
Delphi-Quellcode:
Du verschlüsselst den Datenbuffer User[] mit Length(user) Bytes nach CryptedUser[].
RC4Code(RC4Context,user[1],Crypteduser[1],length(user));
Wie groß ist der Speicherbereich den CryptedUser[] umfasst ?? Rausbekommen kannst du das mit Length(CryptedUser) VOR dem Aufruf von RC4Code(). Gruß hagen PS: kleiner Tipp am Rande -> SetLength(); |
Re: Problem mit RC4
Hi!
:wall: :wall: Danke dir. Habe ich beim Kopieren aus der Code-Lib übersehen. Bin aber mittlerweile beim DEC gelandet, da gabs dann keinen Fehler mehr :thumb: Ciao Frederic |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:28 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz