Se Aleg 3 Nr Aleatoare Prime A1=3, A2=5, A3=7 Si Formam Un Polinom F(x)=3x + 5x + 7x + 19 Formam Umbrele X=1,...,8 F(1) = 3*1 +5*1 +7*1+19=34

  • Uploaded by: Mihai
  • 0
  • 0
  • January 2021
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View Se Aleg 3 Nr Aleatoare Prime A1=3, A2=5, A3=7 Si Formam Un Polinom F(x)=3x + 5x + 7x + 19 Formam Umbrele X=1,...,8 F(1) = 3*1 +5*1 +7*1+19=34 as PDF for free.

More details

  • Words: 1,294
  • Pages: 8
Loading documents preview...
I.Descrieţi algoritmii şi creaţi exemple numerice pentru urmatorii itemi: 1.1 şi 1.2., parametrii de lucru la alegere. 1.1.Exponenţierea modulară x^c mod n 35 mod 7 i ci 2 1 1 0 0 1

510 = (101)2 z=1 z=z2 *x mod n = 3 z=z2 mod n = 2 z= z2 mod n = 5

 35 mod 7 = 5

1.2.Calculul inversei unui numar modulo b^(-1) mod p

7-1 mod11 n0 11 7 4 3

b0 7 4 3 1

q 1 1 1 3

r 4 3 1 0

t0 0 1 10 2

t 1 10 2 8

temp 10 2 8

II.Descrieţi considerentele teoretice pentru itemii 2.1 şi 2.2. 2.1.Divizarea secretelor cu algoritmul Shamir. Fie schema 4 din 7 (8, 4) si fie secretul S=19 1.

2.

Se aleg 3 nr aleatoare prime a1=3, a2=5, a3=7 si formam un polinom f(x)=3x3 + 5x2 + 7x + 19 Formam umbrele x=1,...,8 f(1) = 3*13+5*12+7*1+19=34

f(1) = 3*23+5*22+7*2+19=77 f(1) = 3*33+5*32+7*3+19=166 f(1) = 3*43+5*42+7*4+19=319 f(1) = 3*53+5*52+7*5+19=371 f(1) = 3*63+5*62+7*6+19=889 f(1) = 3*73+5*72+7*7+19=1342 f(1) = 3*83+5*82+7*8+19=1931 (1;34), (2;77), (3;166), (4;319), (5;371), (6;889), (7;1342), (8;1931)

Alegem aleator 4 perechi: (5;371), (6;889), (7;1342), (8;1931) Fie coordonatele: X0 = 5 x1 = 6

Y0=371

y2=8989

x2= 7

y3=1342

x3 = 8

y3=193

L(x) = suma de la i=0 la 3 din li * yi = suma de la i=0 la 3 din li + f(x) 2.2.Familia de algoritmi de hash-are (MD2,MD4,MD5,MD6,MD7). MD5

In MD5 sunt 4 etape, fiecare acțiune se adaugă la rezultatele anterioare, dimensiunea blocului de procesare este de 512 biți, algoritmu efectuiaza adunarea pe modulo 232, ele se bazează pe arhitectura de 32 de biți. In MD5 sunt 4 schimburi utilizate la fiecare etapa difera dupa valoarea utilizata la etapa anterioara , sunt 4 functii logice elementare si lungimea rezumatului e 128biti.

III.Utilizînd schema Shnorr pentru crearea unui protocol efectiv de autentificare, creaţi semnatura Shnorr (fără hash). a)Descrieţi algoritmul.

b)Creaţi şi verificati semnatura, parametrii de lucru la alegere. I. generarea cheilor semnaturii Shnorr 1. alegem nr prim 𝑞 = 11 2. alegem nr prim 𝑝, 𝑎. î. 𝑝 − 1 𝑚𝑜𝑑 𝑞 = 0, 𝑝 = 23 3. gasim 𝑔 (𝑔 ≠ 1), 𝑎. î. 𝑔𝑞 𝑚𝑜𝑑 𝑝 = 1, 𝑔 = 4 4. alegem 𝑤 < 𝑞, 𝑤 = 7 5. gasim 𝑦 = 𝑔−𝑤 𝑚𝑜𝑑 𝑝 = 4−7 𝑚𝑜𝑑 23 = 3 6. Cheia publica este (23, 11, 4, 3), cheia secreta este 7 II. Protocolul de autentificare 1. alegem 𝑟 < 𝑞, 𝑟 = 3 2. calculam 𝑥 = 𝑔𝑟 𝑚𝑜𝑑 𝑝 = 43 𝑚𝑜𝑑 23 = 18 3. A trimite 𝑥 B 4. B alege 𝑒 ∈ (0, 2𝑡 − 1), 𝑒 = 2 si trimite 𝑒 А 5. А calculeaza 𝑠 = (𝑟 + 𝑤𝑒) 𝑚𝑜𝑑 𝑞 = (3 + 7 ∗ 2) 𝑚𝑜𝑑 11 = 6 si trimite s B 6. B verifica 𝑥 = 𝑔 𝑠 𝑦 𝑒 𝑚𝑜𝑑 𝑝 = (46 ∗ 32 ) 𝑚𝑜𝑑 23 = 18

Diffie-Helman:

Fie p=11; (Fie Campul Zp=11 si elemental primitive este g=2) 1) Utilizatorul A alege a = 3 (nr prim secret) Utilizatorul B alege b = 5 (nr prim secret) 2) A calculeaza cheia sa publica: A = ga mod11 = 23 = 8 3) B calculeaza cheia sa publica: B = gb mod11 = 25 = 10 4) Utilizatorii se interschimba cu cheile publice 5) A calculeaza: KA = Ba mod n = 103 mod11 = 10 6) A calculeaza: KB = Ab mod n = 85 mod11 = 10 Concluzie: KA = KB = 10

RC4: n=3 23 =8 – flux de biţi Formăm vectrul 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 K

0 49

1 55

2 49

3 55

4 49

5 55

6 49

7 55

Efectuăm permutări asupra biţilor vectorului S: Iniţial i=0, j=0. j=(j+K[i]+S[j]) mod 8 1) i=0, j=(0+K[0]+S[0]) mod 8 = (0+49+0) mod 8 = 49 mod 8 = 1; SWAP(S[i],S[j])=SWAP(S[0],S[1])=10234567=55 49 49 55 49 55 49 55 1 0 2 3 4 5 6 7 S 55 49 49 55 49 55 49 55 K 2) i=1, j=(1+K[1]+S[1]) mod 8 = (1+49+0) mod 8 = 50 mod 8 = 2; SWAP(S[i],S[j])=SWAP(S[1],S[2])=12034567=55 49 49 55 49 55 49 55

S K

1 55

2 49

0 49

3 55

4 49

5 55

6 49

7 55

3) i=2, j=(2+K[2]+S[2]) mod 8 = (2+49+0) mod 8 = 51 mod 8 = 3; SWAP(S[i],S[j])=SWAP(S[2],S[3])=12304567=55 49 55 49 49 55 49 55 1 2 3 0 4 5 6 7 S 55 49 55 49 49 55 49 55 K 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 1 2 3 4 0 5 6 7 S 55 49 55 49 49 55 49 55 K 5) i=4, j=(4+K[4]+S[4]) mod 8 = (4+49+0) mod 8 = 53 mod 8 = 5; SWAP(S[i],S[j])=SWAP(S[4],S[5])=12345067=55 49 55 49 55 49 49 55 1 2 3 4 5 0 6 7 S 55 49 55 49 55 49 49 55 K

6) i=5, j=(5+K[5]+S[5]) mod 8 = (5+49+0) mod 8 = 54 mod 8 = 6; SWAP(S[i],S[j])=SWAP(S[5],S[6])=12345607=55 49 55 49 55 49 49 55 1 2 3 4 5 6 0 7 S 55 49 55 49 55 49 49 55 K 7) i=6, j=(6+K[6]+S[6]) mod 8 = (6+49+0) mod 8 = 55 mod 8 = 7; SWAP(S[i],S[j])=SWAP(S[6],S[7])=12345670=55 49 55 49 55 49 55 49 1 2 3 4 5 6 7 0 S 55 49 55 49 55 49 55 49 K 7) i=7, j=(7+K[7]+S[7]) mod 8 = (7+49+0) mod 8 = 56 mod 8 = 0;

SWAP(S[i],S[j])=SWAP(S[7],S[0])= 02345671= 49 49 55 49 55 49 55 55 0 2 3 4 5 6 7 1 S 49 49 55 49 55 49 55 55 K CRIPTARE Alegem un mesaj pentru criptare m = Dima. 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] S[t] = S[5] = 6, K[5] = (49)2 = (00110001)2 m[0] = D → (68)10 = (1000100)2 m[1] = i → (105)10 = (01101001)2 m[2] = m → (109)10 = (01101101)2 m[3] = a → (97)10 = (01100001)2 1)r[0] = 01000100 XOR 00110001 = (1110101)2 = (117)10 → u 2)r[1] = 01101001 XOR 00110001 = (1011000)2 = (88)10 → X 3)r[2] = 01101101 XOR 00110001 = (1011100)2 = (92)10 → \ 4)r[3] = 01100001 XOR 00110001 = (1010000)2 = (80)10 → P Deci, mesajul m = „Dima” criptat este „uX\P” DECRIPTARE Cript r = uX\P; K=17; S= 02345671 0 2 3 4 5 6 7 1 S 49 49 55 49 55 49 55 55 K 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 SWAP(S[i],S[j]) mod 8 = (3+2) mod 8 = 5 i = chr(ord(r)) XOR S[t]

r[0] = u → (117)10 = (1110101)2 r[1] = X → (88)10 = (1011000)2 r[2] = \ → (92)10 = (1011100)2 r[3] = P → (80)10 = (1010000)2 m[0] = 1110101 XOR 110001 = (1000100)2 = (68)10 → D m[1] = 1011000 XOR 110001 = (1101001)2 = (105)10 → i m[2] = 1011100 XOR 110001 = (01101101)2 = (109)10 → m m[3] = 1010000 XOR 110001 = (01100001)2 = (97)10 → a Mesajul criptat r = „uX\P” decriptat va fi: „Dima”.

Related Documents


More Documents from "Stefanus Satria"