1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên ứu á giải thuật mã hóa bảo mật hỗn loạn

74 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Các Giải Thuật Mã Hóa Bảo Mật Hỗn Loạn
Tác giả Lương Viết Minh
Trường học Trường Đại Học Bách Khoa Hà Nội
Chuyên ngành Khoa Học Kỹ Thuật Điện Tử
Thể loại Luận Văn Thạc Sỹ
Năm xuất bản 2011
Thành phố Hà Nội
Định dạng
Số trang 74
Dung lượng 2,7 MB

Nội dung

K ỹ thu t mã hóa m t mã hi n đ i ậậệạK ỹthuật mã hóa mật mã ngày nay là một nhánh của việc ứng dụng toán học và khoa học máy tính: những hệ thống mật mã đều sử ụng các chương strình máy

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

LƯƠNG VIẾT MINH

NGHIÊN CỨU CÁC GIẢI THUẬT MÃ HÓA

BẢO MẬT HỖN LOẠN

LUẬN VĂN THẠC SỸ KHOA HỌC

KỸ THUẬT ĐIỆN TỬ

Hà Nội - 2011

Tai ngay!!! Ban co the xoa dong chu nay!!! 17057205303751000000

Trang 2

1.3.3 H tạ ầng khóa công khai (PKI)33T 17

1.4.6 Kiể ấn công cưỡu t ng ch (Brute force attack)ế 33T 30 33T

Chương 2 – Mã hóa mật mã dựa trên kỹ thu t s h n lo n ậ ố ỗ ạ 33T 31 33T 33T 33T 33T

2.1 Giới thiệu 31

2.2 Mã hóa mật mã và kỹ thu t hỗn loạn 33 ậ

Trang 3

2.4 Các thuật toán mã hóa m t mã h n lo nậ ỗ ạ 33T 39 33T 33T 33T

2.5.1 Độ nhạy đối v i thay đ i nh c a tham s hoớ ổ ỏ ủ ố ặc điều ki n ban ệ

đầu 33T 49 33T 33T 33T

2.5.2 Sự khuyếch tán33T 50

2.5.3 Những đánh giá về mã hóa m t mã h n loậ ỗ ạn 51 33T 33T 33T 33T

2.6 Nhận xét 52 33T

Chương 3 Tăng tính b - ả o m t cho h thố ậ ệ ng mã hóa m t mã dòng h n ậ ỗ loạn bởi hệ ống đồ th ng bộ đa l p ớ 33T 54 33T 33T 33T 33T

3.4 Nhận xét 62 33T 33T

Trang 4

vấn đề Những thông tin trao đổi diễn ra hằng ngày đều đa đa dạng về ặt nội mdung l n hình thẫ ức, trong đó có rất nhi u thông tin c n b o mề ầ ả ật cao bởi tính kinh tế, tính chính xác và độ tin cậy c a nó Khi mủ ột người muốn trao đổi thông tin với một người khác hay một tổ chức nào đó thì yêu cầu quan tr ng ọ

là làm sao để đả m b o thông tin không b sai l ch ho c b l do sự ả ị ệ ặ ị ộ xâm nhập

của bên thứ ba Trước các yêu cầu cấp thiết đó, mộ ố ả t s gi i thu t mã hóa m t ậ ậ

mã đã được xây d ng nh m đ m b o tính an toàn d li u t i nơi lưu tr ự ằ ả ả ữ ệ ạ ữ cũng như khi dữ ệu đượ li c truy n đi trên các môi trườề ng truyền tin không đảm b o ả

Trong lĩnh vực này, m t hư ng khá mộ ớ ới đang được nghiên cứu, đưa vào ứng dụng và hứa hẹn mang lại nhiều lợi ích đó là mã hóa mật mã dựa trên

k ỹ thuật hỗn loạn Xuất phát từ những vấn đề trên, đề tài luận văn tập trung vào nghiên cứu các giải thuật mã hóa bảo mật hỗn loạn

Trong luận văn đề ập đế c n các vấn đề ổ t ng quan về ệ h m t mã nói ậchung, mã hóa mật mã đối xứng, b t i xứấ đố ng, các gi i thu t mã hóa m t mã ả ậ ậhỗn loạn và các vấn đề liên quan cần thiết cho việc hiểu các kỹ thuật mã hóa

mật mã

Luận văn được trình bày gồm 3 chương với nội dung như sau:

Chương 1: Lý thuy t cơ b n v mã hóa m t mã ế ả ề ậ

Chương 2: Mã hóa m t mã d a trên kỹậ ự thu t sậ ố ỗ h n loạn

Trang 5

4

Chương 3: Tăng tính bảo m t cho h th ng mã hóa m t mã dòng h n ậ ệ ố ậ ỗ

loạn b i hệ ống đồở th ng b ộ đa lớp

Luận văn được hoàn thành v i sự hướớ ng d n t n tình c a TS Hoàng ẫ ậ ủ

Mạnh Thắng – giảng viên Việ Điện tử Viễn thông Đại học Bách khoa Hà n - –

Nội cùng với sự giúp đỡ nhiệt tình của các thầy cô giáo trong khoa Vì thời gian có h n, trong khi phạ ạm vi đề tài sâu r ng v i nhi u giộ ớ ề ải thuật phức tạp,

đồng th i trình đ và kinh nghi m c a b n thân tác gi còn h n ch B n lu n ờ ộ ệ ủ ả ả ạ ế ả ậvăn chắc ch n còn có nhi u khi m khuy t R t mong nhắ ề ế ế ấ ận được s ự đóng góp của các thầy cô, bạn bè đồng nghi p nhi u ý ki n b ệ ề ế ổ sung, đóng góp về ộ n i dung để ận văn đượ lu c hoàn thiện hơn

Trang 6

5

1.1 Giới thiệ u

1.1.1 Nhữ ng bư ớ c phát tri n c a k thu t mã hóa m t mã ể ủ ỹ ậ ậ

Mật mã là kỹ thuật bảo mật làm biế ổn đ i dữ liệu từ hình thức đơn giản,

rõ ràng sang hình thức dữ ệ li u biến thành mật mã, chỉ ững ai có đượ nh c thông tin gi i mã cả ần thiết m i có thớ ể gi i mã và đả ọc được nội dung d liệữ u M t ộ

bản ghi hoặc dữ liệ đã được mã hóa mậ u t mã g i là b n tin m t mã ọ ả ậ(ciphertext), bản ghi ho c dữ ệu chưa mã hóa mật mã g i là n tinặ li ọ bả gốc (plaintext) Hoạt động trong quá trình chuy n t d li u m t mã sang n tinể ừ ữ ệ ậ bảgốc được gọi là giải mã hóa mật mã Mã hóa mật mã ngày nay đượ ử ục s d ng

với mục đích chính tạo ra các cơ chếtruyền tin bảo mật Phân tích mã hóa mật

mã đối lậ ớp v i mã hóa m t mã bởậ i nó tìm m i cách phá mọ ật mã để ấy đượ l c các bản tin ốc từ ữ liệu đã được mã hóa mật mã mà không dùng các cơ chế g d hoặc thuật toán giải mã Nghiên cứu mã hóa mật mã cùng với phân tích mã hóa mật mã tạo ra khoa học mật mã

Mặc dù với nhiều kỹ thuật khoa học hiện đại nhưng mã hóa mật mã vẫn

là môn khoa học cổ điển Một ví dụ thông d ng nhụ ấ ủt c a mã hóa mật mã cổ điển đã xuất hi n t lâu là Julius Caesar, ngư i đã tạệ ừ ờ o ra các b c thư tín đư c ứ ợ

mật mã dùng chủ ếu trong mục đích quân sự, được gọi là “mật mã Caesar” y

với kỹ thuật mã hóa rất cơ bản: m i ch cái trong b c thư tín đư c thay th ỗ ữ ứ ợ ế

bởi chữ cái khác ở ị trí thứ ba trở ống trong bảng chữ cái v xu Thuật toán mật

mã như vậy là m t ví d n hình c a k thu t m t mã thay th t ng ký t ộ ụ điể ủ ỹ ậ ậ ế ừ ựtrong b n ghi gả ốc bằng nh ng ký tữ ự ch cái hoặữ c ký t khác t o ra b n ghi ự ạ ả

mật mã Những thuật toán mật mã như vậy đã đượ ử ục s d ng rộng rãi cho đến khi Al-Kindi – nhà toán học Ả ậ-r p phát tri n thành công kề ỹ thuật phân tích tần suất vào thế k ỷ thứ 9 Kỹ thuật phân tích này dựa trên thực tế ủ c a các

Trang 7

6

ngôn ngữ ớ v i những ch cái khác nhau có t n suữ ầ ất xuất hiện khác nhau và

kiểm tra tần suất xuất hiện của các chữ cái có trong b n ghi mả ật mã để tìm ra các chữ cái có trong b n ghi g c ả ố Để ốch ng l i kạ ỹ thuật phân tích t n suầ ất xuất

hiện các chữ cái, thuật toán mật mã thay thế nhiều ký tự chữ cái đã được tạo

ra vào kho ng thả ế ỷ ứ 16 và đã loạ k th i bỏ hoàn toàn thuật toán mật mã thay thế ừ t ng ký t Một trong nh ng thuự ữ ật toán nổi tiếng là “mật mã Vigenere”, trong nhiều năm liền thuật toán mật mã này không hề ị b phá v cho đỡ ến khi

k ỹ thuật phân tích tần suất xuất hiện được cải tiế à bổ sung thêm các tn v ính năng mới

Nhiều thuật toán làm giả đa ký tự đã được phát triển và đưa vào sửdụng trong những thế ỷ k 19 và 20, hoàn toàn hoạt động dựa trên các thiế ịt b máy móc Một ví dụ điể n hành là máy Enigma đượ ử ục s d ng nhiều trong truyền thông tin qua sóng vô tuy n bế ởi quân đội Đức trong chi n tranh th ế ế

giới lần thứ Máy Enigma sau đó đã bị phá mã bởi mã Allies do nhà toán 2

học người Anh Alan Turing (được coi là cha đẻ nghành khoa học máy tính

hiện đại)

Hầu hết các thuậ toán mã hóa mật mã dù sớm hay muộn đề ịt u b phá vỡ,

t ừ đó người ta bắ ầt đ u nghiên cứu và tạo ra các nguyên lý thiết kế các kỹ thuật

mã hóa mật mã Luật Kerckhoffs là một trong những luật nổi tiểng đã được sử dụng tương đối rộng rãi cho đến ngày nay trong mã hóa mật mã: tính bảo mật

của một hệ thống mã hóa mật mã chỉ có m t tham số ảộ b o mật duy nhất đó là khóa.Nói cách khác, các nguyên lý của một hệ thống mã hóa mật mã cần phải được b o m t cho dù mọả ậ i th có th ứ ể công khai nhưng trừ khóa Năm 1949, nhà toán học người Mỹ Claude Shannon đã xuất bản m t bài báo có tính chộ ất như sự khởi ngu n v lý thuy t mã hóa m t mã d a trên lý thuyết thông tin ồ ề ế ậ ựClaude Shannon phát tri n r ng ch có m t cách duy nhể ằ ỉ ộ ất để đạ t đư c tính ợ

bảo mật hoàn hảo chỉ khi m i b n ghi m t mã s d ng m t khóa khác nhau ỗ ả ậ ử ụ ộ

với các yêu cầ , với mỗi cách mã hóa mậu t mã, s lư ng các khóa có th s ố ợ ể ử

Trang 8

7

dụng sẽ ằng số lượng các bản ghi gốc có thể ả b gi i mã được Các yêu c u ầ được đưa ra như vậy dường như không thự ếc t và khó áp dụng được trong mã hóa

mật mã Claude Shannon đã đưa ra mộ t vài nguyên lý thi t k ế ếđể đạt đư c đợ ộ

bảo mật cao, tăng khả năng chống lại các phương pháp phá mã Một trong

những số đó trở thành nguyên lý cơ bản trong thiết kế các thuật toán mã hóa

mật mã ngày nay

Mã hóa mật mã đã có nhiề ả ếu c i ti n và phát tri n m i vào cu i th k ể ớ ố ế ỷthứ 19 cùng v i s phát triớ ự ển c a khoa h c máy tính và các thiết bị điệủ ọ n tử khác Do đó đã xuất hi n nhi u công ngh m i t o ra các thuật ệ ề ệ ớ ạ toán mã hóa

mật mã phức tạp

Một trong số đó là thuật toán mã hóa mật mã xuấ ện năm 1970 đượt hi c phát minh bởi một nhóm nghiên c u mã hóa mứ ật mã của IBM, trong đó có Horst Feistel và Don Coppersmith Thuật toán mã hóa mật mã đầu tiên mà họ

đã tạo ra là chuẩn mã hóa m t mã dữ liệu (DES), đã đượ ử ụậ c s d ng r ng rãi ộcho đến ngày nay

Năm 1976, một bài báo được xu t b n b i hai nhà khoa h c chuyên v ấ ả ở ọ ề

mật mã người Mỹ là Whitfield Diffie và Martin Hellman trong đó đề ập đến c

nội dung mã hóa mật mã khóa công khai và sự liên hệ ữa lý thuyế gi t ph c t p ứ ạ

và mật mã, họ đã tạo ra một bộ ặ m t mới cho ngành khoa học mật mã

1.1.2 K ỹ thu t mã hóa m t mã hi n đ i ậ ậ ệ ạ

K ỹthuật mã hóa mật mã ngày nay là một nhánh của việc ứng dụng toán

học và khoa học máy tính: những hệ thống mật mã đều sử ụng các chương strình máy tính (hoặc các mạch điệnt tử) với kiến trúc thuật toán dựa trên

những công cụ ủa toán học Mục tiêu của kỹ thuật mật mã hiện đại là ạo ra c t

những tính năng bảo mật sử ụ trong việc truyền tin trên nhữ phương d ng ng

thức truyền không b o mả ật, ví dụ: điện tho i, sóng vô tuy nạ ế , internet,…

Mã hóa mật mã bấ ố t đ i xứng s ẽlàm cho các chữ ký s của các văn bản điện t s có hi u lử ẽ ệ ực và tính pháp lý tương tự như chữ ký c a các văn b n ủ ả

Trang 9

8

giấy tờ bình thường Chữ ký số cũng có những tính pháp lý trong vi c ch ng ệ ứ

nhận các văn bản Cùng với sự phát triển của kỹ thu t mã hóa mật mã hiện ậ

đại, r t nhi u các thu c tính b o mấ ề ộ ả ật đã đượ ạo ra như c t khả năng tính toán đa tác vụ ả b o mật, nhóm đa chữký,…

Mọi hệ thống mã hóa mật mã về ặt lý thuyế ề m t đ u có thể ị b phá v bỡ ởi

k ỹ thuật dò tìm toàn bộ các khóa Một cặp bản tin ật mã m – bản tin ốc gthường không bao gi b nh m lẫờ ị ầ n trong vi c xác đệ ịnh khóa được s d ng ử ụtrong việc mã hóa mật mã dữ ệ Trong trườ li u ng h p c c p bợ ả ặ ản tin mật mã và

bản tin gố ị nghe trộm, các khóa có thể được b c dùng trong vi c mã hóa m t ệ ậ

mã sẽ được đưa ra dùng để kiểm tra vi c giệ ải mã hóa n tinbả mật mã thành

bản tin ốc Dù cho việ g c dò tìm toàn bộ các khóa như vậy có thể thành công,nhưng để có được m t kho d liộ ữ ệu khóa đủ ớn dùng để ả l gi i m t mã t b n tin ậ ừ ả

mật mã thành ản tin là điều không thể Ví dụ, nếu một khóa đượ mã hóa bởi b c

128 bit (đây là sự so sánh r t nh so v i các bộ nh ấ ỏ ớ ớ máy tính hiệ ạn đ i) thì số lượng khóa có th x y ra và s dùng trong vi c dò tìm khóa là 2ể ả ẽ ệ P 128

P Như vậy

việc quét tìm toàn bộ các khóa dùng trong mã hóa ật mã ầ ế m c n đ n 2P

128

P các

tiến trình mã hóa và gi i mã Giả ử ằả s r ng m k tột ẻ ấn công có khoảng hai triệu máy tính và có thể ự th c hiện được năm triệu tiến trình mã hóa trên một giây (tố ộ ử lý nhanh hơn rấc đ x t nhi u so v i các máy tính hi n tề ớ ệ ại), như vậy th i ờgian tính toán sẽ ấ m t khoảng một nghìn tỷ năm V i kỹớ thu t dò tìm toàn bộ ậcác khóa có thể dùng trong việc mã hóa mật mã đ tìm ra khóa đúng nhấể t là điều không th th c hiể ự ện được

K ỹ thuật mã hóa mật mã được chia thành hai nhánh chính: mã hóa mật

mã đối x ng và mã hóa m t mã bậ ấ t đ i xứ ố ng Mã hóa mật mã đối xứng thường được xem như có độ ả b o m t cao nậ ếu như không tồ ạ ỹn t i k thu t phá ậ

mã nào có hiệu quả hơn việc dò tìm toàn bộ khóa Tuy nhiên, b o msự ả ật của

k ỹ thuật mã hóa mật mã cũng chỉ được an toàn trong vài năm à không bị ấn m tcông phá mã Mặt khác, các hệ ố th ng mã hóa m t mã bấ ốậ t đ i xứng thư ng ờ

Trang 10

9

được xây d ng d a trên các vấ ềự ự n đ khó c a lý thuy t sủ ế ố ọ h c Một vấn đề được xem là khó khi kh ả năng tính toán của vấ ền đ đó không thểthực hiện được

1.2 Mã hóa mậ t mã đ ố i ứng x

Mã hóa mật mã đối xứng, cũng có tên ọ g i là mã hóa m t mã khóa ậ bảo

m tậ , dựa trên sự ả đị gi nh r ng hai i tư ng trao đổi thông tin với nhau cùng ằ đố ợ

s dử ụng một khóa ảo mậb t chung k

-1

P Đố ới v i các thu t toán mậ ật mã có độ an toàn, vi c tính toán ệencR k Rvà encR k RP -1

P

s ẽ không thể thực hiện được nếu t ếu khóa k thậm chí nếu có hi

một số lượng lớn cặ ản tin ật mã ản tin ốc cùng tồn tạ và biếp b m – b g i t trước Hai dạng thu t toán mã hóa m t mã đậ ậ ối xứng được phân bi t: thuật toán

mã hóa dòng và thuật toán mã hóa khi kh i.

1.2.2 Hàm băm và mã số xác th c b n tin ự ả

Hàm băm mã hóa mật mã là m t hàmộ mà nó sẽ ánh xạ ộ ả m t b n tin có

độ dài không gi i h n sang b n tin có độ ớ ạ ả dài hữu hạn với các giá trị được rút

ngắn hơn Để hàm băm có độ ả b o mật hơn, cần ải tạo ra cơ chế để ngườph i nghe tr m không có khộ ả năng tính toán để tìm ra bất kỳ thừa số băm nào cũng như không thể tính toán để tìm ra hai b n tin khác nhau có cùng giá tr hàm ả ịbăm Các hàm băm được sử ụng như mộ d t kh i trong các ố chương trình mã hóa mật mã Giá trị hàm băm c a một bản tin sử ụng để ạủ d t o ra kh ả năng có

th kiể ểm tra tính toàn vẹ ữ liệu của nó, ởi vì không có các ản tin nào có n d b b

thể được tạo ra với cùng m t giá trịộ hàm băm Nhưng quá trình truy n ề tin các

Trang 11

10

giá trị đó phải có độ ả b o m t an toàn cao, điềậ u này c biệđặ t quan tr ng i với ọ đốmôi trường truy n thông tin không b o m t m b o tính toàn v n d ề ả ậ Để đả ả ẹ ữliệ cũng nhưu, việc xác th c bảự n tin khi truyền qua các môi trường truy n tin ề

có độ ả b o m t kém, các mã s xác th c bậ ố ự ản tin được s d ng gi i quy t ử ụ để ả ế

vấn đề này

Một mã số xác thực bản tin (MAC) là một hàm được tham số hoá v i ớ

một khóa bảo mật và bản tin có độ dài không giới hạn được ánh xạ thành bả n tin có chi u dài h u hề ữ ạn v i các giá tr ớ ị được rút gọn MAC cũng thường được xem như là khóa của hàm băm Để MAC có đ an toàn b o mộ ả ật cao, cũng cần

phải tạo ra cơ ch đểế không thể thực hiện tính toán và tìm ra được giá trịMAC của các bản tin, nếu không biết khóa bảo mật th( ậm trítrong trường hợp

một số lượng lớn các bản tin bị ộ các giá trị MAC) l

MAC được s dử ụng để ạ t o ra cơ chế xác th c b n tin và m b o tính ự ả đả ảtoàn v n dẹ ữ ệ li u Thực vậy, thông qua vi c kiệ ểm tra giá trị MAC đ xác minh ểtính chính xác của bản tin, bên nh n có thậ ể ể ki m tra bản tin được gửi đi bởi bên gửi có sử ụ d ng chung khóa b o mả ật và bản tin không bị chỉnh sửa bởi bất

k ỳ bên nào nếu không biết khóa bảo mật được sử ụng trong quá trình mã hóa d

mật mã Một vài MAC có thể được tạo ra dựa trên các hàm băm hoặc thuật toán mã hóa mật mã khối

1.2.3 Thuật toán mã hóa mật mã khối tiêu chuẩ n

Thuật toán mã hóa mật mã khối thực hiện các tiến trình mã hóa mật mã thông qua phép p c lặ ủa các hoán vị khóa độc lập, được gọi là chuyển đổi vòng

l p. Trong thực tế, thu t toán mã hóa m t mã kh i là l p, ậ ậ ố có nghĩa là việc chuyển đổi lặp sẽ được sử ụng lặp lại trong nhi u l n Quá trình chuy d ề ầ ển đổi vòng lặp được tham số hóa bởi một khóa vòng lặp đượ ẫc d n xu t t khóa b o ấ ừ ả

mật bởi quá trình lặp của chứ năng phân bốc khóa (key scheduling function)

Trang 12

11

Hai thuật toán mã hóa mật mã kh i tiêu chuố ẩn chính: Tiêu chu n mã ẩhóa mật mã dữ ệ li u (DES) và tiêu chu n mã hóa mẩ ật mã nâng cao (AES)

1.2.3.1 Tiêu chuẩn mã hóa mật mã dữ liệu (DES)

Phương pháp mã hóa mật mã DES s d ng gi i thu t mã hóa m t mã ử ụ ả ậ ậ

kh ối, năm 1976 đã được Cục tiêu chuẩn liên bang Hoa k l a chỳ ự ọn như là một tiêu chuẩn chu n m c dùng trong mã hóa mẩ ự ật mã dữ liệu DES s d ng khóa ử ụ56-bit (thường được biểu diễn dưới dạng 64 bit trong đó có 8 bit dùng để

kiểm tra tính chẵ ẻn l ) và DES ho t đ ng d ng kh i 64-bit DES có c u trúc ạ ộ ở ạ ố ấ

l p ặ và được sử ụng 16 lầ ới d n v phép bi n ế đổi trong cùng vòng lặ F được p đứng trước b i m t bit-hoán v IP và theo sau là mộở ộ ị t bit-hoán v ị FP Mỗi phép biến đổi vòng lặp được tham số hóa bởi một khóa vòng l p 48ặ -bit kR r -

Rđược d n xu t t khóa b o m t k thông qua m t quá trình phân b khóa Tóm ẫ ấ ừ ả ậ ộ ốlại, một văn bản mật mã c được mã hóa từ ột văn bả ố m n g c p theo công thức sau:

 =       () (1.2)

, kh

Phép biến đổi vòng lặp tuân theo giải thuật Feistel các ối được chia thành hai phần g m vồ L ới 32-bit (phần bên trái) và R (phần bên phải), và F được định nghĩa như sau:

( , ) = ( ,   ( )) (1.3)

Trong đó f là hàm được tham số hóa với một khóa 48 bit và sử ụ

với khối 32 bit Cấu trúc này được miêu tả ở hình 1.1-

Trang 13

12

Hình 1.1: Biến đổi vòng l p trong giặ ải thuật Feistel

1.2.3.2 Tiêu chuẩn mã hóa mật mã nâng cao ES) (A

Tiêu chu n mã hóa mẩ ật mã nâng cao được tạo ra bởi nhà mật mã người

B ỉJoan Daemen và Vincent Rijment AES được xem là thành t u lự ớn v mã ềhóa mật mã sau quá trình chuẩn hóa kéo dài năm năm và vào năm 2001 Viện công ngh và tiêu chu n liên bang Hoa kệ ẩ ỳ đã công bố AES tr ở thành tiêu chuẩn mã hóa mật mã dự liệ AES là thuật toán mật mã khối dựa trên các u

khối 128 bit với việc sử ụng một trong các khóa 128, 192 hoặc 256 bit.- d -

AES hoạt động với một mảng 4x4 byte được gọi là các trạng thái Trạng thái này được kh i tạ ởở o b i giá trị ả b n ghi mật mã và lưu giữ giá tr cu i ị ốcùng c a quá trình mã hóa mủ ật mã bản ghi gốc Mỗi vòng lặp AES được bao gồm 4 bước: AddRoundKey, SubBytes, ShiftRows và MixColumns AES

g m ồ có 10, 12 hoặc 14 vòng lặp, điều này phụ thuộc vào độ dài của khóa

Khóa càng dài ố vòng lặp càng nhiề cùng với bướ cuối là AddRoundKey s u, c

Bước SubBytes s d ng AES S box vử ụ - ớ ừi t ng byte c a kh i ủ ố AES S-box đượ ạc t o ra t s k t h p gi a phép nhân nghừ ự ế ợ ữ ịch đảo hàm []/(++

++ 1) với phép biến đổi affine ả kh nghịch  có tính chất phi tuyến đểchống l i các tấạ n công d a trên các đặự c tính đạ ối s

f

Trang 14

tư cũng được d ch hai và ba v trí Đ i v i kh i có kích thư c 128 bits và 192 ị ị ố ớ ố ớbits cũng thực hi n dệ ịch tương tư Bằng cách này, m i c t đ u ra cỗ ộ ầ ủa bước ShifRows s bao gẽ ồm các byte từ ữ nh ng cột củ ầu vào Trong trườa đ ng hợp khối có kích thước 256 bits, hàng đầu tiên không thay đổi và ch dịch vòng ỉ

đố ới v i các hàng thứ hai, ba và tư tương ứng v i 1 byte, 3 byte và 4 byte Sự ớthay đổi như vậy ch xu t hi n duy nh t trong thu t toán m t mã Rijindael khi ỉ ấ ệ ấ ậ ậ

s dử ụng khối 256 bits, nhưng AES lại không sử ụng các khối có kích thước d

256 bits

Hình 1.3: Trong bước ShiftRows, các byte trong mỗi hàng được dịch vòng

trái Số ị v trí dịch chuy n tùy thu c từng hàng ể ộ

Trang 15

14

Bước ến đổi MixColumms ạ ột đ ng theo khối tuần tự ừ ộ ết đ n cột

Mỗi cột được xem như một hàm đa thức []/(++++ 1) được

nhân v i modulo ớ (+ 1) và hàm đa thức ố đị c(x), cho bởi:c nh

() = 3 +++ 2 (1.4)

Hình 1.4: Trong bước MixColumns, mỗi cột được nhân

với một hệ ố ố đị c(x) s c nh

Vì vậy bước này có thể được xem như là phép nhân ma trận trong

trường h u h n Trong phép tính này, m i c t đư c nhân v i ma tr n bi t ữ ạ ỗ ộ ợ ớ ậ ế

trước, đố ới khóa 128 bit khóa đó là:i v

Phép nhân được th c hiự ện như sau: nhân với 1 không có s biự ến đổi

nào di n ra, nhân vễ ới 2 tức là dịch chuy n byte sang bên ể trái, nhân với 3 dịch

chuyển sang bên trái và sau đó thực hiện phép XOR với giá trị ban đầu chưa

dịch chuyển Sau phép dịch chuyển, hàm XOR với điều ki n 0x11B sệ ẽ được

s dử ụng nếu giá trị ịch chuyển lớn hơn 0xFF d

Cuối cùng, bước biến đổi AddRoundKey th c hiện kết hợp khóa con ự

với các khối Khóa con trong mỗi chu trình được tạo ra từ khóa chính với quá

trình tạo khóa con Rijndael; mỗi khóa con có độ dài giống như các khối Quá

Trang 16

15

trình kết hợp được thực hi n b ng cách XOR từệ ằ ng bít c a khóa con vủ ới khối

d u ữliệ

Hình 1.5: Trong bước AddRoundKey, mỗi byte được kết hợ ới một byte p v

trong khóa con c a chu trình sủ ử ụ d ng phép toán XOR ()

Vấ n đ trao đổi khóa ề

phNhư ở ần trên của luận văn đã trình bầy mã hóa mật mã đố ứi x ng đưa ra giải pháp công ngh b o m t, tính toàn v n và kh ệ để ả ậ ẹ ả năng xác thực thông qua kênh truy n không an toàn dề ựa trên gi ảđịnh rằng hai bên trao đổi thông tin cùng chia sẻ một khóa b o m t Tuy nhiên vả ậ ấn đề ả b o m t v n còn ậ ẫLàm thế nào m t khóa b o mộ ả ật được trao đổi m t cách b o m t thông tin ộ ả ậkênh truy n không an toàn? Kề ỹ thuật mã hóa mật mã bấ ốt đ i xứng có giải pháp công nghệ để ử x lý vấn đề này

1.3 Mã hóa mật mã bấ ố t đ i xứng

K ỹ thuật mã hóa mật mã bấ ốt đ i xứng, thường được gọi là kỹ thuật mã hóa mật mã khóa công khai, được phát minh ra b hai nhà khoa hởi ọc mật mã người M ỹ Whitfield Diffie và Martin Hellman i gi i pháp quan tr vớ ả ọng trong

vấn đề trao đổi khóa và chữ ký số Đây là nguyên lý sống còn trong việc sử dụng khóa kép: một khóa công khai pk (ký) đượ ử ục s d ng cho thu t toán mã ậ

Trang 17

16

hóa mật mã và một khóa công khai sk đượ ử ục s d ng trong thu t toán giậ ải mật

mã (kiểm tra chữ ký) Khóa công khai được sử ụ d ng r ng rãi bộ để ất cứ ai

cũng có thể ử ụng để s d mã hóa mật mã bản tin (hoặc kiểm tra chữ ký) ặt Mkhác, khóa riêng được gi kín ch có duy nhữ để ỉ ất người có khóa mới thực hiện được giải mật mã bản tin với khóa công khai tương ứng (thực hiện các tiến trình ki m tra chữ ể ký bởi khóa công khai tương ứng)

1.3.1 H ệ th ng mã hóa m t mã khóa công khai ố ậ

Một hệ thống mã hóa mật mã khóa công khai bao gồm một cặp hàm số enc (mã hóa) và dec (giải mã hóa) được tham s hóa b i m t khóa công khai ố ở ộ

pk và một khóa riêng sk, trong đó  =  Quá trình mã hóa mật mã

bản tin gốc p thành bản tin mật mã c thực hiệ thông qua khóa công khai pkn :

c=encR pk R(p) (1.5) b

Quá trình giả mã hóa mật mã từ ản tin mật mã c thành bản tin gôc p thực hi n ệ thông qua khóa riêng sk:

P=decR sk R(c) (1.6)

Đối với hệ thống mã hóa mật mã khóa công khai để tăng cường tính

bảo mật cần phả ải đ m bảo sao cho không thể thực hiện tính toán được decR sk R

nếu không có khóa riêng sk cho dù biết thông tin của khóa công khai pk

Mộ ềt đi u lưu ý rằng h th ng mã hóa m t mã khóa công khai hoạ ộệ ố ậ t đ ng với các bản tin có độ dài c nh Khi m t bố đị ộ ản tin có độ dài l n c n mã hóa ớ ầ

mật mã, ẽ được sử ụng thuật toán mã hóa mật mã lai ghép: một thuật toán s d

mã hóa mật mã đối xứng được sử ụ d ng trong quá trình mật mã bản tin với

một khóa bí mật k được tạo ra ngẫu nhiên và chính khóa k được mã hóa m t ậ

mã b i hở ệ thống mã hóa mật mã khóa công khai, sau đó được đính kèm với

bản tin Bên nhận sẽ ử ụng khóa riêng để ấy lại khóa k dùng để ải mật mã s d l gi

bản tin Quá trình mã hóa mật mã lai ghép được sử ụng rộng rãi trong thực tế d

Trang 18

m và tính toán với một chữ ký s Tiến trình kiểm tra chữ ký đ i với một bản ốtin cùng với chữ ký và kiểm tra tính chính xác của chữ ký đính kèm với bản tin

( , ) =     () = 

()   (1.7)

Để ch ký có tính an toàn b o m t c m ph i đ m b o vi c tính toán ữ ả ậ ầ ả ả ả ệsignR sk R không thể ự th c hiện được n u thi u thông tin sk mặc dù đã biết thông ế ếtin của pk

H ệ thống mã hóa mật mã khóa công khai tạo ra chữ ký điện tử thông qua việc xác định signR sk R(m)=decR sk R(m) và verifpk R R(m,s)=“encR pk R(s)=m” V ới mục tiêu tăng cường tính b o m t và hoạ ộả ậ t đ ng v i bản tin có độớ dài b t kỳ, các ấtiến trình thực hi n ch ký s thườ ứệ ữ ố ng ng dụng hàm băm trước khi s d ng ử ụdecR sk R

1.3.3 H ạ ầ t ng khóa công khai (PKI)

Mã hóa mật mã bấ ốt đ i xứng xử lý vấn đề trao đổi khóa thông qua việc

tạo ra một hệ thống khóa công khai sử ụng rộng rãi bất cứ ai cũng có thể d dùng để ử g i đi b n tin đư c mã hóa m t mã Tuy nhiên mả ợ ậ ột vấn đề ữ n a xuất

Trang 19

18

hiện: một kẻ nghe trộm có thể đưa ra một khóa gi mả ạo để mọi ngườ ửi s

d ng ụ H tạ ầng khóa công khai (PKI) đã được tạo ra để giải quyế ấn đềt v này

PKI là một hệ thố trong đó ng quy n s h u khóa công khai cề ở ữ ủa người dùng được ch ng nh n b i mứ ậ ở ột cơ quan chứng nhận có độ tin cậy cao (cơ quan chính phủ) Cơ quan chứng nh n phát hành và qu n lý ậ ả một tập các

chứng ỉ ốch s (hoc các chứng ch khóa công khai) đó là các chứng ch ỉ văn

bản điện tử trong đó một khóa công khai được gắn liền với một người dùng cụthể Một chứng ch s bao gỉ ố ồm cả khóa công khai của người dùng và nh n ậ

d ng ạ được cấp phát bởi một cơ quan chứng nhậ Khi hai người dùng muốn n trao đổi thông tin, trư c tiên ph i trao đ i các ch ng ch v i nhau M i bên s ớ ả ổ ứ ỉ ớ ỗ ẽthực hi n ki m tra tính chính xác, h p l c a chữ ký khi nhận được các chứng ệ ể ợ ệ ủchỉ thông qua cơ quan chứng nh n khóa công khai N u ch ậ ế ữ ký được chấp

nhận, chứ chỉ được xem như hợp lệ và hai người dùng có thể ắ ầng b t đ u trao

đổi thông tin v i đ b o m t và an toàn cao ớ ộ ả ậ

nhất trong hệ thống mã hóa mật mã khóa công khai

Khóa công khai RSA được tạo ra bởi một module công khai N và là phép nhân của hai số nguyên tố bí m t p và q ậ và của mộ ố mũ công khai t s e

với cùng số nguyên tố ớ v i hàm Euler N, cụ thể là:

Trang 20

19

() = (  1) (  (1.8) 1)

và s Khóa riêng RSA được tạo ra bởi module công khai N ố mũ bí mật dđược xác định b i nghở ịch đảo c a e modulo ủ  ( )

cChữ ký số RSA s ủa bản tin m<N được tính thông qua công thức:

s=mP

d

Pmod N (1.9) c

Việc kiểm tra tính hợp lệ ủa chữ ký là quá trình ngược lại mà có thểđược th c hiự ện công khai vì theo định lý Euler, chúng ta có:

m=sP

e

P mod N (1.10) b

Độ ảo mật của hệ thống mã hóa mật mã RSA dựa trên việc tính toán

lấy lại hàm số mũ bí mật d ừ khóa công khai (e, N),t phải là thừa số ủa cmodulus N, trong thực tế không thể thực hiện tính toán đượ ốc đ i với số lượng lớn modulusP 2

P Vì vậy, cho dù bi t đưế ợc thông tin khóa công khai nhưng không thể ả gi i mật mã được bản tin

bởi hai hàm s ố mũ:

 =   (1.11)

 =    (1.12) Trong đó: dR p R=d mod (p-1) và dR q R=d mod (q-1) Theo định lý Fermat nhỏ, chúng ta có sR p R=mP d

P mod p và sq R R=mP d

Pmod q Do đó, mỗi khi tính toán sp R

Rvà sR q R, s có thể ấ ạ l y l i đư c t sợ ừ R p Rvà sR q R bằng cách sử ụ bướ d ng c tái t h pổ ợ :

s=CRT(sR p R,sq R R) (1.13)

Trang 21

20

hHai phương pháp đểtái tổ ợp CRT: một phương pháp từ Gauss và m t ộphương pháp từ Garner Phương pháp tái tổ ợ h p c a Ganer có hi u qu ủ ệ ả hơn

và được xác định:

CRT(sR p R,sqR R)=sRqR+q.(iRqR.(sRpR-sRqR) mod p) (1.14) Trong đó iR q R=qP -1

Pmod p RSA CRT xử lý nhanh hơn ần gấp 4 lần so - gvới RSA tiêu chuẩn, điều này làm cho RSA-CRT được sử ụ d ng rộng rãi, đặc biệt đối với mã hóa mật mã nhúng trong văn bản, vì y u t th i gian mã hóa ế ố ờ

và khóa riêng Phần cơ bản nh t c a h th ng này là n u bi t thông tin chi ti t ấ ủ ệ ố ế ế ế

của phần khóa riêng thì việc giải mã hóa mật mã sẽ vô cùng đơn giản Nếu không bi t khóa riêng, hế ầu như không thể ả gi i mã hóa mật mã của các bản tin

Tính b o mả ật của ElGamal dựa trên các vấn đề ủ c a toán học logarit rời

rạc Đ đánh cắể p thông tin và giải mật mã được bản tin cần phải lấy được thông tin về khóa riêng, để thực hiện được điều này cần thực hiện các phép tính logarit rời rạc Nhưng trong t ựh c tế không t n tồ ại một phương pháp nào

để ự th c hi n việ ệc tính đó Trong những trường hợp như vậy, mã hóa m t mã ậ

có độ an toàn b o m t cao ả ậ

Trang 22

21

Ngày nay thu t toán mã hóa mậ ật mã ElGamal được sử dụng rộng rãi trong nhi u s n phề ả ẩm liên quan đến mã hóa mật mã Phần mềm mã nguồn mởGnuPG sử ụng ElGamal như mộ d t tiêu chuẩn dùng cho ch ký s ữ ố

Quá trình t o khóa

Như đã trình bày ở trên, yêu c u cơ bản đố ớ ộ ệ ốầ i v i m t h th ng mã hóa mật mã cần phải có ít nhất một khóa đối với những thuật toán mã hóa mật mã

đố ứng và hai khóa đố ới x i v i nh ng thu t toán mã hóa m t mã b t đ i x ng ữ ậ ậ ấ ố ứ

Đố ới v i ElGamal ch bên nh n b n tin m i c n kh i tỉ ậ ả ớ ầ ở ạo khóa, các bước

khởi tạo khóa được thực hiện như sau:

3 Khóa công khai

T ừ các yếu tố trên có thể tính toán ra một phần khóa công khai gP

b

Pmod p khóa công khai ủ bên nhận trong h c a ệ ố th ng mã hóa mật mã ElGamal g m 3 tham sồ ố (p, g, gP

b

P) và khóa riêng b

4 Công bố khóa công khai

Khóa công khai c n phầ ải được công bố và s dử ụng trong các hệthống server khóa được chỉ định rõng ràng để bên g i có thể dùng ửtrong quá trình mật mã

Quá trình mật mã

Trang 23

22

Bản tin M ần được mã hóa mậ c t mã trước khi g i t i bên nh n, bên g i ử ớ ậ ử

cần có ba tham số khóa công khai (p, g, gP

b

P) từ một server khóa hoặc nhận thông qua thư điệ ửn t không m t mã Vi c nhậ ệ ận khóa công khai như vậy được thực hiện thông qua môi trường truy n thông tin không an toàn, ch có m t ề ỉ ộtham số ả b o m t b, được gửi đi trong tham số gậ P

b

P H ệthống mã hóa mật mã ElGamal dựa vào nguyên lý có độ ả b o m t cao củậ a vi c không th ệ ể tính toán được phép toán logarit r i r c ờ ạ

n

Đểmã hóa mật mã bản tin gốc M, bên gửi cần thực hiệ theo các bước sau:

1 Thực hi n l y khóa công khai ệ ấ

Bên gử ầi c n lấ ượy đ c các ph n củầ a khóa công khai (p, g, gP

b

P) của bên

nhận từ ột server khóa có độ tin cậy cao m

2 Chuẩn bị ản tin gốc M để mã hóa mật mã b

Diễn gi i b n tin gả ả ốc M dướ ạng các sối d nguyên t (mố R 1 R, m2 R R,…)trong kho ng {1,…, ả p-1} Từng s nguyên tố ố ẽ đượ s c mã hóa mật

mã tuầ ựn t

3 L ựa ch n s ọ ố mũ ngẫu nhiên

Tại bước này, bên gửi sẽ ự l a chọn m t sốộ mũ k ng u nhiên Y u tẫ ế ố

ngẫu nhiên ở đây rất quan trọng trong khả năng ước đoán số mũ k,

t ừ đó sẽ ạ t o ra nh ng thông tin nh y cữ ạ ảm cần thiết cho kẻ ấ t n công

để ả gi i mã hóa m t mã b n tin ậ ả

4 Tính toán khóa công khai

Để truy n thông tin c a th a s ề ủ ừ ố mũ ngẫu nhiên k t i bên nh n, bên ớ ậ

gửi cần thực hiện tính toán tham số gP

k

P mod p và tổ ợ h p vào bản tin

mã hóa mật mã cầ ửn g i cho bên nhận

Trang 24

k

P(1.15)

Bản tin mã hóa mật mã C là tập hợp của các cR i Rvới 0< ≤ |M|.i

Kết quả ủa quá trình mã hóa mật mã bản tin C được gửi tới bên nhận ccùng v i các khóa công khai ớ gP

k

P mod p có được từ thừa số mũ riêng ngẫu nhiên

Trường h p x u có th x y ra trong khi truy n dợ ấ ể ả ề ữ ệ li u k tẻ ấn công có

thể ắ b t được gói tin và tại bước thứ 2 có ể ấy đượth l c một phần khóa công khai gP

ElGama có khuy n ngh nên sế ị ử ụ d ng một thừ ố mũ ngẫ s u nhiên k o ch

mỗi khối bản tin đơn lẻ mR i R Điều này s làm tăng tính b o m t, cho dù bi t ẽ ả ậ ếđược m t kh i b n tin mộ ố ả R j R nhưng ẻ ấk t n công không thể bi t đưế ợc toàn bộ mR i

Rkhác Lý do cho khả năng này là cR 1 R=mR 1 R*(gP b

P)P

k

Pmod p và c2 R R=mR 2 R*(gP b

P)P

k

P mod p,

nếu chỉ có thông tin mR 1 R b lị ộ, m2 R R của bản tin tiếp theo có thể được tính toán theo công thức sau:





 (1.16)

Quá trình giải mã hóa m t mã

Sau khi nhận được bản tin mã hóa mật mã C và khóa công khai ngẫu nhiên gP

k

P

Bên nh n c n phậ ầ ải sử ụ d ng thu t toán mã hóa mậ ật mã để có th c ể đọđược b n tin g c M, có th chia thành các bướả ố ể c nh : ỏ

Trang 25

24

1 Tính toán khóa chia sẻ

H ệ thống mã hóa mật mã ElGama giúp bên gửi xác định khóa bảo

mật chia sẻ mà không cần trao đổi tương tác với bên nhận Khóa bảo

mật chia sẻ là tổ ợp của các thừa số mũ riêng b ủa bên nh n và h c ậthừa số mũ ngẫu nhiên k được l a chự ọn b i bên g i Khóa chia s ở ử ẻđược xác định theo phương trình:

(gP

k

P)P

2 Giải mã hóa mật mã

Đố ớ ừi v i t ng ph n c a b n tin mã hóa m t mã cầ ủ ả ậ R i Rbên nhậ ần c n th c ự

hiện tính toán theo phương trình:

mR i R=(gP k

P)P

-b

P

*cR i R mod p (1.18) Cuối cùng th c hiệ ổ ợự n t h p toàn b các mộ R i R thành bản tin gốc M mà bên nh n có thậ ể đọc được đúng theo bản tin của bên gửi

Như đã trình bày ở trên, hệ thống mã hóa mật mã ElGama được xem như có độ ả b o m t cao vì vậ ấn đề khó c a toán h c logarit r i r c hiủ ọ ờ ạ ện chưa giải quyết đư c ElGama ngăn chặn đượợ c các v t n công thông qua cách s ụ ấ ử

dụng thừa số mũ mã hóa ngẫu nhiên k

H ệ thống mã hóa mậ t mã Đư ờ ng cong Elip (ECC)

ECC là một trong các phương pháp mã hóa mật mã khóa công khai d a ựtrên cấu trúc đại số ủa đườ c ng cong elip v i các trư ng h u h n Những ớ ờ ữ ạđường cong elip được s d ng trong các thuử ụ ật toán thừa số nguyên tố và được

ứng d ng trong mã hóa m t mã Khóa nh nh t có đ ụ ậ ỏ ấ ộ dài 160 bits

dĐường cong elip được sử ụng trong mã hóa mật mã thường được định nghĩa qua hai loại trường h u h n cơ bảữ ạ n, trường thu c tính ch n và l V i ộ ẵ ẻ ớtrường thu c tính l là nh ng ng d ng c a s h c trong Fộ ẻ ữ ứ ụ ủ ố ọ R p R, với p là s ố

Trang 26

25

nguyên t Các thành phố ần trong trường được bi u diể ễn dưới d ng các s ạ ố

nguyên trong dải từ 0,1,… -p 1 kết hợp với modul số ọc p h

1.4 Các kiểu tấn công mã hóa mật mã

Tấn công mã hóa mật mã được thiết kế ớ v i mục đích phá vỡ tính b o ả

mật của các thuật toán mã hóa mật mã và chúng được sử ụng để ải mã hóa d gi

mật mã mà không cần truy cậ ới khóa Đây là một phần của kỹ thuật phân p ttích m t mã, ậ một trong những kỹ thuật gi i mã ả hóa dữ liệu đã mật mã Kỹthuật phân tích m t mã và kỹ ật mã hóa m t mã (kậ thu ậ ỹ ật tạo ra các văn thu

b n ả ẩn, hoặc mật mã là các ) nhánh con của ngành khoa học mật mã

Các kiể ấu t n công mật mã cũng dùng để nâng cao tính b o m t củ ệ ả ậ a hthống mã hóa m t mã thông qua vi c tìm kiậ ệ ếm các điểm yếu trong các ph m ạ

vi như code, mật mã, giao th c mã hóa mậứ t mã ho c thu t toán qu n lý khóa ặ ậ ảđượ ử ục s d ng trong các thu t toán mã hóa m t mã ậ ậ

1.4.1 T ấ n công bản tin gố c đã bi ế t (Known plaintext attack )

Kiể ấu t n công b n tin gả ốc đã biế ố ắt c g ng phá v mỡ ột thuậ toán ật t m

mã dựa trên bản tin gốc đã biết và bản tin này đượ dùng để ạc t o ra bản tin mật

mã Một cách đơn giản, nếu biết trước phương pháp mã hóa, một phần ho c ặ

tất cả ản tin gốc ban đầu hoàn toàn có thể suy ra được khóa đã sử ụng để b d

mã hóa mật mã:

B ả n tin gốc + Khóa = Bản tin mật mã

B ả n tin mật mã ản tin gốc = Khóa – B

Xét v i tình huớ ống sau:

Alice gửi cho Bob một email cùng với file đính kèm là một bức hình

chụp trong k ngh Email đư c mật mã Giả ử ằng Alice cũng gửỳ ỉ ợ s r i bứ ảnh c trên cho mẹ ủ c a cô ấy nhưng không mã hóa mật mã Steve, người đang theo

Trang 27

26

dõi Alice và Bob, bằng cách nào đó đã lấy được m t b n sao email mà Alice ộ ả

gửi cho mẹ ới bức v ảnh “myholiday.jpg” N u bế ức ảnh có dung lượng 200Kbytes (kho ng 200.000 chả ữ cái) và Alice chỉ ử g i cho Bob v i một tin ớ

nhắn cá nhân (khoảng 50 chữ cái) cùng với bức ảnh, như vậy Steve đã ết biđược 99% n i dung tin trư c khi mã hóa, như vộ ớ ậy Steve có nhiều cơ hộ ểi đ có được khóa m t mã c a Alice khi đi sâu và phân tích bảậ ủ n tin m t mã tương ậ

ứng

1.4.2 Chỉ ấ t n công duy nh t b n m ấ ả tin ậ t mã (Ciphertext- only -attack)

Trong kỹ thu t mật mã, COA ậ hay ki u t n công bể ấ ản tin mật mã đã biết

là d ng tạ ấn công trong trường hợp chỉ ết thông tin duy nhất là các bản tin đã bi

mật mã

Việc phá mã được coi là thành công n u bản tin gốc tương ứế ng l y ấđược có độ chính xác cao cùng v i các khóa Khớ ả năng thu nhận được bất kỳ thông tin nào có trong bản tin gốc được xem là một thành công lớn

Trong l ch sị ử ủ c a ngành khoa học mật mã, các thuật toán mật mã trong thời kỳ đầ ử ụng các phương tiện thô sơ là giấy và bút, thườ u s d ng b phá v ị ỡ

dù chỉ ầ c n bản tin mật mã Các nhà khoa học mật mã đã phát triển các công ngh ệ phân tích để phá mật mã, như là phân tích tần xuất suất hiện Thiết bịmật mã dùng máy móc như Enigma đã làm cho việc phá mã trở lên khó khăn hơn

Mọi thuật toán mã hóa mật mã hiện đạ ềi đ u c gố ắng tạ ra các cơ chế o chống l i các kiể ấạ u t n công chỉ dựa vào bản tin mật mã Quá trình rà soát hiệu chỉnh đối v i m t tiêu chuớ ộ ẩn thiết kế thuật toán mật mã thường m t nhi u ấ ềnăm cùng với các bài kiểm tra toàn diện với số ợ lư ng lớn các bản tin mật mã Tuy nhiên, với các thuật toán m t mã yậ ếu hoặc các thuật toán sử ụ d ng cho người dùng t phát tri n không có s giám sát ch t ch , dự ể ự ặ ẽ ẫn đến h th ng m t ệ ố ậ

mã vẫn có th b t n công bể ị ấ ởi kiể ấu t n công COA

Trang 28

27

- Phiên bản đầu của mạng riêng ảo PPTP do Microsoft phát tri n sể ử

dụng cùng một khóa RC4 cho bên gửi và bên nhận Trong mọi trường hợp khimột dòng mật mã như RC4 đượ ử ục s d ng hai l n v i cùng mầ ớ ột khóa, điều này

tạo cơ hội phá mã cho kiểu tấn công chỉ COA

- WEP là giao thức bảo mậ ầt đ u tiên sử ụng trong wi d -fi, dễ ị b phá vỡ

với một số ểu tấn công, điển hình trong số đó COA ki

1.4.3 Kiểu tấn công Man- - - in the midle -attack

Man- - -in the midle attack đượ- c vi t t t là MITMế ắ , hoặc còn có các tên

gọi khác là bucket brigade attack ho c Janus- ặ attack, là m t dộ ạng nghe lén mà trong đó kẻ ấ t n công t o các k t n i đ c l p v i n n nhân và th c hi n chuy n ạ ế ố ộ ậ ớ ạ ự ệ ểtiếp các bản tin gi a ữ các bên, đồng thờ cũng ạo ra sự tin tưởi t ng cho bên g i ử

và nhận như đang thực hiện các cuộc trao đổi thông tin tr c ti p v i nhau ự ế ớthông qua một kết nối riêng biệ , nhưng trong thựt c tế toàn b cuộc trao đổi ộnày đều b ki m soát b i k t n công K t n công ph i có kh ị ể ở ẻ ấ ẻ ấ ả ả năng chặn đượ ấ ảc t t c các tin nh n chuy n qua gi a các bên cũng như có thể chèn ắ ể ữ thêmthông tin

MITM chỉ có th thành công khi k t n công có khả năng ả ạể ẻ ấ gi m o thành các điểm k t cu i tương ng trong quá trình truy n tin diế ố ứ ề ễn ra Hầ ết u hcác giao th c mã hóa mứ ật mã đều có m t vài dạng chộ ứng thực điểm k t ối ế curiêng biệ ể ngăn chặt đ n các cuộc tấn công MITM và yêu c u quá trình truyầ ền tin phải thông qua các kênh truyền có độ an toàn b o m t cao ả ậ

Ví dụ ề ể ấn công MITM đố v ki u t i với mã hóa mật mã khóa công khai Giả ử s Alice muốn trao đổi thông tin v i Bob M t khác, Mallory muốn ớ ặnghe trộm cuộc trao đổi thông tin này, hoặc cũng có thể truyền b n tin không ảchính xác tới Bob Trước tiên, Alice cần hỏi Bob về khóa công khai của Bob

Nếu Bob gửi khóa công khai cho Alice, nhưng Mallory có khả năng nghe lén được thông tin này, ki u t n công MITM bể ấ ắt đầu được khởi động Mallory

Trang 29

1.4.4 Kiểu tấn công lựa chọn bản tin gốc (Chosen plaintext attack - - )

CPA là mô hình tấn công để phân tích mật mã trong đó CPA có kh ảnăng lựa ch n các b n tin gọ ả ốc tùy ý được dùng để mã hóa và có được các b n ảtin mật mã tương ứng Mục đích của ki u t n công CPA là thu thập các thông ể ấtin có liên quan là nguyên nhân làm giảm độ an toàn b o m t của chương ả ậtrình mã hóa mật mã, CPA cũng có thể khám phá ra được khóa b o mả ật của thu toánật dùng để mã hóa mật mã Trong mã hóa mật mã hiệ ạn đ i, CPA trở lên đặc bi t quan trệ ọng đối với các h th ng mã hóa m t mã công khai, do ệ ố ậkhóa mật mã được công khai và kẻ ấ t n công có th mã hóaể mật mã bất kỳ ả b n tin gốc nào

CPA có hai dạng tấn công:

- Kiể ấn công Batch CPA ẽ ựa chọn toàn bộ các bản tin gốc trước u t - s lkhi thực hi n mã hóa mệ ật mã

- Kiểu tấn công Adaptive CPA sẽ ạo ra một chuỗi các truy vấn tương - ttác, thực hi n l a ch các bệ ự ọn ản tin g c tiố ếp theo d a trên thông tin t quá ự ừ cáctrình mã hóa mật mã trước đó

b t

Các thuật toán mã hóa mật mã khóa công khai dễ ị ấn công bởi các

kiểu tấn công “từ điển” đơn giản, những kẻ ấn công có thể xây dựng một t

bảng các bản tin thích hợp tườ ứng với các bản tin mã hóa mậng t mã Để tìm các bản tin được gi i m t mã tả ậ ừ ả b n tin m t mã, kậ ẻ ấ t n công ch cỉ ần thực hi n ệ

Trang 30

29

việc tìm kiếm các bản tin mật mã có trong bả Như vậy, để tăng tính an ngninh b o mả ật của mã hóa mật mã khóa công khai c n phầ ải thực hiện mã hóa xắc suất (mã hóa ng u nhiên) Các thu t toán mã hóa mẫ ậ ật mã đối x ng sử ứ

dụng cùng một khóa cho quá trình mật mã và giải mật mã bản tin, cũng dễ trở thành n n nhân cạ ủa dạng t n công CPA.ấ

1.4.5 Kiểu tấn công lựa chọn bản tin mật mã (Chosen ciphertext attack )

gi

CCA thu thập thông tin bằng cách chọn một bản tin mật mã và ải mã hóa mật mã bản tin đó theo một khóa không biết trước Trong quá trình tấn công, CCA có cơ hội thâm nh p vào m t ho c nhi u b n tin m t mã trong h ậ ộ ặ ề ả ậ ệthống, t nh ng mẩu thông tin thu nhừ ữ ận được CCA cố ắ g ng khôi phục và lấy thông tin v khóa b o mề ả ật được sử ụng để ả d gi i mật mã

Một số thuật toán mật mã đã bịphá vỡ ởi kiểu tấn công CCA Như hệ bthống mã hóa m t mã ElGamal, phiên bả ầ ủậ n đ u c a RSA sử ụ d ng trong giao thức SSL đã bị ấ công và để ộ t n l các khóa phiên SSL Kiể ấu t n công CCA có quan hệ ậ m t thiết với các thuật toán mã hóa mật mã dòng tự đồng bộ Những nhà thiết kế các card thông minh mã hóa mật mã chống giả ạ m o cần nắm bắt

rõ ki u t n công CCA, bể ấ ởi rất dễ ị ể b ki m soát bởi kẻ ấ t n công có thể đưa ra

một số lượng lớn các bản tin mật mã đ thưc hiệ ấể n l y thông tin ủ khóa bảo c a

m ật

Khi một hệ thống mã hóa mật mã d b ễ ị phá vỡ ởi kiểu tấn công CCA, b

cần phải rất thận trọng để tránh khả năng giải mã hóa mật mã lựa chọn các bản tin mật mã tức là tránh cung cấp các thông tin có thể ỏng đoán để ự ph th c

hiện giải ật mã Đối với hệ thống RSA ử ụng cơ chếm s d dùng chung khóa để

mật mã và giả ật mã nếu không sử ụng hàm băm trong các bản tin rất dễ ị m d b

tấn công bởi CCA Để h ệ thống mã hóa mật mã trở lên an toàn hơn trước kiểu

tấn công CCA, cần có RSA OAEP, Cramer Shoup và nhiều dạng chứ thực - - ng

mã hóa mật mã đối xứng

Trang 31

30

CCA cũng giống như các kiểu tấn công khác, có thể có kiểu adaptive

và non-adaptive Đối với kiểu non-adaptive có thể ự l a chọn m t b n tin mộ ả ật

mã hoặc nhi u bề ản tin mật mã để ả gi i mật mã và không s d ng kử ụ ết quả ả b n tin gốc để tìm sự ự l a ch n cho các bọ ản tin m t mã sau i v i kiậ Đố ớ ểu adaptive quá trình giải mật mã dựa vào kết quả ủa quá trình trướ c c

1.4.6 Kiểu tấ n công cư ỡ ng chế (Brute force attack)

c g dKiểu tấn công cưỡng chế ố ắng sử ụng tất cả các khóa có thể Thường được s d ng trong các ki u t n công b n tin gử ụ ể ấ ả ốc đã biết ho c COA ặ

Ví dụ ể ấn công cưỡ ki u t ng ch v i khóa 4-bit: ế ớ

Với độ dài khóa hữu hạn và khoảng thời gian cho phép, kiểu tấn công cưỡng ch luôn luôn thành công Các thu t toán mã hóa m t mã có thể ịế ậ ậ b phá

v bỡ ởi kiểu tấn công này sau một thời gian khi CPU tăng tố ộc đ Mã hóa mật

mã DES đơn có độ dài khóa 56-bit, bất kỳ khoá nào cũng có thể ị b phá vỡ sau

một vài ngày khi s dử ụng phần cứ chuyên biệ ểng t đ thực hiện phá mã, như Electronic Frontier Foundation’s Deep Crack.3 Triple DES (khóa 168-bit) cũng đã bị phá v ỡ và được xem như là một yếu điểm c a DES đố ớủ i v i ki u ể

Trang 32

Trong số các ứng dụng có tính thực tế cao của những hệ thống hỗn loạn

là sử ụ d ng chúng trong lĩnh vực mã hóa mật mã hỗn loạn Các h ệ phi tuyến tính đóng vai trò chủ đạ o trong hoạ ột đ ng của hỗn loạn, điều này làm cho việc

d ự đoán bằng các phương pháp phân tích trở lên khó khăn nếu không có khóa

bí mật (các điều kiện kh i đ u and/or các tham số) Như vậy làm giảm nguy ở ầ

cơ bị ấ t n công b i ki u tở ể ấn công cưỡng ch , ế cũng như các kiể ấu t n công khóa

dựa vào thông tin độdài khóa

Hỗn loạn là một dạng điển hình của hệ thống động phi tuyến tính và chỉ

có duy nhất trong các điều ki n nhệ ấ ịt đ nh, ví dụ các giá trị ấ ị nh t đ nh c a các ủtham số ệ h thống và ch có trong các hệ ỉ thống động đượ ặc đ c trưng bở các i giá tr liên tị ục Trong các cách tiế ập c n phân tích tr ng thái h n lo có thạ ỗ ạn ểnghiên cứu được bởi các số mũ Lyapunov cùng với dạng đặc trưng củ ệa h

thống động H ạỗ lo n ch ỉ được tiến hành khi có ít nh t mộ ố mũ Lyapunov ấ t sdương và tổng c a t t c các s mũ là âm, đó là h thủ ấ ả ố ệ ống động ổn định nhưng

ngẫu nhiên giống như trạng thái hỗn loạn

Trang 33

32

rời rạc hoặc liên tục Để đảm bảo một thiết kế và các phương pháp phân tích phù hợp đối với hệ ố th ng mã hóa mật mã hỗn loạn, một số ấ ề đượ v n đ c đưa vào đánh giá

Mã hóa mật mã cổ điể n Mã hóa mật mã hỗn loạn

- Các giá trị ố s nguyên trên các

trường h u h n ữ ạ - Các giá trị s d ng c nh

liên t c ử ụ ố đị

hoặc biểu diễn điểm thay đổi

- Các phương pháp đạ ố i s - Các phương pháp phân tích

- K ỹ thuật số thực hiện bởi s h ố ọ c số

mật mã ẫn đến sựd khuếch tán và các đặc tính hỗn loạ mong muố ủa thuật n n ctoán Trong một phương pháp tương tự, sự ặp đi lặ ạ l p l i của ánh xạ hỗn loạn trải rộng trong miền khở ầi đ u thông qua không gian pha trong khi các tham số

của ánh xạ ỗn loạn có thể h đại diện cho khóa của thuật toán mã hóa

m

Ví dụ ột thuật toán mã hóa khối có thể được viết lại như một hệ thống

động th i gian r i r c: ờ ờ ạ

xR n+1 R = F(xRnR) (2.1) Trong đó điều kiện khở ầi đ u xR 0 R là bản tin gốc được mã hóa, và tr ng ạthái cuối xR k R là bản tin m t mã Ánh x m t mã có th bi u di n b i m t ậ ạ ậ ể ể ễ ở ộphương trình tương tự, thu c tính c a ánh x bao hàm s h n lo n phân tán ộ ủ ạ ự ỗ ạảnh hưởng c a m t ch s bản tin gủ ộ ữ ố ốc trên nhi u ch s bề ữ ố ản tin m t mã Nói ậ

Trang 34

m rở ộng miền của thuật toán mã hóa cổ điển từ ộ m t trường hữu hạn thành liên

tục sẽ làm làm phát sinh thêm một ánh xạ ỗn loạ Ví dụ đối với việc mở h n

rộng miền cho chức năng vòng của thuật toán mã hóa dữ liệu quốc tế (IDEA) thu được ánh x ạ và đã đuợc ch ng minh là h n lo n ứ ỗ ạ Các số mũ Lyapunov dương có thể bi u th c đi m h th ng h n loể ị đặ ể ệ ố ỗ ạn nhưng các ánh x and/or ạcác hệ ố th ng h n lo n th i gian rỗ ạ ờ ời rạ đượ ề ấc c đ xu t sử ụ d ng trong mật mã được xác định trên các tậ ợ ữ ạ ủ ố ọp h p h u h n c a s h c chính xác h u h n Trong ữ ạcác hệ ống như vậ th y, s ố mũ Lyapunov l n nh t bớ ấ ằng 0, b i vì mọở i quỹ đạ o

đều là tu n hoàn cu i cùng, do v y các vấn đề ở đây sẽ đượ ớầ ố ậ c ư c tính các số

mũ Lyapunov đố ới v i m t qu ộ ỹ đạo điển hình trong một thời gian không vượt quá th i gian chu kờ ỳ ủ c a nó

2.2 Mã hóa mật mã và kỹ thuật hỗn loạ n

kiếm phương pháp truyề tin an toàn, có sự quan tâm ết sức thực tiễ trong n h n

một số lĩnh vực bao gồm ệ ảo vệ các kênh truyền thông tin, cơ sở ữ ệvi c b d li u

và ph n mầ ềm

Trang 35

34

29T

Trong th p k qua khoa hậ ỷ ọc đã chứng minh khả năng ồt n t i c a h ạ ủ ệ

thống thông tin liên l c kỹ ật số ớạ thu v i các thiế ịt b phi tuy n tính và các m ch ế ạđiện t , mử ạch điện kiểu như vậ đã đượy c đặt tên là h n lo n b i vì ỗ ạ ở nó đã được phát hi n v kh ệ ề ả năng phát ẫng u nhiên thông qua các h thệ ống đơn giản

mà r t nhấ ạy đối với các điều khiện ban đầu B ng cách này, n u hai h ống ằ ế ệ thhỗn loạn gần như giống nhau nhưng có các trạng thái kh i đ u v i một sự sai ở ầ ớ

lệch rất nhỏ thì trạng thái của hai hệ thống sẽ phân kỳ ẽ nhánh rất nhanh r

S ự phát triển của hệ thống an ninh thông tin ới dựa trên các hệ ố m th ng

hỗn loạn độ đã đại diện cho mộng t lĩnh vực nghiên cứu mới trong truyền tin

và công ngh thông tinệ Hiện có rất nhi bài báo và tều ạp chí đã thể ệ hi n sự ậ t p trung nguồ ực cũng như thờn l i gian cho hệ th ng ố đượ đềc xu t mớấ i Bản chất

của lý thuyết và ết quả có trong thực ti n k ễ được th c hiự ện trong lĩnh vực mới này đượ đặc trưng ởc b i ý tưở mã hóa mật mã ựa trên hng d ỗn loạ cũng có n

những khả năng hoạ ộng tương tựt đ như các hệ th ng c n d a trên kỹ ố ổ điể ựthuật tính toán Ngày nay, 29Tvới sự ết nối thông tin và mạng máy tính toàn cầ , k u

m ng ạ điện thoại29T di động, t 29T ừ đó phát sinh sự 29Tcần thiế ct29T ủa việc sáng t oạ 29T mới 29Tđòi hỏ ừi v a 29Tnhanh và an toàn cho các thuật toán29T 29T 29T 29T 29Tmã hóa và gi29T 29T ải mã29T 29TSự phát triể ủn c a29T thương mạ điệ ửi n t và t29T ầm quan trọng của việc bảo mật đã thúc đẩy các nhà khoa học cần tìm ra một phương pháp mã hóa mật mã nhanh và có tính an toàn cao29T

đặc tính29T mà các tín hiệu 29T 29T hỗn loạ được sử ụng giống nhưn d t29T ín hiệu nhiễu và29T

h ng hệ thố ỗn loạ r tn ấ nh y iạ đố v iớ điều ki n ban đầu ệ

Trang 36

35

Do đó, các khóa bí m t thư ng có các tham ậ ờ s h ố ệ thống và điều ki n ệban đầu Nhi u nhà nghiên c u ch sề ứ ỉra t n t i c a m i quan h ch t ch gi a ự ồ ạ ủ ố ệ ặ ẽ ữ

s hự ỗn loạn và mật mã, nhiều đặc điểm cơ ản của ỗn loạn, như ự pha trộn b h s

và c đặ tính ủ ộ c a đ nh y vạ ới điều kiện ban đầu có thể được kết nối vớ đặc tínhi

hỗn loạ và khuếch trong mã hóa ật mãn m 29T Trong những năm gần đây có rất nhiều trung tâm nghiên cứu quốc tế đang có sự quan tâm gi i quy t vả ế ấn đề

của việc sử ụng phù hợp các hệ thống động p d hi tuyến tính với các trạng thái

hỗn loạn trong lượ ồc đ truy n tin b o m t Nh ng ề ả ậ ữ phương pháp cơ b n có th ả ểđược phân thành ba lo i chính: mã hóa kênh d li u riêng bi t, ghép kênh mã ạ ữ ệ ệhóa dữ ệ li u và kết hợp các hình thức trên

29T

Các mối quan hệ ữ gi a các hệ thống hỗn loạn và ệ thố mã hóa ật h ng m

mã dựa trên mã hóa đố ứi x ng ho c bấ ố ứặ t đ i x ng:

− Độ nhạy đố ới v i các khóa: m t s ộ ự thay đổ ấi r t nh c a m t bit trong ỏ ủ ộkhóa t, sẽ ạo ra một bản tin mật mã hoàn toàn khác khi cùng đưa vào

một bản tin gốc như nhau

− Độ nhạy đối v i b n tin g c: m t s thay đ i r t nh c a m t bit ớ ả ố ộ ự ổ ấ ỏ ủ ộtrong bản tin gố ẽ ạc, s t o ra một bản tin mật mã hoàn toàn khác

− Ánh xạ ả b n tin g c thành b n tin m t mã ng u nhiên: không c n b t ố ả ậ ẫ ầ ấ

k mỳ ột kiểu mẫu nào trong bản tin mật mã, nếu hệ thố mã hóang

mật mã thực sự ốt t

Các hệ ố th ng h n lo n có nhỗ ạ ững đặc tính sau:

− Độ nh y ạ tham : s số ự thay đổi nh trong m t trong nh ng tham s h ỏ ộ ữ ố ệ

thống là đủ để ạ t o thành hai quỹ đạ o, b t đầ ừ điểắ u t m khở đầu i

giống nhau, riêng biệt với tố ộc đ hàm mũ;

− Độ nh y v i u ki n kh i u: hai qu o b t đ u t ạ ớ điề ệ ở đầ ỹ đạ ắ ầ ừ hai điểm khác nhau, chia tách các điểm kh i đ u ở ầ theo ng hàm mũ; từ

Trang 37

36

− Tính ergodic: các qu o ỹ đạ theo các điểm thuộc hành trình không gian pha thông qua không gian v i phân bớ ố đồng đều

Cho đến nay k thu t h n lo n đã th c hi n thành công v i h th ng ỹ ậ ỗ ạ ự ệ ớ ệ ố

bảo mật tương t dướự i sự nghiên cứu của Pecora và Carroll vào năm 1990 Tuy nhiên việc thực hi n vệ ới các hệ ố th ng s vố ẫn chưa được như mong muốn Nguyên nhân chính làmã hóa mật mã ố ử ụs s d ng hỗn lo n chưa có k t quả là ạ ế

do các m ch sạ ố ớ v i không gian số ữ h u hạn H n n ỗ loạ là một hiện tượng trong

đó mọi bi n ng r t nh trong tr ng thái kh i u c a m t h th ng dế độ ấ ỏ ạ ở đầ ủ ộ ệ ố ẫn đến

s ự phân tách theo xu hướ hàm ố mũ ủa các trạng thái tương lai c a chính ng s c ủ

nó Khi ạ ộho t đ ng vớ không gian ố ữu hạn, ỗ loạ không còn sựi s h h n n phân tách này do xu hướng b gi i h n c a các trạị ớ ạ ủ ng thái có th x y ra ể ả

Theo kết quả nghiên cứu mối quan hệ ữ gi a h n lo n và ỗ ạ mã hóa ật mã, m

rất nhiều hệ thố mã hóa ật mã ựa trên ự ỗ loạ cho truyền thông end ng m d s h n n to-end đã được đưa ra Có hai khả năng để đạ t đư c h th ng b o m t thông ợ ệ ố ả ậtin dựa trên các thành phầ ỗn h n lo n ng: ạ độ tương tự và s ố

-2.3 K ỹ thuật mã hóa ật mã dựa trên hỗn loạ m n

2.3.1 Các hệ thống truyền tin dựa trên hỗ n lo n tương t ạ ự

Điểm chính c a các h th ng ủ ệ ố mã hóa mật mã d a trên hỗự n lo n tương ạ

t ựlà các mô hình thông tin bảo mật được thi t k cho các kênh nhi u Chúng ế ế ễđược d a trên kỹự thu t đ ng b h n lo n Đ ng b h n lo n là m t kỹ thuật ậ ồ ộ ỗ ạ ồ ộ ỗ ạ ộđược phát tri n t nhể ừ ững năm 1990 ề ặV m t lý thuy t, các h thế ệ ống này được

s dử ụng để ả b o v ệ thông tin dựa trên ý tưởng hai h th ng h n lo n có th ệ ố ỗ ạ ể

đồng b vộ ới nhau dướ ự điềi s u khi n c a m t hay nhi u tín hiể ủ ộ ề ệu vô hướng, các tín hiệu này thường được gửi đi từ m t hộ ệ thống tới hệ thống khác Có nhiều loạ ồi đ ng bộ ỗ loạ khác nhau như đồng bộ hoàn toàn, đồng bộ h n n suy

rộng, đồng bộ xung, đồng bộ pha, đồng bộ ạ ảnh, đồng bộ trễ ồ x , đ ng bộ do tín

hiệu nhiễ Các phân loại này dựa trên định nghĩa toán học củ ồu a đ ng b h n ộ ỗ

Ngày đăng: 22/01/2024, 16:55

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w