Thema: Delphi Problem mit RC4

Einzelnen Beitrag anzeigen

Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#1

Problem mit RC4

  Alt 14. Okt 2004, 07:25
Hi!

Ich verwende für die RC4 Verschlüsselung folgende Unit:
http://www.delphipraxis.net/internal...&highlight=rc4

Und habe folgenden Code:
Delphi-Quellcode:
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;
Aber es kommt immer:
Zitat:
---------------------------
Project1
---------------------------
Access violation at address 00403E46 in module 'Project1.exe'. Read of address FF52C288.
---------------------------
OK
---------------------------

Und zwar hier:
Delphi-Quellcode:
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;
Wo ist der Fehler?

Ciao Frederic
Frederic Kerber
  Mit Zitat antworten Zitat