Trnh by v phương php thm mã vi sai
Giảng viên:
Học viên :
Trnh by v phương php thm mã vi sai
!"!"#$"%"
"%""&'"!"
()*
Giới thiệu v thm mã vi sai -
Cơ sở của thm mã vi sai
!"#$% &'! ()*+&", /
$&!)0()!1 &"23*456$1 7&389)
: ); <*454=>)?): ); <*4=@))
: 6AB=CB)D ()E F=)3G3"
H)$"IJKLMN=O)B=CP!Q)
R23 &"S B=C)7$&JKLM&"KLM N TJI, O):
I = S
I
S*⊕
I
Cơ sở của thm mã vi sai
đối với DES
Cc phép ton tuyến tính có thể bỏ qua: "<P TA
S-
I
cho cùng kết quả giá trị khác nhau đầu ra
(tỷ lệ 1/4).
Xác suất cao nhất của toàn bộ cặp bản rõ có cùng giá trị khác nhau đầu vào cho trước sau khi chạy qua n
vòng của DES mang lại cùng một giá trị khác nhau đầu ra : (1/4)
n
Cơ sở của thm mã vi sai đối với DES
(Quy trnh thm mã vi sai DES)
Tin tính ton, lập cc bảng tham chiếu:U1 &"H3BA$3bảng thống kê
giá trị khác nhau đầu vào &giá trị khác nhau đầu ra =@))
Giới hạn không gian tm khóa:P!Q)F23*456$1 7&V"ET$38
*WX0BAI)*=?XBI)*:6
Xc định khóa duy nhất:
Với đầy đủ cặp bản rõ, chúng ta có thể xác định một phần hay toàn bộ các bít khóa.
Đối với các bit khóa khó xác định được thực hiện vét cạn trong không gian đã giới hạn.
Từ khóa vòng (subkey) cuối cùng Thực hiện suy diễn các khóa vòng khác.
Cơ sở của thm mã vi sai
đối với DES
Có thể bỏ qua khóa k trong giai đoạn tính đầu vo cho hộp S
1k
S⊕
1k
N
I = S
1E
S*⊕
1E
S
1E
,S*
1E
(6
bit)
S
1I
,S*
1I
(6 bit)
Khóa S
1k
(6 bit)
Hộp S-1
(Vào 6 bit, ra 4 bit)
Cơ sở của thm mã vi sai
đối với DES
Hình 2: Hàm-F của DES
Bình quân, mỗi “bộ” sẽ được trả kết quả từ 4 cặp
vào/ra.
Không phải tất cả các “bộ” đều tồn tại và trong số
các “bộ” tồn tại lại phân bố không đều.
Tấn công thm mã vi sai
đối với DES 1 vòng
Tin tính ton (đối với từng hộp S – 6 bit)
4P623&"
-#
Z/\
X
[
-#
Z/]
X
:6 *9$&
-:
Z-'
X
^
S
1I
= S
1E
S⊕
1k
)
= A
x
S
*
1O
= S
1
(S
*
1I
)
= S
1
(1E
x
)
= 7
x
Sử dụng hộp S1, ta có:
Bởi vậy, .= S’
1O
=
O
⊕
:
O
;<
+
A
;<
+
S’
1I
S’
1O
<=> 0C
x
0D
x
lập Bảng 2, Ta có các cặp đầu
vào:
(S
1I
, S*
1I
) ∈ {(01x, 0Dx), (12x, 1Ex), 36x, 3Ax)}
R7 23 J
-#
[
-#
N Z J/\X /]XN $3 %4) _
XB`:6 6Aa
Bảng 2: Các đầu ra có thể với
Vi sai đầu vào là 0Cx
Trích “Thám mã vi sai DES” –
Alan Silvester, Năm 2004
Bảng 3: Các khóa có thể đối với cặp vi sai 0Cx 0Dx,
đầu vào (S
1E
) = (38x, 34x) lập Bảng 4 xác
định các “khóa có thể”.
Bảng 2: Các đầu ra có thể với
Vi sai đầu vào là 0Cx
Trích “Thám mã vi sai DES” –
Alan Silvester, Năm 2004
Bảng 4: Các khóa có thể đối với cặp vi sai 0Cx 0Ax,
đầu vào (S
1E
, S*
1E
) = (38x, 34x)
Giới hạn vùng
khóa
Tấn công thm mã vi sai
đối với DES 1 vòng
Từ Bảng 1, xét: Q
;Q
A
;<
+
S’
1I
S’
1O
<=> 10
x
A
Sử dụng giá trị vi sai vòng thứ n-1 như giá trị vi sai đầu vào vòng thứ n, kết hợp với giá trị vi sai
đầu ra vòng n (có được từ bản mã) để suy dẫn ra khóa vòng thứ n.
Kết hợp tìm kiếm vét cạn để suy dẫn các bit khóa còn lại khó suy đoán.
Từ khóa vòng n suy dẫn các khóa vòng n-1, n-2, , 1 theo các phép biến đổi tuyến tính.
Chương trnh
R=@)b B+?U#
TỔNG KẾT
Ưu điểm của tấn công Thm mã vi sai DES:c3:()) b:6 O)
b:6 d@b:6 V"3=@)33G
Yêu cầu đối với thm mã vi sai DES 16 vòng: e d 6 <
]f
23 *4 5 =@)
B=@):"4)<\/gg$h6 h1i
Cc hệ mã hóa có thể bị tấn công thm mã vi sai: jLYk#'j&k#'jSlK
Cải tiến thnh công của DES chống lại Thm mã vi sai: '#
TỔNG KẾT
Cải tiến thnh công của DES chống lại Thm mã vi sai: '#
Hình 3: Bản đồ phân bổ
các cặp XOR của một trong
các hộp S của DES
Hình 4: Bản đồ phân bổ