Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (244.17 KB, 39 trang )
An ton v bo mt thụng tin
9
Bảng chữ cái dùng để mã hoá
D E F G H I J K L MN O P Q R S T U V WX Y Z A B C
Ví dụ:
Ví dụ 1: =GOOD, k=8 ta có:
E8(G)=(6+8) MOD 26 =14 =O
E8(O)=(14+8) MOD 26 =22 =W
E8(D)=(3+8) MOD 26 =11 =L
Vậy với bản rõ GOOD ta sẽ mã hóa thành OWWL
Ví dụ 2: =Tinhoc, k=10 ta có:
E10(T)=(19+10) MOD 26 =3 =D
E10(I)=(8+10) MOD 26 =18 =S
E10(N)=(13+10) MOD 26 =23 =X
E10(H)=(7+10) MOD 26 =17 =R
E10(O)=(14+10) MOD 26 =24 =Y
E10(C)=(2+10) MOD 26 =12 =M
Vậy với bản rõ TINHOC ta sẽ mã hóa thành DSXRYM
Ví dụ 3: =Baomat, k=17 ta có:
E17(B)=(1+17) MOD 26 =18 =S
E17(A)=(0+17) MOD 26 =17 =R
E17(O)=(14+17) MOD 26 =5 =F
E17(M)=(12+17) MOD 26 =3 =D
E17(T)=(19+17) MOD 26 =10 =K
Nguyn Th Thu Hin - TK6LC1
An ton v bo mt thụng tin
10
Vậy với bản rõ BAOMAT ta sẽ mã hóa thành SRFDRK
* Thuật toán giải mã tơng ứng Dk là lùi lại k bớc trong bảng chữ cái theo
modul 26.
Dk() = ( - k) MOD 26
Để minh họa, ta xét một vài ví dụ minh hoạ:
Ví dụ 1: = HPWNZXP
- Xét với k=1 ta có thể lùi lại 1 bớc trong bảng chữ cái. Nh vậy bản mã trên
tơng ứng là: GOVMYWO
- k=2, tơng tự thu đợc bản rõ FNULXVN
- k=3, thu đợc bản rõ EMTKWUM
- k=4, thu đợc bản rõ DLSJVTL
- k=5, thu đợc bản rõ CKRIUSK
- k=6, thu đợc bản rõ BJQHTRJ
- k=7, thu đợc bản rõ AIPGSQI
- k=8, thu đợc bản rõ ZHOFRPH
- k=9, thu đợc bản rõ YGNEQOG
- k=10, thu đợc bản rõ XFMDPNF
- k=11, thu đợc bản rõ WELCOME
Đến đây bản rõ có nghĩa (WELCOME) nên ta xác định đợc khóa k = 11
Ví dụ 2: Cho bản mã JBCRCLQRWCRVNBJENBWRWN ta thử liên tiếp các khóa
giải mã để thu đợc các bản rõ:
Nguyn Th Thu Hin - TK6LC1
An ton v bo mt thụng tin
11
JBCRCLQRWCRVNBJENBWRWN
(k=1)
IABQBKPQVBQUMAIDMAVQVM
(k=2)
HZAPAJOPUAPTLZHCLZUPUL
(k=3)
GYZOZINOTZOSKYGBKYTOTK
(k=4)
FXYNYHMNSYNRJXFAJXSNSJ
(k=5)
EWXMXGLMRXMQIWEZIWRMRI
(k=6)
DVWLWFKLQWLPHVDYHVQLQH
(k=7)
CUVKVEJKPVKOGUCXGUPKPG
(k=8)
BTUJUDIJOUJNFTBWFTOJOF
(k=9)
ASTITCHINTIMESAVESNINE
Tới đây ta thu đợc bản rõ có nghĩa và dừng lại, khóa tơng ứng k = 9.
Một số thuộc tính của Ek và Dk là:
Tính giao hoán: Ek và Dk đợc áp dụng lần lợt, thứ tự không quan trọng.
Ví dụ: E3 D7 E6 D11 = E3 E6 D7 D11 = D9 = E17.
Với k bất kỳ thoả mãn 1 k 26 ta có: Dk = E26-k, DkEk = E0 = D0.
Hệ CAESAR là hệ mã hoá cũ và không an toàn vì không gian khoá của nó
rất nhỏ, do đó có thể thám mã theo phơng pháp vét cạn. Khoá giải mã có thể tính
ngay ra đợc từ khoá mã hoá. Do chỉ có 26 khoá nên ta có thể thử lần lợt các khoá
cho đến khi tìm đợc khoá đúng.
2. Hệ mã hoá AFFINE
Hệ mã hoá AFFINE đợc xác định bởi hai số nguyên a và b, với điều kiện 0
a,b 25 (tức a, b thuộc bảng chữ cái tiếng Anh 26 ký tự). ở đây chúng ta xét hệ làm
việc trên các số tự nhiên thay cho các ký tự nh đã nói ở phần trên, các phép toán số
học đợc thực hiện theo modul 26.
Nguyn Th Thu Hin - TK6LC1
An ton v bo mt thụng tin
12
Thuật toán:
- Bớc 1: Đa vào bản rõ cần mã hóa
- Bớc 2: Cho bớc nhảy các ký tự, tức là giá trị a và b
- Bớc 3: Thay thế ký tự ở bản rõ bằng ký tự đợc xác định bởi:
Ek() = (a + b) MOD 26
Lu ý: khi a = 1 thì ta có hệ mã hoá CAESAR.
Ví dụ: nếu a = 3 và b = 5 thì ta có, bảng số tự nhiên tơng ứng với bảng chữ
cái gốc:
0
1
13 14
2
3
4
5
6
7
8
9
10
11
12
15
16
17
18
19
20
21
22
23
24
25
bảng số tự nhiên sau khi mã hoá:
5
8
18 21
11
14
17
20
23
0
3
6
9
12
15
24
1
4
7
10
13
16
19
22
25
2
Tơng ứng ta có bảng chữ cái gốc:
A B C D E F G H I J K L MN O P Q R S T U V WX Y Z
và bảng chữ cái dùng để mã hoá:
F I L O R U X A D G J MP S V Y B E H K N Q T WZ C
Ví dụ1: = THUHIEN, với a=3, b=5 ta có:
Ek(T) = (3.19 + 5) MOD 26 = 10 = K
Ek(H) = (3.7 + 5) MOD 26 = 0 = A
Ek(U) = (3.20 + 5) MOD 26 = 13 = N
Nguyn Th Thu Hin - TK6LC1