Trong chương 5 người học sẽ tìm hiểu về chứng thực thông điệp. Các nội dung cụ thể trong chương này gồm có: Bảo toàn dữ liệu, chứng thực thông điệp, nhóm chứng thực thông điệp (Dùng hệ mật mã, dùng MAC, dùng hàm hash). Mời các bạn cùng tham khảo.
Trang 1Phạm Văn Tho
Chương 5
chứng thực thông điệp
Trang 3Các kiểu tấn công qua mạng
Trang 4Bảo toàn dữ liệu (data integrity)
Dữ liệu được truyền trên mạng
không chỉ cần bảo mật mà cần được bảo toàn.
Đôi khi yêu cần bảo toàn cần thiết hơn bảo mật nó.
Trang 5Chứng thực thông điệp
Là thủ tục để kiểm tra xem thông
điệp nhận được đến từ 1 nguồn gốc
rõ ràng và có bị sửa đổi hay không
Khi nhận thông báo, người nhận cần phải biết ai gởi thông báo
Người gởi cần chứng thực
(authentication) thông báo của mình
Trang 6Chứng thực thông điệp
Bất kỳ cơ chế chứng thực thông báo hay chữ ký số đều có hay cấp:
Ở mức thấp: hàm tạo giá trị chứng thực (autheticator) dùng để chứng thực thông điệp
làm cơ sở cho giao thức chứng thực, cho phép người nhận kiểm tra tính chính xác của thông điệp
Trang 7Phương thức tạo mã chứng thực
Có 3 PP tạo mã chứng thực
Message encrytion : dùng bản mã
của cả thông báo như mã chứng thực
Message authentication code (MAC):
dùng hàm dựa vào khóa bí mật để
tạo ra một giá trị có chiều dài cố định làm giá trị chứng thực
Hash function: hàm ánh xạ thông
điệp có chiều dài bất kỳ thành 1 giá
Trang 8Mã hóa thông điệp để chứng thực
Đối với mã hóa, bản thân nó cũng có thể
dùng để chứng thực thông điệp
Mã hóa đối xứng
Mã hóa phi đối xứng
Trang 9Dùng mã đ i x ng đ ch ng th c thông đi p ố ứ ể ứ ự ệ
Thông điệp truyền từ A đến B được mã hóa
bằng khóa bí mật dùng chung cho A và B Nếu không ai biết khóa chung này thì việc truyền thông báo là đáng tin cậy
Trang 11Dùng mã đối xứng để chứng thực
Thực tế thông điệp M là một chuỗi bit ngẫu
nhiên, do đó không có cách xác định một bản
mã là thông điệp hợp lệ
Đối thủ có thể gây rối bằng cách tạo ra các
thông điệp có nội dung ngẫu nhiên và giả như một thông điệp đến từ một nguồn hợp lệ
Giải pháp: biến bản tin từ dãy bit ngẫu nhiên thành dãy bit có cấu trúc
Trang 12Dùng mã đối xứng để chứng thực
Thông điệp M được đưa vào hàm F để có mã FCS, rồi thêm mã FCS vào cuối M trước khi mã hóa
B mã hóa khối nhận được thông điệp có mã
FCS ở cuối B áp dụng cùng hàm F để tính
FCS, nếu FCS tính bằng FCS nhận thì thông
báo được xem hợp lệ
Trang 13Chứng thực bằng mã hóa phi đối
Trang 14Chứng thực bằng mã hóa phi đối
Trang 15Chứng thực bằng mã hóa phi đối xứng
Nếu muốn đảm bảo bí mật thông điệp thì:
Phức tạp, phải qua 4 lần biến đổi
Trang 16Message authentication code (MAC)
Sử dụng 1khóa bí mật để sinh ra 1 khối dữ liệu
có kích thước cố định được gọi là MAC gắn vào cuối thông điệp
Trang 17Message authentication code (MAC)
Trang 18Message authentication code (MAC)
Trang 19Message authentication code (MAC)
Trang 20Message authentication code (MAC)
Trang 21Đặc điểm của hàm MAC
Tương tự như hàm mã hóa nhưng không cần hàm giải mã
Trang 22Hàm băm (hash function)
Áp dụng cho các thông điệp có chiều dài khác nhau
Đầu ra là mã băm có kích thước cố định và
Trang 23Yêu cầu của hàm băm H(x)
1. Có thể áp dụng cho các thông điệp x có độ
dài khác nhau
2. Output h=H(x) cố định và nhỏ
3. Tính một chiều: với h cho trước, không thể
tìm lại x sao cho h = H(x) (về mặt thời gian tính toán)
4. Chống trùng yếu: cho trước x, không thể tìm
y ≠x sao cho H(x) = H(y)
Trang 24Hàm băm đơn giản
Trang 25Hàm băm đơn giảm
Trang 26mạnh) Tuy nhiên vẫn còn sử dụng phổ biến.
Trang 28Hàm băm MD5
Trang 29Hàm băm MD5
Kj =round(232 abs(sin(i)))
i biểu diễn theo radian Phép cộng modulo 232
Trang 31SHA (secure hash algorithm)
Năm 1993, NIST (national institute of
standards and technology) đề xuất giải thuật SHA, tương tự như MD5 nhưng mạnh hơn và chậm hơn MD5
Được thiết kế thích hợp với AES
Các phiên bản SHA
Trang 32SHA1
Trang 33SHA1
Trang 35SHA-512
Trang 36SHA-512
Trang 37SHA-512
Trang 38Một số ứng dụng hàm băm
Lưu trữ mật khẩu
Trang 39Đấu giá trực tuyến
Trang 40Download file
Trang 41Chữ ký số
Trang 42Q&A