Hi,
alternativ zum hier bestehenden RC4-Quelltext wollte ich gerne mal den Pseudoquellcode aus Wikipedia implementieren (
http://de.wikipedia.org/wiki/RC4#Algorithmus ). Die Initialisierungsprozedur sieht nun also so aus:
Delphi-Quellcode:
procedure TRC4.Initialize(key: string);
var
j, tausch: byte;
s: array[byte] of byte;
l,i: integer;
begin
i := 0;
j := 0;
l := length(s);
for i := 0 to l do
s[i] := i;
for i := 0 to l do
begin
j := (j + s[i] + key[i mod length(key)]) mod l;
tausch := s[i];
s[i] := s[j];
s[j] := tausch;
end;
end;
Aber: Bei
j := (j + s[i] + key[i mod length(key)]) mod l;
bekomme ich einen
Zitat:
[Fehler] uMain.pas(156): Inkompatible Typen
- Fehler, und zwar hier:
j := (j + s[i] + key[i mod length(key)]) | mod l;
Was muss ich ändern?
Danke!
mfg
fortuneNext