Hệ mật RSA và ứng dụng trong bảo mật thông tin.DOC

27 472 0
Hệ mật RSA và ứng dụng trong bảo mật thông tin.DOC

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Mục lục    !" #$%#&'%()%*+,'%#) /$0+123 3!" 45%*06#&'%#&67%*8 / 9 9./ !:;<+1=&>4?%!1@<+1=& 4?%!1@A=&/2#B BC?%!1@()06&+%*$2>D:E+0:F%G()!H%!I J JK:E+0:F%G()D  !" #$%()!LM M !" #@%!%!2%!#&'%()%*+,'%N N!" #$%/$0+12#&'%#&67%*8 / O PQRSTUVWS !" 1X,#!Y2/$0+12Z 3C?%!1[W=-=&#2//=&S0=/2%\WS]^ 9_/`#a!b2c%*a!2:\WS] BT:%!!L2!_#!)%*WS3 J6+45de,0f%*/g#!_#!)%*/`#/h0i%*WS9 Mj%*0k%*l2WSB 3TTTSWS :m:#!:_+ !n%/o//:%!!L2N .:4p# #!q%*!:_/!6G%*#&r%!O !`%d"#s4%!*:33 .:1:_+#!2/a!t$3M TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN ________________ BÁO CÁO THU HOẠCH CHUYÊN ĐỀ uW Đề tài: Giảng viên phụ trách: PGS TS. Đỗ Văn Nhơn HV thực hiện: Vũ Thị Thu Thảo – CH1001072 Tp. H Chí Minh – 12/ 2014ồ Hệ mật RSA và ứng dụng trong bảo mật thông tin    !" #$%#&'%()%*+,'%#) /$0+12 Một số định nghĩa ; Tập số tự nhiên:  = {0, 1, 2, 3, 4, . . . } ; Tập số nguyên: 8 = {0, ±1, ±2, ±3, . . . } ; Thứ tự ≤ trên N là tối thứ tự. ; Quan hệ “6m()”, ký hiệu v : a | b ⇔ ∃ k ∈ 8, k.a = b Nói cách khác: b là Dg:() của a. ; Một số khái niệm khác: • ước số chung, ước số chung lớn nhất. Ký hiệu ước số chung lớn nhất của a và b: gcd(a,b) hay 2∧Dhay\2>D] • bội số chung, bội số chung nhỏ nhất. Ký hiệu bội số chung nhỏ nhất của a và b: lcm(a,b) hay 2∨D • Phép toán chia “thương” và chia “dư”: C?%!1[: Với a ∈ Z, b ∈ N * , có duy nhất q ∈ Z và r ∈ N sao cho a = q.b + r, 0 ≤ r < b.  Định nghĩa: a / b = q, và a % b = r. a % b còn được viết là a mod b. • a và b là nguyên tố cùng nhau khi (a,b) = 1. Ký hiệu: a ⊥ b. • p ∈ N là số nguyên tố khi : p > 1, và p chỉ có 2 ước số dương là 1 và p. Ngược lại, thì p được gọi là hợp số. • Ký hiệu tập các số nguyên tố là . Một số tính chất, định lý, và thuật toán ; C?%!1[: -2- Hệ mật RSA và ứng dụng trong bảo mật thông tin a, b ∈ N * ⇒ a ∨ b = a.b / (a ∧ b). ; C?%!1[: Với a, b ∈ N * và a > b ta có : a ∧ b = a ∧ (a % b) a ∧ b = a ∧ (a - b) ; !+`##$%<+1:0=: tính gcd(a,b) với a và b là các số tự nhiên. B1 : While a > 0 and b > 0 do if a > b then a := a % b Else b := b % a. B2 : gcd(a,b) = a + b. ; C?%!1[K=w$+# Với a, b ∈ N, a > b ≥ 1 ta có : (i) Tồn tại x, y ∈ Z: a.x + b.y = gcd(a,b). (ii) a và b nguyên tố cùng nhau ⇔ tồn tại x, y ∈ Z: a.x + b.y = 1. ; !+`##$%K=w$+# Input: a và b không âm, a ≥ b. Output: d = gcd(a,b) và hai số nguyên x, y: a.x + b.y = d. K%x+Dy^#!r0y2zdyz,y^ K3d3yzdy^z,3y^z,y K9{!:1=D|^0$ K=*:% }y2~Dz&y2;}Dzdyd3•}dz,y,3•},z 2yDzDy&zd3ydzdydz,3y,z,y,z =%0 KB0y2zdyd3z,y,3 KJ&=#+&%0>d>,z ; C?%!1[GDt%l2()!L Mọi số nguyên n ≥ 2 đều có thể biểu diễn duy nhất dưới dạng tích các thừa số nguyên tố (không kể sai khác phép hoán vị các thừa số nguyên tố). Nhận xét: o a,b,c ∈ N * với a⊥b và a| bc thì a|c o a⊥b, a⊥c ⇒ a⊥bc o a⊥b 1 , a⊥b 2 , a⊥b n ⇒ a⊥(b 1 b 2 b n ) o Nếu một số nguyên tố là số chia của tích của các số nguyên tố khác thì nó sẽ là số chia của ít nhất một thừa số trong các số đó và ngược lại. 3!" 45%*06#&'%#&67%*8 /  :t#!:x#/∈ N * C?%!%*!€2 !$d>,∈ Z, /∈ N * : -3- Hệ mật RSA và ứng dụng trong bảo mật thông tin x là đồng dư của y mod m, kí hiệu x ≡ y (mod m), nếu m là số chia của x-y; m gọi là modulo của phép đồng dư: x ≡ y (mod m) ⇔ m | (x-y) Tập các số nguyên modulo m: Z m = { 0, 1, 2, . . . , m-1 } Nếu x ∈ Z m , số nguyên x mod m của Z m được gọi là rút gọn modulo của x theo m. Nhận xét: thực hiện phép cộng và trừ modulo x+d>,∈ Z m thì: (x+y) mod m = x+y nếu x+y < m; (x+y) mod m=x+y-m nếu x+y>= m; (x-y) mod m=x-y+m nếu x<y; (x-y) mod m=x-y nếu x>=y; C?%!1[ Cho a,b,c,a 1 ,b 1 ∈ Z, ta có: a ≡ a mod m (tính phản xạ); a ≡ b mod m ⇒ b ≡ a mod m ( tính đối xứng); a ≡ b mod m, b ≡ c mod m ⇒ a ≡ c mod m (tính chất bắc cầu); a ≡ a 1 mod m, b ≡ b 1 mod m ⇒ a +b ≡ (a 1 +b 1 ) mod m, ab ≡ a 1 b 1 mod m, a n = (a 1 ) n mod m với mọi n ∈ Z. ⇒ ta có phép toán cộng (+) và nhân (.) trên 8 / . C?%!1[GDt%l2()!L Mọi số nguyên n ≥ 2 đều có thể biểu diễn duy nhất dưới dạng tích các thừa số nguyên tố (không kể sai khác phép hoán vị các thừa số nguyên tố). n =p 1 p 2 p m trong đó p 1 p 2 p m ∈ P, p 1 ≤ p 2 ≤ p m ; C?%!1[ Một số nguyên n≥ 2 có thể biểu diễn duy nhất bằng tích các số nguyên tố theo dạng: n = (p 1 ) n1 (p 2 ) n2 (p 3 ) n3 (p k ) nk ; p 1 p 2 p m ∈ P; p 1 <p 2 < p m ; hay n =Π p ∈ P (p) np ; Định lý: n= Π p ∈ P (p) np ;m= Π p ∈ P (p) mp ;k= Π p ∈ P (p) kp ; m,n,k ≥ 2 Ta có: a) k=mn⇔ k p = m p + n p , ∀ p ∈ P; b) m| k ⇔ m p ≤ k p , ∀ p ∈ P; c) k = gcd(m,n) ⇔ k p = min(n p ,m p ), ∀ p ∈ P; d) k = lmc(m,n) ⇔ k p = max(n p ,m p ), ∀ p ∈ P; e) gcd(km,kn)=k gcd(m,n); f) lcm(km,kn)=k lcm(m,n); g) d=gcd(m,n), m=m/d,n=n/d ⇒ m ’ ⊥ n ’ ; h) gcd(m,n)lcm(m,n) = mn; i) m ⊥ n ⇔ m p n p =0, ∀ p ∈ P; j) m ⊥ n ⇔ lcm(m,n) =mn, ∀ p ∈ P; k) k ⊥ n, k ⊥ m ⇒ k ⊥ mn ; Nhận xét: * Các số nguyên m 1 m k là đôi một số nguyên tố cùng nhau nếu và chỉ nếu min 1 ≤ i ≤ k (m i ) p = 0; ∀ p ∈ P ⇔ Π 1 ≤ i ≤ k (m i ) p =0; -4- Hệ mật RSA và ứng dụng trong bảo mật thông tin * a=b(mod m), a= b(mod n) nếu và chỉ nếu a=b(mod lcm (m,n)); * Khi m ⊥ n, ta có: a=b(mod m), a =b (mod n) nếu và chỉ nếu a=b(mod mn); 9./ !:;=+1=&>4?%!1@<+1=& 4?%!1@A=&/2# ;C?%!%*!€2: Một số nguyên a∈Z m được gọi là modulo khả nghịch nếu ∃d∈Z m : Ax ≡ 1 (mod m) Số x là duy nhất và được gọi là nghịch đảo của a modulo m kí hiệu a -1 mod m hay a -1 ; ;C?%!%*!€2Cho n≥ 1, ϕ(n) là tập chứa số các số nguyên [1,n], nguyên tố cùng nhau với n. Hàm ϕ(n) gọi là hàm phi-Euler ϕ(1) =1, ϕ(2) =2,ϕ(3) =2,ϕ(4) =2 ;C?%!1[: Cho x, y ∈8 m , m ≥ 2. o x ∈8 m * ⇔ x ⊥ m. o x, y ∈ 8 m * ⇔ x -1 , xy ∈ 8 m * . o card(8 m * ) = ϕ(m) Nhận xét : Khi m nguyên tố thì ϕ(m) = m-1 và 8 m * = 8 m - {0}. ; C?%!1[<+1=&: Cho m ≥ 2. ta có : x ⊥ m ⇒ x ϕ (m) ≡ 1 (mod m). ; C?%!1[A=&/2#: Cho m ≥ 2. ta có : p ∈ P, x ⊥ p ⇒ x p-1 ≡ 1 (mod p). ; C?%!1[: a) p ∈ P, n ∈ Z ⇒ n p ≡ n (mod p). b) p ∈ P, n ∈ Z, r ≡ s (mod ϕ(m)) ⇒ n r ≡ n s (mod p). c) Nếu p và q là hai số nguyên tố khác nhau, và n = p.q thì ϕ(n) = (p-1)(q-1). ; C?%!1[06()&+%*$2: * Nếu các số nguyên n 1 , n 2 , …, n k đôi một nguyên tố cùng nhau và n = n 1 .n 2 …n k , thì hệ đồng dư x ≡ a 1 (mod n 1 ) x ≡ a 2 (mod n 2 ) . . . x ≡ a k (mod n k ) có nghiệm duy nhất trong 8 n . ** Ánh xạ f : 8 n → 8 n1 x8 n2 x … x 8 nk -5- Hệ mật RSA và ứng dụng trong bảo mật thông tin với f(x) = (x mod n 1 , x mod n 2 , …, x mod n k ), x ∈8 n , là song ánh. ; C?%!1[ Cho m ⊥ n. Ánh xạ f : 8 mn → 8 m x8 n xác định bởi f(x) = (x mod m, x mod n), x ∈8 mn , là song ánh. BC?%!1@()06&+%*$2>D:E+0:F%G()!H%!I C?%!%*!€2 cho m 1 ,m 2 m I ∈ N * đôi một nguyên tố cùng nhau m 1 <m 2 <m I và M=m 1 * m 2 m I . Thì mỗi số nguyên x ∈ [0,M] có thể được biểu diễn duy nhất dưới dạng : v(x) = (v 1 ,v 2 v I ), v I =v I (x)=x(mod m i ), 1≤ i≤ I ; Và ánh xạ v : Z m → Z m1 x Z m2 Z ml là một song ánh theo định lý số dư Trung Hoa v(x) được gọi là một biểu diễn cơ số hỗn hợp của x cho modulo m 1 ,m 2 m I . Tổng và tích các biểu diễn hỗn hợp : v(x)+v(y)=v(x+y)(mod M)=(w 1 ,w 2 w I ); v(x)*v(y)=v((x*y)(mod M)=(z 1 ,z 2 z I ); Trong đó: w =(ui+vi)(mod mi),zi=(ui*vi)(mod mi),1iI; tổng quát ta có: v(x)+ v(x )=v((x + x)(mod M))=v(x)+ +v(x )(mod M)); v(x )* *v(x)=v((x* *x )(mod M))=((v 1 (x )* …*v(x )(mod M)* *v (x)*…v (x) mod m ∀k≥ 1. Thuật giải Garner ( phiên bản 2 số nguyên tố cùng nhau ) Input: x mod p, x mod q; Output: x ∈ [0,pq] ; a) C=p -1 mod q, u=(V2-V1)C mod q ; b) X=V1+up c) Return (x) JK:E+0:F%G()D  !" #$%()!L C?%!%*!€2 cho b ∈ N, b>=2. Bất kỳ số nguyên a ∈ N * nào đều có thể được biểu diễn duy nhất dưới dạng: A=ab + a 1 b+ Σ 0 ≤ i ≤ n a b , trong đó a ∈ N, 0 a ≤ i ≤ b, 0≤ i≤ n ; và a >0 được gọi là biểu diễn a theo cơ số b, và được viết như : a=(a a aa) b . Các số nguyên a i , 0 ≤ i≤ n, được gọi là các kí số, a n là ký số bậc cao, a 0 là bậc thấp nhất,b là cơ số, chiều dài bằng n+1. Khi b=2 ( 8 hay 16) được gọi là biểu diễn cơ sở nhị phân (bát phân, thập lục phân) của a. Hệ nhị phân biểu diễn bởi 2 kí hiệu :0,1 Hệ thập lục phân : 0→ 9,A→ Z ; !+`#*:t:D:E+0:F%#!=$G()D Input : a,b ∈ N * , b≥ 2 ; -6- Hệ mật RSA và ứng dụng trong bảo mật thông tin Output : a=(a a aa) b i=0 ; x =a ; q=x/b ;a i = x%b. While a>0, do : i =i+1 ;x=q ;q=x/b ;a =x%b Return (a a aa) b Ví dụ : biểu diễn thập lục phân của 42 là : 42=2*16+A=(2A) 16 C?%!1[ Cho b ∈ N, b≥ 2 . Nếu a= (a a aa) b là biểu diễn cơ sở của b theo a, và k là một số nguyên dương thì : A= (a a aa) b k là biểu diễn cơ sở b k của a, trong đó : u i = Σ 0 ≤ j ≤ k-1 a ik+j b j , 0≤ i ≤ m-1, và u m = Σ 0 ≤ j ≤ n-2m a 2m+j b j , m+1 là số nguyên dương nhỏ nhất ≥ (n+1)/k Khi k =2, ta có : u i = Σ 0 ≤ j ≤ 1 a i2+j b j , 0≤ i ≤ m-1, và u m = Σ 0 ≤ j ≤ n-2m a 2m+j b j , m+1 là số nguyên dương nhỏ nhất ≥ (n+1)/2 Ví dụ : Biểu diễn nhị phân của a = 123 là (1111011) 2 , thì biểu diễn tứ phân của a là : a = ((1) 2 (11) 2 (10) 2 (11) 2 ) 4 = (1323) 4 Thực vậy ta có b=2, n=6,k=2,(n+1)/2=3.5,n-2m=0. u = ab +ab = (aa ) =(11) 2 = (3) 4 u 1 = ab +ab = (a 3 a 2 ) 2 =(10) 2 = (2) 4 u = ab + ab =( aa) 2 =(11) = (3) u = ab(a) = (1) = (1) và (123) = 1* 4 3 + 3* 4 2+ 2*4+3= 64+48+8+3 =123. Thuật giải biểu diễn cơ số b Input : a,b ∈ N * , b ≥ 2 ; Output : a = (a aaa) b và q,r : a= qb+r, 0 ≤ r <b a) Tính n= b n ≤ a < b n+1 b) Cho i chạy từ n xuống 1, Do : 1. Tính k :kb i ≤ a <(k+1)b i ; 2. Đặt a i = k, a = a-kb i a=a,r = a;q=a b + + ab + a ; c) Return (( a a aa) b,q,r ) Chú ý : b ≤ a<b ⇔ n≤ log(a)/log(b) < n :1 n = [log(a)/log(b)] M !" #@%!%!2%!#&'%()%*+,'% Trong suốt phần này ta cho b ∈ N, b≥ 2 Thuật giải 3.5 (cộng 2 số nguyên dương) Input : x,y∈ N * , x = ( x xx), y = ( y yy) Output : x+y = (w w ww) (1) c=0~•;2&&,0:*:#•~ (2) cho i chạy từ 0 đến n, Do: a. w = (x + y +c) %b b. Nếu (x +y +c)< b then c=0 ; else c=1. (3) w +1 = c (4) Return (w w w w) -7- Hệ mật RSA và ứng dụng trong bảo mật thông tin Thuật giải 3.6 (trừ 2 số nguyên dương) Input : x,y∈ N * , x≥ y, x = ( x xx), y = ( y yy) Output : x-y = (w ww) (1) c=0~•;2&&,0:*:#•~ (2) cho i chạy từ 0 đến n, Do: a. w = (x - y +c) %b b. Nếu (x - y +c)< b then c=0 ; else c=-1. (3) Return (w w w) Thuật giải 3.7 (nhân 2 số nguyên dương) Input : x,y∈ N * , x≥ y, x = ( x xx), y = ( y yy) Output : x*y = (w ww) (1) cho i chạy từ 0 đến n, Do: w i = 0 (2) cho i chạy từ 0 đến n, Do: a. c= 0 b. cho i chạy từ 0 đến n, Do: (uv) = w + X Y + c ;w = V ; c=u. c. W = u. (3) Return (w w w) Ghi chú : Khi n =0, m=0, ta có tích z= x*y =(w w) , trong đó W = z % b , w = (z/b % b và dùng thuật giải 3.4 ta được w, w Thuật giải 3.8 (bình phương 1 số nguyên dương_ dùng thuật giải 3.7) Input : x∈ N * , x≥ y, x = ( x xx) Output : x 2 = (w ww) (1) cho i chạy từ 0 đến n, Do: w i = 0 (2) cho i chạy từ 0 đến n, Do: a. c= 0 b. cho i chạy từ 0 đến n, Do: (uv) = w + X X + c ;w = V ; c=u. c. W = u. (3) Return (w w w) N!" #$%/$0+12#&'%#&67%*8 / Trong suốt phần này, ta xét m ∈ N * C?%!%*!€2 Cho x,y ∈ Z, m∈ N * ; x được gọi là đồng dư với y modulo m, kí hiệu : X ≡ y (mod m), nếu m chia hết cho x-y; m được gọi là dư số của phép đồng dư. Các số nguyên là dư số của m, kí hiệu Z m , là tập : Z m = {0,1,2, m-1} Nếu x ∈ Z m, số nguyên x mod m của Z m được gọi là dư số rút gọn của x theo m ; và ta có thể tính x mod m theo thuật giải tính modulo. Ghi chú : Nếu x,y ∈ Z m , thì (x+y) mod m = x+y nếu x+y<m ; (x+y) mod m = x+y-m nếu x+y≥ m ; (x+y) mod m = x+y-m nếu x<y ; (x+y) mod m = x-m nếu x≥ y ; Thực vậy, ta có : x <y ⇒ 0 ≤ x+m-y <m,(x-y) mod m =x+m-y ; -8- Hệ mật RSA và ứng dụng trong bảo mật thông tin x >y ⇒ 0 ≤ x-y <m,(x-y) mod m =x-y ; Vì thế ta có thể tính cộng trừ modulo : (x+y) mod m một cách dễ dàng. Nếu x,y ∈ Z m , thì 0≤ c, y ≤ m-1, 0≤ x*y≤ m 2 -1 ; và thuật giải nhân modulo cho ta kết quả phép nhân modulo. Cho k là 1 số nguyên thỏa : k*m≤ x*y<(k+1)*m, ta có : (x*y) mod m = x*y-k*m ; Khi x,y,m là những số nguyên lớn, 0≤ x,y<m,b≥ 2, và y = Σ 0 ≤ i ≤ I y i b j là biểu diễn cơ số b của y, ta có : (x*y) mod m = (y *x+ Σ 0 ≤ i ≤ I yi(x* b ) mod m)) mod m, (x*y i+1 ) mod m = (b *((x* b ) mod m)) mod m, 0 ≤ i ≤ I . Vì thế ta có thể sử dụng thuật giải sau để tính tích modulo P = (x*y) mod m. !+`#*:t:#@%!#@!/$0+1$y\d•,]/$0/ 1) Đặt x=x mod m, y = y mod m, và P = (x*y ) mod m. 2) Cho i từ 1 đến I, do : a. x= (b*x) mod m ; b. Tính x=(y i *x) mod m, và P= (P+z) mod m. 3) return P Khi b =2, ta có : !+`#*:t:#@%!#@!/$0+1$y\d•,]/$0/ 1)Đặt x=x mod m, y = y mod m, và P = 0. Nếu y > 0 thì P = x. a) Cho i từ 1 đến I, do : b) x= (2*x ) mod m ; 2)Tính x=(y i *x) mod m, và P= (P+z) mod m. 3) return P. PQRSTUVWS !" 1X,#!Y2/$0+12 C?%!%*!€2 Cho x ∈ Z m , và p ∈ N * ; p = Σ 0 ≤ i ≤ 1 p 2 . Phép toán y = x p mod m được gọi là phép lũy thừa modulo. Ta có : x p =x *(x) p1 * ( x) * * (x) !+`#*:t: Input : x ∈ Z m, p = Σ 0 ≤ i ≤ 1 p 2 Output : y = x p mod m (1) y =1 Nếu p=0, return y (2) A = x nếu p 0 = 1 thì y = x (3) Cho i chạy từ 1 đến I, do : a. A= A mod m ; b. Nếu p =1 thì y = (A*y) mod m (4) return y Thuật giải tính lũy thừa từ trái sang phải Input : x ∈ Z m, p = Σ 0 ≤ i ≤ 1 p 2 Output : y = x p mod m (1) y =1 (2) Cho i chạy từ 1 đến I, do : -9- Hệ mật RSA và ứng dụng trong bảo mật thông tin a. y= y mod m ; b. Nếu p =1 thì y = (x*y) mod m (3) return y thuật giải: Input : x ∈ Z m, p = Σ 0 ≤ i ≤ 1 p 2 Output : y = x p mod m (1) x 0 =1. cho i chạy từ 1 đến b-1, do : x i = (x i-1 *x) mod m (2) y=1 cho i chạy từ I đến 0, do : a. y = y b mod m b. Nếu p i = 1 thì y = (y* x pi ) mod m. (3) return y !:!‚ Xét x k (mod pq), trong đó p,q hai số nguyên tố khác nhau Với k 1 = k mod(p-1), k 2 = k mod(q-1), ∃ n 1 , n 2 : k = k 1 +n 1 (p-1) = k 2 +n 2 (q-1) thì x k (mod p) = ( x (mod p))( x (mod p)) , x mod p =1 (định lý Fermat) Vì thế x k (mod p) = x (mod p) Ta có x k (mod q) = x (mod q) (tính đối xứng), Vì thế x k (mod p) = x (mod p), x k (mod q) = x (mod q) Ta có : V(x) = v(x mod pq) = (v(x) mod p, v (x) mod q) = (v(x) mod p, v (x) mod q) Trong đó : V(x) = (v (x), v (x))=(x mod p,x mod q), k = k mod (p-1), k = k mod (q-1) Lưu ý : thuật giải tính lũy thừa từ trái sang phải có thể mở rộng với nhiều số nguyên tố phân biệt. Ví dụ, khi q,p,r phân biệt, ta có : v(x) k = v(x mod pqr) = ( v (x) mod p, v (x) mod q, v (x) mod r = v ( x) mod p, v (x) mod q, v (x) mod r) Trong đó : v(x) = ( v (x), v (x), v (x)) = ( x mod p, x mod q, x mod r), k = k mod (p-1), k = k mod (q-1), k = k mod (r-1). 3C?%!1[W=-=&#2//=&S0=/2%\WS] Cho p và q là hai số nguyên tố phân biệt, n = pq, ϕ = ϕ(n) = (p-1)(q-1), 1 < e < ϕ, e và ϕ nguyên tố cùng nhau, d = e -1 mod ϕ, 1 < d < ϕ, 0 ≤ m < n, và c = m e mod n. Thì m = c d mod n. !ƒ%*/:%! Do ed=1 mod ϕ, ∃ k thỏa mãn ed =1+ kϕ (định lý Euler) -10- [...]... page như sau: -19- Hệ mật RSA và ứng dụng trong bảo mật thông tin Nội dung mã hóa nhận được từ Alice với key size 16 bits Chọn nút Decryt message from Alice (with Bob private key) để giải mã: Nội dung giải mã nhận được từ Alice với key size 16 bits Chọn nút Click to see private key để xem private key của Bob -20- Hệ mật RSA và ứng dụng trong bảo mật thông tin Tương tự có thể gửi thông điệp từ Bob cho... key size 16 bits Hệ mật RSA và ứng dụng trong bảo mật thông tin Nội dung mã hóa nhận được từ Bob với key size 16 bits Chọn nút Decryt message from Bob (with Alice private key) để giải mã: Nội dung giải mã nhận được từ Bob với key size 16 bits Chọn nút Click to see private key để xem private key của Alice -22- Hệ mật RSA và ứng dụng trong bảo mật thông tin III Nhận xét & đánh giá Mã hoá RSA 1024 bit đã.. .Hệ mật RSA và ứng dụng trong bảo mật thông tin Ta có m =1 mod N, vì thế: ( m mod N)k = 1k mod N = 1 mod N, (( m mod N)k mod N) m = (1 mod N)m= m mod N = m, M=(m mod N)(m mod N) = m mod N = m mod N Vì thế cd mod N = (m ) mod N = m mod N II.3 Hệ mật khóa công khai (RSA) : Hệ mật RSA, viết tắt từ tên của 3 nhà toán học đã phát minh ra hệ mã RSA: R Rivest, A Shamir, L Adleman, là một hệ thống khóa... khóa công khai -12- c: cipher text Hệ mật RSA và ứng dụng trong bảo mật thông tin 4) Giải mật c: cipher text m = c modulo N m: Plain text Khóa (d,N) Hình 3.2 giải mật trên hệ RSA Trong đó (d,N) là cặp khóa riêng tư II.5 Lưu đồ xây dựng một hệ thống mật mã dùng RSA: -13- Hệ mật RSA và ứng dụng trong bảo mật thông tin /* chương trình mã*/ p1,q1,M1,phi1, e1,d1 p2,q2,M2,phi2, e2,d2 Tính M1 = p1*q1 Phi1... Alice.Trên thực tế chữ ký có thể là 1 hash code của mật mã, của thông điệp mà cho phép người nhận xác minh rằng thông điệp này an toàn trong suốt quá trình truyền thông điệp Chương trình demo không có tính năng chữ ký, tuy nhiên vẫn thực hiện mã hóa và giải mã khá tốt II Cài đặt và thử nghiệm chương trình -18- Hệ mật RSA và ứng dụng trong bảo mật thông tin Trang Alice: Chương trình tự tạo khóa public... khoá RSA 768 bit thực hiện trên 80 vi xử lí Opteron Theo bài báo đó, RSA 768 bit khó hơn 1000 lần so với RSA 512 bit (bị phá vỡ cách đây một thập kỉ), và RSA 1024 bit khó hơn 1000 lần so với RSA 768 bit Theo công bố của bài báo trên (tháng 2/2010), RSA 1024 bit có thể bị phá vỡ bằng sức tính toán tương đương với 1500 năm, dùng một VXL Opteron 2,2 GHz -23- Hệ mật RSA và ứng dụng trong bảo mật thông. .. Internet banking sử dụng https (ssl) mà không dùng các trusted CA thì sẽ gặp rất nhiều khó khăn trong việc phân phối site’s certificate cho khách hàng để nhúng vào PC của họ (vì khi đó site’s certificate phải được phân phối an toàn đến khách hàng bằng hình thức không thông qua Internet - out of band) và dịch vụ đó -16- Hệ mật RSA và ứng dụng trong bảo mật thông tin sẽ khó được sử dụng rộng rãi ở mọi... d41d8cd98f00b204e9800998ecf8427e -24- Hệ mật RSA và ứng dụng trong bảo mật thông tin Quá trình ký và gửi các tệp văn bản - Từ file cần gửi ban đầu, chương trình sẽ sử dụng hàm băm MD5 để mã hóa thành chuỗi ký tự dài 128 bit, hash value (gọi là bản tóm lược) - Chương trình sử dụng thuật toán RSA để mã hóa khóa riêng (private key) của người gửi và bản tóm lược hash value thành một dạng khác (giá trị băm ở dạng mật mã) gọi là... mã và giải mật được tiến hành theo các bước sau: 1) văn bản được chia thành các khối nhỏ có độ dài bằng nhau bởi một hàm băm 2) Sinh khóa trên cơ sở tạo ba số mũ nguyên dương (e,d,N) (e,N) -Khóa công khai; (d,N) -Khóa cá nhân; 3) Mã hóa: m: Plain text C= m modulo N Khóa (e,N) Hình 3.1 mã hóa dùng RSA Trong đó (e,N) là cặp khóa công khai -12- c: cipher text Hệ mật RSA và ứng dụng trong bảo mật thông. .. Thuật giải RSA: [1] Mã hóa (1) Từ khóa công khai (n, e) và thông điệp dưới dạng một số nguyên m ∈ [0, n), m được gọi là bản rõ (plaintext) (2) Tính c = me mod n, c được gọi là bản mã (ciphertext) [2] Giải mã Tìm lại bản rõ m từ bản mã c, sử dụng khóa cá nhân d để tính M = cd mod n (dùng định lý RSA) -11- Hệ mật RSA và ứng dụng trong bảo mật thông tin Ví dụ: p = 2357, q = 2551 n = pq = 6012707, ϕ = . Internet - out of band) và dịch vụ đó -16- Hệ mật RSA và ứng dụng trong bảo mật thông tin sẽ khó được sử dụng rộng rãi ở mọi nơi do gây khó khăn và phiền phức cho khách hàng trong vấn đề import site’s. hóa data (symmetric) giửa web server và web browser. -15- Hệ mật RSA và ứng dụng trong bảo mật thông tin Như ta đã biết electronic certificate chứa các thông tin bao gồm public key của site's. cùng nhau nếu và chỉ nếu min 1 ≤ i ≤ k (m i ) p = 0; ∀ p ∈ P ⇔ Π 1 ≤ i ≤ k (m i ) p =0; -4- Hệ mật RSA và ứng dụng trong bảo mật thông tin * a=b(mod m), a= b(mod n) nếu và chỉ nếu a=b(mod

Ngày đăng: 18/05/2015, 22:11

Từ khóa liên quan

Mục lục

  • HV thực hiện: Vũ Thị Thu Thảo – CH1001072

Tài liệu cùng người dùng

Tài liệu liên quan