'Giải mã' về lỗ hổng bảo mật của hàm băm SHA
Mới đây ngày 23/2 lần đầu tiên hàm băm (hash fuction) SHA-1 được Google tính ra các xung đột. Các hệ thống an ninh dựa trên hàm này từ các giao dịch nhà băng,ảimãvềlỗhổngbảomậtcủahàmbăpremier league ngoại hạng anh các website thương mại điện tử, chữ ký số, kiểm tra tính toàn vẹn đều có nguy cơ cao bị tổn thương.
Hàm băm là gì?
Hàm băm là một cách mã hóa trong kỹ thuật mật mã nhằm sinh ra các giá trị băm (hash) tương ứng với mỗi khối dữ liệu (có thể là một chuỗi kí tự, một đối tượng trong lập trình hướng đối tượng, v.v...). Hàm băm là hàm "một cửa', hay “cửa sập” (trapdoor), nghĩa là hàm mà có thể tính toán dễ dàng một chiều và rất khó khăn theo chiều ngược lại.
![]() |
Ví dụ cho một biến số x và một hàm f(x). Việc từ x tính ra f(x) là dễ nhưng từ f(x) để tính ra x khó vô cùng. Trong hàm cửa sập tồn tại một thông tin bí mật k mà từ f(x) có thể tính ra x dễ dàng. Một ví dụ đơn giản, giả sử cho bạn một số 28 chữ số là 4951760154835678088235319297 và là tích của hai số nguyên tố (số mà chỉ chia hết cho 1 và chính nó). Tìm hai số đó? Cách làm là thử các số nguyên tố 2, 3,5,7,11,… xem số kia có chia hết không cho đến khi tìm ra. Việc này là rất tốn thời gian và công sức về mặt tính toán. Nhưng nếu được gợi ý một thừa số nguyên tố là 2147483647 (số nguyên tố Mersene thứ 8 do Euler tìm ra), thì bạn có thể dễ dàng tìm số nguyên tố còn lại là 2305843009213693951, cũng là một số nguyên tố Mersene thứ 9 có 19 chữ số.
Với các hàm băm cũng thế, giá trị băm của một dữ liệu bất kỳ dễ dàng tính toán được. Nhưng từ mã băm ấy, để khôi phục hay tìm được một dữ liệu có cùng một mã băm là rất khó khăn, tốn nhiều công sức tính toán và thời gian lâu dài.
Một hàm băm tốt phải thỏa mãn các điều kiện sau:
+ Tính toán nhanh.
+ Các khoá được phân bố đều trong bảng.
+ Ít xảy ra đụng độ.
+ Xử lý được các loại khóa có kiểu dữ liệu khác nhau.
Lưu ý rằng hàm băm ít xảy ra đụng độ chứ không phải không có đụng độ. Hàm băm thực tế không phải là một hàm đơn ánh (ánh xạ 1:1), như vậy tồn tại nhiều giá trị x có cùng một giá trị băm f(x), nghĩa là tồn tại những đụng độ.
(责任编辑:Thể thao)
- ·Nhận định, soi kèo Suwon FC vs Jeonbuk Hyundai Motors, 12h00 ngày 26/4: Tập trung quốc nội
- ·Nhận định, soi kèo Bahrain vs Kuwait, 00h45 ngày 01/01: Bất phân thắng bại
- ·Jeon Do Yeon tái xuất trong phim Kill Boksoon
- ·Nhận định, soi kèo Zoman vs Korhogo, 22h30 ngày 31/12: Khó thay đổi lịch sử
- ·Kèo vàng bóng đá Real Betis vs Valladolid, 02h30 ngày 25/4: Tạm biệt La Liga
- ·Nhận định, soi kèo Haverfordwest County vs Aberystwyth Town, 21h30 ngày 1/1: Cửa dưới ‘tạch’
- ·Sao Việt hôm nay 6/4: BTV thời sự 19h Hoài Anh đẹp dịu dàng
- ·NSND Bạch Tuyết muốn ôm hôn ông xã điển trai của siêu mẫu Lê Thúy
- ·Kèo vàng bóng đá Arsenal vs Crystal Palace, 02h00 ngày 24/4: Khách buông xuôi
- ·Ngô Kiến Huy thôi làm MC Thách thức danh hài
- ·Nhận định, soi kèo Spartak Subotica vs Napredak, 22h00 ngày 24/4: Cửa trên ‘tạch’
- ·Khương Ngọc, Đại Nghĩa nhảy xuống hồ đẩy bè có tiền giúp người nghèo
- ·NSND Bạch Tuyết muốn ôm hôn ông xã điển trai của siêu mẫu Lê Thúy
- ·Nhận định, soi kèo Al Jabalain vs Al Jandal, 19h35 ngày 1/1: Chủ nhà ‘ghi điểm’
- ·Nhận định, soi kèo BATE Borisov vs Slutsk, 22h45 ngày 25/4: Cải thiện thành tích
- ·Nhận định, soi kèo Zoman vs Korhogo, 22h30 ngày 31/12: Khó thay đổi lịch sử
- ·Nhận định, soi kèo Stella Club vs Denguele, 01h00 ngày 01/01: Dìm khách xuống đáy
- ·Nhận định, soi kèo Zoman vs Korhogo, 22h30 ngày 31/12: Khó thay đổi lịch sử
- ·Nhận định, soi kèo Avispa Fukuoka vs Fagiano Okayama, 17h00 ngày 25/4: Chiến thắng nhọc nhằn
- ·Nhận định, soi kèo Burnley vs Stoke City, 22h00 ngày 1/1: Khó thắng cách biệt