[r]
Trang 1ĐỀ THI MÔN : BẢO MẬT THÔNG TIN
MÃ MÔN HỌC : 1279180 Ngày thi : 08/01/2009
Thời gian : 60’
Được phép sử dụng tài liệu
Câu 1: (4 điểm)
Cho máy chạy và dừng luân phiên M dc xây dựng từ 3 máy tạo luồng khóa tuyến
tính với các chu kì khóa tương ứng là: (Các bits dc viết từ trái sang phải theo thứ
tự tăng của chỉ số)
LFSR1 : (10100) LFSR2 : 01(001) LFSR3 : (1001) c) Hãy tính 20 bits đầu tiên của luồng khóa của máy M
d) Tính giá trị bit Z100 của luồng khóa
Câu 2: (3 điểm)
Thực hiện quá trình tính toán theo thuật toán RSA với p=11, q=17, e=13 và M=20
Mã hóa thông điệp M và giải mã ngược lại (Viết rõ quá trình tính toán)
Câu 3: (3 điểm)
Biết round key thứ 8 của thuật toán AES là:
A0 FA FE 17 88 54 2C B1 23 A3 39 39 2A 6B 76 05
Hãy tính 4 bytes đầu tiên của round key thứ 9
(Viết rõ quá trình tính toán)
Trang 2HƯỚNG DẪN GIẢI ĐỀ 08/01/2009
(Cre: bài giải của bạn Quốc 062)
Câu 1:
A: (10100)
B: 01(001)
C: (1001)
a 20 bit đầu tiên của máy M
A KT 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0 1 0 1 0 0
Z 0 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 1 1 0
Kết quả : z= 0101 1011 1011 0111 0110
b Tính giá trị Z 100 của luồng khóa:
Ta có công thức z n =b t(n)-1 + c n-t(n) (Slide 14)
(Tại Z100 thì A đã tạo được 101 bit – cái này không cần ghi)
Từ công thức trên ta có: Zn= Bx + Cy (Với x, y là chỉ số bit của máy B, C)
Với x = t(100)-1, y=100 – t(100)
Ta tính t(100) = 20*2 +1 =41 x = 41 – 1=40
y = 100 – 41 = 59
Như vậy ta có Zn= B40 + C59
B40 = B4 =1 (Cái này không có công thức các bạn tự tìm ra cách nhìn thôi )
C59 = C3 = 1
Zn=0
Câu 2: P = 11, q = 17, e = 13, M=20
- Tạo các khóa:
N = p.q = 11*17 = 187
Phi(N) = (p-1).(q-1) = 10*16 = 160
d = e-1 mod Phi(N) = 13-1 mod 160
d=37
Trang 3Ku=(e, N) = (13, 187)
Kv=(d, p, q) = (37, 11, 17)
- Mã hóa:
C = Me mod N= 2013 mod 187
C=80
- Giải mã:
M’=Cd mod N = 8037 mod 187
M’=20=M
Câu 3:
Round key 8: A0 FA FE 17 88 54 2C B1 23 A3 39 39 2A 6B 76 05
i temp Sau root
Word
Sau SubWord Rcon(9) Sau Xor W[i-4] W[i]
36 2A 6B
76 05 6B76052A 7F386BE5 1B000000 64386BE5 A0FAFE17 C4C295F2
4 byte đầu tiên của Round key 9: C4C295F2