KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển ......................................................................... KỸ THUẬT mã hóa cổ điển .........................................................................
ĐỒ ÁN KỸ THUẬT MÃ HÓA CỔ ĐIỂN MỤC LỤC DANH MỤC CÁC HÌNH VẼ DANH MỤC CÁC BẢNG BIỂU DANH MỤC CÁC TỪ VIẾT TẮT P Plaintext C Ciphertext E Encrypt D Decrypt K Key ĐỒ ÁN Trang 6/18 CHƯƠNG TỔNG QUAN VỀ MÃ HÓA 1.1 Khái niệm mã hóa Ngày nay, máy tính thâm nhập vào hầu hết lĩnh vực đời sống - xã hội Nói đến máy tính tức nói đến hai vấn đề lớn : lưu trữ xử lý thông tin Nhưng từ xa xưa, công nghệ chưa phát triển, trình xử lý thông tin yếu tố quan trọng Tuy nhiên đảm bảo thông tin mà truyền không bị đọc trộm đường truyền Trong trận đánh lớn, việc tiết lộ thông tin thường gây hậu nghiêm trọng Để hạn chế điều đó, biện pháp mã hóa thông tin đời Mục đích để bảo vệ tính bảo mật thông tin 1.2 Khái niệm Cryptography Thuật ngữ Cryptography đề cập tới ngành khoa học nghiên cứu mã hóa giải mã thông tin Cụ thể nghiên cứu cách thức chuyển đổi thông tin từ dạng thông thường sang định dạng mã hóa Thông tin sau làm rối, biến đổi gây khó khăn cho người không phận tiếp cận vào thông tin nhạy cảm Các khái niệm cryptography: - Plaintext / Cleartext (P): Dữ liệu gốc, chưa mã hóa (bản rõ) Ciphertext (C): Dữ liệu mã hóa (bản mã) Encipher / Encrypt (E): Quá trình mã hóa Decipher / Decrypt (D): Quá trình giải mã Key (K): chìa khóa – thông tin dùng chung qui trình mã hóa giải mã 1.3 Ứng dụng Trong đời sống, cần bảo mật tính toàn vẹn thông tin đó, không người khác biết, mã hóa áp dụng giải pháp hạn chế rủi ro việc tiết lộ thông tin 1.4 Yêu cầu đề tài Tìm hiểu cryptography Tìm hiểu kỹ thuật mã hóa cổ điển: substitution cipher transposition cipher Mô hai kỹ thuật MATLAB (yêu cầu có viết GUI) ĐỒ ÁN Trang 7/18 1.5 Kỹ thuật mã hóa cổ điển Đây cách đơn giản nhất, tồn lâu giới Tuy nhiên giải pháp mã hóa xem không an toàn người thứ ba biết thuật toán xem thông tin không bảo mật Việc giữ bí mật thuật toán trở nên quan trọng Có hai kỹ thuật mã hóa cổ điển substitution cipher transposition cipher Substitution Cipher (Mã hóa thay thế) : Phương pháp mã hóa kí tự nhóm kí tự văn ban đầu thay hay nhóm kí tự khác Transposition Cipher (Mã hóa hoán vị) : Phương pháp mã hóa kí tự văn ban đầu thay đổi vị trí cho thân kí tự không bị biến đổi Trong đó: Substitution Cipher bao gồm: - Ceasar cipher Playfair cipher Hill cipher Vigenere cipher Substitution Cipher bao gồm: - Rail-fence cipher 1.6 Các phần làm Mã hóa Ceasar Mã hóa Playfair Mã hóa Hill Mã hóa Vigenere Mã hóa Rail-fence Viết ứng dụng GUI ĐỒ ÁN Trang 8/18 CHƯƠNG NGUYÊN LÝ MÃ HÓA 1.7 Mã hóa Ceasar 1.1.1 Lịch sử Sáng tạo Julius Ceasar, vị hoàng đế đế chế La Mã vào kỉ trước công nguyên Phương pháp Ceasar xây dựng chiến Gallic Wars (những người Gô-loa cổ đại), xem tổ tiên người Pháp ngày 1.1.2 Nguyên lý mã hóa Thay kí tự kí tự khác cách khoảng m định bảng chữ [1] Nếu m lớn 26 xoay vòng lại vị trí ban đầu, phép tính mod với 26 Ví dụ : X (m=3) = A C = (P + K) mod 26 Ví dụ: Bản rõ (P) : CEASAR Key (K) : m=3 Bản mã (C) : FDHVDU Đối với bảng chữ tiếng Anh từ A-Z có 26 chữ cái, điểm yếu phương pháp nằm chỗ phạm vi phép dịch phép nằm khoảng từ 0-25 1.1.3 Nguyên lý giải mã Tương tự bước mã hóa, thay dịch sang phải dịch sang trái m kí tự D = (C – P) mod 26 1.8 Mã hóa Playfair ĐỒ ÁN Trang 9/18 1.1.4 Nguyên lý mã hóa Sử dụng ma trận chữ 5x5 sở từ khóa, điền chữ từ khóa (đã bỏ chữ trùng lặp) vào vị trí lại ma trận Biến đổi I=J ngược lại Nếu độ dài từ khóa nhỏ 25 điền tiếp vào sau vị trí cuối từ khóa kí tự từ A-Z – không bao gồm chữ trùng lặp – lấp đầy ma trận Ví dụ với từ khóa MONARCHY ta có ma trận sau: Hình 2-1: Ma trận ứng với từ khóa MONARCHY Quy tắc mã hóa: Mã hóa Playfair xem hai ký tự đứng sát đơn vị mã hóa, hai ký tự thay lúc hai ký tự khác [2, tr.19] Mã hóa cặp chữ Nếu hai chữ giống nhau, tách chữ điền thêm thường ‘X’ Ví dụ EE thay EX Nếu số kí tự văn cần mã hóa lẻ, thêm kí tự ‘X’ vào cuối để tạo thành cặp Ví dụ: ABC => AB CX Nếu hai chữ nằm hàng, thay chữ bên phải Ví dụ: EF => FG Nếu hai chữ nằm cột, thay chữ bên dưới: Ví dụ: OF => HP ĐỒ ÁN Trang 10/18 Các trường hợp khác, chữ thay chữ khác hàng dựa cột chữ cặp Ví dụ: CQ => YL Ví dụ với K=MONARCHY trên, rõ PLAY mã QPNB 1.1.5 Nguyên lý giải mã Ngược lại với bước 1.9 Mã hóa Hill 1.1.6 Lịch sử Sáng tạo Lester.S.Hill, năm 1929 1.1.7 Nguyên lý mã hóa Trong mã Hill, chữ gán cho số nguyên từ đến 25: Hình 2-2: Bảng chữ tiếng Anh Dựa vào đó, từ khóa chia thành cặp, tạo thành ma trận vector cột ứng với số Ví dụ : Bản rõ : PLAY Key : HELP HE có ma trận [7 4] LP có ma trận [11 15] => từ khóa HELP có ma trận K = [7 4;11 15] Tương tự, rõ chia thành cặp Như ma trận ứng với cặp x1=[15;11] , x2=[0;24], … ĐỒ ÁN Trang 11/18 Lần lượt nhân K với x1 x2 C1 C2 Lấy kết mod 26 ta D1, D2 Từ D1 , D2 suy kí tự cần tìm C(x1,x2,…,xm) = K x P(x1,x2,…,xm) [3, tr.25] Với ví dụ trên: P: PLAY K: HELP => C: AWZA 1.10 Mã hóa Vigenere 1.1.8 Lịch sử Sáng tạo nhà ngoại giao người Pháp, Blaise de Vigenere, kỉ 16 1.1.9 Nguyên lý mã hóa Nếu độ dài từ khóa nhỏ so với độ dài rõ, ta tạo key cách lặp lặp lại từ khóa n lần Căn chỉnh lại độ dài key độ dài rõ cách bỏ kí tự thừa Chuyển thông số thành mảng chứa số ứng với vị trí chữ bảng chữ tiếng Anh Gọi mảng chứa vị trí chữ rõ P, mảng chứa vị trí chữ key K Tiến hành cộng hai mảng P K theo qui tắc xoay vòng giống mã hóa caesar, mảng C Biến đổi số C thành chữ cần tìm Ví dụ: Key: lucy Bản rõ: youmustvisitme ĐỒ ÁN Trang 12/18 Bản mã: jiwkfmvttmkrxy Hình 2-3: Mã hóa Vigenere [4, tr.21] 1.1.10 Nguyên lý giải mã D = C(x1,x2,…,xm) – K(k1,k2,…,km) mod 26 1.11 Mã hóa Rail-fence 1.1.11 Nguyên lý mã hóa Đối với phương pháp này, chữ rõ viết theo đường zig zac từ xuống dưới, từ trái qua phải theo m hàng cho trước Sau mã tập hợp kí tự từ hàng thứ đến hàng thứ m, viết liền Ví dụ: Bản rõ : RAIL-FENCE M=2 Bản mã: RI-ECALFNE ĐỒ ÁN Trang 13/18 CHƯƠNG KẾT QUẢ MÔ PHỎNG Chương trình viết MATLAB R2013a 1.12 Yêu cầu mô 1.1.12 Mã hóa Ceasar Mã hóa giải mã chữ số, phân biệt chữ in hoa, in thường, khoảng trắng 1.1.13 Mã hóa Playfair Mã hóa giải mã chữ , phân biệt chữ in hoa, in thường, khoảng trắng 1.1.14 Mã hóa Hill Mã hóa giải mã chữ 1.1.15 Mã hóa Vigenere Mã hóa giải mã chữ, phân biệt chữ in hoa, in thường, khoảng trắng 1.1.16 Mã hóa Rail-fence Mã hóa giải mã chữ số, phân biệt chữ in hoa, in thường, khoảng trắng 1.13 Kết mô 1.1.17 Mã hóa Ceasar Key : K=15 Bản rõ : Ma Hoa Bao Mat 0123 4567 Bản mã: Bp Wdp Qpd Bpi 5678 ĐỒ ÁN Trang 14/18 Hình 3-1 : Kết mô mã hóa Ceasar 1.1.18 Mã hóa Playfair Key: K = password Bản rõ: Ma hoa Playfair Bản mã: Vd kss Ampuiwgbu ĐỒ ÁN Trang 15/18 Hình 3-2 : Kết mô mã hóa Playfair 1.1.19 Mã hóa Hill Key: K = password Bản rõ: cryptography Bản mã: jxrjavlpffwz ĐỒ ÁN Trang 16/18 Hình 3-3 : Kết mô mã hóa Hill 1.1.20 Mã hóa Vigenre Key: K = password Bản rõ: Cryptography Vigenere Cipher Bản mã: Ssriqdyvqqar Sxyidfkx Zxhlus ĐỒ ÁN Trang 17/18 Hình 3-4 : Kết mô mã hóa Viegenere 1.1.21 Mã hóa Rail-fence Key: K = Bản rõ: Cryptography rail-fence Bản mã: Cta lnrporpyri-ecyghafe ĐỒ ÁN Trang 18/18 Hình 3-5 : Kết mô mã hóa Rail-fence ĐỒ ÁN Trang 19/18 CHƯƠNG KẾT LUẬN 1.14 Đề tài làm phần Mã hóa giải mã chữ số 1.15 Ưu điểm Mã hóa nhanh chóng văn Bước đầu gây khó khăn cho người không phận tiếp cận thông tin 1.16 Nhược điểm Quá trình mã hóa giải mã đơn giản Dễ bị giải mã phương pháp vét cạn Vẫn xảy lỗi, chưa thực tối ưu Ít sử dụng xuất từ lâu lịch sử ĐỒ ÁN Trang 20/18 TÀI LIỆU THAM KHẢO Tiếng Việt: [1] https://vi.wikipedia.org [2] Bài giảng An toàn bảo mật thông tin, ĐH Nha Trang Tiếng Anh: [3] Classical Cryptography, CSG 252 Fall 2006, Riccardo Pucella [4] Classic Cryptography (Lecture 5), Thomas Johansson, Lund University ĐỒ ÁN Trang 21/18 PHỤ LỤC A ... cipher 1.6 Các phần làm Mã hóa Ceasar Mã hóa Playfair Mã hóa Hill Mã hóa Vigenere Mã hóa Rail-fence Viết ứng dụng GUI ĐỒ ÁN Trang 8/18 CHƯƠNG NGUYÊN LÝ MÃ HÓA 1.7 Mã hóa Ceasar 1.1.1 Lịch sử... trắng 1.1.14 Mã hóa Hill Mã hóa giải mã chữ 1.1.15 Mã hóa Vigenere Mã hóa giải mã chữ, phân biệt chữ in hoa, in thường, khoảng trắng 1.1.16 Mã hóa Rail-fence Mã hóa giải mã chữ số, phân biệt chữ... 1.1.12 Mã hóa Ceasar Mã hóa giải mã chữ số, phân biệt chữ in hoa, in thường, khoảng trắng 1.1.13 Mã hóa Playfair Mã hóa giải mã chữ , phân biệt chữ in hoa, in thường, khoảng trắng 1.1.14 Mã hóa