Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình

Các kỹ thuật của mật mã đơn bảng (Monoalphabetic Cipher)


Có nhiều kỹ thuật mật mã đơn bảng như sau:

Mật mã cộng (Additive Cipher) - Một phương pháp tạo hoán vị chữ cái bảng chữ cái. Mỗi chữ cái trong bảng chữ cái dịch chuyển vòng cùng số lượng và thứ tự tương đối giữ nguyên.

Số vị trí chữ cái dịch chuyển gọi là khóa. Ví dụ khóa 5, 'a' dịch 5 vị trí phải thành 'F', 'b' thành 'G', v.v.

Chữ 'u' dịch thành 'Z' sau đó quay vòng đầu bảng chữ cái. 'v' ánh xạ 'A', v.v.

Nói cách khác, mật mã cộng cũng làm bằng số vị trí chữ cái bảng chữ cái. Phương pháp này, chữ cái Anh 'A'-'Z' ánh xạ số vị trí '0'-'25'.

Mật mã nhân (Multiplicative Cipher) - Phương pháp khác tạo hoán vị chữ cái bảng chữ cái. Lấy giá trị khóa và số vị trí mỗi chữ cái nhân 5 sau đó tích giảm modulo 26.

Ví dụ, vì chữ bản rõ (P) là 'h' và khóa (K) là 5, chữ bản mã tính bằng phép nhân modulo: C = P×K (mod 26). Vậy C = 7×5 = 9 (mod 26). Số vị trí '9' ánh xạ chữ 'J'. Do đó chữ bản mã là 'J'.

Mật mã Affine (Affine Cipher) - Loại mật mã thay thế đơn bảng, mỗi chữ cái bảng chữ cái ánh xạ tương đương toán học, mã hóa bằng hàm toán học đơn giản, chuyển lại thành chữ.

Công thức dùng nghĩa là mỗi chữ cái mã hóa thành một chữ cái khác, và ngược lại, nghĩa là mật mã thực chất là mật mã thay thế chuẩn với quy tắc quản lý chữ nào đi đâu.

Mật mã Affine tạo bằng kết hợp mật mã cộng và nhân. Là tập hợp 2 mật mã với cặp khóa. Khóa đầu dùng với mật mã nhân, khóa thứ hai dùng với mật mã cộng. Tập khóa là bí mật chung cho cả người gửi và nhận.

Mật mã Affine thực chất 2 mật mã, dùng lần lượt, như một phép toán phức hợp cho mã hóa/giải mã: C = ((P×K₁) + K₂) mod n và P = ((C - K₂) × K₁⁻¹) mod n.

T dùng kết quả tạm thời và chỉ 2 phép toán riêng: nhân và cộng cho mã hóa, trừ và chia cho giải mã.

Là tập hợp mật mã, Affine có phép biến đổi ngược trong mỗi thủ tục, mã hóa hoặc giải mã. Nếu cộng là phép cuối mã hóa, trừ phải là phép đầu giải mã. Nếu nhân là phép đầu mã hóa, chia phải là phép cuối giải mã.