BÀITẬP ƠN TẬP CUỐI KỲ MÃ HĨA DỮLIỆU GV: Huỳnh Nguyễn Xuân Cần Nếu máy tính thử 240 khóa/giây, tính thời gian phá mã phương pháp vét cạn khóa kích thước khóa 128 bít (đáp án tính theo đơn vị năm) Giải: 128bit=2128= 3,4.1038 Khóa 7464960000 khóa/năm => Thời gian thực hiện: 4,5.1028 năm Hãy tìm rõ số lần dịch cho mã dịch vòng sau: GLYGGEGIQXLMXSX => CHUCCACEMTHITOT lan giai ma Giải: Ta có bảng: Y= K=1 K=2 K=3 K=4 G F E D C Dùng công thức: D=y-k mod 26 Dãy tương ứng: L Y G G E G 11 24 6 10 23 5 K X F F D F 22 4 J W E E C E 21 3 I V D D B D 20 2 H U C C A C => Chuc cac em thi tot a) Cho ma trận Playfair sau I H G F E Q 16 15 P 14 O 13 N 12 M X 23 22 W 21 V 20 U 19 T L 11 10 K J I H M 12 11 L 10 K J I X 23 22 W 21 V 20 U 19 T S 18 17 R 16 Q 15 P 14 O X 23 22 W 21 V 20 U 19 T Hãy mãhóa thông điệp sau: MUST SEE YOU AT ONCE MU UZ ST TB SE DL EY GZ OU PN AT TH ON PO CE DG b) Xây dựng ma trận Playfair với từ khóa largest (xem I, J nhau) Hãy mãhóa lại thơng điệp L A R G E B C D S T F H I/J K M N O P Q U V W X Y Z MU ST SE EY OU AT ON CE UZ TB DL GZ PN TH PO DG c) Nhận xét dựa vào kết câu trên: Mãhóa giống a) Mãhóa thơng điệp : MEET MEE AT THE USUAL PLACE với 9 4 5 7 mã Hill với khóa là: K= Giai: b) Giải mã lại thông điệp 22 = 21 Khóa giải mã k-1 = 23 161 506 483 207 (Tính det(k-1)=9.7-5.4=43), 43.a mod 26 =1, tìm a=23 Dùng mã Vignere mãhóa từ explaination dùng từ khóa leg 6 Mã One-time-pad dựa mã Vignere: với hệ mã này, dòng khóa chuỗi số ngun từ đến 26 Ví dụ, với khóa 16 ký tự dịch phải 3, ký tự thứ dịch phải 9,… a) Mãhóa thơng điệp sendmoremoney với dòng khóa : 23 15 21 14 11 11 b) Dùng thông điệp mãhóa tìm câu (a), tìm dòng khóa thơng điệp chưa mãhóa phải cashnotneeded =>ZEWDWPTFTVMIE Xét mã khối thuộc hệ Feistel gồm vòng P = (L0, R0) Cho biết bảng mã C ứng với trường hợp sau hàm F: F(Ri−1, Ki ) = L1=R0 R1=L0 F(R0, K1)=L0 R0 a) F(Ri−1, Ki ) = Ri−1 L1=R0 b) R1 = L0 F(R0, K1)=L0 R0 R0 L0 R0 c) d) F(Ri−1, Ki ) = Ki ??? F(Ri−1, Ki ) = Ri−1 Ki ???? Hãy thử tính tốn vòng mãhóa DES Giả sử khóa K rõ giống biểu diễn dạng số hexa 0x0123456789ABCDEF a) Hãy tính K1, khóa b) Tính L0, R0 c) Tính kết nủa phải R0 sau qua hàm hoán vị mở rộng E, tức tính E(R0) d) Tính kết A = E(R0) XOR K1 e) Nhóm 48 bit kết câu (d) thành nhóm bit tính toán kết qua hộp thay S tương ứng f) Kết nối kết câu (e) để tạo thành chuỗi 32 bit, đặt tên B g) Tính tốn kết qua phép hốn vị P, tức P(B) h) Tính R1 = P(B) XOR L0 i) Viết kết mãhóa qua vòng Cho hệ mã RSA với N = 3*11 ta sử dụng tối đa giá trị e để làm khóa mã hóa, giải thích? ( N ) 2.10 20 1 e ( N ) gcd( ( N ), e) Phi(N)-1=20(1/2)(1/5)-1=7 e={3, 7, 9, 11, 13, 17, 19} 10 Alice chọn p = 7, q = 11, e = 17, Bob chọn p = 11, q = 13, e = 11: a) Tính khóa riêng KRA Alice KRB Bob Giải: Alice: ( N ) 6.10 60 , e=17 e.d mod (N ) =1 17d mod 60=1 =>d=53 Khóa riêng Alice 53 Dùng thuật toán Elice mở rộng: Bob: ( N ) 10.12 120 , e=11 e.d mod (N ) =1 11d mod 120=1 =>d=11 Khóa riêng Bob 11 b) Alice muốn gởi cho Bob tin M = vừa áp dụng chứng thực bảo mật sơ đồ sau Hãy thực q trình mãhóa giải mã Giải: M=9, e=11, N=p.q=77 Alice mãhóa tin M KRA: S=Md mod N S=953 mod 77 = 11 Trong hệ chữ ký điện tử ElGamal có p = 19, ký lên văn sử dụng tối đa giá trị k, giải thích? 12 Cho hệ chữ ký điện tử ElGamal có p = 1019, α = 191 phần tử nguyên thuỷ, m = 37 a) Hãy tìm khóa cơng khai KP, khóa bí mật KU hệ chữ ký b) Để ký lên rõ m = 102 ngƣời ta chọn k = 143, thực ký đưa chữ ký tương ứng c) Kiểm tra xem cặp (r, s) = (251, 507) có chữ ký lên văn m = 127 hay không Giải: P=1019, 191 a Chọn XA=10 -> khóa bí mật YA= X mod p 19110 mod 1019 75 b M=102 K=143 R= K mod p=191143 mod 1019=892 S=K-1(m-XAr) mod (p-1)=897.( )=114 A CẤU TRÚC THI Chương u cầu: - Tính tồn vẹn - Tính bảo mật - Tính xác thực - Tính chống chối từ Mật mã: Khái niệm Ký hiệu Chương 2: Phép thay Hoán vị : + Mã Khối i Đơn Biểu ii Đa Biểu + Mã Vòng iii Đơn Biểu iv Đa Biểu Playfier a b d b c d c a Hill: Hệ mật tích Chương 3: Mãhóa đối xứng đại ... câu trên: Mã hóa giống a) Mã hóa thơng điệp : MEET MEE AT THE USUAL PLACE với 9 4 5 7 mã Hill với khóa là: K= Giai: b) Giải mã lại thông điệp 22 = 21 Khóa giải mã k-1 = 23... 26 =1, tìm a=23 Dùng mã Vignere mã hóa từ explaination dùng từ khóa leg 6 Mã One-time-pad dựa mã Vignere: với hệ mã này, dòng khóa chuỗi số nguyên từ đến 26 Ví dụ, với khóa 16 ký tự dịch phải... 9,… a) Mã hóa thơng điệp sendmoremoney với dòng khóa : 23 15 21 14 11 11 b) Dùng thơng điệp mã hóa tìm câu (a), tìm dòng khóa thơng điệp chưa mã hóa phải cashnotneeded =>ZEWDWPTFTVMIE Xét mã khối