Bài giảng Nhập môn an toàn hệ thống thông tin - Chương 3: Toàn vẹn dữ liệu cung cấp cho người học các kiến thức: Khái niệm toàn vẹn và xác thực thông điệp, các cơ chế mã xác thực thông điệp, ứng dụng mã xác thực thông điệp. Mời các bạn cùng tham khảo.
3 PHẦN II: MÃ XÁC THỰC THÔNG ĐIỆP (MESSAGE AUTHENTICATION CODES) Nội dung Khái niệm tồn vẹn xác thực thông điệp Các chế mã xác thực thông điệp Ứng dụng mã xác thực thông điệp (Cryptography & Network Security McGraw-Hill, Inc., 2007., Chapter 11) Khái niệm xác thực thơng điệp 1.1 Tồn vẹn thông điệp (Message Integrity) 1.2 Xác thực thông điệp (Message Authentication ) Integrity Message Đặt vấn đề Integrity Message Tính tồn vẹn thơng điệp: • Cho phép bên liên lạc xác minh tin nhắn nhận được xác thực • • • • • Nội dung thông điệp chưa bị thay đổi Nguồn thông điệp tin cậy Thông điệp chưa bị phát lại Thông điệp xác minh thời điểm Sự liên tục thơng điệp trì 1.1 Integrity Message • Đối phương insert/modify/delete nội dung thông điệp 1.1 Integrity Message Mã xác thực thông điệp Message Authentication Mục tiêu • Xác nhận nguồn gốc liệu • Thuyết phục với người sử dụng liệu chưa bị sửa đổi giả mạo • Là chế quan trọng để trì tính tồn vẹn từ chối liệu Mã xác thực thơng điệp Message Authentication Định nghĩa • Là kỹ thuật chứng thực liên quan đến việc sử dụng khố bí mật để tạo khối liệu có kích thước nhỏ cố định (checksum MAC) thêm vào thơng điệp • Kỹ thuật giả sử phía tham gia truyền thơng A B chia sẻ khố bí mật K Khi A có thơng điệp gởi đến B, A tính tốn MAC hàm thơng điệp khố: MAC=C(K, M), với • • • • M: thơng điệp đầu vào có kích thước biến đổi C: hàm MAC K: khố bí mật chia sẻ người gởi người nhận MAC: mã chứng thực thông điệp có chiều dài cố định Mã xác thực thông điệp Message Authentication 10 Message Authentication Code Các công dụng MAC 38 Message Authentication Code Các công dụng MAC 39 Message Authentication Code Các công dụng MAC a Chứng thực • A →B: M || C(K, M) • Chứng thực: A B chia sẻ K b Chứng thực bảo mật: chứng thực gắn liền với plaintext • A →B: E(K2, [M || C(K, M)]) • Chứng thực: A B chia sẻ K1 • Bảo mật: A B chia sẻ K2 c Chứng thực bảo mật: chứng thực gắn liền với ciphertext • A →B: E(K2, M) || C(K1, E(K2, M)) • Chứng thực: sử dụng K1 • Bảo mật: sử dụng K2 40 Vài chế MAC 3.1 Nested MAC 3.2 Keyed Hash Functions as MACs 3.3 MAC dựa vào hàm băm (HMAC) 3.4 MAC dựa vào mã hóa khối (CMAC) 41 Nested MAC • Để tăng bảo mật MAC • Băm áp dụng nhiều lần 42 Keyed Hash Functions as MACs • Mong muốn có mơt MAC dựa hàm băm • Các hàm băm nhanh mã khối đối xứng • Mã hàm băm áp dụng cách rộng rãi • Băm bao gồm khóa (key) với thơng điệp KeyedHash=Hash(Key|Message) • Một vài điểm yếu với hàm Phát triển HMAC 43 MAC dựa vào hàm băm (HMAC) • Gọi HMAC • Đặc điểm • Dùng hàm băm ngun mẫu (khơng chỉnh sửa) • Cho phép thay dễ dàng hàm băm nhúng vào trường hợp hàm băm nhanh nhiều bảo mật tìm u cầu • Duy trì hiệu ban đầu hàm băm mà không mắc phải suy giảm nghiêm trọng • Dùng quản lý khóa cách dễ dàng • Có phân tích mật mã hiểu sức mạnh chứng thực 44 MAC dựa vào hàm băm (HMAC) • Quá trình thực 45 MAC dựa vào hàm băm (HMAC) Bảo mật HMAC •Dựa lên bảo mật hàm băm •Tấn cơng HMAC: • Tấn cơng brute force khóa dùng • Tấn cơng ngày sinh nhật • Hàm băm chọn sử dụng dựa ràng buộc tốc độ bảo mật 46 MAC dựa vào mã hóa khối (CMAC) • Có DAA (Data Authentication Algorithm), lỗi thời • CMAC (Cipher-based Message Authentication Code), thiết kế để khắc phục yếu DAA • Được dùng rộng rãi phủ doanh nghiệp • Có kích cỡ thơng điệp giới hạn • Dùng khóa padding • Được thông qua NIST SO800-38B 47 CMAC 48 MAC dựa giải thuật mã hoá DES 49 Câu hỏi tập Phân biệt tồn vẹn thơng điệp chứng thực thông điệp Phân biệt MDC MAC Phân biệt HMAC CMAC Giải thích Public Key khơng dùng việc tạo MAC 50 Câu hỏi tập Về mặt lý thuyết, giá trị băm trùng khơng? Vậy nói giá trị băm xem “dấu vân tay thông điệp” Tìm hiểu phương pháp sử dụng hàm băm MD5 SHA thư viện NET, viết chương trình mã hóa password lưu trữ kiểm tra password Trần Thị Kim Chi 1-51 ... bên gửi thông báo khóa bí mật so sánh giá trị thu với MAC thông báo 23 Message Authentication Code • Cơ chế tổng quát 24 Message Authentication Code (MAC) • Chi? ??u dài thông thường MAC: 32 96 bit... kích thước nhỏ, thời gian tạo nhanh so với mã hóa tồn thơng báo • Chú ý: MAC khơng phải chữ ký điện tử 34 Mật mã xác thực thông điệp • • • • • Một hệ mật mã có xác thực (E, D) hệ mật mã mà Hàm mã... hiểu phương pháp sử dụng hàm băm MD5 SHA thư viện NET, viết chương trình mã hóa password lưu trữ kiểm tra password Trần Thị Kim Chi 1-5 1