Ngày nay, với sự phát triển mạnh mẽ của công nghệ thông tin việc ứng dụng các công nghệ mạng máy tính trở nên vô cùng phổ cập và cần thiết. Công nghệ mạng máy tính đã mang lại những lợi ích to
Trang 1MCL C
1 AN TOAN DU LIEU TRÊN MẠNG MÁY TÍNH 3
2 CÁC HỆ MÃ HOÁ CỎ ĐIÊN Error! Bookmark not defined
2.1 HỆ MÃ HOÁ THAY THẺ (SUBSTITUTION CIPHER) Error! Bookmark not defined
2.1.1 HE MA HOÁ CAESAR Error! Bookmark not defined 2.1.2 HỆ MÃ HOÁ VIGENERE Error! Bookmark not defined
2.1.3 HỆ MÃ HOÁ HILL Error! Bookmark not defined 2.2 HE MA HOA DOI CHO (TRANSPOSITION CIPHER)Error! Bookmark not defined
3 CAC VAN DE VE MA HOA CHO MANG MAY TINHError! Bookmark not defined
3.1 CÁC THUẬT NGỮ -ccsccsec: Error! Bookmark not defined
3.2 ĐỊNH NGHĨA HỆ MẬT MÃ Error! Bookmark not defined
3.3 NHỮNG YEU CAU DOI VOI HE MAT MAError! Bookmark not defined
3.4 CÁC PHƯƠNG PHAP MA HOA Error! Bookmark not defined
3.4.1.MA HOA DOI XUNG KHOA Bi MAT Error! Bookmark not
defined.
Trang 23.4.2 MA HOA PHI DOI XUNG KHOA CONG KHAIError! Bookmark not defined
3.5 CÁC CÁCH PHÂN TÍCH MÄ Error! Bookmark not defined
4 MOT SO THUAT TOAN MA HOA CO BANError! Bookmark not defined
4.1 CHUAN MA HOA DU LIEU DEB Error! Bookmark not defined
4.1.1.MO TA THUẬT TOÁN Error! Bookmark not defined 4.1.2 HOÁN VI KHOI DAU (THE INITIAL PERMUTATION) Error!
Bookmark not defined
4.1.3 KHOA CHUYEN DOI (THE KEY TRANSFORMATION) Error!
Bookmark not defined
4.1.4 HOAN VI MG RONG (EXPANSION PERMUTATION) Error! Bookmark not defined
4.1.5 HOP THAY THE S (S-BOX SUBSTITUTION) Error! Bookmark not defined
4.1.6 HOP HOAN VI P (THE P-BOX PERMUTATION)Error! Bookmark not defined
4.1.7 HOÁN VỊ CUỒI CÙNG Error! Bookmark not defined
4.1.8 GIẢI MÃ DES se tszszc: Error! Bookmark not defined
4.1.9 PHAN CUNG VA PHAN MEM THUC HIEN DBB Error!
Bookmark not defined.
Trang 34.2 THUAT TOAN MA HOA RSA (PUBLIC-KEY ALGORITHM) Error! Bookmark not defined
4.2.1 KHAI NIEM HE MAT MA RSA Error! Bookmark not defined
4.2.2 ĐỘ AN TOÀN CỦA HỆ RSA Error! Bookmark not defined
4.2.3 MOT SO TINH CHAT CUA HE RSAError! Bookmark not defined
4.3 THUẬT TOAN MA HOA BLOWFISH Error! Bookmark not defined
4.3.1 KHOÁ PHỤ -¿ -< c5: Error! Bookmark not defined 4.3.2 MÃ HOÁ DỮ LIỆU Error! Bookmark not defined
4.3.3 TINH TOAN CAC KHOA PHU Error! Bookmark not defined
1 AN TOAN DU LIEU TREN MANG MAY TINH
Ngày nay, với sự phát triển mạnh mẽ của công nghệ thông tin việc ứng dụng các công nghệ mạng máy tính trở nên vô cing phố cập và cần thiết Công nghệ mạng máy tính đã mang lại những lợi ích to lớn
Sự xuất hiện mạng Internet cho phép mọi người có thể truy cập, chia sẽ và khai thác thông tin một cách dễ dàng và hiệu quả Các công nghệ E-mail cho phép mọi người có thê gửi thư cho người khác cũng như nhận thư ngay trên máy tính của mình Gần đây có công nghệ E-business cho phép thực hiện các hoạt động
thương mại trên mạng máy tính Việc ứng dụng các mạng cục bộ trong các tổ
chức, công ty hay trong một quốc gia là rất phong phú Các hệ thống chuyển tiền của các ngân hàng hàng ngày có thê chuyên hàng tỷ đôla qua hệ thống của mình Các thông tin về kinh tế, chính trị, khoa học xã hội được trao đổi rông rãi
Trang 4Tuy nhiên lại nảy sinh vẫn đề về an toàn thông tin Đó cùng là một quá trình tiến triển hợp logic: khi những vui thích ban đầu về một siêu xa lộ thông tin, bạn nhất định nhận thấy rằng không chỉ cho phép bạn truy nhập vào nhiều nơi trên thế giới, Internet còn cho phép nhiều người không mời mà tự ý ghé thăm máy tính của bạn
Thực vậy, Internet có những kỹ thuật tuyệt vời cho phép mọi người truy nhập, khai thác, chia sẻ thông tin Những nó cũng là nguy cơ chính dẫn đến thông tin cua ban bi hư hỏng hoặc phả huỷ hoàn toàn
Có những thông tin vô cùng quan trọng mà việc bị mất hay bị làm sai lệch
có thê ảnh hưởng đến các tô chức, các công ty hay cả một quốc gia Các thông tin
về an ninh quốc gia, bí mật kinh doanh hay các thông tin tài chính là mục tiêu của các tổ chức tình báo nước ngoài về chính trị hay công nghiệp hoặc kẻ cắp nói chung Bọn chúng có thể làm mọi việc có thể để có được những thông tin quý giá
này Thử tưởng tượng nếu có kẻ xâm nhập được vào hệ thống chuyển tiền của các
ngân hàng thì ngân hàng đó sẽ chịu những thiệt hại to lớn như mất tiền có thể dẫn tới bị phá sản Chưa kể nếu hệ thông thông tin an ninh quốc gia bị đe doạ thì hậu quả không thê lường trước được
Theo số liệu của CERT(Computer Emegency Response Team - “Đội cấp cứu máy tính”), số lượng các vụ tấn công trên Internet được thông báo cho tổ chức này là ít hơn 200 vào năm 1989, khoảng 400 vào năm 1991, 1400 vào năm
1993, và 2241 vào năm 1994 Những vụ tấn công này nhằm vào tất cả các máy tính có mặt trên Internet, các máy tính của tất cả các công ty lớn như AT&T, IBM, các trường đại học, các cơ quan nhà nước, các tô chức quân sự, nhà băng
Một số vụ tấn công có quy mô không lồ (có tới 100.000 máy tính bị tấn công) Hơn nữa, những con số này chỉ là phần nổi của tảng băng Một phân rất lớn các
vụ tần công không được thông báo, vì nhiều lý đo, trong đó có thể kế đến nỗi lo bị
Trang 5mat uy tín, hoặc đơn giản những người quản trị hệ thống không hề hay biết những
cuộc tân công nhăm vào hệ thông của họ
Không chỉ số lượng các cuộc tấn công tăng lên nhanh chóng, mà các phương pháp tấn công cũng liên tục được hoàn thiện Điều đó một phần do các nhân viên quản trị hệ thống được kết nối với Internet ngày càng đề cao cảnh giác Cũng theo CERT, những cuộc tấn công thời kỳ 1988-1989 chủ yếu đoán tên người sử dụng-mật khâu (UserID-password) hoặc sử dụng một số lỗi của các chương trình và hệ điều hành (security hole) làm vô hiệu hệ thống bảo vệ, tuy nhiên các cuộc tấn công vào thời gian gần đây bao gồm cả các thao tác như giả mạo địa chỉ IP, theo dõi thông tin truyền qua mạng, chiếm các phiên làm việc từ
xa (telnet hoặc rlogin)
Đề vừa bảo đảm tính bảo mật của thông tin lại không làm giảm sự phát triển của việc trao đối thông tin quảng bá trên toàn cầu thì một giải pháp tốt nhất là
mã hoá thông tin Có thể hiểu sơ lược mã hoá thông tin là che đi thông tin của mình làm cho kẻ tấn công nếu chặn được thông báo trên đường truyền thì cũng không thê đọc được và phải có một giao thức giữa người gửi và người nhận để có thê trao đôi thông tin, đó là các cơ chê mã và giải mã thong tin
Ngày nay thì việc mã hoá đã trở nên phô cập Các công ty phân mềm lớn trên thê giới đêu có nghiên cứu và xây dựng các công cụ, thuật toán mã hoá đê áp dụng cho thực tê Mỗi quốc gia hay tô chức đều có những cơ chế mã hoá riêng đề
bảo vệ hệ thông thông tin của mình
Một sô vân đề an toàn đôi với nhiều mạng hiện nay:
e Một người dùng chuyển một thông báo điện tử cho một người sử dụng khác
Một bên thứ ba trên cùng mạng LAN này sử dụng một thiết bị nghe trộm gói để
lây thông báo và đọc các thông tin trong đó
Trang 6e Cũng trong tình huống trên bên thứ ba chặn thông báo, thay đổi các thành phần của nó và sau đó lại gửi cho người nhận Người nhận không hè nghi ngờ gì
trừ khi nhận ra thông báo đó là vô lý, và có thể thực hiện vài hành động dựa trên
các thành phần sai này đem lại lợi ích cho bên thứ ba
e Người dùng log vào một server mà không sử dụng mật khẩu được mã hoá Một người khác đang nge trộm trên đường truyền và bắt được mật khẩu logon của người dùng, sau đó có thể truy nhập thông tin trên server như người sử dụng
e _ Một người quản trị hệ thống không hiểu về khía cạnh an toàn và yêu cầu của
hệ thống và vô tình cho phép người dùng khác truy nhập vào thư mục chứa các thông tin hệ thống Người dùng phát hiện ra họ có thể có được các thông tin hệ thống và có thể dùng nó phục vụ cho loựi ích của mình
Trang 72 CAC HE MA HOA CO DIEN
2.1 HE M4 HOA THAY THE (SUBSTITUTION CIPHER)
Hệ mã hoá thay thế là hệ mã hoá trong đó mỗi ký tự của bản rõ được thay thế bằng ký tự khác trong bản mã (có thể là một chữ cái, một số hoặc
một ký hiệu)
Có 4 kỹ thuật thay thế sau đây:
e Thay thé don (A simple substitution cipher): là hệ trong đó một ký tự của bản rõ được thay bằng một ký tự tương ứng trong bản mã Một ánh xạ 1-1 từ bản rõ tới bản mã được sử dụng dé mã hoá toàn bộ thông điệp
e Thay thé dong âm (A homophonic substitution cipher): giéng nhu hé
thống mã hoá thay thế đơn, ngoại trừ một ký tự của bản rõ có thê được ánh
xạ tới một trong số một vài ký tự của bản mã: sơ đồ ánh xạ I-n (one-to-
many) Ví dụ, “A” có thể tương ứng với 5, 13, 25, hoặc 56, “B” có thể tương
ứng với 7, 19, 31, hoặc 42, v.v
e_ Thay thế đa mẫu tự (A polyalphbetic substitution cipher): được tạo nên từ nhiều thuật toán mã hoá thay thế đơn Ánh xạ 1-1 như trong trường hợp thay
thế đơn, nhưng có thể thay đổi trong phạm vi một thông điệp Ví dụ, có thể
có năm thuật toán mã hoá đơn khác nhau được sử dụng; đặc biệt thuật toán
mã hoá đơn được sử dụng thay đôi theo vị trí của mỗi ký tự trong bản rõ
e Thay thé da so do (A polygram substitution cipher): là thuật toán trong
đó các khối ký tự được mã hoá theo nhóm Đây là thuật toán tổng quát nhất,
Trang 8cho phép thay thế các nhóm ký tự của văn bản gốc Ví dụ, “ABA” có thể tương ứng với “RTQ”, “ABB” có thể tương ứng với “SLL”, v.v
2.1.1 HỆ MÃ HOÁ CAESAR
Hệ mã hoá CAESAR là một hệ mã hoá thay thế đơn làm việc trên bảng chữ cái tiếng Anh 26 ký tự (A, B, , Z)
Trong hệ CAESAR và các hệ tương tự còn lại ta sử dụng các số tự
nhiên thay cho các ký tự - đánh số các ký tự trong bảng chữ cái theo thứ tự:
A là0, B là 1, và Z là 25
Các phép toán số học thực hiện theo modul 26 Có nghĩa là 26 đồng
nhất với 0, 27 đồng nhất với 1, 28 đồng nhất với 2, Ví du:
2x17 + 5x9=79=]I + 3x26 = ]
Hệ CAESAR sử dụng thuật toán mã hoá trong đó mỗi ký tự được thay
thế bởi một ký tự khác được xác định bằng cách dịch ký tự cần mã hoá sang
phải k bước theo modul 26:
E,(a) = (a +k) MOD 26
với œ là một ký tự, 0 < k < 26, MOD là phép chia lẫy phần dư.
Trang 9Thuật toán giải mã tương ứng D, là lùi lại k bước trong bảng chữ cái
theo modul 26:
D,(a) = (a - k) MOD 26
Không gian khoá của hệ CEACAR bao gồm 26 số 0, 1, 2, 25
Ví dụ: với k=3, A được thay bằng D, B được thay bằng E, ., W được
thay bằng Z„ , X được thay bằng A, Y được thay bằng B, và Z được thay
Trong trường hợp này bản rd “TRY AGIAN” duoc ma hoa thanh
“WUB DJDLQ’”, ban rd “HELP ME” được mã hoá thành “KHOSPH” (Chú
ý: các ký tự trống trong bản mã được bỏ đi để đảm bảo tính an toàn)
Thêm một vài ví dụ minh hoạ:
Eaz(TBM) = HAL, E¿(MUPID) = SAVOI,
E,(HELP) = KHOS, E;(HOME) = IPNE,
Trang 10Es(SAVOJ) = Exo(SAVOJ) = MUPID
Hệ CAESAR là hệ mã hoá cũ và không an toàn vì không gian khoá
của nó rất nhỏ, đo đó 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.1.2 HỆ MÃ HOÁ VIGENERE
Hệ mã hoá này được đặt theo tên của một nhà mật mã người Pháp Blaise de Vigenére (1523-1596)
VIGENERE ciing giéng nhu CAESAR, nhung ở đây khoá được thay
đôi theo từng bước Hình vuông VIGENERE được sử dụng để mã hoá va giải mã
ABCDEFGHIJKLMNOPQRS TUVWXYZ
BCDEFGHIJKLMNOPQRS TUVWXYZA
CDEFGHIJKLMNOPQRS TUVWXYZAB
Trang 11FGHIJkK
GHIJKL
LMNOPQRSTUV WX MNOPQRSTUVWXY
Trang 12Mỗi cột của hình vuông VIGENERE có thể xem như là một hệ
CAESAR, với các khoá 0, 1, 2, ., 25 Đề mã hoá thì bản rõ được đọc từ các hàng và khoá được đọc từ các cột
Trang 13Ví dụ để mã hóa bản rõ PURPLE với từ khoá CRYPTO, đầu tiên ta
tìm điểm giao nhau của hàng P và cột C, ta được R Cứ như vậy ta được bản
mã RLPEES Ta sẽ thu được bản mã tương tự nếu ta thay đổi vai trò của
hàng và cột trong khi mã hoá Đề giải mã bản mã RLPEES vừa mã hoá, ta
nhìn vào hàng nào có chứa R trong cột C, theo cách này ta sẽ tìm được P Và
như vậy ta tìm được bản rõ là PURPLE
Từ khoá thường được áp dụng một cách tuần hoàn Nếu bản rõ dài
hơn từ khoá thì từ khoá lại được bắt đầu lại từ đầu Ví dụ, từ khoá CRYPTO
dugc ap dung voi ban ro co 15 ky tu la CRYPTO CRYPTO CRY
Ta thấy rằng trong hệ mã hoá VIGENERE, với khoá có độ dài d thi sẽ
có 26” khoá hợp lệ Vì vậy, chỉ cần với giá trị d nhỏ thì phương pháp thám
mã vét cạn cũng đòi hỏi khá nhiều thời gian
Ta chọn một số nguyên (integer) d > 2 Xét M là ma trận vuông d
chiều Các phần tử của M là các số nguyên từ 0 đến 25 Hơn nữa M phải là
ma trận khả nghịch, tức là tồn tại M' Ví dụ:
M=Í 3Ìvaw+-(ð6 27)
2 5 20 9
Trang 14Đê mã hoá, bộ d chữ cái của bản rõ được mã hoá cùng nhau Trong
các trường hợp sẽ xét dưới đây ta lấy d=2
Quá trình mã hoá được thực hiện theo công thức:
MP=C trong đó P va C được viết thành các vecter cột d chiêu Mỗi bộ d chữ cái của
bản rõ được viết thành vecter P với các thành phân là các sô biểu diễn các ký
tự Và C cũng thể hiện khối d ký tự của bản mã
Còn khi giải mã ta phải dùng ma trận nghịch đảo Mˆ:
Trang 152.2 HE MA HOA POI CHO (TRANSPOSITION CIPHER)
Một hệ mã hoá đôi cho 1a hệ mã hoá trong đó các ký tự của bản rõ vần được giữ nguyên, nhưng thứ tự của chúng được đôi chỗ vòng quanh
Vi dụ một hệ mã hoá đổi chỗ cột đơn giản, bản rõ được viết theo hàng
ngang trên trang giấy với độ dài cô định, và bản mã được đọc theo hàng doc
Hình 2 Mã hoá thay đổi vị trí cột
Phương pháp này có các kỹ thuật sau:
Trang 16e Đảo ngược toản bộ bản rõ: nghĩa là bản rõ được viết theo thứ tự nguoc
lại để tạo ra bản mã Đây là phương pháp mã hoá đơn giản nhất vì vậy không đảm bảo an toàn
Vi du: ban r6 “TRANSPOSITION CIPHER” dugc ma hoa thanh
e Đối chỗ cột: Đầu tiên đỗi chỗ các ký tự trong bản rõ thành dạng hình chữ
nhật theo cột, sau đó các cột được sắp xếp lại và các chữ cái được lay ra theo hang ngang
Trang 17Ví dụ: bản rõ gốc là “NGAY MAI BAT DAU CHIEN DICH XYZ” được viết đưới dạng ma trận 5x5 theo cột như sau:
HZTIM” Lưu ý rằng các ký tự cách được bỏ đi
Hạn chế của phương pháp này là toàn bộ các ma trận ký tự phải được sinh đê mã hoá và giải mã
Trang 18e Hoan vi cac ky tu cua ban ro theo chu ky cô định đ: Nếu hàm f là một
hoán vị của một khối gồm d ký tự thì khoá mã hoá được biêu diễn bởi
K(d,f)
Do vay, bản rõ:
M = mmp mgMg+} Mog
Với mị; là các ký tự , và bản rõ sẽ được mã hoá thành:
Ex(M) = my) Mga) Maye) -Mataa)
Trong d6 mgiMg2) Mga là một hoán vi cua mymp mg
Vi dụ: giả sử d=5 và f hoán vị dãy i=12345 thành f¿=35142
Trang 19Theo bảng trên, ký tự đầu trong khối 5 ký tự được chuyên tới vị trí thứ
3, ký tự thứ hai được chuyên tới vị trí thứ 5, Chẳng hạn từ gốc GROUP
được mã hoá thành OPGUR
Bằng cách đó, bản rõ “I LOVE BEETHOVENS MUSIC” sẽ được
chuyền thành “OEIVLEHBTEESONVSCMIU”
Hé ma ADFGV cua Duc, được sử dụng trong suốt chiến tranh thế giới
lần thứ I, đó là một hệ mã hoá đổi chỗ (có sử dụng thay thế đơn giản) Nó
được coi là một thuật toán mã hoá phức tạp vào thời ấy nhưng nó đã bị phá bởi Georges Painvin, một nhà thám mã người Pháp
Mặc dù có rất nhiều hệ thống mã hoá sử dụng đổi chỗ, nhưng chúng rât rắc rôi bởi vì nó đòi hỏi rât nhiêu bộ nhớ
Trang 203 CAC VAN DE VE MA HOA CHO MANG MAY TINH
3.1 CAC THUAT NGU
1 Hệ mật mã là tập hợp các thuật toán và các thủ tục kết hợp dé che dau
thông tin cũng như làm rõ nó
2 Mật mã học nghiên cứu mật mã bởi các nhà mật mã học, người việt mật
ma va cac nha phan tich ma
3 ÄMã hoá là quá trình chuyển thông tin có thể đọc gọi là bản rõ thành
thông tin không thê đọc gọi là bản mã
4 Giải mã là quá trình chuyển ngược lại thông tin được mã hoá thành bản
kết quả càng an toàn Kích thước của khoá được đo bằng bit Phạm vi các
giá trị có thể có của khoá được gọi là không gian khoá
1 Phân tích mã là quá trình hay nghệ thuật phân tích hệ mật mã hoặc kiểm
tra tính toàn vẹn của nó hoặc phá nó vì những lý do bí mật
8 Một kẻ ấn công là một người (hay hệ thống) thực hiện phân tích mã đê làm hại hệ thống Những kẻ tấn công là những kẻ thọc mũi vào chuyện
Trang 21người khác, các tay hacker, những kẻ nghe trộm hay những các tên đáng
ngờ khác, và họ làm những việc thường gọi là cracking
3.2 ĐỊNH NGHĨA HỆ MẬT MÃ
I Hệ mật mã: là một hệ bao gồm 5 thành phần (P, C, K, E, D) thoả mãn các tính chất sau
P ( Plaintext ) là tập hợp hữu hạn các bản rõ có thể
C ( Ciphertext ) là tập hợp hữu hạn các bản mã có thê
K (Key ) là tập hợp các bản khoá có thể
E( Encrytion ) là tập hợp các qui tắc mã hoá có thẻ
D ( Decrytion ) là tập hợp các qui tắc giải mã có thể
Chúng ta đã biết một thông báo thường được tổ chức dưới dạng bản
rõ Người gửi sẽ làm nhiệm vụ mã hoá bản rõ, kết quả thu được gọi là bản
mã Bản mã này được gửi đi trên một đường truyền tới người nhận sau khi nhận được bản mã người nhận giải mã nó để tìm hiểu nội dung
Dễ dàng thay được công việc trên khi sử dụng định nghĩa hệ mật mã :
Ex( P) = C và Dy(C )=P
3.3 NHUNG YEU CAU ĐÔI VOI HE MAT MA
Cung câp một mức cao về độ tin cậy, tính toàn vẹn, sự không từ chôi
và sự xác thực
Trang 22e Do tin cay: cung cap sự bí mật cho các thông báo và dữ liệu được lưu
bằng việc che dấu thông tin sử dụng các kỹ thuật mã hóa
e Tinh toản vẹn: cung cầp sự bảo đảm với tât cả các bên răng thông bao
còn lại không thay đôi từ khi tạo ra cho đến khi người nhận mở nó
© Tinh khong từ chói: có thê cung cầp một cách xác nhận răng tài liệu đã đên từ ai đó ngay cả khi họ cô găng từ chôi nó
e_ Tính xác thực: cung cấp hai dịch vụ: đầu tiên là nhận dạng nguồn gốc của một thông báo và cung cấp một vài sự bảo đảm rang no la dung sw thuc Thứ hai là kiểm tra đặc tính của người đang logon một hệ thống và sau
đó tiếp tục kiểm tra đặc tính của họ trong trường hợp ai đó cô gắng đột
nhiên kết nối và giả dạng là người sử dụng
3.4 CÁC PHƯƠNG PHÁP MÃ HOÁ
3.4.1 MA HOA DOI XUNG KHOA BI MAT
e Dinh nghia
Thuật toán đối xứng hay còn gọi thuật toán mã hoá cô điển là thuật toán
mà tại đó khoá mã hoá có thê tính toán ra được từ khoá giải mã Trong rất
nhiều trường hợp, khoá mã hoá và khoá giải mã là giống nhau Thuật toán
này còn có nhiều tên gọi khác như thuật toán khoá bí mật, thuật toán khoá đơn giản, thuật toán một khoá Thuật toán này yêu cầu người gửi và người
nhận phải thoả thuận một khoá trước khi thông báo được gửi đi, và khoá này phải được cất giữ bí mật Độ an toàn của thuật toán này vẫn phụ thuộc và
Trang 23khoá, nêu đê lộ ra khoá này nghĩa là bât kỳ người nào cũng có thê mã hoá và
giải mã thông báo trong hệ thống mã hoá
Sự mã hoá và giải mã của thuật toán đôi xứng biêu thị bởi :
KI có thê tính toán từ K2, hoặc
K2 có thê tính toán từ KI.
Trang 24« Noi tng dung:
- Sử dụng trong môi trường mà khoá đơn dễ dàng được chuyền như là
trong cùng một văn phòng Cũng dùng để mã hoá thông tin để lưu trữ
trên đĩa
- Các vẫn đề đối với phương pháp mã hoá này:
1.Cac phương mã hoá cô điển đòi hỏi người mã hoá và người giải mã
phải cùng chung một khoá Khi đó khoá phải được giữ bí mật tuyệt đối, do vậy ta dễ dàng xác định một khoá nếu biết khoá kia
2.Hệ mã hoá đôi xứng không bảo vệ được sự an toàn nêu có xác suât cao
khoá người gửi bị lộ Trong hệ khoá phải được gửi đi trên kênh an toàn nêu
kẻ địch tấn công trên kênh này có thê phát hiện ra khoá
3.Vấn đề quản lý và phân phối khoá là khó khăn và phức tạp khi sử dụng
hệ mã hoá cổ điển Người gửi và người nhận luôn luôn thông nhất với nhau
vê vần đê khoá Việc thay đôi khoá là rât khó và dê bị lộ
4.Khuynh hướng cung cấp khoá dài mà nó phải được thay đối thường
xuyên cho mọi người trong khi vẫn duy trì cả tính an toàn lẫn hiệu quả chi
phí sé can trở rât nhiêu tới việc phát triên hệ mật mã cô điện
3.4.2 MA HOA PHI DOI XUNG KHOA CONG KHAI
« Dinh nghia
Trang 25Vào những năm 1970 Diffie và Hellman đã phát minh ra một hệ mã hoá mới được gọi là hệ mã hoá công khai hay hệ mã hoá phi đổi xứng
Thuật toán mã hoá công khai là khác biệt so với thuật toán đỗi xứng Chúng được thiết kế sao cho khoá sử dụng vào việc mã hoá là khác so với khoá giải mã Hơn nữa khoá giải mã không thê tính toán được từ khoá mã hoá Chúng được gọi với tên hệ thống mã hoá công khai bởi vì khoá dé ma hoá có thê công khai, một người bất kỳ có thể sử dụng khoá công khai để mã
hoá thông báo, nhưng chỉ một vài người có đúng khoá giải mã thì mới có
khả năng giải mã Trong nhiều hệ thống, khoá mã hoá gọi là khoá công khai
(public key), khoá giải mã thường được gọi là khoá riêng (private key)
Trang 26Dac trung noi bat cua hệ mã hoá công khai là cả khoá công khai (public key) và bản tin mã hoá (ciphertext) đều có thể gửi đi trên một kênh thông tin không an toàn
e_ Nơi ứng dụng: Sử dụng chủ yếu trên các mạng công khai như Internet khi
mà khoá chuyên tương đối khó khăn
e Diffie va Hellman đã xác định rõ các điêu kiện của một hệ mã hoá công khai như sau:
I Việc tính toán ra cặp khoá công khai Ksg và bí mật kp dựa trên cơ sở các
điều kiện ban đầu phải được thực hiện một cách dễ dàng, nghĩa là thực hiện
trong thời gian đa thức
2 Người gửi A có được khoá công khai của người nhận B và có bản tin P
cần gửi đi thì có thể dé dang tao ra duoc ban mã C
C — EkB (P) — Es (P)
Công việc này cũng trong thời gian đa thức
3 Người nhận B khi nhận được bản tin mã hóa C với khoá bí mật kạ thì có
thê giải mã bản tin trong thời gian đa thức
P = Dụa (C) = Da[Es(M)]
Trang 274 Néuké dich biét khoa céng khai Kg c6 gang tính toán khoá bí mật thì khi
đó chúng phải đương đầu với trường hợp nan giải, trường hợp này đòi hỏi
nhiều yêu cầu không khả thi về thời gian
5 Nếu kẻ địch biết được cặp (Kg,C) và cỗ gang tính toán ra bản rõ P thì
giải quyết bài toán khó với số phép thử là vô cùng lớn, do đó không khả thi
3.5 CAC CACH PHAN TICH MA
Các thuật toán cho phần lớn các hệ mật mã là nỗi tiếng nên chúng ta
giả sử rằng những kẻ phân tích mã đã có thuật toán trong tay khi bắt đầu tấn công Trong phần lớn các hệ mật mã, thuật toán đề phân phối cho tất cả
người sử dụng và sức mạnh của hệ thống nằm trong khoá cũng như phụ thuộc vào thuật toán mã hoá dữ liệu tốt như thế nào Và độ dài của khoá mã
quyết định bản mã kết quả được mã tốt như thế nào và sẽ bảo vệ chống lại các cuộc tan céng brute-force Tan céng brute-force là cách trong đó mọi
khoá có thê được thử dùng để giải mã
Nhiều nhà viết mật mã tin rằng các cuộc tấn công brute-force không
thể thực hiện được khi khoá đài được sử dụng, thậm chí khi khả năng của máy tính đang lên Tân công brute-force đối với bản mã phải mã hoá với
một khoá lớn (trên 100 bít) có thê mất hàng triệu hoặc hàng tỉ năm ngay cả
khi với mạng máy tính mạnh hơn nữa việc thêm một bít đơn có thê làm tăng
gấp đôi giá cua viéc phan tich bang brute-force
Tuy nhiên vẫn tôn tại một điểm yêu trong hệ thông trừ một vài khoá,
làm giảm sô các khoá cân được kiêm tra Ví dụ, kẻ phân tích mã có thê
khám phá ra rằng một thuật toán sinh ra các số ngẫu nhiên nhưng thực tế có
Trang 28một vài mẫu được lặp lại Điểm yêu này của hệ thông có thể cung câp một
con đường đề khám phá hệ thống
Có một vài phương pháp chung dé phân tích, dưới đây là danh sách
theo thứ tự khả năng của từng phương pháp Mỗi phương pháp trong số chúng giả sử răng kẻ phân tích mã hoàn toàn có hiểu biết về thuật toán mã hoá được sử dụng
l Chỉ có bản mã Trong trường hợp này, người phân tích chỉ có một vài
bản tin của bản mã, tất cả trong số chúng đều đã được mã hoá và cùng sử
dụng chung một thuật toán Công việc của người phân tích là tìm lại được bản rõ của nhiều bản mã có thê hoặc tốt hơn nữa là suy luận ra được khoá sử dụng mã hoá, và sử dụng để giải mã những bản mã khác với cùng khoá này
Giả thiết : Cị = Eu(P)), Cạ= Eu(P¿), .C¡ = EuŒ)
Suy luận : Mỗi P,P», oe P;, k hoac thuat toan két luận Pit từ Ci =
E,(Pi+1)
2 Biết bản rõ Người phân tích không chỉ truy cập được một vài bản mã
mặt khác còn biết được bản rõ Công việc là suy luận ra khoá đê sử dụng
giải mã hoặc thuật toán giải mã để giải mã cho bất kỳ bản mã nào khác với cùng khoá như vậy
Giả thiết : Pị, Cị = Eu(P)), P2, C2= EuŒ;), Pi, C¡ = EuŒ)j)
Suy luận : Mỗi k hoặc thuật toán kết luận P;,¡ từ C¡, = Ey(P;:¡)
3 Lựa chọn bản rõ Người phần tích không chỉ truy cập được bản mã và
kết hợp bản rõ cho một vài bản tin, nhưng mặt khác lựa chọn bản rõ đã mã
Trang 29hoá Phương pháp này tỏ ra có khả năng hơn phuong phap biét ban ré boi vi
người phân tích có thê chọn cụ thê khối bản rõ cho mã hoá, một điều khác có
thê là sản lượng thông tin về khoá nhiều hơn
Gia thiét : Pi, Ci = Ex(P), P2, C2= Ei(P2), cee Pi, C; = E,(P;) tại đây
người phân tích chọn P\, P›, Pị
Suy luận : Mỗi k hoặc thuật toán kết luận P¡¡ từ C¡,¡ = E¿(P;+)
4 Lựa chọn bản rõ thích hợp Đây là trường hợp đặc biệt của lựa chọn bản
rõ Không chỉ có thể lựa chọn bản rõ đã mã hoá, nhưng họ còn có thê sửa đôi
sự lựa chọn cơ bản kết quả của sự mã hoá lần trước Trong trường lựa chọn bản mã người phân tích có thể đã chọn một khối lớn bản rõ đã mã hoá, nhưng trong trường hợp này có thê chọn một khối nhỏ hơn và chọn căn cứ khác trên kêt quả của lân đâu tiên
Ví dụ tốt nhất về trường hợp biết bản rõ là những file được tạo ra bởi
các từ khác nhau trong đó chứa các mã định dạng được ân và header file
Các tài liệu cũng chứa tên công ty và địa chỉ, bản quyên, và nhiều thông tin
khác mà các nhà phân tích có thể lẫy được một cách dễ dàng Thực tế là, rất
nhiều tài liệu được sử dụng trong thương mại điện tử có header chuẩn được
sử dụng để định danh tài liệu cho các máy tính khác Các nhà phân tích có
thê tìm ra khoá bằng việc phân tích thuật toán đã mã bản rõ đã biết như thế nào
Dưới đây là một vài kỹ thuật được các nhà phân tích dé tan công ban
Trang 30e Differential cryptanalysis; k¥ thuat nay st dụng một quá trình lặp để ước lượng mã được tạo ra sử dụng một thuật toán lặp khối (như
DES) Liên kết bản rõ được mã hoá dưới cùng một khoá Sự khác
biệt được phân tích và các khoá có thể được xác định thông qua số các lần lặp Kỹ thuật này được sử dụng thành công chống lại DES
va FEAL -4
e Linear cryptanalysis: ky thuat nay cing dugc str dung thanh cong dé
chống lại DES và FEAL-4 Các cặp bán rõ và bản mã kết quả được
phân tích và một kỹ thuật xấp xi tuyến tính được sử dụng để xác
định hoạt động của mã khối
e Algebraic attacks:ky thuat nay kham phá câu trúc toán học trong các
mật mã khối Nếu cấu trúc tôn tại thì việc mã hoá đơn với một khoá
có thé sinh ra các kết quả tương tự như việc mã hoá đôi với hai khoá
khác nhau Kẻ phân tích sẽ có được ưu thế ở yếu điểm này
Nói chung những nhà phân tích mã cần có thời gian và tài nguyên
Điều này làm cho các nhà phân tích gặp khó khăn nhất là khi các thuật toán
và ký thuật mã hoá tốt hơn nhờ các tiến bộ kỹ thuật
Du rang các cuộc tân công DES là thành công nhưng các cuộc tân
công này không để dàng và rẻ Phương pháp nhanh nhất là tân công brute-
force di mat 3.5 giờ trên máy tính hàng triệu đôla Differential cryptanalysis được sử dụng dé tan công, trong đó 247 lần mã được thực hiện trên một bản
rõ được chọn, cuộc tân công quá khó sẽ không được đề cập trong thực t
Trong một cuộc tấn công khác Linear cryptanalysis được dùng để tìm ra khoa DES trong 50 ngay, str dung 12 computer workstation