phần mở đầu, 3 chương chính, kết luận và tài liệu tham khảo, cụ thể: Phan mé dau: Neu ly do chon dé tài và bố cục luận văn Chuong 1: TONG QUAN HE MAT MA Trong chương này giới thiệu tổng quan về hệ mật mã; hệ mật mã khóa không công khai; hệ mật mã khóa công khai; các kiến thức cơ sở về lý thuyết số. Chương 2: HỆ MẬT MÃ RABIN VÀ HỆ MẬT MÃ RSA Trong chương này giới thiệu về 2 hệ mật Rabin và RSA bao gồm: Cơ sở toán học; mô tả; quá trình tạo khóa, mã hóa và giải mã. Chương 3: SO SÁNH 2 HỆ MẬT MÃ Trong chương này đánh giá, so sánh về 2 hệ mật Rabin và RSA bao gồm : độ phức tạp của thuật toán; độ an toàn; tốc độ mã hóa; chạy chương trình thực nghiệm và đưa ra nhận xét về khả năng và các ứng dụng trong thực tế của 2 hệ mật mã. Phân kết luận: Tóm tắt các kết quả đạt được và hướng phát triển tiếp của đề tài 4 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.vn CHUONG 1: TONG QUAN MAT MA 1.
Tổng quan hệ mật mã 1. Các khái niệm - Mật mã là ngành khoa học nghiên cứu việc ứng dụng toán học vào biến đổi thông tin nhằm mục đích bảo vệ thông tin khỏi sự truy cập của những người không có thâm quyền. - Hệ mật mã được định nghĩa là một bộ năm (P, C, K, E, D), trong do: 1. P là tập hữu hạn các các bản rõ có thể 2.
C tập hữu hạn các bản mã có thé 3. K 1a tap hiru han cdc khod cé thé 4. € là tập các hàm lap ma 5. 7 là tập các hàm giải mã.
Với mỗi k € ?#, có một hàm lập mã ex € E, eg: —> C và một hàm giải mã đ¿ € D, dk: C — P sao cho dk (ex (x)) =x, Vx EP - Mã hóa: là quá trình chuyển thông tin có thể đọc được (gọi là bản rõ) thành thông tin “khó” thể đọc được theo cách thông thường (gọi là bản mã).Đó là một trong những kỹ thuật dé bảo mật thông tin. - Giải mã: là quá trình chuyên thông tin ngược lại từ bản mã thành bản rõ. - Thuật toán mã hóa hay giải mã là thủ tục để thực hiện mã hóa hay giải mã. 5 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.vn - Khóa mã hóa là một giá trị làm cho thuật toán mã hóa thực hiện theo cách riêng biệt và sinh ra bản rõ riêng.
Thông thường khóa càng lớn thì bản mã càng an toàn. Phạm vi các giá trị có thê có của khóa được gọi là “không gian khóa”. - Hệ mã hóa là tập các thuật toán, các khóa nhằm che giấu thông tin, cũng như làm rõ nó. Lịch sử hình thành và phát triển Mật mã học là một ngành có lịch sử từ hàng nghìn năm nay, xuất hiện đồng thời với sự xuất hiện của chữ viết (khoảng 4000 năm trước).
Thuật ngữ “cryptography — mật mã” dịch từ tiếng Hy Lạp có nghĩa là “chữ viết bí mật”. Trong phần lớn thời gian phát triển của mình (ngoại trừ vài thập kỷ trở lại đây), lịch sử mật mã học chính là lịch sử của những phương pháp mật mã học cô điền - các phương pháp mật mã hóa với bút và giấy, đôi khi có hỗ trợ từ những dụng cụ cơ khí đơn giản. Vào đầu thế kỷ 20, sự xuất hiện của các cơ cấu cơ khí và điện cơ, chăng hạn như máy Enigma, đã cung cấp những cơ chế phức tạp và hiệu quả hơn cho việc mật mã hóa. Sự ra đời và phát triển mạnh mẽ của ngành điện tử và máy tính trong những thập kỷ gần đây đã tạo điều kiện đề mật mã học phát triển nhảy vọt lên một tâm cao mới.
Sự phát triển của mật mã học luôn luôn đi kèm với sự phát triển của các kỹ thuật phá mã (hay thám mã). Các phát hiện và ứng dụng của các kỹ thuật phá mã trong một số trường hợp đã có ảnh hưởng đáng kê đến các sự kiện lịch sử. Cho tới đầu thập kỷ 1970, các kỹ thuật liên quan tới mật mã học hầu như chỉ nằm trong tay các chính phủ. Hai sự kiện đã khiến cho mật mã học trở nên thích hợp cho mọi người, đó là: sự xuất hiện của tiêu chuẩn mật mã hóa DES và sự ra đời của các kỹ thuật mật mã hóa khóa công khai.
6 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.vn - Các giai đoạn phát triển: Mật mã học cô đại Mật mã học trung cô Mật mã học từ 1800 tới Thế chiến II Mật mã học trong Thế chiến II Mật mã học hiện đại 1. Các loại hình tấn công 1. Xem trộm thông tin Trường hợp người dùng T chặn các thông điệp của A gửi cho B, và xem được nội dung của thông điệp này. Thay đồi nội dung thông điệp Người dùng T chặn các thông điệp của A gửi cho B và ngăn không cho các thông điệp này đến B.
Kế tiếp T thay đối nội dung của thông điệp và lại gửi thông điệp đó cho B, khi đó B, mà B không hề biết là thông điệp đó đã bị thay đổi 1. Mạo danh người gửi Ví dụ T giả làm là A gửi thông điệp cho B. B không biết điều này và nghĩ rằng thông điệp là của A gửi cho mình. Phát lại thông điệp Ví dụ trường hợp T sao chép lại hoàn toàn thông điệp mà A gửi cho B bằng các công cụ chụp các packet.
Sau một thời gian xữ lý T lại gửi bản sao chép này cho B va B tin do la thong điệp chính B gửi vì nó giống thông điệp cũ. Cách tấn 7 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.vn công này nhìn qua có vẽ không ảnh hưởng gì đối với B, nhưng ta xét ví dụ tiếp sau: B là nhân viên ngân hang A 1a khách hàng cần thanh toán. A gửi thông điệp đề nghị B chuyển cho T 10000$. A đã áp dụng các biện pháp an toàn thông tin như dùng chữ ký điện tử phòng trường hợp T thay đổi nội dung hoặc xem nội dung như các cách tấn công trên.
Nhưng lần này T lại dùng cách khác đó là sao chép và phát lại thông điệp này thì các biện pháp bảo vệ, phòng tránh trên đều không thể chống lại được. B luôn tin rằng A đã gửi tiếp một thông điệp mới (kế tiếp) để chuyên thêm cho Trudy 10000$ nữa, và như vậy ta đã biết tách dụng của cách tấn công này.Trong nhiều trường hợp cũng gây ra tác hại không kém so với việc giả mạo thông điệp. Các chức năng cơ bản của mật mã hiện đại 1. Đảm bảo tính bí mật (confidentiality) — giải quyết van dé bảo vệ thông tin chống lại sự tìm hiểu nội dung thông tin từ các đối tượng không có quyền truy nhập chúng.
Thuật ngữ sự bí mật (secrecy) hoặc sự riêng tư (privacy) cũng đồng nghĩa voi confidentiality. Đảm bảo tính toàn vẹn dir liéu (data integrity) — dam bao kha nang phat hiện sửa đổi trái phép thông tin. Đề đảm bảo toàn vẹn đữ liệu, cần có các phương pháp đơn giản và tin cậy phát hiện bat kỳ sự can thiệp không mong muốn vào dữ liệu (các can thiệp như chèn, xóa và thay thế trong ban tin). 8 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.
Đảm bảo sự xác thực (authentication) — chức năng này có liên hệ với sự dinh danh (identification). Vì thế nó được thực hiện xác thực trên cả thực thé (hai đối tượng trong một phiên liên lạc sẽ định danh lẫn nhau) và bản thân thông tin (thông tin được truyền trên kênh truyền sẽ được xác thực về nguồn sốc, nội dung, thời gian gửi,. Vì thế vấn đề xác thực trong mật mã được chia thành hai lớp chính — xác thực thực thể (identity authentication) và xác thực nguồn gốc dữ liệu (data origin authentication). Đảm bảo chống sự từ chối (non-repudiation) — chức năng ngăn ngừa một thực thể từ chối (phủ nhận) một cam kết hoặc hành động trước đó.
Hệ mã khóa đối xứng - Mã hóa đối xứng (mã hóa không công khai-symmetric-key algorithms) 1a lớp thuật toán các mã hóa trong đó việc mã hóa và giải mã đều dùng chung cho 1 khóa (secret key).1 Các loại thuật toán khóa đối xứng Thuật toán đối xứng có thể được chia ra làm hai thể loại, mật mã luồng (stream ciphers) và mật mã khối (block ciphers). Mật mã luồng mã hóa từng bit của thông điệp trong khi mật mã khối gộp một số bit lại và mật mã hóa chúng như một đơn vị. Cỡ khối được dùng thường là các khối 64 bit. Thuật toán tiêu chuẩn mã hóa tân tiến (Advanced Encryption Standard), được NIST công nhận tháng 12 năm 2001, sử dụng các khối gồm 128 bit.
Các thuật toán đối xứng thường không được sử dụng độc lập. Trong thiết kế của các hệ thống mật mã hiện đại, cả hai thuật toán bất đối xứng (asymmetric) 9 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.vn 10 (dùng chìa khóa công khan) và thuật toán đối xứng được sử dụng phối hợp để tận dụng các ưu điểm của cả hai. Những hệ thống sử dụng cả hai thuật toán bao gồm những cái như SSL(Secure Sockets Layer), PGP (Pretty Good Privacy) va GPG (GNU Privacy Guard) v. Cac thuat toan khéa bắt đối xứng được sử dụng dé phân phối khóa mật cho thuật toán đối xứng.
Một số ví dụ các thuật toán mã hóa khóa đối xứng nổi tiếng khá được tôn trọng bao gồm: Twofish, Serpent, AES (còn được gọi là Rijndael), Blowfish, CASTS, RC4, Tam phần DES (Triple DES) va IDEA (International Data Encryption Algorithm — Thuat toán mật mã hóa dữ liệu quốc tế). Tốc độ Các thuật toán đối xứng nói chung đòi hỏi công suất tính toán ít hơn các thuật toán khóa bất đối xứng (asymmetric key algorithms). Trên thực tế, một thuật toán khóa bất đối xứng có khối lượng tính toán nhiều hơn gap hang tram, hằng ngàn lần một thuật toán khóa đối xứng (symmetric key algorithm) có khối lượng tương đương. Hạn chế Hạn chế của các thuật toán khóa đối xứng bắt nguồn từ yêu cầu về sự phân phối chìa khóa bí mật, mỗi bên phải có một bản sao của chìa.
Do khả năng các chìa khóa có thể bị phát hiện bởi đối thủ mật mã, chúng thường phải được bảo an trong khi phân phối và trong khi dùng. Hậu quả của yêu cầu về việc lựa chọn, phân phối và lưu trữ các chìa khóa một cách không có lỗi, không bị mất mát là một việc làm khó khăn, khó có thể đạt được một cách đáng tin cậy. 10 Số hóa bởi Trung tam Hoc ligu— DHTN _ http://www.