SlideShare a Scribd company logo
1 of 55
Download to read offline
Information Safe
              Confidentiality
                   Classical cipher
Hoang V.Nguyen
Mail: startnewday85@gmail.com
Department of Computer Science
Faculty of Information Technology – Hanoi University of Agriculture.
Confidentiality

• Who?                     Sorry,
• When?              I don’t know.
• Where?
Có lẽ là từ rất xa xưa!!! very very ancient!!!
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.
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.
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ư.
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ư.
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”.
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.
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.
Classical Cryptography
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.
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.
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
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ủ.
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 đó.
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ế.
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.
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.
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.
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á.
Tần suất các chữ cái tiếng anh
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, … .
Mary Queen
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ã.
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 .
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.
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.
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ã”.
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.
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.
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!
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.
Arthur Zimmermann
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.
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
Lý thuyết mật mã
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).
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.
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.
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).
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ã).
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.
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)
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:
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).
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ã.
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).
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.
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”.
Trở lại với lịch sử
Alan Turing   Bomb Machine
Clossus Machine
Máy tính đã ra đời!


       ENIAC MACHINE
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ã!
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!

More Related Content

What's hot

Pretty good privacy
Pretty good privacyPretty good privacy
Pretty good privacyPunnya Babu
 
basic encryption and decryption
 basic encryption and decryption basic encryption and decryption
basic encryption and decryptionRashmi Burugupalli
 
Network security Encryption
Network security EncryptionNetwork security Encryption
Network security EncryptionJoel Briza
 
Ôn tập an toàn thông tin
Ôn tập an toàn thông tinÔn tập an toàn thông tin
Ôn tập an toàn thông tinMozzila Rosa
 
Digital signature schemes
Digital signature schemesDigital signature schemes
Digital signature schemesravik09783
 
Steganography Project
Steganography Project Steganography Project
Steganography Project Jitu Choudhary
 
Cơ sở an toàn thông tin chương 2
Cơ sở an toàn thông tin chương 2Cơ sở an toàn thông tin chương 2
Cơ sở an toàn thông tin chương 2NguynMinh294
 
Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)Anas Rock
 
KHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊN
KHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊNKHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊN
KHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊNVu Truong
 
Cơ sở an toàn thông tin chương 4
Cơ sở an toàn thông tin chương 4Cơ sở an toàn thông tin chương 4
Cơ sở an toàn thông tin chương 4NguynMinh294
 
Mutual-Exclusion Algorithm.ppt
Mutual-Exclusion Algorithm.pptMutual-Exclusion Algorithm.ppt
Mutual-Exclusion Algorithm.pptShikhaManrai1
 
Algorithm analysis in fundamentals of data structure
Algorithm analysis in fundamentals of data structureAlgorithm analysis in fundamentals of data structure
Algorithm analysis in fundamentals of data structureVrushali Dhanokar
 
02. chapter 3 lexical analysis
02. chapter 3   lexical analysis02. chapter 3   lexical analysis
02. chapter 3 lexical analysisraosir123
 
Caesar Cipher , Substitution Cipher, PlayFair and Vigenere Cipher
Caesar Cipher , Substitution Cipher, PlayFair and Vigenere CipherCaesar Cipher , Substitution Cipher, PlayFair and Vigenere Cipher
Caesar Cipher , Substitution Cipher, PlayFair and Vigenere CipherMona Rajput
 
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơnKĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơnNguyen Thieu
 
Key management.ppt
Key management.pptKey management.ppt
Key management.pptSou Jana
 

What's hot (20)

Pretty good privacy
Pretty good privacyPretty good privacy
Pretty good privacy
 
basic encryption and decryption
 basic encryption and decryption basic encryption and decryption
basic encryption and decryption
 
Network security Encryption
Network security EncryptionNetwork security Encryption
Network security Encryption
 
Information hiding
Information hidingInformation hiding
Information hiding
 
Ôn tập an toàn thông tin
Ôn tập an toàn thông tinÔn tập an toàn thông tin
Ôn tập an toàn thông tin
 
Digital signature schemes
Digital signature schemesDigital signature schemes
Digital signature schemes
 
Steganography Project
Steganography Project Steganography Project
Steganography Project
 
Cơ sở an toàn thông tin chương 2
Cơ sở an toàn thông tin chương 2Cơ sở an toàn thông tin chương 2
Cơ sở an toàn thông tin chương 2
 
Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)Information Security Cryptography ( L02- Types Cryptography)
Information Security Cryptography ( L02- Types Cryptography)
 
Đề tài: Nhận dạng đối tượng sử dụng thuật toán AdaBoost, HOT
Đề tài: Nhận dạng đối tượng sử dụng thuật toán AdaBoost, HOTĐề tài: Nhận dạng đối tượng sử dụng thuật toán AdaBoost, HOT
Đề tài: Nhận dạng đối tượng sử dụng thuật toán AdaBoost, HOT
 
KHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊN
KHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊNKHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊN
KHAI PHÁ LUẬT KẾT HỢP CÁC MÔN HỌC CỦA SINH VIÊN
 
Cơ sở an toàn thông tin chương 4
Cơ sở an toàn thông tin chương 4Cơ sở an toàn thông tin chương 4
Cơ sở an toàn thông tin chương 4
 
Mutual-Exclusion Algorithm.ppt
Mutual-Exclusion Algorithm.pptMutual-Exclusion Algorithm.ppt
Mutual-Exclusion Algorithm.ppt
 
Cryptography
CryptographyCryptography
Cryptography
 
Hash function
Hash functionHash function
Hash function
 
Algorithm analysis in fundamentals of data structure
Algorithm analysis in fundamentals of data structureAlgorithm analysis in fundamentals of data structure
Algorithm analysis in fundamentals of data structure
 
02. chapter 3 lexical analysis
02. chapter 3   lexical analysis02. chapter 3   lexical analysis
02. chapter 3 lexical analysis
 
Caesar Cipher , Substitution Cipher, PlayFair and Vigenere Cipher
Caesar Cipher , Substitution Cipher, PlayFair and Vigenere CipherCaesar Cipher , Substitution Cipher, PlayFair and Vigenere Cipher
Caesar Cipher , Substitution Cipher, PlayFair and Vigenere Cipher
 
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơnKĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
Kĩ thuật lọc ảnh và ứng dụng trong lọc nhiễu làm trơn
 
Key management.ppt
Key management.pptKey management.ppt
Key management.ppt
 

Viewers also liked

Anninhmang K13 Mtt
Anninhmang K13 MttAnninhmang K13 Mtt
Anninhmang K13 MttQuynh Khuong
 
Secret key cryptography
Secret key cryptographySecret key cryptography
Secret key cryptographyPrabhat Goel
 
Hosobaiday hoang huu trung- nhom 8
Hosobaiday hoang huu trung- nhom 8Hosobaiday hoang huu trung- nhom 8
Hosobaiday hoang huu trung- nhom 8Hoàng Trung
 
Navigating Electronic Signature Law In Florida
Navigating Electronic Signature Law In FloridaNavigating Electronic Signature Law In Florida
Navigating Electronic Signature Law In FloridaClientSide
 
Kỹ năng tìm kiếm thông tin và nghiên cứu thị trường
Kỹ năng tìm kiếm thông tin và nghiên cứu thị trườngKỹ năng tìm kiếm thông tin và nghiên cứu thị trường
Kỹ năng tìm kiếm thông tin và nghiên cứu thị trườngCat Van Khoi
 
Mã hóa đường cong Elliptic
Mã hóa đường cong EllipticMã hóa đường cong Elliptic
Mã hóa đường cong EllipticLE Ngoc Luyen
 
BÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNET
BÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNETBÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNET
BÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNETTrần Nhân
 
Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Mohamed Loey
 
Đào tạo cửa hàng trưởng chuyên nghiệp
Đào tạo cửa hàng trưởng chuyên nghiệpĐào tạo cửa hàng trưởng chuyên nghiệp
Đào tạo cửa hàng trưởng chuyên nghiệpTổ chức Đào tạo PTC
 
Computer Security Lecture 2: Classical Encryption Techniques 1
Computer Security Lecture 2: Classical Encryption Techniques 1Computer Security Lecture 2: Classical Encryption Techniques 1
Computer Security Lecture 2: Classical Encryption Techniques 1Mohamed Loey
 
Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Securitybabak danyal
 

Viewers also liked (20)

Anninhmang K13 Mtt
Anninhmang K13 MttAnninhmang K13 Mtt
Anninhmang K13 Mtt
 
MATMA - Chuong2
MATMA - Chuong2MATMA - Chuong2
MATMA - Chuong2
 
Secret key cryptography
Secret key cryptographySecret key cryptography
Secret key cryptography
 
Ch02
Ch02Ch02
Ch02
 
Hosobaiday hoang huu trung- nhom 8
Hosobaiday hoang huu trung- nhom 8Hosobaiday hoang huu trung- nhom 8
Hosobaiday hoang huu trung- nhom 8
 
Hệ mật mã Mcelice
Hệ mật mã MceliceHệ mật mã Mcelice
Hệ mật mã Mcelice
 
Hệ mật mã Mcliece
Hệ mật mã MclieceHệ mật mã Mcliece
Hệ mật mã Mcliece
 
Hệ mật mã Rabin
Hệ mật mã RabinHệ mật mã Rabin
Hệ mật mã Rabin
 
Hệ mật mã Elgamal
Hệ mật mã ElgamalHệ mật mã Elgamal
Hệ mật mã Elgamal
 
Navigating Electronic Signature Law In Florida
Navigating Electronic Signature Law In FloridaNavigating Electronic Signature Law In Florida
Navigating Electronic Signature Law In Florida
 
Hệ mật mã Mekle-Hellman
Hệ mật mã Mekle-HellmanHệ mật mã Mekle-Hellman
Hệ mật mã Mekle-Hellman
 
Kỹ năng tìm kiếm thông tin và nghiên cứu thị trường
Kỹ năng tìm kiếm thông tin và nghiên cứu thị trườngKỹ năng tìm kiếm thông tin và nghiên cứu thị trường
Kỹ năng tìm kiếm thông tin và nghiên cứu thị trường
 
Mã hóa đường cong Elliptic
Mã hóa đường cong EllipticMã hóa đường cong Elliptic
Mã hóa đường cong Elliptic
 
BÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNET
BÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNETBÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNET
BÀI 22: MỘ SỐ DỊCH VỤ CƠ BẢN CỦA INTERNET
 
Cryptography
Cryptography Cryptography
Cryptography
 
Giáo trình mật mã học công nghệ thông tin
Giáo trình mật mã học công nghệ thông tinGiáo trình mật mã học công nghệ thông tin
Giáo trình mật mã học công nghệ thông tin
 
Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2Computer Security Lecture 3: Classical Encryption Techniques 2
Computer Security Lecture 3: Classical Encryption Techniques 2
 
Đào tạo cửa hàng trưởng chuyên nghiệp
Đào tạo cửa hàng trưởng chuyên nghiệpĐào tạo cửa hàng trưởng chuyên nghiệp
Đào tạo cửa hàng trưởng chuyên nghiệp
 
Computer Security Lecture 2: Classical Encryption Techniques 1
Computer Security Lecture 2: Classical Encryption Techniques 1Computer Security Lecture 2: Classical Encryption Techniques 1
Computer Security Lecture 2: Classical Encryption Techniques 1
 
Classical Encryption Techniques in Network Security
Classical Encryption Techniques in Network SecurityClassical Encryption Techniques in Network Security
Classical Encryption Techniques in Network Security
 

More from Hoang Nguyen

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and ApplicationsHoang Nguyen
 
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introductionHoang Nguyen
 
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentHoang Nguyen
 
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forestsHoang Nguyen
 
Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital SignatureHoang Nguyen
 
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTINGHoang Nguyen
 
Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision MakingHoang Nguyen
 
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systemsHoang Nguyen
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor SystemsHoang Nguyen
 
Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS courseHoang Nguyen
 
Background Knowledge
Background KnowledgeBackground Knowledge
Background KnowledgeHoang Nguyen
 
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security CourseHoang Nguyen
 
Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS CourseHoang Nguyen
 

More from Hoang Nguyen (20)

GANs and Applications
GANs and ApplicationsGANs and Applications
GANs and Applications
 
Scrum - An introduction
Scrum - An introductionScrum - An introduction
Scrum - An introduction
 
ORM in Django
ORM in DjangoORM in Django
ORM in Django
 
Introduction to Cross-platform App Development
Introduction to Cross-platform App DevelopmentIntroduction to Cross-platform App Development
Introduction to Cross-platform App Development
 
Conistency of random forests
Conistency of random forestsConistency of random forests
Conistency of random forests
 
Trust - Digital Signature
Trust - Digital SignatureTrust - Digital Signature
Trust - Digital Signature
 
Key Exchange
Key ExchangeKey Exchange
Key Exchange
 
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
SOME SECURITY CHALLENGES  IN CLOUD COMPUTINGSOME SECURITY CHALLENGES  IN CLOUD COMPUTING
SOME SECURITY CHALLENGES IN CLOUD COMPUTING
 
Stream ciphers
Stream ciphersStream ciphers
Stream ciphers
 
Classical ciphers
Classical ciphersClassical ciphers
Classical ciphers
 
Confidentiality
ConfidentialityConfidentiality
Confidentiality
 
Information, Data and Decision Making
Information, Data and Decision MakingInformation, Data and Decision Making
Information, Data and Decision Making
 
Multiple processor systems
Multiple processor systemsMultiple processor systems
Multiple processor systems
 
Multiprocessor Systems
Multiprocessor SystemsMultiprocessor Systems
Multiprocessor Systems
 
Introduction to AOS course
Introduction to AOS courseIntroduction to AOS course
Introduction to AOS course
 
Background Knowledge
Background KnowledgeBackground Knowledge
Background Knowledge
 
Introduction to Information Security Course
Introduction to Information Security CourseIntroduction to Information Security Course
Introduction to Information Security Course
 
Introduction to CNS Course
Introduction to CNS CourseIntroduction to CNS Course
Introduction to CNS Course
 
Dynamic Testing
Dynamic TestingDynamic Testing
Dynamic Testing
 
Nosql intro
Nosql introNosql intro
Nosql intro
 

Classical cipher

  • 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.
  • 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, … .
  • 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.
  • 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
  • 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
  • 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!