1. Trang chủ
  2. » Kỹ Thuật - Công Nghệ

Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)

73 284 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

Định dạng
Số trang 73
Dung lượng 1,96 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)

Trang 2

LUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH

Người hướng dẫn khoa học: TS HỒ VĂN CANH

THÁI NGUYÊN - 2016

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan luận văn “Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và

ứng dụng” là công trình nghiên cứu của cá nhân tôi tìm hiểu, nghiên cứu dưới sự

hướng dẫn của TS Hồ Văn Canh Các kết quả là hoàn toàn trung thực, toàn bộ nội dung nghiên cứu của luận văn, các vấn đề được trình bày đều là những tìm hiểu và nghiên cứu của chính cá nhân tôi hoặc là được trích dẫn từ các nguồn tài liệu được trích dẫn và chú thích đầy đủ

TÁC GIẢ LUẬN VĂN

Trương Hà Diệp

Trang 4

LỜI CẢM ƠN

Học viên xin bày tỏ lời cảm ơn chân thành tới tập thể các thầy cô giáo Viện công nghệ thông tin, các thầy cô giáo Trường Đại học Công nghệ thông tin và truyền thông - Đại học Thái Nguyên đã mang lại cho học viên kiến thức vô cùng quý giá và bổ ích trong suốt quá trình học tập chương trình cao học tại trường Đặc biệt học viên xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS Hồ Văn Canh đã định hướng khoa học và đưa ra những góp ý, gợi ý, chỉnh sửa quý báu, quan tâm, tạo điều kiện thuận lợi trong quá trình nghiên cứu hoàn thành luận văn này

Cuối cùng, học viên xin chân thành cảm ơn các bạn bè đồng nghiệp, gia đình và người thân đã quan tâm, giúp đỡ và chia sẻ với học viên trong suốt quá trình học tập

Do thời gian và kiến thức có hạn nên luận văn chắc không tránh khỏi những thiếu sót nhất định Học viên rất mong nhận được những sự góp ý quý báu của thầy cô và các bạn

Thái Nguyên, ngày 28 tháng 12 năm 2016

HỌC VIÊN

Trương Hà Diệp

Trang 5

MỤC LỤC

LỜI CAM ĐOAN i

LỜI CẢM ƠN ii

MỤC LỤC iii

MỤC CÁC HÌNH VẼ, ĐỒ THỊ vi

MỞ ĐẦU 1

CHƯƠNG 1 3

MẬT MÃ CỔ ĐIỂN VÀ HỆ MẬT MÃ ĐỒNG CẤU 3

1.1 Khái quát hệ mật mã 3

1.1.1 Khái niệm 3

1.1.2 Định nghĩa 3

1.1.3 Những yêu cầu đối với hệ mật mã 4

1.2 Một số hệ mật mã đơn giản 5

1.2.1 Mã dịch vòng ( shift cipher) 5

1.2.1.1 Định nghĩa (modulo): Định nghĩa về đồng dư 5

1.2.1.2 Định nghĩa mã dịch vòng: 6

1.2.2 Mã thay thế (MTT) 7

1.2.3 Mã Anffine 8

1.2.3.1 Định lý (đồng dư thức) 9

1.2.3.2 Định nghĩa (hàm Euler) 9

1.2.3.3 Định nghĩa (phần tử nghich đảo trong phép nhân) 10

1.2.4 Mã Vigenere 13

1.2.5 Mật mã Hill 14

1.2.5.1 Khái niệm 14

Trang 6

1.2.5.2 Định nghĩa (ma trận đơn vị) 14

1.2.5.3 Định nghĩa (Định thức của ma trận) 15

1.2.5.4 Định lý (ma trận ngịch đảo) 15

1.2.5.5 Định nghĩa mật mã Hill 15

1.2.6 Mã hóa hoán vị 15

1.2.7 Thám mã 17

1.3 Các phương pháp mã hóa đối xứng 17

1.3.1 Hệ mã hóa DES 17

1.3.2 Hệ mã hóa AES 19

1.3.3 Hệ mã hóa IDEA 19

1.4 Hệ mã hóa đồng cấu 21

1.4.1 Định nghĩa 21

1.4.1.1 Định nghĩa đồng cấu trong toán học 21

1.4.1.2 Định nghĩa hệ mã hoá đồng cấu 21

1.4.2 Hệ mã hoá đồng cấu cộng 21

1.4.3 Hệ mã hoá đồng cấu nhân 22

CHƯƠNG 2 HỆ MẬT MÃ DES VÀ HỆ MẬT MÃ IDEA 23

2.1 Hệ mật mã DES 23

2.1.1 Mô tả hệ mật 23

2.1.2 Quá trình mã hóa 24

2.1.2.1 Giai đoạn 1: Cách tính biến x0 24

2.1.2.2 Giai đoạn 2 25

2.1.2.3 Giai đoạn 3 32

2.1.2.4 Ví dụ 32

2.1.3 Qua ́ trình giải mã 36

2.1.3.1 Thuật toán 37

Trang 7

2.1.3.2 Chứng minh thuật toán 37

2.1.4 Ưu nhược điểm của hệ mật DES 39

2.1.4.1 Ưu điểm 39

2.1.4.2 Nhược điểm của DES 39

2.1.5 Độ an toàn của DES 41

2.1.5.1 Các đặc trưng an toàn cơ bản của một hệ mã khối 41

2.1.5.2 Độ an toàn của DES trước một vài phương pháp tấn công phá mã42 2.2 Hệ mật IDEA 43

2.2.1 Mô tả hệ mật IDEA 43

2.2.2 Các phép toán sử dụng trong IDEA 43

2.2.3 Mã hoá và giải mã trong IDEA 45

2.2.3.1 Mã hoá 45

2.2.4 Quá trình làm việc của một Modul 51

CHƯƠNG 3 NGHIÊN CỨU PHƯƠNG PHÁP MÃ HÓA TỰ ĐỒNG CẤU MỞ RỘNG KHÔNG GIAN KHÓA CHO CÁC MÃ CỔ ĐIỂN 55 3.1 Mở đầu 55

3.2 Nội dung phương pháp 55

3.2.1 Khái niệm, định nghĩa 55

3.2.2 Thuật toán mã hóa 55

3.2.3 Ví dụ 55

3.2.4 Thuật toán giải mã 59

3.3 Đánh giá độ an toàn của thuật toán 61

3.4 Đề xuất hướng ứng dụng trong thực tế 62

4 KẾT LUẬN HƯỚNG NGHIÊN CỨU 63

TÀI LIỆU THAM KHẢO 64

Trang 8

MỤC CÁC HÌNH VẼ, ĐỒ THỊ

Hình 1.1 Kênh liên lạc 4

Hình 1.2 Mã dịch vòng 6

Hình 1.3 Mã thay thế 7

Hình 1.4 Mã hóa Anffine 12

Hình 1.5 Phương pháp mã hóa Vigenere 13

Hình 1.6 Mật mã Hill 15

Hình 1.7 Mã hoán vị 16

Hình 2.1 Biểu diễn dãy 64 bit x thành 2 thành phần L và R 23

Hình 2.2 Quy trình phát sinh dãy Li Ri từ dãy Li-1 Ri-1 và khóa Ki 24

Hi ̀nh 2.3 Sơ đồ của hàm mở rô ̣ng 25

Hình 2.4 Sơ đồ tạo khóa con 26

Hình 2.5 Hàm f 28

Hình 2.6 Quá trình mã hóa DES 32

Hình 2.7 Sơ đồ giải mã 38

Hình 2.8 Cấu trúc Multiplication/Additio (MA) 44

Hình 2.9 Cấu trúc IDEA 45

Hình 2.10 Cấu trúc một modul (Modul 1) 46

Hình 2.11 Hàm biến đổi của IDEA 47

Hình 2.12 Mã hoá và giải mã trong IDEA 49

Hình 2.13 Cấu trúc một modul (Modul 1) 51

Hình 3.1: Mã hóa thông điệp 59

Hình 3.2: Giải mã thông điệp 61

Trang 9

DANH MỤC BẢNG BIỂU

Bảng 2.2 Bảng chọn E bít 26

Ba ̉ng 2.3 Hoán vi ̣ IP-1 27

Ba ̉ng 2.5 Hoán vi ̣ PC - 2 27

Ba ̉ng 2.7 8 hô ̣p S-Box 31

Bảng 2.8 Phép hoán vị P 31

Bảng2.9 16 vòng lặp mã 36

Ba ̉ng 2.10 Các khóa yếu của DES 40

Ba ̉ng 2.11 Các khóa nửa yếu của DES 40

Trang 10

mã đối xứng có hai loại chính là mật mã hiện đại như mật mã DES (Data Enecryption Standard), mật mã AES (Advanced Encryption Standard), mật mã IDEA (International Data Encryption Algorithm)… và mật mã truyền thống Mật

mã truyền thống rất đơn giản và thuận lợi mà thế giới đã sử dụng hàng thế kỷ trước một nhược điểm cơ bản của mật mã truyền thống là độ bảo mật không cao vì không gian khóa thường quá nhỏ

Mục đích của đề tài luận văn là nghiên cứu thuật toán mã hóa trên cơ sở kết hợp các mật mã truyền thống thành một hệ mật mã có độ bảo mật cao hơn nhiều trên cơ sở đánh giá tính ngẫu nhiên của nó bằng kỹ thuật của lý thuyết thống kê toán học

2 Đối tượng và phạm vi nghiên cứu

Đề tài luận văn sẽ nghiên cứu và trình bày phương pháp tạo ra một thuật toán

mã hóa từ các thuật toán mật mã truyền thống nhưng có độ bảo mật cao hơn

3 Hướng nghiên cứu của đề tài

Đề tài luận văn tập trung tìm hiểu hệ mật mã đồng cấu, trên cơ sở đó xây dựng một hệ mật mã đồng cấu sử dụng các hệ mật mã truyền thống, đưa ra một phương pháp khắc phục được những lỗ hổng về độ an toàn của các hệ mật mã này

4 Những nội dung nghiên cứu chính

Luận văn gồm 3 chương

Chương 1: Mật mã cổ điển và hệ mật mã đồng cấu

Chương 2: Hệ mật mã DES và hệ mật IDEA

Chương 3: Phương pháp mã hóa tự đồng cấu mở rộng không gian khóa cho các mã

cổ điển

Trang 11

5 Phương pháp nghiên cứu

- Phương pháp tổng hợp, so sánh để tìm ra vấn đề còn tồn tại để nghiên cứu

- Phương pháp lập trình để thử nghiệm thuật toán mới

6 Ý nghĩa khoa học của đề tài

Luận văn nghiên cứu phương pháp trao đổi khóa mã đối xứng nói chung không sử dụng mật mã khóa công khai [8] Thuật toán đơn giản đễ sử dụng và có độ

an toàn cao

Trang 12

CHƯƠNG 1 MẬT MÃ CỔ ĐIỂN VÀ HỆ MẬT MÃ ĐỒNG CẤU

1.1 Khái quát hệ mật mã

1.1.1 Khái niệm

- Chức năng cơ bản của mật mã là tạo ra khả năng liên lạc trên một kênh không mật cho hai người sử dụng (tạm gọi là A và B) sao cho đối phương (C) không thể hiểu được thông tin được truyền đi

- Kênh liên lạc có thể là một đường dây điện thoại hoặc một mạng máy tính

- Thông tin mà A muốn gửi cho B bản rõ có thể là một văn bản tiếng Anh, các

dữ liệu bằng số hoặc bất cứ tài liệu nào có cấu trúc tuỳ ý

- A sẽ mã hoá bản rõ bằng một khóa đã được xác định trước và gửi bản

mã kết quả trên kênh C có bản mã thu trộm được trên kênh song không thể xác định nội dung của bản rõ, nhưng B (người đã biết khoá mã) có thể giải mã và thu được bản rõ

1.1.2 Định nghĩa

Một hệ mật là một bộ 5 (P,C, K, E, D) thoả mãn các điều kiện sau:

1 P là một tập hữu hạn các bản rõ có thể

2 C là một tập hữu hạn các bản mã có thể

3 K (không gian khoá) là tập hữu hạn các khoá có thể

4 Đối với mỗi k K có một quy tắc mã e k : P C và một quy tắc v giải

mã tương ứng d kD Mỗi e k : P C và d k : C P là những hàm sao cho: dk(ek (x)) = x với mọi bản rõ x P.

Trong đó, chúng ta cần lưu ý tính chất 4: Nội dung của nó là nếu một bản rõ x

được mã hoá bằng e k và bản mã nhận được sau đó được giải mã bằng d k thì ta phải thu được bản rõ ban đầu x

Giả sử A gửi cho B một thông báo trên một kênh mật, ta có bản rõ cần truyền

đi là: x = x1, x2, ., xn Với số nguyên n  1 nào đó Ở đây mỗi ký hiệu của mỗi bản rõ xi  P, 1 i n Mỗi xi sẽ được mã hoá bằng quy tắc mã ek với khoá K xác định trước đó A tính yi = ek(xi), 1 i n và bản mã thu được là:

Trang 13

1.1.3 Những yêu cầu đối với hệ mật mã

Cung cấp một mức cao về tính bảo mật, tính toàn vẹn, tính chống chối bỏ và tính xác thực:

 Tính bảo mật: Bảo đảm bí mật cho các thông báo và dữ liệu bằng việc che dấu thông tin nhờ các kỹ thuật mã hóa

 Tính toàn vẹn (integrity): Bảo đảm với các bên rằng bản tin không bị thay đổi trên đường truyền tin

 Tính không thể chối bỏ (Non-repudiation): Có thể xác nhận rằng tài liệu đã đến từ ai đó, ngay cả khi họ cố gắng từ chối nó

 Tính xác thực (Authentication): Cung cấp hai dịch vụ:

o Nhận dạng nguồn gốc của một thông báo và cung cấp một vài bảo đảm rằng nó là đúng sự thực

Trang 14

o Kiểm tra định danh của người đang đăng nhập một hệ thống, tiếp tục kiểm tra đặc điểm của họ trong trường hợp ai đó cố gắng kết nối và giả danh là người sử dụng hợp pháp

1.2 Một số hệ mật mã đơn giản

1.2.1 Mã dịch vòng ( shift cipher)

1.2.1.1 Định nghĩa (modulo): Định nghĩa về đồng dư

Giả sử a và b là các số nguyên và m là một số nguyên dương Khi đó ta viết a

b (mod m) nếu a-b chia hết cho m Mệnh đề a b (mod m) được gọi là " a đồng dư với b theo modulo m" Số nguyên m được gọi là mudulus

Bây giờ ta có thể định nghĩa số học modulo m: Zm được coi là tập hợp {0,1, .,m-1} có trang bị hai phép toán cộng và nhân Việc cộng và nhân trong Zm được thực hiện giống như cộng và nhân các số thực ngoài trừ một điểm là các kết quả được rút gọn theo modulo m

Ví dụ tính 11x 13 trong Z16 Tương tự như với các số nguyên ta có 11 x 13 =

143 Để rút gọn 143 theo modulo 16, ta thực hiện phép chia bình thường: 143 = 8 x

16 + 15, bởi vậy 143 mod 16 = 15 trong Z16

Các định nghĩa trên phép cộng và phép nhân Zm thỏa mãn hầu hết các quy tắc quen thuộc trong số học Sau đây ta sẽ liệt kê mà không chứng minh các tính chất này:

1 Phép cộng là đóng, tức với bất kì a, b  Zm, a +b  Zm

2 Phép cộng là giao hoán, tức là với a, b bất kì  Zm, a + b = b+ a

3 Phép cộng là kết hợp, tức là với bất kì a, b, c  Zm, (a+b)+c = a+(b+c)

4 0 là phần tử đơn vị của phép cộng, có nghĩa làa bất kì Zm, a+0 = 0+a = a

5 Phép nhân là đóng, tức là với a, b bất kì  Zm, ab  Zm

6 Phép nhân là giao hoán, nghĩa là với a, b bất kì  Zm, ab = ba

7 Phép nhân là kết hợp, nghĩa là với a, b, c  Zm, (ab)c = a(cb)

8 1 là phần tử đơn vị của phép nhân, tức là với bất kỳ a  Zm

9 Phần tử nghịch đảo của phép cộng của phần tử bất kì (a  Zm) là m-a, nghĩa

là a + (m-a) = (m-a) + a = 0 với bất kì a Zm

10 Phép nhân có tính chất phân phối đối với phép cộng, tức là đối với a, b, c

Trang 15

Zm, (a+b)c = (ac)+(bc) và a(b+c) = (ab) + (ac)

Vì phần tử ngược của phép cộng tồn tại trong Zm nên cũng có thể trừ các phần

tử trong Zm Ta định nghĩa a-b trong Zm là a+m-b mod m Một cách tương tự có thể tính số nguyên a-b rồi rút gọn theo modulo m

Ví dụ: Để tính 11-18 trong Z31, ta tính 11+13 mod 31 = 24 Ngược lại, có thể lấy 11-18 được -7 rồi sau đó tính -7 mod 31 = 24

Trang 16

Qua phép mã hoá e9: cộng 9 vào mỗi giá trị rồi rút gọn theo tổng modulo 26 ta có:

Cách đây 2000 năm mã dịch chuyển đã được Julius Ceasar sử dụng Với khoá k

= 3 mã dịch vòng được gọi là mã Ceasar

Tập khoá phụ thuộc vào Zm với m là số khoá có thể Trong tiếng anh tập khóa chỉ có 26 khóa có thể, việc thám mã có thể được thực hiện bằng cách duyệt tuần tự

26 khóa đó, vì vậy độ an toàn của mã dịch chuyển rất thấp

Trang 17

Như vậy, e(a) = X, e(b) = N, Hàm giải mã là phép hoán vị ngược Điều này được thực hiện bằng cách viết hàng thứ hai lên trước rồi sắp xếp theo thứ

Ví dụ: bản rõ: “toinaydichoi” sẽ được mã hoá thành bản mã (với khoá π):

“mfzsxdazygfz”

Dễ xác định được π-1

, và do đó từ bản mã ta tìm được bản rõ

Mã thay thế có tập hợp khoá khá lớn bằng số các hoán vị trên bảng chữ cái, tức

số các hoán vị trên Z26, hay là 26! > 4 x 1026 Việc duyệt toàn bộ các hoán vị để thám

mã là rất khó, ngay cả đối với máy tính Tuy nhiên, bằng phương pháp thống kê, ta

có thể dễ dàng thám được các bản mã loại này, và do đó mã thay thế cũng không dễ dàng thám được các bản mã loại này, và do đó mã thay thế cũng không thể được xem

là an toàn

1.2.3 Mã Anffine

MDV là một trường hợp đặc biệt của MTT chỉ gồm 26 trong số 26! các hoán

vị có thể của 26 phần tử Một trường hợp đặc biệt khác của MTT là mã Affine được

mô tả dưới đây Trong mã Affine, ta giới hạn chỉ xét các hàm mã có dạng:

e(x) = ax + b mod 26,

a, b  Z26 Các hàm này được gọi là các hàm Affine (chú ý rằng khi a = 1, ta có MDV)

Để việc giải mã có thể thực hiện được, yêu cầu cần thiết là hàm Affine phải là đơn ánh Nói cách khác, với bất kỳ y Z26, ta muốn có đồng nhất thức sau:

ax + b  y (mod 26)phải có nghiệm x duy nhất Đồng dư thức này tương đương với:

Trang 18

Vì 26 = 2 x 13 nên các giá trị a Z26 thoả mãn UCLN(a, 26) = 1 là a = 1, 3, 5, 7, 9,

11, 13, 15, 17, 19, 21, 23 và 25 Tham số b có thể là một phần tử bất kỳ trong Z26 Như vậy, mã Affine có 13 x 25 = 325 (vì k = 0 bị loại) khoá có thể (dĩ nhiên con số này quá nhỏ để bảo đảm an toàn)

Bây giờ ta sẽ xét bài toán chung với modulo m Ta cần một định nghĩa khác trong lý thuyết số

1.2.3.2 Định nghĩa (hàm Euler)

Giả sử a 1 và m 2 là các số nguyên UCLN(a,m) = 1 thì ta nói rằng a và m là

được ký hiệu là (m) ( hàm này được gọi là hàm Euler)

Một kết quả quan trọng trong lý thuyết số cho ta giá trị của (m) theo các thừa số trong phép phân tích theo luỹ thừa các số nguyên tố của m (Một số nguyên p 1 là số nguyên tố nếu nó không có ước dương nào khác ngoài 1 và p Mọi số nguyên m >1 có thể phân tích được thành tích của các luỹ thừa các số nguyên tố theo cách duy nhất Ví

Trang 19

Định lý này cho thấy rằng, số khoá trong mã Affine trên Zm bằng m x (m), trong đó(m) được cho theo công thức trên (Số các phép chọn của b là m và số các phép chọn của a là (m) với hàm mã hoá là e(x) = ax + b)

Ví dụ, khi m = 60, m=2×2×3×5=22×31×51=> (60) = (22-21)( 31-30)(51-50) = 16 và

số các khoá trong mã Affine là: 16 x 60=960

Một vài tính chất đáng lưu ý của hàm Euler( ).

(a) Nếu p là số nguyên tố thì (p) = p-1

(b) Nếu p, q là hai số nguyên tố khác nhau Khi đó,

(p.q)= (p) (q) = (p-1)(q-1) (c) Giả sử m, n là hai số nguyên dương tùy ý sao cho UCLN(m, n)=1 (tức m, n nguyên tố cùng nhau) Khi đó,(m,n) = (m).(n)

Ví dụ m = 15, n = 16 Khi đó (m,n) = (15,16) = (15).(16) = 8.8 = 64

(d) Nếu m = pk với p là số nguyên tố, thì (m) = (pk) = pk-1(p-1)

Từ đó suy ra rằng (2) =1, (1) = 0

1.2.3.3 Định nghĩa (phần tử nghich đảo trong phép nhân)

Giả sử a Z m Phần tử nghịch đảo (theo phép nhân) của a là phần tử a -1Z m sao cho

aa -1 a -1 a 1 (mod m).

Bằng các lý luận tương tự như trên, có thể chứng tỏ rằng a có nghịch đảo theo modulo m khi và chỉ khi UCLN(a, m) =1, và nếu nghịch đảo này tồn tại thì nó phải là duy nhất Ta cũng thấy rằng, nếu b = a -1 thì a = b -1 Nếu p là số nguyên tố thì mọi phần tử khác không của Z P đều

có nghịch đảo Một vành trong đó mọi phần tử khác 0 đều có nghịch đảo được gọi là một trường

Bằng phương pháp thử và sai ta có thể tìm được các nghịch đảo của các phần tử nguyên

tố cùng nhau với 26: 1 -1 = 1, 3-1 = 9, 5-1 = 21, 7-1 = 15, 11-1 = 19, 17-1 =23, 25-1 = 25 (Có thể dễ dàng kiểm chứng lại điều này, ví dụ: 7 x 15 = 105 1 mod 26, bởi vậy 7-1 = 15).Xét phương trình đồng dư y  ax+b (mod 26)

Phương trình này tương đương với:

ax  y - b ( mod 26)

Trang 20

Vì UCLN(a, 26) =1 nên a có nghịch đảo theo modulo 26 Nhân cả hai vế của đồng dư thức với a-1 ta có:

a-1(ax)  a-1(y-b) (mod 26)

Áp dụng tính kết hợp của phép nhân modulo:

a-1(ax)  (a-1a)x 1xx

Kết quả là x a-1(y-b) (mod 26) Đây là một công thức tường minh cho x Như vậy hàm giải mã là:

d(y) = a-1(y-b) mod 26

Thuật toán Euclide mở rộng :

Bổ đề : Nếu UCLN(m,n) = k thì tồn tại 2 số nguyên x, y sao cho mx + ny = k

Thuật toán Euclide mở rộng cho phép tìm được cả 3 số x, y, k khi điều kiện của bồ đề được thỏa mãn.

Sau đây là nội dung của thuật toán Euclide mở rộng:

Cho m, n là hai số nguyên dương

Ta hãy tìm x, y, k sao cho mx + ny = k

Đầu vào (input): m, n (giả sử m>n)

Trang 21

Chú ý : số trong ô a2 chính là nghịch đảo của 8 mod 95 (tức số y là nghịch đảo của n theo module m) (Trong trường hợp k=1).

Thật vậy ta có 12 x 8 ≡ 1 mod 95 Do đó từ định nghĩa đồng dư là nghịch đảo của 8 theo module 95 (vì UCLN(8, 95) =1 nên tồn tại nghịch đảo của 8 theo mod 95)

Ở đây, tất cả các phép toán đều thực hiện trên Z 26 Ta sẽ kiểm tra liệu d K (e K (x)) =

x với mọi x  Z 26 không? Dùng các tính toán trên Z 26 , ta có:

dK(eK(x)) = dK(7x+3)

=15(7x+3)-19

= x +45 -19

= x

Để minh hoạ, ta hãy mã hoá bản rõ "hot" Trước tiên biến đổi các chữ h, o, t

thành các thặng dư theo modulo 26 Ta được các số tương ứng là 7, 14 và 19 Bây giờ sẽ mã hoá:

Trang 22

7 x 7 +3 mod 26 = 52 mod 26 = 0

7 x 14 + 3 mod 26 = 101 mod 26 =23

7 x 19 +3 mod 26 = 136 mod 26 = 6Bởi vậy 3 ký hiệu của bản mã là 0, 23 và 6 tương ứng với xâu ký tự AXG.

Việc thử tất cả các khoá để thám mã trong trường hợp này tuy khá mất thì giờ nếu tính bằng tay nhưng không khó khăn gì nếu dùng máy tính

Do vậy, mã Apphin cũng không phải là mã an toàn

các phép cộng phép trừ đều lấy theo modulo 26

Hình 1.5 Phương pháp mã hóa Vigenere

Ví dụ: Giả sử m = 6 và khoá k là từ CIPHER - tức k = (2, 8, 15, 7, 4, 17)

Từ bản mã đó, dùng phép giải mã dk tương ứng, ta lại thu được bản rõ Chú ý:

Mã Vigenere với m = 1 sẽ trở thành mã Dịch chuyển

Tập hợp các khoá trong mã Vigenere mới m ≥ 1 có tất cả là 26m khoá có thể có Với m = 6, số khoá đó là 308.915.776, duyệt toàn bộ chừng ấy khóa để thám

mã bằng tính thì khó, nhưng với máy tính thì vẫn là điều dễ dàng

Trang 23

1.2.5 Mật mã Hill

1.2.5.1 Khái niệm

Giả sử m là một số nguyên dương, đặt P = C = (Z26)m Ý tưởng ở đây là lấy

m tổ hợp tuyến tính của m ký tự trong một phần tử của bản rõ để tạo ra m ký tự ở một phần tử của bản mã

Ví dụ nếu m = 2 ta có thể viết một phần tử của bản rõ là x = (x1, x2) và một phần tử của bản mã là y = (y1, y2) Ở đây, y1cũng như y2 đều là một tổ hợp tuyến tính của

x1và x2 Chẳng hạn, có thể lấy

y1 = 11x1+ 3x2y2 = 8x1+ 7x2Tất nhiên có thể viết gọn hơn theo ký hiệu ma trận như sau:

Nói chung, có thể lấy một ma trận K kích thước m x m làm khoá Nếu một phần tử ở hàng

i và cột j của K là ki,j thì có thể viết K = (ki,j), với x = (x1, x2, ,xm) P và K K , ta tính

y = eK(x) = (y1, y2, ,ym) như sau:

m m

ma trận A-1 sao cho AA-1 = A-1A = Im Không phải mọi ma trận đều có nghịch đảo, nhưng nếu tồn tại thì nó duy nhất

Trang 24

Với các định nghĩa trên, có thể dễ dàng xây dựng công thức giải mã đã nêu: Vì y =

xK, ta có thể nhân cả hai vế của đẳng thức với K-1 và nhận được:

yK-1 = (xK)K-1 = x(KK-1) = xIm = x

1.2.5.3 Định nghĩa (Định thức của ma trận)

Định thức của ma trận A = (a i, j ) cấp 2 x 2 là giá trị det A = a 1,1 a 2,2 - a 1,2 a 2,1

Một ma trận có nghịch đảo khi và chỉ khi định thức định thức của nó khác 0 Tuy nhiên trên Z26 một ma trận K có nghịch đảo khi và chỉ khi UCLN(det K, 26) = 1

3 7 = 77 - 24 mod26 53 d26 1

Những phương pháp mã hóa nêu trên đều dựa trên ý tưởng chung: thay thế mỗi

ký tự trong thông điệp nguồn bằng một ký tự khác để tạo thành thông điệp đã được

mã hóa.Ý tưởng chính của phương pháp mã hóa hoán vị (Permutation) là vẫn giữ

Trang 25

nguyên các ký tự trong thông điệp nguồn mà chỉ thay đổi vị trí các ký tự, nói cách khác thông điệp nguồn được mã hóa bằng cách sắp xếp lại các ký tự trong đó

Chọn số nguyên dương m Đi ̣nh nghĩa:

P = C = (Z 26)m và K là tâ ̣p hợp các hoán vi ̣ của m phần tử {1, 2, , m}

Vớ i mỗi khóa  K, định nghĩa:

Giả sử m = 6 và khoá là phép hoán vị = (1 2 3 4 5 6)

Khi đó phép hoán vị ngược -1 sẽ là: -1 = (1 2 3 4 5 6)

Bây giờ giả sử có bản rõ

EESLSH SALSES LSHBLE HSYEET HRAEOS

Để giải bản mã này ta dùng phép hoán vị -1

Phương pháp mã hóa hoán vị là một trường hợp đặc biệt của mã hóa Hill Với mỗi hoán vị  của tập hợp {1, 2, …, m}, ta xác định ma trận k= (ki,j) theo công thức:

(ma trận hoán vị là ma trận trong đó mỗi hàng và mỗi cột chỉ có một số "1", còn tất

cả các giá trị khác đều là số "0" Ta có thể thu được một ma trận hoán vị từ ma trận đơn vị bằng cách hoán vị các hàng hoặc cột)

Trang 26

Dễ dàng thấy rằng, phép mã Hill dùng ma trận Ktrên thực tế tương đương với phép mã hoán vị dùng hoán vị Hơn nữa 1

* Có hai cách tiếp cận tấn công mã đối xứng

Tấn công dùng thuật toán: dựa trên thuật toán và một số đặc trưng chung về bản rõ hoặc một số mẫu bản rõ/bản mã Kiểu tấn công này nhằm khai phá các đặc trưng của thuật toán để tìm bản rõ cụ thể hoặc tìm khóa

Tấn công duyệt toàn bộ: kẻ tấn công tìm cách thử mọi khóa có thể trên bản mã cho đến khi nhận được bản rõ Trung bình cần phải thử một nửa số khóa

* Các kiểu tấn công thám mã

Biết thuật toán và bản mã, dùng phương pháp thống kê, xác định bản rõ Biết thuật toán, biết được bản mã/bản rõ tấn công tìm khóa

Chọn bản rõ và nhận được bản mã, biết thuật toán tấn công tìm khóa

Chọn bản mã và có được bản rõ tương ứng, biết thuật toán tấn công tìm khóa…

1.3 Các phương pháp mã hóa đối xứng

Trang 27

Trong phương pháp DES, kích thước khối là 64 bit DES thực hiện mã hóa dữ liệu qua 16 vòng lặp mã hóa, mỗi vòng sử dụng một khóa chu kỳ 48 bit được tạo ra từ khóa ban đầu có độ dài 56 bit DES sử dụng 8 bảng hằng số S-box để thao tác

Quá trình mã hóa của DES có thể tóm tắt như sau : Biểu diễn thông điệp nguồn

x P bằng dãy 64 bit Khóa k có 56 bit Thực hiện mã hóa theo 3 giai đoạn :

1) Với bản rõ x cho trước có độ dài 64 bit, tạo ra một xâu x0 bằng cách hoán vị các bít của x theo phép hoán vị cố định ban đầu IP (Initial Permutation)

Biểu diễn x0 = IP(x) = L0R0,

Trong đó, L0 gồm 32 bit bên trái của x0,R0 gồm 32 bit bên phải của x0

2) Thực hiện 16 vòng lặp từ 64 bit thu được và 56 bit của khóa k (chỉ sử dụng 48 bit của khóa k trong mỗi vòng lặp) 64 bit kết quả thu được qua mỗi vòng lặp sẽ là đầu vào cho vòng lặp sau Các cặp từ 32 bit Li, Ri (với 1 ≤ i ≤ 16 ) được xác định theo quy tắc sau:

Li=Ri-1

Ri=Li-1 f(Ri-1, Ki) Với  biểu diễn phép toán XOR trên hai dãy bit, K1, K2, , K16 là các dãy 48 bit phát sinh từ khóa K cho trước (Trên thực tế, mỗi khóa Ki được phát sinh bằng cách hoán vị các bit trong khóa K cho trước)

3) Áp dụng hoán vị ngược IP-1 đối với dãy bit R16L16, thu được từ y gồm 64 bit Như vậy, y=IP-1 (R16L16)

Hàm f được sử dụng ở bước 2 là hàm số gồm 2 tham số: Tham số thứ nhất A là một dãy 32 bit , tham số thứ hai J là một dãy 48 bit Kết quả của hàm f là một dãy 32 bit Các bước xử lý của hàm f (A, J) như sau:

Tham số thứ nhất A (32 bit) được mở rộng thành dãy 48 bit được phát sinh từ A bằng cách hoán vị theo một thứ tự nhất định 32 bit của A, trong đó có 26 bit của A được lặp lại 2 lần trong E (A)

Thực hiện phép toán XOR cho hai dãy 48 bit E(A) và J, ta thu được một dãy 48 bit B Biểu diễn B thành từng nhóm 6 bit như sau: B=B1 B2 B3 B4 B5 B6 B7 B8 Sử dụng 8 ma trận S1, S2, , S8 mỗi ma trận Si có kích thước 4 x16 và mỗi dòng của ma trận nhận đủ 16 giá trị từ 0 đến 15 Xét dãy gồm 6 bit Bj= b1 b2 b3 b4 b5 b6, Sj(Bj)

Trang 28

được xác định bằng giá trị của phần tử tại dòng r cột c của Sj, trong đó, chỉ số dòng r

có biểu diễn nhị phân là b1 b6 , chỉ số cột c có biểu diễn nhị phân là b2 b3 b4 b5 Bằng cách này, ta xác định được các dãy 4 bit Cj = Sj(Bj), 1 ≤ j ≤ 8

Tập hợp các dãy 4 bit Cj lại, ta có được dãy 32 bit C = C1 C 2 C3 C4 C5 C6 C7 C8 Dãy 32 bit thu được bằng cách hoán vị C theo một quy luật P nhất định chính là kết quả của hàm F(A,J)

Quá trình giải mã chính là thực hiện theo thứ tự đảo ngược tất cả các thao tác của quá trình mã hóa

1.3.2 Hệ mã hóa AES

Vào năm 2000, cơ quan quản lý về chuẩn và công nghệ của Mỹ, NIST

(National Institute of Standard and Technology), đã tổ chức một cuộc thi để chọn một hệ mật mã mới thay thế cho DES Hệ mã Rijndael đã được chọn và được công

bố (2002) như là chuẩn mật mã mới thay thế cho DES, với tên gọi là Advanced Encryption Standard (AES) Vào đến vòng trong còn có các ứng viên khác là RC6, Serpent, MARS và Twofish Hệ mã này được phát triển bởi 2 nhà khoa học Bỉ, Joan Daemen và Vincent Rijnmen (vì vậy tên gọi Rijndael được tạo ra từ việc ghép tiền

tố tên họ 2 ông này)

AES được xây dựng trên nguyên lý thiết kế lưới giao hoán – thay thế (substitution-permutation network) Đây là một hệ mã có tốc độ tốt trong cả cài đặt phần mềm cũng như phần cứng Khác với DES, AES không theo mẫu thiết kế mạng Feistel Thay vào đó các thao tác cơ bản được thực hiện trên các khối ma trận dữ liệu 4*4 (bytes), được gọi là các trạng thái (state) Số vòng lặp của AES là một tham

số xác định trên cơ sở kích thước khóa: 10 vòng lặp cho khóa 128bit, 12 cho 192

bit, 14 cho 256bit

1.3.3 Hệ mã hóa IDEA

Thuật toán IDEA (International Encryption Algorihm) được mô tả như sau:

IDEA là phương pháp mã khối sử dụng 128 bit khoá để mã khối dữ liệu 64 bit IDEA được xây dựng nhằm mục đích kết hợp với nhiều yếu tố khác để tăng độ

an toàn và khả năng thực hiện Từ khi mới được công bố thì thuật toàn này đều là đối tượng quan tâm của các nhà phân tích mật mã (mã thám), và không ai có thể đảm bảo được mức độ chắc chắn, sự an toàn của thuật toán này cung cấp và cũng

Trang 29

không ai có thể bảo đảm rằng việc tấn công hay đột phá vào thuật toán này là không thể thành công Một ngày nào đó, cho dù có đột phá được thì người ta cũng không

hề công bố Tuy nhiên, với điều kiện kỹ thuật như hiện nay thì điếu đó vẫn khó có thể xảy ra

Trong IDEA sự phân bố được tạo ra dựa trên khối thuật toán có cấu trúc như hình

vẽ gọi là cấu trúc MA( Multiplication/Additio) trong hình sau:

Hình 1.8 Cấu trúc Multiplication/Additio (MA)

Khối này nhận 16 bit từ bản rõ và 16 bit được lấy từ khoá ra theo một quy tắc nào đó ( 16 bit này được gọi là subkey và quy tắc lấy subkey từ khoá sẽ được trình bày ở sau) để tạo ra 16 bit đầu ra Một chương trình kiểm tra trên máy tính bằng phương pháp vét cạn xác định rằng mỗi bit ở đầu ra phụ thuộc vào các bít rõ

và bit subkey đầu vào Cấu trúc này được sử dụng lặp lại 8 lần trong thuật toán và tạo nên một sự phân bố có hiệu qủa

IDEA được xây dựng sao cho việc thực hiện nó được dễ dàng cả trên phần cứng và phần mềm Việc thực hiện trên phần cứng, điển hình là trên vi mạch VLSI

(VLSI: mạch tích hợp cao), được thiết kế để đạt được tốc độ cao

Trang 30

1.4 Hệ mã hóa đồng cấu

1.4.1 Định nghĩa

1.4.1.1 Định nghĩa đồng cấu trong toán học

Trong đại số, đồng cấu là phép ánh xạ bảo toàn cấu trúc giữa hai cấu trúc đại

số (ví dụ như các nhóm, vành hoặc không gian vector)

Định nghĩa đồng cấu:

Cho (G, *) và (H, ο) là các nhóm, một đồng cấu là một hàm f: G  H nếu: f(x*y) = f(x) ο f(y) với mọi x, y  G Các tính chất của ánh xạ G so với tính chất của

G và ngược lại được bảo toàn

Cấu trúc đại số có thể được bảo tồn không chỉ có một phép tính, một đồng cấu cần bảo tồn nhiều phép tính

1.4.1.2 Định nghĩa hệ mã hoá đồng cấu

Hệ mã hóa đồng cấu được sử dụng để giúp thực hiện các phép toán trên dữ liệu đã được mã hóa mà không cần giải mã chúng (không có khóa bí mật), người dùng là chủ sở hữu duy nhất của khóa bí mật

Định nghĩa: Một mã hóa được gọi là đồng cấu khi: từ Enc(a) và Enc(b) có

thể tính toán Enc(f (a, b)), với f là các phép tính +, *,  và không sử dụng khóa riêng

Hệ mã hóa chỉ thực hiện một phép tính là phép cộng (hệ mã hóa Pailler, Goldwasser - Micalli), phép nhân (hệ mã hóa ElGamal, RSA)

1.4.2 Hệ mã hoá đồng cấu cộng

Một hệ mã hóa coi là đồng cấu cộng nếu: Enc (xy) = Enc(x) Enc(y)

Ví dụ: Giả sử thuật toán mã hóa Paillier với khoá công khai modulo m và cơ sở g,

x

Trang 31

Với ngẫu nhiên r  0, .,  m1

Suy ra, hệ mã hóa Paillier có tính chất cộng của hệ mã hóa đồng cấu

1.4.3 Hệ mã hoá đồng cấu nhân

Một hệ mã hoá coi là đồng cấu nhân nếu: Enc (x⊗y) = Enc(x) ⊗ Enc(y)

Ví dụ 1: Thuật toán mã hóa công khai RSA modulo m và mũ e, khi đó mã hoá

thông điệp x được cho bởi: ( ) = mod me

Khi đó :  ( ) ( ) = mod m = x1  x2 xex x1 2e mod m = (  x1 x2)

Suy ra, hệ mã hóa RSA có tính chất của hệ mã hóa đồng cấu nhóm nhân

Ví dụ 2: Thuật toán mã hóa ElGamal với một nhóm G Nếu khoá công khai là (G,

q, g, h), với h = g x và x là khoá bí mật, thì mã hoá thông điệp m được xác định:

(g ,

= (g ,

r r r r k

h

Trang 32

Phương pháp DES mã hóa một bản tin x :

Input: Bản rõ M = m1m2 … m64,là mô ̣t khối 64 bit,

Khóa K = k1k2 k64 (K= 64 bao gồm cả 8 bit chẵn lẻ, viê ̣c thêm bit chẵn lẻ sao cho các đoa ̣n khóa 8 bit có số bit 1 là lẻ)

Output: Bản mã 64 bit C = c1 c2 … c64

Quá trình mã hóa của DES có thể tóm tắt như sau : Biểu diễn thông điệp nguồn

x P bằng dãy 64 bit Khóa k có 56 bit Thực hiện mã hóa theo 3 giai đoạn :

1) Với bản rõ x cho trước có độ dài 64 bit, tạo ra một xâu x0 bằng cách hoán vị các bít của x theo phép hoán vị cố định ban đầu IP (Initial Permutation)

Biểu diễn x0 = IP(x) = L0R0,

Trong đó, L0 gồm 32 bit bên trái của x0,R0 gồm 32 bit bên phải của x0

32 32

X0

Hình 2.1 Biểu diễn dãy 64 bit x thành 2 thành phần L và R

2) Thực hiện 16 vòng lặp từ 64 bit thu được và 56 bit của khóa k (chỉ sử dụng 48 bit của khóa k trong mỗi vòng lặp) 64 bit kết quả thu được qua mỗi vòng lặp sẽ là đầu vào cho vòng lặp sau Các cặp từ 32 bit Li, Ri (với 1 ≤ i ≤ 16 ) được xác định theo quy tắc sau:

Trang 33

Li = Ri-1

Ri=Li-1 f(Ri-1, Ki)

Trong đó,  biểu diễn phép toán XOR trên hai dãy bit, K1, K2, , K16 là các dãy

48 bit phát sinh từ khóa K cho trước ( Trên thực tế, mỗi khóa Ki được phát sinh bằng cách hoán vị các bit trong khóa K cho trước)

Hình 2.2 Quy trình phát sinh dãy L i R i từ dãy L i-1 R i-1 và khóa K i

3) Áp dụng hoán vị ngược IP-1 đối với dãy bit R16L16, thu được từ y gồm 64 bit

Như vậy, y = IP-1 (R16L16)

2.1.2 Quá trình mã hóa

Chia làm 3 giai đoạn

2.1.2.1 Giai đoạn 1: Cách tính biến x 0

Hoán vị biến x theo phép hoán vị ban đầu IP(X)

Trang 34

Điều này có nghĩa là bit thứ 58 của x là bit đầu tiên của IP(x); bit thứ 50 của x

là bit thứ hai của IP(x); bít ở vị trí thứ 7 là bít cuối của IP(x)

2.1.2.2 Giai đoạn 2

Cách tính LiRi Để tính LiRi trước hết ta phải xác định hàm f

1) Các biến trong hàm f: có 2 biến vào

+ Biến thứ nhất A là xâu bít độ dài 32,

+ Biến thứ hai J là xâu bít độ dài 48,

+ Đầu ra của hàm f là một xâu bít độ dài 32

Hàm f thực hiện theo các bước sau:

Bước 1: Xác định biến thứ nhất (biến A):

Xâu bít của Ri-1 được mở rộng thành một xâu bít có độ dài 48 theo một hàm

mở rộng cố định E

Hi ̀nh 2.3 Sơ đồ của hàm mở rộng

Trang 35

Bước 2: Xác định biến thứ hai (biến J):

Biến j thực chất là phép hoán vị và dịch vòng của xâu bít khóa k

Mười sáu vòng lă ̣p DES cha ̣y cùng thuật toán như nhau nhưng với 16 khóa con khác nhau Các khóa con đều được sinh ra từ khóa chính của DES bằng mô ̣t thuật toán sinh khóa con

Hình 2.4 Sơ đồ tạo khóa con

Theo sơ đồ trên việc xác định Ki được thực hiện theo 3 bước sau:

Bước 1: Với khóa k có độ dài 64 bít, cho trước hoán vị các bít của K theo

phép hoán vị cố định PC-1 Ta viết: PC – 1 (K) = C0D0,

Trang 36

Khi thực hiện hoán vị K theo PC – 1 thì chỉ còn lại 56 bít Trong đó C0 là 28 bít đầu và D0 là 28 bít cuối

+ Với i= 1, 2, 9, 16 dịch trái 1 bước,

+ Với i còn lại dịch trái 2 bước

Vòng lặp 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Số bít dịch 1 1 2 2 2 2 2 2 1 2 2 2 2 2 2 1

Ba ̉ng 2.4 Bảng di ̣ch bit tại các vòng lặp của DES

Bước 3: Sau khi tìm được Ci Di ta thực hiện phép hoán vị PC – 2 thu được Ki

Ngày đăng: 26/07/2017, 15:19

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[4] Trần Đình Vương, Nguyễn Ngọc Cương, Hồ Văn Canh, “phương pháp trao đổi khóa mã đối xứng không sử dụng mật mã khóa bất đối xứng”. Hội thảo quốc gia lần thứ VIII: Nghiên cứu cơ bản và ứng dụng Công Nghệ thông tin (FAIR)- Hà Nội, 7- 9/07/2015Tiếng Anh Sách, tạp chí
Tiêu đề: “phương pháp trao đổi khóa mã đối xứng không sử dụng mật mã khóa bất đối xứng
[5] Alfred J. Menezes, Paul C. van Oorschot, Scott A. Vanstone 2000, " Hanhdbook of Applied Cryptography". CRC Press Boca Raton – Newyork – London - Tokyo Sách, tạp chí
Tiêu đề: Hanhdbook of Applied Cryptography
[6] A. Menzes, M. Qu, and S. Vanstone, " Some new key agreement protocols providing implicit authentication". Ottawa, Canada, 1995 Sách, tạp chí
Tiêu đề: Some new key agreement protocols providing implicit authentication
[7] Claude E. SHANNON “Collected Papers”, Edited by N.J.A. Sloane, Aaron D. Wyner. IEEE Press Sách, tạp chí
Tiêu đề: Collected Papers
[8] Caxton C.foster University of Massachusets 1986: “Cryptanalysis for Microcomputers” Sách, tạp chí
Tiêu đề: Cryptanalysis for Microcomputers
[9] Doughlas R. Stison, " Cryptography: Theory and Practices ". CRC Press 1999 Sách, tạp chí
Tiêu đề: Cryptography: Theory and Practices
[10] FIPS, " Key management using ANSI X9,17 " Federal Information Proceeding. Standards Publication 171. U.S. Department of Commerce /N.I.S.T Sách, tạp chí
Tiêu đề: Key management using ANSI X9,17
[11] M. Bellare and P. Rogaway, " Provably Secure Session Key Distribution". Proceedings of The 27th Annal ACM Symposium Sách, tạp chí
Tiêu đề: Provably Secure Session Key Distribution
[12] Michael R.A. Huth, " Secure communicating Systems". Cambridge University Press, 2001 Sách, tạp chí
Tiêu đề: Secure communicating Systems
[13] R. Blom, "Non-public key distribution". Advances in Cryptology- Proceedings of Crypto-o3 Sách, tạp chí
Tiêu đề: Non-public key distribution
[14] Phil Zimmermann, " Protect Your Privacy", 2013 Sách, tạp chí
Tiêu đề: Protect Your Privacy

HÌNH ẢNH LIÊN QUAN

Hình 1.1. Kênh liên lạc - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 1.1. Kênh liên lạc (Trang 13)
Hình 1.8 Cấu trúc Multiplication/Additio (MA) - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 1.8 Cấu trúc Multiplication/Additio (MA) (Trang 29)
Hình 2.2 Quy trình phát sinh dãy L i  R i   từ dãy L i-1  R i-1  và khóa  K i - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.2 Quy trình phát sinh dãy L i R i từ dãy L i-1 R i-1 và khóa K i (Trang 33)
Hình 2.4 Sơ đồ tạo khóa con - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.4 Sơ đồ tạo khóa con (Trang 35)
Hình 2.5 Hàm f - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.5 Hàm f (Trang 37)
Hình 2.6 Quá trình mã hóa DES - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.6 Quá trình mã hóa DES (Trang 41)
Hình 2.7 Sơ đồ giải mã - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.7 Sơ đồ giải mã (Trang 47)
Hình 2.8 Cấu trúc Multiplication/Additio (MA) - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.8 Cấu trúc Multiplication/Additio (MA) (Trang 53)
Hình 2.9 Cấu trúc IDEA - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.9 Cấu trúc IDEA (Trang 54)
Hình 2.10 Cấu trúc một modul (Modul 1)  Hàm biến ở cuối cùng ta cũng có thể coi như một modul thứ 9 - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.10 Cấu trúc một modul (Modul 1) Hàm biến ở cuối cùng ta cũng có thể coi như một modul thứ 9 (Trang 55)
Hình 2.11  Hàm biến đổi của IDEA - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.11 Hàm biến đổi của IDEA (Trang 56)
Hình 2.12 Mã hoá và giải mã trong IDEA . - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.12 Mã hoá và giải mã trong IDEA (Trang 58)
Hình 2.13 Cấu trúc một modul (Modul 1) - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 2.13 Cấu trúc một modul (Modul 1) (Trang 60)
Hình 3.1: Mã hóa thông điệp - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 3.1 Mã hóa thông điệp (Trang 68)
Hình 3.2: Giải mã thông điệp - Nghiên cứu tìm hiểu hệ mã hóa đồng cấu và ứng dụng (LV thạc sĩ)
Hình 3.2 Giải mã thông điệp (Trang 70)

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm