Các kiểu thám mã

Một phần của tài liệu Tìm hiểu một số phương pháp thám mã hệ mật mã khóa công khai ứng dụng trong bảo mật dữ liệu (Trang 33 - 37)

CHƯƠNG 2: CÁC PHƯƠNG PHÁP THÁM MÃ HỆ MẬT MÃ KHÓA CÔNG

2.2. Các kiểu thám mã

Bài toán quan trọng nhất của thám mã là phá bỏ tính bí mật, tức là: với những bản mã có thể dễ dàng thu được, người thám mã phải tìm ra được nội dung thông tin che dấu bên trong bản mã.

Giả thiết chung ở đây là luôn coi đối phương biết hệ mật đang dùng. Giả thiết này được gọi là nguyên lý Kerekhoff. Dĩ nhiên, nếu đối phương không biết hệ mật được dùng thì nhiệm vụ của anh ta sẽ khó khăn hơn.Tuy nhiên ta không muốn độ mật của một hệ mật lại dựa trên một giả thiết không chắc chắn là đối phương không biết hệ mật được sử dụng. Do đó, mục tiêu trong việc thiết kế một hệ mật là phải đạt được độ mật dưới giả thiết Kerekhoff.

Việc thám mã có thể quy về việc tìm được bản rõ hoặc phát hiện khóa mã, khi biết trước hệ mật mã được sử dụng. Ngoài việc biết hệ mật mã, người thám mã còn cần có thông tin khác để tìm bản rõ và phát hiện khóa. Tuỳ theo thông tin đó là gì mà ta phân các bài toán thám mã thành các loại: tìm cách xác định khóa bí mật - thám mã chỉ biết bản mã, biết bản mã và cả bản rõ, có bản rõ được chọn trước và có bản mã được chọn trước; tìm cách xác định bản rõ - dùng modul n chung, lợi dụng tính nhân của hàm lập mã.

2.2.1. Tấn công dạng 1: Tìm cách xác định khóa bí mật Trường hợp 1: Khi thám mã chỉ biết bản mã

Trong trường hợp này, khi biết được n, người thám mã sẽ tìm cách tính giá trị của p, q theo thuật toán phân tích thành thừa số nguyên tố, từ đó chúng sẽ tính

(n) = (p-1).(q-1). Khi đã tính được (n) c người thám mã sẽ tính được khóa bí mật a theo công thức: a.b  1 (mod (n)). Khi đã tính được khóa bí mật thì người thám mã sẽ giải mã được bản mã và tìm ra bản rõ.

Giải pháp phòng tránh:

Chọn số nguyên tố p, q lớn, để việc phân tích n thành tích hai thừa số nguyên tố là khó có thể thực hiện được trong thời gian thực. thường sinh ra các số lớn (khoảng 100 chữ số) sau đó kiểm tra tính nguyên tố của nó.

Trường hợp 2: Khi thám mã biết bản mã và cả bản rõ

Người thám mã biết một bản mã Y cùng với bản rõ tương ứng X. Vì đã biết được bản rõ rồi nên việc chính của thám mã là phải xác định được khóa bí mật K’’

đang sử dụng, để giải mã các gói tin đã mã hóa mà nó bắt được sau này.

Người thám mã sẽ dựa vào bài toán tính logarit thông thường để tính ra khóa bí mật K’’ = a theo công thức:

K’’ = logyx

(mod n-1).

Từ đây toàn bộ thông tin được mã hóa bằng khóa K’ đều bị thám mã bắt được.

Giải pháp phòng tránh:

Sử dụng khóa khác nhau ở mỗi lần mã hóa, để nếu người thám mã biết được khóa giải mã ở lần mã hóa này, thì khi bắt được các gói tin ở lần mã hóa sau, họ cũng không thể sử dụng khóa đó để giải mã tiếp được nữa.

Trường hợp 3: Khi thám mã có bản rõ được chọn trước

Đây là trường hợp đặc biệt của lựa chọn bản rõ. Không chỉ có thể lựa chọn bản rõ đã mã hóa, nhưng họ còn có thể sửa đổi sự lựa chọn cơ bản kết quả của sự mã hóa lần trước. Trong trường lựa chọn bản mã người thám mã có thể đã chọn một bản rõ X, và biết được bản mã Y tương ứng (khi người thám mã chiếm được (tạm thời) máy lập mã), việc xác định khóa bí mật quay về trường hợp thứ hai. Phương pháp này tỏ ra có khả năng hơn phương pháp biết bản rõ bởi vì người phân tích có thể chọn cụ thể khối bản rõ cho mã hóa, một điều khác có thể là sản lượng thông tin về khóa nhiều hơn.

Giải pháp phòng tránh:

Sử dụng khóa khác nhau ở mỗi lần mã hóa, để nếu người thám mã biết được khóa giải mã ở lần mã hóa này, thì khi bắt được các gói tin ở lần mã hóa sau, họ cũng không thể sử dụng khóa đó để giải mã tiếp được nữa.

Trường hợp 4: Khi thám mã có bản mã được chọn trước

Người thám mã có thể chọn một bản mật mã Y, và biết bản rõ tương ứng X.

Trong trường hợp này việc xác định khóa bí mật lại quay trở về trường hợp thứ hai.

Giải pháp phòng tránh:

Sử dụng khóa khác nhau ở mỗi lần mã hóa, để nếu người thám mã biết được khóa giải mã ở lần mã hóa này, thì khi bắt được các gói tin ở lần mã hóa sau, họ cũng không thể sử dụng khóa đó để giải mã tiếp được nữa.

Trong mỗi trường hợp đối tượng cần phải xác định chính là khóa đã sử dụng:

Rõ ràng bốn trường hợp tấn công trên đã được liệt kê theo độ tăng dần của sức mạnh tấn công và cách tấn công các bản mã được lựa chọn là thích hợp đối với hệ mật mã hóa công khai.

2.2.2. Tấn công dạng 2: Tìm cách xác định bản rõ Dùng modul n chung

Giả sử có hai người tham gia A và B cùng sử dụng một modul chung n trong khóa công khai của mình, chẳng hạn A chọn khóa công khai (n, e) và giữ khóa bí mật d, B chọn khóa công khai (n, a) và giữ khóa bí mật b. Một người tham gia thứ ba C gửi một văn bản cần bảo mật x đến cả A và B thì dùng các khóa công khai nói trên để gửi đến A bản mật mã y = xe mod n và gửi đến B bản mật mã z = xa mod n.

Ta sẽ chứng tỏ rằng, một người thám mã O có thể dựa vào những thông tin n, e, a, y, z trên đường công khai mà phát hiện ra bản rõ x như sau:

(i). Tính c = e-1 mod a,

(ii). Sau đó tính h = (ce – 1)/a, (iii). Và ta được x = yc (zh)-1 mod n.

Thực vậy theo định nghĩa trên, ce – 1 chia hết cho a, và tiếp theo ta có:

yc (zh)-1 mod n = xce.(xa(ce – 1)/a

)-1 mod n = xce.(xce – 1)-1 mod n =x Suy ra bản rõ cần tìm.

Như vậy, trong trường hợp này việc truyền tin bảo mật không còn an toàn nữa.

Giải pháp phòng tránh:

Dùng modul n khác nhau cho mỗi người tham gia.

Lợi dụng tính nhân của hàm lập mã

Ta chú ý rằng hàm lập mã f(x) = xe mod n có tính nhân (multiplicative property), nghĩa là f(x.y) = f(x).f(y). Dựa vào tính chất đó, ta thấy rằng nếu y là mật

mã của bản rõ x, thì y = y.ue mod n sẽ là bản mật mã của bản rõ xu. Do đó, khi lấy được bản mật mã y, để phát hiện bản rõ x người thám mã có thể chọn ngẫu nhiên một số u rồi tạo ra bản mã y, và nếu người thám mã có khả năng thám mã theo kiểu có bản mã lựa chọn, tức có khả năng với y được chọn tìm ra bản rõ tương ứng là x = xu, thì bản rõ gốc cần thiết phát hiện sẽ là x= x.u-1 mod n. Tất nhiên, khả năng người thám mã có năng lực giải quyết bài toán thám mã theo kiểu có bản mã đã được chọn là rất hiếm, nhưng dẫu sao đây cũng là một trường hợp mà vấn đề bảo mật dễ bị tấn công, ta không thể không tính đến để tìm cách tránh.

Gải pháp phòng tránh:

Không để thám mã có khả năng thám mã theo kiểu có bản mã được chọn.

Một điểm đáng chú ý khác là đa số các kỹ thuật thám mã đều dùng phương pháp thống kê tần suất xuất hiện của các từ, các ký tự trong bản mã. Sau đó thực hiện việc thử thay thế với các chữ cái có tần suất xuất hiện tương đồng trong ngôn ngữ tự nhiên. Tại đây chúng ta chỉ xem xét đối với ngôn ngữ thông dụng nhất hiện nay đó là tiếng Anh. Việc thống kê tần suất xuất hiện của các ký tự trong trường hợp này được tiến hành dựa trên các bài báo,sách, tạp chí và các văn bản cùng với một số loại khác ...

Nhiều kỹ thuật thám mã sử dụng đặc điểm thống kê của tiếng Anh, trong đó dựa vào tần suất xuất hiện của 26 chữ cái trong văn bản thông thường để tiến hành phân tích mã. Becker và Piper đã chia 26 chữ cái thành năm nhóm và chỉ ra xác suất của mỗi nhóm như sau:

- E, có xác suất khoảng 0.120

- T, A, O, I, N, S, H, R, mỗi chữ cái có xác xuất nằm trong khoảng từ 0.06 đến 0.09 - D, L, mỗi chữ cái có xác xuất xấp xỉ 0.04

- C, U, M, W, F, G, Y, P, B, mỗi chữ cái có xác xuất nằm trong khoảng từ 0.015 đến 0.023

- V, K, J, X, Q, Z, mỗi chữ cái có xác xuất nhỏ hơn 0.01

Ký tự Xác suất Ký tự Xác suất Ký tự Xác suất

A 0.082 J 0.002 S 0.063

B 0.015 K 0.008 T 0.091

C 0.028 L 0.040 U 0.028

D 0.043 M 0.024 V 0.010

E 0.127 N 0.067 W 0.023

F 0.022 O 0.075 X 0.001

G 0.020 P 0.019 Y 0.020

H 0.061 Q 0.001 Z 0.001

I 0.070 R 0.060

Ngoài ra, tần suất xuất hiện của dãy hai hay ba chữ cái liên tiếp được sắp theo thứ tự giảm dần như sau:

Cặp chữ Tần suất Cặp chữ Tần suất Cặp chữ Tần suất

TH 10.00 ED 4.12 OF 3.38

HE 9.50 TE 4.04 IT 3.26

IN 7.17 TI 4.00 AL 3.15

ER 6.65 OR 3.98 AS 3.00

RE 5.92 ST 3.81 HA 3.00

ON 5.70 AR 3.54 NG 2.92

AN 5.63 ND 3.52 CO 2.80

EN 4.76 TO 3.50 SE 2.75

AT 4.72 NT 3.44 ME 2.65

ES 4.24 IS 3.43 DE 2.65

Một phần của tài liệu Tìm hiểu một số phương pháp thám mã hệ mật mã khóa công khai ứng dụng trong bảo mật dữ liệu (Trang 33 - 37)

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

(66 trang)