Mật mã Two-square

Mật mã Two-square (mật mã hình vuông đôi) ,đôi khi còn được gọi là Playfair đôi, là một kỹ thuật mã hóa đối xứng. Nó được phát triển để giảm bớt tính chất cồng kềnh của sự mã hóa được sử dụng trong bốn hình vuông (four-square) trong khi vẫn mạnh hơn một chút so với mật mã Playfair đơn.
Kỹ thuật này mã hóa các cặp chữ cái ("digraph"), và do đó thuộc loại mật mã được gọi là mật mã thay thế đa kí tự Điều này bổ sung sức mạnh đáng kể cho mã hóa khi so sánh với mật mã thay thế đơn chữ, hoạt động trên các ký tự đơn lẻ. Việc sử dụng tới hai hình vuông làm cho mật mã này ít bị ảnh hưởng bởi các cuộc tấn công bằng kĩ thuật phân tích tần suất, vì việc phân tích phải được thực hiện trên 676 (26x26) hình vuông khả dĩ để có thể giải thay vì chỉ 26 trong mật mã thay thế một kí tự. Phân tích tần số để giải mã là có thể, nhưng khó hơn đáng kể, và nó thường đòi hỏi một văn bản lớn hơn nhiều để có thể giải mã
Cấu trúc.
Mật mã hai hình vuông sử dụng hai hình vuông 5x5 và có hai loại, ngang và dọc. Hình vuông ngang có hai hình cạnh nhau. Hình vuông dọc có một hình vuông bên dưới hình vuông kia. Mỗi hình 5x5 chứa các chữ cái trong bảng chữ cái (thường bỏ qua "Q" hoặc đặt cả "I" và "J" vào cùng một vị trí để giảm bảng chữ cái cho phù hợp). Các bảng chữ cái trong cả hai ô vuông thường là bảng chữ cái hỗn hợp, mỗi bảng dựa trên một số từ khóa hoặc cụm từ.
Để tạo hình vuông 5x5, trước tiên người ta sẽ điền vào các khoảng trống trong hình bằng các chữ cái của từ khóa hoặc cụm từ (loại bỏ bất kỳ chữ cái trùng lặp nào), sau đó điền vào các khoảng trống còn lại bằng các chữ cái còn lại của bảng chữ cái theo thứ tự A-&gt;Z (bỏ qua "Q" để bảng chữ cái phù hợp). Từ khóa có thể được viết ở các hàng trên cùng của bảng, từ trái sang phải hoặc theo một số mẫu khác, chẳng hạn như hình xoắn ốc bắt đầu ở góc trên bên trái và kết thúc ở trung tâm. Việc sử dụng hai hình vuông cho phép tạo ra hai khóa riêng biệt, một khóa cho mỗi hình.
Ví dụ: đây là hai ô vuông dọc cho đang được sử dụng cho các từ khóa "EXAMPLE" và "KEYWORD":
 E X A M P
 L B C D F
 G H I J K
 N O R S T
 U V W Y Z
 K E Y W O
 R D A B C
 F G H I J
 L M N P S
 T U V X Z
Cách thức sử dụng.
Mã hóa sử dụng hai ô vuông về cơ bản giống như được sử dụng trong bốn ô vuông, ngoại trừ việc thong điệp và bản mã sử dụng cùng một hình vuông
Để mã hóa một tin nhắn, người ta sẽ làm theo các bước sau:
 E X A M P
 L B C D F
 G H I J K
 N O R S T
 U V W Y Z
 K E Y W O
 R D A B C
 F G H I J
 L M N P S
 T U V X Z
 E X A M P
 L B C D F
 G H I J K
 N O R S T
 U V W Y Z
 K E Y W O
 R D A B C
 F G H I J
 L M N P S
 T U V X Z
 E X A M P
 L B C D F
 G H I J K
 N O R S T
 U V W Y Z
 K E Y W O
 R D A B C
 F G H I J
 L M N P S
 T U V X Z
 E X A M P
 L B C D F
 G H I J K
 N O R S T
 U V W Y Z
 K E Y W O
 R D A B C
 F G H I J
 L M N P S
 T U V X Z
 Plaintext: "ne ed so me he lp ov er he re"
 Ciphertext: OK XR TW XW HE DL RU ER HE OY
Quy tắc hình chữ nhật được sử dụng để mã hóa và giải mã có thể được nhìn thấy rõ ràng trong sơ đồ này. Phương pháp giải mã giống với phương pháp mã hóa, chỉ khác là làm ngược lại thôi.
Giải mã.
Giống như hầu hết các mật mã thời kỳ tiền hiện đại, mật mã hai ô vuông có thể dễ dàng bị bẻ khóa nếu có đủ văn bản. Việc lấy khóa tương đối đơn giản nếu cả thông điệp và bản mã đều được biết. Khi chỉ có bản mã được biết, việc phá mã sẽ bao gồm việc tìm kiếm thông qua phân tích tuần suất của các kí tự (cặp chữ cái) .
Tùy thuộc vào việc sử dụng hai ô vuông dọc hay ngang, bản mã có thể vẫn sẽ hiển thị một số lượng đáng kể các đoạn của thông điệp. Trong một mẫu bản mã đủ lớn,nhà phân tích có thể tạo ra các chuỗi các thông điệp để giải mã và làm việc ngược lại để tìm từ khóa của mật mã đó
Một hướng dẫn hay về việc bẻ khóa cho mật mã hai hình vuông có thể tìm thấy trong chương 7, "Solution to Polygraphic Substitution Systems," trong Field Manual 34-40-2, do Quân đội Hoa Kỳ xuất bản.