Hi,
hab vor Jahren mal den RC4 Algorithmus in Delphi portiert.
Funktioniert auch ganz gut,jedoch kann nicht allzuviel damit verschlüsselt werden.
Ich glaube das die Daten zwar verschlüsselt werden aber nicht richtig übergeben bzw. angezeigt.
Falls mir jemand helfen könnte wäre ich sehr, sehr dankbar.
Hier mal der Code:
Delphi-Quellcode:
type TRC4 = class(TObject)
private
FInText : String;
FOutText : String;
FKey : String;
FMainKey : String;
FSBox : Array[0..255] of Integer;
public
constructor Create;
procedure InitKey;
procedure Encrypt;
property MainKey : String read FMainKey write FMainKey;
property Key : String read FKey write FKey;
property KlarText : String read FInText write FInText;
property VerschluesselterText : String read FOutText write FOutText;
end;
implementation
constructor TRC4.Create;
var
i : Integer;
begin
inherited;
FOutText := '';
FInText := '';
FKey := '';
for i := 0 to 255 do FSBox[i] := 0; // Variablen und Array werden "geleert".
end;
procedure TRC4.Encrypt;
var
i, j, z : Integer;
t : Byte;
swapbyte : Byte;
begin // Verschlüsseln
i := 0;
j := 0;
FOutText := '';
if length(FInText) = 0 then exit;
for z := 0 to length(FInText) do
begin
i := (i + 1) mod 256;
j := (j + FSBox[i]) mod 256;
swapbyte := FSBox[j];
FSBox[j] := FSBox[i];
FSBox[i] := swapbyte;
t := (FSBox[i] + FSBox[j]) mod 256;
FOutText := FOutText + chr(FSBox[t] xor ord(FInText[z+1]))
end;
end;
[edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künftig selber machen. Danke. Mfg, Christian Seehase[/edit]