Các mã và mật mã nổi tiếng trong lịch sử và vai trò của chúng trong mã hóa hiện đại

Hiệp sĩ mặc áo giáp
Chúng tôi đã ẩn tin nhắn miễn là chúng tôi đã gửi tin nhắn. Mưu đồ ban đầu là sử dụng tàng hình; sứ giả nhanh và lén lút mang tin nhắn qua lại. Phương pháp chính để giữ những thông điệp đó khỏi con mắt tò mò chỉ đơn giản là không bị bắt. Một khi bị bắt, nội dung tin nhắn sẽ kết thúc trong vòng tay của kẻ xấu. Từ đó, kẻ xấu có thể chỉ cần đọc tin nhắn và sau đó biết bạn đã lên kế hoạch gì, hoặc giả vờ là người nhận dự định và gửi trả lời sai do đó thực hiện cuộc tấn công Man In The Middle (MITM) ban đầu.

Bước tiến tiếp theo trong việc bảo mật thông tin liên lạc là ẩn thông điệp nội dung thật sự theo một cách nào đó. Nếu một tin nhắn kiểu này bị chặn, kẻ xấu sẽ không thể đọc được và do đó thông tin sẽ vô dụng với họ. Nghệ thuật che giấu nội dung của một thông điệp được gọi là mật mã học, là một mô tả của các từ Hy Lạp để ẩn và viết.

Các phương pháp mã hóa văn bản cũng vô hạn như trí tưởng tượng của chúng ta. Tuy nhiên, các ứng dụng thực tế của bất kỳ phương pháp mã hóa nào đều rất hạn chế. Các phương thức để mã hóa và giải mã phải được cả hai bên biết và chúng phải đủ nghiêm ngặt để những kẻ xấu có thể đoán được. Hai vấn đề tưởng chừng đơn giản đó đã làm khổ hệ thống mã hóa mãi mãi. Trò chơi giữ mật mã mã hóa hoạt động chống lại sự tấn công không bao giờ kết thúc của kẻ xấu để phá vỡ các hệ thống tương tự đã dẫn đến một lịch sử mật mã phong phú và thú vị.

Giới thiệu về thuật ngữ mật mã

Mật mã học là một chủ đề phong phú với một lịch sử và tương lai rất thú vị. Để tận dụng tối đa bài viết này, tốt nhất bạn nên nắm bắt cơ bản về một vài thuật ngữ và khái niệm. Phần tiếp theo sẽ giúp với điều đó, và bạn có thể thoải mái bỏ qua và quay lại với nó nếu có nhu cầu.

Khóa mật mã

Một mật mã khối mã hóa một thông điệp về số lượng bit được đặt (một khối) tại một thời điểm.

Mã là sự thay thế phức tạp hơn một mật mã trong đó mã chuyển nghĩa có nghĩa thay vì thay thế văn bản thẳng, ví dụ: Con đại bàng đã hạ cánh. Các hoạt động mã yêu cầu một tham chiếu của một số loại, thường được gọi là Sách mã. Do tính chất cồng kềnh của việc vận chuyển và duy trì sách mã, các mã đã không được sử dụng chung trong mật mã hiện đại có lợi cho mật mã.

Mật mã

Mật mã là sự thay thế của bản rõ cho bản mã. Không có ý nghĩa nào được gán cho quá trình, nó là một hoạt động toán học hoặc cơ học được thiết kế để đơn giản làm xáo trộn bản rõ. EG: thuật toán quay vòng 13 điểm (ROT13) trong đó các chữ cái được gán chữ cái 13 điểm sau nó trong bảng chữ cái. Điều này dẫn đến A = N, B = O, v.v … Để mã hóa hoặc giải mã tin nhắn, một người chỉ cần biết thuật toán.

Mật mã văn bản

bản mã là hình thức không thể đọc được, được mã hóa của bản rõ. Bất cứ ai cố gắng đọc bản mã sẽ cần giải mã nó trước. Giải mã bản mã cho thấy bản rõ có thể đọc được.

Không gian phím

Số lượng các khóa có thể có thể đã được sử dụng để tạo bản mã. Về mặt lý thuyết, khó khăn trong việc ép buộc bản mã trở nên khó khăn hơn khi không gian phím tăng.

Băm

Băm là một mật mã được sử dụng để cung cấp dấu vân tay của một số dữ liệu thay vì văn bản mật mã của dữ liệu đó. Mật mã băm lấy một số thông điệp làm đầu vào và đầu ra một dấu vân tay có thể dự đoán được dựa trên thông điệp đó. Nếu tin nhắn được thay đổi theo bất kỳ cách nào, bất kể tầm thường như thế nào, dấu vân tay sẽ khác biệt đáng kể. Việc sử dụng băm phổ biến nhất là để xác minh rằng một bản sao cục bộ của một số tệp là một bản sao thực sự của tệp gốc.

Các đặc điểm của một mật mã băm tốt là:

  1. Nó mang tính quyết định; có nghĩa là cùng một thông điệp chạy qua cùng một mật mã băm sẽ luôn tạo ra cùng một dấu vân tay và
  2. Nó có mức độ va chạm thấp; có nghĩa là các thông điệp khác nhau chạy qua cùng một mật mã băm sẽ tạo ra một dấu vân tay khác nhau.

Mật mã đơn nhân

Một mật mã sử dụng một bảng chữ cái duy nhất và thường là một chuyển vị đơn giản. Ví dụ, chữ A sẽ được đại diện bởi chữ F.

Những thứ này rất dễ bị phá vỡ đến nỗi chúng ta có sách Mật mã trong các cửa hàng dược phẩm cùng với Crosswords để giải trí.

Một số ví dụ về mật mã Monoalphabetic là:

  • Mật mã Caesar
  • Mật mã Pigpen
  • Mật mã Playfair
  • Mã Morse (mặc dù tên của nó)

Văn bản thô

văn bản đề cập đến văn bản có thể đọc được của một tin nhắn. văn bản gốc được mã hóa thành bản mã và người nhận có thể giải mã lại thành bản rõ.

Mật mã đa hình

Đây là một mật mã chuyển vị, nhưng không giống như các mật mã đơn âm, nhiều hơn một bảng chữ cái được sử dụng. Có những tín hiệu được nhúng trong bản mã cho biết người nhận khi bảng chữ cái đã thay đổi.

Một số ví dụ về mật mã Polyalphabetic là:

  • Mật mã Alberti
  • Mật mã Vigenère

Mật mã dòng

Một mật mã luồng mã hóa một thông điệp một ký tự tại một thời điểm. Máy Enigma là một ví dụ về mật mã luồng.

Khóa đối xứng / bất đối xứng

Trong tất cả các hệ thống mã hóa tầm thường nhất, cần có một khóa để mã hóa và giải mã tin nhắn. Nếu cùng một khóa được sử dụng cho cả hai mục đích, thì khóa đó được gọi là đối xứng. Nếu các khóa khác nhau được sử dụng để mã hóa và giải mã, như trường hợp của Mật mã khóa công khai, thì các khóa được gọi là không đối xứng.

Các phím đối xứng thường được coi là mạnh hơn một chút so với các phím bất đối xứng. Nhưng, họ có trách nhiệm cần một phương thức an toàn để chuyển các khóa cho tất cả những người tham gia nhắn tin trước khi sử dụng.

Tiền điện tử

Có hai cách để khám phá bản rõ từ bản mã. Cách đầu tiên là giải mã bản mã bằng các kỹ thuật giải mã dự kiến. Cách thứ hai là sử dụng phân tích để khám phá bản rõ mà không cần sở hữu khóa mã hóa. Quá trình thứ hai được gọi một cách thông thường là phá vỡ tiền điện tử, được gọi đúng hơn là tiền điện tử.

Phân tích tần số

Cryptanalysis kiểm tra bản mã và cố gắng tìm các mẫu hoặc các chỉ báo khác để tiết lộ bản rõ bên dưới. Kỹ thuật phân tích mật mã được sử dụng phổ biến nhất là phân tích tần số. Trong ngôn ngữ tiếng Anh, có 26 chữ cái và tần số của các chữ cái trong ngôn ngữ chung được biết đến. Các nguyên âm như A và E xuất hiện thường xuyên hơn các chữ cái như Z và Q. Lùi lại một bước, toàn bộ các từ như THE và AN xuất hiện thường xuyên hơn các từ như ANT hoặc BLUE.

Để chống lại tần số từ, bản mã có thể được chia thành các khối tiêu chuẩn thay vì để ở dạng tự nhiên. Ví dụ:

Đưa ra bản rõ:

LÀM THẾ NÀO ĐỂ CÓ MỘT GÓI GOOD BOODNG GOOD NẾU

và áp dụng Mật mã Caesar bằng cách sử dụng vòng xoay 16, chúng tôi kết thúc với bản rõ sau:

XEM CKSX MEET MEKBT Q MEET SXKSA SXKSA YV Q MEET SXKSA SEKBT SXKSA

Phân tích tần số cho chúng ta một số manh mối về bản rõ:

  • Các cụm từ MEET và SXKSA xuất hiện nhiều lần
  • Các chữ cái Q xuất hiện một mình hai lần, đó là một dấu hiệu mạnh mẽ cho thấy Q là A hoặc I
  • Từ MEET gần như chắc chắn có hai nguyên âm ở giữa vì sẽ có rất ít từ có hai phụ âm giống nhau ở vị trí đó.
  • Một lỗ hổng trong mật mã quay là không có chữ cái nào có thể tự bằng, do đó chúng ta có thể loại bỏ từ thực tế MEET thành văn bản gốc.
  • Nếu chúng ta giả sử rằng Q là A hoặc I, thì chúng ta cũng có thể giả sử rằng E không phải là A hoặc I và nó không thể là E. Vì chúng tôi khá chắc chắn E là nguyên âm, nên bỏ đi chúng tôi với E là O hoặc U. Từ đó, cần ít nỗ lực để kiểm tra các tùy chọn đó và cuối cùng kết thúc bằng một từ có khả năng GOOD.
  • Nếu GOOD là chính xác, thì chúng ta có thể thay đổi các chữ cái tương tự bằng các từ khác: E = 0, M = W, T = D, Q = A và tiếp tục thực hiện theo cách của chúng tôi thông qua bản mã.
  • Một cách khác để tiến hành sẽ là kiểm tra nếu đây là một mật mã xoay đơn giản. Để làm điều đó, chúng tôi sẽ tính toán phần bù từ một chữ cái bản mã và một chữ cái viết rõ như M = W. Điều đó mang lại cho chúng tôi 16 và nếu sau đó chúng tôi đảo ngược mỗi 16 chữ cái trong bảng chữ cái, phần còn lại của bản rõ sẽ tạo ra ý nghĩa, hoặc nó sẽ vẫn là vô nghĩa khó hiểu.

Bây giờ hãy xem xét ví dụ tương tự nếu các khối tiêu chuẩn được sử dụng. Bản mã sẽ trông như thế này:

XEMCK SXMEE TMEKB TQMEE TSXKS ASXKS AYVQM EETSX KSASE KBTSX KSAME ET

Mặc dù điều này không làm cho phân tích tần số là không thể, nhưng nó làm cho nó khó hơn nhiều. Bước đầu tiên để giải quyết loại mật mã này là cố gắng phá vỡ nó trở lại thành từ ngữ tự nhiên. Nó vẫn có thể thấy các lần lặp lại như MEET và SXKSA nhưng điều đó khó khăn hơn nhiều để chọn ra các từ độc lập như những gì Q thể hiện.

Nếu bạn thích loại điều này, hãy xem cửa hàng thuốc tại địa phương hoặc cửa hàng bán sách của tạp chí. Thường có những cuốn sách trò chơi tiền điện tử trong cùng một phần với những cuốn sách ô chữ.

Sử dụng các khóa mật mã thay thế

Trong sử dụng hiện đại, các khóa mật mã có thể hết hạn và được thay thế. Trong các hệ thống lớn như các hệ thống được sử dụng bởi quân đội, các khóa mật mã được thay thế vào các thời điểm được đặt theo giờ, hàng ngày, hàng tuần, hàng tháng hoặc hàng năm. Khi một khóa được thay thế, khóa trước đó được cho là thay thế. Các khóa được thay thế phải bị hủy vì chúng trình bày một công cụ phân tích mật mã cực kỳ có giá trị. Nếu một kẻ thù đã thu thập và dự trữ các thông tin liên lạc được mã hóa và sau đó có thể giải mã các thông tin liên lạc đó bằng cách lấy khóa thay thế được sử dụng để mã hóa chúng, điều đó tạo ra mảnh đất màu mỡ cho việc mã hóa các tin nhắn hiện tại.

Trên internet thương mại trong thời kỳ hậu Snowden, thật dễ dàng để tưởng tượng NSA có được các khóa SSL thay thế và quay lại để giải mã kho dữ liệu khổng lồ thu được thông qua các chương trình như PRISM.

Điện toán lượng tử và tiền điện tử

Ngày nay, máy tính không thay đổi đáng kể kể từ khi thành lập. Ở cấp độ cơ bản, máy tính hoạt động trên các bit là các khe đơn có thể chứa giá trị 1 hoặc giá trị 0. Mọi quy trình diễn ra trên máy tính, bao gồm mã hóa và giải mã tin nhắn, cần được xử lý đơn giản nền tảng.

Ngược lại, máy tính lượng tử hoạt động bằng cách sử dụng các khái niệm vật lý về sự chồng chất và sự vướng víu thay vì bit để tính toán. Nếu được chứng minh là khả thi, điện toán lượng tử có thể sẽ phá vỡ bất kỳ hệ thống tiền điện tử hiện đại nào trong một phần nhỏ thời gian ngày nay. Ngược lại, điện toán lượng tử cũng có thể hỗ trợ các loại mã hóa mới sẽ mở ra một kỷ nguyên hoàn toàn mới về mật mã.

Tiến trình lịch sử

Các mật mã monoalphabetic và polyalphabetic ban đầu có cùng một vấn đề: họ đã sử dụng một khóa tĩnh, không bao giờ thay đổi. Đây là một vấn đề bởi vì một khi một kẻ thù đã hiểu làm thế nào để đưa ra một sơ đồ pigpen, chẳng hạn, cô ấy có thể giải mã mọi tin nhắn từng được mã hóa bằng thuật toán đó.

Khóa mã hóa

Để làm xáo trộn văn bản nhiều hơn, khái niệm thay đổi phím đã được phát triển. Sử dụng Mật mã Caesar, người ta có thể thay đổi bản mã bằng cách tăng giá trị của phép quay. Ví dụ:

Sử dụng Mật mã Caesar để mã hóa cụm từ FLEE TO HILLS FOR ALL IS LOST

Xoay 10 bản mã:
PVOO DY DRO RSVVC PYB KVV SC VYCD

Xoay vòng 4 văn bản cpher:
JPII XS XLI LMPPW JSV EPP MW PSWX

Ưu điểm của việc áp dụng khóa tùy ý cho bản rõ là ai đó biết cách hoạt động của Mật mã Caesar vẫn không thể giải mã văn bản mà không biết giá trị quay nào được sử dụng để mã hóa nó.

Mặc dù ví dụ trên là một ví dụ đơn giản do tính chất tầm thường của Mật mã Caesar bắt đầu, việc áp dụng các khóa phức tạp hơn có thể làm tăng tính bảo mật của bản mã.

Mật mã quan trọng

Trong suốt lịch sử đã có nhiều loại mật mã. Họ chủ yếu bắt đầu như một công cụ quân sự và quân đội vẫn là những người sử dụng mật mã nặng nhất hiện nay. Từ những gốc rễ quân sự đó, chúng ta thấy rằng để thành công, một mật mã phải có những thuộc tính này.

  • đề kháng với tiền điện tử
  • đủ linh hoạt để vận chuyển bằng tin nhắn trong các điều kiện khắc nghiệt
  • Dễ dàng sử dụng trên chiến trường lầy lội, đẫm máu

Bất kỳ mật mã nào có xu hướng bị lỗi trong việc mã hóa hoặc giải mã trên chiến trường hoặc rơi quá dễ dàng để đánh chặn và kiểm tra đã không tồn tại lâu. Hãy nhớ rằng một lỗi trong mã hóa có thể khiến người nhận hoàn toàn không thể đọc được toàn bộ tin nhắn.

Một số mật mã đáng chú ý hơn trong phần tiếp theo.

Scytale – 120 sau công nguyên

Đây là một hệ thống mật mã đơn sắc, đối xứng. Cả người gửi và người nhận đều phải sở hữu một khối gỗ có đường kính chính xác như nhau. Trong thực tế, đây là chìa khóa.

Người gửi lấy một mảnh vải hẹp dài và cuộn nó quanh tấm vải. Sau đó, ông viết thông điệp theo định dạng từ phải sang trái tiêu chuẩn trên vải. Vải sau đó được lấy ra khỏi scytale và trông chỉ là một dải vải dài có thể được chà lên và giấu ở những nơi nhỏ nhất để vận chuyển.

tế bào học

Người nhận chỉ cần bọc vải xung quanh scytale phù hợp của họ và thông điệp trở nên rõ ràng. Mặc dù mật mã đơn giản này sẽ nhanh chóng rơi vào phân tích mật mã, tiền đề là chỉ một hình ảnh có đường kính chính xác có thể giải mã được thông điệp.

Vigenère – 1553

Được mô tả ban đầu bởi Giovan Bellaso vào năm 1553, mật mã Vigenère đã được tái tạo một vài lần, gần đây nhất là bởi Blaise de Vigenère trong thế kỷ 19. Đây là một trong những mật mã polyalphabetic đầu tiên. Nó vẫn đối xứng trong tự nhiên, nhưng nó đủ cứng để phá vỡ nó vẫn được sử dụng trong hơn ba thế kỷ.

Mật mã đa âm cho phép sử dụng nhiều bảng chữ cái trong quá trình mã hóa, điều này làm tăng đáng kể không gian chính của bản mã. Các phiên bản trước đó của mật mã polyalphabetic yêu cầu tuân thủ cứng nhắc các điểm mà bảng chữ cái sẽ thay đổi. Việc triển khai mã hóa của Bellaso này cho phép người gửi thay đổi bảng chữ cái tại các điểm tùy ý trong quá trình mã hóa. Tín hiệu thay đổi bảng chữ cái phải được thỏa thuận trước giữa người gửi và người nhận, do đó đây vẫn là một phương pháp mã hóa đối xứng.

quảng trường vigenere

Mật mã Vigenère được sử dụng trong thực tế gần đây là Nội chiến Hoa Kỳ. Tuy nhiên, nó hiểu rõ rằng Liên minh đã liên tục phá vỡ những thông điệp đó bởi vì lãnh đạo Liên minh phụ thuộc rất nhiều vào quá ít cụm từ chính để báo hiệu sự thay đổi bảng chữ cái.

Mật mã Pigpen – 1700

Còn được gọi là Mật mã Freidiaon, Mật mã Pigpen là một mật mã thay thế monoalphabetic đối xứng khác. Mã hóa và giải mã được thực hiện bằng cách đặt ra 4 lưới. Hai lưới chứa 9 khoảng trắng giống như một bảng tic-tac-toe và hai lưới giống như một chữ X lớn và chứa 4 khoảng trống. Cùng với nhau, có 26 khoảng trắng trùng với 26 chữ cái trong bảng chữ cái Latinh. Tất cả các phần đều có thể được xác định duy nhất bằng cách kết hợp hình dạng của phần và sự hiện diện hoặc vắng mặt của một dấu chấm trong đó. Tin nhắn được mã hóa bằng cách sử dụng mã định danh phần thay vì chữ cái thực.

Tôi đã tạo một khóa mật mã Pigpen ở đây:

khóa mật mã pigpen

Việc giải mã được thực hiện bằng cách đặt cùng một lưới và chuyển trở lại định danh phần cho chữ cái. Do đó, một cụm từ rõ ràng của READ COMPARITECH mã hóa thành chuỗi hình ảnh này:

mật mã pigpen

Mật mã Playfair – 1854

Mật mã Playfair sử dụng 26 bi-gram (hai chữ cái) thay vì 26 chữ lồng làm khóa mã hóa. Điều đó làm tăng đáng kể không gian chính của bản mã và làm cho việc phân tích tần số rất khó khăn. Các thông điệp được mã hóa Playfair được tạo bằng cách xây dựng một lưới 5 đến 5 chữ cái được tạo bởi một cụm từ ngắn ngẫu nhiên, sau đó điền vào phần còn lại của lưới bằng các chữ cái không lặp lại từ bảng chữ cái. Lưới đó tạo thành khóa và bất kỳ ai muốn giải mã tin nhắn đều phải xây dựng lại lưới này. Bạn có thể suy ra rằng người nhận cũng phải biết cùng một cụm từ ngắn được sử dụng để mã hóa tin nhắn khó xác định hơn nhiều so với số quay đơn giản.

Người đọc thông minh sẽ nhận ra rằng 5 x 5 = 25, nhưng có 26 chữ cái trong bảng chữ cái Latinh. Để phù hợp với điều này, các chữ cái I và J thường được sử dụng thay thế cho nhau. Bất kỳ hai chữ cái khác cũng có thể được sử dụng, nhưng thông tin đó sẽ phải được truyền đến người nhận để đảm bảo họ giải mã đúng tin nhắn.

Sau khi lưới được xây dựng, người dùng chỉ cần biết 4 quy tắc đơn giản để mã hóa hoặc giải mã tin nhắn. Nó khó hiểu ý nghĩa của khóa trong một bài viết, vì vậy tôi đã tạo ra một lưới Playfair để minh họa. Tôi đã sử dụng cụm từ READ COMPARITECH làm cụm từ chính. Sau khi viết nó ra, tôi bắt đầu viết bảng chữ cái để điền vào phần còn lại của lưới. Hãy nhớ rằng mỗi chữ cái chỉ có thể nằm trong lưới một lần và tôi và J có thể hoán đổi cho nhau. Điều đó mang lại cho tôi một khóa Playfair như hình ảnh bên dưới. Các chữ màu đỏ đã bị bỏ qua vì chúng đã xuất hiện trong lưới.

khóa mật mã playfair

Hãy nhớ rằng giai đoạn READ COMPARITECH chỉ là cụm từ ngẫu nhiên để xây dựng lưới. Nó không phải là văn bản được mã hóa. Lưới kết quả này sẽ được sử dụng để mã hóa văn bản gốc của bạn.

Miếng đệm một lần (OTP) – 1882

Một Pad thời gian (OTP) đề cập đến một hệ thống mã hóa đối xứng bằng cách sử dụng các khóa được thay đổi với mỗi tin nhắn. Nếu các khóa thực sự là một lần, thì bản mã sẽ cực kỳ chống lại tiền điện tử. Các phím này được viết theo nghĩa đen trên các tờ giấy ban đầu và vì mỗi khóa chỉ được sử dụng một lần, nên tên One Time Pad bị kẹt.

Trong thực tế, OTP khó triển khai đúng cách. Là một hệ thống đối xứng, nó yêu cầu người gửi và tất cả người nhận phải có cùng một cuốn sách OTP. Nó cũng có một nhược điểm đáng kể ở chỗ một tin nhắn không thể dài hơn phần đệm đang sử dụng. Nếu đúng như vậy, thì các bộ phận của pad sẽ phải được sử dụng lại, điều này làm suy yếu đáng kể bản mã để mã hóa.

OTP vẫn được sử dụng ngày nay trong một số quân đội cho các thông điệp chiến thuật nhanh chóng.

Tiếng Anh – 1914

Được tạo bởi công dân Đức Arthur Scherbius sau WW1 cho mục đích thương mại, máy Enigma là một máy mã hóa dòng đa âm. Máy bao gồm bàn phím, bảng điều khiển ánh sáng và một số cánh quạt có thể điều chỉnh. Người vận hành sẽ đặt vị trí của các cánh quạt và sau đó nhập một thông báo trên bàn phím. Khi mỗi chữ cái được gõ, một chữ cái tương ứng sẽ sáng trên bảng sáng. Đây là bức thư được mã hóa hình thành bản mã. Người nhận sẽ phải biết các cài đặt cánh quạt chính xác để sử dụng, và sau đó họ thực hiện cùng một quy trình. Tuy nhiên, khi người nhận gõ vào từng chữ cái của bản mã, chữ cái tương ứng sẽ chiếu sáng sẽ là chữ cái viết rõ.

Máy Enigma

Quân đội Đức đã tăng cường máy bằng cách thêm một bảng cắm và do đó coi nó không thể phá vỡ và sử dụng Enigma cho mọi thứ. Cục Mật mã của Bộ Tổng tham mưu Ba Lan đã phá vỡ Enigma của quân đội Đức vào năm 1932. Họ có thể đảo ngược máy móc từ thông tin có được từ bảo mật hoạt động kém (OpSec) của người dùng Enigma của Đức. Tuy nhiên, họ không thể thực sự giải mã tin nhắn cho đến khi người Pháp chia sẻ thông tin Enigma lượm lặt được từ một trong những gián điệp Đức của họ.

Cục Mật mã Chính sách Ba Lan đã có thể đọc lưu lượng Enigma của Đức trong nhiều năm cho đến khi tiếng Đức tiếp tục tiến bộ trong hệ thống khiến nó trở nên quá khó khăn. Vào thời điểm đó, ngay trước khi Thế chiến II bùng nổ, Vương quốc Anh và Pháp đã được đưa vào cuộc và việc theo dõi và giải mã lưu lượng Enigma đã trở thành một phần của Project Ultra.

Nhìn chung, người ta chấp nhận rằng khả năng giải mã lưu lượng Enigma đã rút ngắn kết quả của WWII trong vài năm.

Mật mã Hash gia đình SHA 1993 – 2012

SHA là một nhóm các thuật toán được sử dụng để băm thay vì mã hóa và được xuất bản bởi Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST). Mật mã SHA ban đầu được xuất bản năm 1993 hiện được chỉ định SHA-0 để phù hợp với quy ước đặt tên của các phiên bản tiếp theo.

Cả SHA-0 và SHA-1 (đã nghỉ hưu năm 2010) đã được chứng minh là không thể đáp ứng các dấu hiệu băm tiêu chuẩn (được liệt kê trong phần thuật ngữ) và không còn được sử dụng. HMAC-SHA1 vẫn được coi là không bị phá vỡ nhưng SHA-1 trong tất cả các hương vị nên được loại bỏ để ủng hộ các phiên bản cao hơn khi thực tế.

Mật mã SHA hiện tại SHA-2 và SHA-3 (2012) vẫn còn được sử dụng cho đến ngày nay.

MD5 Hash – 1991

MD5 là một thuật toán băm được phát triển vào năm 1991 để giải quyết các vấn đề bảo mật trong MD4. Đến năm 2004, MD5 về cơ bản đã bị phá vỡ bởi một nỗ lực tìm nguồn cung ứng đám đông cho thấy MD5 rất dễ bị tấn công trong Sinh nhật

Dấu vân tay MD5 vẫn được cung cấp ngày hôm nay để xác thực tập tin hoặc tin nhắn. Nhưng vì nó bị phá vỡ bằng mật mã, băm MD5 chỉ có thể được dựa vào để phát hiện các thay đổi tập tin hoặc tin nhắn không chủ ý. Những thay đổi có chủ ý có thể bị che dấu do sự yếu kém của thuật toán.

Mật mã hiện đại

Mật mã học được sử dụng rộng rãi trên internet ngày nay. Rất nhiều hoạt động trên internet của chúng tôi được mã hóa bằng TLS (Bảo mật lớp vận chuyển) và các khóa được trao đổi bằng cách sử dụng quy trình bất đối xứng.

Máy tính đặc biệt giỏi xử lý dữ liệu bằng thuật toán. Khi máy tính đến hiện trường, sự phát triển mật mã bùng nổ. Máy tính không chỉ là một công cụ tuyệt vời để tạo ra mật mã mã hóa, chúng còn rất hữu ích trong việc phá vỡ mật mã bằng mật mã thông qua mã hóa. Điều này có nghĩa là sự gia tăng sức mạnh máy tính luôn được báo trước bởi các mật mã mới đang được phát triển và các mật mã cũ đã bị loại bỏ vì giờ đây chúng quá dễ bị phá vỡ.

Do cuộc chiến không hồi kết về sức mạnh tính toán này, các máy tính sử dụng internet thường hỗ trợ một danh sách lớn các mật mã tại bất kỳ thời điểm nào. Danh sách các mật mã này được gọi là bộ mật mã và khi hai máy tính kết nối, chúng chia sẻ danh sách các mật mã mà cả hai hỗ trợ và một mật mã chung được thỏa thuận để thực hiện mã hóa giữa chúng. Quá trình này tồn tại để đảm bảo khả năng tương tác lớn nhất giữa người dùng và máy chủ tại bất kỳ thời điểm nào.

Các mật mã như Enigma và DES (Tiêu chuẩn mã hóa dữ liệu) đã bị phá vỡ và không còn được coi là an toàn cho việc sử dụng mật mã. Đến nay, RSA (Rivest, Shamir, Adman) và AES (Tiêu chuẩn mã hóa nâng cao) được coi là an toàn, nhưng khi sức mạnh tính toán tăng lên, chúng cũng sẽ giảm một ngày và các mật mã mới sẽ được phát triển để tiếp tục sử dụng mật mã trên web.

Mật mã khóa công khai

Mã hóa khóa công khai là một hệ thống bất đối xứng được sử dụng rộng rãi ngày nay bởi mọi người và máy tính. Khóa được sử dụng để mã hóa dữ liệu nhưng không giải mã được nó được gọi là khóa chung. Mỗi người nhận có khóa công khai riêng của họ được cung cấp rộng rãi. Người gửi phải sử dụng khóa chung của người nhận dự định để mã hóa tin nhắn. Sau đó, người nhận có thể sử dụng khóa bí mật đồng hành của họ được gọi là khóa riêng để giải mã tin nhắn.

RSA là mật mã cơ bản được sử dụng trong mật mã khóa công khai. Mật mã RSA nhân hai số nguyên tố rất lớn với nhau như là một phần của quá trình tạo khóa. Sức mạnh của nó phụ thuộc vào thực tế là một kẻ thù sẽ phải đưa chính xác sản phẩm đó vào hai số nguyên tố ban đầu được sử dụng. Ngay cả với sức mạnh tính toán ngày nay không khả thi trong hầu hết các trường hợp. Bạn có thể nhớ lại rằng hệ số hóa là quá trình giảm một số thành hai số nhỏ nhất có thể được nhân với nhau để tạo ra số ban đầu. Số nguyên tố chỉ có hai yếu tố, 1 và chính họ. Tôi mô tả Mật mã khóa công khai chi tiết hơn ở đây..

Mật mã bất đối xứng chậm hơn mật mã đối xứng, nhưng việc triển khai Khóa công khai của tiền điện tử bất đối xứng có một ưu điểm khác biệt: vì khóa công khai không thể được sử dụng để giải mã tin nhắn, nên nó có thể được truyền tới người gửi mà không có biện pháp bảo vệ nào. Do đó, hai bên không cần trao đổi khóa trước khi trao đổi tin nhắn được mã hóa đầu tiên của họ.

Đối với những thứ nhỏ như email, mật mã bất đối xứng là tốt, nhưng đối với mã hóa quy mô lớn như toàn bộ đĩa hoặc sao lưu tệp, thì quá chậm. Hầu hết các hệ thống tiền điện tử quy mô lớn hiện nay đều sử dụng phương pháp lai; tiền điện tử bất đối xứng được sử dụng để trao đổi các khóa đối xứng và sau đó các khóa đối xứng được sử dụng cho các quá trình mã hóa và giải mã thực tế.

Mật mã không bị phá vỡ

Với khả năng tính toán của chúng ta ngày nay, có vẻ khó tin khi phát hiện ra rằng có một số mật mã rất cũ chưa được giải mã.

Lá thư cuối cùng của Zodiak Killer

Kẻ giết người Zodiak là một kẻ giết người hàng loạt đã khủng bố California trong vài năm vào cuối năm 60. Kẻ giết người đã gửi 4 tin nhắn mật mã cho cảnh sát trong thời gian này, trong đó tin nhắn thứ tư vẫn không bị phá vỡ ngày hôm nay.

Có một số tuyên bố rằng mọi người đã phá vỡ mật mã cuối cùng đó, nhưng không có gì đứng lên để xem xét.

Ba tin nhắn Enigma cuối cùng

Không phải tất cả các tin nhắn Enigma đã được giải mã. Mặc dù có rất ít giá trị quân sự khi làm như vậy, nhưng có một dự án Enigma @ Home tìm cách giải mã một số tin nhắn còn lại từ năm 1942. Giống như các dự án @ home khác như SETI @ Home, dự án sử dụng chu kỳ CPU dự phòng trên máy tính của các thành viên để cố gắng giải mã các tin nhắn cuối cùng.

Cái gì tiếp theo?

Máy tính vẫn là một ngành khoa học trẻ. Chúng tôi vẫn đang hoạt động ngoài phiên bản 1, có nghĩa là các máy tính của chúng tôi vẫn bị giới hạn ở các hàm nhị phân và số không. Điện toán lượng tử có thể là vấn đề lớn tiếp theo trong điện toán và về cơ bản nó sẽ thay đổi cách thức hoạt động của điện toán thay vì chỉ tăng sức mạnh xử lý để xử lý nhiều cái và số 0 hơn. Cơ học lượng tử có cái gọi lạ lùng này gọi là Super superitionition, có nghĩa là một cái gì đó có thể ở nhiều trạng thái cho đến khi nó được quan sát. Thí nghiệm suy nghĩ nổi tiếng nhất minh họa sự chồng chất là của Schrodinger Lam, nơi con mèo trong hộp vừa sống vừa chết cho đến khi nó sụp đổ vào một trong những trạng thái đó khi được quan sát.

Trong điện toán, điều này có nghĩa là các qubit (bit lượng tử) có thể có hai trạng thái thay vì trạng thái nhị phân một trạng thái. Trong khi một bit chỉ có thể là 1 hoặc 0, một qubit có thể là cả hai thông qua khái niệm chồng chất. Điều này không chỉ làm cho môn toán khó như được sử dụng để tạo ra số lượng lớn gần như không đáng kể để thực hiện, mà còn có thể báo trước sự kết thúc của các cuộc tấn công Main-In-The-Middle.

Một tính chất khác của truyền lượng tử là khái niệm về nhiễu giao thoa. Sự can thiệp là hành vi của các electron hạ nguyên tử đi qua một rào chắn và sau đó được tái cấu trúc ở phía bên kia. Sự can thiệp chỉ có thể diễn ra nếu không ai quan sát nó (cây, rừng, bất cứ ai?). Do đó về mặt lý thuyết sẽ không thể có ai đó chặn được một thông điệp được truyền qua một hệ thống lượng tử mà không bị phát hiện. Đường đi của các electron sẽ được thay đổi bằng cách quan sát và nhiễu sẽ không còn xảy ra, do đó cho thấy thông điệp đã được quan sát. Máy tính lượng tử tốt nhất tại thời điểm này có một vài qubit, nhưng công nghệ đang phát triển nhanh chóng.

Cơn sốt Scytale của Lurigen. CC Share-A-Like 3.0