Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
290,35 KB
Nội dung
HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THƠNG - Lê Thị Nguyệt ỨNG DỤNG MAPLE TRONG AN TỒN THƠNG TIN VỚI MẬT MÃ KHĨA CƠNG KHAI Chun ngành: Kỹ thuật điện tử Mã số: 60.52.70 TÓM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI – NĂM 2013 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: GS.TS Nguyễn Bình 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 tại: - Thư viện Học viện Cơng nghệ Bưu Viễn thơng BẢNG TĨM TẮT LUẬN VĂN ỨNG DỤNG MAPLE TRONG AN TỒN THƠNG TIN VỚI MẬT MÃ KHĨA CƠNG KHAI MỞ ĐẦU Các hệ mã công khai ELGAMAL, ELIPTIC thực tính tốn với số ngun lớn hàng trăm chữ số Độ phức tạp việc giải mã hệ mã tỉ lệ thuận với độ lớn số nguyên tham gia vào việc tạo khóa mã hóa khóa cơng khai Do để hệ mã an tồn, cần tăng kích thước số nguyên Mặt khác, kích thước số nguyên cần xử lý lớn thời gian xử lý chương trình mã hóa tăng lên Thơng tin cần mã hóa ngày đa dạng có khối lượng lớn, đòi hỏi hệ mã giảm thiểu thời gian xử lý Các công cụ giải thuật nhằm bẻ khóa hệ mật mã cải tiến địi hỏi hệ mã cần nâng cấp tính bảo mật Tuy nhiên, việc nghiên cứu triển khai nâng cấp việc tối ưu hóa mặt thuật tốn ngơn ngữ lập trình mạnh hệ mã cịn hạn chế Để hỗ trợ giải vấn đề trên, đề tài tập trung vào việc ứng dụng số thuật tốn tối ưu ngơn ngữ lập trình bậc cao nhằm tăng hiệu phép tính tốn thực với số ngun lớn Từ tính cấp thiết vấn đề tối ưu hóa hệ mã công khai, đồng thời hướng dẫn gợi ý GS.TS Nguyễn Bình tơi chọn đề tài cho luận văn tốt nghiệp Cao học ngành kỹ thuật điện tử là: “Ứng dụng Maple an tồn thơng tin với mật mã khóa cơng khai” Cấu trúc đề tài gồm: Phần mở đầu; phần nội dung; phần kết luận; tài liệu tham khảo; Nội dung đề tài: - Chương 1: Tổng quan hệ mật khóa công khai - Chương 2: Ngôn ngữ Maple định hướng ứng dụng an tồn thơng tin - Chương 3: Ứng dụng Maple mật mã khóa cơng khai Trong suốt trình nghiên cứu, cố gắng chắn đề tài không tránh khỏi thiếu sót, mong q thầy góp ý để đề tài hoàn chỉnh 2 Chương TỔNG QUAN VỀ HỆ MẬT KHĨA CƠNG KHAI 1.1 Một số khái niệm mã hóa 1.1.1 Khái niệm chung mật mã Hệ mật mã đại thường gồm thành phần (P, C, K, E, D) đó: P (Plaintext) tập hợp hữu hạn rõ (khơng gian rõ) C (Ciphertext) tập hợp hữu hạn mã (không gian mã) K (Key) tập hợp khố E (Encrytion) tập hợp qui tắc mã hố D (Decrytion) tập hợp qui tắc giải mã Nội dung cần mã hóa thể dạng rõ (P) Người gửi sử dụng qui tắc (E) khóa (K) mã hố rõ (P), kết thu gọi mã E k (P) = C Bản mã gửi đường truyền tới người nhận, sau nhận mã (C) người nhận sử dụng qui tắc (D) khóa (K) giải mã để hiểu nội dung thông điệp gốc D k (C) = P 1.1.2 Những yêu cầu hệ mật mã đại Hệ mật mã đại cần đảm bảo hai yêu cầu sau: - Đảm bảo tính bảo mật - Đảm bảo tính xác thực 1.1.3 Các phương pháp mã hóa 1.1.3.1 Hệ thống mã hóa đối xứng 1.1.3.2 Hệ thống mã hóa bất đối xứng Hệ thống mã hóa bất đối xứng hay cịn gọi mã hóa với khóa cơng khai Martin Hellman, Ralph Merkle Whitfield Diffie thuộc Đại học Stanford giới thiệu vào năm 1976 3 Hệ mã áp dụng kết toán học khắc phục hạn chế phương pháp mã hóa khóa đối xứng Phương pháp mã hóa bất đối xứng sử dụng hai loại khóa cặp khóa: Khóa cơng khai (public key) cơng bố rộng rãi sử dụng để mã hóa thơng điệp, khóa riêng (private key) chủ thể nắm giữ sử dụng để giải mã thông điệp mã hóa khóa cơng khai B n mã B n rõ Mã hóa Gi i mã Khóa mã Khóa gi i B n rõ Hình 1.2 Sơ đồ hoạt động mã hóa khóa bất đối xứng Khi thực mã hóa bất đối xứng, người A sử dụng khóa cơng khai người B tạo để mã hóa thơng điệp gửi cho người B Do biết khóa riêng nên B giải mã thơng điệp mà A mã hóa Trong trường hợp mã bị người thứ ba có được, kết hợp với thơng tin khóa cơng khai cơng bố, khó có khả giải mã mã khoảng thời gian chấp nhận khơng nắm khóa riêng B Khóa cơng khai khóa riêng có quan hệ tốn học với theo nghĩa từ khóa riêng tính tốn để suy khóa cơng khai, để từ khóa cơng khai suy khóa riêng phức tạp số lượng phép tính toán lớn dẫn đến thời gian thực để giải mã không khả thi chiều dài khóa đủ lớn Đây mấu chốt vấn đề bảo mật công hệ mã khóa cơng khai Đề tài đề cập đến vấn đề an tồn hệ mã cơng khai Nghiên cứu đưa giải pháp hỗ trợ làm tăng tính an tồn hệ mã cách cố gắng áp dụng thuật toán xử lý nhanh với số lớn Từ tăng chiều dài khóa mà đảm bảo yếu tố thời gian mã hóa giải mã chấp nhận 1.2 Cơ sở toán học mật mã 1.2.1 Hàm phi Euler 1.2.2 Lý thuyết đồng dư thức 1.2.3 Không gian Z n 1.2.4 Nhóm nhân Z n * 1.2.5 Thặng dư 1.2.6 Căn bậc hai Modulo 1.2.7 Các thuật tốn Z n 1.2.8 Thuật tốn kiểm tra tính nguyên tố 1.3 Giới thiệu hệ mật với khóa cơng khai 1.3.1 Hệ mật khóa cơng khai RSA 1.3.2 Hệ mật mã khóa cơng khai ELGAMAL 1.3.2.1 Thuật tốn tạo khố Tóm lược: Mỗi đầu liên lạc tạo khố cơng khai khố bí mật tương ứng : (1) Tạo số nguyên tố p lớn phần tử sinh nhóm nhân Z*p số nguyên mod p (2) Chọn số nguyên ngẫu nhiên a, a p tính a mod p (3) Khố cơng khai số p , , a , khố bí mật a 1.3.2.2 Thuật Tốn Mã Hố Khóa Cơng Khai ElGamal Tóm lược: B mã hố thơng tin báo m để gửi cho A mã cần gửi Mã hoá: B phải thực bước sau: (1) Nhận khố cơng khai p , , a A (2) Biểu thị tin dạng số nguyên m dải 0 ,1 , , p 1 (3) Chọn số nguyên ngẫu nhiên k, k p (4) Tính k mod p m a k mod p (5) Gửi mã c , cho A Giải mã: Để khôi phục rõ m từ c, A phải thực bước sau: (1) Sử dụng khoá riêng a để tính p 1 a mod p (Chú ý p 1 a a ak ) (2) Khôi phục rõ cách tính a mod p 1.3.3 Hệ mật mã khóa cơng khai đường cong Elliptic Chương NGÔN NGỮ MAPLE VÀ ĐỊNH HƯỚNG ỨNG DỤNG TRONG AN TỒN THƠNG TIN 2.1 Giới thiệu phần mềm Maple 2.1.1 Giới thiệu chung Maple đời vào khoảng năm 1980, đến phát triển đến phiên 15.x không ngừng phát triển Maple có cách cài đặt đơn giản, chạy hầu hết hệ điều hành, có cấu trúc linh hoạt để sử dụng tối ưu cấu hình máy đặc biệt có trình trợ giúp dễ sử dụng Maple có đặc điểm bật sau: - Tính tốn số, tính tốn ký hiệu nhanh dễ hình dung, người sử dụng vào biểu thức tốn học theo ký hiệu truyền thống Có thể tạo giao diện người sử dụng; - Dễ sử dụng, tìm phần trợ giúp Help chương trình Internet; - Có khả mở rộng: dễ dàng tích hợp chức xác định để tính toán ứng dụng đặc biệt; - Được hầu hết hệ điều hành hỗ trợ ( MS Windows, Linux, Unix, Mac OS); - Ngơn ngữ lập trình mạnh, dễ gỡ rối Maple tích hợp ngơn ngữ lập trình dạng mệnh lệnh tương tự với Pascal, cho phép biến đổi phạm vi mềm dẻo Maple có giao diện cho ngôn ngữ khác C, C#, Fortran, Java, Matlap, Visual Basic Nó có giao diện với Excel; - Có thể mở rộng thư viện hàm tốn học gói đặc biệt; Có hai giao diện tương tác dịng lệnh mơi trường đồ thị Những phần Maple: Maple gồm có phần, giao diện, nhân (bộ phận tính toán bản) thư viện Giao diện nhân lập nên phần nhỏ hệ thống, chúng viết ngơn ngữ lập trình C tải đến phiên Maple bắt đầu Giao diện nhận đầu vào biểu thức toán học, hiển thị đầu ra, vẽ đồ thị hàm số hỗ trợ người sử dụng liện lạc khác với hệ thống Môi trường giao diện trang làm việc Maple Trang làm việc Maple tài liệu mềm dẻo để khai thác ý tưởng toán học để tạo báo cáo kỹ thuật phức tạp Có thể tiếp cận đến sức mạnh máy tính tốn Maple thơng qua nhiều giao diện người sử dụng như: trang làm việc chuẩn, phiên dòng lệnh, trang làm việc cổ điển, ứng dụng Maple khách thể hóa Hệ thống Maple đầy đủ sẵn sàng thông qua tất giao diện Các giao diện chuẩn giao diện tính tốn viết Java, giao diện cổ điển viết C Nhân giải thích đầu vào người sử dụng, thực phép toán đại số giải vấn đề quản lý lưu trữ Thư viện gồm hai phần thư viện tuyển tập gói Thư viện gồm nhiều hàm mà có hầu hết kiến thức tốn học phổ biến Maple chúng mã hóa ngơn ngữ Maple Mỗi gói chứa lệnh đặc biệt để thực nhiệm vụ riêng khác nhau, từ tính tốn sinh viên đến lý thuyết tương đối tổng quát Hầu hết chức Maple thực thư viện số NAG, thư viện ATLAS thư viện GMP Hầu hết thư viện viết ngôn ngữ Maple trường hợp này, xem mã nguồn mở chúng 2.1.2 Những hiểu biết trước vận dụng Mapple 2.2 Các ký hiệu phép toán Maple 2.2.1 Các ký hiệu phép toán số học, logic, quan hệ 2.2.2 Các số, hàm số 2.2.3 Các thủ tục Module 2.3 Các đầu vào đầu 2.3.1 Đọc tệp 2.3.2 Ghi liệu lên tệp 2.3.3 Xuất Worksheets 2.4 Những nội dung Maple dùng nhiều mật mã 2.4.1 Các cấu trúc đại số 2.4.2 Các gói thống kê Chương ỨNG DỤNG MAPLE TRONG MẬT MÃ KHĨA CƠNG KHAI Trong chương 1, phần 1.3 ta nói cách xúc tích mặt lý thuyết hệ mật Elgamal hệ mật đường cong Elliptic, đưa bước thuật tốn tạo khóa, mã hóa giải mã Sang đến chương với cách trình bày ngắn gọn phần mềm Maple đưa hàm hay sử dụng ngôn ngữ Maple mật mã toán học Trong chương 3, với sở lý thuyết chương chương thiết lập thuật tốn ngơn ngữ Maple với hai hệ hệ ELGAMAL hệ mật đường công ELLIPTIC 3.1 Sử dụng hệ mật ELGAMAL 3.1.1 Thuật tốn tạo khóa * Chương trình tìm số ngun tố * Chương trình tìm phần tử sinh * Chương trình tìm số mũ bí mật a * Chương trình tìm khóa cơng khai 3.1.2 Thuật tốn mã hóa 3.1.3 Thuật toán giải mã 3.2 Sử dụng hệ mật đường cong Elliptic Định nghĩa: cho p > số nguyên tố Đường cong elliptic E (Z p ): y2 = x3 + ax +b Z p tập nghiêm (x,y) ϵ Z p xZ p đồng dư thức y2 ≡ x3+ax+b (mod p) Trong đó: a,b ϵ Z p số thỏa mãn 4a3 + 27b mod p với điểm đặc biệt O gọi điểm vô hạn Các điểm đường cong elliptic trở thành nhóm Abel với việc xác định phép tốn thích hợp điểm Ta xét trường hợp đường cong elliptic E xác định Z p Giả sử P x1 , y1 , Q x , y điểm nhóm E p a, b , O điểm vô cực Các quy tắc phép cộng nhóm E p a , b sau: (1) P + O = O + P = P (2) Nếu x x1 y y1 tức P x1 , y1 Q x , y x1 , y1 P P + Q = (3) x 2 x1 x mod p y x1 x y1 mod p Trong đó: Nếu Q P tổng P Q x , y cho bởi: y y1 x x 22 x1 a y1 P Q P Q * Chương trình thực phép cộng điểm * Chương trình thực tính 2*P: * Chương trình thực tính k*P: * Chương trình liệt kê điểm đường cong elliptic * Chương trình tín bậc điểm * Sơ đồ trao đổi khóa KẾT LUẬN Các kết đạt Đề tài bước đầu đưa giải pháp để xử lý phép toán số học với số lớn hệ mã cơng khai dựa sở tốn học tính tốn độ an tồn hệ mã cơng khai Các kết nghiên cứu ứng dụng bước đầu thực mục đích đề tài Bằng việc tối ưu hóa phép xử lý tính tốn phức tạp hệ mã cơng khai minh chứng hệ mã cụ thể hệ Elgamal hệ mật đường cong Elliptic Chương trình hồn thiện cần có đầu tư nhiều mặt thời gian cơng sức Đề tài tiếp tục phát triển để đem lại ứng dụng đáp ứng yêu cầu thực tế Hướng phát triển đề tài Các kết đề tài áp dụng nhiều hệ mã công khai khác tiếp tục cải tiến để có tốc độ thực thi tốt Các kết áp dụng nhiều hệ thống bảo mật, thực giao dịch mạng, thực tạo xác thực chữ ký điện tử ngơn ngữ lập trình mạnh Tác giả mong muốn tiếp tục phát triển để đưa kết nghiên cứu vào ứng dụng thực tế 9 ... đề tài: - Chương 1: Tổng quan hệ mật khóa cơng khai - Chương 2: Ngôn ngữ Maple định hướng ứng dụng an tồn thơng tin - Chương 3: Ứng dụng Maple mật mã khóa cơng khai Trong suốt q trình nghiên cứu,... giữ sử dụng để giải mã thơng điệp mã hóa khóa cơng khai B n mã B n rõ Mã hóa Gi i mã Khóa mã Khóa gi i B n rõ Hình 1.2 Sơ đồ hoạt động mã hóa khóa bất đối xứng Khi thực mã hóa bất đối xứng, người... chế phương pháp mã hóa khóa đối xứng Phương pháp mã hóa bất đối xứng sử dụng hai loại khóa cặp khóa: Khóa cơng khai (public key) công bố rộng rãi sử dụng để mã hóa thơng điệp, khóa riêng (private