Tải bản đầy đủ (.pdf) (5 trang)

Giáo trình tin học : Hệ mật mã và những khả năng tạo liên lạc tuyệt mật của nó phần 8 pps

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (143.27 KB, 5 trang )

Vietebooks Nguyn Hong Cng

Trang 36
Xét thấy rằng, nếu độ dịch tơng đối khác 0 thì các ớc lợng này
thay đổi trong khoảng từ 0.031 đến 0,045; ngợc lại nếu độ dịch tơng đối
bằng 0 thì ớc lợng bằng 0,065. Có thể dùng nhận xét này để tạo nên một
phỏng đoán thích hợp cho l = k
i
-k
j
(độ dịch tơng đối của y
i
và y
j
) nh sau:
Giả sử cố định y
i
và xét việc mã hoá y
j
bảng e
0
,e
1
,e
2
. . . Ta kí hiệu các kết quả
bằng y
j
0
,y
j


1
,. . . Dễ dàng dùng các chỉ số MI
c
(y
i
,y
j
g
), 0 g 25 theo công
thức sau:


Khi g = l thì MI
c
phải gần với giá trị 0,065 vì độ dịch tơng đối của y
i
và y
j

bằng 0. Tuy nhiên, với các giá trị g l thì MI
c
sẽ thay đổi giữa 0,031 và
0,045.

Bằng kỹ thuật này, có thể thu đợc các độ dịch tơng đối của hai xâu
con y
i
bất kỳ. Vấn đề còn lại chỉ là 26 từ khoá có thể và điều này dễ dàng tìm
đợc bằng phơng pháp tìm kiếm vét cạn.


Trở lại ví dụ 1.11 để minh hoạ.
Ví dụ 1.11( tiếp ):
ở trên đã giả định rằng, độ dài từ khoá là 5. Bây giờ ta sẽ thử tính các
độ dịch tơng đối. Nhờ máy tính, dễ dàng tính 260 giá trị MI
c
(y
i
,y
j
g
), trong
đó 1 i j 5; 0 g 25. Các giá trị này đợc cho trên bảng 1.5. Với mỗi
cặp ( i,j), ta tìm các giá trị của MI
c
(y
i
,y
j
g
) nào gần với 0,065. Nếu có một giá
trị duy nhất nh vậy( Đối với mỗi cặp (i,j) cho trớc), thì có thể phán đoán
đó chính là giá trị độ dịch tơng đối.

Trong bảng 1.5 có 6 giá trị nh vậy đợc đóng khung. Chúng chứng tỏ
khá rõ ràng là độ dịch tơng đối của y
1
và y
2
bằng 9; độ dịch tơng đối của
y

2
và y
3
bằng 13; độ dịch tơng đối của y
2
và y
5
bằng 7; độ dịch tơng đối
của y
3
và y
5
bằng 20; của y
4
và y
5
bằng 11. Từ đây có các phơng trình theo
5 ẩn số K
1
, K
2
, K
3
, K
4
, K
5
nh sau:
K
1

- K
2
= 9
K
1
- K
2
= 16
K
2
- K
3
= 13
K
2
- K
5
= 17
K
3
- K
5
= 20
K
4
- K
5
= 11
'n.n
'ff

)y,x(MI
i
gii
g
c

=

=
25
0
Vietebooks Nguyn Hong Cng

Trang 37
Điều này cho phép biểu thị các K
i
theo K
1
;
K
2
= K
1
+ 17
K
3
= K
1
+ 4
K

4
= K
1
+ 21
K
5
= K
1
+ 10
Nh vậy khoá có khả năng là ( K
1
, K
1
+17, K
1
+4, K
1
+21, K
1
+10) với
giá trị K
1
nào đó Z
26
. Từ đây ta hy vọng rằng, từ khoá là một dịch vòng
nào đó của AREVK. Bây giờ , không tốn nhiều công sức lắm cũng có thể
xác định đợc từ khoá là JANET. Giải mã bản mã theo khoá này, ta thu đợc
bản rõ sau:

The almond tree was in tentative blossom. The days were longer often

ending with magnificient evenings of corrugated pink skies. The hunting
seasun was over, with hounds and guns put away for six months. The
vineyards were busy again as the well-organized farmers treated their
vinesand the more lackadaisical neighbors hurried to do the pruning they
have done in November.
Bảng 1.5. Các chỉ số trùng hợp tơng hỗ quan sát đợc.
i j Giá trị của MI
c
(y
j
,y
j
g
)
1 2 0,028 0,027 0,028 0,034 0,039 0,037 0,026 0,025 0,052
0,068 0,044 0,026 0,037 0,043 0,037 0,043 0,037 0,028
0,041 0,041 0,041 0,034 0,037 0,051 0,045 0,042 0,036
1 3 0,039 0,033 0,040 0,034 0,028 0,053 0,048 0,033 0,029
0,056 0,050 0,045 0,039 0,040 0,036 0,037 0,032 0,027
0,037 0,047 0,032 0,027 0,039 0,037 0,039 0,035
1 4 0,034 0,043 0,025 0,027 0,038 0,049 0,040 0,032 0,029
0,034 0,039 0,044 0,044 0,034 0,039 0,045 0,044 0,037
0,055 0,047 0,032 0,027 0,039 0,037 0,039 0,035
1 5 0,043 0,033 0,028 0,046 0,043 0,044 0,039 0,031 0,026
0,030 0,036 0,040 0,041 0,024 0,019 0,048 0,070
0,044
0,028 0,038 0,044 0,043 0,047 0,033 0,026
2 3 0,046 0,048 0,041 0,032 0,036 0,035 0,036 0,020 0,024
0,039 0,034 0,029 0,040 0,067
0,061 0,033 0,037 0,045

0,033 0,033 0,027 0,033 0,045 0,052 0,042 0,030
2 4 0,046 0,034 0,043 0,044 0,034 0,031 0,040 0,045 0,040
0,048 0,044 0,033 0,024 0,028 0,042 0,039 0,026 0,034
0,050 0,035 0,032 0,040 0,056 0,043 0,028 0,028
2 5
0,033 0,033 0,036 0,046 0,026 0,018 0,043 0,080
0,050
0,029 0,031 0,045 0,039 0,037 0,027 0,026 0,031 0,039
0,040 0,037 0,041 0,046 0,045 0,043 0,035 0,030
3 4 0,038 0,036 0,040 0,033 0,036 0,060 0,035 0,041 0,029
0,058 0,035 0,035 0,034 0,053 0,030 0,032 0,035 0,036
0,036 0,028 0,043 0,032 0,051 0,032 0,034 0,030
3 5 0,035 0,038 0,034 0,036 0,030 0,043 0,043 0,050 0,025
0,041 0,051 0,050 0,035 0,032 0,033 0,033 0,052 0,031
0,027 0,030 0,072
0,035 0,034 0,032 0,043 0,027
4 5 0,052 0,038 0,033 0,038 0,041 0,043 0,037 0,048 0,028
0,028 0,036 0,061
0,033 0,033 0,032 0,052 0,034 0,027
0,039 0,043 0,033 0,027 0,030 0,039 0,048 0,035
Vietebooks Nguyn Hong Cng

Trang 38

1.2.4.Tấn công với bản rõ đ biết trên hệ mật Hill.
Hệ mã Hill là một hệ mật khó pha hơn nếu tấn công chỉ với bản mã.
Tuy nhiên hệ mật này dễ bị phá nếu tấn công bằng bản rõ đã biết. Trớc tiên,
giả sử rằng, thám mã đã biết đợc giá trị m đang sử dụng. Giả sử thám mã có
ít nhất m cặp véc tơ khác nhau xj = (x
1,j

, x
2,j
, , . . ., x
m,j
) và y
j
= (y
1,j
, y
2,j
, ,y
m,j
)
(1 j m) sao cho y
j
= e
K
(x
j
), 1 j m. Nếu xác định hai ma trận: X = (x
i,j
)
Y = (y
i,j
) cấp mìm thì ta có phơng trình ma trận Y = XK, trong đó ma trận
K cấp mìm là khoá cha biết. Với điều kiện ma trận Y là khả nghịch. Oscar
có thể tính K = X
-1
Y và nhờ vậy phá đợc hệ mật. ( Nếu Y không khả nghịch
thì cấn phải thử các tập khác gồm m cặp rõ - mã).


Ví dụ 1.12.
Giả sử bản rõ Friday đợc mã hoá bằng mã Hill với m = 2, bản mã
nhận đợc là PQCFKU.
Ta có e
K
(5,17) = (15,16), e
K
(8,3) = (2,5) và e
K
(0,24) = (10,20). Từ hai
cặp rõ - mã đầu tiên, ta nhận đợc phơng trình ma trận:

Dùng định lý 1.3, dễ dàng tính đợc:
Bởi vậy:
Ta có thể dùng cặp rõ - mã thứ 3 để kiểm tra kết quả này.

Vấn đề ở đây là thám mã phải làm gì nếu không biết m?. Giả sử rằng
m không quá lớn, khi đó thám má có thể thử với m = 2,3,. . . cho tới khi tìm
đợc khoá. Nếu một giá trị giả định của m không đúng thì mà trận mìm tìm
đợc theo thuật toán đã mô tả ở trên sẽ không tơng thích với các cặp rõ - mã
khác. Phơng pháp này, có thể xác định giá trị m nếu cha biết.

1.2.5. Thám m hệ m dòng xây dựng trên LFSR.
K









=








3 8
17 5
5 2
16 15








=










15 2
1 9
3 8
17 5
1








=

















=
3 8
19 7
5 2
16 15
15 2
1 9
K
Vietebooks Nguyn Hong Cng

Trang 39
Ta nhớ lại rằng, bản mã là tổng theo modulo 2 của bản rõ và dòng
khoá, tức y
i
= x
i
+ z
i
mod 2. Dòng khóa đợc tạo từ (z
1
,z
2
,. . .,z
m
) theo quạn
hệ đệ quy tuyến tính:

trong đó c
0
,. . .,c
m
Z
2
(và c
0
= 1)

Vì tất cả các phép toán này là tyuến tính nên có thể hy vọng rằng, hệ
mật này có thể bị phá theo phơng pháp tấn công với bản rõ đã biết nh
trờng hợp mật mã Hill. Giả sử rằng, Oscar có một xâu bản rõ x
1
x
2
. . .x
n

xâu bản mã tơng ứng y
1
y
2
. . .y
n
. Sau đó anh ta tính các bít dòng khoá z
i
=
x
i

+y
i
mod 2, 1 i n. Ta cũng giả thiết rằng Oscar cũng đã biết giá trị của
m. Khi đó Oscar chỉ cần tính c
0
, . . ., c
m-1
để có thể tái tạo lại toàn bộ dòng
khoá. Nói cách khác, Oscar cần phải có khả năng để xác định các giá trị của
m ẩn số.

Với i 1 bất kì ta có :
là một phơng trình tuyến tính n ẩn. Nếu n 2n thì có m phơng trình tuyến
tính m ẩn có thể giải đợc.

Hệ m phơng trình tuyến tính có thể viết dới dạng ma trận nh sau:
Nếu ma trận hệ số có nghịch đảo ( theo modulo 2 )thì ta nhận đợc nghiệm:
Trên thực tế, ma trận sẽ có nghịch đảo nếu bậc của phép đệ quy đợc
dùng để tạo dòng khoá là m.(xem bài tập). Minh hoạ điều này qua một ví dụ.

Ví dụ 1.13.
2
1
1
0
1
modzcz
i
m
j

jm +

=
+

=
2
1
0
1
modzcz
ji
m
j
jm +

=
+

=
()()













=
+
+
++
z . . . z z
. . . . .
z . . . z z
z . . . z
1-2m1mm
1m32
m21
110221
.
z
c, ,c,cz, ,z,z
mmmm
()( )
1
1-2m1mm
1m32
m21
221110
z . . . z z
. . . . .
z . . . z z
z . . . z


+
+
++












=
.
z
z, ,z,zc, ,c,c
mmmm
Vietebooks Nguyn Hong Cng

Trang 40
Giả sử Oscar thu đợc xâu bản mã
101101011110010
tơng ứng với xâu bản rõ
011001111111001
Khi đó anh ta có thể tính đợc các bít của dòng khoá:
110100100001010
Ta cũng giả sử rằng, Oscar biết dòng khoá đợc tạo từ một thanh ghi dịch

phản hồi (LFSR) có 5 tầng. Khi đó, anh ta sẽ giải phơng trình mà trận sau (
nhận đợc từ 10 bít đầu tiên của dòng khoá):
Có thể kiểm tra đợc rằng:
Từ đó ta có:

= (1, 0, 0, 1, 0)
Nh vậy phép đệ quy đợc dùng để tạo dòng khoá là:
z
i+5
= z
i
+ z
i+3
mod 2


1.3. Các chú giải v ti liệu dẫn

Nhiều tài liệu về mật mã cổ điển đã có trong các giáo trình, chẳng hạn
nh giáo trình của Beker và Piper [BP82] và Denning [DE82]. Xác suất đánh
()( )

















=
0 0 1 0 0
0 1 0 0 1
1 0 0 1 0
0 0 1 0 1
0 1 0 1 1
00010
43210
c,c,c,c,c,,,,

















=

















0 1 1 0 1
1 1 0 1 0
1 0 0 0 0
0 1 0 0 1
1 0 0 1 0
0 0 1 0 0
0 1 0 0 1
1 0 0 1 0
0 0 1 0 1
0 1 0 1 1

1
()()
















=
0 1 1 0 1
1 1 0 1 0
1 0 0 0 0
0 1 0 0 1
1 0 0 1 0
00010
43210
,,,,c,c,c,c,c

×