Xuất phát từ nhu cầu nghiên cứu và phát triển các hệ thống bảo mật ứng dụng trong trao đổi thông tin nói chung và thương mại hay thư tín điện tử nói riêng, luận văn nghiên cứu phân tích
Trang 1TRƯỜNG ĐẠI HỌC BÁCH KHOA
Trang 2ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
Cán bộ hướng dẫn khoa học: Tiến sĩ Phạm Hồng Liên
Cán bộ chấm nhận xét 1: Tiến sĩ Dương Hoài Nghĩa
Cán bộ chấm nhận xét 2:
Luận văn thạc sĩ được bảo vệ tại HỘI ĐỒNG CHẤM LUẬN VĂN THẠC SĨ TRƯỜNG ĐẠI HỌC BÁCH KHOA, ngày 27 tháng 04 năm 2004
Trang 3NHIỆM VỤ LUẬN VĂN THẠC SĨ
I TÊN ĐỀ TÀI: An toàn và bảo mật thông tin trên mạng Xây dựng ứng dụng Mail Client
II NHIỆM VỤ VÀ NỘI DUNG
Tìm hiểu, nghiên cứu và đánh giá các thuật toán mật mã hoá từ cổ điển đến hiện đại Nghiên cứu việc ứng dụng các lý thuyết này trong thương mại điện tử, bảo vệ thông tin trên mạng Tìm hiểu các giao thức thư tín điện tử để xây dựng ứng dụng bảo mật trên đó
III NGÀY GIAO NHIỆM VỤ: 25/10/2003 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 15/03/2004
V HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN: Tiến sĩ Phạm Hồng Liên
Nội dung và đề cương luận văn thạc sĩ đã được Hội Đồng Chuyên Ngành thông qua
Họ tên học viên: Nguyễn Thành Sơn Ngày tháng năm sinh: 19/05/1975 Chuyên ngành: Kỹ thuật Vô tuyến Điện tử
Phái: Nam Nơi sinh: Tỉnh Bến Tre Mã số ngành: 02.07.01
Trang 4LỜI CẢM TẠ
Kính đến quý Thầy Cô trường Đại học Bách Khoa TpHCM lòng biết ơn sâu sắc, đã dìu dắt tôi từ bước đường Đại học đến Cao học
Luận văn này sẽ không hoàn tất nếu không có công lao to lớn của Tiến sĩ Vũ Đình Thành và Tiến sĩ Lê Tiến Thường (ĐH Bách Khoa TpHCM), những nhận xét xác đáng của Tiến sĩ Trần Đan Thư và sự giúp đỡ của Tiến sĩ Đồng Thị Bích Thuỷ (Khoa CNTT, ĐH KHTN TpHCM), Đặc biệt, Tiến sĩ Phạm Hồng Liên trực tiếp chỉ dẫn một cách tận tình
Thầy Cô không những cho tôi kiến thức khoa học mà còn cho cả tri thức sống Tôi nguyện mãi ghi lòng
Xin cảm ơn Ba Mẹ, Bạn Bè đã giúp đỡ động viên tôi trong suốt quá trình nghiên cứu
Nguyễn Thành Sơn
Trang 5Từ xưa đến nay, con người luôn có những bí mật riêng tư cần giấu kín Hơn nữa, trong thời đại công nghệ phát triển, các dữ liệu luôn di chuyển trên mạng trong quá trình trao đổi, việc bảo mật thông tin là vấn đề vô cùng quan trọng An toàn và bảo mật hệ thống thông tin không những cần thiết đối với lĩnh vực quân sự mà còn trong hầu hết các lĩnh vực khác như chính trị, kinh tế, thương mại
Thiết lập chế độ bảo mật trong mạng nhằm ngăn chặn thông tin bị mất đi do khách quan, chủ quan hay bị tấn công có chủ ý một cách bất hợp pháp Trong hệ thống thông tin, các vấn đề này hoàn toàn bất lợi cho người sử dụng Bảo mật mạng diện rộng trở thành vấn đề cấp thiết liên quan đến hầu hết các công ty trên khắp thế giới Thiệt hại lớn nhất là các lỗ hổng bảo mật, nó sẽ là khe hở để xuyên thủng hệ bảo mật của mạng riêng, có thể tiếp cận vào nguồn tài nguyên của hệ thống
Khi một mạng riêng kết nối vào
Human usually has some private problems which are needed to be kept secret from ancient time to the present Furthermore, living in the information period, protection of secret data is very important because data are always traffic on the network Therefore, safety and security in information system is not only needed in the field of military but also all of fields such as politic, economy, electronic commerce etc
The security measures implemented in networks are designed to prevent both accidental, intentional loss and illegal attacks These problems, especially in information systems, are quite bad for user Internet security has become a major concern to companies throughout the world The biggest disadvantage has come in the form of breaching of security that means there are information and resources available that access it possible to penetrate the security of a particular network
When one connects of private
Trang 6kỹ thuật khác nhau, xâm nhập vào mạng riêng của bất kể người nào, lấy đi bất cứ thông tin gì mà họ cần, ngay cả khi họ không được cấp quyền hạn
Từ đó xuất hiện thuật ngữ “hacker-tội phạm máy tính” trong giới IT, chỉ những người không đủ quyền hạn nhưng lại cố gắng truy xuất vào hệ thống máy tính nhằm mục đích đánh cấp hoặc phá hỏng dữ liệu
Chúng ta làm gì để ngăn chặn sự tấn công bất hợp pháp của kẻ trộm này? Xuất phát từ nhu cầu nghiên cứu và phát triển các hệ thống bảo mật ứng dụng trong trao đổi thông tin nói chung và thương mại hay thư tín điện tử nói riêng, luận văn nghiên cứu phân tích và đánh giá hầu hết các thuật toán của ngành khoa học mật mã từ cổ điển đến hiện đại một cách chi tiết, bao gồm hai mô hình mật mã hoá (khoá đối xứng và bất đối xứng), mô hình chứng thực, phương pháp kiểm tra tính toàn vẹn của dữ liệu, chữ ký số Thêm vào đó học viên đã
have opened the doors to some people to develop techniques that would enable them to enter the network of other people and retrieve whatever information they require, even an unauthorized user
All this has given rise to a term known in the IT world as hackers This term is now being used for individuals who gain unauthorized access to computer systems for the purpose of stealing or corrupting data
I wonder me what do we do to prevent illegal attacks from these thieves? From the local needs of studying and developing of security systems to apply into exchanging-information generally and e-mail or e-commerce particularly, the thesis aims to study, analyze and estimate all of important of canonical or modern cryptography in detail such as two types of encryption model (asymmetric and symmetric), entity authentication models, data integrity checking methods, digital signature models I have just made a new
Trang 7các mô hình hiện tại Cuối cùng, ứng dụng các lý thuyết mật mã học và giao thức thư tín điện tử trên, luận văn xây dựng chương trình ứng dụng gửi nhận thư điện tử với độ an toàn cao bằng ngôn ngữ Java Hi vọng luận án này sẽ là tài liệu tham khảo tốt giành cho những người bắt đầu nghiên cứu lĩnh vực mật mã học đầy khó khăn nhưng cũng không kém phần hấp dẫn trong điều kiện thị trường sách trong nước về khoa học này vẫn còn bỏ ngỏ
model with many advantages Finally, by applying cryptography theory and understanding about email protocols above, I have just built a mail client application on Java language programming with high level security I hope my thesis becomes a good reference document for cryptographer beginner, difficult and attractable field, while still leaving the book market opening in Vietnam!
Nguyễn Thành Sơn
Trang 8Lời cảm tạ Tóm tắt – Abstract Mục lục
Danh sách chữ viết tắt Danh mục các hình
MỞ ĐẦU
I Đặt vấn đề 2
II Giải pháp thực hiện và mục tiêu đạt được 5
III Tài liệu tham khảo 8
Phần 1: LÝ THUYẾT CƠ SỞ Chương 1: Cơ sở toán học 12
I Một số định nghĩa toán cơ bản liên quan đến mật mã học 13
II Một số định lý 13
III Một số thuật toán 13
1 Thuật toán Euclidean 13
2 Thuật toán Extended Euclidean (Euclidean mở rộng) 14
3 Thuật toán sinh số nguyên tố ngẫu nhiên 16
3.1 Thuật toán Fermat 17
3.2 Thuật toán Solovay-Strassen 17
3.3 Thuật toán Miller-Rabin 18
Trang 91 Các thuật toán cổ điển khoá đối xứng 32
2 Các thuật toán hiện đại khoá đối xứng 32
2.1 Thuật toán DES 32
2.2 Thuật toán 3DES 48
2.3 Thuật toán RC5 51
2.4 Thuật toán RC6 59
2.5 Thuật toán cải tiến RC6-I,-NFR, -I-NSR 69
2.6 Thuật toán MARS 69
2.7 Thuật toán Rijndael 69
III Thuật toán mã hoá công khai 82
1 Thuật toán LUC 82
2 Thuật toán Merkle-Hellman 82
3 Thuật toán McEliece 82
4 Thuật toán RSA 82
5 Thuật toán Elgamal 86
6 Thuật toán Advanced Elgamal (học viên xây dựng) 90
PHẦN 2: AN TOÀN VÀ BẢO MẬT THÔNG TIN TRÊN MẠNG Chương 1: An toàn và bảo mật trong giao dịch điện tử 98
I Thương mại điện tử dưới góc độ quản lý 100
1 Khái niệm thương mại điện tử 100
2 Lợi ích của thương mại điện tử 102
Trang 103 Tem thời gian (TimeStamping) 117
III Các thuật toán chữ ký số 118
1 Một số thuật toán MAC 127
2 Qui định của NIST cho MAC chuẩn 127
VI Khoá công khai với chứng thực 129
1 Mô hình chứng thực Schnorr 130
2 Chứng thực Guillou-Quisquater 132
3 Kết luận 134
Chương 2: An toàn và bảo mật thông tin trong thư điện tử 136
I Sơ lược về an toàn bảo mật trên mạng 137
1 Các mối đe dọa bảo mật 137
1.1 Tổng quan về an toàn và bảo mật 137
1.2 Một số khái niệm mở đầu 137
2 Tấn công hệ bảo mật 140
II Cấu trúc hệ thống thư điện tử 143
1 Những giao thức mail 143
1.1 SMTP (Simple Mail Transfer Protocol) 144
1.2 Multipurpose Internet mail Extensions 153
1.3 Post Office Protocol 156
2 Hệ thống phân phối mail 160
2.1 Những thành phần trong một hệ thống mail 160
Trang 11III Giải pháp an toàn và bảo mật thông tin trong thư điện tử 168
1 Tổ chức một thông điệp mail dưới dạng mã hoá 168
Trang 12AES Advanced Encryption Standard
Chuẩn mã hoá cao cấp của viện NIST
ANSI American National Standards Institute
Học viện chuẩn hoá quốc gia Mỹ
ATM Automatic Teller Machine
Máy rút tiền tự động CA Certification Authority
Chứng thực CBC Cipher Block Chaining
Khối mật mã theo kiểu mắc xích CFB Cipher FeedBack
Khối mật mã theo kiểu phản hồi DES Data Encryption Standard
Chuẩn mã hoá dữ liệu của NIST DSA Digital Signature Algorithm
Thuật toán chữ ký số DSS Digital Signature Standard
Chuẩn chữ ký số ECB Electronic CodeBook
Tập luật điện tử FIPS Federal Information Processing Standard
Chuẩn xử lý thông tin liên bang của Mỹ MD Message Digest
Dữ liệu thu gọn (sau khi băm) ISO International Standardizations Organization
Tổ chức chuẩn hoá quốc tế
MAC Message Authentication Code
Mã chứng thực thông điệp
Trang 13Trạm giao nhận thông điệp với người dùng
NIST National Institute of Standard and Technology
Học viện chuẩn hoá và công nghệ quốc gia (của Mỹ)
OFB Output FeedBack
Khối mật mã theo kiểu phản hồi đầu ra PPP Point-to-Point Protocol
Giao thức điểm nối điểm (trong WAN) SHA Secure Hash Algorithm
Thuật toán băm an toàn SHS Secure Hash Standard
Chuẩn băm an toàn TCP Transmission Control Protocol
Giao thức điều khiển truyền dẫn thông dụng
TDES Triple Data Encryption Standard
Thuật toán mã hoá DES 3 lần (3DES) TTP Trusted Third Party
Thành phần tin cậy thứ ba
UUCP Unix-to-Unix Copy Protocol
Giao thức truyền nhận thông điệp trên Unix
Trang 14Hình 3.2: Quá trình mã hoá và giải mã tổng quát trên khối mật mã đối xứng 24
Hình 3.3: Mô hình mật mã hoá - giải mã khoá bí mật 25
Hình 3.4: Mô hình mật mã hoá- giải mã khoá công khai 52
Hình 3.14: Mô hình các phép tính bên trong hàm f(Ri-1,Ki) 41
Hình 3.15: Sơ đồ giải mã DES 42
Hình 3.16: Quá trình mã hoá và giải mã DES theo cơ chế ECB 43
Hình 3.17: Quá trình mã hoá và giải mã DES theo cơ chế CBC 44
Hình 3.18: Quá trình mã hoá và giải mã DES theo cơ chế CFB 45
Hình 3.19: Quá trình mã hoá và giải mã DES theo cơ chế OFB 46
Hình 3.20: Mô hình thuật toán 3DES 49
Hình 3.21: Sơ đồ mã hoá theo thuật toán RC5 54
Hình 3.22: Độ an toàn của RC5 64 bit ứng với các vòng lặp khác nhau 58
Hình 3.23: Cấu trúc mã hóa 64
Hình 3.24: Vòng thứ i 65
Hình 3.25: Bảng tổng kế chi phí thám mã RC6 68
Hình 3.26: Quá trình nhập xuất dãy State 71
Hình 3.27: Lưu đồ quá trình mã hoá Rijndael 76
Hình 4.1: Mô hình tổng quát thuật toán băm 104
Hình 4.2: Mô hình tem thời gian trong chữ ký số 118
Trang 15Hình 5.2: Mô hình đối thoại SMTP đơn giản nhất 147
Hình 5.3: Tập lệnh của POP2 158
Hình 5.4: Tập lệnh của POP3 159
Hình 5.5: Sơ đồ hệ thống email phức hợp 161
Hình 5.6: Trao đổi thư tín giữa hai Gateway 162
Hình 5.7: Hệ thống email đơn giản 163
Hình 5.8: Hệ thống email thường sử dụng 164
Hình 5.9: Mô hình email hai domain 164
Hình 6.1: Giao diện chính của chương trình 180
Hình 6.2: Giao diện soạn thư 182
Hình 6.3: Giao diện khai báo tài khoản người dùng 183
Hình 6.4: Giao diện tạo khoá công khai 184
Trang 16Mục I: Đặt vấn đề từ yêu cầu thực tiễn nêu bật vấn đề tuy nhỏ
mà không nhỏ hiện còn bỏ ngõ
Mục II: Giải pháp thực hiện và mục tiêu đạt được trình bày
sơ lược cách giải quyết vấn đề và kết quả đạt được khi hoàn tất
Mục III: Tài liệu tham khảo giúp người đọc tìm hiểu sâu kiến
thức khi cần
Trang 17I ĐẶT VẤN ĐỀ
Trong môi trường xã hội phát triển như ngày nay, nhu cầu trao đổi thông tin là rất lớn Kể từ khi mạng máy tính ra đời, khoảng cách địa lý không còn là vấn đề nan giải trong truyền thông Thông tin có thể truyền từ nơi nguồn đến đích chỉ trong khoảnh khắc bất chấp vị trí địa lý
Thư điện tử ra đời với nhiều ưu điểm gần như thay thế hoàn toàn hệ thống thư tín cổ điển Thương mại điện tử ra đời phá vỡ cơ cấu giao dịch trước đây vì hệ thống cũ bộc lộ quá nhiều khuyết điểm Mọi vấn đề đều có thể giải quyết thông qua mạng
Việc trao đổi thông tin diễn ra chủ yếu trên môi trường mạng Những sai sót nhỏ trong bảo mật có thể gây hậu quả nghiêm trọng Do vậy các giải pháp bảo vệ dữ liệu khi truyền dẫn trên mạng cũng như dữ liệu đang lưu trữ là vấn đề không ngừng được nghiên cứu và đưa vào ứng dụng
An toàn và bảo mật là hai vấn đề khá rộng, nó bao hàm sự ngăn chặn việc đọc trộm và thay đổi nội dung bên trong cũng như cố tình phá hoại thông tin hay những sự cố ngoài ý muốn làm mất dữ liệu
Các thông tin mật trong quân sự, các hợp đồng ký kết mua bán qua mạng, tài khoản giao dịch trên mạng là những thông tin vô cùng nhạy cảm Các tin tặc thường lợi dụng các lỗ hổng bảo mật trong hệ điều hành để đột nhập vào hệ thống thực hiện các ý đồ đen tối làm thiệt hại cho người sử dụng mạng
E-mail ngày nay thật thân thích với mọi người, nó là một công cụ truyền thông giữa người với người một cách nhanh chóng, tiện lợi và rẻ tiền E-mail có thể làm tốt truyền gửi nhiều định dạng dữ liệu: âm thanh, hình ảnh Nhưng một vấn đề đặt ra đó là sự bảo mật thông tin truyền trong email Có thể sử dụng các kỹ thuật nghe lén như “Packet sniffer” để đọc trộm nội dung thư khi di chuyển trên mạng từ nơi gửi đến nơi nhận Thậm chí, khi về đến hộp thư cá nhân trên máy của riêng mình, vấn đề bảo mật coi như bỏ ngỏ Bất kỳ ai khi ngồi lên máy tính này
Trang 18hoặc có thể truy cập từ xa đều xem được nội dung thư tín trước đó Điều này các chương trình mail client chưa quan tâm Nếu các mail này chứa nội dung quan trọng của các tổ chức kinh tế, chính phủ… thì hậu quả và thiệt hại sẽ rất lớn đối với tổ chức sử dụng
Mặt khác, thông tin vẫn có thể bị đánh cắp nếu hacker tấn công thẳng vào các server mail hoặc thông tin bị lấy đi bởi chính người quản trị Server (administrator, webmaster) Điều này làm mất lòng tin đối với nhiều doanh nghiệp, tổ chức khi sử dụng email
Một giải pháp an toàn được đưa ra nhằm đảm bảo gần như 100% thông tin của mail không bị đánh cắp là cần thiết Môi trường mạng phát triển với nhiều ưu điểm, xoá hẳn khoảng cách địa lý và kéo con người trên trái đất lại gần nhau về kinh tế, trình độ văn minh văn hoá, khoa học kỹ thuật Tuy nhiên mặt trái của nó cũng không ít Người ta không ngừng tìm tòi nghiên cứu để giảm dần khiếm khuyết, tăng cường thêm các ưu điểm
Mật mã học không còn là một lĩnh vực mới trên phạm vi thế giới, từ rất sớm người ta đã nghiên cứu và đưa vào ứng dụng các thuật toán mật mã hoá nhằm bảo mật các thông tin Nền tảng của sự phát triển mật mã học ban đầu là ngành số học và ngày nay là ngành toán học rời rạc cùng với các kỹ thuật truyền thông lưu trữ mà ngày nay gọi chung là ngành công nghệ thông tin
An toàn và bảo mật thông tin là nhu cầu vô cùng quan trọng mà hầu hết các ngành các lĩnh vực đều cần đến từ bảo hiểm y tế, giáo dục đến thương mại kinh tế, ngân hàng, quân sự, an ninh quốc phòng Trong bảo hiểm và giáo dục, cần bảo mật thông tin hồ sơ, lý lịch, bệnh án, đề thi Trong thương mại, đặc biệt là thương mại điện tử, thông qua các giao dịch ảo trên mạng nhưng thanh toán thực, trực tuyến qua mạng Internet, cần bảo vệ tài khoản người dùng trong ngân hàng hay chứng thực mang tính pháp lý không thể chối cải trong giao dịch qua mạng Riêng chính phủ điện tử (hiện là đề án 132 cấp thành phố) lại cần quan tâm đến bảo mật ở khía cạnh lưu trữ, bảo vệ các thông tin tài liệu người dùng của cá nhân cũng như các tổ chức xã hội
Trang 19Có thể nói ngành mật mã học trong các thập kỷ qua phát triển rất mạnh cho ra đời nhiều thuật toán, mô hình đa dạng ứng dụng vào nền công nghiệp hiện đại sau khi trải qua thời gian dài chứng minh và kiểm nghiệm Tuy thế, mật mã học là một lĩnh vực khó cần phải có kiến thức nền vững chắc về toán mới có thể tiếp cận được đồng thời nó còn là phạm trù rộng lớn và nhiều mảng liên quan đến nhiều thành phần: mô hình mã hoá thông tin, mô hình chứng thực, mô hình chữ ký số, mô hình kiểm soát tính toàn vẹn của dữ liệu, mô hình quản lý phân phối và trao đổi khoá
Để đảm bảo khả năng phối hợp hoạt động nhịp nhàng của các hệ thống trong vấn đề bảo mật, do tính đa dạng về mô hình và phức tạp về thuật toán, các tổ chức hàng đầu thế giới quy tụ nhiều chuyên gia toán học và mật mã học khắp thế giới đã cùng đưa ra các tiêu chuẩn mật mã hoá cụ thể ứng dụng vào giao dịch thương mại và các công nghiệp (vũ khí, quân sự ) Tổ chức hàng đầu thế giới phải kể đến
là Viện công nghệ và chuẩn hoá quốc gia của Mỹ- NIST (National Intitute of Standards and Technology) Ngoài ra, một số chuẩn về lĩnh vực này (như chữ ký
số) còn được đưa ra bởi các tổ chức chuẩn hoá quen thuộc hàng đầu thế giới như
ISO (International Standards Oganization), ANSI (American National Standards Intitute)
Nước ta đang trong giai đoạn tiếp cận ngành công nghiệp hàng đầu thế giới – Công nghệ thông tin Tuy có nhiều tổ chức, công ty, doanh nghiệp với nhiều dự án xuất khẩu phần mềm, nhưng lĩnh vực an toàn và bảo mật thông tin còn là vấn đề bỏ ngỏ Thậm chí, mảng kiến thức này còn chưa được đưa vào chương trình đào tạo cấp độ đại học cho các sinh viên kỹ thuật (Toán Tin học, Công nghệ Thông tin, Điện tử - Viễn thông), riêng các sinh viên kinh tế và ngoại thương được giới thiệu sơ lược ở góc độ người dùng về “Thương mại điện tử” Hơn ai hết, chính các kỹ sư cử nhân công nghệ thông tin phải nhận trách nhiệm nghiên cứu các giải pháp mềm cho vấn đề bảo mật trên mạng nói chung, hạn hẹp hơn, đó là bảo vệ giao dịch thương mại điện tử và thông tin thông trong các thư tín điện tử hay hợp
Trang 20II GIẢI PHÁP THỰC HIỆN VÀ MỤC TIÊU ĐẠT ĐƯỢC
Với các vấn đề đã đề cập trên, luận văn đề ra mục tiêu nghiên cứu các mảng quan trọng của mật mã học cũng như việc ứng dụng các lý thuyết này vào thực tế mà thế giới đang triễn khai, trong đó có sự cải tiến thuật toán nhằm đạt được độ bảo mật cao hơn Mật mã học rất rộng, luận văn tiến hành nghiên cứu, phân tích, tổng hợp, đánh giá, chọn lọc các mô hình thuật toán mật mã tiên tiến trong phạm vi sau:
- Mật mã hoá thông tin (encyption/encipher): nghiên cứu các thuật toán tiêu biểu của hai mô hình khoá mã bí mật (Private Key) và khoá mã công khai (Public Key)
- Chữ ký số (Digital Signature): phân tích các khía cạnh của chữ ký số như nhu cầu hiện nay, cách thực hiện thông qua các mô hình chữ ký mạnh như: DSS, Elgamal, RSA
- Quản lý khoá (Key management): các phương thức quản lý việc thiết lập khoá bí mật, phân phối khoá, trao đổi khoá giữa các thành viên trong hệ thống nhằm đạt hiệu quả cao nhất về việc sử dụng khoá và chống lại sự việc thám mã trái phép từ phía bên ngoài
- Chứng thực thực thể (Entity Authentication): trình bày các thuật toán và mô hình chứng thực cụ thể Đồng thời đánh giá các ưu nhược điểm của các mô hình và ứng dụng chúng trong thực tế
- Mã chứng thực thông tin và tính toàn vẹn dữ liệu (Data Integrity – Message Authentication Code): xác định thông tin có bị thay đổi so với thông tin nguồn hay không trên môi trường truyền dẫn không an toàn
- Bảo mật trong email: thuật toán đang được sử dụng trong Outlook Express, những ưu điểm hạn chế còn tồn tại Đề xuất giải quyết vấn đề bằng một thuật toán mã khoá công khai cải tiến (đây cũng chính là nội dung chính của đề tài )
Không thể giao phó hoàn toàn cho hệ điều hành trong vấn đề an toàn và bảo mật, một thách thức luôn được đặt ra mà bất kỳ ai khi sử dụng tiện ích mạng đều
Trang 21chịu ảnh hưởng Với thời gian ít ỏi, luận văn sẽ đề cập đến các vấn đề bảo mật thông tin trên mạng thông qua các thuật toán từ cổ điển đến hiện đại, đặc biệt là an toàn và bảo mật trong thư tín (e-mail) và thương mại điện tử (e-com) Tìm hiểu các giao thức trên máy chủ thư tín (mail server) và máy trạm thư tín (mail client) để xây dựng một chương trình gửi và nhận thư tín điện tử sử dụng cho người dùng có độ bảo mật cao Hệ thống học viên xây dựng là một công cụ gửi nhận mail phía client (giống như Outlook, Eudora, Netscape Mail), sử dụng mã hoá theo kỹ thuật khoá công khai Public key Hệ thống này sẽ được trình bày chi tiết ở phần 3, kết quả thông tin được bảo mật gần như tuyệt đối
Một số công trình liên quan đến mật mã học đã được nghiên cứu trong nước của đại học quốc gia Thành phố Hồ Chí Minh như sau:
+ “Một số vấn đề lý thuyết của hệ mã khoá công khai” luận văn thạc sĩ của Thầy Nguyễn Thanh Sơn (năm 1999, khoa Công nghệ Thông tin, trường Đại học Bách Khoa Tp.HCM) bàn về các thuật toán mã hoá cổ điển, chưa đi sâu vào đánh giá ưu khuyết điểm và ứng dụng thuật toán vào thực tế
+ “Mã hoá cơ sở dữ liệu”: luận văn thạc sĩ của Phạm Hồng Nam (năm 2001, trường Đại học Khoa Học Tự Nhiên Tp.HCM) luận văn chỉ dừng lại ở việc bàn đến những khó khăn và nhược điểm của việc mã hóa cơ sở dữ liệu
+ “Nghiên cứu các phương pháp mã hoá và ứng dụng” luận văn cử nhân của Trần Minh Triết và Lương Hán Cơ (năm 2001, trường Đại học Khoa Học Tự Nhiên Tp.HCM) chỉ nghiên cứu tìm hiểu thuật toán Rijndael
+ “Tìm hiểu các cơ chế an toàn và bảo mật trong thương mại điện tử” luận văn thạc sĩ của Trần Hiển Đạt (năm 2002, trường Đại học Khoa Học Tự Nhiên Tp.HCM) nghiên cứu một số thuật toán mật mã và thiết kế giải pháp lý thuyết mua bán thanh toán qua mạng
+ “Nghiên cứu giải thuật mã hoá công khai và cài đặt trên FPGA” luận văn thạc sĩ của Đinh Ngọc Bảo Toàn (năm 2003, trường Đại học Bách Khoa Tp.HCM) nghiên cứu thuật toán mã hoá công khai RSA để hiện thực giải thuật trên FPGA
Trang 22Như đã trình bày ở trên, mật mã học là ngành học rất rộng và theo thời gian đã trở thành một khoa học thực sự Đây là lĩnh vực vô cùng hấp dẫn mang tính trí tuệ, nhất là khi hệ thống mật mã cũ dần dần bị phá vỡ bởi tốc độ phát triển của kỹ thuật vi xử lý, đòi hỏi phải được thay thế bằng các thuật toán có độ bảo mật cao hơn
Nhìn chung các nghiên cứu trên chỉ đi vào một khía cạnh nhỏ của vấn đề vì sự hạn chế về thời gian và độ phức tạp của nó Với khuôn khổ luận văn thạc sĩ, học viên cố gắng trình bày các vấn đề trên theo một phong cách riêng, đi từ tổng quát các khái niệm, nền tảng toán học, tập hợp giới thiệu chi tiết có kèm đánh giá hầu hết các thuật toán và công trình nghiên cứu đã và đang được thế giới quan tâm Đồng thời giới thiệu vị trí ứng dụng trong thực tế của các thuật toán này Cuối cùng đưa ra giải pháp và xây dựng ứng dụng cho vấn đề bảo mật thông tin trong thư điện tử, một vấn đề đang còn bỏ ngỏ
Vì thế, luận văn có thể làm tài liệu tham khảo cho những sinh viên khi tìm hiểu về lĩnh vực mật mã học và an toàn dữ liệu trên mạng
Với mục tiêu trên, luận văn trình bày các chương liên quan mật thiết nhau:
Mở đầu: Tổng quan về đề tài nêu lên thực trạng và hướng giải quyết tổng
thể Khái quát nội dung, giới hạn phạm vi của luận án
Phần 1: Lý thuyết cơ sở gồm 2 chương Chương 1: Cơ sở toán học một số khái niệm toán học liên quan đến lý thuyết mật mã học sẽ được trình bày trong chương này làm tiền đề cho việc nghiên cứu ứng dụng các thuật toán mật mã hoá trong các chương sau Phần này sẽ cung cấp đủ cơ sở toán giúp người đọc tiếp cận dễ dàng với ngành mật mã học nói chung và luận văn nói riêng
Chương 2: Mật mã học bảo mật ra đời ngay sau khi nhu cầu truyền tải dữ
liệu xuất hiện Mục đích cuối cùng là cần bảo vệ các thông tin, chống lại mọi sự xâm phạm bất hợp lệ Trước khi tiến hành thiết kế hệ thống bảo mật, chương này, cung cấp hầu hết các thuật toán mã hoá từ cổ điển đến hiện đại, kèm theo chi tiết đánh giá về độ an toàn, hiệu năng mã hoá, phạm vi ứng dụng của từng thuật toán
Trang 23Người đọc có thể tìm thấy một tài liệu khá đầy đủ về các thuật toán mật mã hoá Ngoài ra, học viên còn xây dựng một mô hình mật mã theo khoá bất đối xứng có tên là Advanced Elgamal với nhiều ưu điểm vượt trội so với các mô hình khác đang ứng dụng trong thực tế
Phần 2: An toàn và bảo mật thông tin trên mạng gồm 2 chương Chương 1: An toàn và bảo mật trong giao dịch điện tử thuật ngữ thương mại điện và chính phủ điện tử có lẽ không còn xa lạ với mọi người, vì nó là phương tiện đã và đang trở thành chiến lược kinh tế của các nước trên thế giới, đặc biệt là các nước đang phát triển như Việt Nam Đó chính là phương cách tốt nhất để rút ngắn khoảng cách kinh tế với các nước trong khu vực và các siêu cường quốc tế Thế nhưng, cho đến thời điểm này (tháng 12/2003), thị trường sách nước ta chưa xuất bản một quyển sách về thương mại điện tử đúng nghĩa của nó Bởi lẽ, thuật ngữ thương mại điện tử cần phải gắn liền với sự an toàn và bảo mật khi giao dịch Xét ở khía cạnh kỹ thuật, cần có cái nhìn sâu vào hệ thống hơn là tạo giao diện đẹp mắt Chương này, sẽ cho ta cái nhìn toàn diện hơn về thương mại điện tử
Chương 2: An toàn và bảo mật thông tin trong thư điện tử dữ liệu lưu trữ
bên trong hệ thống đôi khi không an toàn tuyệt đối do nguyên nhân cả khách quan lẫn chủ quan Như vậy bằng cách nào có thể bảo vệ thông tin mật khi chúng di chuyển trên mạng Internet, một môi trường không tin cậy? Đặc biệt là các thông tin nhạy cảm chứa đựng bên trong các bức thư điện tử? Chương này, ứng dụng lại các kiến thức trong phần 1 và 2, trình bày các vấn đề an toàn và bảo mật trên mạng, đồng thời đưa ra hướng bảo vệ các thư điện tử
Phần 3: Kết quả đạt được và hướng phát triển tổng kết lại những kết quả
đã đạt được đồng thời nêu bật lên vấn đề cần mở rộng trong tương lai của luận án
III TÀI LIỆU THAM KHẢO
Networking with WinNT
Trang 24Network and internetwork security principles and practice
Handbook of Applied Cryptography
[4] Kamlesh Kbaijaj – Debjani Nag, McGraw Hill
Ecommerce the cutting edge of business
Crytography: a new dimension in computerdata security,
[6] RFC: SMTP, POP3, POP2, MIME, IMAP
Các tài liệu trên mạng
[7] RC6 as the AES: Ronald L.Rivest, M.J.B Robshaw and Yiqun Lisa
Yin; M.I.T Laboratory for Computer Science, 545 Technology Square,
Laboratories, 250 Cambridge Ave., Palo Alto, CA 94306, USA
yiqun@nttmcl.com
http://www.ii.uib.no/~larsr/papers/rc6-statement.pdf
[8] The Advanced Encryption Standard (AES): Bill Burr, Computer Security
Division, Information Technology Laboratory, National Institute of Standards and Technology
http://csrc.nst.gov/pki/twg/y2000/ presentations/twg-00-20.pdf
[9] MARS Attacks! Preliminary Cryptanalysis of Reduced-Round
MARS Variants: John Kelsey and Bruce Schneier, Counterpane Internet
Security, Inc., 3031 Tisch Way, San Jose, CA 95128
http://csrc.nst.gov/encryption/aes/round2/ conf3/papers/16-jkelsey.pdf
Trang 25[10] The MARS Encryption Algorithm: Carolynn Burwick, Don
Coppersmith, Edward D'Avignon, Rosario Gennaro, Shai Halevi, Charanjit Jutla, Stephen M.Matyas Jr., Luke O'Connor, Mohammad Peyravian, David Safford, Nevenko Zunic – IBM T.J Watson Research, Yorktown Heights, NY 10598, USA; IBM Corparation, Research Triangle Park, NC 27709, USA; IBM Corparation, Poughkeepsie, NY 12601, USA; IBM Zurich Research, Rueschlikon, Switzerland – August 27, 1999
http://www.search.ibm.com/security/mars-short.ps
[11] The RC6TM
Block Cipher: Ronald L.Rivest, M.J.B Robshaw, R.Sidney
and Y.L Yin; M.I.T Laboratory for Computer Science, 545 Technology Square,
Campus Drive, Suite 400, San Mateo, CA 94403, USA, {matt, ray,
yiqun}@rsa.com; Version 1.1 – August 20, 1998
[12] DES to AES: Miles E.Smid, NIST
http://csrc.nst.gov/encryption/aes/round2/DEStoAES.zip
[13] IBM comments: Don Coppersmith, Rosario Gennaro, Shai Halevi, Charanjit Jutla, Stephen M.Matyas Jr., Mohammad Peyravian, David Safford, Nevenko Zunic – Third AES Conference – April 13, 2000
[14] The RC6 Block Cipher: A simple fast secure AES proposal: Ronald
L.Rivest, MIT; Matt Robshaw, RSA Labs; Ray Sidney, RSA Labs; Yiqun Lisa Yin, RSA Labs; August 21, 1998
http://csrc.nst.gov/encryption/aes/ round1/conf1/rc6-slides.pdf
[15] Pháp lệnh thương mại điện tử Việt Nam năm 2003
Trang 26Phần 1
LÝ THUYẾT CƠ SỞ
Trang 27Mục I: Một số định nghĩa toán cơ bản liên quan đến mật mã
học: trình bày các định nghĩa toán học cơ sở, chủ yếu là các định nghĩa số học liên quan trực tiếp đến vấn đề mật mã hoá sẽ đề cập trong đề tài Những định nghĩa này hoàn toàn “xa lạ” đối với kiến thức toán phổ thông cũng như các môn toán đã được học ở giai đoạn đại cương ở bậc đại học
Mục II: Một số định lý: Trình bày các định lý một cách rõ
ràng chuẩn bị cho quá trình hiện thực bằng thuật toán trong mục tiếp theo
Mục III: Một số thuật toán: Trên cơ sở lý thuyết mục I và II,
mục III tổng hợp lại và trình bày một số giải thuật nổi tiếng làm công cụ bổ trợ cho quá trình tạo khóa trong mật mã khoá bất đối xứng
Trang 28Xin vui lòng xem phụ lục A, phần II
III MỘT SỐ THUẬT TOÁN
1 THUẬT TOÁN EUCLIDEAN
Nhận xét: theo định nghiã Z*m , mọi phần tử thuộc Z*m đều nguyên tố cùng nhau với m Vì vậy dễ dàng nhận ra rằng mọi phần tử a trong Z*m đều tồn tại một nghịch đảo nhân a-1
Thuật toán Euclide tìm ước số chung của hai số nguyên dương a và b (a>b):
∀i>j, 0<ri<rj , ta luôn có: a=q0b + r1
rk+1=qk+2rk+2
Dễ dàng nhận ra: gcd(a,b)=gcd(b,r1)=gcd(r1,r2)= =gcd(rk,rk+1)=rk+2
Như vậy: gcd(a,b)=rk+2
Đoạn mã giả cho thuật toán trên: Vào: a ≥ b>0 a,b nguyên dương
Ra: gcd(a,b)
+ while b≠0 do
Trang 29r = a mod b a = b
b=r + Return (a)
Ứng dụng thuật toán trong luận văn:
Nhờ thuật toán Euclide, có thể xác định hai số nguyên dương bất kỳ có nguyên tố cùng nhau hay không Từ đó suy ra có tồn tại nghịch đảo nhân của một số hay không
2 THUẬT TOÁN EXTENDED EUCLIDEAN (Euclidean mở rộng)
Ta định nghĩa day u như sau: u0 = 0
u1 = 1 ui = ui-2-qi-1ui-1 mod r0 với i >1
Mệnh đề: 0 ≤ i ≤ m, ta có ri ≡ ui r1 (mod r0) (có thể sử dụng qui nạp để chứng minh mệnh đề này)
Nếu gcd(r0,r1)=1 thì um ≡ r 1-1(mod r0) Vì vậy um là nghịch đảo nhân của r1 theo modulo r0
Người ta sử dụng thuật toán Euclidean mở rộng: Vào: a, b nguyên, không âm và a ≥ b
Ra: d=gcd(a,b) và hai số nguyên x, y thoả ax + by = d
+ if b=0 then d=a, x=1, y=0, return(x) + x2=1, x1=0, y2=0, y1=1
+ while b>0 do
r=a-qb x=x2-qx1 y=y2-qy1
Trang 30x2=x1 x=x2 y2=y1 y1=y
+ d=a, x=x2, y=y2 + return(d,x,y)
Ứng dụng thuật toán trong luận văn:
Dựa vào thuật toán Euclidean mở rộng, ta có thể tìm nghịch đảo nhân của phần tử a như sau:
Thuật toán tìm phần tử nghịch đảo nhân: Vào: m∈Z*
a ,m<a
Ra: m-1 mod a - Sử dụng thuật toán Euclidean mở rộng để tìm d, x, y sao cho ax+my=d
+ if m=0 then d=a, x=1, y=0, return(y) + x2=1, x1=0, y2=0, y1=1
+ while m>0 do
r=a-qm x=x2-qx1 y=y2-qy1
x2=x1 x=x2 y2=y1 y1=y
+ d=a, x=x2, y=y2
Trang 31+ return(d,x,y) - if d>1 thì không tồn tại phần tử nghịch đảo nhân, ngược lại return (y) Nếu đã tìm được m-1 mod a =y thì rất dễ suy ra nghịch đảo nhân của m
m-1=i*a+y Trong đó i là số tự nhiên nhỏ nhất sao cho m-1>0
3 THUẬT TOÁN SINH SỐ NGUYÊN TỐ NGẪU NHIÊN
Để chuẩn bị cho quá trình khởi tạo khoá công khai, bài toán sinh số nguyên tố ngẫu nhiên cực lớn phải được giải quyết tốt
Cho đến hiện tại, bài toán này trong thực tế được liệt kê vào dạng bài toán khó hay bất trị (hard / intractable) vì chưa có thuật toán giải quyết triệt để Thông thường người ta giải quyết bằng cách sinh các số ngẫu nhiên cực lớn có độ dài bit xác định, sau đó dùng một số giải thuật mang tính chất xác suất để kiêm tra xem nó có là nguyên tố không như: thuật toán Miller-Rabin, Soloway-Strassen, Fermat, Mersenne Các thuật toán này có tốc độ thực thi khá nhanh phụ thuộc độ dài n bit của số cần kiểm tra (độ phức tạp là O(n2))
Tuy vậy, các thuật toán trên không đưa ra một kết luận chính xác về tính nguyên tố của các số, luôn có một xác suất sai sót Có thể thực hiện việc kiểm tra nhiều lần để giảm bớt độ sai sót này Giả sử thuật giải có độ sai với xác suất là p thì sau n lần kiểm tra, xác suất sai sẽ là pn Như vậy có thể kết luận một số là nguyên tố hay không với sai số rất nhỏ có thể tin tưởng được
Mặt khác, có khoảng bao nhiêu số n bit nguyên dương ngẫu nhiên thì có thể tìm ra một số nguyên tố Lý thuyết số đã chứng minh các số nguyên tố nhỏ hơn N là N/lnN Do đó nếu M là một số nguyên dương ngẫu nhiên thì xác suất để nó trở thành số nguyên tố là 1/ lnM Giả sử M là số có độ dài 512 bit thì xác suất để M là nguyên tố sẽ là 1/355 Nhận xét: số nguyên tố là số lẻ (trừ số nguyên tố nhỏ nhất là 2) Vì vậy trong 335 số nguyên dương lẻ bất kỳ, trung bình sẽ có 2 số nguyên tố (xác suất là 2/lnM=2/355) Ta có thể tìm một số nguyên tố có độ dài n bit sau số
Trang 323.1 THUẬT TOÁN FERMAT
Vào: số nguyên lẻ n≥3 và tham số lặp số bước kiểm tra t Ra: n là số nguyên tố hay hợp số
+ for i=1 to t do Chọn ngẫu nhiên a sao cho, 2≤a≤n-2 Tính r=an-1 mod n
If r ≠1 then n là hợp số và thoát + n là số nguyên tố
Thuật toán nếu cho kết quả là hợp số thì số đó chắc chắn là hợp số Ngược lại, kết quả là số nguyên tố thì chỉ tin cậy được khi gcd(a,n)=1
3.2 THUẬT TOÁN SOLOVAY-STRASSEN
Vào: số nguyên lẻ n≥3 và tham số lặp số bước kiểm tra t Ra: n là số nguyên tố hay hợp số
+ for i=1 to t do Chọn ngẫu nhiên a sao cho, 2≤a≤n-2 Tính r=a(n-1)/2 mod n
If r ≠1 and r≠n-1 then n là hợp số và thoát Tính số Jacobi s=(a/n)
If r !≡ s(mod n) then n là hợp số và thoát + n là số nguyên tố
Tương tự như thuật toán Fermat, Solovay-Strassen kết luận n là số nguyên tố kèm theo sai số lớn
3.3 THUẬT TOÁN MILLER-RABIN
Trang 33Thuật toán này dùng để kiểm tra tính nguyên tố của một số nguyên dương lẻ Người ta đã chứng minh được thuật toán có xác suất sai số lớn nhất là ¼ Như phần trên trình bày, sau khoảng hơn 40 lần kiểm tra, xác suất sai số là (¼)40 ≈ 10-24
Hoàn toàn có thể tin cậy khi xác suất sai số cực nhỏ như thế Trong tất cả các thuật toán, Miller-Rabin được xem là tốt nhất
Vào: số nguyên lẻ n≥3 và tham số lặp số bước kiểm tra t Ra: n là số nguyên tố hay hợp số
+ Đặt n-1=2sr (r là số ngẫu nhiên lẻ) + for i=1 to t do
Chọn ngẫu nhiên a sao cho, 2≤a≤n-2
If y ≠1 and y≠n-1 then j=1;
while j≤s-1 and y≠n-1 do y=y2 mod n
if y=1 then n là hợp số và thoát
if y≠n-1 then n là hợp số và thoát + n là số nguyên tố
Trang 34Mục I: Tổng quan về mật mã hoá trình bày các khái niệm cơ
bản về hệ thống mật mã, phân biệt rõ ràng hệ mã hoá đối xứng và bất đối xứng
Mục II: Thuật toán khoá bí mật bàn nhiều đến các thuật toán
từ cổ điển đối xứng đến các thuật toán hiện đại đang là chuẩn chung cho thế giới
Mục III: Thuật toán khóa công khai tuy ra đời sau và chiếm số
lượng nhỏ, nhưng các thuật toán này hiện nay được ứng dụng rộng rãi, đặc biệt trong các giao dịch mạng, thương mại điện tử Đặc biệt, học viên đã xây dựng thành công mô hình mật mã khoá công khai Advanced Elgamal với nhiều ưu điểm vượt trội
Trang 35Hệ thống mạng toàn cầu đang trở thành một phương tiện không thể thiếu trong đời sống xã hội Thông qua mạng Internet mọi người có thể trao đổi thông tin với nhau một các nhanh chóng và thuận tiện Từ đó phát sinh ra các nhu cầu cần bảo mật thông tin liên lạc Nó có vai trò rất lớn trong các ngành thuộc lĩnh vực kinh tế, quốc phòng, an ninh… Trước yêu cầu cần thiết đó, trên thế giới đã và đang nghiên cứu một số thuật toán mã hoá nhằm đảm bảo tính an toàn dữ liệu như ECB, CBC, RSA, DES, RC6,… và thuật toán AES xuất hiện gần đây nhất Nó đã được chính thức trở thành chuẩn mã hoá nâng cao và đang được áp dụng rộng rãi
Về vấn đề mật mã hoá dữ liệu, để hiểu được thông tin đã mã hoá cần phải có khóa giải mã mà chỉ có người nhận thực sự của dữ liệu này mới có thể làm được, khó có thể giải mã được đối với các phương pháp tấn công mã khối hiện nay Chính vì vậy nó có ưu điểm là bảo mật, độ an toàn cao
I TỔNG QUAN VỀ MẬT MÃ HOÁ
1 GIỚI THIỆU
Dữ liệu trên Internet được chuyển tải qua nhiều trạm trung gian nên khả năng thất thoát thông tin, bị lấy trộm, hay bị thay đổi nội dung là không thể tránh khỏi Bảo mật hiểu theo một cách đơn giản là bằng cách nào đó ta có thể bảo vệ được dữ liệu tránh bị đánh cắp đọc trộm hay thay đổi trên môi trường truyền dẫn không an toàn như internet, trên các máy chủ hay cả máy cục bộ đang ngồi
Hiểu theo một cách khái quát, mật mã học (Cryptography) là phương thức đảm bảo sự bí mật thông tin trao đổi giữa các thành viên trong hệ thống Người ta tiến hành mã hoá để bảo vệ thông tin Tức là chuyển đổi thông tin có ý nghĩa dưới dạng có thể đọc được thành dạng thông tin không đọc được đối với người khác Quá trình biến đổi này được gọi là sự mã hoá (encipher hay encryption) Quá trình giải mã (decipher hay decryption) là chuyển các thông tin không đọc được này trở về dạng ban đầu đọc được, nhờ vào thông tin mật gọi là khoá mã
Có rất nhiều phương pháp mật mã hoá đã và đang được nghiên cứu Đó là
Trang 36được trao chìa khoá nhưng lại muốn lấy thông tin Trên lý thuyết, không tồn tại một thuật toán mật mã hoá nào mà không thể bẻ được Nhưng nếu trở ngại đủ lớn về mặt thời gian, thì thông tin không còn giá trị Một thuật toán mã hoá có thể bị bẻ gãy trong thời gian 20 năm với một máy tính siêu mạnh thì rõ ràng đã được xem là thuật toán có độ an toàn tốt
Để có cái nhìn tổng quát về thời gian giải mã, sau đây là Bảng thống kê thời gian cần thiết để phá huỷ một hệ thống mã hoá ở cấp độ bảo mật trung bình
Độ dài khoá
key length
(bit)
Một người tấn công đơn
lẻ
Individual
Attacker
Một nhóm hacker
nhỏ
Small
Group
Mạng Học viện
Academy
Network
Công ty lớn Large Company
Cơ quan tình báo quân sự
Military Intelligent
Agency
40 56 64 80 128
Tuần Thế kỷ Thiên niên kỷ
Không thể Không thể
Ngày Thập kỷ
Thế kỷ Không thể Không thể
Giờ Năm Thập kỷ Không thể Không thể
Micrô giây Giờ Ngày Thế kỷ Không thể
Micrô giây Giây Phút Thế kỷ Thiên niên kỷ
Một hệ thống mã hoá gồm các thành phần sau: - Bản tin gốc (Plain text):, thường được chia thành nhiều khối (Block)
trước quá trình mã hóa - Khoá mã (Key): dùng để mã hoá và giải mã - Thuật toán mã hoá và giải mã (Algorithm): Phương thức mã hoá - Văn bản mã (Ciphertext): bản tin sau khi mã hoá
Mô hình tổng thể của một hệ thống mật mã hoá
Trang 37Hệ thống mật mã hoá gồm 5 thành phần (P,C,K,E,D) thoả các điều kiện sau: + Tập P các Plaintext là tập đếm được
Quá trình giải mã: ánh xạ dk2 ∈D:dk2 :C →P
( )( ( ))
12
dp
²
Dữ liệu gốc Mã hoá Dữ liệu sau mã hoá
Dữ liệu sau mã hoá Giải mã Dữ liệu gốc
H.3.1:Quá trình mã hoá và giải mã tổng thể
Trang 38- Mật mã công khai: hay còn gọi là mật mã hoá bằng khoá chung (Public Key)
Điểm khác biệt lớn nhất giữa hai kiểu mật mã này là đối với mật mã bí mật, việc mã hoá bằng khóa nào sẽ giải mã bằng đúng khoá đó, còn kỹ thuật mật mã công khai việc giải mã sẽ sử dụng một khoá riêng không giống với khoá đã dùng trong khi mã hoá
2.1 MẬT MÃBÍ MẬT (Private Key Cryptography)
Kỹ thuật mật mã bí mật sử dụng cùng một khoá (hoặc có thể suy ra một cách dễ dàng) cho việc mã hoá và giải mã Chính vì thế người ta còn gọi đây là kỹ thuật mã hoá đối xứng Khoá bí mật này chỉ có người gửi và người nhận nắm giữ để biết cách mã hoá và giải mã
PLAIN TEXT
Pre round
Operation 1 Operation 2
PLAIN TEXT
Pre round
Operation 1 Operation i-1
Round key 1
Trang 39H.3.2: Quá trình mã hoá và giải mã tổng quát trên khối mật mã đối xứng
Có hai thuật toán mã hoá bí mật: - Mã hoá luồng – Stream Algorithms/Stream Ciphers: thuật toán xử lý mã
hoá theo từng bit cổ điển Một số thuật toán điển hình của loại này như: mã dịch vòng Céasar, mã thay thế ngẫu nhiên, mã Vigenère, mã ma trận
- Mã hoá khối bit - Block Algorithms/Block Ciphers: thuật toán xử lý dữ liệu theo từng khối 32,64,128, 256 bit…Các thuật toán được sử dụng rộng rãi trong thực tế theo loại này là: DES, Tripple DES, RC1, RC2, RC3, RC4, RC5, RC6, AES
Dữ liệu gốc Mã hoá Dữ liệu sau mã hoá
Trang 40Nhận xét: Một đặc tính quan trọng của mã hoá luồng là các khối Ciphertext liên tiếp phụ thuộc vào khối Plaintext và Ciphertext trước đó, điều này được thể hiện rất rõ trong kỹ thuật tạo khoá phụ ki trong công thức ở trên
2.1.2 MÃ HOÁ KHỐI BIT
Dữ liệu được chia thành các khối có độ dài bit xác định, từng khối dữ liệu này được mã hoá một cách tuần tự, độc lập bằng một khoá k duy nhất Không cần có phát sinh khoá phụ
c=c1c2c3 =ek(p1)ek(p2)ek(p3)
2.1.3 NHẬN XÉT ƯU NHƯỢC ĐIỂM CỦA MÃ HOÁ BÍ MẬT