Information

  • Full title: The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography.
  • Version I read: Vietnamese.
  • Title in Vietnamese: Mật mã: từ cổ điển đến lượng tử.
  • Genre: Factual.
  • Author: Simon Lehna Singh (English, 1964 - today).
  • Published: 1999 (Fourth Estate).
  • Simon is also the author of The last theorem of Fermat (1997).

Đây là quyển sách thứ hai ngoài quyển Chúa trời có phải là nhà toán học? khiến tôi đọc đi đọc lại vài chương đầu nhiều lần. Lý do không phải vì chúng quá hay mà là bởi việc bỏ dở giữa chừng khi đang đọc các tác phẩm này. Tôi có thói quen mỗi lần bỏ lâu quá là phải đọc lại từ đầu tác phẩm. May mắn là lần này đủ kiên nhẫn để đọc hết.

Quyển sách trong nguyên bản tiếng Anh dày hơn 250 trang nhưng khi được dịch ra tiếng Việt thì dày đến hơn 500 trang. Tuy nó dày như thế nhưng sức cuốn hút là khó tránh khỏi.

Cái tài của tác giả là thổi một cốt truyện có chủ đích sắp xếp vào quá trình hình thành và phát triển thế giới mật mã. Từ lúc con người ta có nhu cầu gìn giữ bí mật trong liên lạc bằng những thứ rất thô sơ và đơn giản đến việc sử dụng nó hàng ngày bằng công nghệ hiện đại. Xuyên suốt tác phẩm là trận đánh không mệt mỏi giữa bên tạo mã và những nhà giải mã. Những thuật toán tài tình, những chiếc máy phức tạp lần lượt ra đời chỉ để phục vụ cho việc mã hóa và giải mã.

Đọc tác phẩm cũng cho ta thấy được tầm quan trọng của những lý thuyết toán học thuần túy vốn tưởng chừng như vô dụng trong đời sống thực nay lại có ứng dụng tuyệt vời.

Cũng giống như quyển Định lý cuối cùng của Fermat, Simon Sign một lần nữa cho thấy tầm hiểu biết sâu rộng và phong cách kể chuyện tài tình của mình. Bạn sẽ được đọc một tác phẩm khoa học dưới góc nhìn của một người đọc tiểu thuyết với cốt truyện rõ ràng và lôi cuốn.

Ban đầu tôi đọc tới đâu ghi chú tới đó, tuy nhiên vì nhiều lý do nên các chương cuối của sách tôi chưa kịp viết tóm tắt. Sẽ bổ sung vào một ngày thuận tiện hơn.

Bản mật mã của Nữ hoàng Mary xứ Scotland

Âm mưu Babington

1542, vua nước Anh là Henry VIII tiến đánh vua xứ Scotland là James V và giành chiến thắng. Vua James V quá lo lắng và sợ hãi đã qua đời (3o tuổi) sau đó để lại đứa con gái mới sinh là Mary. Mary trở thành nữ hoàng xứ Scotland khi vừa chào đời. Vua Henry VIII không muốn ỷ thế đánh chiếm xứ Scotland mà muốn dụ dỗ để Mary cưới con của ông ta là Edward, cũng là 1 đứa trẻ, để từ đó thống nhất Anh-Scotland. Tuy nhiên triều đình Scotland ko chịu và gả Mary cho Francis, con trai hoàng đế nước Pháp với mong muốn được Pháp giúp đỡ và cũng vì Pháp là một nước theo Thiên Chúa Giáo, còn Anh khi ấy là nước theo đạo Tin Lành.

Vua Henry VIII rất tức giận, đã tiến hành lấn chiếm, cướp bóc và ép xứ Scotland phải gả Mary cho con trai ông ta. Cho đến khi ông ta chết và con ông ta là vua Edward VI vẫn tiếp tục chiến dịch này. Điều này dẫn đến việc triều đình Scotland phải chuyển Mary gấp sang Pháp lánh nạn khi cô chỉ mới 6 tuổi (1548).

Khi Mary tròn 16, bà lấy Francis như đã định và trở thành hoàng hậu nước Pháp. Tuy nhiên một năm sau Francis qua đời và bà trở thành quả phụ (1560). Bà trở lại Scotland, khi ấy đạo Tin Lành đang chiếm ưu thế. Bà tái giá với hai người khác nhưng đều làm cho thanh thế của bà giảm đi rất nhiều và bà bị nhóm quý tộc Tin Lành Scotland bắt giam. Con trai bà là James VI lên làm vua thay khi mới 14 tháng tuổi và bị điều khiển bởi bọn quý tộc.

Sau đó bà trốn thoát được và hy vọng sẽ lánh nạn được ở nước Anh, nơi mà người dì họ Elizabeth I của mình đang làm nữ hoàng. Edward VI là em trai cùng cha khác mẹ với Elizabeth I. Tuy nhiên Elizabeth lại xem Mary là mối họa do những người Thiên Chúa giáo ở Anh xem Mary mới đích thị là nữ hoàng, thế nên Elizabeth I đã bắt giam lỏng Mary thay vì đối xử với Mary như Mary tưởng.

Đến 1586, sau 18 năm bị giam cầm, Mary được một người tên Anthony Babington mới chỉ 24 tuổi lên kế hoạch giải cứu bà (đồng thới giết Elizabeth I). Để mọi thứ có thể trót lọt, họ cần phải có sự liên lạc. Họ đã dùng mật thư để liên hệ với nhau. Loại mật thư họ sử dụng là mã thay thế dùng một bảng chữ cái hỗn hợp (tôi sẽ giải thích ở các đoạn sau). Âm mưu này ngay từ đầu đã bị thượng thư của nữ hoàng Elizabeth phát hiện và người đưa thư cầu nối giữa Mary và Babignton cũng chính là điệp viên hai mang do ông thượng thư này cài vào. Thế là Mary bị xử chặt đầu vì tội mưu phản của mình.

Nói thêm về mối quan hệ giữa Elizabeth I và Mary (xứ Scotland). Vua Henry VIII có người em gái là Margaret lấy vua James IV xứ Scotland. Con của Margaret là James V. Mary là con của James V này trong khi Elizabeth I lại là con của Henry VIII, vốn là cậu của James V. Thế nên Elizabeth I là dì họ của Mary. Sách Mật Mã do nhà xuất bản dịch đã bị sai điểm này, họ dịch hai người họ là chị em họ.

Sự tiến hóa của thư từ bí mật

Chính nghệ thuật viết thư bí mật đã cứu người Hy Lạp khỏi sự thống trị của tên vua bạo chúa Ba Tư là Xerxes. Tuy nhiên họ chọn cách “giấu thư” thay vì “mã hóa thư”. Mã hóa thư là việc che giấu nội dung thư chứ không phải giấu đi bức thư.

  • Cạo lớp sáp bên ngoài hai thanh gỗ dày, viết lên đó rùi phủ lại lớp sáp.
  • Cạo tóc trên đầu người đưa tin, viết lên đó, chờ tóc mọc lại rùi gởi tin đi.
  • Dùng một loại mực đặc biệt viết lên vỏ một quả trứng đã luộc. Lộc quả trứng ra sẽ đọc được.
  • Mực vô hình.

Mật mã có thể được chia làm 2 loại : chuyển vịthay thế.

  • Chuyển vị: các chữ cái trong thư được sắp xếp lại. Một dạng chuyển vị đã từng được sử dụng phổ biến là khúc gỗ bí mật (scytable) của Sparta có từ thế kỷ V TCN. Khi muốn xem nội dung thư, phải quấn thư xung quanh một khúc gỗ quy định trước kích thước.
  • Thay thế : các chữ cái được thay thế bởi một chữ khác trong bảng chữ cái. Khi các chữ cái được dịch chuyển đi một số vị trí, mã thay thế đó được gọi là mật mã dịch chuyển Caesar hay đơn giản là mã Caesar (ông vua Cộng Hòa La Mã này đã sử dụng mật mã rất thường xuyên). Tính đơn giản và khá vững chắc của mã thay thế đã giúp nó thống trị nghệ thuật thư tín bí mật trong suốt thiên niên kỷ thứ nhất sau CN.

Mã chuyển vị thì các chữ cái vẫn giữ nguyên dạng chỉ thay đổi vị trí còn mã thay thế thì các chữ cái thay đổi dạng nhưng vị trí không thay đổi.

Một bức thư mã hóa sẽ bao gồm: thuật toán mã hóa + chìa khóa mã hóa. Ví dụ phát hiện ra bức thư có các chữ cái bị thay thế bởi các chữ cái khác, đó là thuật toán còn quy luật thay thế là như thế nào thì đó là chìa khóa mã hóa. Nguyên tắc Kerchhoffs: sự an toàn của một hệ thống mã hóa không phụ thuộc vào việc giữ bí mật thuật toán mã hóa. Độ an toàn chỉ phụ thuộc vào việc giữ bí mật chìa khóa mã.

Các nhà phân tích mã Ả Rập

Năm 610, ở tuổi 40, Muhammad thường lui tới 1 hang động bên ngoài thánh địa Mecca để suy ngẫm và ông được thiên thần Gabriel viếng thăm và tuyên bố ông là nhà tiên tri của Chúa. Ông mất đi, để lại những mặc khải rải rác. Vị vua Hồi giáo đầu tiên là Abu Bakr là người đầu tiên tập hợp chúng lại.

632-661 từ vị vua đầu tiên tới thứ 4, đạo Hồi được truyền bá rộng rãi đến mức một nửa thế giời nằm dưới sự cai trị của người Hồi giáo. Di sản khoa học Hồi giáo cũng không kém phần vĩ đại, bằng chứng là rất nhiều từ khoa học mượn từ tiếng Ả Rập như algebra, alkaline, zenith,…

Những người Ả Rập sử dụng mã hóa rất nhiều trong các văn bản của họ và họ cũng tình cờ có công phát hiện ra cách giải loại mật thư một bảng chữ cái bằng cách đếm tần suất xuất hiện của các chữ cái trong một văn bản mật mã rùi so sánh với tần suất bình thường của các chữ cái trong một văn bản bình thường cùng ngôn ngữ. Kết hợp với mối liên hệ giữa các chữ cái với nhau (th, en,…) để giải loại mật thư này.

Phục hưng ở phương Tây

800-1200, ở Ả Rập rất phát triển trong khi ở châu Âu đang chìm đắm trong thời Trung Cổ đen tối. Những người châu Âu chỉ chịu để ý đến mật mã vì trong Kinh Cựu Ước có chứa rất nhiều văn bản mã hóa, một dạng mã thay thế truyền thống của người Do Thái. Tuy nhiên các văn bản này nhằm làm tăng thêm sự huyền bí hơn là che giấu các bí mật.

Khoa học mật mã phát triển thịnh hành vào thời kỳ phục hưng ở châu Âu, trong đó đáng kể đến là ở Italia, trái tim của thời phục hưng.

Vào thời này, việc phụ thuộc quá nhiều vào mật mã cũng là một nhược điểm trong các mối quan hệ chính trị. Họ quá tin tưởng vào độ an toàn của mật mã nên dễ bị lợi dụng khi mà không biết rằng mật mã của họ đã bị giải. Nhà toán học Pháp Francois Viète có lần bị cáo buộc là tà giáo vì đã giải được mật mã của người Tây Ban Nha khi mà họ đinh ninh rằng loại mật mã một bảng chữ cái này là loại không thể giải nổi.

Một cải tiến của mật mã thay thế dùng một bảng chữ cái là việc đưa vào ký tự rỗng (null). Đó là những ký tự không thay thế cho chữ cái thực mà chỉ là những chỗ trống không thay thế cho cái gì hết. Hoặc họ cố tình viết sai chính tả trước khi mã hóa thư.

Đến đây phân loại mật mã thay thế gồm 2 loại: mã chữ cái (một chữ cái thay cho một chữ cái) và mã từ (một ký hiệu thay cho một từ/cụm từ). Nhược điểm của mã từ là phải có một quyển “sổ mã” kèm theo, khó truyền bá cũng như lưu hành và đặc biệt là nếu lỡ bị lộ. Ngoài ra còn có một loại mã hỗn hợp của hai thứ này.

Một số thông tin thêm

  • Sparta : thành bang nổi tiếng của Hy Lạp.Nhà nước quân phiệt khắt khe Sparta là một trong hai cường quốc hùng mạnh nhất trên lục địa Hy Lạp, cùng với Nhà nước dân chủ Athena.
  • Đế Quốc La Mã : hay còn gọi là đế quốc Roma (Roman). Thế kỷ I TCN đến V hay VI SCN. Bao gồm những nước bao quanh Địa Trung Hải (hiện nay là địa phận của 54 quốc gia). Vị hoàng đế đầu tiên là Augustus (có liên quan đến một sự tích về tháng 8). Lưu ý trước Đế quốc La Mã là nước Cộng hòa La Mã. Trong đó hoàng đế Julius César đóng vai trò then chốt trong việc chuyển dịch hai thể chế chính trị này. Xem thêm Tại sao tháng 2 có 28 ngày và liên quan đến việc tháng 8 có 31 ngày.
  • Tiếng Latinh là ngôn ngữ thuộc nhóm ngôn ngữ gốc Ý, được dùng lần đầu ở vùng xung quanh thành Roma (La Mã). Đây là ngôn ngữ chính thức của đế quốc La Mã. Đây là ngôn ngữ quốc tế trước khi bị thay thế bởi tiếng Pháp (thế kỷ 18) và sau đó là tiếng Anh (thế kỷ 19). Bảng chữ cái La Tinh là từ A-Z.
  • Ba Tư: nay thuộc nước Iran (Persian) do Cyrus đại đế sáng lập. Đế quốc Ba Tư đầu tiên (Đế Quốc Achaemenes) là đế quốc đầu tiên trong lịch sử (550-330 TCN).
  • Thời Trung Cổ : bắt đầu từ sự sụp đổ của đế quốc tây roma đến trước khi bắt đầu thời kỳ phục hưng. Đây là thời kỳ đen tối của châu Âu khi dân số bị suy giảm (Black Death, dịch hạch làm suy giảm nửa dân số), các cuộc chiến tranh tôn giáo, nội chiến nổ ra khắp châu lục.
  • Thời Phục Hưng : là một phong trào văn hóa thường được xem là bao phủ giai đoạn từ thế kỷ 15 đến thế kỷ 17, khởi đầu tại Ý sau đó lan rộng ra phần còn lại của châu Âu.
  • Người Do Thái (Jews) : là một sắc tộc tôn giáo có nguồn gốc từ người Israel. Người Do Thái đã trải qua một lịch sử lâu dài bị đàn áp và thảm sát trên nhiều vùng đất khác nhau; dân số và phân bố dân cư của họ thay đổi qua nhiều thế kỷ.

Mật mã chuồng heo xem hình dưới. Các ký tự được mã hóa theo các “chuồng” mà chúng bị nhốt.

Mật mã chuồng heo

Le chiffre indéchiffrable

Hình vuông Vigenère

Mật mã thay thế dùng một bảng chữ cái đã không còn an toàn do phương pháp phân tích tần suất phát kiến bởi những người Ả Rập. Cuộc đấu tranh giữa người tạo và giải mã ngày càng gay cấn và đang nghiêng về người giải mã.

Vào những năm 1460, nhà họa sĩ, nhà thơ, soạn nhạc và triết gia người Ý, Leon Battista Alberti đã phát minh ra loại mật mã dùng nhiều bản chữ cái.

Mật mã thay thế hai bảng chữ cái

Sau đó có nhiều người khác đã đóng góp vào việc xây dựng loại mật mã nhiều bảng chữ cái này, tuy nhiên phải đến nhà ngoại giao người Pháp, Blaise Vigenère mới phát triển đến dạng hoàn thiện cuối cùng và cho ra đời hình vuông Vigenère như hình dưới. Sức mạnh của bảng mã này là nó sử dụng tới 26 bảng chữ cái để mã hóa thông tin. Công trình của Vigenère được trình bày tới công chúng vào năm 1586, đúng vào năm xử tử nữ hoàng Mary xứ Scotland.

Hình vuông Vigenère

Cách sử dụng: Từ khóa là WHITE được viết liên tiếp nhau cho đến hết văn bản cần mã hóa. Nhìn vào hình vuông Vigenère, hàng W sẽ mã từ d bởi chữ Z là giao điểm của hàng W và cột d.

Ví dụ cách sử dụng hình vuông Vigenère

Từ sự lãng quên Vigenère đến Người đeo mặt nạ sắt

Tuy mật mã Vigenère rất mạnh nhưng nó không được ưa chuộng như tưởng tượng. Lý do là bởi, nếu người sử dụng bình dân thì họ chỉ cần mật mã 1 bảng chữ cái là đủ, còn nếu mục đích sử dụng tối mật hơn thì sự rườm rà và lâu lắc trong quá trình mã hóa và giải mã Vigenère khiến nó không được chú ý đến vì người ta cần sự tiện dụng và phải nhanh.

Thay thế nó, yếu hơn, là mật mã thay thế đồng âm. Mỗi chữ cái được thay bởi nhiều lựa chọn khác nhau. Các lựa chọn này sẽ tỷ lệ thuận với tần suất của chữ cái đó trong văn bản thường. Điều này đảm bảo cho việc sau khi mã hóa, tất cả các chữ cái đều xuất hiện với tần suất như nhau, gần bằng 1%, khiến cho việc dùng tần suất để giải mã là bất khả thi. Thật ra loại mật mã này cũng là một dạng của mã thay thế một bảng chữ cái vì mỗi chữ cái được biểu thị bởi nhiều ký hiệu tuy nhiên các ký hiện này chỉ biểu thị cho duy nhất 1 chữ cái, khác với loại nhiều bảng chữ cái, một ký hiệu có thể biểu thị cho nhiều chữ cái khác nhau. Cách giải: Xét mối quan hệ giữa các chữ cái trong tiếng Anh, đặc biệt là những chữ hiếm gặp, ví dụ chữ q, chắc chắn nó chỉ được thay bởi 1 ký tự, theo sau nó luôn là u. Do đó để ý trong văn bản mã hóa, ký tự nào theo sau luôn là 1 số ký tự cố định thì đó nhất định là q và các ký tự kia là u.

Phải kể đến Mật mã vĩ đại của vua Louis XIV do hai cha con người Pháp Rossignol phát minh ra. Nó đã giữ bí mật cho các lá thư trong suốt 2 thế kỷ, trong đó có 1 bí mật về nhân vật Người đeo mặt nạ sắt bị vua bắt giam gây ra rất nhiều lời đồn đại. Đây không phải là mật mã đồng âm.

Phòng Đen

Mỗi cường quốc châu Âu đều có một cơ quan gọi là Phòng Đen, một trung tâm của việc giải mã thông tin và tập hợp thông tin tình báo. Phòng Đen tốt nhất là ở Vien, Áo. Chính sự ra đời của các Phòng Đen mà không loại mật mã một bảng chữ cái nào đủ an toàn. Do đó người ta bắt đầu quay lại dùng mật mã nhiều bảng chữ cái Vigenère.

Vào thời kỳ này, việc thông tin liên lạc bằng điện và sóng vô tuyến đã bắt đầu hình thành và phát triển. Đầu tiên là hệ thống (cần có dây cáp) của Samuel Morse (hệ thống dấu gạch và chấm). Lưu ý, đây chỉ là việc hình thức hóa thông tin chứ không phải là một dạng mã hóa thông tin nên các thư trước khi chuyển vẫn phải được mã hóa.

Khi ấy bảng mật mã Vigenère là lựa chọn hoàn hảo và nó được đặt cho cái tên Le chiffre indéchiffrable (mật mã không thể phá nổi)

Babbage và mật mã vigenère

Nhân vật gợi sự hiếu kỳ nhất ở thế kỷ XIX trong việc phân tích mật mã là thiên tài lập dị người Anh, Charles Babbage, người nổi tiếng nhất với phát minh ra bản thiết kế máy tính hiện đại. Ông đã giải được mật mã Vigenère chỉ bằng sự khôn khéo.

Cách giải mã Vigenère : Nếu dùng bảng Vigenère để mã hóa, ví dụ chữ the, thì các ký tự mã hóa nó, dù khác nhau nhưng chắc chắn sẽ có lúc phải lặp lại. Bước đầu tiên, ta xác định những chữ cái xuất hiện hơn một lần trong văn bản mật mã. Sau đó ta lập ra một bảng đại loại như bảng dưới đây

Số lần lặp và các khoản cách trong bảng mật mã dùng hình vuông Vigenère

Từ bảng trên, cho ta biết từ khóa là một từ có 5 chữ cái. Bước tiếp theo là tìm xem 5 chữ cái đó là gì. Ta tiến hành phân tích tần suất của từng chữ cái trong từ khóa, ứng với chữ cái này sẽ là các chữ cái cách nhau bởi 5 đơn vị từ trong văn bản mã hóa. Khi ấy ta có bảng tần suất tương tự như hình dưới

Phân tích tần suất ứng với một chữ cái trong từ khóa

Rồi đem so sánh hình dạng lên xuống với tần suất các chữ cái trong văn bản thường

Tần suất các chữ cái trong văn bản thường

Ta sẽ xê dịch các chữ cái trong biểu đồ ở trên-trên với biểu đồ ở trên để suy ra từ tương ứng.

So sánh hai biểu đồ

Phát minh của Babbage trong việc giải mật mã Vigenère chưa bao giờ được ông công bố mà nó chỉ được phát hiện sau này bởi các nhà phân tích tài liệu. Một phần có lẽ xuất phát từ tính nết không thích phô trương của ông, một phần có thể là yếu tố lịch sử và bị người Anh yêu cầu giữ bí mật chuyện này để giành lợi thế trong cuộc chiến với Nga.

Từ cột nhắn tin đến kho báu bí mật

Nửa sau thế kỷ 19 chứng kiến sự nở rộ của mật mã với bình dân đại chúng khi mà người ta chú trọng hơn đến việc bí mật thông tin cá nhân. Tuy nhiên mật mã giai đoạn này cũng khá lộn xộn với việc các nhà giải mã đang chiếm ưu thế vì mật mã khó giải nhất lúc bấy giờ là mật mã Vigenère đã bị Babbage giải được.

Tuy phát triển nhưng chi phí để có thể mã hóa và truyền thư khá đắt. Người chọn cách đục lỗ cực nhỏ vào các tờ báo để ẩn bức thư của mình và gởi báo đi, việc gởi báo vốn được miễn phí thời này. Trong giới văn học thì mật mã xuất hiện trong tác phẩm Hành trình tới tâm trái đất của Jules Verne và mật mã Hình nhân nhảy múa trong Sherlock Holmes của nhà văn Conan Doyle.

Hình nhân nhảy múa

Bảng mật mã của Beale : Một người tên Beale vốn là khách viễn chinh, một hôm ghé khách sạn Washington ở Lynchburg nghỉ ngơi. Ông ta quay lại đó 2-3 lần nữa, mỗi lần đều vào dịp nghỉ đông và ở khá lâu. Sau đó ông đưa cho chủ khác sạn, vốn là 1 người chính trực, một hộp bí mật và bảo rằng sau 1 khoảng thời gian định sẵn, nếu ông khôn quay lại, hãy mở nó ra. Sau một khoảng thời gian Beale không quay lại, ông chủ cũng chưa vội mở, mãi sau vài năm khi mất kiên nhẫn ông mới mở ra thì biết được cái hộp đó chứa ba bức thư viết về một kho báu chôn vàng, bạc quý giá mà Beale và các cộng sự kiếm được. Tuy nhiên ba bức thư ấy đã bị mã hóa. Ông chủ lao đầu vào giải nhưng bất lực cho đến khi ông già đi. Ông đã chuyển giao nó cho một người bạn, người bạn này cũng dồn tâm huyết, thời gian và việc giải nhưng chỉ giải được bức thư thứ 2, bức nói về số lượng vàng được chôn. Còn bức 1, vị trí chôn và bức 3, nhân thân của các người có liên quan trong kho báu cũng được chia chát, thì không thể giải được. Quá mệt mỏi với việc tốn tâm lực vào việc giải mã 2 bức này, ông quyết định viết 1 quyển sách kể lại tất cả và chia sẻ nó với tất cả mọi người. Tuy nhiên cho đến giờ vẫn chưa có ai thật sự giải được kho báo Beale. Bức thứ hai được mã hóa bằng cách đánh số hết các từ trong bảng tuyên ngôn độc lập, Các số đại diện cho các chữ cái đầu tiên của mỗi từ.