Có hai cách lớn để giấu một bản tin. Cách thứ nhất là thay mỗi chữ bằng một ký hiệu khác, như Morse hay Vigenère. Cách thứ hai là giữ nguyên các chữ, chỉ đổi chỗ của chúng. Mật thư hàng rào và mật thư chia cột thuộc nhóm thứ hai, gọi chung là mật thư hoán vị.

Ưu điểm của nhóm này là dễ soạn, dễ giải bằng giấy bút, rất hợp cho các trạm trong trò chơi lớn. Chỉ cần nhận ra "đây là chữ bị xáo trộn" là đội chơi đã đi được nửa đường.

Nguồn gốc ngắn

Ý tưởng đổi chỗ chữ cái đã có từ thời cổ đại. Người Sparta dùng gậy scytale: quấn một dải da quanh cây gậy rồi viết dọc theo thân gậy, tháo ra thì chữ bị xáo trộn. Mật thư hàng rào (tiếng Anh: rail fence) là phiên bản đơn giản nhất trên giấy. Mật thư chia cột theo từ khoá (columnar transposition) mạnh hơn, từng được dùng nghiêm túc trong quân sự, ví dụ là một bước trong hệ mã ADFGVX của quân đội Đức năm 1918.

Cách nhận biết mật thư hoán vị

Đây là kỹ năng quan trọng nhất của bài. Một bản mật mã hoán vị có các dấu hiệu:

  • Tần suất chữ giống văn bản thường. Vì chữ chỉ bị đổi chỗ, các chữ hay gặp trong tiếng Việt viết Telex như N, H, A, O, I, T, G vẫn nhiều, còn Z, Q gần như không có.
  • Có đủ "nguyên liệu" của một câu. Bạn có thể thấy những cụm như NG, NH, TR, OW, AA bị tách rời, nhưng tổng số chữ vẫn khớp với một câu tiếng Việt.
  • Không có khoảng trắng tự nhiên, hoặc chữ được chia thành từng nhóm đều nhau (nhóm 4, nhóm 5, nhóm 6…).
  • Người soạn thường gợi ý bằng hình ảnh: hàng rào, con rắn, sóng biển, tia chớp (cho hàng rào); hình bảng, ô cửa sổ, kệ sách (cho chia cột).

Mẹo: Đếm nhanh số chữ "lạ" (Z, Q, J nhiều bất thường). Nếu ít chữ lạ và nhiều N, H, G thì nghĩ tới hoán vị. Nếu chữ lạ dày đặc thì nghĩ tới mật thư thay thế như Vigenère.

Mật thư hàng rào 2 tầng

Bản rõ: "Tập trung ở sân cờ", viết Telex (xem bài Quy ước dấu tiếng Việt trong mật thư) và bỏ khoảng trắng:

TAAPJTRUNGOWRSAANCOWF   (21 chữ)

Mã hoá: viết lần lượt từng chữ, lên xuống luân phiên giữa hai tầng, giống hình hàng rào:

T . A . J . R . N . O . R . A . N . O . F
. A . P . T . U . G . W . S . A . C . W .

Đọc tầng trên rồi tới tầng dưới:

TAJRNORANOF APTUGWSACW

Thường người soạn gửi liền một dòng: TAJRNORANOFAPTUGWSACW.

Giải mã: chia đôi chuỗi. Với số chữ lẻ, nửa đầu dài hơn một chữ (21 chữ thì 11 + 10). Sau đó đọc xen kẽ: chữ 1 của nửa đầu, chữ 1 của nửa sau, chữ 2 của nửa đầu, chữ 2 của nửa sau…

Nửa đầu: T A J R N O R A N O F
Nửa sau:  A P T U G W S A C W
Đọc xen: T A A P J T R U N G O W R S A A N C O W F

Mật thư hàng rào 3 tầng

Cùng bản rõ đó, nhưng chữ đi theo đường zic zắc qua 3 tầng: xuống 1 – 2 – 3, lên 2, xuống 1 – 2 – 3…

T . . . J . . . N . . . R . . . N . . . F
. A . P . T . U . G . W . S . A . C . W .
. . A . . . R . . . O . . . A . . . O . .

Đọc theo từng tầng:

TJNRNF APTUGWSACW AROAO

Giải mã 3 tầng cần một bước đếm. Đường zic zắc lặp lại sau mỗi 4 chữ (tầng 1, 2, 3, 2). Với 21 chữ:

  • Tầng 1 nhận các chữ thứ 1, 5, 9, 13, 17, 21 → 6 chữ.
  • Tầng 3 nhận các chữ thứ 3, 7, 11, 15, 19 → 5 chữ.
  • Tầng 2 nhận phần còn lại → 10 chữ.

Cách làm dễ nhất: kẻ sẵn khung zic zắc 21 ô trên giấy, đánh dấu chỗ trống của từng tầng, điền 6 chữ đầu vào tầng 1, 10 chữ tiếp vào tầng 2, 5 chữ cuối vào tầng 3, rồi đọc theo đường zic zắc.

Nếu không biết số tầng, hãy thử lần lượt 2, 3, 4 tầng. Với bản tin ngắn, thử 3 lần là đủ.

Mật thư chia cột theo từ khoá

Đây là "anh lớn" của hàng rào. Thay vì một con số (số tầng), người chơi cần một từ khoá.

Bản rõ vẫn là TAAPJTRUNGOWRSAANCOWF, từ khoá TRAI.

Bước 1. Đánh số cột theo thứ tự chữ cái của từ khoá. Trong T, R, A, I thì A đứng đầu bảng chữ cái, rồi tới I, R, T:

Từ khoá : T R A I
Thứ tự  : 4 3 1 2

Bước 2. Viết bản rõ theo hàng ngang, mỗi hàng 4 chữ (bằng độ dài khoá). Ô trống cuối cùng điền chữ đệm X:

T R A I
4 3 1 2
-------
T A A P
J T R U
N G O W
R S A A
N C O W
F X X X

Bước 3. Đọc theo cột, lần lượt theo thứ tự 1, 2, 3, 4:

Cột 1 (A): A R O A O X
Cột 2 (I): P U W A W X
Cột 3 (R): A T G S C X
Cột 4 (T): T J N R N F

Bản mật thư: AROAOX PUWAWX ATGSCX TJNRNF.

Giải mã: biết khoá TRAI có 4 chữ, bản mật mã 24 chữ, vậy mỗi cột có 24 : 4 = 6 chữ. Kẻ khung 4 cột × 6 hàng, ghi số thứ tự 4 3 1 2 trên đầu. Điền nhóm 6 chữ đầu tiên vào cột số 1, nhóm thứ hai vào cột số 2… rồi đọc theo hàng ngang. Bỏ các chữ X ở cuối là ra bản rõ.

Nếu từ khoá có chữ cái trùng nhau (ví dụ HOA HONG), chữ nào đứng trước tính trước. Người soạn nên ghi rõ quy ước này hoặc chọn khoá không có chữ trùng.

Mẹo giải

  • Đếm tổng số chữ trước tiên. Với chia cột, tổng số chữ thường chia hết cho độ dài khoá. Nếu bản mật mã có 24 chữ, khoá có thể dài 3, 4, 6 hoặc 8.
  • Tìm cặp chữ ghép. Tiếng Việt viết Telex rất hay có NG, NH, CH, TR, AA, OW, UW. Khi thử sắp xếp, ưu tiên cách làm cho các cặp này đứng cạnh nhau.
  • Chữ đệm X ở cuối nhóm là dấu hiệu gần như chắc chắn của mật thư chia cột.
  • Gợi ý hình vẽ: hàng rào, rắn, sóng thường kèm số tầng. Số cọc rào, số đốt rắn chính là manh mối.

Biến thể

  • Hàng rào có độ lệch: bắt đầu viết từ tầng 2 thay vì tầng 1.
  • Chia cột hai lần: làm chia cột với một khoá, rồi lấy kết quả chia cột thêm một lần nữa. Khó hơn nhiều, dành cho đội đã quen.
  • Viết theo cột, đọc theo hàng không có khoá, chỉ có số hàng. Dạng này được giới thiệu trong bài Mật thư đảo chữ.
  • Kết hợp: bản tin đã đổi chỗ được mã hoá thêm bằng Morse hoặc chữ bằng số. Xem bài Mật thư kết hợp.

Thử sức

Mật thư 1. Hàng rào 3 tầng, bản rõ viết Telex:

DEHBSDVEPISACIFAW

Mật thư 2. Chia cột, khoá SAO, bản rõ viết Telex:

ETIROSOX ERJUWTIX VFATWCOS

Đáp án

Mật thư 1. Có 17 chữ. Tầng 1 nhận chữ thứ 1, 5, 9, 13, 17 (5 chữ: DEHBS), tầng 3 nhận chữ thứ 3, 7, 11, 15 (4 chữ: IFAW), tầng 2 nhận 8 chữ còn lại (DVEPISAC). Đọc zic zắc được DDIVEEFPHIASBAWCS → DDI VEEF PHIAS BAWCS – "Đi về phía bắc".

Mật thư 2. Khoá SAO đánh số S=3, A=1, O=2. Mỗi cột 8 chữ. Cột A: ETIROSOX, cột O: ERJUWTIX, cột S: VFATWCOS. Xếp lại và đọc theo hàng: VEE FTR AIJ TRU WOW CST OOI SXX → VEEF TRAIJ TRUWOWCS TOOIS – "Về trại trước tối".