Phƣơng pháp xáo trộn thứ tự của các chữ cái trong bản rõ.
Do thứ tự của các chữ cái bị mất đi nên ngƣời đọc không thể hiểu đƣợc ý nghĩa của bản tin dù các chữ đó không thay đổi.
Mã hoán vị (Permutation Cipher)
Một cách thực hiện đơn giản là ghi bản rõ theo từng hàng, sau đó kết xuất bản mã dựa trên các cột.
Ví dụ bản rõ “attackpostponeduntilthisnoon” đƣợc viết lại thành bảng 4 x 7 nhƣ sau:
Khi kết xuất theo từng cột thì có đƣợc bản mã:
Mã hoán vị (Permutation Cipher)
Một cơ chế phức tạp hơn là chúng ta có thể hoán vị các cột trƣớc khi kết xuất bản mã.
Ví dụ chọn một khóa là MONARCH, ta có thể hoán vị các cột:
Bản rõ “attackpostponeduntilthisnoon”
và có đƣợc bản mã:
“APTNKNLOPETNAODHTTNSTSUICOIO”. Việc giải mã
đƣợc tiến hành theo thứ tự ngƣợc lại.
Mã hoán vị (Permutation Cipher)
Để an toàn hơn nữa => hoán vị 2 lần (double transposition):
Sau khi hoán vị lần 1, ta lấy kết quả đó hoán vị lần nữa:
Và cuối cùng bản mã là:
“NTTCNASILOTOAODSTETIPPHUKNNO”
Phá mã phƣơng pháp hoán vị 2 lần không phải là chuyện dễ dàng vì rất khó đoán ra đƣợc quy luật hoán vị.
Không thể áp dụng đƣợc phƣơng pháp phân tích tần suất chữ cái giống nhƣ phƣơng pháp thay thế vì tần suất chữ cái của bản rõ và bản mã là giống nhau. 38
Tổng kết
Các phƣơng pháp mã hóa cổ điển thƣờng dựa trên hai cách:
1. Phƣơng thức thay thế một chữ cái trong bản rõ thành một chữ cái khác trong bản mã (substitution). Gồm: Ceasar, mã hóa thay thế đơn bảng, đa bảng, one-time pad.
2. Phƣơng thức hoán vị để thay đổi thứ tự ban đầu của các chữ cái trong bản rõ (permutation).
Tổng kết
Phá mã
Mục tiêu của việc phá mã là từ bản mã đi tìm bản rõ, hoặc khóa, hoặc cả hai.
Chúng ta giả định rằng ngƣời phá mã biết rõ thuật toán mã hóa và giải mã. Việc phá mã sẽ có 3 tình huống sau:
• Chỉ biết bản mã (ciphertext–only)
• Biết một số cặp bản rõ – bản mã (known–plaintext) • Một số cặp bản rõ – bản đƣợc lựa chọn (choosen–