An ninh bảo mật - Chương 3: Lý thuyết mật mã

Giới thiệu

2. Lịch sử phát triển

3. Các khái niệm cơ sở

4. Mã hóa đối xứng

5. Mã hóa bất đối xứng

6. Chữ ký điện tử

pdf81 trang | Chia sẻ: Mr Hưng | Lượt xem: 880 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu An ninh bảo mật - Chương 3: Lý thuyết mật mã, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ất khoảng 0,06 đến 0,09  D, L : mỗi ký tự có xác suất chừng 0,04  C, U, M, W, F, G, Y, P, B: mỗi ký tự có xác suất khoảng 0,015 đến 0,023  V, K, J, X, Q, Z mỗi ký tự có xác suất nhỏ hơn 0,01 Truyền và bảo mật thông tin 58 Phân tích của Beker và Peper  30 bộ đôi thông dụng nhất ( theo hứ tự giảm dần ) là: TH, HE, IN, ER, AN, RE, ED, ON, ES, ST, EN, AT, TO, NT, HA, ND, OU, EA, NG, AS, OR, TI, IS, ET, IT, AR, TE, SE, HI và OF  12 bộ ba thông dụng nhất (theo thứ tự giảm dần ) là: THE, ING, AND, HER, ERE, ENT, THA, NTH, WAS, ETH, FOR và DTH. Truyền và bảo mật thông tin 59 Ví dụ thám mã bảng mã đơn UZQSOVUOHXMOPVGPOZPEVSGZWSZOPFPESX UDBMETSXAIZVUEPHZHMDZSHZOWSFPAPPDT SVPQUZWYMXUZUHSXEPYEPOPDZSZUFPOUDT MOHMQ - Tính tần suất các chữ - Đoán P và Z là e và t. - Khi đó ZW là th và ZWP là the. - Suy luận tiếp tục ta có bản rõ: “it was disclosed yesterday that several informal but direct contacts have been made with politicalrepresentatives in moscow” Truyền và bảo mật thông tin 60 Bài tập thám mã sử dụng bảng tần suất “ YIFQFMZRWQFYVECFMDZPCVMRZWNMDZV EJBTXCDDUMJ NDIFEFMDZCDMQZKCEYFCJMYRNCWJCSZRE XCHZUNMXZ NZUCDRJXỷYMTMEYIFZWDYVZVYFZUMRZCR WNZDZJT XZWGCHSMRNMDHNCMFQCHZJMXJZWIEJYU CFWDINZDIR ” Truyền và bảo mật thông tin 61 Mã thay thế - Mã Playfair  Một trong các hướng khắc phục của phương pháp mã bằng bảng mã đơn là mã bộ các chữ, tức là mỗi chữ sẽ được mã bằng một số chữ khác nhau tùy thuộc vào các chữ mà nó đứng cạnh. Playfair là một trong các mã như vậy, được sáng tạo bởi Charles Wheastone vào năm 1854 và mang tên người bạn là Baron Playfair. Ở đây mỗi chữ có thể được mã bằng một trong 7 chữ khác nhau tùy vào chữ cặp đôi cùng nó trong bản rõ. Truyền và bảo mật thông tin 62 Mã thay thế - Mã Playfair Phương pháp là lập ma trận 5x5 dựa trên từ khóa cho trước và các ký tự trên bảng chữ cái - Trước hết viết các chữ của từ khoá vào các hàng của ma trận bắt từ hàng thứ nhất. - Nếu ma trận còn trống, viết các chữ khác trên bảng chữ cái chưa được sử dụng vào các ô còn lại. Có thể viết theo một trình tự qui ước trước, chẳng hạn từ đầu bảng chữ cái cho đến cuối. - Vì có 26 chữ cái tiếng Anh, nên thiếu một ô. Thông thuờng ta dồn hai chữ nào đó vào một ô chung, chẳng hạn I và J. - Giả sử sử dụng từ khoá MORNACHY. Lập ma trận khoá Playfair tương ứng như sau: MONAR CHYBD EFGIK LPQST UVWXZ Truyền và bảo mật thông tin 63 Quy tắc mã hóa và giải mã  Chia bản rõ thành từng cặp chữ. Nếu một cặp nào đó có hai chữ như nhau, thì ta chèn thêm một chữ lọc chẳng hạn X. Ví dụ, trước khi mã “balloon” biến đổi thành “ba lx lo on”.  Nếu cả hai chữ trong cặp đều rơi vào cùng một hàng, thì mã mỗi chữ bằng chữ ở phía bên phải nó trong cùng hàng của ma trận khóa (cuộn vòng quanh từ cuối về đầu), chẳng hạn “ar” biến đổi thành “RM”  Nếu cả hai chữ trong cặp đều rơi vào cùng một cột, thì mã mỗi chữ bằng chữ ở phía bên dưới nó trong cùng cột của ma trận khóa (cuộn vòng quanh từ cuối về đầu), chẳng hạn “mu” biến đổi thành “CM”  Trong các trường hợp khác, mỗi chữ trong cặp được mã bởi chữ cùng hàng với nó và cùng cột với chữ cùng cặp với nó trong ma trận khóa. Chẳng hạn, “hs” mã thành “BP”, và “ea” mã thành “IM” hoặc “JM” (tuỳ theo sở thích) Truyền và bảo mật thông tin 64 Bài tập  Hãy tìm hiểu quá trình mã hóa và giải mã bằng phương pháp mã Playfair Bản rõ P= “Dai hoc su pham” Khóa K=tinhoc Truyền và bảo mật thông tin 65 Các mã đa bảng  Một hướng khác làm tăng độ an toàn cho mã trên bảng chữ là sử dụng nhiều bảng chữ để mã. Ta sẽ gọi chúng là các mã thế đa bảng. Ở đây mỗi chữ có thể được mã bằng bất kỳ chữ nào trong bản mã tùy thuộc vào ngữ cảnh khi mã hoá. Làm như vậy để trải bằng tần suất các chữ xuất hiện trong bản mã. Do đó làm mất bớt cấu trúc của bản rõ được thể hiện trên bản mã và làm cho thám mã đa bảng khó hơn. Ta sử dụng từ khoá để chỉ rõ chọn bảng nào được dùng cho từng chữ trong bản tin. Sử dụng lần lượt các bảng theo từ khóa đó và lặp lại từ đầu sau khi kết thúc từ khoá. Độ dài khoá là chu kỳ lặp của các bảng chữ. Độ dài càng lớn và nhiều chữ khác nhau được sử dụng trong từ khoá thì càng khó thám mã Truyền và bảo mật thông tin 66 Mã Vigenere  Mã thế đa bảng đơn giản nhất là mã Vigenere. Thực chất quá trình mã hoá Vigenere là việc tiến hành đồng thời dùng nhiều mã Ceasar cùng một lúc trên bản rõ với nhiều khoá khác nhau. Khoá cho mỗi chữ dùng để mã phụ thuộc vào vị trí của chữ đó trong bản rõ và được lấy trong từ khoá theo thứ tự tương ứng.  Giả sử khoá là một chữ có độ dài d được viết dạng K = K1K2Kd, trong đó Ki nhận giá trị nguyên từ 0 đến 25. Khi đó ta chia bản rõ thành các khối gồm d chữ. Mỗi chữ thứ i trong khối chỉ định dùng bảng chữ thứ i với tịnh tiến là Ki giống như trong mã Ceasar. Truyền và bảo mật thông tin 67 Quá trình mã hóa và giải mã Vigenere  Để sử dụng mã Vigenere với từ khóa và bản rõ cho trước ta có thể làm như sau: - Viết bản rõ ra - Viết từ khoá lặp nhiều lần phía trên tương ứng của nó - Sử dụng mỗi chữ của từ khoá như khoá của mã Ceasar - Mã chữ tương ứng của bản rõ với bước nhảy tương ứng. - Chẳng hạn sử dụng từ khoá deceptive  plaintext: wearediscoveredsaveyourself  key: deceptivedeceptivedeceptive  ciphertext:ZICVTWQNGRZGVTWAVZHCQYGL Truyền và bảo mật thông tin 68 Bài tập  Thực hiện mã hóa và giải mã đoạn văn bản sau: Tuyen chong chat luong Luong thang khong tieu Khong duoc noi nhieu Khong duoc cai vo Phai biet di cho Nau nuong quet nha Khong duoc la ca Ruoc che co bac Truyền và bảo mật thông tin 69 Mã hóa đối xứng Symmetric cryptography Mã hóa đối xứng, tức là cả hai quá trình mã hóa và giải mã đều dùng một chìa khóa. Để đảm bảo tính an toàn, chìa khóa này phải được giữ bí mật. Vì thế các thuật toán loại này còn có tên gọi khác là secret key cryptography (hay private key cryptography) Các thuật toán thông dụng: DES, TripleDES, Rijndael, Truyền và bảo mật thông tin 70 Mô hình mã hóa đối xứng Truyền và bảo mật thông tin 71 Phân loại a. Block cipher Block cipher là một giải pháp hoạt dộng chống lại sự hạn chế của dữ liệu tĩnh. Dữ liệu được chia ra thành các blocks với size cụ thể và mỗi blocks được mã hoá một cách khác nhau. . b. Stream cipher Stream cipher là giải pháp hoạt động chống lại dữ liệu luôn luôn sử dụng một phương thức để truyền. Một vùng đệm, ít nhất bằng một block, đợi cho toàn bộ thông tin của block đó được chứa trong vùng đệm sau đó block đó sẽ được mã hoá rồi truyền cho người nhận Truyền và bảo mật thông tin 72 Giới thiệu một số thuật toán  DES (Data Encryption Standard)  Triple DES  AES (Advanced Encryption Standard)  RC 4, RC 5, RC 6 (Rivest Cipher 4,5,6 )  Skipjack  Blowfish  CAST-128 Truyền và bảo mật thông tin 73 DES (Data Encryption Standard )  Với DES, Bản tin hay mẫu thư được mã hóa theo từng khối 64 bits và sử dụng một khóa là 64 bits. Truyền và bảo mật thông tin 74  Là một thuật toán được sử dụng rộng rãi nhất trên thế giới với bề dày lịch sử hơn 20 năm, được phát triển bởi IBM Team vào những năm 1970, sau đó được phát triển bởi NIST (National Institute of Standard and Technology) cho các ứng dụng thương mại.. DES (Data Encryption Standard ) Truyền và bảo mật thông tin 75  Khóa dùng trong DES có độ dài toàn bộ là 64 bit. Tuy nhiên chỉ có 56 bit thực sự được sử dụng; 8 bit còn lại chỉ dùng cho việc kiểm tra. Vì thế, độ dài thực tế của khóa chỉ là 56 bit. Nó dễ dàng bị phá vỡ chỉ trong vòng 24 tiếng đồng hồ DES Truyền và bảo mật thông tin 76 Triple DES (3DES)  Thực hiện DES ba lần Truyền và bảo mật thông tin 77 AES AES là thuật toán mã hóa đối xứng dạng khối 128-bit Được phát triển bởi Vincent Rijmen và được sự hỗ trợ của chính phủ Mỹ xem như một thuật toán thay thế DES. AES cũng được gọi là Rijndael “Rhine-dale” phát âm theo tên người tạo ra. Truyền và bảo mật thông tin 78 RC 4, 5, 6  Thuật toán RC bao gồm một series được phát triển bởi Ronald Rivest.  Tất cả có chiều dài khóa khác nhau.  RC5 và RC6 là các mã hóa dạng khối với các kích cỡ khác nhau Truyền và bảo mật thông tin 79 Skipjack  Skipjack là một thuật toán mã hóa khối được thiết kế bởi Cơ quan bảo mật quốc gia Hoa kỳ - US National Security Agency (NSA) được sử dụng trong chip Clipper Fortezza PC card Truyền và bảo mật thông tin 80 Blowfish Blowfish là một thuật toán mã hóa miễn phí dùng block 64-bit sử dụng khóa có độ dài khác nhau.Được phát triển bởi Bruce Schneier. Truyền và bảo mật thông tin 81 CAST-128 CAST-128, được đặt theo tên người phát triển là Carlisle Adams và Stafford Tavares, là một thuật toán mã hóa đối xứng có chiều dài khóa 128-bit. Là một trong những đối thủ cạnh tranh chính của AES.

Các file đính kèm theo tài liệu này:

  • pdfbaigianglythuyetmatma_7212.pdf
Tài liệu liên quan