Tổng quan về giáo trình

Giáo trình Bảo mật thông tin là tài liệu học tập được biên soạn cho sinh viên bậc đại học và cao học thuộc khối ngành Công nghệ thông tin và An toàn thông tin. Trong chương trình đào tạo, môn học đóng vai trò trang bị khối kiến thức cơ sở chuyên ngành cốt lõi về kỹ thuật mật mã và an ninh dữ liệu. Nội dung giáo trình được xây dựng dựa trên khung chương trình học thuật chuẩn, phát triển dựa trên tài liệu chuyên khảo Cryptography: Theory and Practice của tác giả Douglas Stinson (bản dịch của Nguyễn Bình).

Mục tiêu học tập của giáo trình tập trung vào việc cung cấp hệ thống lý thuyết nền tảng và phương pháp toán học ứng dụng trong kỹ thuật bảo vệ dữ liệu. Sinh viên sau khi hoàn thành học phần có khả năng:

  • Hiểu rõ bản chất hình thức của một hệ mật mã $S = (P, C, K, E, D)$ cùng các tiêu chuẩn an toàn thông tin (bảo mật, toàn vẹn, xác thực, không chối bỏ).
  • Nắm vững cơ sở số học modulo, thuật toán Euclid mở rộng, lý thuyết nhóm, vành và độ phức tạp tính toán.
  • Phân tích nguyên lý vận hành của các thuật toán mã hóa đối xứng (mã cổ điển, mã dòng LFSR, mã khối DES, IDEA).
  • Làm chủ cơ chế toán học của các hệ mật mã khóa công khai (RSA, Rabin, ElGamal, Merkle–Hellman, McEliece).
  • Ứng dụng các hàm băm (MD4), sơ đồ chữ ký điện tử và giao thức phân phối khóa Diffie–Hellman vào bài toán an toàn mạng.

Cấu trúc giáo trình gồm 5 chương được tổ chức tuần tự từ nền tảng lịch sử, cơ sở toán học, mật mã cổ điển cho tới các chuẩn mã hóa dữ liệu hiện đại và hệ thống mật mã khóa bất đối xứng. Điểm đặc sắc của tài liệu là phương pháp tiếp cận diễn dịch chặt chẽ: mỗi mô hình mật mã đều đi kèm định nghĩa hình thức, chứng minh toán học, ví dụ tính toán số học cụ thể theo từng bước và phương pháp thám mã tương ứng.


Nội dung kiến thức cốt lõi

Các chương và chủ đề chính

Giáo trình gồm 5 chương chính với tiến trình phát triển nội dung logic từ cổ điển đến hiện đại:

  • Chương 1: Giới thiệu chung về mật mã: Trình bày tiến trình lịch sử từ mật mã sơ khai (Ai Cập cổ đại) đến bước ngoặt lý thuyết thông tin của Claude Shannon (1949) và mật mã hiện đại. Định nghĩa hệ mật mã tổng quát gồm 5 thành phần: không gian bản rõ $P$, không gian bản mã $C$, không gian khóa $K$, tập quy tắc mã hóa $E$, và tập quy tắc giải mã $D$ thỏa mãn $d_K(e_K(x)) = x$. Chương này phân loại mã khối và mã dòng (hệ Vernam), phân biệt mật mã đối xứng và mật mã khóa công khai, thiết lập 12 bài toán an toàn thông tin (bảo mật, toàn vẹn, xác thực thực thể/thông báo, chữ ký, ủy quyền, chứng chỉ, báo nhận, làm chứng, chống chối bỏ, ẩn danh, thu hồi) và phân loại 4 mức độ tấn công thám mã theo nguyên lý Kerckhoffs (chỉ biết bản mã, biết bản rõ, bản rõ được chọn, bản mã được chọn) cùng 3 quan niệm an toàn (an toàn vô điều kiện, an toàn chứng minh được, an toàn tính toán).
  • Chương 2: Mật mã cổ điển: Xây dựng toàn bộ hệ thống số học modulo $m$, quan hệ đồng dư, cấu trúc nhóm Abelian, vành $\mathbb{Z}_m$, thuật toán Euclid mở rộng tìm $\gcd$ và phần tử nghịch đảo, phương trình đồng dư tuyến tính, lớp thặng dư và hàm Euler $\phi(n)$. Khảo sát chi tiết các thuật toán mã hóa đối xứng cổ điển: mã dịch chuyển (Shift/Caesar), mã thay thế (Substitution), mã Affine ($e_K(x) = ax + b \pmod{26}$), mã Vigenère (thay thế đa biểu), mã Hill (đại số ma trận $y = x \cdot K \pmod{26}$) và mã hoán vị. Đồng thời, chương này mô tả chi tiết các hệ mã dòng đồng bộ với quan hệ đệ quy tuyến tính bậc $m$, thanh ghi dịch hồi tiếp tuyến tính (LFSR) chu kỳ cực đại $2^m - 1$ và mã khóa tự sinh (Autokey). Phần cuối chương tập trung vào kỹ thuật thám mã: phân tích tần suất ký tự dựa trên thống kê của Beker và Piper, thám mã hệ Affine, thám mã hệ thay thế qua phân tích bộ đôi (digrams) và bộ ba (trigrams), tấn công bản rõ đã biết trên mã Hill bằng phương trình ma trận $K = X^{-1}Y$, cùng phép thử Kasiski và chỉ số trùng hợp (Index of Coincidence $I_C(x)$, chỉ số trùng hợp tương hỗ $MI_C(x, y)$) để giải mã hệ Vigenère.
  • Chương 3: Chuẩn mã dữ liệu: Phân tích chi tiết chuẩn mã hóa khối DES (Data Encryption Standard) với độ dài khối 64 bit, cấu trúc mạng Feistel, các phép hoán vị bit, hàm $f$, sơ đồ sinh bảng khóa con từ khóa gốc 56 bit, kỹ thuật tối ưu hóa thời gian - bộ nhớ (Time-Memory Trade-off) và độ an toàn trước thám mã. Chương cũng giới thiệu hệ mật IDEA (International Data Encryption Algorithm) với cấu trúc kết hợp các phép toán trên các nhóm đại số khác nhau (XOR, cộng modulo $2^{16}$, nhân modulo $2^{16} + 1$).
  • Chương 4: Các hệ mật mã khóa công khai: Phân tích khái niệm hàm cửa sập một chiều (trapdoor one-way function) và độ phức tạp tính toán đa thức. Xây dựng cơ sở toán học nâng cao: kiểm tra tính nguyên tố theo xác suất, Định lý phần dư Trung Hoa (CRT), phần tử nguyên thủy, lũy thừa lớn $x^e \pmod n$. Khảo sát chuyên sâu hệ mật RSA (độ an toàn dựa trên bài toán phân tích thừa số nguyên tố, các thuật toán phân tích số nguyên như phương pháp $p-1$, thuật toán Dixon, sàng bậc hai), hệ mật Rabin (dựa trên bài toán khai căn bậc hai modulo hợp số), hệ mật ElGamal (dựa trên bài toán Logarithm rời rạc - DLP) và các hệ mật dựa trên bài toán NP-đầy đủ gồm hệ mật xếp ba lô Merkle–Hellman (Knapsack) và hệ mật mã sửa sai McEliece.
  • Chương 5: Chữ ký điện tử, hàm Hash và phân phối khóa: Trình bày mô hình toán học của sơ đồ chữ ký số, phân loại chữ ký, chuẩn chữ ký điện tử (DSS), chữ ký một lần (One-time signature) và chữ ký không chối được. Phân tích các thuộc tính của hàm băm không va chạm (Collision resistance), hàm băm logarithm rời rạc, cấu trúc mở rộng và thuật toán MD4. Phần phân phối khóa khảo sát sơ đồ phân phối khóa trước và giao thức trao đổi khóa Diffie–Hellman dựa trên logarithm rời rạc.

Kiến thức nền tảng được xây dựng

Giáo trình thiết lập hệ thống lý thuyết mật mã dựa trên các trụ cột khoa học:

  1. Lý thuyết số và đại số đại cương: Số học đồng dư trong $\mathbb{Z}_m$, cấu trúc nhóm nhân $\mathbb{Z}_n^*$, vành số nguyên, hàm Euler, phương trình Diophantine giải bằng thuật toán Euclid mở rộng, đại số ma trận khả nghịch trên vành hữu hạn, định lý số học và Định lý phần dư Trung Hoa.
  2. Lý thuyết thông tin Shannon: Khái niệm bí mật hoàn hảo (perfect secrecy), entropy, độ bất định của bản rõ và bản mã, định nghĩa an toàn vô điều kiện.
  3. Lý thuyết độ phức tạp tính toán: Khái niệm bài toán thời gian đa thức $P$, các bài toán thuộc lớp NP-đầy đủ (NP-complete), các bài toán khó kinh điển được dùng làm hàm một chiều: bài toán phân tích thừa số nguyên tố lớn, bài toán Logarithm rời rạc (DLP), và bài toán xếp ba lô (Subset Sum).
  4. Nguyên lý thiết kế mật mã Kerckhoffs: Độ an toàn của hệ thống mật mã chỉ phụ thuộc vào việc giữ bí mật khóa, không phụ thuộc vào việc giấu kín thuật toán mã hóa và giải mã.

Kỹ năng phát triển

  • Kỹ năng kỹ thuật (Technical skills): Cài đặt và thực thi các thuật toán mã hóa cổ điển và hiện đại (DES, IDEA, RSA, ElGamal, Diffie–Hellman); lập trình tạo chuỗi bit ngẫu nhiên bằng bộ ghi dịch hồi tiếp tuyến tính (LFSR); tính toán số học modulo trên số nguyên lớn.
  • Kỹ năng phân tích (Analytical skills): Đánh giá độ an toàn của hệ mật mã thông qua độ lớn không gian khóa; phân tích thống kê ngôn ngữ (tần suất chữ cái, diagrams, trigrams); tính toán chỉ số trùng hợp $I_C$ và $MI_C$; nhận diện các điểm yếu cấu trúc trước 4 mô hình tấn công thám mã.
  • Kỹ năng thực hành giải thuật (Practical competencies): Giải phương trình ma trận trên vành hữu hạn để khôi phục khóa mã Hill; vận dụng thuật toán Euclid mở rộng tìm nghịch đảo; thực hiện quy trình thám mã thực tế trên các văn bản mã hóa mẫu.

Phương pháp giảng dạy và học tập

Giáo trình áp dụng phương pháp sư phạm diễn dịch kết hợp thực nghiệm tính toán số học. Mỗi chương đều tuân thủ cấu trúc 4 bước:

[Khái niệm / Định nghĩa hình thức] ➔ [Cơ sở toán học & Định lý] ➔ [Thuật toán & Ví dụ số học chi tiết] ➔ [Phương pháp thám mã & Bài tập kiểm chứng]

Bài tập và ca nghiên cứu thực hành

Giáo trình tích hợp hệ thống bài tập và các ca thám mã hoàn chỉnh từ dữ liệu thực:

  • Bài tập số học: Tính toán ước chung lớn nhất $\gcd(4864, 3458) = 38$ và tìm hệ số Bézout $(x, y) = (32, -45)$ qua thuật toán Euclid mở rộng; tính phần tử nghịch đảo $30^{-1} \pmod{101} = 64$; giải phương trình đồng dư tuyến tính $15x \equiv 6 \pmod 9$.
  • Ca nghiên cứu thám mã hệ Affine: Khảo sát bản mã gồm 56 ký tự FMXVEDRAPH..., lập bảng tần suất ký tự ($R=8, D=6, E=5, H=5, K=5$), thiết lập 4 giả thiết đối sánh với phân bố ký tự tiếng Anh ($e, t$), loại bỏ các trường hợp dẫn đến $\gcd(a, 26) \neq 1$, xác định cặp khóa đúng $K=(3, 5)$ và hàm giải mã $d_K(y) = 9y - 19 \pmod{26}$ để khôi phục bản rõ.
  • Ca nghiên cứu thám mã hệ thay thế: Khảo sát bản mã 190 ký tự, phân tích tần suất xuất hiện của $Z=20$, kết hợp phân tích các bộ đôi $DZ, ZW, NZ, ZU$ và bộ ba $ZRW, RZW$ để suy luận từng bước ánh xạ ký tự, khôi phục văn bản gốc tiếng Anh.
  • Ca nghiên cứu thám mã hệ Vigenère: Áp dụng phép thử Kasiski tìm khoảng cách xuất hiện của cụm chr (165, 70, 50, 10) để ước lượng độ dài từ khóa $m=5$; tính toán chỉ số trùng hợp $I_C(y_i) \approx 0.065$ trên 5 cột dữ liệu; tính chỉ số trùng hợp tương hỗ $MI_C(y_i, y_j)$ tìm sai phân dịch chuyển $k_i - k_j$, giải hệ phương trình đồng dư tìm ra từ khóa JANET và giải mã toàn văn bản.

Phương pháp đánh giá và hướng dẫn tự học

  • Đánh giá học tập: Dựa trên khả năng giải toán số học mật mã, cài đặt thuật toán mã hóa/giải mã, và thực hiện bài tập thám mã cuối mỗi chương.
  • Hướng dẫn tự học: Người học cần nắm vững lý thuyết toán ở đầu mỗi chương trước khi đọc thuật toán, tự giải lại các ví dụ mẫu bằng tay trước khi lập trình kiểm chứng trên máy tính.

Bối cảnh học thuật và tính cập nhật

Giáo trình ghi nhận các mốc lịch sử quan trọng đánh dấu sự chuyển biến của mật mã học:

Giai đoạn Đặc trưng công nghệ Cơ sở khoa học / Đột phá
Mật mã Cổ điển (Trước 1949) Thao tác trên ký tự văn bản bằng giấy/bút, thiết bị cơ khí (máy Enigma) Mang tính nghệ thuật, dựa trên hoán vị và thay thế, dễ bị phá vỡ bởi phân tích tần suất
Bình minh Hiện đại (1949) Xử lý dữ liệu nhị phân Claude Shannon công bố Lý thuyết thông tin, đặt nền móng toán học cho mật mã
Mã khối Đối xứng (Đầu 1970) Mã hóa khối dữ liệu lớn trên máy tính Thuật toán Lucifer phát triển thành chuẩn DES (NIST), sau đó là thuật toán IDEA
Mật mã Bất đối xứng (1976 – 1978) Trao đổi khóa và mã hóa trên mạng mở Diffie – Hellman (1976) đề xuất trao đổi khóa; Rivest, Shamir, Adleman (1978) phát minh hệ RSA

Giáo trình cập nhật các cấu trúc mật mã hiện đại giải quyết trực tiếp các vấn đề an toàn dữ liệu trên mạng viễn thông và Internet:

  • Chuyển từ việc giấu kín thuật toán sang chuẩn hóa thuật toán công khai với không gian khóa lớn.
  • Tích hợp các thuật toán phân tích số nguyên hiện đại (thuật toán $p-1$, thuật toán Dixon, sàng bậc hai).
  • Kết hợp mật mã khóa đối xứng (tốc độ cao, mã hóa dữ liệu lớn) và mật mã khóa công khai (giải quyết bài toán phân phối khóa và chữ ký điện tử).

Đối tượng sử dụng giáo trình

  • Sinh viên đại học/cao học: Phù hợp cho sinh viên chuyên ngành Công nghệ thông tin, An toàn thông tin, Kỹ thuật mạng và Khoa học máy tính từ năm thứ 3 trở lên.
  • Kiến thức tiên quyết (Prerequisites): Người học cần hoàn thành các môn học: Toán rời rạc (lý thuyết tập hợp, quan hệ chia hết), Đại số đại cương/tuyến tính (ma trận, định thức, cấu trúc nhóm, vành), Cấu trúc dữ liệu và giải thuật, cùng kiến thức cơ bản về xác suất thống kê.
  • Giảng viên: Sử dụng làm tài liệu giảng dạy chính, làm khung tham chiếu biên soạn bài giảng môn Bảo mật thông tin, Mật mã học cơ sở.
  • Kỹ sư và người nghiên cứu tự học: Tài liệu tham khảo học thuật để nắm vững cơ chế toán học nội tại của các thư viện mã hóa và giao thức bảo mật thực tế.

Câu hỏi thường gặp

1. Giáo trình này phù hợp với đối tượng nào?

Tài liệu được thiết kế cho sinh viên đại học, học viên cao học chuyên ngành Công nghệ thông tin, An toàn thông tin, và các kỹ sư phần mềm cần nghiên cứu bản chất toán học của các giải thuật mật mã.

2. Cần chuẩn bị những kiến thức nền tảng nào trước khi học?

Người học cần có kiến thức về Đại số số học (phép chia nguyên, đồng dư modulo, nhóm, vành), Đại số tuyến tính (ma trận, định thức), Lý thuyết xác suất thống kê và kỹ năng lập trình giải thuật cơ bản.

3. Giáo trình có điểm gì khác biệt về mặt cấu trúc nội dung?

Tài liệu tập trung sâu vào cơ sở toán học hình thức và phân tích giải thuật thám mã chi tiết. Các phương pháp thám mã (Kasiski, chỉ số trùng hợp $I_C$, phân tích tần suất, giải phương trình ma trận) đều được hướng dẫn qua các bước tính toán số học cụ thể thay vì chỉ mô tả nguyên lý định tính.

4. Làm thế nào để tự học giáo trình đạt hiệu quả cao?

Người học nên tuân thủ lộ trình: đọc kỹ phần cơ sở toán học ở đầu mỗi chương, tự giải lại các ví dụ số học mẫu (như thuật toán Euclid mở rộng, tính khóa mã Hill, phân tích tần suất), sau đó tự giải các bài tập thám mã ở cuối chương và viết mã nguồn mô phỏng lại các thuật toán.

5. Tài liệu tham khảo chính của giáo trình là gì?

Giáo trình được biên soạn dựa trên cuốn sách chuyên khảo Cryptography: Theory and Practice của tác giả Douglas Stinson (bản dịch của Nguyễn Bình), kết hợp với các công trình nghiên cứu của Claude Shannon, Diffie – Hellman, Rivest – Shamir – Adleman, và các số liệu thống kê ngôn ngữ học của Beker – Piper.


Kết luận

Giáo trình Bảo mật thông tin là tài liệu học thuật tổng hợp hệ thống kiến thức mật mã học từ cổ điển đến hiện đại dựa trên nền tảng toán học chặt chẽ. Lộ trình học tập đề xuất được phân chia rõ ràng thành 3 giai đoạn:

  1. Nền tảng số học modulo, mật mã cổ điển và các kỹ thuật thám mã thống kê.
  2. Cấu trúc chuẩn mã dữ liệu khối (DES, IDEA) và kỹ thuật mã dòng (LFSR).
  3. Mật mã khóa công khai (RSA, ElGamal, Rabin), hàm băm, chữ ký điện tử và giao thức phân phối khóa Diffie–Hellman.

Tài liệu cung cấp nền tảng lý thuyết và kỹ năng giải thuật thiết yếu, đóng vai trò tài liệu cơ sở phục vụ cho các nghiên cứu và ứng dụng an toàn thông tin chuyên sâu.