Xây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạc

26 416 0
Xây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạc

Đ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

Xây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạcXây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạcXây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạcXây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạcXây dựng một hệ mật mã lai ghép dựa trên bài toán Logarit rời rạc

HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG NGUYỄN THỊ THÙY DƢƠNG XÂY DỰNG MỘT HỆ MẬT LAI GHÉP DỰA TRÊN BÀI TOÁN LOGARIT RỜI RẠC CHUYÊN NGÀNH: KỸ THUẬT VIỄN THÔNG Mã số: 60.52.02.08 TÓM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI – 2016 Luận văn hoàn thành tại: HỌC VIỆN CÔNG NGHỆ BƢU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: TS NGÔ ĐỨC THIỆN Phản biện 1: Phản biện 2: Luận văn bảo vệ trước Hội đồng chấm luận văn thạc sĩ Học viện Công nghệ Bưu Viễn thông Vào lúc :… … ngày ……tháng …… năm ………… Có thể tìm hiểu luận văn -Thư viện Học viện Công nghệ Bưu Viễn thông -1- MỞ ĐẦU Tính cấp thiết đề tài Hệ thống khoá bí mật hay mật mã cổ điển phương pháp mã hoá đơn giản xuất lịch sử ngành mã hoá Phương pháp sử dụng thuật toán đơn giản, dễ hiểu khó khăn việc quản lý lưu trữ thiết lập phân phối khoá, với hệ mật như: DES, AES, Từ năm 1976 mật mã đại hay hệ thống mật mã công khai đời khắc phục nhược điểm nàyvới hệ mật như: RSA, ElGamal, Pohlig-Hellman… Khi thiết kế mật mã vấn đề đảm bảo độ vững thuật toán vấn đề quan trọng nhất.Đánh giá độ bền vững thuật toán vấn đề lâu khó Nhận thấy tính thiết thực toán gợi ý giảng viên hướng dẫn, chọn đề tài: “Xây dựng hệ mật mã lai ghép dựa toán Logarit rời rạc” để làm đề tài cho luận văn tốt nghiệp Tổng quan vấn đề nghiên cứu Mật mã khóa công khai (hay khóa không đối xứng) phương pháp mã hóa bảo mật thông tin số với khóa mã hóa công khai mạng Hệ mật đời đáp ứng nhiều dịch vụ bảo mật đại thương mại điện tử, chữ ký số Hiện giới có nhiều hệ mật mã khối khóa công khai, nhiên thuật toán mã hóa công khai thường xây dựng theo toán chiều [1], [8] là: Bài toán logarit rời rạc; Bài toán phân tích thừa số; Bài toán xếp ba lô; Bài toán mã sửa sai; Bài toán đường cong elliptic; Bài toán hàm cửa sập… Bài toán logarit rời rạc toán phân tích thừa số, hai toán sử dụng nhiểu thực tế Trong đó, số thủ tục trao đổi khóa thủ tục Diffie – Hellman, hệ mật Omura – Massey, ElGamal, Pohlig-Hellman sử dụng toán logarit rời rạc Và hệ mật tiếng RSA xây dựng toán phân tích thừa số Cho đến nay, có số thuật toán giải toán logarit rời rạc [6], [7], [9], nhiên thuật giải hiệu với số trường hợp định, chưa có thuật giải tổng quát hiệu -2quả Do đó, nói độ khó toán logarit rời rạc sử dụng cho hệ mật khóa công khai Ở Việt Nam có nghiên cứu xây dựng hệ mật có kết đáng quan tâm [3] [4], [5] Các nghiên cứu đề cập đến lý thuyết khía cạnh riêng lẻ chủ đề Việc nghiên cứu áp dụng thuật toán sẵn có để phát triển hệ mật lai ghép hướng nghiên cứu góp phần vào trình phát triển ngành mật mã Việt Nam nói chung Mục đích nghiên cứu Mục đích nghiên cứu luận văn nghiên cứu hệ mật, nghiên cứu toán Logarit rời rạc hệ mật toán Trên sở xây dựng hệ mật khóa bí mật lai ghép sử dụng hai phương pháp xử lý mũ hóa rời rạc (phép toán logarith rời rạc phép toán ngược) phép hoán vị Đối tượng phạm vi nghiên cứu  Đối tượng nghiên cứu: Mật mã khóa bí mật khóa công khai  Phạm vi nghiên cứu: Áp dụng hệ mật Pohlig – Hellman làm hàm mã hóa sơ đồ Feisteltrong hệ mật lai ghép Phương pháp nghiên cứu Phương pháp nghiên cứu đề tài tổng hợp kiến thức mật mã học, lý thuyết số, số học modulo; kết hợp với việc tính toán mô máy tính Bố cục luận văn Bản luận văn bao gồm phần mở đầu, chương nội dung phần kết luận Chương I: Tổng quan mật mã học.Trình bày vấn đề lý thuyết mật mã, khái niệm mật mã khóa bí mật, mật mã khóa công khai, hàm băm chữ ký số Chương II: Bài toán Logarit rời rạc số hệ mật liên quan.Trình bày nghiên cứu sở toán học, toán logarit số phương pháp giải hệ mật liên quan Chương III: Xây dựng hệ mật lai ghép.Trình bày lược đồ Feistel hệ mật Pohlig Hellman từ đề xuất hệ mật lai ghép sở áp dụng toán logarit đánh giá hiệu hệ mật đề xuất -3- CHƢƠNG 1: TỔNG QUAN VỀ MẬT MÃ HỌC 1.1 GIỚI THIỆU CHƢƠNG Trong chương giới thiệu tổng quan lịch sử đời trình phát triển của mật mãgắn liền với trình phát triển khoa học kỹ thuật, công nghệ Từ kỹ thuật che dấu thông tin đơn giản đến việc xây dựng nên hệ mật khóa bí mật, hệ mật khóa công khai 1.2 LỊCH SỬ RA ĐỜI Cùng với phát triển không ngừng nghỉ khoa học kỹ thuật xã hội, nhu cầu đảm bảo an toàn thông tin liên lạc áp dụng ngày nhiều nâng cao hoạt động xã hội Mật mã hóa cổ điển cách viết bí mật cần bút giấy, hai phương pháp thực mật mã cổ điển phương pháp: hoán vị, thay thế.Với đời máy tính kỹ thuật số điện tử học mật mã phức tạp thực Các nghiên cứu rộng rãi có tính học thuật mật mã hóa đại bắt đầu cộng đồng mở kể từ năm thập niên 1970 với chi tiết kỹ thuật DES phát minh RSA Năm 1976, WhitfieldDiffie MartinHellman công bố hệ thống mật mã hóa khóa bất đối xứng nêu phương pháp trao đổi khóa công khai Kể từ thập kỷ 1970, có nhiều thuật toán mã hóa, tạo chữ ký số, thỏa thuận khóa… phát triển Vào thập kỷ 1980, NealKoblitz bắt đầu cho dòng thuật toán mới: mật mã đường cong elliptic tạo nhiều thuật toán tương tự 1.1 Khái quát mật mã học Mật mã học phận khoa học mật mã (Cryptology),được chia thành phận [1]: + Mật mã học (Cryptography): lĩnh vực liên quan với kỹ thuật ngôn ngữ toán học để đảm bảo an toàn thông tin, cụ thể thông tin liên lạc, chia nội dung:  Mật mã khóa bí mật (Khóa đối xứng): (Private-key Cryptography) -4-  Mật mã khóa công khai (khóa bất đối xứng): (Public-key Cryptography)  Hàm băm, xác thực chữ ký số + Phân tích mật mã (Cryptonalys): khoa học nghiên cứu cách phá hệ mật, số phương pháp công điển hình như:  Phương pháp công tổng lực (tìm khóa vét cạn)  Phương pháp thống kê  Phương pháp phân tích cấu trúc… Khoa học mật mã Mậtmãhọc Mật mã khóa bí mật Phân tích mã Mật mãkhóa công khai Hàm băm, xác thực, chữ ký số Hình 1.1.Các lĩnh vực khoa học mật mã Các phương pháp xử lý thông tin số hệ thống mật mã bao gồm:  Mật mã khóa bí mật (khóa đối xứng) Với hệ mật này, việc mã hóa giải mã sử dụng chung khóa, hai bên liên lạc phải thống bảo mật khóa trước truyền tin  Mật mã khóa công khai (khóa không đối xứng) Thông thường bên liên lạc tự tạo cho cặp khóa công khai bí mật, khóa công khai dùng để mã hóa tin khóa công khai mạng, khóa bí mật dùng để giải mã (chỉ có bên nhận tin lưu trữ)  Mật mã dòng: Trong hệ mật mã dòng trình xử lý thông tin thực bit -5-  Mật mã khối: Trong hệ mật mã khối trình xử lý thông tin thực theo khối bit có độ dài xác định 1.4 CÁC YÊU CẦU CHÍNH CỦA MẬT MÃ HIỆN ĐẠI  Tính bí mật(confidentiality): Tàisảncủa hệ thống truy cập người có th mquyền Tính bí mật đượcbảo vệ nhờ việc kiểm soát truy nhập nhờ thuật toán mã hóa liệu  Tínhtoànv n liệu (data integrity): đảm bảo khả phát sửa đổi trái phép thông tin  Xác thực (authentication): có mối liên hệ với định danh (identification) Nên thực xác thực thực thể (hai đối tượng phiên liên lạc định danh lẫn nhau) thân thông tin  Đảm bảo chống từ chối (non-repudiation): ngăn ngừa thực thể từ chối (phủ nhận) cam kết hay hành động trước 1.5 CÁC HỆ MẬT KHÓA BÍ MẬT Các toán tử sử dụng mật mã khóa bí mật:  Phép hoán vị  Phép thay  Các phép toán số học: dịch vòng, XOR, … Hệ mật mã định nghĩa năm (P, C, K, E, D), đó: P (Plaintext) tập hữu hạn các rõ C (Ciphertext) tập hữu hạn mã K (Key) tập hữu hạn khoá E (Encrytion) tập hàm lập mã D (Decrytion) tập hàm giải mã Với k ∈K, có - Hàm lập mã: ∈ - Và hàm giải mã ∈ , - Sao cho: ( ( )) ∈ -6Thám mã Bản rõ M Nguồn tin Bản mã C Bộ mã hóa Bản mã C Kênh mở (Không an toàn) Bản rõ M Bộ giải mã Nhận tin KD KE K Kênh an toàn Nguồn khóa Hình 1.2.Sơ đồ khối chức hệ mật khoá bí mật 1.5.1 Các hệ mật thay 1.5.1.1 Các hệ mật thay đơn biểu Khi khoá chọn ký tự rõ ánh xạ đến kí tự mã Do cách mã hoá tương ứng với hoán vị bảng chữ hoán vị khoá mã cho Như độ dài khoá 26 số khoá có 26!  Mã dịch vòng: Giả sử: với , ta định nghĩa: Mã hóa: Giải mã:  Mã thay Cho chứa hoán vị 26 kí hiệu 0,1, …, 25 Mỗi khóa phép hoán vị Khi độ dài rõ đủ lớn, sử dụng phương pháp thống kê để thám mã Nó hệ mã đơn biểu ghi nhớ khóa khó khăn  Mã Affine Trường hợp đặc biệt khác mã thay mã Affine Nhận xét: Do khoảng trống xuất nhiều văn bản, nên mã hóa nên mã hóa khoảng trống để giảm số lần xuất  Mật mã cũi lợn Sử dụng hình tượng khác không nằm bảng ký tự -7thay cho ký tự 1.5.1.2 Hệ mật mã thay đa biểu Yếu điểm mã phương pháp đơn biểu phân bố tần suất chúng phản ánh phân bố bảng chữ sở Một hướng khác làm tăng độ an toàn cho mã bảng chữ sử dụng nhiều bảng chữ để mã hoá Làm để trải băng tần suất xuất chữ mã  Mật mã Hill Là hệ mật thay đa biểu khác gọi mật mã Hill Mật mã LesterS.Hill đưa năm 1929  Hệ mật Vigenère Sử dụng phép tương ứng mô tả trên, ta gắn cho khoá K chuỗi ký tự có độ dài , gọi từ khoá Mật mã Vigenère mã hoá đồng thời ký tự: phần tử rõ tương đương với ký tự Nhận xét:Ta thấy rằng, số từ khoá với độ dài mật mã Vigenere 26 Bởi vậy, chí với nhỏ, phương pháp tìm kiến vét cạn yêu cầu thời gian lớn Ví dụ, với = không gian khoá có kích thước lớn 3.108 khoá 1.5.1.3 Các hệ mật thay không tuần hoàn Phép lý tưởng dùng hiều bảng chữ để không nhận diện phân bố mẫu suốt việc lựa chọn bảng chữ điểm cụ thể Điều xảy văn mã số bảng không hạn chế  Hệ mật khoá chạy Lý tưởng ta có khoá dài tin Vigenere đề xuất khoá tự động sinh cho độ dài tin sau  Hệ mật Vernam (OTP) One-TimePad (OTP), phát minh năm 1917 GilbertVernam, kỹ sư làm việc BellLabs thuộc AT&T Khi côngtrình CommunicationTheoryofSecrecySystems củaClaudeShann on công bố rộng rãi đặt móng cho lý thuyết mật mã đại lần đưa định nghĩa toán học khái niệm an toàn chứng minh OTP an toàn theo định nghĩa -81.5.2 Các hệ mật hoán vị Ta xét MTT, chữ rõ thay bảng chữ chữ khác mã Bây xét đến loại mã khác, mã hoán vị (MHV), chữ rõ không thay chữ khác mã thay đổi vị trí, tức việc mã hoá dịch chuyển vị trí tương đối chữ rõ 1.5.3 Hệ mật mã tích Một phát minh khác Shannon đưa báo năm 1949 ý tưởng kết hợp hệ mật cách tạo tích chúng Ý tưởng có tầm quan trọng to lớn việc thiết kế hệ mật (chu n mã liệu - DES) 1.5.4 Hệ mã dòng Trong hệ mật nghiên cứu trên, phần tử liên tiếp rõ mã hoá khoá Tức xâu mã nhận có dạng: ( ) ( ) Các hệ mật thuộc dạng thường gọi mã khối 1.5.5 Chuẩn mã liệu DES Mô tả đầy đủ DES nêu Công bố số 46 chu n xử lý thông tin Liên bang (Mỹ) vào 15.1.1977 DES mã hoá xâu bit rõ độ dài 64 khoá 54 bit Bản mã nhận xâu bit có độ dài 64 Trước hết ta mô tả mức cao hệ thống 1.5.6 Ưu nhược điểm mật mã khóa bí mật 1.5.6.1 Ưu điểm  Mật mã khóa bí mật có mô hình đơn giản, tức yêu cầu phần cứng không phức tạp, dễ dàng tạo thuật toán mã hóa  Mật mã khóa bí mật có tính hiệu tốc độ mã hóa giải mã cao, thông thường tốc độ mã (số bit đầu mã hóa với số bit đầu vào) thời gian tính toán nhanh Từ ưu điểm cho thấy mật mã cổ điển dễ sử dụng cho dịch vụ nhạy cảm với độ trễ dịch vụ di động 1.5.6.2 Nhược điểm  Với mật mã khóa bí mật phải dùng kênh an toàn để truyền khóa, việc tạo khóa giữ bí mật khóa phức tạp Khi làm việc -101.6.1 Ưu nhược điểm hệ mật mã khoá công khai 1.6.1.1 Ưu điểm: - Đơn giản việc bảo vệ, lưu trữ sinh khóa - Dễ tạo dịch vụ an toàn khác, tiền đề cho đời chữ ký điện tử phương pháp chứng thực điện tử 1.6.2.2 Nhược điểm: - Do thân hệ mật mã khoá công khai dựa vào giả thiết liên quan đến toán khó, phức tạp (với trường số lớn phần cứng phức tạp) nên đa số hệ mật mã có tốc độ mã dịch không nhanh - Một vấn đề nảy sinh sử dụng hệ mật mã khóa công khai việc xác thực, khoá mã công khai công bố cách công khai mạng (không sử dụng kênh an toàn) việc đảm bảo “khoá công bố có đối tượng cần liên lạc hay không?” kẽ hở bị lợi dụng - Hiệu không cao 1.7 HÀM BĂM 1.7.1 Định nghĩa Hàm băm thuật toán không sử dụng khóa để mã hóa (ở ta dùng thuật ngữ “băm” thay cho “mã hóa”), có nhiệm vụ “lọc” (băm) thông điệp đưa vào theo thuật toán chiều đó, đưa băm – văn đại diện – có kích thước cố định 1.7.1.1 Tính chất hàm băm Việc đưa hàm băm vào dùng sơ đồ chữ ký số không làm giảm an toàn sơ đồ chữ ký số tóm lược thông báo – đại diện cho thông điệp - ký thông điệp gốc Tính chất 1: Hàm băm h không va chạm yếu Hàm phải thỏa mãn tính không va chạm yếu: Hàm băm h không va chạm yếu cho trước điện x, tiến hành mặt tính toán để tìm điện mà h(x’) = h(x) Tính chất 2:Hàm băm h không va chạm mạnh -11Hàm băm không va chạm mạnh khả tính toán để tìm hai thông điệp x x’mà h(x) = h(x’) Tính chất 3: Hàm băm hàm chiều:Hàm băm chiều cho trước tóm lược thông báo thực mặt tính toán để tìm thông điệp ban đầu cho h(x) = z 1.7.1.2 Phân loại hàm băm Hàm băm phân thành loại chính: - Các hàm băm không khóa MDC - Các hàm băm có khóa MAC 1.8 CHỮ KÝ SỐ Để chứng thực nguồn gốc tài liệu người ta thường ký trực tiếp lên tài liệu gọi chữ ký tay Tuy nhiên ngày với phát triển thương mại điện tử, việc sử dụng chữ ký tay trực tiếp trở thành rào cản đối không phù hợp với giao dịch điện tử Chữ ký số phải có khả chứng thực cho tài liệu số Để làm điều người ta sử dụng hàm băm để tạo chữ ký số có độ dài thích hợp thỏa mãn điều kiện chữ ký số “ký” bít tài liệu số đại diện đặc chưng cho tài liệu gốc 1.9 KẾT LUẬN CHƢƠNG Trong nội dung chương 1, luận văn tập trung tìm hiểu vấn đề chung hệ mật mã hàm băm: phân tích cách thức mã hóa giải mã hệ mã khóa bí mật khóa công khai từ thấy ưu nhược điểm hệ mật mã; đưa khái niệm tổng quan hàm băm chữ ký số, yêu cầu với hệ mật mã đại -12CHƢƠNG 2: BÀI TOÁN LOGARIT RỜI RẠC VÀ MỘT SỐ HỆ MẬT LIÊN QUAN 2.1 GIỚI THIỆU CHƢƠNG Các hệ mật khóa công khai xây dựng dựa toán chiều (5 toán bản), toán tính thuận dễ tính theo chiều ngược lại khó Bài toán logarit rời rạc toán điển hình dùng để xây dựng số hệ mật mã Một hệ mật áp dụng để xây dựng hệ mật mã lai ghép chương 2.2 CƠ SỞ TOÁN HỌC 2.2.1 Số nguyên Tập số nguyên * +  Định nghĩa 2.1: Cho ∈ , ước cho Ký hiệu  Định nghĩa 2.2: ước chung  Định nghĩa 2.3: (ước chung lớn - UCLN): Số nguyên dương d UCLN số nguyên hiệu ( )) nếu:  d ước chung a b  Nếu c|a c|b c|d  Định nghĩa 2.4 (bội chung nhỏ - BCNN): Số nguyên dương d BCNN hai số nguyên ( ) nếu: hiệu   Nếu a|c b|c d|c ∈ a b (Ký a b (Ký 2.2.2 Các số nguyên MODULO N  Định nghĩa 2.8: Cho số nguyên dương, hai số nguyên gọi đồng dư với theo modulo (được ký hiệu ) nếu: ( )  Định nghĩa 2.9: Các số nguyên modulo (ký hiệu ) tập +, phép cộng, trừ, nhân số nguyên * thực theo modulo n -132.2.3 Nhóm nhân  Định nghĩa 2.12: [1] Nhóm nhân * ∈ +, trường hợp số nguyên tố ( ) * + Các thặng dƣ bậc hai [1]:  Định nghĩa 2.16: Phần tử ∈ gọi thặng dư bậc theo modulo n ∈ Gọi tập thặng dư bậc ̅̅̅̅ tập thặng dư không bậc 2.2.4 Vành  Định nghĩa 2.17: [6] Một vành ( ) xác định với hai toán tử kí hiệu (cộng), (nhân), thỏa mãn tiên đề sau: (i) ( ) nhóm Abelian ( ) ( ) (ii) , với ∈ (iii) Với , ta có: , cho ∈ ( ) ( ) ( ) (iv) Tính phân phối, ) ( ) ( ( ), với ∈ 2.2.5 Trường  Định nghĩa 2.19: [6] Một trường vành giao hoán tất yếu tố khác có tính nghịch đảo 2.3 BÀI TOÁN LOGARIT RỜI RẠC VÀ MỘT SỐ PHƢƠNG PHÁP GIẢI 2.3.1 Bài toán logarit trƣờng số thực R Bài toán thuận: ∈ , việc tính toán hàm mũ thực dễ dàng thuật toán nhân bình phương Bài toán ngược: , việc tính toán hàm ngược logarit khó khăn nhiều so với hàm thuận 2.3.2 Bài toán logarit rời rạc Về mặt lý thuyết toán logarit rời rạc trường hữu hạn toán logarit rời rạc đường cong Elliptic trường hữu hạn coi ý tưởng khác mặt kỹ thuật toán học mà 2.3.2.1 Định nghĩa toán logarit rời rạc Giả sử nhóm cyclic hữu hạn có cấp Gọi phần tử sinh phần tử khác thuộc Khi logarit rời rạc -14theo sở , ký hiệu với cho , số nguyên 2.3.2.2 Tóm tắt toán Logarit trường hữu hạn GF(p) ( ) Bài toán thuận: ∈ Bài toán ngược: ∈ ( ) * + 2.3.3 Một số thuật toán giải toán logarit rời rạc 2.3.3.1 Thuật toán vét cạn Đây thuật toán tự nhiên hiệu để tính Logarit rời rạc Người ta thử tất khả xem khả nghiệm toán cần giải [6] 2.3.3.2 Thuật toán bước lớn bước nhỏ (Baby-stepGiant-Step) Giả sử [√ ]với cấp Thuật toán bước lớn bước nhỏ thoả hiệp thời gian nhớ phương pháp vét cạn dựa quan sát sau    x chúng viết x  im  j với  i , j  m Từ  x   im j hay  (  m ) i   j Vậy nên người ta lập bảng j ( j ,  ) với  j < m 2.3.3.3 Thuật toán  Pollard Đây thuật toán ngẫu nhiên với thời gian chạy thuật toán bước lớn bước nhỏ không cần đến không gian lưu trữ nhiều Thuật toán thực giống hình chữ với điểm xuất phát chân chữ vòng tròn phía thuật toán rơi vào chu trình Chính mà gọi thuật toán  Pollard nghĩ 2.3.3.4 Thuật toán Pohlig-Hellman Thuật toán tận dụng lợi phân rã cấp n nhóm G Giả sử phân rã n  p1e p2 e pr e phân rã nguyên tố n Nếu x  log   cách tiếp cận xác định xi  x mod pi e với  i  r sau sử dụng thuật toán Gauss làm việc với định lý phần dư Trung Hoa để tìm x mod n r i -15Khi biết trước phân rã n thời gian chạy thuật toán Pohlig-Hellman O (  r ei (log n  p i ) phép toán nhóm i 1 Thuật toán thực hiệu ước lượng nguyên tố tương đối nhỏ số nguyên mịn 2.3.3.5 Thuật toán tính số (Index-Calculus) Thuật toán tính số thuật toán mạnh biết, đem công toán logarit rời rạc Không phải nhóm áp dụng thuật toán tính số áp dụng cho thời gian chạy hàm tiểu mũ (a) Tính số GF(p) Đối với trường GF(p) với số nguyên tố sở phân tích chọn t số nguyên tố (b) Tính số GF(2n) Các phần tử trường hữu hạn biểu diễn thành đa thức , - có bậc cao n – với phép nhân thực modulo đa thức bất khả quy ( ) có bậc n , - 2.4 MỘT SỐ HỆ MẬT XÂY DỰNG TRÊN BÀI TOÁN LOGARIT RỜI RẠC 2.4.1 Hệ mật Pohlig-Hellman Bài toán logarit rời rạc toán khó, toán lũy thừa rời rạc lại không khó (có thể tính thuật toán nhân bình phương) Thuật toán mã hóa Pohlig-Hellman sử dụng lũy thừa modulo Đối với thuật toán mã hóa giá trị chọn nguyên tố lớn Thuật toán mã hóa Pohlig-Hellman nên dùng thuật toán mã hóa khóa bí mật thông thường d dễ dàng xác định từ e p Thậm chí p giữ bí mật, suy từ khối mã 2.4.2 Hệ mật Omura-Massey Áp dụng toán logarit rời rạc vào hệ mật Omura – Massey * Cho Z p với số nguyên tố, trước tiến hành trao đổi tin tức B nhận khóa công khai từ mạng -162.4.3 Hệ mật ElGamal Thuật toán ElGamal thay cho RSA để mã hóa khóa công khai: 1) Độ bảo mật RSA phụ thuộc vào khó khăn việc phân tích số nguyên tố lớn 2) Độ bảo mật thuật toán ElGamal phụ thuộc vào khó khăn việc tính toán ghi rời rạc modulo nguyên tố lớn 2.5 KẾT LUẬN CHƢƠNG Trong chương 2, luận văn tập trung tìm hiểu vấn đề chung toán mật mã hoá công khai Đưa phân tích số phương pháp giải toán logarit rời rạc áp dụng vào xây dựng số hệ mật Logarit rời rạc toán khó (chưa biết thuật toán hiệu nào), với: Kích thước khóa nhỏ; Sự an toàn phía trước hoàn hảo (giao thức trao đổi khóa dựa toán logarit rời rạc đạt an toàn phía trước hoàn hảo), ngăn ngừa kẻ thù giải mã thông tin qua; Thuật toán đa dạng: lược đồ dựa logarit rời rạc cung cấp thay cho toán phân tích có nguồn gốc từ RSA thuật toán bảo mật khác mà phụ thuộc vào độ khó toán phân tích thừa số Để xây dựng nhiều hệ mật có độ bảo mật cao -17CHƢƠNG 3: XÂY DỰNG MỘT HỆ MẬT LAI GHÉP 3.1 GIỚI THIỆU CHƢƠNG Xây dựng hệ mật lai ghép sử dụng hệ mật PohligHellman dựa toán logarit rời rạc kết hợp với sơ đồ Feistel đánh giá tính khuếch tán hệ 3.2 LƢỢC ĐỒ FEISTEL Trong mật mã cổ điển, việc sử dụng riêng phép hoán vị thay không đảm bảo độ mật cần thiết Nhà mã hóa HorstFeistel IBM đề nghị việc xây dựng loại mật mã khối, đồng thời sử dụng liên tiếp toán tử chuyển vị toán tử thay thế, để nhận độ an toàn cao so với loại mật mã ứng dụng riêng biệt toán tử, ứng dụng Luciphercipher 3.2.1 Mô hình mã Feistel Giả thiết mật mã khối biến đổi bit văn rõ thành khối văn mã có độ dài Số lượng khối khác 2n Bản rõ mã chia thành nửa trái nửa phải: ( ) ( ) Thuật toán mã hóa vòng sau: { ( ) khóa cho vòng thứ Khóa sinh từ khóa ban đầu theo thuật toán sinh khóa (keyschedule): hàm mã hóa dùng chung cho tất vòng Hàm đóng vai trò phép thay việc hoán đổi nửa trái phải có vai trò hoán vị -18Bản rõ LE0 Bản rõ LD16 = LE0 RD16 = RE0 RE0 K1 F F K1 LE1 RE1 LD15 = RE1 RD15 = LE1 K2 F F K2 LE2 RE2 LD14 = RE2 RD14 = LE2 LE14 RE14 LD2 = RE14 RD2 = LE14 K15 F F K15 LE15 LD1 = RE15 RD1 = LE15 RE15 K16 F F RE16 K16 LE16 Bản mã a) LD0 = RE16 RD0 = LE16 Bản mã b) Hình 3.2 Mã hóa (a) giải mã (b) Feistel 16 vòng -193.2.2 Ưu nhược điểm mật mã Feistel 3.2.2.1 Ưu điểm  Quá trình mã hóa giải mã tương tự nhau, khác thứ tự khóa con, điều tiết kiệm nửa tài nguyên thực thuật toán phần cứng  Hàm chọn với độ khó bất kỳ, tìm hàm nghịch 3.2.2.2 Nhược điểm  Vì vòng mã thực biến đổi nửa khối liệu, nên cần số vòng mã hóa lớn để đảm bảo độ an toàn, điều làm giảm đáng kể tốc độ mã  Ngoài xây dựng sở mạng Feistel tồn lớp khóa tương đương, nên làm không gian khóa giảm nửa 3.3 XÂY DỰNG MỘT HỆ MẬT MÃ KHỐI LAI GHÉP Trong phần trình bày hệ mật khóa bí mật, sử dụng sơ đồ Feistel lược đồ mã hóa hàm mà hóa sơ đồ Feistel sử dụng hệ mật Pohlig- Hellman Hệ mật mã khối mã hóa 64 bit liệu rõ đầu vào cho 64 bit mã hóa, khóa bí mật có độ dài 128 bit Sơ đồ khối chung hệ mật hình vẽ sau: Bản rõ M (64 bit) Mã hóa Bản mã C (64 bit) Khóa bí mật K (128 bit) Hình 3.3 Sơ đồ khối hệ mật Trong sơ đồ xây dựng hệ mật, lược đồ Feistel cần sử dụng làm cho hệ mật PoligHellman Sơ đồ mã hóa cho chuỗi bit dài 64 bit Thuật toán tiến hành theo giai đoạn: 1) Với rõ cho trước xâu bit xây dựng cách hoán vị bit theo phép hoán vị ban đầu IP: ( ) gồm 32 bit đầu 32 bit cuối 2) Sau thực vòng mã hóa theo thuật toán sau: -20{ ( ) Áp dụng hoán vị ngược cho xâu bit , ta mã ( ) Các bảng hoán vị hoán vị ngược tính theo hệ mật DES  Bản rõ M (64 bit) IP L0(32 bit) Hoán vị ban đầu R0(32 bit) e1 f L1(32 bit) m1 R1(32 bit) e2 f L2(32 bit) m2 R2(32 bit) e3 f L3(32 bit) m3 R3(32 bit) e4 f L4(32 bit) m4 R4(32 bit) IP-1 Hoán vị đảo Bản mã C (64 bit) Hình 3.5 Sơ đồ mã hóa hệ mật -21Các khóa vòng mã hóa trích chọn từ khóa ban đầu (128 bit) Cách đơn giản chia 128 bit khóa thành khối 32 bit tương ứng với khóa , mô tả hình 3.5 3.4 ĐÁNH GIÁ TÍNH KHUẾCH TÁN CỦA HỆ MẬT LAI GHÉP Các phần mô tính toán độ khuếch tán hệ mật thực phần mềm Matlab V.8.1 Tiến hành tính toán độ khuếch tán thay đổi liệu rõ thay đổi khóa bí mật , với thông số chọn sau: Bản rõ gồm 64 bit chọn biễu diễn dạng hexa sau [5]: gồm 128 bit(32 số hexa) chọn sau: Khóa bí mật Khoảng cách Hamming trung bình (hay độ khuếch tán) 64 lần thay đổi bit rõ mã tính theo công thức sau: ) Trường hợp 1: hàm mã hóa ( ∑ ( ) ( ) Trường hợp 2: hàm mã hóa f ( mi , ei )  ei ( ∑ ) ( mi mod p ) ) Khoảng cách Hamming trung bình mã so với mã ban đầu thay đổi bit khóa từ bit đến bit 128 tính theo công thức: ( ) ∑ ( ) Với hai trường trường hợp hàm mã hóa tính sau: Với trường hợp 1: ( ) Và trường hợp 2: ( ) Nhận xét: Một yêu cầu đánh giá hệ mật tính khuếch tán đầura Chỉ với vòng mã hóa hệ mật đạt độ -22khuếch tán tốt, ưu điểm đáng ý hệ mật 3.5 KẾT LUẬN CHƢƠNG Hệ mật mã lai ghép đề xuất báo bao gồm hai phép mã hóa phép hoán vị (các bảng IP IP-1 sơ đồ Feistel), phép mũ rời rạc theo hệ mật Pohlig-Hellman Hệ mật có số ưu điểm sau: (a) Hàm mã hóa thực toán logarit rời rạc nên hệ mật có tính phi tuyến, với độ dài khóa bí mật 128 bit nên hệ mật đạt độ an toàn định (b) Do sử dụng sơ đồ Feistel nên mạch mã hóa giải mã tương tự thuận lợi cho việc thiết kế mạch phần cứng (c) Để hệ mật có độ khuếch tán đạt khoảng nửa độ dài từ mã thìhệ mật cần bốn vòng mã hóa điều làm tăng đáng kể tốc độ mã hóa Với ưu điểm hệ mật, ta nhận thấy hệ mật phù hợp để ứng dụng vào lưu đồ thực hàm băm không khóa (MDC) Trong khuôn khổ luận văn đề cập đến tính khuếch tán hệ mật, để đánh giá hoàn chỉnh hệ mật cần có thêm mô tính toán phép công khác lên hệ mật -23- KẾT LUẬN VÀ KIẾN NGHỊ Luận văn đưa sở lý thuyết mật mã học hệ mật khóa bí mật hệ mật khóa công khai Nghiên cứu toán chiều sâu nghiên cứu toán logarit rời rạc thuật toán giải số hệ mật điển hình áp dụng toán Nghiên cứu vào lược đồ Feistel hệ mật PohligHellman từ ứng dụng xây dựng hệ mật lai ghép dựa toán logarit rời rạc  Các kết luận văn có : - Nghiên cứu toán logarit rời rạc trường hữu hạn - Nghiên cứu số thuật giải toán logarit rời rạc - Xây dựng hệ mật mã lai ghép sử dụng hệ mật Pohlig Hellman - Bước đầu đánh giá đặc tính hệ mật lai ghép tính khuếch tán  Kiến nghị hướng nghiên cứu : - Ngoài hệ mật Pohlig Hellman dùng hệ mật khác dựa toán logarit để xây dựng hệ mật mã Tìm hiểu thực thêm phương pháp đánh giá hệ mật để đánh giá hệ mật toàn diện -24- TÀI LIỆU THAM KHẢO Tiếng Việt: [1] Nguyễn Bình (2004), Giáo trình Mật mã học, Học viện Công nghệ Bưu Viễn thông, Nxb Bưu điện, 2004 [2] Nguyễn Bình (2008), Giáo trình Lý thuyết thông tin, Học viện Công nghệ Bưu Viễn thông, Nxb Bưu điện, 2008 [3] Ngô Đức Thiện, Nguyễn Toàn Thắng, (2013), Một phương pháp xây dựng hệ mật mã khối theo sơ đồ Lai-Massey khả ứng dụng vào hàm băm, Tạp chí KH&CN, Viện Hàn lâm Khoa học Công nghệ Việt Nam, tập 51, số 4A-2013 [4] Ngô Đức Thiện, Đặng Hoài Bắc, A method of building a crypto system based on unbalanced Feistel network and its application in hash functions, Tạp chí Nghiên cứu khoa học công nghệ quân sự, ISSN 1859-1043, 2014 [5] Nguyễn Toàn Thắng, Ngô Đức Thiện (2015), Về Một Phương Pháp Xây Dựng Hệ Mật Mã Lai Ghép, Hội thảo Quốc Gia Điện tử, Truyền thông Công nghệ thông tin (ECIT-2015), Hồ Chí Minh, 12/2015 Tiếng Anh: [6] Menezes A J, Van Oorchot P C (1998), Handbook of Applied Cryptography, CRC Press, (1998) [7] Schneier B (1996), Applied Cryptography, JohnWileyPress, 1996 [8] Stinson D R (1995), Cryptography: Theory and Practice, CRC Press, 1995 [9] Pascal JUNOD (2005), Statistical Cryptanalysis of Block Ciphers, Thèse N0 3179, Insitute de systèmes de communication, Ècole Polytechnique Fédérale de Lausanne, 2005 [...]... vào lược đồ Feistel và hệ mật PohligHellman từ đó ứng dụng xây dựng hệ mật lai ghép dựa trên bài toán logarit rời rạc  Các kết quả của luận văn có được : - Nghiên cứu bài toán logarit rời rạc trên trường hữu hạn - Nghiên cứu một số thuật giải bài toán logarit rời rạc - Xây dựng một hệ mật mã lai ghép sử dụng hệ mật Pohlig Hellman - Bước đầu đánh giá một đặc tính của hệ mật lai ghép là tính khuếch tán... với hệ mật mã hiện đại -12CHƢƠNG 2: BÀI TOÁN LOGARIT RỜI RẠC VÀ MỘT SỐ HỆ MẬT LIÊN QUAN 2.1 GIỚI THIỆU CHƢƠNG Các hệ mật khóa công khai được xây dựng dựa trên các bài toán một chiều (5 bài toán cơ bản), các bài toán này khi tính thuận thì dễ nhưng tính theo chiều ngược lại thì rất khó Bài toán logarit rời rạc là một bài toán điển hình được dùng để xây dựng một số hệ mật mã Một trong những hệ mật này... bảo mật khác mà phụ thuộc vào độ khó của bài toán phân tích thừa số Để xây dựng nhiều hệ mật có độ bảo mật cao -17CHƢƠNG 3: XÂY DỰNG MỘT HỆ MẬT LAI GHÉP 3.1 GIỚI THIỆU CHƢƠNG Xây dựng một hệ mật lai ghép sử dụng hệ mật PohligHellman dựa trên bài toán logarit rời rạc kết hợp với sơ đồ Feistel và đánh giá tính khuếch tán của hệ này 3.2 LƢỢC ĐỒ FEISTEL Trong mật mã cổ điển, việc sử dụng riêng các phép... MỘT SỐ PHƢƠNG PHÁP GIẢI 2.3.1 Bài toán logarit trên trƣờng số thực R Bài toán thuận: ∈ , việc tính toán hàm mũ này có thể được thực hiện dễ dàng bằng thuật toán nhân và bình phương Bài toán ngược: , việc tính toán hàm ngược logarit này sẽ khó khăn hơn nhiều so với hàm thuận 2.3.2 Bài toán logarit rời rạc Về mặt lý thuyết thì bài toán logarit rời rạc trên trường hữu hạn và bài toán logarit rời rạc trên. .. vòng mã hóa nhưng hệ mật đã đạt độ -22khuếch tán rất tốt, đây chính là một ưu điểm đáng chú ý của hệ mật này 3.5 KẾT LUẬN CHƢƠNG Hệ mật mã lai ghép như đề xuất trong bài báo bao gồm hai phép mã hóa là phép hoán vị (các bảng IP và IP-1 trong sơ đồ Feistel), và phép mũ rời rạc theo hệ mật Pohlig-Hellman Hệ mật này có một số ưu điểm sau: (a) Hàm mã hóa được thực hiện trên bài toán logarit rời rạc nên hệ mật. .. khuếch tán của hệ mật, để đánh giá hoàn chỉnh hơn về hệ mật này cần có thêm các mô phỏng tính toán các phép tấn công khác nữa lên hệ mật -23- KẾT LUẬN VÀ KIẾN NGHỊ Luận văn đã đưa ra cơ sở lý thuyết mật mã học các hệ mật khóa bí mật và hệ mật khóa công khai Nghiên cứu các bài toán một chiều và đi sâu nghiên cứu bài toán logarit rời rạc các thuật toán giải và một số hệ mật điển hình áp dụng bài toán này... Độ bảo mật của thuật toán ElGamal phụ thuộc vào khó khăn trong việc tính toán các bản ghi rời rạc trong một modulo nguyên tố lớn 2.5 KẾT LUẬN CHƢƠNG Trong chương 2, luận văn tập trung tìm hiểu các vấn đề chung nhất về các bài toán cơ bản trong mật mã hoá công khai Đưa ra và phân tích một số phương pháp giải bài toán logarit rời rạc và áp dụng vào xây dựng một số hệ mật Logarit rời rạc là bài toán khó... dụng hệ mật Pohlig- Hellman Hệ mật mã khối này sẽ mã hóa 64 bit dữ liệu bản rõ đầu vào và cho ra 64 bit mã hóa, khóa bí mật có độ dài 128 bit Sơ đồ khối chung của hệ mật như hình vẽ sau: Bản rõ M (64 bit) Mã hóa Bản mã C (64 bit) Khóa bí mật K (128 bit) Hình 3.3 Sơ đồ khối của hệ mật Trong sơ đồ xây dựng hệ mật, lược đồ Feistel cần bằng được sử dụng làm nền cho hệ mật PoligHellman Sơ đồ này sẽ mã hóa... RẠC 2.4.1 Hệ mật Pohlig-Hellman Bài toán logarit rời rạc là bài toán khó, trong khi bài toán lũy thừa rời rạc lại không khó (có thể tính bằng thuật toán nhân và bình phương) Thuật toán mã hóa Pohlig-Hellman sử dụng lũy thừa modulo Đối với thuật toán mã hóa giá trị được chọn là một nguyên tố lớn Thuật toán mã hóa Pohlig-Hellman nên được dùng như thuật toán mã hóa khóa bí mật thông thường vì d rất dễ dàng... biết một thuật toán hiệu quả nào), với: Kích thước khóa nhỏ; Sự an toàn phía trước hoàn hảo (giao thức trao đổi khóa dựa trên bài toán logarit rời rạc có thể đạt được sự an toàn phía trước hoàn hảo), do đó ngăn ngừa được kẻ thù giải mã thông tin đã qua; Thuật toán đa dạng: các lược đồ dựa trên logarit rời rạc cung cấp một sự thay thế cho bài toán phân tích có nguồn gốc từ RSA và các thuật toán bảo mật

Ngày đăng: 02/12/2016, 03:27

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan