Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 24 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
24
Dung lượng
1,46 MB
Nội dung
Chương CÁC HỆ MẬT MÃ CỔ ĐIỂN • Tính chất chung hệ mật cổ điển • Một số hệ mật mã cổ điển • Hệ mật mã DES chuẩn mật mã 2.1 Tính chất chung • Trong chương ta giới thiệu số hệ mật mã có khóa đối xứng, tức hệ mật mã mà khóa lập mật mã khóa giải mật mã trùng nhau, khóa mật mã chung phải giữ bí mật, riêng hai đối tác (người lập mật mã để gửi người nhận mật mã gửi đến) biết mà thơi • Trong suốt thời kỳ lịch sử dài từ thời cổ đại vài ba thập niên gần đây, phương pháp mật mã sử dụng thực tế mật mã khoá đối xứng, từ hệ mật mã Ceasar dùng nghìn năm trước hệ mật mã sử dụng với trợ giúp kỹ thuật máy tính đại thời gian gần 2.2 Một số hệ mật mã cổ điển Mã chuyển dịch (shift cipher) Mã thay Mã Vigenère Mã hoán vị Mã chuyển dịch (shift cipher) Các hệ mật mã dùng phép chuyển dịch nói mục nhiều hệ mật mã tiếp sau có bảng ký tự rõ bảng ký tự mã bảng ký tự ngơn ngữ viết thơng thường Vì bảng ký tự tiếng Việt có dùng nhiều dấu phụ làm cho cách xác định ký tự khó thống nhất, nên tài liệu ta lấy bảng ký tự tiếng Anh để minh hoạ, bảng ký tự gồm có 26 ký tự, đánh số từ đến 25 trình bày tiết 1.2.1, ta đồng với tập Z26 Mã chuyển dịch (shift cipher) • Sơ đồ hệ mật mã chuyển dịch định nghĩa sau: S = (P , C , K , E , D ) P = C = K = Z26 , ánh xạ E D cho bởi: K,x,yZ26: E(K,x) = x +K mod26, D(K,y) = y - K mod26 • Các hệ mật mã xác định đắn, với K, x , y Z26 ta có: dK(eK(x))= (x +K ) - K mod26 = x • Các hệ mật mã chuyển dịch sử dụng từ sớm, theo truyền thuyết, hệ mã với K =3 dùng J Caesar từ thời đế quốc La mã, gọi hệ mã Caesar Mã chuyển dịch (shift cipher) • Thí dụ: Cho rõ hengapnhauvaochieuthubay, chuyển dãy ký tự thành dãy số tương ứng ta được: x = 13 15 13 20 21 14 20 19 20 24 • Nếu dùng thuật tốn lập mật mã với khoá K = 13, ta mã là: y = 20 17 19 13 20 13 13 15 20 21 17 20 14 13 11 chuyển dạng ký tự thông thường ta mật mã là: uratncaunhinbpuvrhguhonl • Để giải mật mã đó, ta cần chuyển lại dạng số (để dãy y), thực thuật toán giải mã, tức trừ số hạng với 13 (theo môđuyn 26), lại dãy x, chuyển thành dãy ký tự rõ ban đầu Mã chuyển dịch (shift cipher) Các hệ mật mã chuyển dịch dễ sử dụng, việc thám mã dễ dàng, số khố có 26 Nhận mã, người thám mã cần thử dùng tối đa 26 khố để giải mã, phát khoá dùng rõ! Mã thay • Sơ đồ hệ mật mã thay định nghĩa sau: S = (P , C , K , E , D ) P = C = Z26, K tập hợp tất phép hoán vị Z26 ; ánh xạ E D cho bởi: ek ( x) = p( x), dk = -1(y) với x P, y C , K phép hoán vị Z26 • Ta thường đồng Z26 với bảng ký tự tiếng Anh, phép hốn vị Z26 hiểu phép hoán vị tập hợp ký tự tiếng Anh, thí dụ phép hoán vị p cho bảng sau: Mã thay A B C D E F G H I J K L M N O P Q R X N Y A H P O G Z Q W B T S F S T U V W X Y Z L R C V M U E K J D I • Với hệ mật mã thay có khố , rõ: x = hengapnhauvaochieuthubay chuyển thành mật mã: y = ghsoxlsgxuexfygzhumgunxd • Thuật toán giải mã với khoá p, ngược lại biến y thành rõ x • Sơ đồ hệ mật mã có số khố số phép hoán vị tập Z26, tức 26! khoá (26!> 4.1026) Mã Vigenère Sơ đồ mật mã lấy tên Blaise de Vigenère, sống vào kỷ 16 Khác với hệ mật mã kể trước, hệ mật mã Vigenère không thực ký tự một, mà thực m ký tự ( m số nguyên dương) Sơ đồ hệ mật mã Vigenère định nghĩa sau: S = (P , C , K , E , D ) P = C = K = Z26, ánh xạ E D cho bởi: eK(x1, , xm ) = ( x1+k1, , xm+km) mod26 dK(y1, , ym ) = ( y1-k1 , , ym-km ) mod26 với x =(x1, , xm k = (k1, ,km) K ) P, y =(y1, , ym ) C, Mã Vigenère • Sơ đồ mã Vigenère xem mở rộng sơ đồ mã chuyển dịch, mã chuyển dịch thực việc chuyển dịch ký tự mã Vigenère thực đồng thời m ký tự liên tiếp Thí dụ: Lấy m = K = (2, 8, 15, 7, 4, 17) Để lập mật mã cho rõ hengapnhauvaochieuthubay, ta chuyển thành dãy số tách thành đoạn số liên tiếp: x = 13 15 | 13 20 21 | 14 20 | 19 20 24 • Cộng theo mod26 số đoạn với số tương ứng khoá K ta mật mã: y = 12 13 | 15 15 15 25 17 | 16 10 22 15 11 | 21 15 15 chuyển sang dãy ký tự ta mã là: jmcnegpppbzrqkwpilvpjiep • Từ mã đó, dùng thuật tốn giải mã tương ứng ta lại thu rõ ban đầu • Tập K có tất 26m phần tử Mã hoán vị Các hệ mã hoán vị thực m ký tự liên tiếp, mật mã hoán vị ký tự m ký tự rõ Ta ký hiệu Sm tập hợp tất phép hoán vị tập hợp { 1,2, ,m } Sơ đồ phép mã hoán vị cho bởi: S = (P , C , K , E , D ) với x =(x1, , xm) P, y =(y1, , ym) C, k = Sm , -1 hoán vị nghịch đảo Mã hốn vị • Thí dụ: Chọn m = phép hoán vị S6 cho bởi: i = (i ) = Khi phép hốn vị -1 là: i = -1 (i) = Với rõ hengap | nhauva | ochieu | thubay, tức với x = 13 15 | 13 20 21 | 14 20 | 19 20 24 ta có mã tương ứng là: y = 13 15 | 21 13 20 | 14 20 | 20 19 24 chuyển thành dãy ký tự nahpge | avnauh | heouic | uatybh Dùng cho ký tự liên tiếp mật mã (tức y) phép giải mã dK ta thu lại x rõ ban đầu • Với m cho trước, số hệ mật mã hốn vị có m! 2.3 Chuẩn mật mã DES (Data Encryption Standard) Sự đời DES Mô tả sơ đồ mã hóa DES Vấn đề an toàn hệ mật DES thay DES AES Sự đời DES Ngày 15.5.1973, Uỷ ban tiêu chuẩn quốc gia Mỹ công bố khuyến nghị cho hệ mật Hồ sơ quản lý liên bang Điều cuối dẫn đến phát triển Chuẩn mã liệu (DES) trở thành hệ mật sử dụng rộng rãi giới DES IBM phát triển xem cải biên cuả hệ mật LUCIPHER Lần DES công bố Hồ sơ Liên bang vào ngày 17.3.1975 Sau nhiều trânh luận công khai, DES chấp nhận chọn làm chuẩn cho ứng dụng không coi mật vào 5.1.1977 Kể từ năm lần, DES lại Uỷ ban Tiêu chuẩn Quốc gia xem xét lại Lần đổi gần DES vào tháng 1.1994 tiếp tới 1998 Khi người ta tiên đốn DES khơng cịn chuẩn sau 1998 Mơ tả sơ đồ mật mã DES • Sơ đồ tổng qt: Hình 2.1: Chn mã hóa liêu DES • Mơ tả đầy đủ DES nêu Công bố số 46 chuẩn xử lý thông tin Liên bang (Mỹ) vào 15.1.1977 DES mã hố xâu bít x bẳn rõ độ dài 64 khoá 56 bít Bản mã nhận xâu bít có độ dài 64 Trước hết ta mơ tả mức cao hệ thống Mô tả sơ đồ mật mã DES • Sơ đồ tổng qt: Hình 2.1: Chn mã hóa liêu DES • Mơ tả đầy đủ DES nêu Công bố số 46 chuẩn xử lý thông tin Liên bang (Mỹ) vào 15.1.1977 DES mã hố xâu bít x bẳn rõ độ dài 64 khố 56 bít Bản mã nhận xâu bít có độ dài 64 Khóa K Bản rõ X IP L0 + R0 f L1 + Thuật tốn G tạo khóa K1, , K16 từ khóa K R1 f L15 R15 f + L16 R16 IP -1 Bản mã Y Vấn đề an toàn DES đời AES Hệ mật DES đời trở thành chuẩn khoảng thời gian 20 năm Tuy nhiên, từ ban đầu, lúc thiết kế DES có phản đối độ lớn khóa DES, khơng gian khóa gồm 256 khơng đủ an tồn cho việc cơng dạng vét cạn khóa Khi DES đưa vào sử dụng có nhiều công bố thám mã hệ mật DES, sau chứng thực tế phủ nhận Các kiểu công bạo lực: - Năm 1977, Diffie Hellman dự thảo hệ thống có giá khoảng 20 triệu la Mỹ có khả phá khóa DES ngày Năm 1993, Wiener dự thảo hệ thống khác có khả phá mã vịng với giá triệu la Mỹ Những điểm yếu DES thực chứng minh vào cuối năm 1990 Vào năm 1997, công ty bảo mật RSA tài trợ chuỗi thi với giải thưởng 10.000 đô la Mỹ cho đội phá mã tin mã hóa DES Đội chiến thắng thi dự án DESCHALL với người dẫn đầu bao gồm Rocke Verser, Matt Curtin Justin Dolske Họ sử dụng hàng nghìn máy tính nối mạng để phá mã - Khả phá mã DES chứng minh thêm lần vào năm 1998 tổ chức Electronic Frontier Foundation (EFF), tổ chức hoạt động cho quyền công dân Internet, xây dựng hệ thống chuyên biệt để phá mã với giá thành 250000 đô la Mỹ (Xem thêm: hệ thống phá mã DES EFF) Động thúc đẩy EFF hành động nhằm chứng minh DES bị phá vỡ lý thuyết thực tế: "Nhiều người không tin vào chân lý họ nhìn thấy việc mắt Xây dựng máy phá khóa DES vịng vài ngày cách chứng tỏ với người họ đảm bảo an ninh thông tin dựa vào DES." Hệ thống tìm khóa DES phương pháp bạo lực thời gian ngày Các kiểu cơng hiệu quả: • Hiện có kiểu cơng có khả phá vỡ DES (với đủ 16 chu trình) với độ phức tạp thấp phương pháp bạo lực: + phá mã vi sai (differential cryptanalysis - DC); + phá mã tuyến tính (linear cryptanalysis - LC); + phá mã Davies (Davies' attack) • Tuy nhiên dạng công chưa thực thực tế Sự đời AES: Từ cuối thập niên 1980, đầu thập niên 1990, xuất phát từ lo ngại độ an toàn tốc độ thấp áp dụng phần mềm, giới nghiên cứu đề xuất nhiều thuật tốn mã hóa khối để thay DES Những ví dụ tiêu biểu bao gồm: RC5, Blowfish, IDEA (International Data Encryption Algorithm, hay Thuật tốn mã hóa liệu quốc tế), NewDES, SAFER, CAST5 FEAL Hầu hết thuật tốn sử dụng từ khóa 64 bit DES chúng thường thiết kế hoạt động với từ khóa 64 bit hay 128 bit.Ngay thân DES sử dụng cách an toàn Những người sử dụng DES trước dùng Triple DES (hay TDES) Đây phương pháp người phát minh DES miêu tả kiểm tra (Xem thêm FIPS PUB 46-3) Triple DES sử dụng DES ba lần cho văn với khóa khác Hiện Triple DES xem an toàn tốc độ thực chậm Một phương pháp khác địi hỏi khả tính tốn DES-X với việc tăng độ dài từ khóa cách thực phép XOR từ khóa với phần thêm trước sau thực DES Một phương pháp GDES đề xuất làm tăng tốc độ mã hóa chứng tỏ khơng an tồn trước cơng vi sai (differential cryptanalysis) Sự đời AES: • Năm 2001, sau thi quốc tế, NIST chọn thuật toán mới, AES, để thay cho DES Thuật toán trình diện tên Rijndael Những thuật tốn khác có tên danh sách cuối thi AES bao gồm: RC6, Serpent, MARS Twofish • Chuẩn mã hóa liệu AES hệ mật mã khóa bí mật có tên Rijmen (Do hai nhà mật mã học người Bỉ Joan Daemen va Vincent Rijmen đưa trở thành chuẩn từ năm 2002) cho phép xử lý khối liệu input có kích thước 128 bit sử dụng khóa có độ dài 128, 192 256 bit Hệ mật Rijndael thiết kế để làm việc với khối liệu có độ lớn nhiên chọn chuẩn Ủy ban tiêu chuẩn Hoa Kỳ đưa năm 2001, quy định làm việc với khối liệu 128 bit khóa có độ dài 128, 192 256 bit (do cịn gọi với tên AES-128, AES-192, AES-256 tương ứng vơi độ dài khóa sử dụng) Bài tập Bài Cho rõ x = “THIS IS MY TEST” a) Dùng hệ mật mã chuyển dịch với K=3 để tìm mã y x? b) Dùng hệ mật thay với hoán vị sau để tìm mã y x? A b c d e f g h i j k l mn o p q r s t u v w x y z x n y a h p o g z q w b t s f l r c vmu e k j d i c) Dùng hệ mật Vigenère m=6 K=(2,4,8,3,1,13) để tìm mã y x d) Với hệ mật hoán vị, chọn m=6 hốn vị (1,2,3,4,5,6) = (2,5,3,4,6,1) Hãy tìm -1 mã y x? Bài Giả sử dùng hệ mật chuyển dịch với K=5 để mã hóa rõ x ta mã: Y = “ DTZ FWJ YWZJ” Hãy tìm rõ x? Bài Trong hệ mật Vigenère với chọn m=6 Giả sử rõ x = “I AM A STUDENT”, sau mã hóa ta nhận mã y = “L CR G WUXFJTX” Hãy tìm khóa K hệ mật? ... thiệu số hệ mật mã có khóa đối xứng, tức hệ mật mã mà khóa lập mật mã khóa giải mật mã trùng nhau, khóa mật mã chung phải giữ bí mật, riêng hai đối tác (người lập mật mã để gửi người nhận mật mã gửi... 2.2 Một số hệ mật mã cổ điển Mã chuyển dịch (shift cipher) Mã thay Mã Vigenère Mã hoán vị Mã chuyển dịch (shift cipher) Các hệ mật mã dùng phép chuyển dịch nói mục nhiều hệ mật mã tiếp sau... thời kỳ lịch sử dài từ thời cổ đại vài ba thập niên gần đây, phương pháp mật mã sử dụng thực tế mật mã khoá đối xứng, từ hệ mật mã Ceasar dùng nghìn năm trước hệ mật mã sử dụng với trợ giúp kỹ