Professional Documents
Culture Documents
n=3
23 =8 – flux de biţi
Formăm vectorul S: 01234567
Alegem cheia: 17, K – vectorul cheii
Codul ASCII al cheii este: 1 → 49; 7 → 55;
Vectorul cheii este:
49 55 49 55 49 55 49 55
Depunem valorile codului ASCII al cheii:
S 0 1 2 3 4 5 6 7
K 49 55 49 55 49 55 49 55
Efectuăm permutări asupra biţilor vectorului S:
Iniţial i=0, j=0.
j=(j+K[i]+S[j]) mod 8
S 1 2 3 0 4 5 6 7
K 55 49 55 49 49 55 49 55
4) i=3, j=(3+K[3]+S[3]) mod 8 = (3+49+0) mod 8 = 52 mod 8 = 4;
SWAP(S[i],S[j])=SWAP(S[3],S[4])=12340567=55 49 55 49 49 55 49 55
S 1 2 3 4 0 5 6 7
K 55 49 55 49 49 55 49 55
K 55 49 55 49 55 49 55 49
K 49 49 55 49 55 49 55 55
CRIPTARE
Alegem un mesaj pentru criptare m = Procesor.
Iniţial i=0, j=0.
i=(i+1) mod 8 = 1 mod 8 = 1.
j=(j+S[i]) mod 8 = (j+S[1]) mod 8 = (0+2) mod 8 = 2
Calculam t:
t=(S[i]+S[j]) mod 8 = (S[1]+S[2]) mod 8 = (2+3) mod 8 = 5
r = chr(ord(m)) XOR S[t]
Cheile de criptare
S[t] = S[5] = 6, K[5] = (49)10 = (00110001)2
m[0] = P → (80)10 = (01010000)2
m[1] = r → (114)10 = (01110010)2
m[2] = o → (111)10 = (01101111)2
m[3] = c → (99)10 = (01100011)2
m[4] = e → (101)10 = (01100101)2
m[5] = s → (115)10 = (01110011)2
m[6] = o → (111)10 = (01101111)2
m[7] = r → (114)10 = (01110010)2
r[0] = 01010000 XOR 110001 = (1100001)2 = (97)10 → a
r[1] = 01110010 XOR 110001 = (1000011)2 = (67)10 → C
r[2] = 01101111XOR 110001 = (1011110)2 = (94)10 → ^
r[3] = 01100011 XOR 110001 = (1010010)2 = (82)10 → R
r[4] = 01100101 XOR 110001 = (1010100)2 = (84)10 → T
r[5] = 01110011 XOR 110001 = (1000010)2 = (66)10 → B
r[6] = 01101111 XOR 110001 = (1011110)2 = (94)10 → ^
r[7] = 01110010 XOR 110001 = (1000011)2 = (67)10 → C
Decriptare
Cript r =aC^RTB^C;
K=17;
S=S 02345671
0 2 3 4 5 6 7 1
K 49 49 55 49 55 49 55 55