intTypePromotion=1
ADSENSE

Luận án tiến sĩ Toán học: Nghiên cứu, phát triển một số thuật toán sinh khóa RSA chứa backdoor

Chia sẻ: Phong Tỉ | Ngày: | Loại File: PDF | Số trang:126

44
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục đích của luận án "Nghiên cứu, phát triển một số thuật toán sinh khóa RSA chứa backdoor" nhằm nghiên cứu, tìm kiếm các thuật toán sinh khóa chứa backdoor hiệu quả để có thể ứng dụng nhằm đảm bảo an ninh cho một hạ tầng PKI cụ thể.

Chủ đề:
Lưu

Nội dung Text: Luận án tiến sĩ Toán học: Nghiên cứu, phát triển một số thuật toán sinh khóa RSA chứa backdoor

  1. 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Ự ------------------------------- LÊ QUANG HUY NGHIÊN CỨU, PHÁT TRIỂN MỘT SỐ THUẬT TOÁN SINH KHÓA RSA CHỨA BACKDOOR LUẬN ÁN TIẾN SĨ TOÁN HỌC HÀ NỘI – 2018
  2. 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Ự ------------------------------- LÊ QUANG HUY NGHIÊN CỨU, PHÁT TRIỂN MỘT SỐ THUẬT TOÁN SINH KHÓA RSA CHỨA BACKDOOR Chuyên ngành: Cơ sở toán học cho tin học Mã số: 9 46 01 10 LUẬN ÁN TIẾN SĨ TOÁN HỌC NGƯỜI HƯỚNG DẪN KHOA HỌC: 1. PGS.TS BẠCH NHẬT HỒNG 2. TS TRẦN DUY LAI HÀ NỘI – 2018
  3. i LỜI CAM ĐOAN Tôi xin cam đoan, đây là công trình nghiên cứu của riêng tôi. Các nội dung, số liệu, kết quả trình bày trong Luận án là hoàn toàn trung thực và chưa từng được ai công bố trong bất cứ công trình nào khác, các dữ liệu tham khảo được trích dẫn đầy đủ. Người cam đoan Lê Quang Huy
  4. ii MỤC LỤC DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT .................................. iv DANH MỤC CÁC BẢNG............................................................................... vi DANH MỤC CÁC HÌNH VẼ ........................................................................ vii DANH MỤC CÁC THUẬT TOÁN .............................................................. viii MỞ ĐẦU ........................................................................................................... 1 1. Tính cấp thiết ...................................................................................... 1 2. Mục đích, nhiệm vụ nghiên cứu ......................................................... 3 3. Đối tượng, phạm vi nghiên cứu .......................................................... 4 4. Cơ sở lý luận, thực tiễn và phương pháp nghiên cứu ......................... 4 5. Bố cục của Luận án ............................................................................. 5 CHƯƠNG 1. CƠ SỞ VỀ BACKDOOR TRONG SINH KHÓA ..................... 7 1.1. Giới thiệu về backdoor mật mã ........................................................ 7 1.2. Cơ sở về backdoor trong sinh cặp khóa ......................................... 12 1.3. Phương pháp phân tích nhân tử của Coppersmith ......................... 25 1.4. Một số kết quả về hệ mật RSA ...................................................... 31 1.5. Một số kết quả nghiên cứu backdoor trong sinh khóa RSA .......... 35 1.6. Những vấ n đề luâ ̣n án cầ n tâ ̣p trung nghiên cứu giải quyế t .......... 41 1.7. Kết luận chương 1 .......................................................................... 42 CHƯƠNG 2. ĐỀ XUẤT THUẬT TOÁN BACKDOOR BD1, BD2 ............ 43 2.1. Cơ sở cài và đánh giá backdoor ..................................................... 43 2.2. Đề xuất thuật toán backdoor BD1 ................................................. 49 2.3. Đề xuất thuật toán backdoor BD2 ................................................. 60 2.4. Thử nghiệm các thuật toán backdoor BD1, BD2 .......................... 71 2.5. Ứng dụng backdoor BD1, BD2 ..................................................... 78 2.6. Kết luận chương 2 .......................................................................... 80
  5. iii CHƯƠNG 3. ĐỀ XUẤT THUẬT TOÁN BACKDOOR BD3 ...................... 81 3.1. Thuật toán sinh khóa trung thực tuân thủ điều kiện “P2” ............. 81 3.2. Đề xuất thuật toán backdoor BD3 ................................................. 86 3.3. Thử nghiệm thuật toán backdoor BD3 .......................................... 98 3.4. Ứng dụng backdoor BD3 ............................................................. 102 3.5. Đánh giá các thuật toán backdoor đề xuất ................................... 102 3.6. Kết luận chương 3 ........................................................................ 105 KẾT LUẬN ................................................................................................... 106 A. Kết quả đạt được của Luận án ....................................................... 106 B. Những đóng góp mới của Luận án ................................................. 106 C. Hướng nghiên cứu tiếp theo ........................................................... 107 CÁC CÔNG TRÌNH KHOA HỌC ĐÃ CÔNG BỐ ..................................... 108 TÀI LIỆU THAM KHẢO ............................................................................. 109
  6. iv DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT DG1 Khoảng cách thống kê giữa thống kê khóa công khai của G1 và thống kê khóa công khai của G0 E Hàm mã mật hóa thông tin backdoor G0 Thuật toán sinh khóa trung thực G1 Thuật toán sinh khóa chứa backdoor I Hàm trích thông tin từ khóa riêng kpriv Khóa riêng kpub Khóa công khai 𝐺 0 𝑘𝑝𝑟𝑖𝑣 Khóa riêng của thuật toán sinh khóa trung thực 𝐺 0 𝑘𝑝𝑢𝑏 Khóa công khai của thuật toán sinh khóa trung thực 𝐺 1 𝑘𝑝𝑟𝑖𝑣 Khóa riêng của thuật toán sinh khóa chứa backdoor 𝐺 1 𝑘𝑝𝑢𝑏 Khóa công khai của thuật toán sinh khóa chứa backdoor nlen Độ dài theo bit của số modulus n NG1() Số lượng khóa (lực lượng khóa) của thuật toán G1 M Hàm nhúng thông tin backdoor vào trong khóa công khai p⌉k k bit cao của p RG1 () Tỷ lệ lực lượng khóa giữa thuật toán G1 và thuật toán G0 T(G0) Độ phức tạp của thuật toán G0 t(n) Độ phức tạp của hàm tính n ‖𝑓‖2 Chuẩn Euclide của đa thức f #{p} Lực lượng tập các phần tử p
  7. v AES Chuẩn mã mật tiên tiến (Advanced Encryption Standard) API Giao diện lập trình ứng dụng (Application Programming Interface) CRT Định lý phần dư Trung Hoa Chinese Remainder Theorem Dual_EC_DRBG Bộ tạo bit ngẫu nhiên xác định dựa trên đường cong Elip kép (Dual Elliptic Curve Deterministic Random Bit Generator) ECIES Lược đồ mã mật tích hợp đường cong Elip (Elliptic Curve Integrated Encryption Scheme) ECDH Trao đổi khóa Diffie-Hellman dựa trên đường cong Elip (Elliptic Curve Diffie-Hellman) FIPS Chuẩn xử lý thông tin liên bang (Federal Information Processing Standard) HSM Module an toàn phần cứng (Hardware Security Module) LCM Bội số chung nhỏ nhất (Least Common Multiple) LLL Lenstra, Lenstra, Lovasz (Tên người) NM Bộ nhớ không mất dữ liệu (Non-volatile Memory) PAP Sự riêng tư lớn hay (Pretty Awful Privacy) PKCS Chuẩn mật mã khóa công khai (Public Key Cryptography Standards) PKI Hạ tầng mật mã khóa công khai (Public Key Infrastructure) RSA Rivest - Shamir - Adleman (tên người) SETUP (Bẫy được nhúng bí mật với bảo vệ toàn cục) Secretly Embedded Trapdoor with Universal Protection SSH Vỏ an toàn (Secure Shell) SSL Lớp ổ cắm an toàn (Secure Sockets Layer) TLS An toàn lớp giao vận (Transport Layer Security) VM Bộ nhớ mất dữ liệu khi mất điện (Volatile Memory)
  8. vi DANH MỤC CÁC BẢNG Bảng 1.1. Tổng hợp các tiêu chí đánh giá thuật toán sinh khóa chứa backdoor ......................................................................................................... 25 Bảng 1.2. So sánh chiều dài khóa của các hệ mật............................................... 31 Bảng 1.3. Chiều dài tối thiểu và tối đa của các số nguyên tố phụ ...................... 33 Bảng 1.4. Các phương thức sinh số nguyên tố được phép .................................. 33 Bảng 2.1. Các điểm khác biệt giữa thuật toán BD1 với thuật toán PAP và PHP 58 Bảng 2.2. Các điểm khác biệt giữa thuật toán BD2 với Hidden Prime Factor ... 69 Bảng 2.3. Kịch bản thử nghiệm các thuật toán backdoor BD1, BD2 ................. 73 Bảng 2.4. Kết quả thử nghiệm độ phức tạp thuật toán backdoor BD1 ............... 75 Bảng 2.5. Kết quả thử nghiệm độ phức tạp thuật toán backdoor BD2 ............... 76 Bảng 3.1. Kịch bản thử nghiệm thuật toán backdoor BD3 ................................. 97 Bảng 3.2. Kết quả thử nghiệm độ phức tạp thuật toán backdoor BD3 ............... 98 Bảng 3.3. Các điểm khác nhau giữa 03 thuật toán backdoor đề xuất ............... 101
  9. vii DANH MỤC CÁC HÌNH VẼ Hình 1.1. Quá trình phát triển của backdoor mật mã .......................................... 9 Hình 1.2. Mô hình phân tích backdoor ............................................................. 14 Hình 2.1. Sơ đồ khối thuật toán sinh khóa trung thực tuân thủ điều kiện ........ 44 Hình 2.2. Sơ đồ khối thuật toán sinh khóa trung thực tuân thủ điều kiện “P1” 46 Hình 2.3. Sơ đồ khối phần thuật toán sinh khóa của backdoor BD1 ................ 51 Hình 2.4. Sơ đồ khối phần thuật toán khôi phục khóa của backdoor BD1....... 53 Hình 2.5. Sơ đồ khối phần thuật toán sinh khóa của backdoor BD2 ................ 63 Hình 2.6. Sơ đồ khối phần thuật toán khôi phục khóa của backdoor BD2 ....... 65 Hình 2.7. Thiết bị T-Token ............................................................................... 71 Hình 2.8. Biểu đồ kết quả thử nghiệm độ phức tạp thuật toán backdoor BD1. 75 Hình 2.9. Biểu đồ kết quả thử nghiệm độ phức tạp thuật toán backdoor BD2. 76 Hình 3.1. Sơ đồ khối thuật toán sinh khóa trung thực tuân thủ điều kiện “P2” 83 Hình 3.2. Sơ đồ khối phần thuật toán sinh khóa của backdoor BD3 ................ 90 Hình 3.3. Sơ đồ khối phần thuật toán khôi phục khóa của backdoor BD3....... 92 Hình 3.4. Biểu đồ kết quả thử nghiệm độ phức tạp thuật toán backdoor BD3 ....................................................................................................... 102
  10. viii DANH MỤC CÁC THUẬT TOÁN Thuật toán 2.1. Thuật toán sinh khóa RSA tuân thủ điều kiện “P1”……….. 47 Thuật toán 2.2. Phần thuật toán sinh khóa của backdoor BD1 ....................... 53 Thuật toán 2.3. Phần thuật toán khôi phục khóa của backdoor BD1.............. 54 Thuật toán 2.4. Phần thuật toán sinh khóa của backdoor BD2 ....................... 64 Thuật toán 2.5. Phần thuật toán khôi phục khóa của backdoor BD2.............. 65 Thuật toán 3.1. Thuật toán sinh khóa RSA tuân thủ điều kiện “P2”…………82 Thuật toán 3.2. Phần thuật toán sinh khóa của backdoor BD3 ....................... 90 Thuật toán 3.3. Phần thuật toán khôi phục khóa của backdoor BD3.............. 91
  11. 1 MỞ ĐẦU 1. Tính cấp thiết Mạng Internet ra đời và phát triển đã đẩy mạnh việc tạo, lưu trữ, truyền và trao đổi thông tin (gọi chung là các giao dịch điện tử). Sự phát triển của các giao dịch điện tử cũng kéo theo các vấn đề gây mất an toàn thông tin. Giải pháp tốt nhất được ứng dụng trong giai đoạn hiện nay là sử dụng mật mã, mật mã khóa công khai (PKI) để đảm bảo an toàn cho các giao dịch điện tử. Tuy nhiên khi ứng dụng mật mã, mật mã khóa công khai để đảm bảo an toàn cho các giao dịch điện tử (thông qua hạ tầng PKI [16]) thì xuất hiện các sự kiện sử dụng mật mã để thực hiện các hành vi trái pháp luật, tội phạm [25]. Các hoạt động tội phạm trực tiếp có sử dụng mật mã gồm: tạo virus, mã độc tấn công các hệ thống thông tin lớn như: các hệ thống điều khiển nhà máy điện hạt nhân, hệ thống vệ tinh, hệ thống vũ khí quân sự, hệ thống truyền tải điện, hệ thống viễn thông, Internet quốc gia, hệ thống điều khiển không lưu, điều khiển giao thông công cộng. Các hoạt động tội phạm gián tiếp: giữ bí mật cho việc trao đổi thông tin phục vụ các hoạt động: khủng bố [25], chế tạo vật liệu nổ, tống tiền [30], buôn bán vũ khí, ma túy, giết người…[7]). Từ các sự kiện nêu trên nảy sinh nhu cầu cần có biện pháp để từ bản mã, khôi phục, giải mã lấy được bản rõ (phá vỡ tính bảo mật trong điều kiện không có khóa) để đảm bảo an ninh cho cộng đồng. Nhu cầu đảm bảo an ninh cho cộng đồng nêu trên là chính đáng và được pháp luật bảo vệ, cho phép thực hiện. Hiện tại có 03 cách phổ biến nhất để phá vỡ được tính bảo mật (lấy được bản rõ từ bản mã): 1. Lấy khóa mã thông qua con người: ăn cắp/mua chuộc/hối lộ… 2. Khai thác các lỗ hổng có sẵn trên các sản phẩm mật mã do vô ý tạo ra (sử dụng khóa dễ đoán, gửi khóa cùng với bản mã) hoặc do cố ý tạo ra (nhà sản
  12. 2 xuất chủ động cài đặt backdoor). 3. Thám mã (phá vỡ hệ mật bằng các phương pháp toán học). Ưu, nhược điểm của các phương pháp phá vỡ tính bảo mật: - Phương pháp lấy khóa mã thông qua con người hoặc khai thác các lỗ hổng sẵn có trên sản phẩm mật mã do vô ý tạo ra chỉ thực hiện được với một số trường hợp xác định và mang tính ngẫu nhiên. - Phương pháp thám mã đã đạt được những kết quả nhất định. Tuy nhiên với sự phát triển của các hệ mật mã hiện đại được cài đặt theo các chuẩn xác định thì việc thám mã để khôi phục lại bản rõ trở nên ngày càng khó và không khả thi cả về chi phí, công sức và thời gian (vì vậy các hệ mật an toàn mới được sử dụng rộng rãi như hiện nay). - Phương pháp sử dụng backdoor có nhược điểm làm giảm không gian khóa nhưng có ưu điểm khôi phục lại bản mã nhanh, tất định, chi phí triển khai thấp, khó bị phát hiện khi cài đặt trong những sản phẩm mật mã dạng hộp đen. Trong những năm gần đây, đã phát hiện được một số doanh nghiệp, cơ quan chính phủ cài backdoor vào trong các sản phẩm mật mã [50], [52] và vào trong các chuẩn về mật mã [21]. Bên cạnh đó nhiều nghiên cứu về backdoor mật mã đã được công bố. Các nghiên cứu về backdoor mật mã trải rộng từ các hệ mật (mục 1.1.2.2), giao thức mật mã [22], [39], đến bộ sinh số giả ngẫu nhiên [21]. Đối với backdoor trong các hệ mật bất đối xứng, các nghiên cứu tập trung nhiều vào hệ mật RSA (mục 1.5). Ngoài ra một số công trình nghiên cứu về backdoor cũng được thực hiện trên các hệ mật bất đối xứng khác như Elgamal [60], [61], EC [64]. Đến nay, các nghiên cứu về backdoor mật mã đã công bố (mục 1.5) hoặc đã bị phát hiện với số lượng ít và chất lượng còn cần nhiều nỗ lực cải tiến hơn nữa (mục 1.5.4). Như vậy khi sử dụng mật mã luôn có hai nhu cầu đồng thời tồn tại: thứ
  13. 3 nhất là nhu cầu bảo vệ thông tin bằng các hệ mật mã; thứ hai là nhu cầu phá vỡ tính bảo mật, (khôi phục lại bản rõ từ bản mã của người dùng), để đảm bảo an ninh cho cộng đồng. Vì vậy bên cạnh hướng tăng cường độ an toàn cho các giao dịch điện tử thông qua việc đảm bảo an toàn cho thuật toán mật mã, việc cài đặt hệ mật, thông tin kênh bên, các hệ thống thông tin sử dụng mật mã (hạ tầng PKI) cũng cần được đảm bảo an ninh, an toàn, chống lại việc sử dụng mật mã, sử dụng PKI để thực hiện các hành vi, hành động tội phạm. Mật mã dùng để bảo vệ thông tin càng được sử dụng rộng rãi thì nhu cầu đảm bảo an ninh khi sử dụng mật mã ngày càng tăng. Hiện tại việc sử dụng các sản phẩm mật mã (dạng hộp đen) để đảm bảo an toàn cho các giao dịch điện tử trên thế giới và ở Việt Nam diễn ra ngày càng nhiều, kéo theo nhu cầu đảm bảo an ninh cho cộng đồng khi sử dụng mật mã diễn ra ngày càng cấp thiết. Từ thực tế ứng dụng, nhu cầu và hiện trạng nghiên cứu, triển khai backdoor mật mã như trên, NCS lựa chọn đề tài “Nghiên cứu, phát triển một số thuật toán sinh khóa RSA chứa backdoor” nhằm nghiên cứu vấn đề đảm bảo an ninh cho việc ứng dụng mật mã khóa công khai (PKI), chống lại việc sử dụng hệ thống PKI để thực hiện các hành vi, hành động tội phạm. Cụ thể, Luận án tập trung nghiên cứu một vấn đề hẹp của hệ mật RSA được sử dụng phổ biến trong PKI là thuật toán sinh khóa trên hệ mật RSA có chứa backdoor, ứng dụng để đảm bảo an ninh cho các hạ tầng PKI có sử dụng hệ mật RSA. 2. Mục đích, nhiệm vụ nghiên cứu 2.1. Mục đích nghiên cứu Nghiên cứu, tìm kiếm các thuật toán sinh khóa chứa backdoor hiệu quả để có thể ứng dụng nhằm đảm bảo an ninh cho một hạ tầng PKI cụ thể. 2.2. Nhiệm vụ nghiên cứu - Nghiên cứu các mô hình, công cụ hình thức hiệu quả để phân tích và
  14. 4 đánh giá backdoor. - Tìm kiếm phương pháp tạo backdoor, phương pháp khôi phục khóa riêng tất định từ khóa công khai chứa backdoor. - Đề xuất một số thuật toán sinh khóa chứa backdoor tuân thủ chuẩn an toàn xác định (ví dụ chuẩn FIPS 186-4 [27]). - Cài đặt, thử nghiệm các thuật toán sinh khóa chứa backdoor trong các module mật mã tạo khóa dạng hộp đen. 3. Đối tượng, phạm vi nghiên cứu 3.1. Đối tượng nghiên cứu - Mô hình lý thuyết, công cụ hình thức, tiêu chí đánh giá các thuật toán về backdoor trong các hệ mật. - Phương pháp tạo (trích, nhúng thông tin) backdoor. - Phương pháp khôi phục khóa riêng từ khóa công khai có chứa backdoor. 3.2. Phạm vi nghiên cứu Đến nay hai hệ mật khóa công khai RSA và EC được đánh giá an toàn nên được sử dụng rộng rãi. Do được nghiên cứu và công bố sớm hơn nên hiện tại, hệ mật RSA được sử dụng phổ biến trong các sản phẩm mật mã. Để kết quả nghiên cứu có thể ứng dụng ngay, trực tiếp vào thực tiễn, luận án giới hạn phạm vi nghiên cứu: sinh khóa, khôi phục khóa chứa backdoor trên hệ mật RSA. 4. Cơ sở lý luận, thực tiễn và phương pháp nghiên cứu 4.1. Cơ sở lý luận Để thực hiện được mục đích nghiên cứu, Luận án cần dựa trên cơ sở: - Lý thuyết về backdoor trong các hệ mật: nhằm tập hợp các kiến thức về phân tích và đánh giá backdoor mật mã. - Hệ mật mã khóa công khai RSA: nhằm nghiên cứu các kiến thức tổng
  15. 5 quan về hệ mật, các tham số của hệ mật, các chuẩn có liên quan và thuật toán sinh khóa của hệ mật. - Phương pháp phân tích nhân tử: nhằm nghiên cứu các phương pháp tìm nghiệm nguyên của phương trình đa thức modulo một biến phục vụ cho việc phân tích nhân tử nguyên tố p, của số modulus RSA. 4.2. Thực tiễn Nhu cầu của nhà cung cấp hạ tầng khóa công khai (PKI) tạo cặp khóa mã cho người dùng để khi cần có thể cung cấp lại khóa riêng của người dùng (cho người dùng khi bị mất khóa, cho cơ quan quản lý nhà nước khi được yêu cầu) mà không phải duy trì CSDL khóa riêng tương ứng. Nhu cầu của các cơ quan quản lý nhà nước (quốc phòng, an ninh) ứng dụng cho module sinh khóa của người dùng (thiết bị phần cứng PKI-Token) để có thể khôi phục lại các khóa dùng để mã (khôi phục bản rõ từ bản mã) khi có yêu cầu nhằm đảm bảo an ninh cho cộng đồng. Cung cấp cho người dùng những hiểu biết để phân tích, nhận biết và phòng chống backdoor khi sử dụng những sản phẩm mật mã dạng hộp đen. 4.3. Phương pháp nghiên cứu Phương pháp nghiên cứu: mô hình hóa, thực nghiệm. 5. Bố cục của Luận án Bên cạnh các phần mở đầu, kết luận, các công trình khoa học đã công bố, tài liệu tham khảo, trọng tâm của Luận án tập trung vào 03 chương: Chương 1: Cơ sở về Backdoor trong sinh khóa Chương này trình bày tổng quan các kiến thức cơ sở về Backdoor mật mã; công cụ mô hình hóa, các tiêu chí phân tích, đánh giá backdoor của Arboit; phương pháp phân tích nhân tử của Coppersmith; chuẩn FIPS 186-4 về hệ mật
  16. 6 RSA và một số kết quả nghiên cứu về backdoor trong sinh khóa RSA. Chương 2: Đề xuất thuật toán backdoor BD1, BD2 Chương này trình bày đề xuất 02 thuật toán sinh khóa RSA chứa backdoor, BD1, BD2, với các tham số tuân thủ điều kiện “P1” theo chuẩn FIPS 186-4. Các thuật toán backdoor BD1, BD2 được phân tích, đánh giá chi tiết theo mô hình hình thức của Arboit và được thử nghiệm trên thiết bị tự chế tạo T-Token có các kết quả phù hợp với đánh giá. Chương 3: Đề xuất thuật toán backdoor BD3 Chương này trình bày đề xuất về 01 thuật toán sinh khóa RSA chứa backdoor, BD3, với các tham số tuân thủ điều kiện “P2” theo chuẩn FIPS 186- 4. Thuật toán backdoor BD3 được phân tích, đánh giá chi tiết theo mô hình hình thức của Arboit và được thử nghiệm trên thiết bị tự chế tạo T-Token có các kết quả phù hợp với đánh giá.
  17. 7 CHƯƠNG 1. CƠ SỞ VỀ BACKDOOR TRONG SINH KHÓA Chương này trình bày cơ sở về backdoor trong sinh cặp khóa của hệ mật khóa công khai. Ngoài phần trình bày tổng quan về backdoor mật mã, nội dung của chương tập trung trình bày công cụ hình thức của Arboit để phân tích và đánh giá backdoor, phương pháp phân tích nhân tử của Coppersmith để khôi phục lại khóa riêng từ khóa công khai tương ứng, chuẩn FIPS 186-4 để áp dụng cho các tham số (vào/ra) của thuật toán sinh khóa và một số kết quả nghiên cứu về backdoor trong sinh khóa RSA. Dựa trên cơ sở về backdoor và các phân tích, đánh giá về kết quả nghiên cứu backdoor của các tác giả đi trước, chương 1 nêu vấn đề cần nghiên cứu, giải quyết của luận án. 1.1. Giới thiệu về backdoor mật mã 1.1.1. Backdoor mật mã 1.1.1.1. Khái niệm Backdoor Backdoor hay trapdoor, hiểu theo nghĩa chung nhất là “cửa hậu” hay lối vào phía sau. Đối với một hệ thống máy tính backdoor [40] có thể là: - Lối vào ẩn (bí mật) hoặc một cách vào hệ thống mà không phải thực hiện các thủ tục xác thực, hay vượt qua các kỹ thuật bảo vệ thông thường. Backdoor ở dạng này thường đóng vai trò là một công cụ quản trị. - Là một (đoạn) chương trình độc hại được cài vào một hệ thống (đối tượng bị nhiễm, mục tiêu) để có thể truy nhập được vào hệ thống đó về sau nhằm thực hiện một hành động gây hại tới đối tượng bị nhiễm. Đặc trưng của loại backdoor này là không để lại dấu vết và khó phát hiện. Đối tượng của backdoor thường là một hệ thống máy tính, một hệ thống mật mã, một thuật toán, một hệ thống được bảo vệ vv. Backdoor cho phép người dùng (hoặc kẻ tấn công) truy cập tới đối tượng bị nhiễm cục bộ hoặc từ xa.
  18. 8 Backdoor có thể có dạng một phần ẩn của một chương trình, một chương trình riêng biệt, hoặc có thể là một tính năng phần cứng. Thông thường, backdoor được lén lút cài đặt, nhưng trong một số trường hợp việc cài đặt backdoor là có chủ ý, được biết rộng rãi và có thể hợp pháp. Ví dụ nếu người dùng quên mật khẩu, các nhà sản xuất phải có một cách giúp người dùng lấy lại mật khẩu. 1.1.1.2. Backdoor mật mã Backdoor mật mã là một cơ chế thay đổi (làm yếu đi) thuật toán mật mã xác định, cung cấp cho người tạo backdoor một cách để phá vỡ các bản mã trong khoảng thời gian nhỏ hơn nhiều so với phương pháp thám mã tốt nhất (mục abstract trong [17]). Trong ứng dụng thực tế, sự hiện diện (tồn tại) của backdoor mật mã cho thấy các thông điệp dữ liệu đã mã mật (bản mã) dễ bị thám mã (phá vỡ) hơn. Đối tượng cụ thể của backdoor mật mã là các thuật toán, các giao thức mật mã và các bộ sinh số giả ngẫu nhiên. Mật mã được sử dụng trong Backdoor mật mã bao gồm hệ mật đối xứng và hệ mật bất đối xứng (mục 12.9 trong [62]). Backdoor mật mã sau đây gọi tắt là backdoor và tùy theo hệ mật sử dụng nên được gọi là backdoor đối xứng hoặc backdoor bất đối xứng. Với backdoor đối xứng, người tìm thấy backdoor có thể sử dụng được nó. Backdoor bất đối xứng thì chỉ được sử dụng bởi kẻ tấn công (người thiết kế backdoor) ngay cả khi toàn bộ cài đặt của nó được công bố công khai. Backdoor có thể được cài đặt bằng phần mềm hoặc phần cứng hoặc kết hợp cả hai. 1.1.1.3. Sự phát triển của backdoor mật mã Backdoors mật mã là một trường hợp đặc biệt của kênh ngầm, được nghiên cứu từ những năm 1980 bởi Gus Simmons. Năm 1984, Simmons [54], đã giới thiệu khái niệm về kênh ngầm (vụng trộm), trong đó thông tin được trao đổi bí mật trong các thông điệp dữ liệu thông thường. Năm 1988, Desmedt [23] khái quát hóa về các kênh ngầm và gọi chúng là “lạm dụng” hệ mật, hay sử
  19. 9 dụng hệ mật theo cách mà nó không được chủ định. Ví dụ, khóa công khai RSA có thể được sử dụng để lưu trữ thông tin mà người tạo ra nó muốn truyền tải tới người khác. Backdoor mật mã là một dạng đặc biệt của lạm dụng hệ mật, trong đó khóa công khai được tạo ra có khả năng cung cấp cho người thiết kế backdoor mật mã cách truy cập (tính toán) được khóa riêng tương ứng. Backdoor mật mã được đặt vào trong khóa công khai và hình thành kênh truyền từ người thiết kế (thông qua bộ tạo khóa) đến người dùng và quay trở lại người thiết kế. Đặc điểm của kênh truyền này là không sử dụng bất kỳ giao thức bổ sung nào vì khóa công khai được công bố rộng rãi trên kho (thư mục công cộng) chứa khóa. Ở góc độ khác backdoor mật mã được xem là một loại tấn công gián tiếp đặc biệt hay tấn công khóa yếu trong đó người thiết kế tạo ra các khóa chứa backdoor ẩn. Nói chung, khóa yếu làm cho hệ mật hoạt động theo cách không mong muốn, khóa yếu tạo thành điểm yếu của hệ mật [14]. Quá trình phát triển của backdoor mật mã được minh họa tại hình 1.1. Các backdoor chưa công bố 1983 1988 1993 1996 1997 2001 2003 2005 2016 Simmons Desmedt Anderson Young Young Howgrave- Crepeau& Young Stefan &Yung &Yung Graham Slakmon &Yung Wüller Các kênh ngầm backdoors (Subliminal channels) Đã bị phá vỡ Đối xứng Bất đối xứng (broken) (symmetric) (asymmetric) Hình 1.1. Quá trình phát triển của backdoor mật mã [4] 1.1.1.4. Đặc trưng chung của backdoor mật mã Các backdoor mật mã có một số đặc trưng chung sau (mục general conceps trong [17]):
  20. 10 - Không khác biệt đầu ra: khi so sánh đầu ra của hệ thống trung thực (không chứa backdoor) với đầu ra của hệ thống chứa backdoor, thì không có sự khác biệt nào. Nếu đầu ra có thể phân biệt được, thì có thể so sánh kết quả đầu ra của hệ thống nghi ngờ với hệ thống trung thực để phát hiện ra sự tồn tại của backdoor. - Bí mật: nhìn chung backdoor không làm giảm sự an toàn của hệ mật. Việc sử dụng backdoor chỉ dành riêng cho người tạo ra nó. - Khả năng gây hại: backdoor cung cấp cách để người tạo ra backdoor có thể gây hại tới hệ mật. Đây là mục đích chính của backdoor mật mã. Bruce Schneier [13] mô tả ba tiêu chí bổ sung của backdoor mật mã: - Khả năng bị phát hiện thấp: Backdoor càng ít (lý tưởng nhất là không) gây ảnh hưởng đến hoạt động bình thường của hệ thống, thì càng tốt. Kích thước backdoor càng nhỏ càng tốt, lý tưởng nhất là giống như các đoạn mã thông thường. - Khả năng chối bỏ cao: Nếu bị phát hiện, backdoor cần làm cho người khác tin rằng đó là một sai lầm, một lỗi, một sự vô tình hay một tai nạn. - Thông đồng tối thiểu: Càng nhiều người biết về backdoor, thì khả năng giữ bí mật càng thấp. Vì vậy, backdoor càng được ít người biết càng tốt. Nhìn chung một backdoor mật mã cần: thứ nhất cho phép kẻ tấn công phá vỡ sự an toàn của bản mã, thứ hai nó phải tương đối dễ sử dụng, thứ ba nó sẽ gây hại cho một số lượng lớn các bản mã. 1.1.2. Phạm vi sử dụng của backdoor mật mã 1.1.2.1. Backdoor trong các hệ mật, giao thức Hiện nay nhiều công trình nghiên cứu về backdoor trong các hệ mật, trong các giao thức mật mã và trong các bộ sinh số giả ngẫu nhiên đã được công
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2