1. Trang chủ
  2. » Tất cả

Tính an toàn của mac

21 0 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 21
Dung lượng 0,99 MB

Nội dung

HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG KHOA VIỄN THÔNG TIỂU LUẬN MÔN HỌC AN NINH MẠNG VIỄN THƠNG TÍNH AN TỒN CỦA MAC Giảng viên: TS Phạm Anh Thư Hà Nội, 2021 PHÂN CHIA CÔNG VIỆC Nội dung Tổng quan MAC Người thực -MAC ? -Mục tiêu MAC? -Nguyên tắc bảo mật? - Định dạng văn chỉnh sửa word Các mơ hình dùng MAC mã hóa Ứng dụng MAC yêu cầu cho MAC Tính an tồn MAC Các chuẩn MAC tính an tồn Chi tiết -MAC sau mã hóa - Mã hóa MAC - Mã hóa sau MAC Lê Tiến Thắng -Ứng dụng? - Yêu cầu? -Phân biệt công Online Offline -So sánh với hàm băm (Birthday Attack) -Tấn cơng Brute-force vào khóa -An tồn trước Chosen Message Attack -MAC key lifeSpan -Thiết kế slide -CMAC tính an tồn CMAC -HMAC tính an tồn HMAC Mơn An ninh mạng thơng tin LỜI NÓI ĐẦU Những năm cuối thể kỉ 20 coi thời đại bùng nổ thông tin, với phát triển mạnh mẽ ngành công nghệ cao, điện tử, vật liệu mới, … Đặc biệt, công nghệ áp dụng, len lỏi vào hầu hết lĩnh vực đời sống xã hội, góp phần đáng kể việc cơng nghiệp hóa, đại hóa quốc gia Trong năm gần đây, ứng dụng công nghệ thông tin ngày phổ biến rộng rãi, ảnh hưởng lớn đến diện mạo đời sống, kinh tế, xã hội Mọi công việc hàng ngày thực từ xa với hỗ trợ máy vi tính mạng internet Tất thông tin liên quan đến công việc máy tính quản lý truyền hệ thống Đối với thơng tin bình thường không ý đến thông tin mang tính chất quan trọng vấn đề bảo mật cần phải đảm bảo tuyệt đối Việc đảm bảo an tồn thơng tin, tránh nguy bị thay đổi, chép mát liệu ứng dụng mạng vấn đề nhiều người quan tâm Để tránh việc thông tin truyền mạng bị thay đổi hay chép, việc mã hóa thơng tin trao đổi cần thiết Trên sở ứng dụng mơ hình tốn học, đặc biệt thuật tốn mã hóa, ứng dụng truyền tin mạng thực với độ an tồn thơng tin cao giảm thiểu nguy liệu bị thay đồi hay mát Để tìm hiểu thêm biện pháp an tồn bảo mật nhóm em lựa chọn chủ đề :’’ Tính an tồn MAC” Nội dung tìm hiểu gồm phần: I Tổng quan MAC II Tính an tồn MAC III Các chuẩn MAC tính an tồn Trong q trình làm việc chắn cịn tồn sai sót, nhóm em mong nhận góp ý phản hồi từ cô giáo bạn để tiểu luận hồn thiện đầy đủ Mơn An ninh mạng thơng tin MỤC LỤC PHÂN CHIA CƠNG VIỆC LỜI NÓI ĐẦU DANH MỤC HÌNH ẢNH I Tổng quan MAC 1.1 Khái niệm MAC 1.2 Mục tiêu MAC 1.3 Nguyên tắc bảo mật 1.4 Các mơ hình dùng mac mã hóa 1.4.1 MAC mã hóa 1.4.2 Mã hóa MAC 1.4.3 Mã hóa MAC 1.5 Ứng dụng mac yêu cầu cho mac 10 1.5.1 Ứng dụng MAC 10 1.5.2 Yêu cầu cho MAC 12 II TÍNH AN TỒN CỦA MAC 12 2.1 Phân biệt công Online Offline 12 2.2 So sánh với hàm băm thông qua Birthday Attack (Tấn công ngày sinh nhật) 13 2.3 Tấn công Brute-force vào khóa 14 2.4 An toàn trước Chosen Message Attack 14 2.5 MAC Key LifeSpan 15 III CÁC CHUẨN MAC VÀ TÍNH AN TỒN 16 3.1 CMAC tính an tồn CMAC 16 3.2 HMAC tính an tồn HMAC 18 TÀI LIỆU THAM KHẢO 21 Môn An ninh mạng thơng tin DANH MỤC HÌNH ẢNH Hình Mơ hình tin MAC Hình Mơ hình bảo mật MAC Hình Sơ đồ MAC mã hóa Hình Sơ đồ mã hóa MAC Hình Sơ đồ mã hóa MAC 10 Hình Ứng dụng MAC hệ điều hành 11 Hình Công nghệ IP-SEC 14 Hình Mô Choosen Message Attack 15 Hình Sơ đồ CBC-MAC 16 Hình 10 Sơ đồ XCBC- MAC 17 Hình 11 Sơ đồ sử dụng HMAC 18 Môn An ninh mạng thông tin I Tổng quan MAC I Tổng quan MAC 1.1 Khái niệm MAC MAC - đoạn mã tạo nhằm mục đích xác thực tính tồn vẹn nguồn gốc tin Chúng đảm bảo tính xác thực (authenticity) tin hai nhiều bên tham gia giao tiếp Đóng vai trị quan trọng để trì tính tồn vẹn khơng thể chối bỏ liệu chúng lại hay thường bị bỏ qua việc thiết kế hệ thống bảo mật Mọi người thường tập trung vào tính riêng tư (privacy) tin mà quên tác động việc tin bị sửa đổi (cho dù lỗi truyền hay bị cơng) Một sai lầm chí cịn phổ biến người cịn khơng nhận họ cần chúng Nhiều người thiếu kinh nghiệm cịn cho khơng cần chắn nội dung tin nhắn, với suy nghĩ rằng: "Nếu họ tin nạn nhân gì, làm kẻ cơng đưa thay đổi có lợi cho kẻ công?" Tuy nhiên, thực tế kẻ cơng biết rõ nội dung tin đủ cho kẻ cơng để biết cách làm xáo trộn cách có ý nghĩa Giả sử xem giao thức dành cho giao dịch ngân hàng, bạn chuyển giao dịch cho ngân hàng để ủy quyền ngân hàng gửi bit đơn giản cho bị từ chối, cho thành công Nếu đường truyền không xác thực giả sử có thay đổi tin đó, dẫn đến số rắc rối từ nhỏ đến lớn, ví dụ kẻ cơng gửi thơng tin tài khoản giả cho bên ngân hàng - chắn bị từ chối với bit 0, hồn tồn sửa số thành số Kiểu công kiểu MAC thiết kế để ngăn chặn MAC hoạt động bối cảnh tương tự mật mã đối xứng, chúng thuật toán cố định với input khóa bí mật tin để tạo Tag Tuy nhiên đầu vào khơng có kích thước cố định - giống hàm băm tạo đầu kích thước cố định Sender M MAC M Tag Private Key Hình Mơ hình tin MAC Mơn An ninh mạng thông tin I Tổng quan MAC 1.2 Mục tiêu MAC Mục đích hàm MAC đảm bảo để hai (hay nhiều) bên tham gia giao dịch có chung khóa bí mật giao dịch với nhau, kèm theo khả phát thay đổi tin trình vận chuyển, nhằm tránh cơng làm thay đổi tin Thuật toán MAC dựa tin đầu vào khóa bí mật chia sẻ để tạo thẻ MAC (MAC tag) Bản tin MAC tag gửi tới người nhận, người nhận tính lại giá trị MAC tag so sánh với giá trị thẻ MAC nhận Nếu hai giá trị thẻ MAC trùng coi tin “có thể coi là” xác, ngược lại tin bị thay đổi, lỗi đường truyền Đối với kẻ công giả mạo tin, kẻ công phải phá hàm MAC, việc khó tương đương với việc phá khóa mã hóa bảo mật Trên thực tế, giao thức thường chia tin dài làm nhiều đoạn nhỏ chúng xác thực độc lập với nhau, dẫn đến phát sinh công phát lại (replay attack) Do thiết kế giao thức có sử dụng MAC cần thận trọng Để giúp nhà phát triển ứng dụng tích hợp MAC vào sản phẩm khác nhau, Viện tiêu chuẩn công nghệ quốc gia Mỹ (NIST) đưa hai chuẩn hàm MAC Tiêu chuẩn thứ mã xác thực tin sử dụng hàm băm chiều có khóa HMAC (KeydHash Messasge Authentication Code) Chuẩn mô tả phương pháp an toàn chuyển hàm băm chiều thành hàm MAC HMAC nguyên đề nghị sử dụng với SHA-1, nhiên thích hợp sử dụng với hàm hash khác (đã có nhiều chứng minh chống xung đột không cần thiết an toàn HMAC hay NMAC (nested MAC) - thuật tốn mà từ HMAC xây dựng Một số báo khác lại đề nghị HMAC hay NMAC cần có khả chống lại phá mã vi sai Chuẩn thứ hai NIST đưa mã xác thực tin mã hóa (Cipher Message Authentication Code- CMAC) Không giống HMAC, CMAC sử dụng mã khối để thực chức MAC, phù hợp với ứng dụng nhớ hạn chế đủ để dùng cho mã hóa liệu Mục đích hàm MAC có nhiều điểm khác với hàm chiều hash, ngồi việc bảo đảm tính tồn vẹn, MAC cịn trọng đến tính xác thực tin Đây hai mục tiêu khác biệt lại có nhiều chung Trong hai trường hợp tìm cách xác định tính xác (đúng đắn), tồn vẹn tin tin, xác thực nhằm kiểm tra nguồn tin, đảm bảo tính khơng thể chối cãi Ví dụ sử dụng SHA-1 để xử lý tin để, tạo mã băm dài 160 bit, với tin gửi cho người khác người xác định xem tin giữ ngun ban đầu hay khơng cách tính lại giá trị băm so sánh chúng với nhau, cách xác định tạo tin đó, khơng có dấu hiệu cung cấp thơng tin Giả sử giao tiếp hai bên dùng chung khóa K, gửi tin thẻ MAC với khóa K người nhận kiểm tra để xác định tin có gửi từ nơi hay không cách kiểm tra thẻ MAC Điểm khác biệt nhận thấy hàm hash, công ngày sinh nhật (birthday attack) giảm độ an toàn hàm hash Môn An ninh mạng thông tin I Tổng quan MAC độ dài nửa kích thước giá trị hash (nếu sử dụng SHA-256 cần 2128 “phép toán” để tìm xung đột) Điều xảy giá trị băm tính offline, tính với số lượng lớn Cịn MAC online, khơng có khóa, kẻ cơng khơng thể tìm va chạm (nếu coi MAC thực an tồn) kẻ cơng khơng thể tùy ý tính thẻ MAC được, cơng ngày sinh nhật khơng thể áp dụng cho hàm MAC Do thẻ MAC có độ dài k bit kẻ cơng cần 2𝑘 phép tốn để tìm xung đột với giá trị cụ thể 1.3 Nguyên tắc bảo mật - Với hàm MAC khác nhau, tương tự hàm băm mật mã, chúng có yêu cầu bảo mật khác Để coi an toàn, hàm MAC phải chống lại giả mạo tồn cơng Điều có nghĩa kẻ cơng sở hữu khóa bí mật tạo MAC cho tin nhắn mà kẻ công chọn, kẻ công đoán MAC tin nhắn khác MAC=C(K, M), với: M: tin đầ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 tin có chiều dài cố định Bản tin cộng với MAC truyền tới người nhận Người nhận thực tính tốn tương tự thơng điêp nhận sử dụng khóa bí mật, để tạo MAC Mac vừa tạo so với MAC nhận, giả sử nhận người gửi biết khóa bí mật: - Nếu MAC nhận phù hợp với MAC vừa tính tin khơng bị thay đổi trình - truyền chắn gửi tới người gửi biết Nếu MAC nhận khác với MAC vừa tính tin bị thay đổi bị giả mạo gửi từ kẻ cơng Hình Mơ hình bảo mật MAC Môn An ninh mạng thông tin I Tổng quan MAC 1.4 Các mơ hình dùng mac mã hóa 1.4.1 MAC mã hóa Tính tốn MAC rõ, gắn MAC vừa tính vào rõ, mã hóa tồn (TLS): - Khơng cung cấp tính tồn vẹn mã, khơng có cách để biết giải mã xem thực xác thực hay giả mạo - Tính tồn vẹn cho rõ - MAC khơng cung cấp thơng tin rõ mã hóa P MAC P E P D Tag MAC Tag Compare Private Key Tag’ Hình Sơ đồ MAC mã hóa 1.4.2 Mã hóa MAC Encrypt-and-MAC: Tính tốn MAC rõ, mã hóa rõ, gắn MAC vào mã (SSH) - Không cung cấp tính tồn vẹn cho mã, MAC sinh từ rõ, rõ khơng thay đổi, mã bị thay đổi mà MAC giữ nguyên giải mã - Có thể xác minh tính tồn vẹn rõ Hình Sơ đồ mã hóa MAC 1.4.3 Mã hóa MAC Mã hóa sau MAC mã hóa rõ, tính tốn MAC mã, gắn MAC vào mã: - Cung cấp tính tồn vẹn cho mã rõ Môn An ninh mạng thông tin I Tổng quan MAC - MAC không cung cấp thông tin rõ P Private Key E MAC C C Tag Tag MAC Tag’ Compare Hình Sơ đồ mã hóa MAC 1.5 Ứng dụng mac yêu cầu cho mac 1.5.1 Ứng dụng MAC Chính xác MAC sử dụng tình thực tế? Ví dụ cổ điển SSL TLS Internet, HTTPS sử dụng TLS SSL để mã hóa kênh sử dụng MAC cho liệu gửi để đảm bảo tính xác thực tồn vẹn Hoặc mạng GSM, sử dụng thuật tốn gọi COMP128 để xác thực người dùng, đưa yêu cầu người dùng phải đưa MAC tag xác để phản hồi Giả sử không sử MAC trường hợp trên, người dùng gặp phải mối đe dọa Trong trường hợp TLS SSL, người dùng cố gắng kết nối tới máy chủ lưu trữ truyền liệu, liệu thường bao gồm lưu lượng HTTPS, tài liệu HTML câu trả lời dạng biểu mẫu, hậu việc chèn hay sửa đổi liệu tùy thuộc vào ứng dụng, trường hợp giao tiếp với máy chủ SMTP, tin bị thay đổi sang "đọc email kế tiếp" "xóa email tại" Hoặc TLS ứng dụng ngân hàng, rắc rối tài xảy hai bên khơng xác thực lẫn Ví dụ khác: bảo vệ file hệ thống, giả sử bạn muốn cài đặt Windows máy bạn, windows hỏi User mật khẩu, tạo khóa k từ mật này, với file ghi lên ổ đĩa, từ 𝐹1 đến 𝐹𝑛 , hệ điều hành tính tốn tag cho file lưu trữ tag với file, sau xóa khóa K đi, khơng cịn khóa K ổ đĩa Giả sử sau thời gian máy bạn bị nhiễm virus, virus cố gắng chỉnh sửa file hệ thống, câu hỏi đặt liệu làm cách User phát file bị chỉnh sửa? Thông thường, User reboot máy từ OS (một USB disk chẳng hạn), sau reboot, User nhập lại mật trước cho OS này, sau OS tiến hành kiểm tra giá trị tag file so với giá trị tính từ mật biết file bị xâm hại 10 Môn An ninh mạng thông tin I Tổng quan MAC Hình Ứng dụng MAC hệ điều hành Một ứng dụng cụ thể MAC Oracle Database, sử dụng với hàm băm (HMAC) Đoạn code sau sử dụng ngôn ngữ PL/SQL để tạo script tích hợp vào database Oracle nhằm khởi tạo MAC Hình 12 MAC PL/SQL 11 Mơn An ninh mạng thơng tin II Tính an tồn MAC 1.5.2 Yêu cầu cho MAC Khi tin mã hố (để bảo mật) sử dụng mã hố khố bí mật khố cơng khai, độ bảo mật thường phụ thuộc vào độ dài bit khoá Một cơng bruteforce phải sử dụng tất khố Trung bình cần 2𝑘−1 lần thử cho khố k bit Tùy thuộc vào kiểu cơng mà MAC phải có tính chất khác để chống lại cơng Ta tóm gọn thành tính chất sau: - Biết tin MAC, khơng thể tìm tin khác có MAC - Các MAC cần phải có phân bố - MAC phải mang tính phụ thuộc vào tất bit tin Tức thay đổi bit thơng tin đó, MAC thay đổi theo - Tính tốn đến loại công để thiết kế hệ thống phù hợp Dựa kiểu cơng phân tích phần II, ta đưa ba yêu cầu mà hàm MAC cần thỏa mãn sau: Nếu kẻ công quan sát M MAC(K,M), hệ thống khơng an tồn với kẻ cơng kẻ cơng tạo tin M’ thỏa mãn: MAC(K,M') = MAC(K,M) Tức kẻ công tạo tin để khớp với Tag cho trước, kẻ công khơng cần tìm hiểu khóa MAC(K,M) nên có phân bố tin lựa chọn ngẫu nhiên, M M’, xác suất để MAC( K,M) = MAC( K,M' ) 2−𝑛 n số bit nhãn Yêu cầu thứ hai đề cập đến ngăn chặn công brute-force dựa rõ cho trước Nghĩa là, ta giả sử đối thủ khơng biết K có quyền truy cập vào hàm MAC định tin cho tạo MAC, kẻ cơng thử nhiều rõ khác tìm thấy tin khớp với nhãn trước Nếu hàm MAC phân phối đồng đều, trung bình phương pháp brute-force yêu cầu 𝟐𝐧−𝟏 lần thử trước tìm thấy tin phù hợp với nhãn cho trước Cho M’ kết biến đổi M nghĩa là, M'= f(M) Ví dụ, f gồm số thao tác nghịch đảo nhiều bit Khi đó: Pr [MAC(K,M)] = MAC(K,M’)] = 2−n Yêu cầu cuối địi hỏi thuật tốn xác thực khơng yếu số phần bit định so với phần khác bit khác Nếu khơng, kẻ cơng có M MAC (K, M) thay đổi M “điểm yếu” biết với khả thành công sớm việc tạo tin khớp với nhãn cũ II TÍNH AN TỒN CỦA MAC 2.1 Phân biệt công Online Offline Điều quan trọng phân biệt vector công Online Offline, 40 bits gọi đủ cho MAC mà khơng phải cho khóa mật mã? Trong trường hợp Online MAC, tức kẻ công phải thực biện pháp lơi kéo kích thích để nạn nhân đưa thông tin Trong trường hợp Offline mật mã, công Offline, kẻ cơng liên tục thực phép tính định (ví dụ giải mã khóa ngẫu nhiên) mà khơng liên quan đến nạn nhân, khóa 40 bits khơng đảm bảo tính bảo mật lâu dài Một xử lý AMD Opteron có 12 Mơn An ninh mạng thơng tin II Tính an toàn MAC thể kiểm tra key AES-128 khoảng 2000 chu kỳ xử lý, giả sử sử dụng khóa 40bit 88 bít cịn lại 0, Opteron 2.2 GHz cần tầm 11,6 ngày thấy key Một AMD Opteron 885 với cải tiến đầy đủ hồn thành mục tiêu khoảng 1,23 ngày với chi phí 20k$ 2.2 So sánh với hàm băm thông qua Birthday Attack (Tấn công ngày sinh nhật) Một điểm khác biệt thể cho khác Hash MAC tính an tồn chúng Hash bị Birthday Attack, kẻ cơng thực tính tốn trước từ điển nhằm tìm tin X X' khác mà lại có nội dung Hash giống cách tinh chỉnh cẩn thận bit (thêm khoảng trắng, dùng nhiều từ đồng nghĩa thay thế, …), dùng máy tính tính tốn giá trị băm văn để so sánh với nhằm hy vọng tìm văn có đụng độ, gọi công Offline Tại điều lại khả thi thời gian đủ ngắn? Birthday attack (tấn công ngày sinh nhật) dựa nghịch lý Birthday: “Trong nhóm có 23 người bất kỳ, xác suất để hai người có ngày sinh nhật khơng 0.5” Trong trường hàm băm, giả sử hàm băm có m giá trị băm khác nhau, tức kích thước khơng gian output hàm băm m Với số lượng k tin ngẫu nhiên, xác suất để xảy xung đột là: −𝑘(𝑘−1) 𝑃(𝑚, 𝑘) > – 𝑒 2∗𝑚 Với e số Euler xấp xỉ 2.7 Nhận thấy công thức ước lượng xác suất phụ thuộc vào kích thước không gian băm m số lượng tin k kẻ cơng tính tốn trước Ví dụ kẻ cơng có khả tính tốn tập k giá trị băm 1020 Xác định không gian băm để xác suất kẻ thù tìm đụng độ nhỏ 0.001 Sử dụng công thức trên, ta thấy: −𝑘(𝑘−1) 𝑃(𝑚, 𝑘 )𝑚𝑎𝑥 = 0.01 => 𝑒 2∗𝑚 = 0.999 => 𝑚𝑚𝑖𝑛 = ∗ 1039 => kích thước giá trị băm nhỏ 𝑙𝑜𝑔2 (2 ∗ 1039 ) = 131 bit Cịn MAC bị cơng Online, tức phải truy cập vào khóa để tìm xung đột, kẻ cơng khơng thể tự ý tính tốn trước Tag không lừa nạn nhân tạo dùm Do đó, cơng MAC khơng thể lợi dụng Birthday Paradox, tức MAC dài k bit, 2𝑘 cơng việc để tìm xung đột Một ví dụ điển hình IPSec (sử dụng cho HMAC) sử dụng Tag 96-bit mà đảm bảo tính tối ưu, xác suất bảo mật 296 gọi cao 13 Môn An ninh mạng thơng tin II Tính an tồn MAC Hình Cơng nghệ IP-SEC 2.3 Tấn cơng Brute-force vào khóa Nếu khóa bí mật khơng bị lộ, kênh truyền khóa an tồn, kẻ cơng gần khơng có thơng tin khóa sử dụng Khi tồn tin mã hóa, tính bảo mật phụ thuộc phần nhiều vào chiều dài khóa sử dụng, kẻ cơng phải vét cạn khóa có, tính trung bình phải 2𝑘−1 lần thử, với k chiều dài khóa Trong trường hợp MAC, vấn đề lại hoàn toàn khác Hàm MAC hàm oneto-many, sử dụng vét cạn, kẻ cơng khám phá khóa? Giả sử trường hợp tính bảo mật khơng áp dụng, kẻ cơng bắt gói tin có rõ P giá trị Tag tương ứng Nếu k > n, tức kích thước khóa lớn kích thước Tag, đó, với 𝑀1 𝑇1 = 𝑀𝐴𝐶 (𝐾, 𝑀1 ), kẻ cơng cần tìm khóa K1, nhiên với 2𝑘 khóa tạo 2𝑘 Tag, có 2𝑛 < 2𝑘 giá trị Tag khác nhau, chắn có giá trị tag bị trùng, (2𝑘 ) - kẻ công đâu khóa trùng, trung bình 𝑛 = 2𝑘−𝑛 khóa tạo trường hợp trùng Tag Do kẻ công phải thực vét cạn với nhiều vòng Vòng 1: cho trước 𝑀1 𝑇1 = 𝑀𝐴𝐶 (𝐾, 𝑀1 ), tính Tag 𝑇𝑖 = 𝑀𝐴𝐶 (𝐾𝑖 , 𝑀1 ) với 𝑖 = 1, … , 2𝑘 , số trường hợp trùng Tag 2𝑘−𝑛 Vòng 2: cho trước 𝑀2 𝑣à 𝑇2 = 𝑀𝐴𝐶 (𝐾, 𝑀2 ), tính Tag 𝑇𝑖 = 𝑀𝐴𝐶(𝐾𝑗 , 𝑀2 ) với 𝑗 = 1, … , 2𝑘−𝑛 Số trường hợp trùng Tag lúc giảm 2𝑘−2∗𝑛 kẻ công đủ tự tin để định sử dụng khóa mà khơng bị phát Ví dụ với khóa 80 bits sử dụng Tag dài 32 bit, vịng có 248 trường hợp khóa cho Tag nhận Vịng thứ hai thu hẹp khóa cịn 216 trường hợp, vịng thứ ba tìm khóa xác Nhận thấy, với trường hợp xấu với hệ thống yếu nhất, tức kẻ công vừa biết độ dài khóa, vừa biết cách tạo MAC, lượng cơng việc cần thực khơng nhỏ 2.4 An tồn trước Chosen Message Attack Với 𝑚1 , 𝑚2 , … , 𝑚𝑞 kẻ công nhận 𝑡𝑖 < − 𝑀𝐴𝐶(𝑘, 𝑚𝑖 ) 14 Mơn An ninh mạng thơng tin - II Tính an tồn MAC Hành vi kẻ cơng mô tả sau, kẻ công gửi cho Alice tin mà kẻ công chọn, từ 𝑚1 đến 𝑚𝑞 , Alice tính tốn tag cho kẻ cơng, kẻ cơng có tag Tình nghe kỳ lạ diễn nhiều giới thực Ví dụ kẻ cơng gửi Alice email giả mạo, Alice muốn lưu trữ email đó, máy tính tính tốn tag cho tin lưu vào ổ đĩa Bằng cách kẻ cơng đánh cắp đọc ổ đĩa lấy tin tính tag Mục tiêu kẻ cơng giả mạo: tạo cặp tin (m,t) cho: (𝑚, 𝑡 ) ∉ {(𝑚1 , 𝑡1 ), … , (𝑚𝑞 , 𝑡𝑞 )} Nếu thành công mục tiêu trên, ta nói "Hệ thống khơng an tồn" ngược lại Ngoài ra, cho cặp (m,t), kẻ công tạo (m,t') với t'≠t Giả sử có trị chơi Challenger Adversary: Challenger chọn khóa K bất kỳ, Bên Adv thực Chosen Message Attack, gửi q tin từ 𝑚1 đến 𝑚𝑞 , bên Challenger gửi từ 𝑡1 đến 𝑡𝑞 Adv thực Extensial Forgegy: gửi cặp tin (m,t) phía Challenger Chúng ta nói: Adv thắng trị chơi, hay 𝑏 = hàm kiểm tra 𝑉 (𝑘, 𝑚, 𝑡 ) = ′𝑦𝑒𝑠 ′ (𝑚, 𝑡 ) ∉ {(𝑚1 , 𝑡1 ), … , (𝑚𝑞 , 𝑡𝑞 )} Chúng ta nói: Adv thua trò chơi, hay 𝑏 = ngược lại Hình Mơ Choosen Message Attack Ta nói hệ thống MAC an toàn khi: - 𝐴𝑑𝑣𝑀𝐴𝐶 [𝐴, 𝐼] = Pr(𝐶h𝑎𝑙 𝑂𝑢𝑡𝑝𝑢𝑡𝑠 1] "𝑛𝑒𝑔𝑙𝑖𝑔𝑖𝑏𝑙𝑒" Giả sử kẻ công tìm 𝑚0 ≠ 𝑚1 cho 𝑆(𝑘, 𝑚0 ) = 𝑆(𝑘, 𝑚1 ) với 1/2 số khóa khơng gian khóa K, nói cách khác, kẻ cơng chọn khóa với xác suất 0.5, tin Tag 𝑚0 giống với Tag 𝑚1 , nhấn mạnh kẻ công khơng biết tag 𝑚0 𝑚1 gì, kẻ cơng biết tạo tag giống với xác suất 0.5 Đây MAC an tồn dễ dàng bị phá vỡ, kẻ cơng chiến thắng với xác suất 0.5 Giả sử ta có Tag dài bits, MAC có an tồn khơng? Câu trả lời khơng, lúc kẻ cơng có tỉ lệ thành công 1/32, xác suất tương đối lớn Do độ dài tag nên 64, 96, 128, … để xác suất thử Tag giảm đến ngưỡng gọi an tồn 2.5 MAC Key LifeSpan Tính an toàn MAC phụ thuộc nhiều vào độ dài Tag, có tay tin Tag, độ dài Tag xác định xác suất tin bị giả mạo, nhiên với khóa bí mật sử dụng cho ngày nhiều tin, xác suất bị giả mạo thành công 15 Môn An ninh mạng thông tin II Tính an tồn MAC tăng lên Đối với MAC dựa mật mã khối, xác suất bị giả mạo 0.5 -> đạt đến giới hạn Birthday Paradox, nghĩa sau 264 khối, với AES, kẻ công có hội giả mạo tin Tuy nhiên điều đáng quan ngại, giả sử với 2−40 xác suất giả mạo, kẻ công phải đoán thẻ (hoặc nội dung khớp với thẻ cố định lần thử đầu tiên), vấn đề khóa nên sử dụng III CÁC CHUẨN MAC VÀ TÍNH AN TỒN 3.1 CMAC tính an tồn CMAC CMAC lấy từ dự thảo mã xác thực tin khóa (One - Key Message Authentication Code - OMAC) Nó dựa mã xác thực tin chế độ mã CBC ba khóa (Three-key Cipher Block Chaining MAC) MAC mã hóa nguyên thủy NIST CBC MAC Trong người gửi cần chọn khóa độc lập với khóa mã sử dụng mã theo chế độ CBC Người gửi bỏ qua mã giữa, quan tâm đến mã cuối thẻ MAC Khóa dùng cho CBC-MAC khơng trùng với khóa mã rõ, MAC an tồn M[0] K1 M[1] K1 Mã hóa M[2] K1 K1 Mã hóa M[3] Mã hóa K = (K + K 2) Mã hóa K2 Mã hóa Hình Sơ đồ CBC-MAC Tuy nhiên có nhược điểm khơng an tồn tin có độ dài khác nhau, đặc biệt cách tin bội số độ dài khối mật mã Bản sửa lỗi cho vấn đề XCBC, sử dụng ba khóa, cho mã hóa liệu, hai khối cịn lại XOR với khối tin nhắn cuối tùy thuộc vào việc có đủ độ dài hay khơng 16 Mơn An ninh mạng thông tin III Các chuẩn MAC tính an tồn Hình 10 Sơ đồ XCBC- MAC - Vấn đề XCBC lại việc tạo khóa độc lập, thực tế khiến hệ thống phức tạp Sau XCBC TMAC, sử dụng hai khóa, hoạt động tương tự XCBC, khóa thứ ba tạo biến đổi tuyến tính từ khóa đầu tiên, đánh đổi tính bảo mật bẳng tính linh hoạt, One-key MAC giảm xuống cịn khóa Tính an tồn CMAC: Để khiến hệ thống đơn giản, khóa mang tính phụ thuộc vào nhau, tiềm ẩn nguy kẻ cơng biết khóa, kẻ cơng biết thêm khóa nữa, chí tồn khóa khác Xác suất giả mạo tăng lên kẻ công chứng kiến lượng thẻ MAC định tạo Phân tích sau: 𝐴𝑑𝑣 𝑀𝐴𝐶 xác suất giả mạo thành công 𝐴𝑑𝑣 𝑃𝑅𝑃 xác suất phân biệt khối mật mã với hoán vị ngẫu nhiên 𝑡 đại diện cho thời gian kẻ công bỏ 𝑞 đại diện cho số thẻ MAC mà kẻ công thấy với số lượng m tin tương ứng 𝑛 đại diện cho kích thước mật mã khối tính bit 𝑚 đại điện cho số khối trung bình tin xác thực Với OMAC, lợi kẻ công bị giới hạn bởi: (𝑚 ∗ 𝑞 ) 𝐴𝑑𝑣 𝑂𝑀𝐴𝐶 < + 𝐴𝑑𝑣 𝑃𝑅𝑃 (𝑡 + 𝑂(𝑚 ∗ 𝑞), 𝑚 ∗ 𝑞 + 1) n−2 𝑛 𝑃𝑅𝑃 Giả sử ∗ 𝑞 ≪ , 𝐴𝑑𝑣 xấp xỉ 0, giả sử 𝑛 = 128 (AES) lúc ta cần đặt giới −96 hạn cho OMAC không , tức là: (𝑚𝑞)2 −96 > 126 Tương đương với: 𝑚 𝑞 > 215 Điều nghĩa xử lý khơng q 215 khối với khóa để giữ xác suất giả mạo 2−96 , thực tế, giới hạn q nghiêm ngặt có nghĩa xác thực cho 521 kbyte sau đổi khóa, khơng cần q nghiêm ngặt vậy, kẻ cơng thử lần trước công bị phát Giả sử xác suất chấp nhận 2−40 , tương đương với 𝑚 𝑞 < 243 , tương đương với xử lý 1024 terabyte trước phải đổi khóa, đánh giá an tồn 17 Mơn An ninh mạng thơng tin III Các chuẩn MAC tính an tồn 3.2 HMAC tính an tồn HMAC HMAC sử dụng Hash chiều biến thành thuật tốn MAC Thiết kế tổng thể ban đầu MAC gọi NMAC, biến kỳ hàm giả ngẫu nhiên (PRF) thành hàm MAC, hàm giả ngẫu nhiên Hash NMAC dựa khái niệm tạo prefix cho tin bằm khóa SMF sau đưa qua hàm Hash để tạo tag, ví dụ: 𝑇𝑎𝑔 = ℎ𝑎𝑠ℎ(𝑘𝑒𝑦 || 𝑚𝑒𝑠𝑠𝑎𝑔𝑒) Tuy nhiên cách làm khơng an tồn, kẻ cơng chèn thêm vầo tin cách sử dụng tag trạng thái ban đầu hàm Hash, vấn đề kẻ công biết tin nhắn, biết nội dung tin nhắn Hash để tạo Tag, cần phải che giấu tin nhắn đi, tức input hash tin mà là: 𝑇𝑎𝑔 = ℎ𝑎𝑠ℎ(𝑘𝑒𝑦 || 𝑃𝑅𝐹(𝑚𝑒𝑠𝑠𝑎𝑔𝑒)) Bây kẻ công cố gắng chèn thêm vào tin cách dùng tag làm trạng thái hash ban đầu, kết PRF khơng thể đốn được, trọng tâm PRF hàm Hash sử dụng khóa thứ 2: 𝑇𝑎𝑔 = ℎ𝑎𝑠ℎ(𝑘𝑒𝑦 || ℎ𝑎𝑠ℎ(𝑘𝑒𝑦2 || 𝑚𝑒𝑠𝑠𝑎𝑔𝑒)) NMAC lúc có hai khóa, khóa khóa ngồi, cho dù đơn giản hiệu cần hai khóa độc lập HMAC dựa NMAC ngoại trừ hai khóa có mối quan hệ tuyến tính, chứng minh việc sử dụng khóa an tồn, u cầu PRF phải an tồn khơng cần khả chống xung đột, cần khả chống phá mã vi sai HMAC ban đầu sử dụng cho SHA-1 chứng minh sử dụng với hàm băm khác SHA-256 SHA-512 HMAC lấy hai khóa từ khóa bí mật nhất, cách XOR với hai giá trị Đầu tiên khóa đảm bảo có kích thước kích thước khối né nó, ví dụ SHA-1 SHA-256 nén khối 64byte, cịn SHA-512 nén khối 128byte Khóa sau nhân đơi, nhân với giá trị 0x36, chuỗi gọi opad, khóa bên ngồi, cịn lại nhân với ipad - 0x5C, khóa HMAC thường áp dụng cho tin kích thước lớn Hash xử lý liệu với số vịng mã hóa, HMAC có khả tạo MAC Tag với độ dài theo yêu cầu Hình 11 Sơ đồ sử dụng HMAC Một ứng dụng bật HMAC cho IPSec (IP Secure) Ipsec framework với chuẩn mở để tạo mạng riêng ảo (VPN) bảo mật cao cách sử dụng giao thức công nghệ khác để liên lạc thông qua mạng không 18 Môn An ninh mạng thơng tin III Các chuẩn MAC tính an toàn an toàn Internet Đường hầm Ipsec cấp dịch vụ bảo mật liệt kê bảng sau: SecServ Description Methods Used Peer Kiểm tra danh tính VPN peer - Pre-Shared Key (PSK) Authentication thông qua xác thực - Digital certificates Data Bảo vệ liệu khỏi bị nghe trộm - Data encrytion Standard (DES) Confidentiality thơng qua thuật tốn mã hóa.- Triple DES (3DES) - Advanced Encrytion Standard (AES) Data Integrity Replay detection Ngăn chặn việc man-in-the-middle (MitM) công cách đảm bảo liệu không bị giả mạo truyền qua mạng khơng an tồn - Hash Message Authentication Code (HMAC) functions: Ngăn chặn MitM công kẻ công bắt lưu lượng VPN replay lại phía VPN peer với mục đích xây dựng VPN tunnel bất hợp pháp Mỗi packet đánh dấu với số sequence độc Thiết bị VPN đếm số khơng chấp nhận packet có sequence number qua xử lý Message Digest (MD5) Secure Hash Algorithm (SHA-1) Bảng Công nghệ IPSec 19 Môn An ninh mạng thông tin TỔNG KẾT Trước cơng nghệ máy tính chưa phát triển, nói đến vấn đề an tồn bảo mật thông tin (Information Security), thường hay nghĩ đến biện pháp nhằm đảm bỏa cho thông tin trao đổi hay cất giữ cách an toàn bí mật Cơng nghệ truyền thơng ngày phát triển khuyến nghị SP 800-90 với việc sử dụng thuật tốn băm mật mã hóa mạnh SHA-2, đạt độ tin cậy cao cách sử dụng MAC Ngồi cịn sử dụng HMAC để xây dựng PRNG dựa MAC Hiện việc bảo mật an tồn thơng tin xu hướng phát triển mạnh mẽ rộng rãi nên hàm MAC tiêu chuẩn hóa áp dụng nhiều giao thức ứng dụng tương lai 20 Môn An ninh mạng thông tin TÀI LIỆU THAM KHẢO Nguyễn, Chiến Trinh, Nguyễn, Tiến Ban, Hoàng, Trọng Minh, Nguyễn, Thanh Trà, Phạm, Anh Thư Bài giảng “An ninh mạng”, Hà Nội (2016) Jongsung Kim, Alex Biryukov, Bart Preneel, Seokhie Hong, “On the security of HMAC and NMAC based on HAVAL, MD4,MD5, SH-0 and SHA-1”, SCN 2006 (Moti Yung ed.), LNCS, Springer-Verlag (2006) Mihir Bellare ,“New Proofs for NMAC and HMAC: Security without CollisionResistance”, Advances in Cryptology – CRYPTO ’06, Lecture Notes in Computer Science Vol 4117, C Dwork ed., Springer-Verlag, 2006 (April 2014) Arup Nanda, Steven Feuerstein, “Oracle PL/SQL for DBAs”, O’Reilly Media, Inc., 9780596005870, (October 2005) “Cryptography for Developers” Tom St Denis, Syngress, 9780080503455, December 2006 “Cryptography I”, Dan Boneh, Stanford University, Coursera 21 ... 2.4 An toàn trước Chosen Message Attack 14 2.5 MAC Key LifeSpan 15 III CÁC CHUẨN MAC VÀ TÍNH AN TỒN 16 3.1 CMAC tính an tồn CMAC 16 3.2 HMAC tính an toàn HMAC... đánh giá an tồn 17 Mơn An ninh mạng thông tin III Các chuẩn MAC tính an tồn 3.2 HMAC tính an tồn HMAC HMAC sử dụng Hash chiều biến thành thuật toán MAC Thiết kế tổng thể ban đầu MAC gọi NMAC, biến... Tổng quan MAC Người thực -MAC ? -Mục tiêu MAC? -Nguyên tắc bảo mật? - Định dạng văn chỉnh sửa word Các mơ hình dùng MAC mã hóa Ứng dụng MAC yêu cầu cho MAC Tính an tồn MAC Các chuẩn MAC tính an tồn

Ngày đăng: 26/02/2023, 18:04

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w