Thuật toán trao đổi khoá Diffie-Hellman

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giải pháp bảo mật và xác thực cho các giao dịch hành chính công điện tử sở thông tin và truyền thông bắc ninh​ (Trang 30 - 32)

Diffie-Hellman là một thuật toán dùng để trao đổi khóa đối xứng (Key Exchange), không dùng để mật mã hóa thông tin. Tuy nhiên, Deffie-Hellman lại có ích trong giai đoạn trao đổi khóa bí mật của các thuật toán mật mã đối xứng. Như trên đã trình bày, một trong những vấn đề quan trọng liên quan trực tiếp đến tính an toàn của các thuật toán mật mã đối xứng là vấn đề thống nhất khoá bí mật giữa các thực thể thông tin.

Thuật toán trao đổi khoá Diffie-Hellman dựa trên phép logarit rời rạc (Discrete log). Cho trước một số g và x = gk , tìm k, sao cho k = logg(x). Tuy nhiên, nếu cho trước g, p và (gk

mod p), thì quá trình xác định k theo phương pháp logarit rời rạc. Việc tính logarit rời rạc nói chung rất phức tạp nhưng vẫn có thể thực hiện được.

Thuật toán Diffie-Hellman khá đơn giản như sau:

Gọi p là một số nguyên tố và g là một cơ số sinh (Generator) thoả điều kiện với mọi x  {1, 2, …, p-1}, tồn tại số n sao cho: x = gn mod p.

 Giá trị p và g được phổ biến công khai giữa các thực thể trao đổi khoá

 User A tạo ra một số bí mật Xa< p, tính Ya = (gXa mod p) và gửi cho B

 User B tạo ra một số bí mật Xb< p, tính Yb = (gb mod p) và gửi lại cho A

 Dựa trên thông tin nhận được từ A, User B xác định được khoá bí mật dùng

cho phiên làm việc bằng cách tính giá trị (gXa

 Tương tự, User A cũng xác định được khoá bí mật này bằng cách tính giá trị (gXb mod p)Xa = (gXaXb mod p)

 Giả sử trong quá trình trao đổi các giá trị (gXa mod p) và (gXb mod p), một người thứ 3 nào nó bắt được thông tin này thì cũng rất khó xác định được a và b vì độ phức tạp của phép toán logarit rời rạc là rất cao.

ơ

Hình 1.7: Thuật toán trao đổi khoá Diffie-Hellman

Ví dụ: Cho p = 353 và g = 3, Giả sử, User A chọn giá trị bí mật Xa = 97 và User B chọn giá trị bí mật Xb = 233. Khi đó:

User A tính được Ya = (397 mod 353) = 40 và gửi cho B. User B tính được Yb = (3233 mod 353) = 248 và gửi cho A.

User A tính được khoá bí mật K = (Yb)Xa mod 353=24897mod 353= 160

User B tính được khoá bí mật K =(Ya)Xb mod 353= 4097 mod 353 = 160

Đánh giá độ an toàn thuật toán trao đổi khoá Diffie-Hellman

Tính an toàn của Diffie-Hellman dựa trên độ phức tạp của phép toán logarit rời rạc. Nói chung, việc xác định các giá trị Xa, Xb từ các giá trị p, g, Ya và Yb là không thể thực hiện được trên các số nguyên đủ lớn. Tuy nhiên, thuật toán này không ngăn chặn được các tấn công theo phương thức xen giữa Man-In-The- Middle (MITM):

- Để thực hiện tấn công MITM trên kết nối giữa User A và User B, User C

cũng chọn hai số nguyên XC1 và XC2 thoả điều kiện XC1< p và XC2< p, sau đó cũng tính hai giá trị tương ứng YC1 = (gXc1 mod p) và YC2 = (gXc2 mod p).

User A User B

Chọn số bí mật Xa< p

Tính Ya = (gXa mod p) và gửi cho B

Tính K = (Yb)Xa mod p

Chọn số bí mật Xb< p

Tính Yb = (gXb mod p) và gửi cho A

Khi User A gửi Ya cho User B, User C sẽ chặn lấy Ya, đồng thời mạo danh A để gửi cho B giá trị YC1. User B xác định khoá K1 dựa trên YC1, và gửi lại cho A giá trị Yb. User C chặn Yb và mạo danh B để gửi cho A giá trị YC2.

User A xác định khoá K2 dựa trên YC2. Bắt đầu từ đây, C chặn bắt và thay đổi bằng cách sử dụng cặp khoá K1 và K2.

Như vậy, thuật toán Diffie-Hellman không giải quyết được vấn đề này do không có cơ chế xác thực giữa các thực thể trao đổi khoá. Sẽ được khắc phục bằng cách sử dụng kết hợp với các thuật toán xác thực như sẽ trình bày ở phần kế tiếp.

Ngoài hai thuật toán RSA và Diffie-Hellman, một số thuật toán khác cũng được phát triển dựa trên nguyên lý sử dụng một cặp khoá công khai và bí mật. Elliptic- Curve Cryptography (ECC) là một giải thuật mới đang được thử nghiệm và hứa hẹn nhiều ưu điểm so với RSA như độ phức tạp tính toán giảm trong khi tính an toàn vẫn được đảm bảo. ECC thích hợp với các ứng dụng chạy trên các thiết bị có năng lực xử lý hạn chế chẳn hạn như các thiết bị nhúng (embded devices).

Một phần của tài liệu (LUẬN văn THẠC sĩ) nghiên cứu giải pháp bảo mật và xác thực cho các giao dịch hành chính công điện tử sở thông tin và truyền thông bắc ninh​ (Trang 30 - 32)

Tải bản đầy đủ (PDF)

(80 trang)