Adunarea In Gf(256) Este Operatia Xor Exemplu: A(10): 1.1. Operaţii în Cîmpul Galois (gf(256))

  • 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 Adunarea In Gf(256) Este Operatia Xor Exemplu: A(10): 1.1. Operaţii în Cîmpul Galois (gf(256)) as PDF for free.

More details

  • Words: 1,310
  • Pages: 7
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. Operaţii în cîmpul Galois (GF(256))

Adunarea in GF(256) este operatia XOR Exemplu: A(10)10 -> (00001010)2 B(125)10->(01111101)2 A+B = (01110111)2 = (119)10 a) Daca nr < 0x80, se va face un deplasament cu 1 bit la stanga: 10 * 2 = 00001010 << 1 = 00010100 = 20 b) Daca nr > 0x80 129 * 2 = (10000001 xor 00011011) << 1 = 10011010 << 1 = 00110101 = 53 Inmultirea la orice nr: Se aduna inmultirile cu 1 si 2 A * 0x03 = A * (0x02 + 0x01) = (A * 0x02) + (A * 0x01) 1.2.Calculul logaritmului discret modulo (Algoritmul Shanks).

Fie P = 523 şi să determinăm log2 45mod522= ?.

Avem deci α=2 si β=45 m=22 Cream listele L1 (0, 1) (1, 367) (2,278) (3, 41) (4, 403) (5, 415) (6, 112) (7, 310) (8, 279) (9, 408) (10, 158) (11, 456)(12, 515) (13, 286) (14, 391) (15, 195) (16, 437) (17, 341) (18, 150) (19, 135) (20, 383) (21, 397) Cream listele L2

(0, 45) (1 ,284) (2, 142) (3, 71) (4 ,297 ) (5 ,410 ) (6, 205) (7, 364) (8, 182) (9, 91) (10, 307) (11, 415 ) (12, 469) (13, 496) (14, 248) (15, 124) (16, 62) (17, 31) (18, 27) (19, 400) (20, 200) (21, 100) Coincid elementele de pe pozitia 5 din lista L1: (5, 415) si elementul 11 din lista L2: (11,415), deci Log245mod(523-1) = (22*5+11) mod(523-1 = 121mod523 = 121; II.Descrieţi considerentele teoretice pentru itemii 2.1 şi 2.2. 2.1.Algoritmul Blacklay. nu gasesc

2.2. Familia de algoritmi de hash-are SHA- (1, 160, 256,384,512). ULTRA HZ, pe wiki doar schema (?)

SHA-1 In SHA-1 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 SHA-1 constantele se folosesc in mod repetat pentru fiecare sin 4 grupe. In SHA-1 se adauga a cincea variabila, se foloseste cod cyclic pentru a corecta greselile, la fiecare etapa utilizeaza aceleasi valori pentru schimbare, sunt 3 functii logice elementare, lungimea rezumatului 160biti, SHA-1 – e MD4 cu adaos de conversie, un pas suplimentar și efect avalanșă îmbunătățită. SHA-2 (contine 256,384,512):

SHA-1:

III. Utilizînd schema ElGamal pentru crearea unui protocol efectiv de autentificare, creaţi semnatura ElGamal (20 puncte) a)Descrieţi algoritmul.

b)Creaţi şi verificati semnatura, parametrii de lucru la alegere.

Exemplul 1: Sa luam p = 467; α = 2; a = 127. Avem β = α a (mod p) = 2127 (mod 467) = 132. Daca Damon doreste sa semneze mesajul x = 100 alegand valoarea k = 213 (de remarcat ca (213; 466) = 1 si 213-1 (mod 466) = 431), va obtine γ = 2213 (mod 467) = 29 ¸si δ = (100 - 127 * 29) * 431 (mod 466) = 51: Pentru a verifica semnatura, calculam 13223 * 2951 = 189 (mod 467) si 2100 = 189 (mod 467): Semnatura este deci valida. 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: 0 1 2 3 4 5 S 49 55 49 55 49 55 K

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 1 2 0 3 4 5 6 7 S 55 49 49 55 49 55 49 55 K 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

Teoria-galois
February 2021 0
Exemplu Pledoarie
January 2021 0
1. A10.pdf
January 2021 2
Studiu De Caz Exemplu
January 2021 0
Este Esrtistas
January 2021 1

More Documents from "SixT"