Để đảm bảo tớnh toàn vẹn của dữ liệu (khụng bị thay đổi so với dữ liệu ban đầu), người ta đưa ra cỏc phương thức mó húa một chiều sử dụng cỏc thuật toỏn băm.
Hàm băm
Với tài liệu đầu vào (bản tin gốc) x, chỉ thu được giỏ trị băm duy nhất z = h(x).
Nếu dữ liệu trong bản tin x bị thay đổi hay bị xúa để thành bản tin x’, thỡ giỏ trị băm h(x’) h(x).
Dự chỉ là một sự thay đổi nhỏ, vớ dụ chỉ thay đổi 1 bit dữ liệu của bản tin gốc x,thỡ giỏ trị băm h(x) của nú cũng vẫn thay đổi. Điều này cú nghĩa là: hai thụng điệp khỏc nhau, thỡ giỏ trị băm của chỳng cũng khỏc nhau.
Nội dung của bản tin gốc khú thể suy ra từ giỏ trị hàm băm của nú. Nghĩa là với thụng điệp x thỡ dễ tớnh được z = h(x), nhưng lại khú tớnh ngược lại được x nếu chỉ biết giỏ trị băm h(x) (kể cả khi biết hàm băm h).
Số húa bởi Trung tõm Học liệu http://www.lrc-tnu.edu.vn/
Tớnh chất của hàm băm
Hàm băm khụng va chạm yếu: Hàm băm h được gọi là khụng va chạm yếu, nếu cho trước bức điện x, khú thể tớnh toỏn để tỡm ra bức điện
x’ x mà h(x’) = h(x).
Hàm băm khụng va chạm mạnh: Hàm băm h được gọi là khụng
va chạm mạnh nếu khú thể tớnh toỏn để tỡm ra hai bức thụng điệp khỏc
nhau x’và x (x’ x) màcú h(x’) = h(x).
Hàm băm một chiều: Hàm băm h được gọi là hàm một chiều nếu khi cho trước một bản túm lược thụng bỏo z thỡ khú thể tớnh toỏn để tỡm ra thụng điệp ban đầu x sao cho h(x) = z.
Nơi ứng dụng:
- Phương phỏp này được sử dụng rộng rói trong ngành khoa học mỏy tớnh để tăng tốc quỏ trỡnh đỏnh chỉ mục cơ sở dữ liệu, kiểm tra sự toàn vẹn về nội dung thụng tin được lưu trữ hay truyền trờn đường truyền…
- Một ứng dụng điển hỡnh của phương phỏp túm lược thụng điệp là phương phỏp kiểm tra CRC (Cyclic Redundancy Check) được sử dụng trong hầu hết cỏc cơ chế truyền nhận dữ liệu.
- Phương phỏp này là nền tảng của việc tạo và kiểm tra chữ ký số.