Tải bản đầy đủ (.pdf) (151 trang)

Ebook nhập môn phân tích thông tin có bảo mật phần 1 TS hồ văn canh, TS nguyễn viết thế

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 (9.77 MB, 151 trang )

TS. HỔ VÁN CANH, TS. NGUYỄN VIẾT THÊ

Nhập min
n Ũ N TÍCH THÔNG TỊN
CÓBẰOHÌT
I

NHÀ XUẤT BẢN THÔNG TIN VÀ TRUYỂN THÔMG


LỜI N tl OẨU
Như chúng ta đều biết vai trò quan trọng của an toàn thông tin
(ATTT) trong thời đại bùng nổ thông tin hiện nay. Người ta chia các
vi phạm ATTT trên mạng truyền dẫn nói chung, mạng máy tỉnh nói
riêng thành loại thụ động và loại chù động. Lx)ại vi phạtn thụ động chì
nhằm mục đích là nắm bắt thông tin, có thể chì tìm người gửi, người
nhận, mật độ thông tin trao đổi, thời gian gửi. Vi phạm thụ động
thường không làm sai lệch hoặc hủy nội dung trao đổi. Loại vi phạm
chủ động có thể làm thay đổi nội dung, xỏa bỏ, tàm trễ thông tin
đang truyền, làm biến dạng chúng, chèn thông tin giả vào thông tin
thật trên mạng thậm chí có thể tìm cách phá sập một Website nào đó.
Trong số các phương pháp đảm bảo ATTT thì phưcnig pháp mật
mã hóa (Cryptography) được sử dụng rộng rãi và dảm bảo an toàn
nhất. Tuy nhiên phương pháp mật mã hóa cũng có những yếu điểm
quan trọng là nếu phương pháp mật mã hóa không tốt (mặc dù việc
quản lý khóa mã được giả thiết là an toàn) thì rất nguy hiểm. Vậy làm
thế nào để đánh giá được chất lượng của một hệ mật mã là tốt? Có
nhiều phương pháp đánh giá chất iượng cùa một hệ mật như phương
pháp Entropy của Shannon, nhưng phương pháp tổt nhất và là trực
quan nhất, đố là phương pháp phân tích trực tiếp bản mã khi không có
khóa mã trong tay mà người ta thường gọi là thám mS (Cryptanalysis).


Đây là một bộ môn mới đ i ^ công khai hóa trong thời gian gần đầy.
Đê bước đầu làm quen với môn "nghệ thuật" này, NXB Thông tin và
Truyền thông đã xuất bản cuốn sách

^Nhộp môn phân tích thông tin

cỏ bio mật** giới thiệu đến bạn dọc. Đây là phương pháp đảm bảo


ATTT lâu đời nhất, quan trọng nhất và được nghiên cứu phát triểr
ngày càng rộng rãi. N ó đã trở thành m ột ngành khoa học được gọi lỉ

khoa học về phân tích mật mâ (Cryptanalysis).
Cuốn sách được TS. Hồ Văn Canh và TS. Nguyễn Viết Thể tổng
hợp và biên soạn từ nhiều kết quả nghiên cứu khoa học đã được côti|
bổ cùng với kinh nghiệm tích iuỹ được sau 30 năm tỉm tòi, nghiên cún.
và trực tiếp giảng dạy của các tác giả. Cuốn sách gồm 7 chương;
Chương / ; Khái niệm về mã thám
Chương 2: Một sổ kiến thức bồ trợ
Chương 3: Các bước cơ bàn để tiến hành thám mã
Chương 4: Thực hành phán tích một số luật mõ thuộc hệ mội
truyền thống
Chương 5: Một số phương pháp thám mõ dữ liệu DES
Chương 6: Mật mõ công khai và phương pháp thám mõ
Chương 7: Phương pháp tẩn công RSA không cần phán tích
nhân tử.
Hy vọng cuốn sách sẽ thực sự hừu ích đối với các kỳ sư, kỹ thuật
viên, cán bộ giảng dạy và sinh viên ngành Công nghệ Thcng tin, Điện
tử Viễn thông, Ngành Mật mã... khi thực hiện đề tài, đồ án, các dự án,
cùng như tix>ng giảng dạy, học tập... Ngoài ra, cuổn sách cùng ià tái liệu

tham khảo bể ích cho bạn đọc quan tâm tới lĩnh vực này.
Nhà xuẩt bản xin giới thiệu cùng bạn đọc và rất tnong nhận dược ý
kiến đỏng gỏp của quý vị. Mọi ỷ kiến dỏng gốp xin gửi về

Nhà xuất

bản nông tín và Trụyền thông • 18 Nguyễn Du, Hà Nội.

Trán trọng cảm ơn./.
NXB THÔNG TIN VÀ TRUYỀN THÔNG


Chương 1

KHẤi NIỆM VỂ MA THÀM
1.1. MỞ ĐẦU
Trong phần trình b ày này, ch ú n g ta tạm phân m ã đổi
xứng làm h ai phần, m ật m ă cổ điển và mật m ă "hiện đại", ở
đây ch ú n g ta phân biệt k h ái niệm "hiện đại" trong hệ th ống
mật m ã đối xứng được dừ ng trong cuốh sách này với kh ái
n iệm "hiện đại" trong hệ m ật mã bất đối xứng. Trong phạm v i
cuốn sách này, ta hiểu m ật m ã "hiện đại" là hệ mật khoá đổi
xứng nhưng nó đã ph át triển ở mức cao, đặc b iệt ỉà tự động
hoá trong việc mã dịch. M ật m ã n à y h iện n a y đan g p h á t triển
m ạnh như mật m ã với kh oá thuật toán D ES; 3DES; IDEÂ;
FEAL; AES,.„ C hính vì vậy, ch ú n g ta gọi mật m ã như vậy là
mật m ã hiện đại. Còn m ật m ã cổ điển ỉà mật m ã được m ã/dịch
bằng thù công, mật m ã ỉoạỉ n ày ra đòi sớm nhất, nó được sử
dụng, p h át triển lâu đòi và đến n a y nó chi tồn tại ở m ột số
nước đang p h á t triển v à cũng chỉ trong m ột phạm vỉ hẹp, ồ

nh ũn g nời khó k h ăn tron g ứ ng d ụ n g công n g h ệ đỉện /đỉện từ
(ví dụ trong ỉực lượng q u ân sự hoạt động p h ân tán, trong
vùn g nông thôn, rừng n ú i hoặc trong các đcfn vị tìn h báo.«).
T uy n h iên , ch ín h mật m ă ỉoại này lại ỉà nền tảng cho sự p h át
triển của mật m ã hiện đại (th eo n gh ĩa của cuốn sách này).


Nhập môn Phân tỉch thông tin có hào mật
C hính vì vậy, việc n gh iên cứu thám mở điện m ã c ủ a m ật
m ã cổ đ iển có ý n gh ĩa quan trọng phục vụ việc nghiên cứu
th ám mỏ các hệ th ông m ật mă hiện đại. Trên cơ sỏ đó góp
phần tăn g cưòng độ an toàn cho các hệ m ật m ã hiện đại,
nhằm góp phần bảo vệ an ninh thông tin trong tình hình mới.
V ề m ật m â cổ đ iển th ì có rất nhiều loại. N goài ra cũng có
rất n h iều loại biến th ể của chúng nhằm ỉàm tă n g độ an toàn
cho m ật mã. D o đó, ch ú n g tôi không đề cập h ết tấ t cả các loại
m ật m ã cổ điển cù n g các biến th ể của chún g m à chỉ trình bày
m ột s ố loại điển h ìn h n h ấ t đã và đang được d ù ng mà có
n h ữ ng ỉoại v ẫ n dùng cho đến hôm nay.

1.2. CÁC THUẬT NGỮ cd BẢN VỀ MẬT MẲ VÀ MÂ THÁM
t.2 .1 . Mật mã (Cryptography)...........................................
M ật m ã là tập hợp m ọi phưdng pháp (hoặc quy tác) biến
đổi nào đó nhằm ch u yển các thông báo (m essages) dưới dạng
n h ận thức đưỢc nội d u ng (như chữ viết, tiến g nói, hinh vẽ,
h ỉn h ả n h ,_ ) th à n h dạn g bí m ật mà n h ũ n g người ngoài cuộc
không h iểu được nội d u n g nếu họ không biết được phưdng
pháp (hoặc quy tắc) biến đổi đó.
Cồn m ật mã học (CrỊrptology) ià m ột bộ môn khoa học
ch u yên n gh iên cứu v ề m ột m ã và mã thám .


1.2.2. Bẳn rõ (Plain text)
Ta h iểu bẳn rõ túc là m ột bản th ông báo có m ang nội
d u n g th ôn g tin m à ngưòỉ đọc có th ể h iểu được nó nói cái gì


Chương ỉ: Khái niệm về mã thảm
hoiặc là nó có ý n gh ĩa rõ ràng. B ản rõ (bản th ôn g báo) có th ể
tồ n tại dưới dạng chữ v iết, tiến g nói, h ìn h vẽ, biểu b ản g.,
tưtíng ứ n g ta sẽ có k h á i n iệm m ã ký tự, m ã thoại, m ă fax, m ã
d ữ liệu...
B ản rõ thưòng được b iểu diễn (viết) dưới dạn g m ột dây
c á c chữ cái theo quy tắc cú pháp nào đó hoặc ký h iệu thuộc
b ả n g chữ c á i»í / h ữ u h ạ n được xác định trước. Đ ể dễ trình

hìế\x»yíí là k h ô n g g ia n các bản rõ (m essage space).
V í dụ: •/(( có th ể là gồm các dãy nhị phân, các ván bản tiến g
b à y , ta ký

V iệt, hoặc mã chương trìn h m áy tính™
1 .2 .3 . Bản m ã (C ip h e r te x t)

B ản m ã thưòng cũ n g được biểu diễn dưới d ạn g m ột dăy
c á c ký h iệu có th ể cũ n g th u ộc ♦*/ như ng không th eo m ột quy
tắ c cú pháp nào cả. Người ta nói rằng đó ỉà dăy n gẫu n h iên.
T a ký h iệu tập tấ t cả bản m â ứ ng vối các bản rõ m là ^
C hú ý ràng các ký h iệu củ a c € ^ c ó th ể không thuộc

1.2.4. Phép biến d â mã/dịch (Encrytion/decryption
Transíormations)

T rong việc tạo ra b ản m ã từ bản rõ, ngưòi ta cần đến h ai
y ế u tô' là: các th am sô' và m ột quy tắc m ã/dịch. T ham

số đó

ngư òi ta gọi ỉà khoá m ã/dịch (key seed). Tập tấ t cả các khoá
(m ầm khoá) đó tạo th à n h m ột k h ông gian khoá v à được k ỷ
h iệu là

•'/{. Còn m ột quy tắc m ã là m ột án h xạ từ không gian

•4( vào không gian ^ p h ụ thuộc vào m ột khoá
cho trước.
T a k ý h iệu nó là Egt >41
^ với e 6
Á nh xạ n à y p h ải là


Nhập môn Phân tích thông tin có hào mật

8

son g án h (ánh xạ lên và 1 - 1) và ánh xạ ngược của ánh xạ Eg
được gọi là quy tắc dịch (T ranslation) tức là quy tắc biến đổi
bản m ã c € ^ th à n h bản rõ tưdng ứng m 6
là Dj, d đây d e

-yií được ký h iệu

Các khoá m ã e và khoá dịch d tạo th à n h


m ột cặp khoá m ã/dịch và được v iết là (e, d). Chú ý rằng e và
d có th ể trù n g nhau.
- Q uá trình áp d ụ ng phép biến đổi bản rõ m €

>

th àn h

b ản m ã tưdng ứ ng c € ^ được gọi là mã hoá.
- Q uá trìn h áp d ụ n g phép biến đổi

vào bản mã

tạo ra bản rõ m tương ứ ng được gọi là giải mã
hoặc

để

(decryption

decipherin^.

(enryption scbeme) là gồm tập hỢp tấ t
cả h àm m ã hoá Eg ứ n g vói mỗi e €
và tấ t cả hàm giải mã
- Lược đồ m ã hoá

ứng với d 6


H àm

và Ee phải thoả m ãn hệ thức;

Dj= Ee * với V (e.d) 6 .>ír X
Tức là m = Dd (c) = Ee

(E . (m))

N h ư v ậ y để người n h ận (tích thực dịch đưđc bản m ã từ
ngưòi gửi tới th ì đường nh iên người n h ận p h ẳi cố khoá dịch d
v à quy tắc dịch Dj. V iệc này có th ể thực h iện được bằng sự
trao đổi khoá giữ a 2 bên, ta ký h iệu 2 bên đó là Â và B.
T rong m ật m ã cổ đ iển tru yền thống, việc trao đổi này phải
được đảm bảo b í m ậ t không để cho bất kỳ m ột đối tác c (đôi
tác th ứ 3) nào biết. V ì khoá mã q u yết đ ịn h đến độ an toàn
mẠt m ã. T rong ỉú c đó th u ậ t toán m ã/dịch thường đơn giản và
được quy ưóc trưốc giữ a h a i bên A và B,


_

^

Chương 1: Khái niệm vê mã thảm
1 .2 .5 . Mẳ thám
Quá trình khôi phục lại bản rõ hoặc kh oá khi chỉ có bản
m ã tương ứ n g cho trưốc được gọi là th ám m ã. N gưòi làm công
tá c thám m ã được gọi là ngưòi m ã th ám


(Cryptanalysist) h ay

gọi là mã thám viên.
Đđn vị tổ chức làm công tác thám m ã được gọi là đơn v ị
m ã thám . Mã th ám là m ột bộ phận k h ôn g th ể th iếu của
ngàn h tìn h báo đ iện tử. H ầu h ết các nưóc đều có bộ phận
tìn h báo điện tử này, n h ư n g sự p h át triển và h iệu quả của nó
lại phụ thuộc vào trìn h độ khoa học và công ngh ệ của nước
đó. Nước nào có trìn h độ kh oa học công n gh ệ cà n g cao th ì khả
n ăn g của công tác th ám m ã nói riêng, tìn h báo điện tử nói
ch u n g càn g m ạnh.
1.2 .6 . Nhóm báo khoá (Label)
Trong các hệ m ật m ã tru yền thống, k h i bản m ã được
chuyển từ nơi gửi đến ndi n h ậ n th ì đương n h iên nơi n h ận
p hải có khoá m ã đ ể dịch. Các khoá m ã và khoá dịch m ã được
chuyển cho nhau trước lúc b ắ t đầu th ốh g n h ấ t vổi nhau (giữa
nơi gử: A và ndi n h ậ n đích thực B) v ề việc liê n lạc. N hư ng sô"
lượng các khoá m ă/dịch th ư òng là rất n h iều , do vậy để 2 bên
A và B th ổh g n h ấ t với n h au họ phải th ôn g báo cho n h au b iết
búc điện mă cụ th ể được m ã từ khoá nào, th ôn g báo khoá nào
được sử dụng, ngưòi ta th ư òn g ghi tê n k h oá hoặc s ế h iệu củ a
khoá mă th à n h từ n g nhóm n gay trong bản m ã rồi gửi đến nơi
n h ận đích thực. T ên khoá hoặc 8ấ h iệu củ a khoá đó được gọi
là nhóm báo khoá. C ăn cứ vào nhóm báo khoá, m ật m ã v iên


Nhập môn Phăn tich thông tin có báo mật

10


sẽ xác định được kh oá m ã - khoá dịch tưđng ứng. Đ ể đôl phó
vối các cơ quan m ã th ám có th ể phát h iện ra nhóm báo khoá
và từ đó dự đoán được ỉu ậ t m ă và nhữ ng bản m ã trùng khoá,
nhóm báo khoá trưóc lúc cho vào bản m ã đã được mã hoá
th eo quy tắc nào đó do 2 bên A và B thoả th uận trước.

1.3. ĐẶC TRƯNG C0 BẢN CỦA BẢN Rỗ
Đ ể n gh iên cứu th ám mỗ được các bản mã truyền thổhg,
người m ã th á m p h ải n g h iên cứu các đặc trưng cơ bản của bản
rõ. Đó là quy lu ậ t tầ n số, quy lu ậ t trùng lặp, quy lu ật vàn
phong,... N ói m ột cách khác trong m ọi ngôn ngữ tự nhiên đều
có nhữ ng đặc trư ng b ấ t biến m à m ã thám viên cần nắm vữ ng
đ ể phục vụ việc p h ân tích các bản mã.
.

Đệ tiện, vịệẹ thẹo, dõi, ngh iện cứụ y ề sạu m à vẫn không

m ất tín h tổn g quát, ch ú n g ta d ù ng tiến g Anh làm đối tượng
n gh iên cứu trong to à n bộ cuôn sách này.

1.3.1. Tần số (Prequency)
N gưòi ta đ ịn h n g h ĩa tần s ố x u ấ t h iện m ột ký tự, một
nhóm ký tự, m ột từ h a y m ột vần... trong m ột ván bản là sô'
lầ n x u ấ t h iện củ a k ý tự, nhóm ký tự, từ, vần đó trong vàn
bản đã cho.
N gưòi ta có th ể tín h tầ n s ố từ m ột hoặc n h iều văn bản
(th ông báo) củ a m ột ỉoại ngôn ngữ nào đó để rút ra những
quy ỉu ậ t riên g củ a n gôn ngữ đó. Có n h iều ỉoại tần s ố như:
T ần s ố từ n g ký tự (tầ n sô' đđn), tầ n s ố từ n g cặp 2 ký tự (tần



Chương I : Khái niệm về mã thảm

11

s ố bộ đôi). N gay tầ n sô' bộ đôi cũ n g có n h iều cách tín h khác
n h a u như:
- T ần s ố bộ đôi th ôn g thưòng;
- T ần sô' bộ đôi móc xích (concatenate)
- T ần sô bộ k ký tự (k = 1, 2 , 3, 4...)
- N goài ra còn có: tẨn sô' từ, tẨn số vần chữ cái (ví dụ - tion,
trong tiến g A nh), tầ n s ố các nhóm n g u y ên âm , tầ n s ố các ký
tự đứng đầu từ, tầ n sô' ký tự đứng CUÔI từ.
M ột điểm cần lư u ý: m ỗi loại ngôn ngữ tự n h ỉên khác
nh au có các tầ n sô' k h ôn g g iến g n h au. N gay trong m ột ngôn
ngữ các loại v ă n bản có tín h ch ấ t văn học sẽ có các tầ n s ố
không hoàn toàn g iến g nhau. N h ữ n g tín h ch ất đó ngưòi ta
gọi là các đặc trư ng ngôn ngữ.
Ta lư u ý rằng, các ván bản khác n h au thường có độ dài
(sô' lượng các ký tự trong văn bản đó) khác nhau. Do đó k h ái

số như đ ịn h ngh ĩa trên có n h iều trưòng hỢp rất khó
trong thực h àn h. Vì vậy người ta đưa ra k h ái niệm tầ n số
niệm tầ n

tương đối (tần su ấ t - relative frequency). T ần su ấ t của m ột
ký tự X nào đó trong v ă n bản là s ố lầ n x u ấ t h iện ký tự đó chia
cho độ dài của văn bản đó. Còn tầ n su ấ t bộ đôi móc xích xy
nào đó trong m ột v ă n bản là s ố lầ n x u ấ t h iện bộ đôi đó có
trong văn bản chia cho độ dài của v ă n bản trừ đi một. V í dụ,

giả sử v ă n bản có độ dài n, k h i đó s ố lượng bộ đôi móc xích là
n - 1, nếu sô' lầ n x u ấ t h iện cặp “nh” là m lầ n th ì tần su ấ t củ a
cặp “nh” sẽ là m „h/(n-l). Sau đây là k ết quả tín h toán các tần


Nhập môn Phân tich thông tin cỏ bảo mật

12

s ố đơn tiế n g V iệt th eo th ứ tự; không dấu, có dấu v iết theo
k iểu đ iện báo và có dấu th ông thường. Do tiến g V iệt khá
phức tạp n ên việc tín h tầ n sô bộ đôi móc xích của ch ú n g sẽ
được thực h iện trong m ột tà i liệu tham khảo riêng. T ại đó ta
ch ỉ lập bản g k ết quả tín h tầ n sô' bộ đôi móc xích cho tiếng
V iệt có dấu. Các bản g khác sẽ được su y ra từ bảng đó (Xem
phụ lục 1).
V iệc th ốn g kê các tầ n s ố của tiến g V iệt không dấu và có
dấu đă được ghi lạ i ồ b ản g 1.1 và bảng 1.2 .

Bảng 1.1: Bảng tần sô'đơn tiếng Việt không dấu
(Tính trên khoảng 1.300.000 ký tự)
TT

Tin sổ

Tầnsuát

A

123887


0.0953

B

13925

0.0107

c

67432

0.0519

D

38427

0.0296

E

47162

0.0363

F

1324


0.0010

G

52189

0.0401

H

87047

0.0670

1

77204

0.0594

J

246

0.0002

K

11426


0.0088

L

15987

0.0123

M

22670

0.0174

Ghi chú


13

Chương 1: Khái niệm về mã thám
N

124204

0.0955

0

86968


0.0669

p

19537

0.0150

Q

7681

0.0059

R

18585

0.0143

s

14065

0.0108

T

74674


0.0574

u

74220

0.0571

V

23011

0.0177

w

476

0.0004

X

3336

0.0026

Y

16766


0.0129

2

152

0.0001

294214

0.2263

space

Có th ể th ấ y độ dài tru n g bình cùa từ tiến g v iệt không
dấu là 4 ,4 1 8 5 (kể cả giãn cách)

Bảng 1.2: Bảng tẩn sô'đơn tiếng Việt có dấu kiểu telex
(Tính trên khoảng 1.300.000 ký tự)
Tin số

TỈn suất

TT
A

119205

0.0917


B
c

1151
5886

0.0009
0.0045

D

38427

0.0296

E
F

48425
49139

0.0372
0.0378

Ghi chú


14


Nhập môn Phân tích thông Un có bào mật
52189

0.0401

87047

0.0670

77204

0.0594

246

0.0002

11426

0.0088

15987

0.0123

M

22670

0.0174


N

124204

0.0956

115059

0.0885

19537

0.0150

7681

0.0059

49870

0.0382

71025

0.0546

70674

0.0544


w

?4?2Ọ

0,0571

V

23011

0.0177

w

61255

0.0471

17071

0.0131

16767

0.0129

152

0.0001


H

K

T ổng sô' ký tự k h oản g 1.300.000 không kể dấu giãn cách

1.3.2. Sự trừng lặp
T rùng lặp là m ột qu y lu ậ t của bất cứ ngôn ngữ tự nhiên
nào. Đó là đặc trư ng th ứ 2 của ngôn ngữ được th ể hiện trên
các văn bản thông báo (sa u đây gọi là bản rõ). N goài quy luật
tầ n sô' th ì quy lu ậ t trù n g lặp rất cần th iết và có th ể nói chúng
không th ể th iếu đôl với công tác thám mă truyền thống.


Chương ì : Khái niệm về mă thảm

15

Ví dụ: T rùng lặp đoạn (trùng lặp bộ 10)......................
c u a n h a n d a n ................ cu a n h a n d a n .....................

1.3.3. Vân phong (Quy luật hành vãn trong văn bản)
T rong thự c tế, các loại văn bản khác n h au đều có văn
p h on g k h ông giôn g n h au do th ói quen của từ n g ngưòỉ soạn
th ả o ra văn b ản đó. Đ ây cũng là quy lu ật đáng lưu ý trong việc
th ám mă. Các dạng v ă n phong ở đây, đáng lưu ý n h ất gồm:

a. Dạng đầu văn bản (gọi là quy luật đầu điện)


Ví dụ: C ông đ iện số...., báo cáo số..., phúc đáp Công văn
s ô ' k í n h gửi ông.... cán cứ Công văn số...

b. Dạng thân văn bản (quy luật thân điện)
+ V ăn b ản th ư òn g có ch ia theo từ n g mục hoặc không
c h ia th eo muc.
+ N ội d u n g v ă n bản có khác n h au tù y th eo từ n g loại nội
d u n g như: ngoại giao, tìn h báo, quân sự, k in h tế, ch ín h trị,...

c. Dạng cuứ vãn băat (quy iuật OIỔI điện)
V iệc k ế t th ú c m ột văn bản thưòng cũ n g có n h ũ n g quy
luật: Các văn b ản kh ác n h au ỏ m ỗi ngưòỉ soạn th ảo văn bản
k h ác n h au s ẽ có qu y lu ậ t khác nhau.

Ví dụ: K ết th ú c m ột đoạn văn bản th ư òng có chữ stop,
stopend; câu chào: S alam và sau cù n g là tên , chức vụ, cấp
bậc củ a ngưòi gử i th ôn g báo... Đ ây cũ n g ỉà nh ữ ng th ông tin
có k h i rất q u an trọn g giúp nh à m ã th ám th à n h công trong
n h iệm vụ của m ình.


16__________________ Nhập môn Phân tích thông tin có báo mật
1.3.4. Quy iuật tình huốiig
N h ư đã được trìn h bày ỏ phần trước, th ám mâ là tìm m ọi
biện pháp có th ể đ ể khôi phục lạ i bản rõ và/hoặc khoá mã từ
m ột s ố b ản m ã cho trưóc. Đ iều này cho th ấ y thám mã là m ột
loại công việc cực k ỳ khó k h ăn và phức tạp, nó vừa m ang
tín h khoa học lại vừ a m an g tín h ngh ệ th u ậ t. Rõ ràng rằng
khoa học về m ật m ã cà n g phát triển th ì k ỹ th u ậ t thám m ã
càn g gặp n h iều khó khăn.

Đ ể chốhg lạ i v iệc th ám mã của đôi phương, các nhà sả n
x u ấ t m ật m ã p h ải th iế t k ế các th u ậ t toán m ã hoá và các ỉoại
khoá m ã sao cho các th ôn g tin v ề khoá m ã v à bản rõ không lộ
rõ trên bản m ã. T uy n h iên do đặc điểm củ a m ật mã và việc
ph ân cấp sử dụng, n ên m ật mã trên thực t ế luôn chứa đựng
n h ũ n g in â ú th ú ẫ h h ộ i tạ i inà các h h à lủã th âm vẫn có th ể
dựa vào đó k h a i thác, khám phá. Đó ỉà:
a.

Trình độ về mật mã ở các nưâc khác nhau là khác

nhau. H iện nay, bên cạnh nhữ ng nước có côn g nghệ bảo m ật
(mẬt m ã) rấ t h iện đ ại, vẫn còn không ít nưổc ỉạỉ sử dụng m ật


ồ mức độ k h ông cao ỉắm th ậm ch í có nưóc còn dùng m ật

m ã tru yền th ôn g tư ơng đôl đơn giản. Và n g a y trong cùng m ột
nước, các ỉực lượng, n gàn h khác n h au lạ i d ù ng các hệ m ã
khác nhau. V í dụ m ậ t m ă dùng trong quân sự khác m ật mã
dừng trong ngoại giao, m ật m ã dừng trong tìn h báo khác m ật
m ã d ù n g trong n g â n h àn g, tà i chính...

b. Thông thường tỉiì các nhà lập mã và những người sử
dụng mật mă khắc nhau. T rình độ của các n h à lập m ã th i rất


Chương 1: Khái niệm về mã thám_________________________ 17
cao. như ng trìn h độ của nhữ ng ngưòi sử d ụ n g lạ i không
tư ơ n g xứ ng và hđn th ế nữa nhữ ng người sử d ụ ng thưòng có

x u hư ớng m uốh đơn g iả n hoá công việc cù a m inh, và chính vì
v ậ y họ đã vi phạm các qui tắc đảm bảo a n toàn cho m ật m ã
cử a m ình.

c. Khoá mă không phải luôn được bảo mật cẩn thận theo
quy định, do đó m ột sơ hỏ nhỏ cũng đủ tạo khe hỏ cho các nhà
m ẵ thám ỉấy cắp được m à m ật mă v iên không h ề biết, khoá
đó v ẫ n được sử d ụ ng và do vậy các nhà m ã th ám khi nh ận
đưọc các bản m ã chỉ việc từ khoá đó m à dịch binh thưdng.

d. Độ dư ngôn ngữ cũ n g là m ột quy lu ậ t rất quan trọng
củ a ngôn ngữ tự nhiên. Độ dư ngôn ngữ tồn tạ i trong chính
b ả n mã của n h iều lu ậ t mã khác nhau, đặc b iệt là trong hệ
m ậ t mã truyền thống.
e.

Tiêu chuẩn bản rõ: ch ín h là quy lu ậ t bản rõ được th ể

h iệ n qua quy lu ậ t tầ n số, quy lu ậ t trù n g lặp... Đ ây là một
y ế u tố trọng yếu giúp cho nh à mă thám th à n h công không
n h ữ n g đôi vói m ậ t m ã tru y ền th ống m à cả đôi với m ật m â
k h a á đôi xứng nói ch u n g (như mã D E S, IDEÂ, Â E S...)

1.3.5. Khái niệm tiêu chuẩn bản rõ
T iêu ch u ẩn b ản rõ ỉà m ột th à n h p h ần không th ể th iếu
đốỉ với công tác thám m ã, đặc biệt ỉà th ám m ã h iện đại. V ậy
tiê u chuẩn bản rõ là gì? Ta biết rằng các ngôn ngữ tự n h iên
đ ề u có quy lu ậ t ch u n g n h ấ t đó ỉà quy ỉu ậ t tầ n sô' và qui ỉu ậ t
tr ù n g lặp. H ai quy lu ậ t n à y đã bị biến m ất đôi với bản mã.



18

Nhập môn Phân tích thông tin có bảo mật

P hư ơng pháp m ã h o á cà n g phức tạp thì hai quy ỉu ật n ày
h oàn toàn bị b iến m ất. N h ư v ậ y bản rõ và bản mã về cđ bản
k h ác n h a u v ề 2 quy lu ậ t này. G iả sử n h à m ã thám n h ận được
m ột (hoặc m ột số) b ả n m ã và b ằ n g cách nào đó, họ đã b iết
được th u ậ t toán m ã hoá (và dịch).
T u y k h ông b iết được m ã/địch cụ th ể nhưng nhà m ã th ám
có th ể b iết được tấ t cả k h ả n ă n g có th ể của khoá. Từ đó,
ngư òi ta th ử cho đầu vào là bản m ã và "khoá” (dự đoán) lấy
tron g k h ôn g g ia n kh oá rồi dịch thử . K ết quả đầu ra sẽ là m ột
d ã y nào đó (có th ể đọc được có n g h ĩa cũng có th ể không có
n g h ĩa g ì cả) m à ta v ẫ n gọi là “bản rõ”. N hư ng bản rõ này nói
ch u n g ỉà chư a th ể h iệ n được qu y lu ậ t tần s ố và trùng ỉặp. N ó
c h ỉ th ể h iệ n được q u y lu ậ t tầ n s ố v à trùng lặp nếu khoá m à
ta đưa. vào là đ ú n g h oặc có sa i cũ n g chỉ. sa i muột vài ký tự m à
th ôi. N h ư n g làm cách nào để b iết được quy lu ậ t tần s ố và
tr ù n g lặ p được th ể h iện trên ‘l)ả n rõ” mà ta vừa tạo ra (từ
k h oá v à bản m ã b an đầu (gọi là b ả n mã gốc))? Do

số ỉiệu

k h oá đưa vào ỉà rấ t ỉốn n ên dừ n g m ắ t thư òng để quan sá t
x em “bản rõ” nào th ể h iện được qu y lu ậ t tầ n s ố và trùn g lặp
ỉà k h ô i^ k h ả th i v ề m ặ t th òi g ia n tìm kiếm .
T iêu ch u ẩ n bản FÕ giúp ta tự động xác đỉnh “bẳn rõ” nào
th ể h iệ n qu y lu ậ t tầ n 8Ố v à trù n g lặp, “bản rõ” nào không.

N h ò tiê u ch u ẩ n b ản rõ n h à m ã th á m có th ể phân không g ia n
k h oá th à n h h a i nhóm , m ột nhóm cho phép tạo ra được “bản
rõ” có q u y ỉuẠt tầ n 8Ô' v à trù n g ỉặp, m ột nhóm gồm các khoá
còn ỉại. T rong thự c tế, nhóm gổm các khoá cho phép tạo ra


Chương ỉ: Khái niệm về mã thảm

19

“b ản rõ” có quy lu ậ t (ta gọi là b ản rõ có n gh ĩa) là rấ t ít so với
nhóm còn lại. Từ đó c h ú n g ta tiế n h à n h k iểm tra tiếp và k ết
hđp với m ắt thưòng, ch ú n g ta g iả i ra đưỢc b ản rõ ban đầu
(bản rõ gốc) cần tìm và khoá m à ta m ong m uốh.
Có n h iều phương pháp kh ác n h a u đ ể tạo ra các “tiê u
ch u ẩn bản rõ” khác n h a u . D o k h ôn g g ia n kh oá th ư ò n g rất
lớn, n ên cần có m ột tiê u ch u ẩ n b ản rõ, có tốc độ tín h toán
càn g n h an h và càn g ch ín h xác cà n g tốt, tron g đó tốc độ tín h
toán được ưu tiên sô' 1.



Chương 2

MỘT

stfKIẾN THdG Bổ TRỢ

2.1. MỞ ĐẦU
Cần tối k iến th ứ c bổ trd bdi nó là m ộ t p h ần rất q u an

trọn g, là công cụ đắc lực tron g việc th a m g ia vào quá trìn h
th á m mã. T ất n h iên ỏ đây còn rft't n h iề u k iến th ú c q u an
trọ n g khác có liê n q u an n h ư lý th u y ế t sô'; lý th u y ế t n h ó m vành-trường; lý th u y ế t xác su ấ t v à th ô n g k ê to á n học; lý
th u y ế t nhận dạng; lý th u y ế t a u to m a t.., so n g tro n g phạm v i
cu ốh sách có tín h c h ấ t nhập m ôn, rất kh ó cho việc đưa đ ầy
đù các kiến thức to á n học vào. T rong ph ạm vi chư đng n à y các
iý th u y ế t cờ bản được trìn h b ày rấ t tóm ỉược ch ủ y ếu đ ể phục
vụ y ê u cầu p h ân tích m ậ t m ã (m ă th á m -c r 3rptanalysis)
tru y ền thống.

2.2. MỘT só KHÁI NIỆM
2.2.1. Độ bất dịnh (Entropy)

Các định nghĩa
Định nghĩa 1: G iả sử X ỉà m ột đ ại ỉư ợng n g ẫ u n h iê n lứ iận
các g iá trị trên m ột tậ p hữ u h ạ n
tư ơ ng ứng: p(X= Xị) = Pj; i = l , n .

{ X |, X s ,^ ,

với các xác s u ấ t


Nhập môn Phân tích thông tin có hào mật

22

ở đ â y 0 < Pị < 1 v à p , + P2 +... + p„ = ị p i = 1
i=l


Khi đó độ bất định của đại ỉượng n gẫu nh iên X được định
ngh ĩa là; H(X) = -

logPi
i=l

ở đây ta thống n h ấ t lấy logarít theo cđ s ố 2, trong đó ch ú n g
ta q u i ước Pị lo g Pj = 0 n ế u Pi = 0

Định n^ĩa 2: Cho trước h ai đại lượng ngẫu nh iên X và Y
n h ận giá trị lầ n lượt trong tập hữu hạn là
xj =

yn)

K hi đó độ b ất định đồng th òi của hai biến ngẫu

n h iên X và Y được định nghĩa là:
H (X ,Y )= -Ị;p ịl0 g p ij

.................................... ' j ......................................
Trong đó p , = p (X = Xi, Y = yj)

Định nghĩa 3: Đ ộ bất định (Entropy) có điều k iện của đại
lượng ngẫu n h iên X vổi điều k iện Y = y là;

H ( x / Y = y ) = - J ] P ( X = x / Y = y ) l o g P ( X = x / Y = y)
xeX

Dịnh tiỊ^ĩa 4: E ntropy của đại ỉượng ngẫu n h iên X cho

trưốc Y được đ ịn h n gh ĩa ỉà;
H ( X / Y ) = - 2 ; P ( Y = y ) H ( X / Y = y)
y=Y

L iên quan đ ến Entropy người ta còn đưa ra k h ái niệm
th ôn g tin tưdng hỗ được định n gh ĩa nh ư sau:


Chương 2: Một số kiến thức bổ trợ

23

Định nghĩa 5: T h ôn g tin tưdng hỗ cùa X và Y được định
n gh ĩa bởi: I(X, Y) = H (X) - H (X/Y)
Và ngoài ra nếu z cũng là đại ỉượng n gẫu n h iên ròi rạc
hữu h ạn thì: I(X, Y, Z) = H(5ƠZ) - H (X/Y, Z)

Định nghĩa 6: T h ôn g tin tưdng hỗ có điều k iện củ a cặp
đại lượng n gẫu n h iên X, Y cho trưốc z là:

Iz(X, Y) = H(X/Z) - H (X/Y, Z)
2.2.2. Các tính chất của Entropy

Tính chấi 1: G iả sử X là biến ngẫu n h iên n h ận n g ỉá trị
kh ác n h au k h i đó:
i. 0 < H (x) < logn, dấu “ = ” đạt được k h i và chỉ khi:
Pi = (X = Xj) = 1/n vớ i m ọi i = 1, 2,..., n

ii. H(x) = 0


o 3 i : Pio =p(x = x jo ) = l( v à d o đ ó p i = 0 Vi?tio).

Tính chất 2:
i. H(X/Y) > 0 và H(X/X) = 0
ii. H(X,Y) = H(X) + H(Y/X) = H(Y) + H(X/Y)
iii. H(X/Y) < H(X)
và dấu

’ đ ạ t được ch ỉ khi X, Y là 2 đại ỉượng ngẫu n h iên

độc iập.

Tính chất 3:
i. I(X, Y) > 0


24

Nhập môn Phân tich thông tin có bào mật
ii. I(X ,Y ) = 0 o

X ,Y độclập

iii. I(X, Y) = I (Y; X)

Tính chất 4:
i. I(X, Y, Z) = I (X. Y) -t- (X, Z)
ii. Iz (X. Y) =

(Y. X)


S au đây ch ú n g ta ỉấ y m ột vài ví dụ đơn giản:

Ví dụ 1: Giả sử ta có bảng chữ cái gồm 3 chữ cái là A, B,

c

với xác su ấ t tướng ứ ng P(A) = 9/27, P(B) = 16/27 và P(C) = 2/27.
B ả n g xác su ấ t Pi(j) có điều kiện của j cho trưỏc th eo i được
cho sa u đây:
PiG)
A

A

B

c

0

4/5

c

1/2

2/5

1/5

0
1/10

M ột th ôn g báo rõ được biểu diễn dưdi d ạn g bảng chữ cái
trên ỉà:
ABBABABABABABABBBABĐBBBABABABABAĐBĐA
CACABBABBBBABBABACBBBABA
T a có E ntropy có đ iểu k iện H a(.)» H b(.), Hc(.)> lần lượt là:
H ^ ( X ) = - | l o g | - ỉ l o g i =1,9222 =H ,

H B ( X ) = - | l o g i - i l o g i = l o g 2 = l = Hj

H c ( X ) = - ^ lo g ị- T lo g ^

2

5

— log— =1,361 U H ,
10

^10

^


Chương 2: Một sổ kiển thức bổ trợ

25


B ây giờ ta đặt:
H

=X

vớ i Pi

= P(A), P2 = p(B),

P3

= p(C)

i=l

T a có:
H = — x l,9 22 2+ — x l + — xl,36Il
27
27
27
= — (9x1,9222 + 1 6 + 2 x 1 , 3 6 1 1)=1,3341
Rõ ràng là:
I . i í \ r \

_

^
27

I


^

1

H ( X ) = - ^ lo g 2 :^ - ^ lo g 2 ^ - £ r lo g 2

" 27

27

" 27

27

162,2

27

=1,2539
Ví dụ 2:
à

H ãy xét ỉạỉ bảng tầ n s ố đơn tiếng V iệt không dấu thanh.
26

Ta có: H (X )= -]^ P j log2 Pị (Không kể tần su ấ t cùa ký tự giãn
i=l


cách) = -0,0953 loga 0 ,0 9 5 3 - 0,0107 loga 0,0107

O.OOOlloga

0.0001 = 3 4290 < ĩog226 = 4,701
N ếu có tín h cả k ý tự g iã n cách ta có:
H(X) = 3,9141 < log227 = 4,755
B ây giò để áp d ụ n g ỉý th u y ết th ôn g tin vào công tác phân
tích m ật m ã, ta x é t m ột v í dụ đđn g iả n sau đây. Ta x ét
E ntropy có đ iều k iệ n tro n g định ngh ĩa 3. Trưỏc h ế t ta x ét
b ản g tầ n sô" bộ đôi móc xích T iến g A nh (bảng phụ lục PL 1.5).


Nhập môn Phần tích thông tin có bảo mật

26
26

Ta có: H ( X ) = - ^ p Ị x j / Y = a Ị l o g P ( x j / Y = a]
i=i

Trong đó: X j € | a , z , i = l , 2 6
Do k h ông b iết được các xác su ấ t nên ta th ay các tham sô
đo bằn g ưốc lượng (không chệch) của chúng, để đơn giản ta
ký h iệu p( xj / Y = a ) = Pax • H ay ngắn gọn hơn là Paj, ta có:
^a.i= —
^=—
79Ộ « 0 , 0 0 5 0 ;a,2

* 0 , 0251


Tương tự ta có:
p, 3 = 0 ,0 3 5 2

Pa.l5 =0,025

p, 4 = 0,0653

p.,,6 = 0,0176

p, 5 = 0,0025

^a.l7=®

p, 6 = 0,0138

Pa.l8 =0,1043

p, 7 = 0 , 0 3 5 2

=0,0955

p,,8 = 0 ,0 0 5 0

Pa.20 =0,1595

P3 , = 0 ,0 4 0 2

p, 21 = 0,0088


P j , 0 = 0 ,0 0 5 0

p.

P3.,, = 0,0075

p,.23 =0,0100

Pa.l2 =0.0779

p. 24 = 0,0013

p, ,3 = 0,0289

p, 25 =0,0013

p.,,4 = 0,2098

p. 26 =0,0013

2 2

= 0,0314


×