Bảo mật thông tin là một trong những lĩnh vực nghiên đang được phát triển rất mạnh trong thời đại bùng nổ thông tin ngày nay. Thông tin khi được lưu trữ hoặc truyền tải cần được mã hóa bằng những phương pháp mã hóa tốt và tối ưu. Trong bài viết này, sẽ trình bày các phương pháp mã hóa đối xứng cơ bản.
Thông báo Khoa học Công nghệ * Số 1-2015 108 MỘT SỐ PHƢƠNG PHÁP MÃ HOÁ ĐỐI XỨNG ThS Nguyễn Lê Tín Trung Tâm Ngoại ngữ - Tin học, Trường Đại học Xây dựng Miền Trung Tóm tắt: Bảo mật thông tin lĩnh vực nghiên phát triển mạnh thời đại bùng nổ thông tin ngày Thông tin lưu trữ truyền tải cần mã hóa phương pháp mã hóa tốt tối ưu Trong viết này, trình bày phương pháp mã hóa đối xứng Từ khóa: Bảo mật thơng tin, mã hóa đối xứng, phân bố tần suất, giả mã Trong „TỪ BẢO MẬT Mã hóa thay đa bảng THÔNG TIN ĐẾN CHỮ KÝ ĐIỆN Với phát quy luật phân TỬ” số năm 2014 Thông báo Công bố tần suất, nhà giải mã tạm nghệ trình bày số phương pháp thời chiếm ưu chiến mã mã hóa giải mã thơng dụng hóa - giải mã Cho đến kỷ thứ 15, phương pháp mã hóa đa ký tự Hill Tuy nhà ngoại giao người Pháp tên nhiên, nhược điểm phương pháp giải mã quy luật phân bố Vigenere tìm phương án mã hóa tần suất Trong viết trình bày thay đa bảng Phương pháp số phương pháp khắc phục Vigenere dựa bảng sau đây: nhược điểm Bảng 1: Bảng mã Vigenere Key a b c d e f g h i j k l m n o p q r s t u v w x y z A A B C D E F G H I J K L M N O P Q R S T U V W X Y Z B B C D E F G H I J K L M N O P Q R S T U V W X Y Z A C C D E F G H I J K L M N O P Q R S T U V W X Y Z A B D D E F G H I J K L M N O P Q R S T U V W X Y Z A B C E E F G H I J K L M N O P Q R S T U V W X Y Z A B C D E F F G H I J K L M N O P Q R S T U V W X Y Z A B C D G G H I J K L M N O P Q R S T U V W X Y Z A B C D E F H H I J K L M N O P Q R S T U V W X Y Z A B C D E F G H I I J K L M N O P Q R S T U V W X Y Z A B C D E F G J J K L M N O P Q R S T U V W X Y Z A B C D E F G H I K K L M N O P Q R S T U V W X Y Z A B C D E F G H I J L L M N O P Q R S T U V W X Y Z A B C D E F G H I J K M M N O P Q R S T U V W X Y Z A B C D E F G H I J K L N N O P Q R S T U V W X Y Z A B C D E F G H I J K L M O O P Q R S T U V W X Y Z A B C D E F G H I J K L M N P P Q R S T U V W X Y Z A B C D E F G H I J K L M N O Q Q R S T U V W X Y Z A B C D E F G H I J K L M N O P R R S T U V W X Y Z A B C D E F G H I J K L M N O P Q S S T U V W X Y Z A B C D E F G H I J K L M N O P Q R T T U V W X Y Z A B C D E F G H I J K L M N O P Q R S U U V W X Y Z A B C D E F G H I J K L M N O P Q R S T V V W X Y Z A B C D E F G H I J K L M N O P Q R S T U Thông báo Khoa học Công nghệ * Số 1-2015 109 W W X Y Z A B C D E F G H I J K L M N O P Q R S T U V X X Y Z A B C D E F G H I J K L M N O P Q R S T U V W Y Y Z A B C D E F G H I J K L M N O P Q R S T U V W X Z Z A B C D E F G H I J K L M N O P Q R S T U V W X Y Dòng thứ K bảng mã Vigenere mã hóa Ceasar k-1 vị trí Ví dụ, dòng thứ 4, ứng với từ khóa D mã hóa Ceasar vị trí (Trong trường hợp tổng qt, dòng bảng Vigenere khơng phải mã hóa Ceasar mà mã hóa đơn bảng, có tên gọi mã hóa đa bảng) Để mã hóa thơng điệp cần có khóa có chiều dài chiều dài thơng điệp Thường khóa cụm từ viết lặp lại có chiều dài chiều dài thơng điệp Ví dụ với thông điệp là, “Mien Trung University of Civil Engineering”và khóa từ informatics, mã hóa thơng điệp sau: Bảng 2: Mã hóa thơng điệp mi e n t r u n g u n i v e r s i t y o f c i v i l e n g i n e e r i n g I N F O R MA T I C S I N F O R MA T I C S I N F O R A T I C S I N F O U V J D K D U G O P F Q I J F J U T R WH U Q I N Z V Z G B V G WZ V S U m i e n t r u n g u n i v e r s i t y I N F O R M A T I C S I N F O R M A T U V J D K D U G O P F Q I J F J U T R o I f C c S i I v N i F l O e R n M g A i T n I e C e S r I i N n F g O W H U Q I N Z V Z G B V G W Z V S U Trong ví dụ trên, ứng với với ký tự m thông điệp chữ I khóa, nên dòng mã hóa thứ ứng với khóa I bảng Vigenere chọn, ký tự m mã hóa thành ký tự U Tiếp tục, với ký tự i thơng điệp khóa ký tự N nên dòng mã hóa thứ 14 với khóa N bảng mã Vigenere chọn Dó ký tự i mã hóa thành ký tự V Tương tự cho chữ lại Trong ví dụ trên, chữ e thơng điệp mã hóa tương ứng thành J, V, G, W, bảng mã Do phương pháp giải mã dựa thống kê tần suất chữ không thực Trong kỷ sau mã hóa Vigenere xem mã hóa khơng thể giải mã Các nhà mã hóa lại chiếm ưu trở lại so với người giải mã Đến kỷ 19, nhà khoa học người Anh Charles Barbage, tìm cách giải mã Vigenere Việc giải mã cách thống kê lặp lại cụm từ để đoán chiều dài khóa, ví dụ cụm từ QI lặp lại cách 11 vị trí nên đốn chiều dài khóa 11 Và từ tách mã thành 11 phần, phần thứ gồm chữ 1, 12, 23, 34, …, phần thứ hai gồm chữ 2, 13, 24, 35, …, phần thứ chín Mỗi phần xem mã hóa phương pháp mã hóa đơn bảng (phương pháp Ceasar) Từ áp dụng phương pháp giải mã dựa tần suất chữ cho phần Cuối Thông báo Khoa học Công nghệ * Số 1-2015 ráp lại tìm thơng điệp ban đầu One-Time Pad Có thể thấy điểm yếu mã hóa đa bảng lặp lại từ khóa, ví dụ từ INFORMATICS lặp lặp lại nhiều lần Điều làm cho tồn mối liên quan thơng điệp mã hóa, ví dụ cụm từ „iv‟ thơng điệp lặp lại cụm từ QI lặp lại mã Người giải mã tận dụng mối liên quan để thực giải mã Do đó, vấn đề để thông điệp gốc ban đầu mã hóa thật ngẫu nhiên, khơng tồn mối quan hệ Để giải vấn đề này, vào cuối chiến tranh giới lần thứ nhất, Joseph Mauborgne, giám đốc viện nghiên cứu mật mã quân đội Mỹ đề xuất phương án dùng khóa ngẫu nhiên Khóa ngẫu nhiên có chiều dài chiều dài thơng điệp gốc ban đầu, khóa sử dụng lần Ví dụ mã hóa thơng điệp “wearediscoveredsaveyourself” Thơng điệp: wearediscoveredsaveyourself Khóa K1: FHWYKLVMKVKXCVKDJSFS APXZCVP Bản mã C: BLWPOODEMJFBTZNVJNJQOJ ORGGU Nếu ta dùng khóa K1 để giải mã có lại thơng điệp gốc ban đầu “wearediscoveredsaveyourself” Tuy nhiên xét hai trường hợp giải mã mã với khóa khác sau: Trƣờng hợp 1: Bản mã C: 110 BLWPOODEMJFBTZNVJNJQOJ ORGGU Khóa K2: IESRLKBWJFCIFZUCJLZXAXA APSY Bản giải mã: theydecidedtoattacktomorrow (they decided to attack tomorrow) Trƣờng hợp 2: Bản mã C: BLWPOODEMJFBTZNVJNJQOJ ORGGU Khóa K3: FHAHDDRAIQFIASJGJWQSVV BJAZB Bản giải mã: wewillmeetatthepartytonight (we will meet at the party tonight) Trong hai trường hợp giải mã có ý nghĩa Điều có nghĩa người giải mã thực giải mã vét cạn tìm nhiều khóa ứng với nhiều tin có ý nghĩa, tin thông điệp gốc Điều chứng minh phương pháp One-Time Pad phương pháp mã hóa an tồn tuyệt đối Một điều cần ý để phương pháp One-Time Pad an tồn tuyệt đối khóa sử dụng lần Nếu khóa sử dụng nhiều lần khơng khác việc lặp lại từ khóa (ví dụ khóa có từ INFORMATICS lặp lại) Ngồi khóa phải thật ngẫu nhiên với Nếu điều bị vi phạm có mối liên hệ thơng điệp mã, mà người giải mã tận dụng mối quan hệ Tuy nhiên, phương pháp One-Time Pad khơng có ý nghĩa sử dụng thực tế Thơng báo Khoa học Cơng nghệ * Số 1-2015 Vì chiều dài khóa chiều dài tin, khóa sử dụng lần, nên thay truyền khóa kênh an tồn truyền trực tiếp thơng điệp mà không cần quan tâm đến vấn đề mã hóa Mã hốn vị (Permutation Cipher) Các phương pháp mã hóa trình bày thời điểm này, sử dụng phương thức thay chữ thông điệp chữ khác mã (phương pháp thay thế) Một cách thực khác xáo trộn thứ tự chữ thông 111 điệp gốc Do thứ tự chữ bị nên người đọc hiểu ý nghĩa tin dù chữ khơng thay đổi Một cách thực đơn giản ghi thơng điệp theo hàng, sau kết xuất mã dựa cột Ví dụ thơng điệp “attackpostponeduntilthisnoon” viết lại thành bảng 4x7 sau: Bảng 3: Thơng điệp mã hóa theo cột dòng Khi kết xuất theo cột có mã: “AODHTSUITTNSAPTNCOIOKNLOPETN” Một chế phức tạp hốn vị cột trước kết xuất mã Ví dụ chọn khóa MONARCH, ta hốn vị cột: Bảng 4: Thơng điệp mã hóa theo cột dòng hóa vị cột Hoán vị cột thứ với cột thứ trước kết xuất mã có mã: “APTNKNL OPETNAO DHTTNST SUICOIO”việc giải mã tiến hành theo thứ tự ngược lại Để an toàn nữa, áp dụng phương pháp hốn vị lần (double transposition), tức sau hoán vị lần 1, ta lại lấy kết hốn vị thêm lần nữa: Thông báo Khoa học Công nghệ * Số 1-2015 112 Bảng 5: Thơng điệp mã hóa theo cột dòng hóa vị cột lần Hoán vị cột thứ cột thứ trước kết xuất mã có mã: “APTNPETNTTNSAODHCOIOKNLO TSUI” Người ta đánh giá giải mã phương pháp hốn vị lần khơng phải chuyện dễ khó đốn quy luật hốn vị Ngồi khơng thể áp dụng phương pháp phân tích tần suất chữ giống phương pháp thay tần suất chữ thơng điệp mã giống Tổng kết Các phương pháp mã hóa cổ điển thường dựa hai phương thức Cách thứ dùng phương thức thay chữ thông điệp gốc ban đầu thành chữ khác mã (substitution) Các mã hóa dùng phương thức như: mã hóa Ceasar, mã hóa thay đơn bảng, đa bảng, One-time pad Cách thứ hai dùng phương thức hoán vị để thay đổi thứ tự ban đầu chữ thông điệp gốc Hai phương thức đóng vai trò quan trọng mã hóa đối xứng đại trình bày phần sau Trong chương này, xem xét số phương thức giải mã Mục tiêu việc giải mã từ mã tìm thơng điệp gốc, khóa, hai Chúng ta giả định người giải mã biết rõ thuật tốn mã hóa giải mã (luật Kerchoff) Việc giải mã có tình sau: Chỉ biết mã (ciphertext–only): Đây trường hợp gây khó khăn cho người giải mã Các trường hợp giải mã trình bày chương thuộc dạng ciphertext only Biết số cặp thông điệp – mã (known–plaintext): Trong trường hợp này, người giải mã có vài cặp thơng điệp mã tương ứng Việc biết vài cặp thông điệp – mã làm cho người giải mã dễ dàng việc tìm khóa Ví dụ, mã hóa Vigenere, người giải mã cần biết cặp thơng điệp – mã dễ dàng suy khóa, từ giải mã khác mà mã hóa khóa Ví dụ: biết mã: UVJDKDUGOPFQIJFJUTRWHUQIN ZVZGBVGWZVSU tương ứng thông điệp gốc ‘mien trung university of civil engineering’, người giải mã tra ngược Vigenere tìm khóa INFORMATICS để giải mã khác Một số cặp thông điệp – lựa chọn (choosen–plaintext): Trong trường hợp này, người giải mã có khả tự lựa số thông điệp gốc quan sát mã tương ứng Ví dụ bạn ăn trưa quên khóa máy, người giải mã dùng chương trình mã hóa bạn để thực mã hóa số tin Thơng báo Khoa học Công nghệ * Số 1-2015 chọn trước có mã tương ứng (dù khơng biết khóa) Như trường hợp người giải mã dễ dàng việc giải mã so với trường hợp Điều đặt thách thức cho nhà nghiên cứu phải tìm thuật tốn mã hóa cho khơng thể 113 bị giải mã không trường hợp mà trường hợp Đó số thuật tốn mà tìm hiểu phần Thơng báo Khoa học Công nghệ số “Mã hóa đối xứng đại” TÀI LIỆU THAM KHẢO [1] Mark Stamp 2006 Information Security Principles and Practices - John Wiley&Son [2] William Stallings 2011 Cryptographyand Network Security Principlesand Practice Fifth Edition - Prentice Hall [3] Lee Barken 2003 How Secure Is Your Wireless Network - Prentice Hall ... biết tin thông điệp gốc Điều chứng minh phương pháp One-Time Pad phương pháp mã hóa an tồn tuyệt đối Một điều cần ý để phương pháp One-Time Pad an tồn tuyệt đối khóa sử dụng lần Nếu khóa sử dụng... tâm đến vấn đề mã hóa Mã hốn vị (Permutation Cipher) Các phương pháp mã hóa trình bày thời điểm này, sử dụng phương thức thay chữ thông điệp chữ khác mã (phương pháp thay thế) Một cách thực khác... thể áp dụng phương pháp phân tích tần suất chữ giống phương pháp thay tần suất chữ thông điệp mã giống Tổng kết Các phương pháp mã hóa cổ điển thường dựa hai phương thức Cách thứ dùng phương thức