Nghiên cứu phát triển giao thức trao đổi khóa an toàn
Bạn đang xem 30 trang mẫu của tài liệu "Nghiên cứu phát triển giao thức trao đổi khóa an toàn", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
ToanVan LuanAn NCS DoVietBinh.pdf
ThongTin KetLuanMoi LuanAn NCS DoVietBinh.doc
TomTat LuanAn NCS DoVietBinh_English.pdf
TomTat LuanAn NCS DoVietBinh_TiengViet.pdf
TrichYeu LuanAn NCS DoVietBinh.doc
Nội dung tài liệu: Nghiên cứu phát triển giao thức trao đổi khóa an toàn
- BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ ĐỖ VIỆT BÌNH NGHIÊN CỨU PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA AN TOÀN Chuyên ngành: Cơ sở toán học cho tin học Mã số : 9 46 01 10 TÓM TẮT LUẬN ÁN TIẾN SĨ TOÁN HỌC HÀ NỘI - 2018
- Công trình được hoàn thành tại: VIỆN KHOA HỌC VÀ CÔNG NGHỆ QUÂN SỰ BỘ QUỐC PHÒNG Người hướng dẫn khoa học: 1. PGS. TS Nguyễn Hiếu Minh 2. TS Nguyễn Mạnh Linh Phản biện 1: GS. TS Nguyễn Bình Học viện Công nghệ Bưu chính Viễn thông Phản biện 2: PGS. TS Nguyễn Linh Giang Đại học Bách khoa Hà Nội Phản biện 3: PGS. TS Đỗ Trung Tuấn Đại học Khoa học tự nhiên, Đại học Quốc gia Hà Nội Luận án được bảo vệ trước Hội đồng chấm luận án cấp Viện, họp tại Viện Khoa học và Công nghệ quân sự vào hồi , ngày tháng năm 2018. Có thể tìm hiểu luận án tại thư viện: - Thư viện Viện Khoa học và Công nghệ quân sự. - Thư viện Quốc gia Việt Nam.
- 1 MỞ ĐẦU Tính cấp thiết của đề tài nghiên cứu Khi nhu cầu trao đổi thông tin dữ liệu ngày càng lớn và đa dạng thì các biện pháp bảo vệ thông tin dữ liệu cũng ngày càng trở nên quan trọng. Các biện pháp bảo vệ an toàn thông tin dữ liệu bao gồm: biện pháp hành chính, biện pháp kỹ thuật, biện pháp thuật toán. Trong đó, biện pháp hiệu quả nhất và kinh tế nhất là biện pháp thuật toán. Có hai loại hành vi xâm phạm thông tin dữ liệu là tấn công chủ động và tấn công thụ động. Trên thực tế, không có một biện pháp bảo vệ an toàn thông tin dữ liệu nào là an toàn tuyệt đối. Mật mã học là ngành khoa học ứng dụng toán học vào việc biến đổi thông tin thành một dạng khác. Ngày nay, các ứng dụng mã hóa và bảo mật thông tin đang được sử dụng ngày càng phổ biến hơn trong các lĩnh vực khác nhau trên thế giới. Có hai loại mật mã: hệ mật khóa đối xứng hoặc hệ mật khóa công khai. Trong hệ mật khóa đối xứng, mã hóa và giải mã đều sử dụng chung một khóa bí mật. Trong hệ mật khóa công khai, bên gửi sử dụng khóa công khai của bên nhận để mã hóa, bên nhận sử dụng khóa bí mật của mình giải mã để thu được văn bản gốc. Vấn đề bảo vệ an toàn khóa trở nên đặc biệt quan trọng. Trong đó khâu quan trọng nhất nhưng cũng là khâu kém an toàn nhất chính là trao đổi khóa. Do đó việc xây dựng giao thức trao đổi khóa an toàn có tính cấp thiết trong điều kiện hiện nay. Mục đích nghiên cứu - Nghiên cứu tổng quan các cơ sở lý thuyết về các giao thức trao đổi khóa, về chữ ký số và cơ sơ toán học của các bài toán khó giải để xây dựng lược đồ chữ ký số dựa trên hai bài toán khó nhằm phát triển
- 2 các giao thức trao đổi khóa an toàn có xác thực sử dụng lược đồ chữ ký số dựa trên hai bài toán khó giải. Đồng thời nghiên cứu các vấn đề liên quan đến trao đổi khóa nhóm, đề xuất giao thức trao đổi khóa nhóm mới. Đối tượng nghiên cứu Đối tượng nghiên cứu là bài toán trao đổi khóa Diffie-Hellman, Giao thức trao đổi khóa theo cặp, theo nhóm. Các giao thức trao đổi khóa an toàn kết hợp với các khái niệm cơ sở toán học và nghiên cứu các lược đồ chữ ký số RSA, Rabin, Schnorr, Phương pháp nghiên cứu - Nghiên cứu lý thuyết: Phân tích, tổng hợp các kết quả nghiên cứu liên quan đến các giao thức thỏa thuận khóa, giao thức thiết lập khóa, giao thức chuyển khóa. Từ đó đề xuất một số giao thức trao đổi khóa an toàn mới có tính ứng dụng cao. Chứng minh tính đúng đắn, đánh giá độ an toàn và thời gian hoàn thành giao thức trao đổi khóa (theo lý thuyết) của các giao thức đề xuất. - Thực nghiệm: Xây dựng các module thử nghiệm kiểm tra tính đúng đắn của các giao thức đã đề xuất. Bố cục của luận án Luận án được chia thành 4 chương, bố cục như sau: Chương 1. TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU Trình bày tổng quan bài toán trao đổi khóa; giao thức thỏa thuận, thiết lập khóa. Trình bày một số khái niệm, tiêu chuẩn an toàn của một giao thức trao đổi khóa. Giới thiệu giao thức trao đổi khóa Diffie- Hellman; phân tích giao thức trao đổi khóa an toàn, ưu nhược điểm của một số giao thức trao đổi khóa an toàn đã công bố. Trình bày các khái niệm về trao đổi khóa nhóm, các đặc điểm và yêu cầu đối với một
- 3 giao thức trao đổi khóa nhóm. Trình bày các vấn đề cơ sở toán học của các bài toán khó giải, tổng quan về chữ ký số, các phương pháp tấn công và một số lược đồ chữ ký số RSA, DSA, Rabin, Schnorr. Chương 2. PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA CÓ XÁC THỰC DỰA TRÊN HAI BÀI TOÁN KHÓ Chương 2, tập trung nghiên cứu và phân tích ưu nhược điểm của các lược đồ chữ ký số dựa trên hai bài toán khó trước đây, từ đó làm cơ sở đề xuất lược đồ chữ ký số mới dựa trên hai bài toán khó, giải quyết các vấn đề còn tồn tại. Phân tích khả năng bảo mật và hiệu quả của lược đồ mới đề xuất. Trên cơ sở đó, phát triển giao thức trao đổi khóa an toàn có xác thực tích hợp chữ ký số dựa trên hai bài toán khó. Phân tích đánh giá tính bảo mật và hiệu năng của thuật toán. Chương 3. PHÁT TRIỂN GIAO THỨC KÝ VÀ MÃ HÓA ĐỒNG THỜI DỰA TRÊN HAI BÀI TOÁN KHÓ Chương 3, phân tích mô hình ký rồi mã hóa truyền thống, chỉ ra ưu điểm của mô hình ký và mã hóa đồng thời so với mô hình truyền thống. Phân tích một số giao thức ký và mã hóa đồng thời đã công bố, chỉ ra các hạn chế còn tồn tại. Dựa trên cơ sở lược đồ chữ ký số mới ở chương 2, đề xuất giao thức ký và mã hóa đồng thời dựa trên hai bài toán khó (DH–MM–SC) và giao thức ký và mã hóa đồng thời có thể chối từ dựa trên hai bài toán khó (DH–MM–DSC) nhằm nâng cao tính bảo mật và cung cấp khả năng chống tấn công cưỡng bức chủ động. Chương 4. PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA NHÓM Chương 4, nghiên cứu các vấn đề liên quan đến trao đổi khóa nhóm, qua phân tích các giao thức GDH nguyên thủy và IKA.1 và IKA.2, phân tích các điểm yếu của các giao thức trên và đề xuất xây dựng giao thức cải tiến trong trường hợp trao đổi khóa nhóm NGDH1.
- 4 Ý nghĩa khoa học và thực tiễn của luận án Đóng góp của luận án chính là việc xây dựng các giao thức trao đổi khóa an toàn tích hợp chữ ký số dựa trên kết hợp các bài toán khó giải để tăng tính an toàn cho giao thức trao đổi khóa đó. Đồng thời xem xét các vấn đề liên quan đến trao đổi khóa trong nhóm, đề xuất giao thức trao đổi khóa theo nhóm nhằm tránh lộ cặp khóa, dễ dàng thay đổi khóa và giảm số lượng tính toán. Chương I. TỔNG QUAN VỀ VẤN ĐỀ NGHIÊN CỨU 1.1. Tổng quan về bài toán trao đổi khóa Giao thức trao đổi khóa đầu tiên được đưa ra bởi Diffie và Hellman vào năm 1976, nó được gọi là giao thức Diffie–Hellman nguyên thủy. Giao thức Diffie–Hellman được xây dựng dựa trên bài toán logarithm rời rạc, nhằm thiết lập một giá trị khóa dùng chung bí mật cho hai bên tham gia truyền thông. Sau giao thức Diffie–Hellman, nhiều giao thức trao đổi khóa dựa trên các vấn đề toán học khác nhau lần lượt được đề xuất. Có thể kể đến các giao thức MQV và phát triển của giao thức Diffie–Hellman trên đường cong elliptic. Giao thức trao đổi khóa (key exchange protocol) là quá trình thực hiện mà nhờ đó các bên cùng nhau thiết lập khóa bí mật dùng chung trong quá trình truyền thông trên một kênh công cộng. Một giao thức trao đổi khóa an toàn cần có một số các tính chất sau: độ an toàn khóa đã biết; tính an toàn đầy đủ về phía trước; khả năng có thể chối từ hợp lý; xác thực và xác nhận khóa hai chiều; Giao thức trao đổi khóa an toàn Giao thức trao đổi khóa Diffie–Hellman không đảm bảo xác thực giữa hai bên tham gia giao thức. Từ thực tế này, đã có nhiều giao thức
- 5 được đề xuất. Tiêu biểu là các nghiên cứu của Arazi (1993), Nyberg và Rueppel (1994), L. Harn (1995), Phan (2005), Liu và Li (2010). Tuy nhiên các giao thức này vẫn còn tồn tại một số nhược điểm và chỉ dựa trên một bài toán khó. Giao thức trao đổi khóa nhóm Sự phát triển đa dạng của các nhóm truyền thông đã thúc đẩy sự phát triển phổ biến của những ứng dụng định hướng nhóm và các giao thức. Vì vậy cần thiết phải cung cấp bảo mật và toàn vẹn thông tin liên lạc trong môi trường nhóm. Giao thức trao đổi khóa nhóm có một số đặc điểm sau: - Hiệu quả giao thức được quan tâm nhiều hơn; - Phải có biện pháp xử lý việc thay đổi thành viên trong nhóm để đạt được hiệu quả cao nhất; - Cần có cách thức để nhanh chóng thay đổi khóa trong trường hợp bị lộ khóa nhưng cũng phải tính đến tính hiệu quả của thuật toán. Thỏa thuận khóa nhóm gồm hai phân đoạn: Khởi tạo khóa (IKA) và các hoạt động bổ trợ trao đổi khóa (AKA). 1.2. Tổng quan về lược đồ chữ ký số Chữ ký số là một lược đồ toán học sử dụng để kiểm tra tính xác thực và toàn vẹn của một bản tin, phần mềm hay một văn bản số. Thuật ngữ chữ ký số lần đầu tiên được sử dụng bởi Diffie và Hellman (1976). Năm 1978, chữ ký số RSA được đề xuất. Sau đó, nhiều lược đồ chữ ký số khác đã được đề xuất nhằm nâng cao tính bảo mật, như chữ ký số Rabin, Schnorr, Tất cả các lược đồ chữ ký số đều được phát triển dựa trên các bài toán khó giải như bài toán logarithm rời rạc (DLP), bài toán phân tích thừa số nguyên tố (IFP), bài toán logarithm rời rạc trên đường cong elliptic (ECDLP),
- 6 Cơ sở toán học Bài toán logarithm rời rạc Phát biểu bài toán: Cho một số nguyên tố , gọi ∈ 푍 là phần ∗ tử sinh (generator) và 훽 ∈ 푍 . Ta cần xác định một số nguyên dương ∗ ∈ 푍 sao cho: ≡ 훽 표 ( ). Để có mức độ an toàn cao, các số modulo được sử dụng trong các hệ mật logarithm rời rạc phải có độ dài 1024 bit hoặc lớn hơn. Bài toán phân tích thừa số nguyên tố Phát biểu bài toán: Phân tích một số thành thừa số nguyên tố là biểu diễn số đó dưới dạng tích của các số nguyên tố. Thực tế với số nguyên 푛 đủ lớn thì việc phân tích 푛 thành thừa số nguyên tố là vô cùng khó khăn. Để đảm bảo mức độ bảo mật, các modulo phải có chiều dài 1024 bit hoặc lớn hơn. Lược đồ chữ ký số Một lược đồ chữ ký số là một bộ các thuật toán (품풆풏, 풔풊품, 풗풆풓). Thuật toán 품풆풏 tạo ra một khóa bí mật 푠 và một khóa công khai 푠 tương ứng của người ký S với đầu vào là các tham số hệ thống. Thuật toán 풔풊품 lấy các tham số đầu vào là 푠 và thông điệp và sinh ra một chữ ký 휎 của . Với đầu vào là thông điệp , chữ ký số 휎 và khóa công khai 푠, thuật toán 풗풆풓 sẽ cho ra kết quả 푒 hoặc 퐹 푙푠푒 tương đương với chữ ký hợp lệ hoặc không hợp lệ. Có hai dạng tấn công chữ ký số: - Tấn công vào khóa – Key-Only Attacks (KOA). - Tấn công vào văn bản – Message Attacks (MA). Nhiều lược đồ chữ ký số dựa trên các bài toán khó khác nhau đã được phát triển, trong đó có thể kể đến lược đồ RSA (1978), Schnorr
- 7 (1989) và DSA (1991) dựa trên bài toán logarithm rời rạc, lược đồ Rabin (1979) sử dụng bài toán phân tích thừa số nguyên tố. 1.3. Kết luận chương 1 Chương 1, trình bày tổng quan về bài toán trao đổi khóa, giới thiệu chi tiết giao thức trao đổi khóa an toàn, chỉ ra ưu nhược điểm của các nghiên cứu trước đây. Trình bày giao thức trao đổi khóa nhóm và các đặc điểm của giao thức trao đổi khóa nhóm. Chương này cũng trình bày cơ sở toán học của các bài toán khó giải và lược đồ chữ ký số; giới thiệu một số lược đồ chữ ký số như RSA, DSA, Rabin, Schnorr. Chương II. PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA CÓ XÁC THỰC DỰA TRÊN HAI BÀI TOÁN KHÓ 2.1. Phát triển lược đồ chữ ký số dựa trên hai bài toán khó Các lược đồ chữ ký số trước đây này chỉ dựa trên một bài toán khó, do đó chỉ đảm bảo tính bảo mật ngắn hạn. Giả thiết rằng trong tương lai, khi các bài toán khó lần lượt bị phá giải, các lược đồ này sẽ không còn an toàn nữa. Do vậy, để tăng cường tính bảo mật, cần phải phát triển các lược đồ dựa trên nhiều bài toán khó. Định nghĩa 1: Một lược đồ chữ ký số được gọi là an toàn trên cơ sở hai bài toán khó HP1 và HP2 nếu việc giả mạo chữ ký trong lược đồ này cần phải giải đồng thời hai bài toán nói trên. Năm 1994, L. Harn đề xuất lược đồ chữ ký số dựa trên hai bài toán khó (IFP và DLP). Tuy nhiên, năm 1996, N. Y. Lee và T. Hwang chỉ ra trong lược đồ của Harn, chỉ cần giải quyết bài toán logarithm rời rạc là có thể phá giải lược đồ này. Năm 2008, Ismail, Tahat và Amad đề xuất lược đồ chữ ký số mới dựa trên hai bài toán khó (IFP và DLP). Năm 2009, Dernova đề xuất lược đồ chữ ký số dựa trên hai bài toán
- 8 khó là phân tích thừa số nguyên tố và logarithm rời rạc. Tuy nhiên, để phá lược đồ chữ ký số này, ta chỉ cần giải bài toán logarithm rời rạc modulo một số nguyên tố. Năm 2012, S. Vishnoi và V. Shrivastava đề xuất lược đồ chữ ký số mới dựa trên hai bài toán khó (IFP và DLP). Tuy nhiên, đến năm 2013, Shin-Yan Chiou, Yi-Xuan He đã chứng minh rằng với lược đồ của S. Vishnoi và V. Shrivastava, kẻ tấn công không cần phải giải bất cứ một bài toán khó nào cũng có thể giả mạo chữ ký. Trong luận án này, nghiên cứu sinh sẽ giới thiệu hai lược đồ chữ ký số mà để phá giải nó thì cần giải quyết đồng thời cả hai bài toán logarithm rời rạc và phân tích thừa số nguyên tố. Lược đồ thứ nhất (Rabin và Schnorr) Tạo khóa - Chọn hai số nguyên tố lớn 푞 và 푞’ - Tính 푛 = 푞푞’ và = 2푛 + 1 ∗ ∗ - Chọn ∈ 푍 thỏa mãn là phần tử có cấp bằng 푛 trong 푍 . ∗ - Chọn số bí mật ∈ 푍 và tính = 표 - Khóa bí mật là ( , 푞, 푞’), khóa công khai là ( , , ) Tạo chữ ký - Chọn hàm băm - Chọn số ngẫu nhiên bí mật với 1 < < 푛 - Tính 푅 = 표 và = ( ||푅) - Tìm 푆 thỏa mãn: 푆2 = ( − ) 표 푛 - Chữ ký là ( , 푆) Xác thực chữ ký ∗ - Tính 푆∗ = 푆2 표 푛 và 푅∗ = 푆 표 - Tính ∗ = ( ||푅∗). Nếu = ∗ chữ ký hợp lệ.
- 9 Lược đồ thứ hai (RSA và Schnorr) Tạo khóa - Chọn hai số nguyên tố lớn 푞 và 푞’ - Tính 푛 = 푞푞’ và = 2푛 + 1 - Tính (푛) = (푞 − 1)(푞′ − 1) ∗ ∗ - Chọn ∈ 푍 thỏa mãn là phần tử có cấp bằng 푛 trong 푍 . ∗ - Chọn số bí mật ∈ 푍 - Tính = 표 - Chọn số nguyên 푒 ∈ 푍푛 thỏa mãn: (푒, (푛)) = 1 - Tính sao cho: 푒 ∗ = 1 표 (푛) - Khóa công khai là (푒, , ), khóa bí mật là ( , ) Tạo chữ ký - Chọn hàm băm - Chọn số ngẫu nhiên bí mật với 1 < < 푛 - Tính 푅 = 표 và = ( ||푅) - Tìm 푆 sao cho: 푆푒 = ( − ) 표 푛 ⟺ 푆 = ( − ) 표 푛 Xác thực chữ ký - Tính 푆∗ = 푆푒 표 푛 ∗ - Tính 푅∗ = 푆 표 - Tính ∗ = ( ||푅∗). Nếu = ∗ chữ ký hợp lệ. Đánh giá Khả năng bảo mật của hai lược đồ chữ ký số trên chỉ có thể bị phá giải khi kẻ tấn công giải quyết được đồng thời hai bài toán khó phân tích thừa số nguyên tố và logarithm rời rạc.
- 10 Lược đồ thứ nhất: Để phá giải lược đồ này, phải giải quyết đồng thời hai bài toán khó IFP và DLP. Tuy nhiên việc tìm 푆 có thể dẫn đến một số nguy cơ mất an toàn. Lược đồ thứ hai: Tương tự như lược đồ thứ nhất, để phá giải lược đồ này, cần phải giải quyết đồng thời hai bài toán khó. Việc sử dụng 푆푒 đảm bảo luôn luôn tạo được chữ ký. Độ phức tạp thời gian của giao thức: Độ phức tạp thời gian của hai lược đồ được tính toán dựa trên độ phức tạp của những thủ tục sau: sinh khóa, sinh chữ ký và xác thực. Ta ký hiệu như sau: + là thời gian sinh số nguyên tố ngẫu nhiên. + 푃 là độ phức tạp thời gian của phép mũ modulo. + 푈퐿 là độ phức tạp thời gian của phép nhân modulo. + là độ phức tạp thời gian của việc thực hiện hàm băm. + là độ phức tạp thời gian của phép tính nghịch đảo modulo. + 푅 là độ phức tạp thời gian của phép tính đồng dư Trung Hoa. Độ phức tạp thời gian của hai lược đồ được trình bày trong Bảng 2.1. Bảng 2.1. Độ phức tạp thời gian của hai lược đồ chữ ký số Độ phức tạp thời gian Độ phức tạp thời gian (lược đồ thứ nhất) (lược đồ thứ hai) Sinh khóa 푻푬푿푷 푻푬푿푷 + 푻푰푵푽 Sinh chữ 푻푬푿푷 + 푻푴푼푳 푻푬푿푷 + 푻푴푼푳 + 푻푯 ký +푻푪푹푻 + 푻푯 Xác thực 푻푬푿푷 + 푻푴푼푳 + 푻푯 푻푬푿푷 + 푻푴푼푳 + 푻푯 chữ ký
- 11 2.2. Phát triển giao thức trao đổi khóa có xác thực dựa trên hai bài toán khó Định nghĩa 2: Một giao thức trao đổi khóa được gọi là an toàn dựa trên hai bài toán khó HP1 và HP2 nếu việc tìm được khóa thỏa thuận theo giao thức và việc giả mạo để thực hiện này với người trong hệ thống đều cần phải giải đồng thời hai bài toán nói trên. Một số phát triển giao thức trao đổi khóa an toàn Năm 1993, Arazi là người đầu tiên phát triển giao thức trao đổi khóa theo hướng tích hợp giao thức DHKE với lược đồ chữ ký số DSA. Năm 1994, Nyberg và Rueppel chỉ ra rằng giao thức của Arazi không có thuộc tính về sự an toàn dựa trên khóa đã biết. Năm 1995, L. Harn và các cộng sự đề xuất sửa đổi giao thức trao đổi khóa của Arazi. Theo đó, thay vì phân phối một khóa công khai đơn lẻ trong mỗi phiên giao tiếp, nhóm L. Harn đề xuất phân phối nhiều khóa công khai trong mỗi phiên. Giao thức này cung cấp thêm tính chất an toàn: chống lại tấn công dựa trên khóa đã biết. Năm 2005, Phan đã chỉ ra rằng giao thức của Harn không thể cung cấp hai tính chất về chuẩn bảo mật mà các giao thức cần có là an toàn về phía trước (forward secrecy) và làm mới khóa (key freshness); đưa ra cải tiến của mình trên giao thức của Harn để giao thức có thể cung cấp hai tính chất nói trên. Tuy nhiên trong giao thức trao đổi khóa Phan tồn tại một mối quan hệ hiện giữa hai khóa phiên được đàm phán giữa hai bên. Năm 2010, hai tác giả Liu. J và Li. J đã đề xuất một cải tiến tốt hơn, an toàn hơn bằng cách khắc phục nhược điểm mối quan hệ hiện trong giao thức trao đổi khóa Phan. Tuy nhiên, giao thức của Liu. J và Li. J không có khả năng chống lại tấn công lộ khóa phiên.
- 12 Có thể thấy, các giao thức của các tác giả này chỉ dựa trên một bài toán khó. Do vậy tác giả đề xuất giao thức trao đổi khóa an toàn mới có tích hợp chữ ký số dựa trên hai bài toán khó. Mô tả giao thức: Các tham số miền ( , , 푛 , 푛 ) được định nghĩa như lược đồ chữ ký số thứ hai. ′ ′ Với người gửi A: = 2푛 + 1, trong đó 푛 = 푞 푞 , 푞 và 푞 là các số nguyên tố lớn với kích thước ít nhất là 1024 bit. Các tham số khóa của người A, khóa công khai (푒 , ) và khóa bí mật ( , ). ′ ′ Với người nhận B: = 2푛 + 1, trong đó 푛 = 푞 푞 , 푞 và 푞 là các số nguyên tố lớn với kích thước ít nhất là 1024 bit. Các tham số khóa của người B, khóa công khai (푒 , ) và khóa bí mật ( , ). Ký hiệu { } = {0, 1, , − 1} và { } = {0, 1, , − 1}. Tính toán tập giao ∩ của hai tập và để tạo ra tập = ∗ ∩ . Tìm là phần tử có cấp bằng 푛 trong 푍 . Giao thức DH–MM–KE hoạt động như sau (Hình 2.1): Hình 2.1. Giao thức DH–MM–KE
- 13 Đánh giá giao thức: Giao thức DH-MM-KE đảm bảo các tính chất an toàn sau: Tính chất an toàn đầy đủ về phía trước; tính chất khóa độc lập; chống tấn công SSR; chống tấn công giả mạo khóa thỏa thuận; chống tấn công không biết khóa chia sẻ; an toàn dựa trên hai bài toán khó. Độ phức tạp thời gian của giao thức: Độ phức tạp thời gian của giao thức DH–MM–KE được trình bày trong Bảng 2.2. Bảng 2.2. Độ phức tạp thời gian của giao thức DH–MM–KE Giai đoạn Độ phức tạp thời gian 1 2 푃 2 푻푬푿푷 + 푻푴푼푳 + 푻푯 3 7 푃 + 3 푈퐿 + 2 4 3 푃 + 푈퐿 + Tổng 18 푃 + 6 푈퐿 + 4 2.3. Kết luận chương 2 Chương 2 tiếp tục nghiên cứu ưu nhược điểm của các lược đồ chữ ký số dựa trên hai bài toán khó trước đây. Từ đó, đề xuất hai lược đồ chữ ký số mới nhằm khắc phục nhược điểm này. Đồng thời, dựa trên cơ sở lược đồ chữ ký số mới đề xuất, tác giả đã xây dựng giao thức trao đổi khóa mới, tích hợp chữ ký số và dựa trên hai bài toán khó, nhằm nâng cao tính bảo mật của giao thức.
- 14 Chương III. PHÁT TRIỂN GIAO THỨC KÝ VÀ MÃ HÓA ĐỒNG THỜI DỰA TRÊN HAI BÀI TOÁN KHÓ 3.1. Giao thức ký và mã hóaồ đ ng thời Tính bảo mật của thông điệp và khả năng xác thực là những vấn đề quan trọng trong truyền thông trên Internet. Trước đây, phương pháp truyền thống là ký lên thông điệp rồi mã hóa nó và gửi tới cho người nhận. Người nhận sẽ giải mã thông điệp rồi xác thực nó. Đây là phương pháp ký rồi mã hóa (sign-then-encryption). Nhược điểm của phương pháp này là việc tạo chữ ký và mã hóa làm tăng độ phức tạp của giao thức, và làm tăng kích thước của thông điệp ban đầu. Từ đó, nhiều phương pháp được đưa ra để kết hợp các bước này vào một phép tính duy nhất. Phương pháp này gọi là ký và mã hóa đồng thời (signcryption). Định nghĩa 3: Giao thức ký và mã hóa đồng thời là một giao thức bao gồm ba thủ tục ( 푒푛, 푠 , 푠 ) tương ứng với ba thuật toán: Tạo khóa, ký và mã hóa, giải mã và xác thực. Thuật toán 푒푛 tạo ra một cặp khóa cho người A: (푆 퐾 , 퐾 ) ← 푒푛( , ), trong đó, là tham số bí mật của A, 푆 퐾 là khóa ký và giải mã, 퐾 là khóa xác thực và mã hóa của A. Với một thông điệp , bản ký mã hóa 휎 được tính như sau: 휎 ← 푠 ( , 푆 퐾 , 퐾 ), trong đó A là người gửi và B là người nhận. Để xác thực và giải mã, người nhận B sử dụng thuật toán 푠 (휎, 푆 퐾 , 퐾 ). Kết quả thu được là bản rõ thông điệp và kết quả xác thực người A (푡 푒 hoặc 푙푠푒 tương ứng với hợp lệ hay không hợp lệ). Một lược đồ ký và mã hóa đồng thời đảm bảo các tính chất sau: Tính chính xác; nâng cao hiệu quả tính toán; đảm bảo tính bảo mật, toàn vẹn, không thể chỉnh sửa và chống chối từ.
- 15 Rất nhiều các giao thức ký và mã hóa đồng thời đã được đề xuất, một số sử dụng bài toán lũy thừa modulo, một số khác lại dựa trên đường cong elliptic. Năm 1997, Y. Zheng đề xuất giao thức ký và mã hóa đồng thời đầu tiên. Sau đó, các giao thức của Jung (2001), Bao và Deng (1998), Zheng và Imai (1998), Hwang (2005), R. K. Mohapatra (2010) được đề xuất nhằm giảm khối lượng tính toán cũng như nâng cao khả năng bảo mật. Tuy nhiên, tất cả các giao thức này đều chỉ dựa trên một bài toán khó và không có khả năng chống tấn công cưỡng bức chủ động. 3.2. Phát triển giao thức ký và mã hóa đồng thời DH–MM–SC Giao thức DH–MM–SC hoạt động như sau (Hình 3.1): Hình 3.1. Giao thức DH–MM–SC Giao thức DH–MM–SC thỏa mãn các tính chất an toàn sau: - An toàn, không thể chỉnh sửa, toàn vẹn và chống chối từ;
- 16 - Tính chất an toàn về phía trước của tin nhắn; - Khả năng xác thực công khai. 3.3. Phát triển giao thức ký và mã hóa đồng thời có thể chối từ DH–MM–DSC Trong trường hợp tấn công cưỡng bức chủ động, mật mã truyền thống không đáp ứng được nhu cầu bảo mật thông tin. Mã hóa có thể chối từ ra đời để giải quyết vấn đề này. Khi sử dụng mã hóa có thể chối từ, người bị tấn công có thể cung cấp một khóa giả có thể sử dụng để giải mã bản mã thành một bản rõ có nghĩa thay thế. Mã hóa có thể chối từ có thể được phân loại theo phía bị tấn công, hoặc hệ mật sử dụng. - Phân loại theo hệ mật sử dụng, có thể phân thành hai loại: Mã hóa chối từ khóa bí mật và mã hóa chối từ khóa công khai. - Phân loại theo phía bị tấn công, có thể chia thành ba loại: Chối từ phía người gửi, chối từ phía người nhận và chối từ cả hai phía. Nhiều mô hình mã hóa chối từ đã được đề xuất, như mô hình của R. Canetti (1997), Anderson (1998), Klonowski (2008), Gasti (2010), Chongzhi-Gao (2012). Nhược điểm của các mô hình mã hóa chối từ này là không cung cấp khả năng xác thực người gửi. Để khắc phục điều này, Luận án đề xuất giao thức ký và mã hóa đồng thời có thể chối từ (DH–MM–DSC), là sự kết hợp giao thức ký và mã hóa đồng thời với mã hóa chối từ sử dụng khóa công khai, nhằm đảm bảo tính bí mật, khả năng xác thực và chống tấn công cưỡng bức chủ động. Giao thức DH–MM–DSC hoạt động như sau (Hình 3.2):
- 17 Hình 3.2. Giao thức DH–MM–DSC Giao thức DH–MM–DSC thỏa mãn các tính chất an toàn sau: - Chống tấn công cưỡng bức thụ động; - Chống tấn công cưỡng bức chủ động. 3.4. Độ phức tạp thời gian Độ phức tạp thời gian của hai giao thức DH–MM–SC và DH– MM–DSC được trình bày trong Bảng 3.1.
- 18 Bảng 3.1. Độ phức tạp thời gian của giao thức DH–MM–SC và DH–MM–DSC Giao thức Độ phức tạp thời gian DH–MM–SC 17 푃 + 7 푈퐿 + 4 + 2 DH–MM–DSC 25 푃 + 12 푈퐿 + 4 + 3 3.5. Kết luận chương 3 Trong chương 3, dựa trên đề xuất giao thức trao đổi khóa có xác thực an toàn (DH–MM–KE) ở chương 2, tác giả tiếp tục mở rộng giao thức này cho mô hình ký và mã hóa đồng thời tạo thành giao thức trao đổi khóa sử dụng ký và mã hóa đồng thời (DH–MM–SC) dựa trên hai bài toán khó. Từ đó phát triển giao thức ký và mã hóa đồng thời có thể chối từ (DH–MM–DSC). Chương này cũng chứng minh tính đúng đắn, độ an toàn và hiệu quả tính toán của giao thức. Chương IV. PHÁT TRIỂN GIAO THỨC TRAO ĐỔI KHÓA NHÓM 4.1. Đặt vấn đề Trong việc phát triển các giao thức trao đổi khóa nhóm, có rất nhiều các mục tiêu mà các nhà phát triển phải đặt ra để khắc phục các hạn chế như: Giảm số lần giao dịch, giảm độ phức tạp tính toán, tránh để lộ khóa cặp và đảm bảo các thay đổi trạng thái trong nhóm động. Năm 1996, M. Steiner đề xuất bộ giao thức quản lý khóa trong nhóm động CLIQUES, bao gồm hai giao thức khởi tạo khóa nhóm phát triển từ giao thức DH, là IKA.1 và IKA.2 (còn được biết đến với tên GDH2 và GDH3) cùng với các giao thức bổ trợ hoạt động trong nhóm (thêm, bớt thành viên; tách, gộp nhóm). Năm 2011, Om Pal và
- 19 các cộng sự đề xuất giao thức trao đổi khóa nhóm dựa trên giao thức IKA.2, sử dụng mô hình bên thứ ba tin cậy. Bộ giao thức CLIQUES Đây là bộ giao thức quản lý khóa trong nhóm động được Steiner đề xuất năm 1998. Bộ giao thức này có các đặc điểm sau: - Sử dụng giao thức trao đổi khóa Diffie–Hellman do tính đơn giản, an toàn của giao thức này. Đặc biệt giao thức DH đảm bảo tính công bằng trong việc trao đổi các thành phần cấu tạo khóa giữa các thành viên tham gia; - Sử dụng mô hình đóng góp một phần: Một số hoạt động sẽ cần sự tham gia của các thành viên, một số hoạt động khác được thực hiện bởi một thực thể và phân phối kết quả tới các thành viên khác; - Sử dụng bộ điều khiển nhóm (group controller) nhằm hỗ trợ hiệu quả cho các hoạt động AKA và quản lý các thành viên trong nhóm. 4.1.1. Giao thức IKA.1 Giao thức IKA.1 hoạt động như sau: ∏ ( ∈{1,2, ,푖}\{푗})|푗 ∈{1,2, ,푖}, ∏ ( ∈{1,2, ,푖}) 푖 푖+1 Bước 1 (Nâng lũy thừa) 푖 ∈ {1,2, , 푛 − 1} ∏ ( ∈{1,2, ,푖}\{푗})|푗 ∈{1,2, ,푖} ∗ Bước 2 (Gửi quảng bá) 푛 Hình 4.1. Sơ đồ giao thức IKA.1 Có thể thấy, số phép tính và số giao dịch của thuật toán đều có độ phức tạp lũy thừa bậc hai (푛2). 4.1.2. Giao thức IKA.2 Giao thức IKA.2 hoạt động như sau:
- 20 Hình 4.2. Sơ đồ giao thức IAK.2 Như vậy số phép tính và số giao dịch của thuật toán đều có độ phức tạp đa thức bậc 1 O(n), ưu việt hơn so với IKA.1 4.2. Đề xuất giao thức trao đổi khóa nhóm Trong luận án này, nghiên cứu sinh đề xuất giao thức trao đổi khóa nhóm NGDH1. Giao thức này hoạt động như sau: - Chia nhóm thành từng cặp hai thành viên, nếu số thành viên là lẻ thì thành viên cuối cùng ghép với thành viên đầu tiên. Ta được các cặp 1, 2, , với = [(푛 + 1)⁄2]. - Từng cặp trao đổi thiết lập khóa bí mật chung chính là khóa bí mật hình thành bởi giao thức trao đổi khóa cặp DH. Ta được 1, 2, , . - Thực hiện tiếp theo IKA.2 với nhóm 1, 2, , . Lưu ý bước cuối cùng của IKA.2 thực hiện truyền đến tất cả các thành viên.
- 21 Hình 4.3. Sơ đồ giao thức NGDH1 4.3. Đánh giá giao thức Giao thức NGDH1 có một số ưu điểm như sau: Không để lộ khóa cặp; dễ dàng hoán vị để hình thành khóa mới; giảm độ phức tạp. Độ phức tạp thời gian của giao thức Độ phức tạp thời gian của giao thức NGDH1 so sánh với hai giao thức IKA.1 và IKA.2 được trình bày trong Bảng 4.1: Bảng 4.1. Độ phức tạp thời gian của giao thức NGDH1 Giao thức Số giao dịch Số phép tính lũy thừa 푛2 + 푛 − 2 푛2 + 푛 − 2 IKA.1 2 2 IKA.2 4푛 − 5 4푛 − 4 NGDH1 7 − 5 ≈ 3,5푛 9 − 4 ≈ 4,5 푛 4.4. Kết luận chương 4 Trong Chương 4, qua phân tích giao thức GDH nguyên thủy, IKA.1 và IKA.2 đều không thực hiện được việc bảo mật khóa cặp, tác
- 22 giả đề xuất xây dựng giao thức cải tiến trong trường hợp trao đổi khóa nhóm NGDH1 nhằm tránh lộ khóa cặp, đưa ra lượng khóa lớn thuận lợi cho những biến động của nhóm và giảm các bước tính toán. KẾT LUẬN Qua thời gian nghiên cứu và tìm hiểu về “Nghiên cứu phát triển giao thức trao đổi khóa an toàn”, có thể khẳng định, việc trao đổi và đảm bảo an toàn cho các thông tin nhạy cảm trên các mạng truyền thông là vấn đề mang tính thời sự và vô cùng phức tạp. Trên thực tế, các kỹ thuật mật mã là phương pháp an toàn và hiệu quả nhất để đảm bảo an toàn thông tin truyền trên mạng. Với tất cả các kỹ thuật mật mã, bài toán trao đổi khóa luôn được đặt ra để có thể đảm bảo việc ứng dụng được các thuật toán mật mã. Việc cải tiến và phát triển các giao thức trao đổi khóa an toàn luôn là yêu cầu đặt ra của bất kỳ tổ chức hay quốc gia nào. A. Các kết quả đạt được của luận án: 1. Nghiên cứu tổng quan bài toán trao đổi khóa; giao thức thỏa thuận, thiết lập khóa và một số khái niệm, phương pháp đánh giá, tiêu chuẩn an toàn của một giao thức trao đổi khóa (TĐK). Giới thiệu chi tiết giao thức trao đổi khóa Diffie–Hellman; phân tích xu hướng phát triển trong nước và quốc tế, trình bày ưu nhược điểm của một số giao thức TĐK đã công bố có liên quan. 2. Nghiên cứu các vấn đề cơ sở toán học của các bài toán khó giải và lược đồ chữ ký số dựa vào các bài toán khó, phân tích các khái niệm, mô hình và các chuẩn chữ ký số hiện nay làm cơ sở xây dựng lược đồ chữ ký số dựa trên hai bài toán khó, tiến hành so sánh hiệu
- 23 quả của các lược đồ đã đề xuất, phân tích khả năng bảo mật và hiệu quả của thuật toán. 3. Nghiên cứu, phân tích một số giao thức trao đổi khóa an toàn và mô hình trao đổi khóa, từ đó đề xuất 03 giao thức trao đổi khóa dựa trên hai bài toán khó trên cơ sở lược đồ chữ ký số dựa trên hai bài toán khó; Chứng minh tính đúng đắn, và đánh giá độ an toàn của ba giao thức đã đề xuất. 4. Nghiên cứu các vấn đề liên quan đến trao đổi khóa nhóm, qua phân tích các giao thức GDH nguyên thủy, IKA.1 và IKA.2. Đề xuất xây dựng giao thức cải tiến trong trường hợp trao đổi khóa nhóm NGDH1 nhằm tránh lộ khóa cặp, dễ dàng thay đổi khóa và giảm số lượng tính toán. B. Những đóng góp mới của luận án: 1. Đề xuất lược đồ chữ ký số dựa trên hai bài toán khó được phát triển từ một số lược đồ chữ ký mà tính bảo mật và hiệu quả đã được chứng minh. Sự an toàn của các lược đồ được đề xuất dựa trên hai bài toán khó. Vì vậy, nó vẫn an toàn ngay cả khi có một thuật toán hiệu quả để giải một trong hai bài toán khó. Các lược đồ được đề xuất là phù hợp cho các ứng dụng đòi hỏi mức an ninh cao. 2. Đề xuất 03 giao thức trao đổi khóa an toàn dựa trên hai bài toán khó là: Trao đổi khóa có xác thực (DH–MM–KE); trao đổi khóa sử dụng ký và mã hóa đồng thời (DH–MM–SC); trao đổi khóa sử dụng ký và mã hóa đồng thời có thể chối từ (DH–MM–DSC). Các giao thức DH–MM–SC và DH–MM–DSC là các giao thức đầu tiên sử dụng dựa trên hai bài toán khó. Chính vì thế, các giao thức này có mức độ an toàn cao hơn các giao thức đã có.
- 24 3. Đề xuất giao thức cải tiến trao đổi khóa nhóm NGDH1 nhằm tránh lộ khóa cặp, dễ dàng thay đổi khóa và giảm số lượng tính toán. C. Hướng nghiên cứu tiếp theo: - Tiếp tục nghiên cứu đưa vào ứng dụng thực tế các Lược đồ chữ ký số dựa trên hai bài toán khó đối với các ứng dụng đòi hỏi mức an ninh cao trong hệ thống hạn chế về nguồn lực. - Nghiên cứu tăng hiệu quả tính toán của 03 giao thức trao đổi khóa đã đề xuất để có thể áp dụng trong thực tế, xây dựng những hệ thống phần mềm và phần cứng hoàn chỉnh để thực hiện các giao thức đã đề xuất. - Nghiên cứu ứng dụng giao thức cải tiến trao đổi khóa nhóm NGDH1 với số lượng thành viên nhóm lớn đưa vào ứng dụng thực tế.
- 25 DANH MỤC CÁC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ [CT1] N. H. Minh, D. V. Binh, N. T. Giang, N. A. Moldovyan, Blind Signature Protocol Based on Difficulty of Simultaneous Solving Two Difficult Problems, Hikari, Vol. 6, 2012, no. 139, pp. 6903 – 6910. [CT2] Binh V. Do, Minh H. Nguyen, and Nikolay A. Moldovyan, Digital Signature Schemes from Two Hard Problems, Multimedia and Ubiquitous Engineering, MUE 2013, May 9-11, 2013, Seoul, Korea. Lecture Notes in Electrical Engineering 240, Springer 2013, pp. 817- 825. [CT3] Duy H. N, Binh D. V, Minh N. H, Moldovyan N. A, 240-bit Collective Signature Protocol in a Non-cyclic Finite Group. Tạp chí IEEE trong chương trình hội thảo quốc tế Advanced Technologies for Communications (ATC-2014), 10/2014. [CT4] Đỗ Việt Bình, Nghiên cứu phát triển giao thức trao đổi khóa nhóm, Tạp chí nghiên cứu khoa học và công nghệ quân sự, số 49, 06-2017, trang 104-109. [CT5] Do Viet Binh, Authenticated key exchange protocol based on two hard problems, Tạp chí nghiên cứu khoa học và công nghệ quân sự, số 50, tháng 08-2017, trang 147-152. [CT6] Do Viet Binh, Nguyen Hieu Minh, Nguyen Nam Hai, Junbeom Hur, Dang Hoang Minh, Ho Sy Tan, Authenticated key exchange, signcryption and deniable signcryption protocols based on two hard problems, Tạp chí IEEE trong chương trình hội thảo quốc tế ACOMP 2017 CONFERENCE (ACOMP 11-2017), document/8392574/.