Your SlideShare is downloading. ×
0
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Classical cipher
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Classical cipher

5,532

Published on

A brief history of cryptography

A brief history of cryptography

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total Views
5,532
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
489
Comments
1
Likes
2
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Information Safe Confidentiality Classical cipher Hoang V.Nguyen Mail: startnewday85@gmail.com Department of Computer Science Faculty of Information Technology – Hanoi University of Agriculture.
  • 2. Confidentiality • Who? Sorry, • When? I don’t know. • Where? Có lẽ là từ rất xa xưa!!! very very ancient!!!
  • 3. When/Where do we start? Và Herodotus(Greek: Ἡρόδοηος Ἁλικαρμᾱζζεύς Hēródotos Halikarnāsseús) - sử gia Hy Lạp sống ở thế kỷ thứ 5 trước công nguyên(484 BC - 425 BC) – “Cha đẻ của lịch sử ” trong văn hóa phương tây.
  • 4. Hy Lạp cổ xưa Trong cuốn The Histories, Herodotus miêu tả về cuộc chiến giữa Hy Lạp và Ba Tư vào khoảng thế kỷ 5th B.C.  Xerxes(Vua Ba Tư) đang thiết lập quân đội và lên kế hoạch tấn công bất ngờ Hy Lạp.  Demaratus, một người Hy Lạp bị trục xuất khỏi quê hương; đang sống ở Ba Tư đã gửi cảnh báo tới Hy Lạp: - Ông đã cạo lớp sáp trên hai thanh gỗ dầy, viết lên Xerxes đó lời cảnh báo, cuối cùng phủ một lớp sáp ra ngoài.  Người Hy Lạp, được cảnh báo, đã đảo ngược tính thế. Yếu tố bất ngờ của người Ba Tư đã mất, cuộc chiến của quân đội Ba Tư đã thất bại.
  • 5. Hy Lạp cổ xưa Một hình thức khác:  Histaiaeus muốn bày tỏ sự ủng hộ Aristagoras xứ Miletus nổi dậy chống lại vua Ba Tư.  Để gửi thư bí mật, ông đã cạo tóc trên đầu người đưa thư và viết thư lên da đầu. Người đưa thư chờ cho tóc mọc dài mới đi tìm người nhận. Ở Hy Lạp cổ xưa, Tính bí mật đựa dựa trên việc giấu thư.
  • 6. Steganography Hình thức giấu thư được gọi là steganography. Steganography bắt nguồn từ tiếng Hy Lạp: steganos có nghĩa là “che giấu” và graphein – “viết”. • Trong 2 ngàn năm kể từ thời đại của Herodotus, rất nghiều hình thức khác nhau của steganography đã được sử dụng. • Người Trung Quốc xưa, viết thư lên một tấm lụa mỏng, cuộn lại thành một viên bi nhỏ rồi phủ sáp bên ngoài. Người đưa thư sẽ nuốt viên bi nhỏ chứa thông điệp bí mật và đi tìm người nhận. • Vào thế kỷ thứ 16, Giovanni Porta, một nhà khoa học người Ý đã mô tả cách thức giấu thư trong một quả trứng đã được luộc kỹ bằng cách chế tạo ra một loại mực từ việc hòa chộn phèn và dấm theo một tỷ lệ nhất định. Mực này khi viết lên vỏ trứng sẽ thấm qua vỏ và in lên lòng trắng trứng. Người nhận chỉ việc bóc vỏ trứng và đọc thư.
  • 7. Cryptography • Steganography được sử dụng trong một thời gian dài đã chứng tỏ phần nào sự an toàn của nó. Tuy nhiên, Steganography được xây dựng từ một nền tảng “yếu”. Nếu bức thư bị phát hiện thì tính bí mật ngay lập tức bị triệt tiêu. • Do vậy mà song song với Steganography, là sự phát triển của khoa học mật mã – Cryptography. Cryptography bắt nguòn từ tiếng Hy Lạp: Kryptos có nghĩa là “giấu kín”.
  • 8. Cryptography Định hướng của khoa học mật mã không phải là giấu thư mà là che giấu nội dung của bức thư. Tiến trình che giấu nội dung bức thư được gọi là tiến trình mã hóa – encryption. • Để sinh ra thông điệp không thể hiểu theo cách thông thường, thông điệp ban đầu được biến đổi dựa trên một cách thức đặc biệt đã được thống nhất trước giữa người gửi và người nhận. • Tính vượt trội của cryptography là: Nếu đối phương chặn bắt được bức thư đã được mã hóa thì đối phương cũng không biết được nội dung của bức thư, do đó mà tính bí mật vẫn được đảm bảo.
  • 9. Cryptography • Để đảm bảo tính bí mật có thể tổ hợp cả cryptography và steganography. • Trong chiến tranh thế giới thứ 2, những điệp viên Đức ở Mỹ latin đã chụp ảnh bức thư và thu nhỏ lại như một dấu chấm khoảng 1mm. Sau đó đặt dấu chấm đó trong một bức thư thông thường. • Đôi khi để đảm bảo bí mật, họ cũng mã hóa bức thư trước khi chụp. Cryptography mạnh hơn bởi khả năng bảo đảm tính bí mật ngay cả khi bức thư nằm trong tay của đối phương.
  • 10. Classical Cryptography
  • 11. Spartan Scytable Khúc gỗ bí mật của người Sparta(The Spartan scytale/ skytale) có thừ thế kỷ thứ 5 trước công nguyên • Một dải dây da được quấn quanh khúc gỗ bí mật. Người gửi viết thông điệp lên trên dải dây da dọc theo chiều dài của khúc gỗ. Sau khi viết song, sợi dây da mang trên nó những ký hiệu vô nghĩa, thường được người đưa thư ngụy trang như một chiếc thắt lưng. • Người nhận đơn giản quấn sợi dây da đó lên khúc gỗ của mình và đọc được thông điệp. • Lysander một người Sparta nhận được một thông điệp cảnh báo về cuộc tấn công của Pharnabzus vua xứ Ba Tư. Nhờ có thông điệp đó mà Người Sparta đã đẩy lùi được cuộc tấn công của Ba Tư. Bản chất của khúc gỗ bí mật là làm đảo lộn trật tự các ký tự trên thông điệp gốc. Được biết như hình thức mã chuyển vị đầu tiên.
  • 12. Transposition cipher Mã chuyển vị là hình thức mã hóa mà các ký tự trong thông điệp ban đầu được hoán đổi vị trí cho nhau. Với những thông điệp ngắn, chẳng hạn như thông điệp chỉ có một từ thì phương pháp này không đủ an toàn. “For example, consider this short sentence”. • Với 35 ký tự, chúng ta có hơn 50*1030 cách sắp xếp khác nhau. Nếu mỗi người kiểm tra một cách sắp xếp mất một giây. Thì tất cả mọi người trên trái đất làm việc cả đêm lẫn ngày thì phải mất khoảng thời gian lớn hơn gấp hàng ngàn lần tuổi của vũ trụ mới kiểm tra được hết các cách sắp xếp đó. • Với cách mã hóa như vậy thì dường như là không thể phá vỡ. Tuy nhiên nó lại vấp phải một trở ngại lớn đó là: Nếu các ký tự được chuyển vị một cách ngẫu nhiên thì không chỉ đối thủ mà ngay cả người nhận cũng không thể giải mã nổi.
  • 13. Rail Fence cipher Mã Rail Fence còn được gọi là mã zig zag là một hình thức của mã chuyển vị. • Thông điệp được viết lần lượt từ trái qua phải trên các cột(rail) của một hàng dào tưởng tượng theo đường chéo từ trên xuống dưới. • Theo đường chéo từ dưới lên khi đạt tới cột thấp nhất. • Và khi đạt tới cột cao nhất, lại viết theo đường chéo từ trên xuống. Cứ lặp đi lặp lại như thế cho đến khi viết hết toàn bộ nội dung của thông điệp. Ví dụ: Bản gốc: WE ARE DISCOVERED FLEE AT ONCE Với 3 rails
  • 14. Caesar cipher • Trong cuốn “Chiến tranh xứ Gaul”, Julius Caesar có miêu tả cách ông gửi thư cho Cicero – người bị vây hãm và đang ngấp nghé đầu hàng như thế nào. • Trong bức thư gửi Cicero, Caesar đã thay thế một số ký tự Roma bằng ký tự Hy Lạp để bức thư không thể đọc được bởi đối thủ.
  • 15. Caesar cipher Mã Caesar là một mã thế. • Trong cuốn Cuộc đời của Caesar LVI của Suetonius có mô tả chi tiết về một số mật mã của Caesar. Caesar thay thế một cách đơn giản từng chữ cái trong thư bằng chữ cái cách đó ba vị trí trong bảng chữ cái. Sau này được gọi là mã dịch chuyển Caesar. Bản chất trong hình thức mã hóa của Caesar là thay thế các ký tự trong thư bằng các ký tự khác theo một nguyên tắc nào đó.
  • 16. Substitution cipher Mã thế(substitution cipher) là hình thức mã hóa mà các ký tự trong thông điệp ban đầu được thay thế bởi các ký tự khác hoặc ký hiệu mới theo một nguyên tắc nhất định. • Hình thức thay thế đầu tiên có lẽ từ 4000 năm trước, ở thời đại của các pharaoh. Khi khắc lên bia mộ, người ai cập cổ xưa đã thay thế một số ký hiệu tượng hình trong bản gốc bằng các ký hiệu khác. • Tuy nhiên hình thức thay thế của người ai cập cổ xưa chỉ có ý nghĩa thể hiện sự tôn kính. Do đó có thể nói mã Caesar là hình thức đầu tiên của mã thế.
  • 17. Monoalphabetic cipher • Trong mã dịch chuyển của Caesar, Ta có 25 cách dịch chuyển khác nhau, mỗi cách dịch chuyển cho một loại mã khác nhau. Bảng chữ cái thường Bảng chữ cái mật mã • Thực ra với ý tưởng là sự thay thế, ta không chỉ hạn chế với phép dịch chuyển trong bảng chữ cái, khi đó bảng chữ cái mật mã là bất kỳ sự sắp xếp lại nào của bảng chữ cái thường. Như thế với 26 chữ cái ta sẽ có nhiều hơn 4x1026 bảng chữ cái mật mã khác nhau. • Monoalphabetic cipher là loại mã hóa thay thế chỉ sử dụng một bảng chữ cái mật mã để thay thế các ký tự trong thông điệp gốc.
  • 18. Cryptanalysts Những nhà phân tích(thám) mã(Cryptanalysts) đầu tiên xuất hiện vào khoảng thế kỷ thứ 8 sau công nguyên ở Ả Rập: Abu 'Abd al-Rahman al-Khalil ibn Ahmad ibn 'Amr ibn Tammam al Farahidi al-Zadi al Yahmadi • Giải mã một tài liệu mật mã của người Hy Lạp cho hoàng đế Byzantine. • Là lần đầu tiên phép phân tích mã được đưa ra và viết thành phương pháp.
  • 19. Cryptanalysts Abu Yusuf Ya'qub ibn Is-haq ibn as- Sabbah ibn 'omran ibn Ismail al-Kindi • Là một triết gia người Ả Rập. • Tác giả của 290 cuốn sách về y học, thiên văn học, toán học, ngôn ngữ học và âm nhạc. • Chuyên luận vĩ đại của ông mới được tái khám phá vào năm 1987, tại Cục lưu trữ Sulaimanuyyah Ottoman ở Instanbul, có nhan đề “Khảo cứu về giải mã các thư tín mật mã”. • Chuyên luận đã miêu tả hệ thống phân tích mã có tính cách mạng của al-Kindi – hệ thống phân tích mã dựa trên phân tích tần suất vẫn được sử dụng cho đến ngày nay.
  • 20. Phép phân tích tần suất • Phương pháp này được dựa trên sự khác nhau về tần suất của các chữ cái trong bảng chữ cái của một ngôn ngữ. • Bằng cách thống kê các chữ cái trên văn bản mật mã người giải mã dễ dàng tìm thấy chữ cái trong văn bản mật mã ứng với chữ cái nào trên văn bản gốc. • Tuy nhiên phương pháp này không thể áp dụng một cách vô điều kiện được, vì tần suất của các chữ cái trong văn bản khác nhau là khác nhau nhiều khi là khác xa so với tần suất trung bình. - Tác phẩm La Disparition(Sự biến mất) của Georges Perec. Được Gilbert Adair dịch: A Void. • Monoalphabetic ciphers có thể bị phá.
  • 21. Tần suất các chữ cái tiếng anh
  • 22. Thời kỳ phục hưng • Trong thời kỳ phục hưng khoa học mật mã ở âu châu thực sự phát triển. • Sự xuất hiện và phát triển của phương pháp phân tích mã ở âu châu đã đẩy các nhà giải mã lên ngôi. • Các nhà lập mã buộc phải lao vào cuộc tìm kiếm những mã mới: - Bổ xung thêm các ký tự vô nghĩa vào bảng chữ cái mật mã. - Sự xuất hiện của mã từ: playfair cipher, hill cipher, … .
  • 23. Mary Queen
  • 24. Mã hóa nhiều bảng mã • Leon Battista Alberti là một nhà thông thái xứ Florentine. Ông là một họa sĩ, nhà soạn nhạc, nhà thơ và triết gia đồng thời ông còn là tác giả của sự phân tích khoa học đầu tiên về phối cảnh, một chuyên luận về ruồi và một điếu văn dành cho con chó của mình. • Vào khoảng năm 1460, sau buổi trò chuyện với Leonardo Dato một viên thư ký của giáo hoàng, ông đã viết một tiểu luận về mã hóa. Bài tiểu luận đã phác thảo một dạng mật mã mới được biết như hình thức đầu tiên của mã hóa nhiều bảng mã. Alberti cũng miêu tả việc sử dụng các đĩa mã hóa để thực hiện việc mã hóa với nhiều bảng mã.
  • 25. Mã hóa nhiều bảng mã • Blaise de Vigenère(1523-1596) là một nhà ngoại giao người Pháp. • Trong khoảng thời gian công tác ở Roma, Vigenère đã bắt đầu làm quen với các bài viết của Alberti, Trithemius và Porta. Lúc đó ông mới 26 tuổi. • Sau đó, khi ở tuổi 39, Vigenère quyết định rằng ông đã kiếm đủ tiền và từ bỏ con đường công danh để tập trung vào nghiên cứu. • Vigenère đã nghiên cứu và hoàn thiện ý tưởng mã hóa nhiều bảng mã của Alberti Trithemius và Porta. Do vậy để tôn vinh Vigenère-người có công hoàn thiện ý tưởng mật mã nhiều bảng mã, mật mã này được gọi là mật mã Vigenère .
  • 26. Mật mã Vigenère • Điểm mạnh của mã Vigenère là việc sử dụng 26 bảng mã khác nhau. Do đó mà không bị phá trong một thời gian dài. • Một ưu điểm nữa là mã Vigenère hỗ trợ việc sử dụng từ khóa vô cùng tiện lợi.
  • 27. Công phá mật mã Vigenère • Charles Babbage(1791-1871) – một thiên tài lập dị người Anh. • Ông đã thiết kế máy tính sai phân đầu tiên. Chiếc máy được ví như một bước đệm để đến với máy phân tích và máy tính hiện đại ngày nay. • Năm 1854, để giải lời thách đố của Thwaites ông đã phát minh ra một phương pháp giải mã vĩ đại giúp giải mã các thông điệp được mã hóa bằng mật mã Vigenère. • Tuy nhiên phát kiến này mới được biết đến vào thế kỷ 20, khi các học giả nghiên cứu một số lượng lớn những ghi chép của ông.
  • 28. Công phá mật mã Vigenère • Friedrich Wilhelm Kasiski(1805-1881). • Ông đã phát triển kỹ thuật tấn công thống kê và đã công phá thành công mật mã Vigenère. • Năm 1863, Kasiski công bố kỹ thuật đột phá trong giải mã của mình trong cuốn “Chữ viết bí mật và nghệ thuật giải mã”.
  • 29. Cơ giới hóa việc giữ bí mật Từ đĩa mã hóa • Ý tưởng cơ giới hóa việc giữ bí mật xuất hiện lần đầu tiên vào thế kỷ thứ 15 với chiếc đĩa mã hóa của Leon Alberti-người cũng được coi là cha đẻ của mật mã nhiều bảng chữ cái. • Việc cơ giới hóa quá trình mã hóa và giải mã giúp làm tăng tốc độ mã hóa, giải mã đồng thời làm giảm sai sót trong các quá trình này. Từ đó tạo nền tảng cho áp dụng các cách mã hóa phức tạp hơn.
  • 30. Cơ giới hóa việc giữ bí mật Từ đĩa mã hóa ---> máy Enigma • 500 năm sau, một dạng phức tạp hơn đã làm sống lại ý tưởng mã hóa của Alberti và đã đưa đến một thế hệ mật mã mới – khó giải hơn tất cả các mật mã trước đây. • Năm 1918, nhà phát minh người Đức, Arthur Scherbius đã phát minh ra chiếc máy vĩ đại với cái tên Enigma. • Sau Arthur Scherbius một vài năm, các nhà mật mã ở các nước như Thụy Điển(Arvid Damm), Hà Lan(Alexander Koch), và ở Mỹ(Edward Hebern) cũng đã khai thác ý tưởng này.
  • 31. Công phá Enigma • Trong chiến tranh thế giới thứ hai những máy mã hóa dạng Enigma đã được sử dụng để vận chuyển các thông tin quân sự bí mật. Năm 1926 quân đội Đức đã chính thức sử dụng Enigma. • Quân đội Nhật sau đó sử dụng máy Purple. Gánh nặng đặt lên vai quân đội đồng minh!
  • 32. Công phá Enigma • Quân đội Anh đã thành lập một trung tâm giải mã mới ở Bletchley Park, Buckinghamshire. Trung tâm đã tuyển rất nhiều các nhóm người bao gồm: những nhà ngôn ngữ học, những người chơi cờ, chơi ô chữ, những nhà toán học, khoa học, …. • Ngưởi nổi tiếng nhất trong những người đó là Alan Turing – Người đã thiết kế chiếc máy tính có thể lập trình là nền tảng cho máy tính hiện đại. • Bằng sự nỗ lực phi thường và trí thông minh tuyệt vời, những con người ở Bletcheley Park đã công phá thành công Enigma của quân đội đức, tạo ảnh hưởng to lớn cho việc rút ngắn chiến tranh thế giới thứ 2.
  • 33. Arthur Zimmermann
  • 34. Rào cản ngôn ngữ • Các nhà tạo mã đồng minh đã sớm nhận ra rằng, mật mã máy phức tạp và không phải là cách thức gửi thư an toàn nhất. • Không những vậy các máy phức tạp đòi hỏi thời gian nhiều hơn cho việc mã hóa và giải mã – điều đó cũng là một trở ngại lớn cho chiến trường. • Năm 1942, Philip Johnston đã đề xuất một phương pháp mới cho việc đảm bảo bí mật đó là tận dụng những rào cản về ngôn ngữ. Những ngôn ngữ cổ ít người biết sẽ là một phương tiện đảm bảo tính bí mật đơn giản, thuận tiện và an toàn nhất.
  • 35. Rào cản ngôn ngữ Mật mã Navajo được đưa vào sử dụng – được gọi là code Talker hay WindTalker. Những chiến binh Navajo
  • 36. Lý thuyết mật mã
  • 37. Các khái niệm cơ bản • Bản gốc là dữ liệu ban đầu, có thể hiểu được mà không cần sử dụng những công cụ, những biến đổi đặc biệt nào. Bản gốc(plaintext hay original text) còn được gọi là bản rõ(clear text). • Bản mã hóa(ciphertext) là kết quả của việc áp dụng phương pháp mã hóa lên bản gốc. Với bản mã hóa, ta không thể thu được thông tin đúng mà không áp dụng những cách thức đặc biệt. Bản mã hóa chính là dữ liệu đã được mã hóa(encrypted data). • Quá trình chuyển đổi bản mã thành bản rõ được gọi là giải mã(decryption). • Quá trình chuyển đổi bản rõ thành bản mã được gọi là mã hóa(encryption).
  • 38. Các khái niệm cơ bản • Khoa học mật mã(cryptography) là khoa học nghiên cứu về việc tạo mã và giải mã. • Khoa học phân tích mã(cryptanalysis) hay khoa học thám mã là khoa học nghiên cứu các nguyên lý giải mã mà không biết khóa hay nói chính xác hơn là khoa học phân tích và phá mã. Người làm công tác phân tích và phá mã được gọi là các nhà thám mã(cryptanlysts). • Cryptology bao gồm cả cryptography và cryptanlysis. • Lược đồ mã hóa(encryption schema) là lược đồ mô tả cách thức mã hóa của người gửi và giải mã của người nhận.
  • 39. Các thao tác mã hóa cơ bản Bất kỳ loại mật mã nào cũng được xây dựng từ các thao tác mã hóa cơ bản sau: • Phép thế - substitution. • Phép chuyển vị - transposition(hay hoán vị). • Các thao tác mã hóa phức tạp được xây dựng từ tổ hợp các phép thế và chuyển vị được gọi là các phép tích.
  • 40. Khóa và thuật toán mã/giải mã • Thuật toán mã hóa(giải mã) là một thủ tục thể hiện cách thức xử lý bản gốc(bản mã hóa) thành bản mã hóa(bản gốc). Thuật toán mã hóa sẽ là một sự tổ hợp các phép thế và phép chuyển vị theo một trình tự nhất định. • Thuật toán mã hóa – encryption algorithm được thể hiện như một hàm toán học với tham số vào là bản gốc(M) và khóa(k). Được ký hiệu là: E(M,k) • Thuật toán giải mã – decryption algorithm được thể hiện như một hàm toán học với tham số vào là bản mã(C) và khóa k. Được ký hiệu là: D(C,k).
  • 41. Khóa và thuật toán mã/giải mã • Khóa là một tham số đặc biệt thường được giữ bí mật. Khóa giúp cho sự mã hóa(giải mã) không lệ thuộc hoàn toàn vào thuật toán. Với cùng một bản gốc, một thuật toán, mã hóa với các khóa khác nhau sẽ cho ra bản mã khác nhau(tương tự như vậy với giải mã). • Số lượng khóa khả dĩ hay tiềm năng của một thuật toán mã hóa(giải mã) là số lượng khóa có thể được lựa chọn như một tham số cho thuật toán mã hóa(giải mã). • Số lượng khóa khả dĩ là tùy thuộc vào thuật toán mã hóa(giải mã).
  • 42. Bí mật thuật toán hay bí mật khóa • Vào năm 1883, nguyên lý Kerchkhoff được đưa ra: “Sự an toàn của một hệ thống mật mã không phải phụ thuộc vào việc giữ bí mật thuật toán mật mã. Sự an toàn này chỉ phụ thuộc vào việc giữ bí mật khóa.” • Ngày nay các mật mã thương mại thường công bố rộng rãi thuật toán mã hóa, nhưng trong quân sự thì vẫn được giấu kín. • Giấu kín thuật toán mã hóa sẽ nâng cao tính an toàn của mật mã. Tuy nhiên việc công bố thuật toán mã hóa sẽ tạo điều kiện cho lý thuyết mật mã phát triển.
  • 43. Phân loại mật mã • Kiểu thao tác sử dụng trong mã hóa - Mã thế(Substitution cipher) - Mã chuyển vị(Transposition cipher) - Mã tích • Khóa mã hóa - Mã đối xứng(Symmetric cipher) – chỉ sử dụng một khóa - Mã bất đối xứng(Asymmetric cipher)- sử dụng hai khóa • Cách thức xử lý trên bản gốc - Mã dòng(Stream cipher) - Mã khối(Block cipher)
  • 44. Mã đối xứng Mã đối xứng(symmetric cipher) là loại mật mã mà việc mã hóa và giải mã có thể sử dụng chung một khóa, người mã hóa cũng có thể giải mã và ngược lại người giải mã cũng có thể mã hóa. Mã đối xứng còn được gọi là mã một khóa(single-key cipher). • Mã đối xứng có lược đồ như sau:
  • 45. Mã đối xứng Mã dịch chuyển Caesar. • Ta lần lượt đánh chỉ số cho các chữ cái bắt đầu từ 0. • Ta mô tả mã dịch chuyển Caesar một cách hình thức như sau: - k là một số nguyên từ 0 tới 25 được gọi là khóa. - Hàm mã hóa: E(p,k)=(p+k)mod26 với p là chỉ số của ký tự cần mã hóa. - Hàm giải mã: D(c,k)=|c-k|mod26 với c là chỉ số của ký tự cần giải mã. • Như vậy số lượng khóa tiềm năng của mã dịch chuyển Caesar là 25(do k=0 không có giá trị mã hóa).
  • 46. Mã đối xứng Mã Hill – Hill Cipher. • Ta lần lượt đánh chỉ số cho các chữ cái bắt đầu từ 0. • Mã Hill dựa trên ý tưởng mã hóa từng nhóm ký tự. Cụ thể như sau: - k là một ma trận vuông cỡ n(được gọi là khóa). - Hàm mã hóa: E(p,k)=(k.p)mod26 với p ma trận “hàng” chứa n ký tự cần mã hóa. - Hàm giải mã: D(c,k)=k1.c mod26 với k1là ma trận nghịch đảo của k và c là ma trận “hàng” chứa n ký tự mã hóa cần giải mã.
  • 47. Mã đối xứng Để đảm bảo tính bí mật của thông tin, mã đối xứng phải thỏa mãn các yêu cầu sau: • Thuật toán mã hóa phải đủ mạnh để đối phương không thể giải mã mà không biết khóa. • Khóa phải được giữ bí mật tuyệt đối. Do đó mà mã đối xứng còn được gọi là mã khóa bí mật(secret-key cipher).
  • 48. Mã đối xứng Để có thể thực hiện trao đổi thông tin một cách bí mật bằng mã đối xứng, người sử dụng phải: • Thống nhất với nhau thuật toán mã hóa và giải mã sẽ được sử dụng trong quá trình trao đổi thông tin. • Thống nhất với nhau khóa bí mật sẽ được sử dụng trong quá trình trao đổi. Cũng bởi vậy mà mã đối xứng còn được gọi là mã thỏa thuận(conventional cipher). Việc phải thống nhất khóa bí mật là điểm yếu của mã đối xứng. Vấn đề phân phối khóa(key distribution) trở thành vấn đề quan trọng của mã đối xứng.
  • 49. Mã đối xứng • Mã khóa bí mật, mã thỏa thuận, mã một khóa là các tên khác nhau của mã đối xứng. • Mã đối xứng chỉ sử dụng một khóa duy nhất đã thỏa thuận trước trong cả tiến trình mã hóa và giải mã. • Tất cả các mã cổ điển đều là mã đối xứng – mã đối xứng có một lịch sử dài và thú vị. • Mã đối xứng là loại mã duy nhất cho đến khi xuất hiện mã bất đối xứng vào năm “1975”.
  • 50. Trở lại với lịch sử
  • 51. Alan Turing Bomb Machine
  • 52. Clossus Machine
  • 53. Máy tính đã ra đời! ENIAC MACHINE
  • 54. Sự tác động của máy tính tới Lý thuyết mật mã • Các nhà thám mã có một công cụ đắc lực cho việc phá mã. Ngay cả cách thử tất cả các khóa khả dĩ cũng trở nên có thể thực hiện được. • Đáp lại, các nhà tạo mã cũng khai thác triệt để sức mạnh của máy tính để tạo nên các mật mã phức tạp hơn. Máy tính trở thành động lực cho lý thuyết mật mã!
  • 55. Sự tác động của máy tính tới Lý thuyết mật mã • Máy tính cho phép tạo dựng các máy mã hóa ảo rất phức tạp dựa trên những máy mã lý thuyết. • Cho phép tốc độ mã hóa và giải mã được thực hiện nhanh chóng hơn. • Mã hóa trên các bits thông tin thay vì trên các chữ cái trong mật mã cổ điển. Máy tính mở màn cho mật mã hiện đại!

×