You are on page 1of 12

Cryptography and Network Security

Lab4
Hash functions
1. Sử dụng một ví dụ cho thấy hàm hash có thể giúp ta bảo vệ tính toàn vẹn của
dữ liệu:
Plaintext: dangvandung
SHA-1(dangvandung) = A1 96 F4 9B EF 21 DC B1 7B 59 11 37 76 E8 69
FB 16 23 79 27

Ta thay đổi plain text như sau: 2B D7 00 75 59 5D 4B AA 39 DD FB 0F 56


B6 00 68 B2 7E B1 02
Thì kết quả trở thành: dangvanduna
Như vậy chỉ với 1 thay đổi nhỏ giá trị của cipher text thì dữ liệu ban đầu cũng
sẽ được thay đổi theo, do đó Hash function có thể đảm bảo được sự toàn vẹn
của dữ liệu
2.
a. Xem xét tất cả khả năng của input có độ dài 200 bit đến hash function và tạo
ra giá trị hash 160bit. Hòi có bao nhiêu giá trị input hash đến mỗi một khả
năng của giá trị output
 Trung bình mỗi giá trị băm thì có được 200-160 = 40 giá trị input. Vậy
đáp án sẽ là 240

b. Ta vào “Indiv. Procedures”  Hash  Hash demonstation


Ở selection hash function ta lựa chọn SHA-1
Rồi sau đó ta thử hết tất cả bảng chữ cái tiếng anh. Nhìn vào “hash value of
the modified file” nếu kí tự nào trùng với hash value là: C6 3A E6 DD 4F C9
F9 DD A6 69 70 E8 27 D1 3F 7C 73 FE 84 1C thì đó là kết quả cuối cùng
 Ta thử hết tất cả các kí tự trong bảng chữ cái tiếng anh kể cả chữ thường
sau đó đến chữ hoa thì kết quả như sau:
Như vậy kí tự M có mã hash trùng với đề yêu cầu
c. Bạn có nghĩ rằng SHA-1 hash function không thõa tính chất one-way. Giải
thích kết quả.
SHA-1 thõa với tính chất one-way bởi vì khi có 1 output bất kì thì ta rất khó
để có thể tìm được input

d. Quan sát và giải thích kết quả ở màn hình Hash demo:
Ta thấy plain text ban đầu là: This is a message
Và plain text mới là: This is b message
Ở đây ta chỉ thay đổi 1 kí tự ở trong plain text nhưng số bit hash value ban
đầu và hash value sau đã thay đổi rất nhiều, cụ thể là 47.5%.
Điều đó cho thấy Hash function có thể đảm bảo toàn vẹn dữ liệu, và có được
độ bảo mật nhất định

You might also like