Xem mẫu
1.1.5 Mật mã Hill
Mật mã này được phát minh vào năm 1929 bởi Lester S. Hill. Cho một số nguyên dương m và định nghĩa P = C = (Z26)m. Ý tưởng của thuật toán là lấy m tổ hợp tuyến tính của m kí tự chữ cái trong một phần tử văn bản gốc , theo đó sản xuất m kí tự chữ cái trong một phần tử văn bản mã.
Hình 1.6 Mật mã Hill
Cho m là một số nguyên dương cho trước. Cho P = C =(Z26)m và cho
K = {các ma trận m m có nghịch đảo trên Z26 } Cho một khóa K, chúng ta định nghĩa
eK(x) = xK và
d (y) = yK-1 , với K-1 là ma trận nghịch đảo của K, ở đây tất cả các phép toán được thực hiện trong Z26
Định nghĩa 1.5
Định thức của ma trận 2 2 A = (ai,j) là giá trị det A = a1,1a2,2 – a1.2a2,1
Nhận xét: Định thức của một ma trận vuông m m có thể được tính bởi các phép toán cơ bản, xem trong các sách đại số tuyến tính.
Hai đặc tính quan trọng của định thức là det Im = 1 và qui tắc nhân
det(AB) = det A det B.
Ví dụ 1.5
Giả sử khóa là K= 11 8
Từ việc tính toán ta thu được -1 7 18
23 11
Giả sử chúng ta muốn mã hóa văn bản july. Chúng ta có 2 phần của văn bản mã là: (9,20) (tương ứng ju) và (11,24) (tương ứng ly). Chúng ta tính như sau:
(9,20) 11 8
và
(11,24) 11 8
= (99 + 60, 72 + 140) = (3,4)
= (121 + 72, 88 + 168) = (11,22).
Ví dụ: nếu m = 2 chúng ta có thể viết một
phần tử văn bản là x = (x1,x2) và một phần tử mật mã là y = (y1,y2), ở đây y1, y2 là một tổ hợp tuyến tính của x1 và x2. Chúng ta có thể có:
y1 = 11x1 + 3x2 y2 = 8x1 + 7x2
Tất nhiên ta cũng có thể viết dưới dạng ma trận như
sau:
(y1,y2) = (x1, x2)
11 8 3 7
...
- tailieumienphi.vn
nguon tai.lieu . vn