Ehhez mit szólsz?Procedure rnd8232encrypt(ptr0: ^Byte; ptr1: ^Longword; size, key: Longword);
var
i: Longword;
offset, value: Byte;
Begin
RandSeed := key;
i := 1;
For i := 1 To size Do
Begin
offset := Random And 31;
value := ptr0^;
ptr1^ := Random Xor ((value shl offset) Or (value shr (32 - offset)));
End;
End;
Procedure rnd8232decrypt(ptr0: ^Longword; ptr1: ^Byte; size, key: Longword);
var
i, value: Longword;
offset: Byte;
Begin
RandSeed := key;
i := 1;
For i := 1 To size Do
Begin
offset := Random And 31;
value := ptr0^ Xor Random;
ptr1^ := ((value shr offset) Or (value shl (32 - offset)));
End;
End; Ez 8-ból 32 bitet csinál, (pszeudo)véletlenszerű bitforgatással és bitnegálással. |