Các cơ chế khóa công khai (Đinh Văn Tùng)

Một phần của tài liệu bảo mật trong thương mại điện tử (Trang 52)

C =E K1 (D K2 (E K1 (M )))

2.2.2Các cơ chế khóa công khai (Đinh Văn Tùng)

Tiêu chuẩn mã hóa nâng cao

2.2.2Các cơ chế khóa công khai (Đinh Văn Tùng)

Vấn đề quản lý khóa trong hệ thống mật mã đối xứng được giải quyết thành công bằng cách sử dụng hệ thống mật mã khóa công khai. Để mô tả cơ bản về hệ thống khóa công khai, ta sử dụng hình ảnh một hộp thư. Hòm thư là hình ảnh biểu diễn cho khóa công khai, bởi vì bất kỳ ai cũng có thể gửi thư vào trong hòm. Tuy nhiên chỉ có người chủ hộp thư mới có khóa của hộp thư- tượng trưng cho khóa riêng- người chủ mới mở thư và lấy thư.

Hình 4.7:Hộp thư là hình ảnh mô phỏng hệ thống khóa công khai

Trong hệ thống mật mã khóa công khai, các khóa mã hóa và giải mã khác nhau, khi ta biết được một khóa nào đó thì về mặt tính toán không khả thi để tìm ra được khóa còn lại. Một khóa được gọi là khóa bí mật và phải được giữ bí mật. Khóa còn lại được gọi là khóa công khai và được công bố cho mọi người biết, khóa công khai được dùng để mã hóa , và khóa riêng dùng để giải mã, ký hiệu:

C M EPuK( )= M M E D C DPrK( )= PrK( PuK( ))=

W Diffe và M.E.Hellman là những người đi tiên phong trong mật mã khóa công khai, họ đã phát minh ra một trong hai hệ thống mật mã khóa công khai đầu tiên.

2.2.2.1 RSA

RSA là hệ thống khóa công khai nổi tiếng và được sử dụng phổ biến nhất. Nó được phát minh bởi R.Rivest, A.Shamir, và L.Adleman vào năm 1978, tên của nó được lấy từ chữ cái đầu của tên ba ông.

Nhắc lại một số kiến thức về đại số

a mod n=r ⇒ a= q*n+r, 0≤r<n

ví dụ, 35 mod 4=3 vì 35=8*4+3. Tất cả số dư khi chia modulo cho 4 là {0, 1, 2, 3}. Một số tính chất :

(a+b) mod n=(a mod n)+(b mod n)=(b+a) mod n ; (ab) mod n=(a mod n)(b mod n)=(ba) mod n ;

[(a+b)+c] mod n=(a mod n)+(b mod n)+(c mod n)=[a+(b+c)]mod n ; [(ab)c] mod n=(a mod n)(b mod n)( c mod n)= [a(bc)] mod n ;

[(a+b)c] mod n=[(a mod n)+(b mod n)](c mod n)=(ac) mod n+(bc) mod n

Hai số nguyên a và b được gọi là tương đồng modulo n, ký hiệu là a ≡ b modn ⇒ n|(a-b)

”a | b” nghĩa là “a là ước của b” hoặc “ b là bội của a” (ví dụ, 2 là ước của 8). Nếu hai số nguyên a và b có cùng số dư khi modulo n, chúng cũng là tương đồng modulo n:

(a mod n) = (b mod n) ⇒ a ≡ b modn

Ví dụ, 35 và 59 là tương đồng modulo 4 vì 35 mod 4 = 59 mod 4=3. Quá trình mã hóa : Quá trình giải mã: n M C = emod n M n M n C

C là bản mã còn M là bản rõ, khóa công khai PuK={e, n}, khóa riêng PrK={d, n}.

Thuật toán sinh khóa

1. Chọn p , q với p và q là số nguyên tố, p≠q 2. Tính n = p x q

3. Tính φ(n) = (p-1) x (q-1)

4. Chọn số nguyên e sao cho gcd(φ(n), e)=1; 1< e< φ(n) 5. Tính d với d ≡ e-1 mod (φ(n))

6. Khóa công khai PuK={e, n} 7. Khóa riêng PrK={d, n}

RSA hiện nay

Trong phần cứng, RSA chậm hơn DES hàng nghìn lần: tốc độ mã hóa của phần cứng đối với RSA với khóa 512 bit là khoảng 1Mbps. Trong phần mềm, DES nhanh hơn RSA hàng trăm lần: tốc độ mã hóa phần mềm RSA khoảng 10Kbps. Theo luật của Moore, sức mạnh tính toán tăng gấp đôi trong khoảng thời gian 18 tháng, và chi phí tính toán giảm 1/10 sau 5 năm. Bởi vì RSA và DES, không giống như one- time pad, không bảo mật hoàn hảo, theo thời gian phải sử dụng các khóa dài hơn, cũng như phải cải thiện công nghệ mã hóa. Đây là vấn đề chính nếu RSA hoặc bất kỳ hệ mật mã không hoàn hảo nào khác được sử dụng trong chữ ký số. Độ bảo mật của RSA phụ thuộc vào độ khó của việc factoring số modulus n, tức là việc phân tích n thành 2 số nguyên tố p và q tạo nên nó.Vào tháng 8 năm 1999, một đội các nhà khoa học của National Research Institute for Mathematics and Computer Science ở Hà Lan, dẫn đầu là Hernam te Riele đã chứng minh được rằng việc factoring một số 512 bit là thành công và nó bị phá trong vòng 7 tháng. Vì vậy cỡ khóa 512 bit là không còn an toàn với các cuộc tấn công hiện đại. RSA được sử dụng trong hàng trăm sản phẩm phần mềm và có thể được sử dụng để trao đổi khóa, chứ ký số, hoặc mã hóa các khối dữ liệu nhỏ. Cỡ khóa lớn nhất bị phá cho đến nay là một số 768 bit, bao gồm 232 ký tự dạng thập phân.

Một phần của tài liệu bảo mật trong thương mại điện tử (Trang 52)