Bài giảng An ninh mạng - Chương 4 trang bị cho người học những hiểu biết về xác thực và chữ ký số. Thông qua chương này, người học sẽ biết được các vấn đề xác thực, xác thực bằng cách mã hóa, mã xác thực thông báo (MAC), hiểu được vì sao phải dùng MAC,.... Mời các bạn cùng tham khảo.
CHƯƠNG XÁC THỰC & CHỮ KÝ SỐ Vấn đề xác thực • Các tiêu chuẩn cần xác minh – Thơng báo có nguồn gốc rõ ràng xác – Nội dung thơng báo tồn vẹn khơng bị thay đổi – Thơng báo gửi trình tự thời điểm • Mục đích để chống lại hình thức công chủ động (xuyên tạc liệu giao tác) • Các phương pháp xác thực thông báo – Mã hóa thơng báo – Sử dụng mã xác thực thơng báo (MAC) – Sử dụng hàm băm Trần Bá Nhiệm An ninh Mạng Xác thực cách mã hóa • Sử dụng mã hóa đối xứng – Thơng báo gửi từ nguồn có người gửi biết khóa bí mật dùng chung – Nội dung khơng thể bị thay đổi ngun có cấu trúc định – Các gói tin đánh số thứ tự mã hóa nên khơng thể thay đổi trình tự thời điểm nhận • Sử dụng mã hóa khóa cơng khai – Khơng xác thực thơng báo mà tạo chữ ký số – Phức tạp thời gian mã hóa đối xứng Trần Bá Nhiệm An ninh Mạng Mã xác thực thơng báo (MAC) • Khối kích thước nhỏ cố định gắn vào thơng báo tạo từ thơng báo khóa bí mật chung • Bên nhận thực giải thuật thơng báo khóa để so xem MAC có xác khơng • Giải thuật tạo MAC giống giải thuật mã hóa khơng nghịch đảo • Có thể nhiều thơng báo có chung MAC – Nhưng biết thông báo MAC nó, khó tìm thơng báo khác có MAC – Các thơng báo có xác suất tạo MAC • Đáp ứng tiêu chuẩn xác thực Trần Bá Nhiệm An ninh Mạng Đích B Nguồn A So sánh a) Xác thực thơng báo So sánh b) Xác thực thông báo bảo mật; MAC gắn vào nguyên So sánh c) Xác thực thông báo bảo mật; MAC gắn vào mã Trần Bá Nhiệm An ninh Mạng Vì dùng MAC? • Nhiều trường hợp cần xác thực, khơng cần mã hóa tốn thời gian tài ngun – Thơng báo hệ thống – Chương trình máy tính • Tách riêng chức bảo mật xác thực khiến việc tổ chức linh hoạt – Chẳng hạn chức thực tầng riêng • Cần đảm bảo tính tồn vẹn thơng báo suốt thời gian tồn không lưu chuyển – Vì thơng báo bị thay đổi sau giải mã Trần Bá Nhiệm An ninh Mạng MAC dựa DES (DAC) Mã hóa Mã hóa Mã hóa Mã hóa (16 - 64 bits) Trần Bá Nhiệm An ninh Mạng Hàm băm • Tạo giá trị băm có kích thước cố định từ thơng báo đầu vào (khơng dùng khóa) h = H(M) • Hàm băm khơng cần giữ bí mật • Giá trị băm gắn kèm với thông báo dùng để kiểm tra tính tồn vẹn thơng báo • Bất kỳ thay đổi M dù nhỏ tạo giá trị h khác Trần Bá Nhiệm An ninh Mạng Nguồn A Đích B So sánh a) Xác thực thông báo bảo mật; mã băm gắn vào nguyên So sánh b) Xác thực thông báo; mã băm mã hóa sử dụng phương pháp đối xứng So sánh c) Xác thực thông báo; mã băm mã hóa sử dụng phương pháp khóa cơng khai Trần Bá Nhiệm An ninh Mạng Nguồn A Đích B So sánh d) Xác thực mã hóa khóa cơng khai bảo mật mã hóa đối xứng So sánh e) Xác thực khơng cần mã hóa nhờ hai bên chia sẻ giá trị bí mật chung So sánh f) Xác thực nhờ giá trị bí mật chung; bảo mật phương pháp đối xứng Trần Bá Nhiệm An ninh Mạng 10 Yêu cầu hàm băm • • • • Có thể áp dụng với thơng báo M có độ dài Tạo giá trị băm h có độ dài cố định H(M) dễ dàng tính với M Từ h khó tìm M cho H(M) = h – Tính chiều • Từ M1 khó tìm M2 cho H(M2) = H(M1) – Tính chống xung đột yếu • Rất khó tìm (M1, M2) cho H(M1) = H(M2) – Tính chống xung đột mạnh Trần Bá Nhiệm An ninh Mạng 11 Các hàm băm đơn giản 16 bit XOR dịch vòng trái bit XOR khối 16 bit Trần Bá Nhiệm An ninh Mạng 12 Kiểu công ngày sinh • Nghịch lý ngày sinh – Trong 23 người, xác suất tìm người khác có ngày sinh với A ≈ 6% – Xác suất 23 người có ngày sinh ≈ 50% • Cách thức công mã băm m bit – Tạo 2m/2 biến thể đồng nghĩa thông báo hợp lệ – Tạo 2m/2 biến thể thông báo giả mạo – So sánh tập thông báo với tìm cặp có mã băm (xác suất > 0,5 theo nghịch lý ngày sinh) – Để người gửi ký biến thể hợp lệ, dùng chữ ký gắn vào biến thể giả mạo Trần Bá Nhiệm An ninh Mạng 13 An ninh hàm băm MAC • Kiểu công vét cạn – Với hàm băm, nỗ lực phụ thuộc độ dài m mã băm • Độ phức tạp tính chiều tính chống xung đột yếu 2m; tính chống xung đột mạnh 2m/2 • 128 bit phá được, thường dùng 160 bit – Với MAC, nỗ lực phụ thuộc vào độ dài k khóa độ dài n MAC • Độ phức tạp min(2k, 2n) • Ít phải 128 bit • Kiểu thám mã – Hàm băm thường gồm nhiều vòng mã hóa khối nên tập trung khai thác điểm yếu hàm vòng Trần Bá Nhiệm An ninh Mạng 14 Chữ ký số • Xác thực thơng báo khơng có tác dụng bên gửi bên nhận muốn gây hại cho – Bên nhận giả mạo thông báo bên gửi – Bên gửi chối gửi thơng báo đến bên nhận • Chữ ký số khơng giúp xác thực thơng báo mà bảo vệ bên khỏi bên • Chức chữ ký số – Xác minh tác giả thời điểm ký thông báo – Xác thực nội dung thông báo – Là để giải tranh chấp Trần Bá Nhiệm An ninh Mạng 15 Yêu cầu chữ ký số • Phụ thuộc vào thơng báo ký • Có sử dụng thơng tin riêng người gửi – Để tránh giả mạo chối bỏ • Tương đối dễ tạo • Tương đối dễ nhận biết kiểm tra • Rất khó giả mạo – Bằng cách tạo thơng báo khác có chữ ký số – Bằng cách tạo chữ ký số theo ý muốn cho thơng báo • Thuận tiện việc lưu trữ Trần Bá Nhiệm An ninh Mạng 16 Chữ ký số trực tiếp • Chỉ liên quan đến bên gửi bên nhận • Với mật mã khóa cơng khai – Dùng khóa riêng ký tồn thơng báo giá trị băm – Có thể mã hóa sử dụng khóa cơng khai bên nhận – Quan trọng ký trước mã hóa sau • Chỉ có tác dụng khóa riêng bên gửi đảm bảo an ninh – Bên gửi giả vờ khóa riêng • Cần bổ sung thơng tin thời gian báo khóa kịp thời – Khóa riêng bị thật • Kẻ cắp gửi thơng báo với thông tin thời gian sai lệch Trần Bá Nhiệm An ninh Mạng 17 Chữ ký số gián tiếp • Có tham gia bên trọng tài – Nhận thơng báo có chữ ký số từ bên gửi, kiểm tra tính hợp lệ – Bổ sung thông tin thời gian gửi đến bên nhận • An ninh phụ thuộc chủ yếu vào bên trọng tài – Cần bên gửi bên nhận tin tưởng • Có thể cài đặt với mã hóa đối xứng mã hóa khóa cơng khai • Bên trọng tài phép nhìn thấy khơng nội dung thông báo Trần Bá Nhiệm An ninh Mạng 18 Các kỹ thuật chữ ký số gián tiếp (a) Mã hóa đối xứng, trọng tài thấy thơng báo (1) X A: M ║ EKXA[IDX ║ H(M)] (2) A Y: EKAY[IDX ║ M ║ EKXA[IDX ║ H(M)] ║ T] (b) Mã hóa đối xứng, trọng tài khơng thấy thơng báo (1) X A: IDX ║ EKXY[M] ║ EKXA[IDX ║ H(EKXY[M])] (2) A Y: EKAY[IDX ║ EKXY[M] ║ EKXA[IDX ║ H(EKXY[M])] ║ T] (c) Mã hóa khóa cơng khai, trọng tài không thấy thông báo (1) X A: IDX ║ EKRX[IDX ║ EKUY[EKRX[M]]] (2) A Y: EKRA[IDX ║ EKUY[EKRX[M]] ║ T] Ký hiệu: X = Bên gửi M = Thông báo Y = Bên nhận T = Nhãn thời gian A = Trọng tài Trần Bá Nhiệm An ninh Mạng 19 ... thông báo suốt thời gian tồn không lưu chuyển – Vì thơng báo bị thay đổi sau giải mã Trần Bá Nhiệm An ninh Mạng MAC dựa DES (DAC) Mã hóa Mã hóa Mã hóa Mã hóa (16 - 64 bits) Trần Bá Nhiệm An ninh. .. thực thơng báo mà tạo chữ ký số – Phức tạp thời gian mã hóa đối xứng Trần Bá Nhiệm An ninh Mạng Mã xác thực thơng báo (MAC) • Khối kích thước nhỏ cố định gắn vào thông báo tạo từ thông báo khóa... H(M1) = H(M2) – Tính chống xung đột mạnh Trần Bá Nhiệm An ninh Mạng 11 Các hàm băm đơn giản 16 bit XOR dịch vòng trái bit XOR khối 16 bit Trần Bá Nhiệm An ninh Mạng 12 Kiểu công ngày sinh • Nghịch