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

Mật mã dữ liệu ảnh ứng dụng kỹ thuật hỗn loạn

154 18 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 154
Dung lượng 6,59 MB

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

Nội dung

Từ nửa sau của thế kỷ 20 cho đến nay, hỗn loạn đượcnghiên cứu rộng rãi và được đưa vào ứng dụng trong thực tế như phân tích tín hiệu,mật mã....Lý do khiến các lĩnh vực động học phi tuyến

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO

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

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO

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

LUẬN ÁN TIẾN SĨ KỸ THUẬT ĐIỆN TỬ

NGƯỜI HƯỚNG DẪN KHOA HỌC:

1 PGS.TS HOÀNG MẠNH THẮNG

HÀ NỘI - 2020

Trang 3

LỜI CAM ĐOAN

Tôi xin cam đoan các kết quả trình bày trong Luận án là công trình nghiên cứu củatôi dưới sự hướng dẫn của PGS.TS Hoàng Mạnh Thắng Các số liệu, kết quả trìnhbày trong luận án là hoàn toàn trung thực và chưa được công bố trong bất kỳ côngtrình nào trước đây Các kết quả sử dụng tham khảo đã được trích dẫn đầy đủ và theođúng quy định

Trang 4

Xin cám ơn rất nhiều!

Trang 5

Mục lục

Trang

1.1 Giới thiệu 8

1.2 Mật mã hiện đại và phân loại .8

1.2.1 Định nghĩa 8

1.2.2 Phân loại mật mã 9

1.3 Hệ thống hỗn loạn 12

1.3.1 Hệ hỗn loạn liên tục theo thời gian 12

1.3.2 Hệ hỗn loạn rời rạc theo thời gian .13

1.3.2.1 Hàm Logistic 14

1.3.2.2 Hàm Henon 14

1.3.2.3 Hàm Cat 15

1.3.2.4 Hàm hỗn loạn Cat-Hadamard 15

1.3.2.5 Hàm Standard .16

1.3.2.6 Hàm Skew tent 16

1.3.2.7 Hàm Chebyshev 17

1.3.2.8 Hàm hỗn loạn không gian-thời gian 17

1.4 Các thuộc tính của hàm hỗn loạn phù hợp cho ứng dụng trong mật mã 17

1.4.1 Các thuộc tính cơ bản 17

1.4.2 Các tham số và tính chất của hàm hỗn loạn dùng trong mật mã 19

1.5 Tạo chuỗi ngẫu nhiên dùng hàm hỗn loạn .21

1.5.1 Tạo chuỗi bit ngẫu nhiên 22

1.5.2 Tạo chuỗi số giả ngẫu nhiên 23

1.5.3 Một số chú ý khi thiết kế phần cứng cho các hàm hỗn loạn .24

1.6 Ảnh số và các đặc điểm 25

1.6.1 Biểu diễn ảnh số .25

1.6.2 Các đặc trưng của dữ liệu ảnh 26

Trang 6

1.7 Kết luận 28

Chương 2: MẬT MÃ ẢNH Ở MỨC BIT ỨNG DỤNG KỸ THUẬT HỖN LOẠN 30 2.1 Giới thiệu 30

2.2 Mô hình mật mã cấu trúc SPN .31

2.2.1 Hoán vị các điểm ảnh sử dụng hỗn loạn 33

2.2.1.1 Các cơ chế hoán vị dữ liệu cho ảnh 34

2.2.1.2 Luật hoán vị dựa vào biến trạng thái 34

2.2.1.3 Luật hoán vị dựa vào đặc tính động của hàm hỗn loạn rời rạc 38 2.2.1.4 Đánh giá hiệu năng của phép hoán vị 40

2.2.2 Phép thay thế sử dụng hỗn loạn 43

2.2.2.1 Phép thay thế không tạo ra lan truyền .43

2.2.2.2 Thay thế có lan truyền 45

2.3 Đề xuất các hệ mật mã hỗn loạn làm việc ở mức bit 46

2.3.1 Đề xuất 1: Hệ mật mã dựa trên tác động lên đặc tính động của hàm hỗn loạn 47

2.3.1.1 Bộ mật mã 48

2.3.1.2 Bộ giải mật mã 51

2.3.1.3 Kết quả mô phỏng 52

2.3.1.4 Phân tích khả năng bảo mật 52

2.3.1.5 Kết quả thiết kế mạch cứng 57

2.3.2 Đề xuất 2: Hệ mật mã hỗn loạn cho ảnh ở mức bit 64

2.3.2.1 Giải thuật mật mã dùng hàm hỗn loạn Cat-Hadamard 65

2.3.2.2 Giải thuật giải mật 66

2.3.2.3 Chi phí tính toán 67

2.3.2.4 Giải thuật phân phối khóa 67

2.3.2.5 Phân tích khả năng bảo mật 68

2.4 Kết luận 72

Chương 3: PHÂN TÍCH MẬT MÃ HỖN LOẠN CÓ CẤU TRÚC SPN 74 3.1 Giới thiệu 74

3.2 Một số qui ước trong phân tích mã 76

3.3 Mô tả hệ mật mã hỗn loạn được đề xuất bởi W Zhang 76

Trang 7

3.4 Đề xuất 3: Phân tích hệ mật mã hỗn loạn có cấu trúc SPN với một vòng lặp

mã 80

3.4.1 Tấn công lựa chọn văn bản trơn 81

3.4.1.1 Tấn công vào quá trình hoán vị 81

3.4.1.2 Tấn công vào khuếch tán 85

3.4.2 Tấn công lựa chọn văn bản mã hóa 88

3.4.2.1 Tấn công quá trình hoán vị ngược 88

3.4.2.2 Tấn công khuếch tán ngược 92

3.4.3 Ước lượng thời gian tấn công .95

3.4.3.1 Thời gian tấn công hoán vị 95

3.4.3.2 Thời gian tấn công khuếch tán 96

3.4.4 Một số bàn luận về tấn công một vòng lặp mã 97

3.5 Đề xuất 4: Phân tích mật mã hỗn loạn có cấu trúc SPN với nhiều vòng lặp mã 98

3.5.1 Giải thuật mật mã và giải mật nhiều vòng lặp mã 98

3.5.2 Phân tích mã 100

3.5.2.1 Nhận diện điểm yếu trong hệ mật mã 101

3.5.2.2 Khôi phục luật hoán vị 105

3.5.3 Đề xuất phương pháp nâng cao bảo mật cho hệ mật mã 115

3.6 Kết luận 122

Trang 8

Danh mục các ký hiệu và chữ viết tắt

chọn một tập các văn bản mã hóa

bản mã hóa

hóa

lân cận

Standard Publication 199

Bản công bố tiêu chuẩn xử lýthông tin liên bang 199

loạn

Trang 9

IP Initial for Permutation Giá trị khởi đầu cho hoán vị

count

Phần trăm các điểm ảnh lân cận

tính

dương

Rou-tine

Thủ tục mật mã hóa nhanh và antoàn

Net-work

Mạng thay thế-hoán vị

Trang 10

VH-Danh mục các ký hiệu toán học

f(.), fi(.)

Hàm liên tục

P, C, K, E, D Biểu diễn tập hợp các văn bản trơn, văn bản mã hóa, khóa mật,

thuật toán mã hóa, và thuật toán giải mã

khóa mật, thuật toán mã hóa, và thuật toán giải mã

Trang 11

Danh sách hình vẽ

1.1 Phân loại nghiên cứu của mật mã học 9

1.2 Mật mã khóa đối xứng và bất đối xứng 10

1.3 Phân loại mật mã theo cấu trúc 11

1.4 Phân loại theo cơ sở nền tảng 12

1.5 Phân loại theo đơn vị dữ liệu được mã hóa 12

1.6 Vùng hút của hàm Henon 14

1.7 Phụ thuộc điều kiện đầu của hàm Logistic với r = 4, 0 18

1.8 Hệ số Lyapunov của hàm Logistic phụ thuộc vào r 18

1.9 Đồ hình phân nhánh của hàm Logistic phụ thuộc vào r 19

1.10 Phân bố của chuỗi giá trị được tạo từ hàm Logistic 20

1.11 Phân bố của chuỗi giá trị được tạo từ hàm Henon với a = 10 và b = 50 21

1.12 LFSR thực hiện theo hàm P (x) = x8+ x6+ x5+ x4+ 1 22

1.13 Bộ tạo chuỗi số dùng hàm hỗn loạn (nguồn: [1]) 24

1.14 Ảnh được biểu diễn dưới dạng véctơ và raster (nguồn: [2]) 26

1.15 Mô tả các lớp bit của ảnh mức xám 8 bit 27

1.16 Hàm tự tương quan của các điểm ảnh trên cùng một dòng điểm ảnh 27

1.17 Ảnh các lớp bit 28

2.1 Mật mã có cấu trúc SPN dùng hỗn loạn 32

2.2 Luật hoán vị và ví dụ hoán vị cho mảng 1D 35

2.3 Luật hoán vị ở dạng 2D 36

2.4 Ví dụ về ảnh hoán vị dùng ma trận hoán vị tạo ra bởi hàm hỗn loạn 37

2.5 Ma trận T và sự khác nhau giữa chúng trong các trường hợp số điểm đầu bỏ đi khác nhau 37

2.6 Luật hoán vị dựa trên đặc tính động của hàm hỗn loạn 39

2.7 Ánh xạ một-một của hàm 39

2.8 Phương pháp đánh giá hoán vị PAPC (nguồn: [3]) 41

2.9 Phương pháp đánh giá hoán vị DBAP (nguồn: [3]) 42

2.10 Cấu trúc bộ mật mã đề xuất 48

2.11 Cấu trúc khối CPP và CD trong hệ mật mã được đề xuất 49

2.12 Cấu trúc của iCD 51 2.13 Các ảnh bản trơn (cột bên trái) và các ảnh sau khi được mật mã (cột phải) 53

Trang 12

2.14 Thiết kế phần cứng của hàm Logistic nhiều vòng lặp 58

2.15 Thiết kế phần cứng của khối mở rộng 8 bit thành 32 bit 60

2.16 Lưu đồ thực hiện tách 8 bit từ 32 bit đầu vào 61

2.17 Lưu đồ thuật toán của khối CPP 62

2.18 Cấu trúc mạch điện tử tổng thể của khối CPP 63

2.19 Ảnh bản trơn và ảnh bản mã hóa 66

2.20 Phân bố giá trị điểm ảnh của ảnh bản trơn và ảnh bản mã hóa 66

2.21 Tương quan giữa các ảnh bản trơn và bản mã của 2.19(a) 70

2.22 Cdr của giải thuật đề xuất với ảnh Image1 71

3.1 Ảnh RGB được sắp xếp lại thành một ma trận để mật mã 77

3.2 Các bước mật mã và giải mật 77

3.3 Khôi phục luật hoán vị trong tấn công lựa chọn văn bản trơn cho vị trí (x0, y0) 82

3.4 Ví dụ tấn công vào hoán vị 84

3.5 Kết quả cuối cùng của luật hoán vị 85

3.6 Ví dụ tìm giá trị bit b0 86

3.7 Ví dụ tìm giá trị bit b5của rand2(temp2) 87

3.8 Tấn công lựa chọn văn bản trơn trên ảnh 5 × 5 89

3.9 Thủ tục khôi phục lại luật hoán vị trong tấn công bản mã hóa cho điểm ảnh tại vị trí (x0, y0) 90

3.10 Tấn công hoán vị trong lựa chọn văn bản mã hóa với kích thước ma trận mở rộng là 10 × 10 92

3.11 Tấn công lựa chọn văn bản mã hóa trên ảnh 5 × 5 95

3.12 Mật mã và giải mật (a) Các bước mật mã, (b) Các bước giải mật 99

3.13 Giải mật để khôi phục ac(i) 102

3.14 Từng bước giải mật mã để chỉ ra điểm yếu với R = 3 104

3.15 Phân tích sự lan truyền ảnh hưởng 105

3.16 Thủ tục khôi phục bảng tra cứu hoán vị tổng quát dùng trong giải mật 106

3.17 Từng bước giải mật để tìm ra điểm yếu 109

3.18 Trình bày bảng khôi phục hoán vị 110

3.19 Các nguồn ảnh hưởng lên vị trí trong giải mật 112

3.20 Phân tích sự ảnh hưởng lan truyền 115

3.21 Từng bước giải mật mã cho Trường hợp 1 với R = 3 117

3.22 Từng bước giải mật mã cho Trường hợp 2 với R = 3 118

3.23 Từng bước giải mật mã cho Trường hợp 3 với R = 3 119

Trang 13

3.24 Từng bước giải mật mã cho Trường hợp 4 với R = 3 1203.25 Giải mật mã các bản mã hóa được lựa chọn cho Trường hợp 4 với giá

3.26 Giải mật mã cho các bản mã hóa được lựa chọn cho Trường hợp 4 với

việc thêm một vòng khuếch tán với R = 3 122

Trang 14

Danh sách bảng

1.1 Mức độ quan trọng của bit ở các lớp khác nhau 28

2.1 Số bit biểu diễn dữ liệu 52

2.2 Giá trị của các tham số và số bit biểu diễn Npara 52

2.3 Thứ tự các bit được lựa chọn 53

2.4 Độ nhạy của khóa mật tính theo Cdr 55

2.5 Lượng tin trong ảnh bản mã hóa 55

2.6 Trung bình của NP CR và UACI được tính toán với 100 ảnh 56

2.7 So sánh kết quả mạch điện tạo ra và kết quả từ Matlab của hàm Logistic 58

2.8 Tài nguyên phần cứng trên FPGA cần thiết cho các khối chính 64

2.9 Các hệ số tương quan tương ứng với các ảnh bản trơn và ảnh bản mã hóa 69 2.10 Các đại lượng NP CR và UACI 70

3.1 Phát hiện giá trị bit trong b 87

3.2 Thời gian tấn công 97

3.3 Số vị trí bị thay đổi trong giải mật với R 105

3.4 Các vị trí và số lần xuất hiện 113

Trang 15

MỞ ĐẦU

Sự phát triển của cơ sở lý thuyết động học bắt đầu từ giữa thế kỷ 17 với nghiên cứu

về phương trình vi phân của Newton đưa ra để mô tả cho luật chuyển động và vạnvật hấp dẫn Ban đầu, các phương trình đó dùng để giải thích cho chuyển động củahành tinh xung quanh mặt trời; sau đó nó dùng để mô tả định luật hấp dẫn giữa haivật được tính toán giữa trái đất và mặt trời Các phương trình động học mô tả lực hấpdẫn của Newton được phát triển cho các hệ nhiều vật bởi các nhà toán học và vật lýsau này Những khó khăn trong việc mô tả chính xác hệ ba vật bằng các hệ phươngtrình vi phân ở thời kỳ thời đó đã được mở ra dần kể từ cuối thế kỷ 19 bởi nhà khoahọc người pháp tên là Henri Poincaré với các câu hỏi đặt ra và tìm câu trả lời cho mô

tả bằng hình học Poincaré cũng là người đầu tiên thấy có sự hỗn loạn (chaos) đượcsinh ra bởi hệ thống tất định, mà ở đó hệ thống phụ thuộc vào điều kiện đầu và khôngthể dự đoán dài hạn

Các nghiên cứu về động học phi tuyến được thực hiện ở mức cơ bản trong phầnđầu của thế kỷ 20 Dao động phi tuyến được nghiên cứu và ứng dụng nhiều hơn trongvật lý và kỹ thuật Các ứng dụng của dao động phi tuyến trong laser, thông tin, truyềnsóng vô tuyến được đưa ra Từ nửa sau của thế kỷ 20 cho đến nay, hỗn loạn đượcnghiên cứu rộng rãi và được đưa vào ứng dụng trong thực tế như phân tích tín hiệu,mật mã Lý do khiến các lĩnh vực động học phi tuyến và hỗn loạn được nghiên cứumạnh mẽ hơn là bởi sự phát triển của máy tính tốc độ cao Các máy tính tốc độ caođược dùng để mô hình hóa cho các hệ phương trình động học một cách dễ dàng hơn,điều mà trước đây không thể thực hiện được Cũng từ đó, các ứng dụng của động họcphi tuyến vào các vấn đề thực tế cũng được quan tâm và phát triển Ở đây, cần chú ýrằng hỗn loạn là một trạng thái làm việc của hệ thống động

Trong năm mươi năm trở lại đây, động học phi tuyến và hỗn loạn được các nhàkhoa học về toán lý phát triển và hình thành các công cụ dùng trong ứng dụng thực

tiễn Các hướng nghiên cứu về động học phi tuyến được thấy gồm: (i) phát triển các

giải thuật ứng dụng xử lý tín hiệu vào các tín hiệu được sinh ra bởi các hệ thống phứctạp nhằm tìm hiểu và khai thác các đặc trưng của hệ thống động như dự báo (thờitiết, chỉ số chứng khoán, ), nhận dạng hệ thống (nhận dạng tiếng nói, phát hiện bệnh

qua tín hiệu y sinh ), (ii) tạo ra hệ thống động tất định từ các mạch điện tử, laser, hệ

cơ khí nhằm tạo ra các ứng dụng từ đó, (iii) sử dụng tín hiệu được sinh ra từ các hệ

thống động vào các mục đích cụ thể như điều chế truyền tin, mật mã Trong hai thập

Trang 16

kỷ trở lại đây, các hướng nghiên cứu ứng dụng hiện tượng hỗn loạn trong hệ động họcphi tuyến vào mật mã được phát triển.

Trong mật mã học, nguyên tắc cơ bản được dùng để xây dựng các hệ mật mã nhằm

để đảm bảo tính mật của nội dung thông tin là dựa trên sự phức tạp của giải thuật mật

mã và giải mật mã, đồng thời dựa trên các tính chất của số học Các hệ mật mã đượcđưa về nguyên tắc này để xem xét Hơn nữa, trong kỷ nguyên số, hầu hết các ứng dụngmật mã được thực hiện trên các thiết bị số, do vậy độ dài của khóa mật được tính bằngbit và thường được xem xét như năng lực chịu đựng tấn công vét cạn của hệ mật mã.Cũng vẫn theo cách lý giải đó, mật mã ứng dụng hiện tượng hỗn loạn của hệ thống

và giải mật mã Tuy nhiên, sự phức tạp của hệ hỗn loạn được xem xét tương ứng vớibên các tính chất của số học

Luận án này đề cập đến nghiên cứu ứng dụng hiện tượng hỗn loạn của hệ thốngđộng cho mật mã ảnh Cụ thể các vấn đề liên quan đến xây dựng hệ mật mã và phântích mã được tập trung nghiên cứu

1 Mục tiêu, đối tượng và phạm vi nghiên cứu

Mục tiêu nghiên cứu:

• Nghiên cứu các phương pháp hình thành lên hệ mật mã ứng dụng hàm hỗn loạn.Khả năng chịu được các tấn công và các vấn đề liên quan đến đảm bảo tính mậtđược nghiên cứu Từ đó cho thấy các khả năng phát triển của mật mã hỗn loạn vàkhả năng ứng dụng để mật mã cho dữ liệu ảnh

• Từ các hiểu biết xung quanh các vấn đề của mật mã hỗn loạn, Luận án đề xuất

ra hệ mật mã hỗn loạn mới có khả năng chịu được các phương pháp tấn công vàphù hợp cho thiết kế trên phần cứng

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

Qua thời gian tham khảo xu hướng phát triển, Luận án đã đi đến lựa chọn đối tượng

và phạm vi nghiên cứu như sau:

- Đối tượng nghiên cứu: Luận án được hạn chế và chỉ tập trung vào các hệ mật mã

sử dụng các hàm hỗn loạn rời rạc theo thời gian Đề xuất ra hệ mật mã, giải thuật dùngcho mật mã hỗn loạn và các giải thuật phân tích các hệ mật mã hỗn loạn

- Phạm vi nghiên cứu: Hệ mật mã được quan tâm trong Luận án này là các hệ mật

mã được xây dựng theo cấu trúc Unified, tức là cấu trúc gồm các lớp S (subsitution)

1 Hệ mật mã được xây dựng dưa vào hệ hỗn loạn được gọi tắt là hệ mật mã hỗn loạn

Trang 17

và P (permutation), hay còn gọi là cấu trúc mạng thay thế-hoán vị Permutation Network: SPN) Các phương pháp đánh giá truyền thống được dùng đểđánh giá hệ mật mã hỗn loạn có cấu trúc SPN nhằm xác định khả năng chịu đựngđược các cơ chế tấn công cơ bản.

(Substitution-2 Phương pháp nghiên cứu

Luận án này được nghiên cứu dựa vào các phương pháp phân tích, mô phỏng số,

và đánh giá thống kê Trong đó:

• Phân tích lý thuyết được thực hiện với các hệ mật mã hỗn loạn đã được công bốbởi các nhà khoa học; từ đó xác định được các nội dung cần tập trung nghiên cứu

để đề xuất được mô hình mới

• Nội dung nghiên cứu lý thuyết được thực hiện thông qua mô phỏng trên máy tínhbằng phần mềm Matlab phiên bản 2016, phần mềm Altera Quartus II phiên bản

13, và phần mềm ModelSim phiên bản 6.0 để đưa ra được các kết quả phục vụcho đánh giá

• Phương pháp đánh giá thống kê được áp dụng nhằm chỉ ra hoạt động của các hệmật mã hỗn loạn được quan tâm và đưa ra các nhận định về khả năng chịu đựngtấn công

3 Tình hình nghiên cứu trong và ngoài nước

Tình hình nghiên cứu trong nước:

Hiện nay trong nước có một số nhóm nghiên cứu về mật mã theo cách tiếp cậntruyền thống, tức là dựa trên sự phức tạp về giải thuật và dựa trên các tính chất về sốhọc Các nhóm nghiên cứu chuyên sâu đó thuộc cơ quan chức năng quản lý về mật mã

là Ban Cơ yếu Chính phủ Ngoài ra, các cơ quan với chức quản lý về an toàn thông tinnhư Cục An toàn thông tin - Bộ Thông tin và Truyền thông và Bộ Tư lệnh Tác chiếnkhông gian mạng - Bộ Quốc phòng Ngoài ra, có một số nhà khoa học thuộc cáctrường đại học tham gia nghiên cứu mang tính học thuật theo hướng tiếp cận truyềnthống Một số kết quả nghiên cứu mật mã và mật mã ảnh số theo cách tiếp cận truyềnthống gồm [4, 5, 6, 7, 8]

Theo như hiểu biết của tác giả Luận án này, chỉ có duy nhất nhóm nghiên cứu củaPGS Hoàng Mạnh Thắng (người hướng dẫn khoa học của Luận án này) thuộc TrườngĐại học Bách khoa Hà nội tập trung nghiên cứu về hỗn loạn và ứng dụng trong bảomật và truyền tin Nhóm nghiên cứu này còn có các thành viên là PGS Nguyễn Xuân

Trang 18

Quyền và TS Tạ Thị Kim Huệ Các kết quả nghiên cứu về ứng dụng hỗn loạn trongmật mã được đăng tải trên các tạp chí trong và ngoài nước duy nhất xuất phát từ nhómnghiên cứu này [9, 10].

Tình hình nghiên cứu ngoài nước:

Nghiên cứu về các hệ động học phi tuyến và ứng dụng để giải quyết các vấn đềthực tế đã thu hút đông đảo các nhà khoa học trong cộng đồng nghiên cứu Lĩnhvực mật mã sử dụng các hệ hỗn loạn được nhiều nhóm nghiên cứu thực hiện Danhsách các nhóm lớn nghiên cứu về vấn đề này gồm: Nhóm nghiên cứu được dẫn dắtbởi GS Guanrong Chen tại Đại học Thành phố Hồng Kông; Nhóm nghiên cứu của

TS Arroyo Guarde˜no David thuộc đại học Universidad Autónoma de Madrid, và TS.Gonzalo Alvarez thuộc Hội đồng nghiên cứu quốc gia của Tây Ban Nha; Nhóm nghiêncứu gồm Hidayet O ˘GRAS¸ và Mustafa T ¨URK tại Đại học Batman, Thổ Nhĩ Kỳ; Nhómnghiên cứu của GS Safwan El Assad tại Đại học Nantes, Pháp; và nhiều nhóm nghiêncứu khác trên thế giới

Bằng cách dùng chức năng tìm kiếm theo từ khóa “chaotic cryptography” và

“chaotic cryptosystems” trên trang Google Scholar đã cho thấy 27.900 và 16.100 kếtquả liên quan, mà phần lớn là các bài báo và sáng chế liên quan đến các từ khóa này

Cụ thể, các kết quả nghiên cứu về lĩnh vực ứng dụng hỗn loạn trong mật mã đượccông bố và cập nhật thường xuyên trên các tạp chí khoa học chuyên ngành Các kếtquả nghiên cứu chủ yếu được đăng tải trên các tạp chí thuộc lĩnh vực toán ứng dụng,vật lý, xử lý tín hiệu, và điện tử - máy tính

Sự quan tâm của nhiều nhóm nghiên cứu trên thế giới cùng với các kết quả mớiđược công bố thường xuyên đã nói lên sự hấp dẫn và phát triển của chủ đề nghiên cứunày

4 Động lực nghiên cứu

Sau hơn hai thập kỷ, cộng đồng nghiên cứu về các lĩnh vực động học phi tuyến vàmật mã học đang nỗ lực tạo ra sự kết hợp giữa mật mã và hỗn loạn để tạo ra hướngtiếp cận mới cho mật mã; đó là dựa vào động học phi tuyến thay vì dựa vào sự phứctạp của số học Cho đến nay, những cố gắng đó đã tạo ra nhiều hệ mật mã được công

bố Tuy nhiên, quá trình phát triển và những tranh luận vẫn đang tiếp diễn chưa có hồikết về các vấn đề liên quan như tạo hệ mật mã mới, khả năng chịu đựng tấn công, vàtối ưu hóa các quá trình Thực tế cho thấy với mật mã theo cách tiếp cận cổ điển, sựđảm bảo mật mã của ngày hôm nay không chắc chắn còn được đảm bảo ở ngày mai.Chưa kể mật mã theo hướng ứng dụng hỗn loạn vẫn còn đang trong giai đoạn đầu củaquá trình phát triển với nhiều hấp dẫn Điều này tạo ra sự hấp dẫn và làm động lực

Trang 19

nghiên cứu của Luận án này Còn một động lực quan trọng hơn, đó là những tháchthức nghiên cứu Thách thức nghiên cứu về mặt học thuật được đặt ra ở đây là tháchthức về cách tiếp cận phù hợp với xu hướng phát triển.

Xu hướng phát triển theo quan điểm ứng dụng mật mã thường xuất phát từ nhữngnghiên cứu tạo ra các hệ mật mã dùng trên máy tính với đơn vị dữ liệu được tính bằngbyte Trong quá trình phát triển, các nghiên cứu mở rộng ra các hệ mật mã phù hợpvới mạch điện tử với đơn vị dữ liệu được tính bằng bit Mật mã hỗn loạn hiện nay đangphát triển theo hai hướng này Hơn nữa, khi các nghiên cứu tạo ra các hệ mật mã hỗnloạn rất đa dạng Các nhà khoa học đi phân tích và tối ưu hóa để tạo ra các hệ mật mãphù hợp với thực tế Nhằm đưa ứng dụng hệ mật mã hỗn loạn vào thực tế, việc nghiêncứu hệ mật mã hỗn loạn ở mức bit cần phải được thực hiện làm cơ sở cho triển khaitrên các hệ thống mạch điện tử số Đây là động lực thứ nhất để phát triển thành Luận

án này

Bên cạnh đó, phân tích mã là việc làm không thể thiếu, song song với tạo ra các

hệ mật mã Phân tích mật mã có cấu trúc SPN được xây dựng dựa trên các hàm hỗnloạn với nhiều vòng lặp hầu như chưa được quan tâm Cho đến nay, số lượng các tấncông thành công vào hệ mật mã hỗn loạn có cấu trúc SPN, theo hiểu biết của tác giảLuận án này, là chỉ có hai công trình được công bố [11, 12] Điểm đáng chú ý là haicông trình này chỉ thành công với hệ mật mã hỗn loạn có một vòng lặp Mặc dù côngtrình [11] được đăng tải năm 2010 và có đề cập rằng phương pháp đó có thể được mởrộng để phân tích các hệ mật mã nhiều vòng Tuy nhiên, từ đó đến khi kết quả nghiêncứu của Luận án này công bố năm 2018, chưa có bất kỳ công bố nào thực hiện phântích hệ mật mã hỗn loạn có cấu trúc SPN nhiều vòng lặp Đây cũng chính là nhữngthách thức tạo thành động lực thứ hai cho việc nghiên cứu của Luận án này

5 Những đóng góp của Luận án này

Hướng nghiên cứu mà Luận án lựa chọn là đề xuất ra các hệ mật mã làm việc ởmức bit và thực hiện phân tích mã Việc tạo ra hệ mật mã làm việc ở mức bit đượcxem như xu hướng tất yếu phù hợp với xu thế như đã đề cập trên Việc phân tích mã

để chỉ ra những điểm yếu và cải tiến sao cho tốt hơn là công việc cần thiết Luận án

có các đóng góp được nhóm thành hai cụm chính như sau:

• Đề xuất hệ mật mã hỗn loạn làm việc ở mức bit với các tác động lên đặc tínhđộng Hệ mật mã thứ nhất được hình thành dựa trên nguyên tắc cơ bản về tínhchất phức tạp và không ổn định của hệ hỗn loạn khi có tác động vào tham số điềukhiển của hệ hỗn loạn Hệ mật mã thứ hai được đề xuất dựa trên ứng dụng hàm

Trang 20

hỗn loạn Cat cho hoán vị và Cat-Hadamard nhiều chiều cho quá trình khuếchtán.

• Đề xuất phương pháp phân tích hệ mật mã hỗn loạn có cấu trúc SPN với mộtvòng lặp mã và nhiều vòng lặp mã Quá trình phân tích sẽ chỉ ra lỗ hổng bảo mậtcủa các hệ mật mã hỗn loạn có cấu trúc SPN Từ các nhược điểm của hệ mật mã,các phương pháp đề xuất nhằm nâng cao khả năng bảo mật và chịu được các cơchế tấn công cơ bản

6 Cấu trúc của Luận án

Luận án này gồm hai phần Phần đầu là Chương 1 có nội dung giới thiệu tổng quan

về hàm hỗn loạn và ảnh số cùng với các thuộc tính và đặc trưng của chúng Phần thứhai được trình bày trong hai chương tiếp theo, Chương 2 và Chương 3, tương ứng vớihai phạm vi chính của mật mã, đó là đề xuất hệ mật mã và phân tích mã Cụ thể, cấutrúc Luận án này như sau:

Chương 1 Tổng quan về hàm hỗn loạn và ảnh số: Chương này trình bày tổng quan

về các hàm hỗn loạn cùng với các thuộc tính được ứng dụng để hình thành các hệ mật

mã Ứng dụng các hàm hỗn loạn để tạo ra các chuỗi ngẫu nhiên cũng được trình bày ởđây Hơn nữa, dữ liệu ảnh, cách biểu diễn và các đặc trưng của dữ liệu ảnh được trìnhbày Các đặc trưng về dữ liệu ảnh được khai thác để hình thành các hệ mật mã làmviệc hiệu quả Từ các vấn đề cơ bản dẫn dắt đến các vấn đề mở cũng như động lực điđến các đề xuất được trình bày ở các chương sau của Luận án

Chương 2 Mật mã ảnh ở mức bit ứng dụng kỹ thuật hỗn loạn: Các mô hình, cấutrúc, phương pháp chung về ứng dụng hỗn loạn để hình thành hệ mật mã được trìnhbày Những cải tiến mới nhất của hệ mật mã ứng dụng hỗn loạn theo các hướng tiếpcận khác nhau được đưa ra ở đây Các độ đo và các phương pháp đánh giá tính chấtmật của hệ mật mã hỗn loạn được trình bày ở đây Trong đó, hai hệ mật mã hỗn loạn

đề xuất được xem như là đóng góp của Luận án cũng được trình bày trong Chươngnày

Chương 3 Phân tích mật mã hỗn loạn có cấu trúc SPN: Chương này trình bày cáchướng tiếp cận và các phương pháp phá vỡ an toàn của hệ mật mã hỗn loạn Các cáchtiếp cận, phương pháp, và các kết quả mới nhất liên quan đến tính an toàn của mật mãhỗn loạn cũng được đưa ra Các vấn đề được nếu ra ở Chương này sẽ gợi ý cho ngườithiết kế hệ mật mã hỗn loạn những điểm cần xem xét để khai thác, đồng thời tránh cácbất lợi có thể có trong thiết kế Các giải thuật, phương pháp phá vỡ an toàn đối với hệmật mã hỗn loạn có cấu trúc SPN làm việc với một vòng lặp và nhiều vòng lặp, cùng

Trang 21

với các ví dụ minh họa được trình bày Chương này trình bày lỗ hổng bảo mật của hệmật mã hỗn loạn và được dùng làm cơ sở để đề xuất các phương pháp cải tiến nhằmnâng cao khả năng chịu đựng tấn công.

Kết luận và hướng phát triển: Cuối cùng, nội dung và các kết quả đạt được, cácđóng góp mới, và hướng phát triển được trình bày

Trang 22

mã và phân loại; phần sau trình bày ảnh và các đặc trưng dữ liệu của ảnh, các hệ hỗnloạn và khả năng ứng dụng của chúng vào lĩnh vực mật mã.

1.2 Mật mã hiện đại và phân loại

Mật mã hiện đại làm việc trên các chuỗi bit Nó dựa vào các thuật toán được biết côngkhai để mã hóa thông tin Tính chất mật đạt được chủ yếu dựa vào khóa mật đượcdùng trong thuật toán Khó khăn trong tính toán các thuật toán, sự thiếu thông tin vềkhóa mật, v v làm thất bại trong việc tấn công để thu nhận được thông tin cho dùcông khai giải thuật mã Như vậy, mật mã hiện đại chỉ yêu cầu giữ kín khóa mật, cònlại các thông tin khác là công khai

Trang 23

Mật mã học

Phân tích mã/thám mã Mật mã hóa

Hình 1.1: Phân loại nghiên cứu của mật mã học.

tin gốc cần mật mã Nó là đầu vào cho quá trình mật mã và là đầu ra ở quá trìnhgiải mật mã thành công

• C (ciphertext): Tập văn bản mã hóa Tập văn bản mã hóa là tập hợp hữu hạn các

bản tin được tạo ra ở đầu ra của quá trình mật mã

• K (Key): Tập khóa mật Tập khóa mật là tập hợp hữu hạn các khóa, mà mỗi thành

phần của nó được dùng như dữ liệu đầu vào của quá trình mật mã và giải mã Nóđược dùng để mật mã văn bản trơn thành văn bản mã hóa và giải văn bản mã hóathành văn bản trơn

• E (Encryption): Tập qui tắc mật mã Tập hữu hạn qui tắc thực hiện mật mã nhằm

biến đổi đầu vào thành văn bản mã hóa

• D (Decryption): Tập qui tắc giải mật mã Tập các qui tắc được dùng để thực hiện

tái tạo lại văn bản trơn từ văn bản mã hóa với sự góp thông tin từ khóa mật

Có một số cách phân loại trong mật mã như sau:

• Phân loại nghiên cứu về mật mã học được thấy trong Hình 1.1 gồm mật mã vàphân tích mã hay thám mã Mật mã là đưa ra phương pháp, cách thức đảm bảo antoàn cho dữ liệu Nói đến mật mã là nói đến thiết kế các cơ chế mã dựa trên nền

Trang 24

(a) Mật mã khóa đối xứng

(b) Mật mã khóa bất đối xứng

Hình 1.2: Mật mã khóa đối xứng và bất đối xứng.

tảng là các giải thuật Ngược lại với mật mã là thám mã, thám mã đi xem xét cơchế mật mã với mục đích chỉ ra những khiếm khuyết liên quan đến an toàn thôngtin và đồng thời kiểm tra được khả năng của hệ mật mã được thiết kế

• Phân loại theo cách sử dụng khóa mật ta có mật mã khóa công khai (hay mật mãbất đối xứng) và mật mã khóa riêng tư (hay mật mã đối xứng) Hệ mật mã đốixứng là hệ mật mã có khóa mật được dùng cho phía mật mã giống với khóa mậtdùng ở bên giải mật mã [15] Khóa mật này được giữ kín nhằm đảm bảo an toànthông tin Các hệ mật mã đối xứng gồm AES, DES, 3DES v v Ngược lại vớimật mã đối xứng là mật mã bất đối xứng Hệ mật mã bất đối xứng được hiểu làkhóa mật của bên mật mã khác với khóa mật được dùng ở bên giải mật mã Mộttên gọi khác của hệ mật mã này là mật mã khóa công khai Hai khóa được dùngcho mật mã và giải mật mã được gọi là khóa riêng tư (private key) và khóa côngkhai (public key) Thông thường, khóa công khai được công bố mở cho bên thựchiện mật mã, và khóa riêng tư được dùng để giải mật ở bên khôi phục thông tin

Hệ mật mã bất đối xứng nổi tiếng gồm ElGamal, RSA v v Sự khác nhau giữa

hệ mật mã đối xứng và bất đối xứng được thấy trong Hình 1.2

Với hệ mật mã đối xứng, khóa mật cần phải được giữ kín Tuy nhiên, trong điều

Trang 25

Dữ liệu bản rõ Cộng khóa Thay thế

Trộn tuyến nh

Dữ liệu bản mã Hoán vị

(a) Cấu trúc Unified

Khóa KiF(.)

Li-1 Ri-1

(b) Cấu trúc Feistel

Hình 1.3: Phân loại mật mã theo cấu trúc.

kiện khoảng cách, khóa mật cần phải được gửi từ bên mật mã sang bên giải mậtqua môi trường với thuật toán trao đổi khóa như là Diffie-Hellman

Trong điều kiện thực tế của truyền thông, một hệ thống được sinh ra để quản lý

và phân phối khóa được hình thành (PKI) cho hệ mật mã khóa công khai Luận

án này không đề cập đến hệ thống quản lý và phân phối khóa

• Phân loại dựa vào cách thức tiến hành mã hóa: Ta có mật mã dòng (stream cipher)

và mật mã khối (block cipher) Với mật mã dòng, luồng dữ liệu được di chuyểnliên tục trong quá trình mật mã và giải mã Luồng dữ liệu được quan tâm là luồngbit kết hợp với phép toán logic XOR Hệ mật mã luồng nổi tiếng là RC4, A5/1,A5/2 v v Ngược lại, mật mã khối thực hiện trên một khối dữ liệu và trong quátrình thực hiện thì khối dữ liệu này được giữ nguyên kích thước

• Phân loại mật mã khối theo cấu trúc ta có cấu trúc Feistel và cấu trúc Unified nhưđược thấy ở Hình 1.3 Cấu trúc Fiestel thực hiện chia dữ liệu thành hai nửa rồi mãhóa, sau đó đảo các nửa này Cấu trúc Unified hay còn gọi là cấu trúc SPN thựchiện qua nhiều bước mà ở đó điển hình nhất là có bước hoán vị (permutation) vàbước thay thế (substitution) Quá trình mật mã có thể được lặp lại nhiều lần

• Phân loại mật mã theo nền tảng tiếp cận ta có một số cách tiếp cận như đưa ra ởHình 1.4 Ở đó, cách tiếp cận dựa vào tính chất phức tạp của đặc tính động củahàm hỗn loạn được xem như là hướng tiếp cận mới trong hai thập kỷ gần đây

• Phân loại theo đơn vị dữ liệu được thực hiện trong quá trình mã hóa như đượcthấy trong Hình 1.5 Dữ liệu được mã hóa có đơn vị là byte thường được thấy

Trang 26

Mật mã học

Mật mã truyền thống Mật mã

Hình 1.5: Phân loại theo đơn vị dữ liệu được mã hóa.

trong các hệ thống máy tính Dữ liệu dạng bit thường được thấy với các mật mãluồng và trên các phần cứng số Mật mã với đơn vị dữ liệu là chữ số được đề xuấtgần đây [16]

1.3 Hệ thống hỗn loạn

Trong thực tế, các hệ thống hỗn loạn được chia thành hai loại gồm liên tục theo thờigian và rời rạc theo thời gian Hệ hỗn loạn liên tục theo thời gian có biến trạng thái

ứng dụng vào nhiều lĩnh vực khác nhau, trong đó có mật mã

1.3.1 Hệ hỗn loạn liên tục theo thời gian

Với các hệ liên tục theo thời gian được diễn tả bởi hệ phương trình vi phân như sau:

dX

hệ, t là thời gian Hàm F (.) là hàm không chứa thành phần thời gian t thì hệ hỗn loạnđược gọi là hệ hỗn loạn tự trị, ngược lại ta có hệ hỗn loạn không tự trị Các hàm hỗnloạn liên tục theo thời gian nổi tiếng như Chua’s, Lorenz, Rossler, Các hệ liên tụctheo thời gian ít được dùng trực tiếp cho mật mã khối bởi việc giải các phương trình

Trang 27

vi phân cần nhiều tài nguyên tính toán Một mặt khác, các hệ hỗn loạn liên tục theothời gian có thể được mô tả dễ dàng hoặc có thể được quan sát thấy theo một số cáchkhác nhau, như trên mạch điện tử tương tự [17], trên laser bán dẫn [18], hoặc trêncác hệ cơ khí [19] Nhưng thực tế, hệ mật mã liên tục theo thời gian được dùng trongcác mô hình nhằm đảm bảo truyền thông bảo mật Cho dù có khả năng sử dụng các

hệ liên tục theo thời gian vào mục đích mật mã, nhưng chúng không được cộng đồngnghiên cứu quan tâm cho mật mã dữ liệu khối Để dùng được với dữ liệu khối, trongmột số nghiên cứu, các hệ hỗn loạn liên tục theo thời gian được triển khai trên các hệthống số với một số giả định xấp xỉ [20] Trong một số thiết kế hệ mật mã hỗn loạn,các hàm liên tục được chuyển sang hệ hỗn loạn rời rạc theo một số cách khác nhau.Một trong các cách đó là thực hiện so sánh giá trị của biến trạng thái với các ngưỡnggiá trị được đặt ra để chuyển về dạng rời rạc, ví dụ như trong công trình [21]

Chuyển đổi từ giá trị số thực về giá trị số nguyên bằng cách dịch chuyển dấu phảy

về phía phải trong biểu diễn số dưới dạng dấu phảy cố định để có được các giá trị là

dùng để biểu diễn giá trị hỗn loạn và p là lũy thừa bằng với số vị trí dấu phảy cần dịchchuyển Phương pháp này được thấy ở nhiều nghiên cứu gần đây [21]

Trong số các hàm hỗn loạn liên tục theo thời gian, có hàm hỗn loạn trễ thời gian,

ở đó các giá trị của biến trạng thái được sinh ra trước đó được đưa quay trở về để tínhtoán cho trạng thái tương lai [22, 23] Một hàm hỗn loạn trễ được mô tả như sau:

hỗn loạn khác

Qua tham khảo nội dung các công trình được đăng tải cho thấy rất ít ứng dụng hệhỗn loạn liên tục theo thời gian vào thiết kế mật mã khối

1.3.2 Hệ hỗn loạn rời rạc theo thời gian

Hàm hỗn loạn rời rạc theo thời gian là các hàm lặp trong quá trình nó hoạt động đểtạo ra các giá trị hỗn loạn về biên độ Một hàm rời rạc theo thời gian được mô tả bởi

thường được gọi là véctơ giá trị điều kiện đầu (IV: initial vector) Trong trường hợp

Trang 28

m= 1, biến trạng thái Xn(i)được ký hiệu làXn Dưới đây là các hàm hỗn loạn rời rạcđược dùng trong mật mã hỗn loạn.

1.3.2.1 Hàm Logistic

Hàm Logistic được sử dụng rất phổ biến trong các ứng dụng mật mã, lý do là nó cócấu trúc rất đơn giản, dễ dàng thực hiện trên phần cứng và phần mềm Hàm Logisticđược diễn tả bởi biểu thức sau:

hỗn loạn khi giá trị của tham số điều khiển 3, 57 ≤ r ≤ 4

Hàm Henon gốc tạo ra hỗn loạn với a = 1, 4 và b = 0, 3 Hàm Henon được điều chỉnh

để trở thành nhiều dạng khác nhau và mang nhiều đặc điểm khác nhau Hình 1.6 cho

Hình 1.6: Vùng hút của hàm Henon.

Trang 29

Hàm Cat được dùng trong mật mã hỗn loạn nhằm tạo ra quy luật hoán vị vị tríđiểm ảnh và khuếch tán như được thấy trong các công bố gần đây [26, 27].

1.3.2.4 Hàm hỗn loạn Cat-Hadamard

Xét việc mở rộng hàm hỗn loạn Cat 2D ở biểu thức (1.8) thành hàm hỗn loạn

(1.11)

Trang 30

và trong trường hợp k = 3, H3 đối với hàm Cat-Hadamard 8 chiều, tương đương với

loạn, hàm Standard thường được dùng để tạo ra giá trị là số nguyên thuộc dải đượcđịnh sẵn; ví dụ kích thước của ảnh khi dùng để hoán vị, hoặc giá trị điểm ảnh khidùng để khuếch tán Khi đó, hàm Standard được thay đổi thành

"

MN

Trang 31

1.3.2.8 Hàm hỗn loạn không gian-thời gian

Hàm hỗn loạn được hình thành bằng cách ghép các hàm hỗn loạn khác trong miềnkhông gian và thời gian và được gọi là “spatiotemporal chaos” Cụ thể, hàm hỗn loạnkhông gian-thời gian theo kiểu lưới ghép một chiều (CML) [32] như sau:

với ε ∈ (0, 1) là hệ số ghép; k biểu diễn cho chỉ số của hàm hỗn loạn được dùng để

hàm hỗn loạn Cách hình thành không gian-thời gian thường được dùng để mở rộnghàm hỗn loạn và tăng mức phức tạp một cách dễ dàng

1.4 Các thuộc tính của hàm hỗn loạn phù hợp cho ứng dụng trong mật mã

1.4.1 Các thuộc tính cơ bản

Các hệ thống hỗn loạn có các thuộc tính gồm: (i) sự phụ thuộc vào điều kiện đầu, (ii)

có tập hợp các điểm mật độ dày với các quĩ đạo tuần hoàn, và (iii) có cấu trúc chuyển

dịch liên kết Định nghĩa và cách thức đánh giá về các thuộc tính này được trình bàytrong [33] Thông số được dùng để đánh giá mức độ phụ thuộc vào điều kiện đầu củahàm hỗn loạn đó là hệ số lũy thừa Lyapunov Hệ số lũy thừa Lyapunov âm (<0) thểhiện hệ thống đang ở trạng thái điểm cố định; hệ số này bằng 0 thì hệ dao động cóchu kỳ; hệ số này dương (>0) cho thấy rằng hiện tượng hỗn loạn tồn tại ở hệ thống

Trang 32

0 5 10 15 20 25 30 35 40

n

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

xn

x0=0,123

x0=0,12300000005

Hình 1.7: Phụ thuộc điều kiện đầu của hàm Logistic với r = 4, 0.

Hình 1.8: Hệ số Lyapunov của hàm Logistic phụ thuộc vào r.

động Sự phụ thuộc điều kiện đầu của hàm hỗn loạn Logistic có thể được thấy trong

các giá trị khác nhau hoàn toàn sau 28 lần lặp Việc tính hệ số Lyapunov λ dựa vào sựsai khác điều kiện đầu δ(0), sau các lần lặp, sai khác này sẽ là δ(i) Hệ số Lyapunovđược tính theo trung bình các sai khác đó trên N lần lặp như sau:

N →∞

1N



Để thấy bức tranh tổng quát giá trị của hệ số lũy thừa Lyapunov, việc khảo sát tínhtoán với từng giá trị nào của tham số điều khiển được thực hiện Trên hình vẽ khảo sátcác hệ số Lyapunov thường so sánh với giá trị 0 để thấy rõ hàm ở trạng thái hỗn loạnứng với giá trị của tham số điều khiển Hình 1.8 cho thấy hệ số Lyapunov của hàmLogistic phụ thuộc vào giá trị tham số điều khiển r Nó cũng cho thấy, hàm Logisticxuất hiện hỗn loạn với r ≥ 3, 57 Các bước tính toán Lyapunov cho trường hợp tổngquát và cho dữ liệu thực nghiệm được trình bày trong [33, 34]

Trang 33

Hình 1.9: Đồ hình phân nhánh của hàm Logistic phụ thuộc vào r.

Thuộc tính tập hợp các điểm mật độ dày với các quĩ đạo có chu kỳ được hiểu thôngqua đồ hình phân nhánh của hàm hỗn loạn Đồ hình phân nhánh (bifurcation diagram)được vẽ ra với sự phụ thuộc vào tham số điều khiển Hình 1.9 cho thấy đồ hình phânnhánh của hàm Logistic Ở đó, khi vực phân bố dày đặc các quĩ đạo có chu kỳ chothấy tồn tại hỗn loạn ứng với giá trị của tham số điều khiển tương ứng

Thuộc tính cấu trúc đồ hình liên kết (topologically transitive hay topological ing) được đề cập đến lần đầu tiên bởi G.D Birkhoff năm 1920 Tính chất này được

mix-phát biểu là hàm hỗn loạn F : X → X được gọi là có cấu trúc đồ hình liên kết nếu như có mọi cặp không rỗng mở, ký hiệu là A, B ∈ X, thì tồn tại một số nguyên n sao

rằng phạm vi của biến trạng thái được hàm hỗn loạn đi đến nhiều lần

Tất cả các thuộc tính nêu trên đã được chứng minh và làm rõ trong các tài liệunghiên cứu chuyên sâu về hỗn loạn

1.4.2 Các tham số và tính chất của hàm hỗn loạn dùng trong mật mã

Trước khi đề cập đến ứng dụng hàm hỗn loạn vào mật mã, các hàm hỗn loạn phổ biến

đã được chứng minh rằng có đầy đủ các thuộc tính như trình bày trong phần trước.Việc ứng dụng hàm hỗn loạn được dựa trên các yếu tố có lợi để hình thành mật mã,

cụ thể là khai thác tính chất phân bố đều của giá trị biến trạng thái được tạo ra từ hàmhỗn loạn và các tham số của hàm hỗn loạn Các thuộc tính trên của hàm hỗn loạn đãđưa lại một đặc điểm vô cùng quan trọng, đó là khả năng không thể dự đoán dài hạntrạng thái của hàm hỗn loạn Đặc điểm này làm cho hàm hỗn loạn phù hợp với ứngdụng vào mật mã

Với một hàm hỗn loạn rời rạc được cho như trong biểu thức (1.5), hàm hỗn loạn

Trang 34

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0

100 200 300 400 500 600

Giá trị của X n

Hình 1.10: Phân bố của chuỗi giá trị được tạo từ hàm Logistic.

đầu ra của hàm hỗn loạn được dùng để tạo ra các chuỗi số và các chuỗi bit giả ngẫunhiên cho quá trình mật mã Việc áp đặt giá trị vào các tham số của hàm hỗn loạnđược hiểu như tác động vào đặc tính động của hàm hỗn loạn Các tham số được tácđộng sẽ tạo ra giá trị của biến trạng thái và giá trị ấy được dùng cho quá trình mật mã

trong quá trình tạo ra chuỗi giả ngẫu nhiên Chuỗi giả ngẫu nhiên đó được biến đổi vàdùng để hình thành ma trận chuyển vị các điểm ảnh Tuy nhiên, tham số điều khiển rcũng được dùng cho các lần tạo ra chuỗi giá trị giả ngẫu nhiên khác nhau cho các lầnmật mã khác nhau Hơn nữa, với mỗi giá trị được tạo ra từ hàm hỗn loạn chỉ được giữlại sau n lần lặp Giá trị của các tham số này hình thành nên khóa mật, không giangiá trị của các tham số này hình thành nên không gian khóa Trong nghiên cứu [35],

S Lian chỉ ra rằng hàm Standard có không gian khóa lớn nhất

Một trong các tính chất quan trọng của chuỗi giá trị được tạo ra từ hàm hỗn loạn

đó là tính phân bố đều của chuỗi giả ngẫu nhiên Tuy nhiên không phải luôn luôn hàmhỗn loạn tạo ra các chuỗi có phân bố đều Ví dụ, trong Hình 1.10 cho thấy phân bố

rằng, phân bố giá trị được tạo ra bởi hàm Logistic là không đồng đều, tỷ lệ giá trị nằm

ở gần 0 và 1 nhiều hơn các giá trị khác Hình 1.11 cho thấy phân bố tương đối đều của

n và X(2)

về (0, 255)

Trong một số trường hợp, do chọn tham số hoặc do hàm hỗn loạn đã tạo ra phân

bố giá trị của các biến đầu ra không đều Ví dụ như sự không đồng nhất ở phân bốcủa hàm Logistic Trong những trường hợp đó, việc biến đổi giá trị đầu ra là cần thiết

để có được các đặc tính tốt hơn trong ứng dụng mật mã Có hai cách có thay đổi hàmLogistic Đó là tạo ra sự biến đổi tham số điều khiển r như được thấy ở [36, 37], và

Trang 35

0 50 100 150 200 250 0

20 40 60 80 100 120

GiátrịX n (2)

(b) Phân bố của X n(2).

Hình 1.11: Phân bố của chuỗi giá trị được tạo từ hàm Henon với a = 10 và b = 50.

nghiên cứu khác, các hàm Logistic được ghép lại với nhau để tạo ra sự phức tạp nhưđược thấy ở [39, 40] Các công bố gần đây cho thấy, hàm Logistic vẫn được sử dụngnhiều trong mật mã

1.5 Tạo chuỗi ngẫu nhiên dùng hàm hỗn loạn

Trong thực tế, có một số cách dùng các hệ hỗn loạn vào mật mã Cách thứ nhất, cácgiá trị tạo ra từ hàm hỗn loạn được dùng như là một chuỗi giả ngẫu nhiên cho việcmật mã [26] Cách thứ hai là ứng dụng đặc tính động của hàm hỗn loạn trong quátrình mật mã và giải mật mã thông qua tác động/điều chế lên véctơ điều kiện đầu (IV)và/hoặc vào các tham số điều khiển [36] Tác động được ở đây được hiểu là làm thayđổi giá trị biến trạng thái hoặc thay đổi giá trị của tham số điều khiển Ở giai đoạn đầunghiên cứu về mật mã hỗn loạn, các chuỗi hỗn loạn được tạo ra và ứng dụng Nhữngnăm sau này, đặc tính động học của hệ hỗn loạn được khai thác cho mật mã

Trong các hệ mật mã, chuỗi ngẫu nhiên được tạo ra từ một giá trị ban đầu đã đượcbiết trước, được gọi là giá trị khởi tạo (IV) Chúng được dùng trong cả mật mã dòng

và mật mã khối Chuỗi giả ngẫu nhiên được tạo ra đó dùng trực tiếp vào quá trìnhmật mã thông qua quá trình trộn với văn bản trơn theo biểu thức nào đó để xóa bỏcấu trúc thống kê của văn bản trơn Theo phương pháp cổ điển được dùng nhiều trongcác nghiên cứu có sử dụng chuỗi bit giả ngẫu nhiên, các chuỗi được tạo ra bằng cách

Trang 36

đây cho thấy, việc dùng LFSR là không đảm bảo an toàn bảo mật bởi chu kỳ chuỗiđược tạo ra có chiều dài hạn chế [43, 44].

Trong những nghiên cứu gần đây, chuỗi giả ngẫu nhiên có thể được tạo ra từ cáchàm hỗn loạn Nó dựa trên các đặc trưng của hàm hỗn loạn như nhạy với điều kiệnđầu/tham số điều khiển, không có khả năng dự đoán tương lai dài.v v [45] Dựa trêncác tính chất này, các bộ tạo dãy số giả ngẫu nhiên dùng hỗn loạn được đề xuất vớicác cấu trúc khác nhau và được ứng dụng vào bảo mật [37, 46, 47]

1.5.1 Tạo chuỗi bit ngẫu nhiên

Để tạo ra chuỗi giả ngẫu nhiên, hàm hỗn loạn sẽ được lặp và tạo ra một chuỗi các giá

này được biến đổi theo một số cách khác nhau để thu nhận được chuỗi bit giả ngẫunhiên Tuy nhiên, trong một số nghiên cứu khác lại dùng phép lặp và được điều khiểntheo quy luật để tạo ra chuỗi bit ngẫu nhiên Điển hình của phương pháp dựa vào giátrị để tạo ra chuỗi bit ngẫu nhiên gồm:

các hàm hỗn loạn Nó được so sánh với một ngưỡng biết trước Tùy theo giá trị

pháp này được thấy trong nhiều nghiên cứu như của Q Wang [48, 49]

• Phương pháp 2: Tạo ra chuỗi bit giả ngẫu nhiên thông qua các phép lặp dựatrên một chuỗi số biết trước và kết hợp với các phép XORshift như được đề xuất

bởi [46, 50] Khái niệm chaotic iteration được định nghĩa ở đây là phép lặp và

cập nhật giá trị dựa vào những điều kiện cho trước Điều kiện là sự kết hợp giữanhững gì được đặt ra và với phép lấy phần sau dấu phảy của một tham số nào đó

Trang 37

như thời gian lúc thực hiện chẳng hạn Việc tạo ra chuỗi bit giả ngẫu nhiên nàytương đối phức tạp và sẽ rất khó khăn khi thực hiện trên phần cứng.

• Phương pháp 3: Chuỗi bit được tạo ra bằng cách ghép các bit từ các giá trị nhậnđược ở đầu ra của hàm hỗn loạn sau mỗi phép lặp Điển hình như được thấy trongcông trình của T Xiang et.al [51] Chuỗi bit tạo ra được chứng minh là có tínhchất thống kê rất tốt (phân bố đều, xuất hiện ngẫu nhiên)

• Phương pháp 4: Từ thực tế đánh giá cho thấy các giá trị tạo ra từ hàm hỗn loạnđược chứng minh là có tính chất thống kê rất tốt Do vậy, các giá trị hỗn loạnđược biểu diễn dưới dạng dấu phảy tĩnh và chúng được dùng để tạo ra chuỗi bitgiả ngẫu nhiên thông qua việc lấy các bit sau dấu phảy của giá trị hỗn loạn đượctạo ra đó Phương pháp này được thấy trong nghiên cứu của Kohda [52, 53]

Đó là các phương pháp cơ bản để tạo ra chuỗi giả ngẫu nhiên Dưới đây là cácphương pháp tạo ra chuỗi số giả ngẫu nhiên

1.5.2 Tạo chuỗi số giả ngẫu nhiên

Từ quá trình lặp hàm hỗn loạn, các giá trị hỗn loạn ở dạng số thực được sinh ra Chuỗicác giá trị hỗn loạn này được dùng để tạo ra chuỗi số nguyên giả ngẫu nhiên để dùngtrong mật mã ảnh theo một số cách khác nhau như sau:

• Phương pháp 1: Trong nhiều nghiên cứu ứng dụng hỗn loạn vào mật mã, các

n đượcchuyển sang số nguyên thông qua biểu thức

• Phương pháp 2: Tạo chuỗi giá trị giả ngẫu nhiên dựa vào hàm hỗn loạn bị tácđộng từ bên ngoài bởi giá trị đầu ra của LFSR nhằm tạo ra sự bất định Phươngpháp này được đưa ra bởi Hassan Noura [1, 57, 58] Sơ đồ cấu trúc bộ tạo chuỗi

n−1 và X(i)

n

Trang 38

Hình 1.13: Bộ tạo chuỗi số dùng hàm hỗn loạn (nguồn: [1])

tính; khối tạo ra tham số thực hiện việc kết hợp các biến trạng thái để hình thành

• Phương pháp 3: Tạo chuỗi giá trị giả ngẫu nhiên có thể được tạo ra trực tiếp từ

đổi để hình thành nên chuỗi mới Chuỗi vị trí mới này chính là một dãy giả ngẫunhiên [59] Thông qua các phép toán thao tác với các biến trạng thái được tạo ra

ngẫu nhiên cũng được tạo ra [60] Một số cách khác có thể được tham khảo ở cáccông trình [28, 61]

Trong các nghiên cứu tạo chuỗi bit và chuỗi giá trị giả ngẫu nhiên nhờ hàm hỗn loạn,các phép kiểm tra theo chuẩn NIST (Chi-test) đều được thực hiện Kết quả các phépkiểm tra thông qua tiêu chuẩn của NIST [62] cho thấy, tất cả các chuỗi bit và các chuỗigiá trị hỗn loạn được tạo ra trong các nghiên cứu đều thỏa mãn tính chất ngẫu nhiên

và có thể được dùng cho ứng dụng trong mật mã

1.5.3 Một số chú ý khi thiết kế phần cứng cho các hàm hỗn loạn

Khi xem xét thiết kế phần cứng cho các hàm hỗn loạn, hai loại hàm hỗn loạn gồm liêntục theo thời gian và rời rạc theo thời gian tương ứng được thực hiện bởi mạch điện

tử tương tự và mạch điện tử số Mạch điện tử tương tự được thiết kế cho các hàm hỗnloạn liên tục theo thời gian được biểu diễn bởi các phương trình vi phân Với mạchđiện tử tương tự, việc thực hiện mạch điện được thực hiện khá dễ dàng dùng các phần

tử cơ bản gồm tụ điện, cuộn cảm, điện trở, cùng với một số mạch chức năng như bộnhân/chia, bộ cộng/trừ, khuếch đại như được thấy trong các công trình [63, 64, 65].Mạch điện thường chịu nhiều ảnh hưởng bởi nhiễu gây ra do sự không chính xác củacác phần tử mạch điện Đây là điều khó khăn nhất, chính vì vậy các mạch điện tử tương

Trang 39

tự cho hàm hỗn loạn thường được dùng để tạo ra kênh truyền tin an toàn hoặc truyềnthông ứng dụng kỹ thuật hỗn loạn thông qua các phép điều chế tín hiệu [66, 67, 68]

mà không được dùng để tạo ra hệ mật mã hỗn loạn Tuy nhiên, điều này được khắcphục thông qua việc lựa chọn mô hình ứng dụng phù hợp có khả năng chịu nhiễu, ở

đó các sai số được chấp nhận như là thành phần nhiễu [69, 70, 71]

Thiết kế phần cứng số cho các hàm hỗn loạn thực hiện các phép biểu diễn tín hiệuvới số bit hữu hạn Điều này làm cho số trạng thái của hàm hỗn loạn là hữu hạn và tạo

ra các tín hiệu từ hàm hỗn loạn trở nên có chu kỳ Nếu số bit được dùng càng lớn thì

số trạng thái của hàm hỗn loạn càng nhiều và chu kỳ tín hiệu càng dài Các nghiêncứu gần đây gợi ý số bit được dùng sao cho hiệu quả về phần cứng [72] Để kéo dàichu kỳ của tín hiệu được tạo ra từ hàm hỗn loạn, người ta thường dùng một tín hiệugiả ngẫu nhiên tác động vào hàm hỗn loạn [73] Điều này đồng nghĩa với việc chiếmdụng thêm phần cứng số để thực hiện tác động làm kéo dài chu kỳ Phần mạch điện tácđộng nhằm làm kéo dài chu kỳ thường là LFSR như được thấy trong nghiên cứu [74].Đây không được xem là cản trở lớn bởi tài nguyên phần cứng cho LFSR thường nhỏhơn rất nhiều so với phần cứng dùng cho hàm hỗn loạn

Khi thiết kế phần cứng để thực hiện cho hệ mật hỗn loạn nào đó thì ngoài phầncứng của hàm hỗn loạn còn có phần cứng dùng cho việc trộn tín hiệu hỗn loạn với tínhiệu tin tức Những thách thức đối với phần cứng chủ yếu là tài nguyên yêu cầu, vàchúng cần được xem xét trong trường hợp cụ thể

1.6 Ảnh số và các đặc điểm

1.6.1 Biểu diễn ảnh số

Dữ liệu ảnh hiện nay được dùng rất phổ biến trên mọi lĩnh vực Phần lớn ảnh được lưutrên máy tính đã được số hóa Ảnh được hiển thị với gốc tọa độ (x, y) = (0, 0) nằm ởphía trên bên trái Kích thước của ảnh được tính bằng số điểm ảnh theo hàng và cột;thường được ký hiệu là M hàng và N cột

Ảnh số được biểu diễn với hai cấu trúc dữ liệu chính là véctơ và ma trận các điểmảnh (ảnh raster) Cấu trúc dữ liệu của ảnh ở dạng véctơ (hay còn gọi là ảnh véctơ) làảnh mà các đối tượng rời rạc trong ảnh được biểu diễn bởi các điểm, các đường cong,các vùng được điền đầy Các thành phần biểu diễn cho ảnh véctơ được đánh mã Ví

dụ, ảnh ở Hình 1.14(a) được biểu diễn cấu trúc dữ liệu dưới dạng véctơ

Đối với ảnh raster, ma trận các điểm ảnh được ghép lại để tạo thành hình ảnh.Mỗi điểm ảnh được biểu diễn bởi một giá trị thể hiện cho mức độ xám hoặc mứcmàu Ảnh raster biểu diễn ảnh màu và ảnh mức xám (grayscale) như được thấy trong

Trang 40

(a) Ảnh véctơ (b) Ảnh raster

Hình 1.14: Ảnh được biểu diễn dưới dạng véctơ và raster (nguồn: [2]).

Hình 1.14(b) Mỗi điểm ảnh trong ảnh mức xám được biểu diễn bởi một số bit, thểhiện cho giá trị mức xám của điểm ảnh Ảnh mức xám được biểu diễn bởi k bit thì

của màu trắng Với ảnh màu, không gian màu được mã theo một số cách khác nhau,như RGB, YCbCr, và HSV v Các biểu thức chuyển đổi tương đương giữa các hệ màuđược dùng trong nhiều trường hợp [75] Ngoài ra, các ảnh còn được nén nhằm giảmbớt thông tin cho lưu trữ

Ở đây xem xét ảnh mức xám I thường được biểu diễn bởi k bit có kích thước với

trí (x, y) trong ảnh là p(x, y) và được biểu diễn bởi 8 bit (k = 3) Điểm ảnh p(x, y)

số lớn nhất và trọng số thấp nhất Như vậy, ảnh mức xám k bit được xem như là có klớp bit như ví dụ được mô tả trong Hình 1.15 Ảnh I được mô tả bởi

1.6.2 Các đặc trưng của dữ liệu ảnh

Với ảnh được chụp tự nhiên, các điểm ảnh lân cận nhau có giá trị gần bằng nhau Đây

là đặc trưng quan trọng của ảnh số được dùng để xem xét tạo ra các hệ mật mã phùhợp với dữ liệu Hình 1.16 cho thấy hàm tự tương quan của ba hàng điểm ảnh có chỉ

số 10, 150, và 240 lấy từ ảnh Lena kích thước 256 × 256 Các hàm tự tương quan nàyđược so sánh với chuỗi ngẫu nhiên có kích thước 256 giá trị nằm trong khoảng 0-255.Trong nghiên cứu [61], thông tin về ảnh được đánh giá là tập trung ở mặt phẳngcác bit dữ liệu cao Hình 1.17 cho thấy rõ sự quan trọng của các lớp bit cao Ở các

Ngày đăng: 20/03/2021, 09:02

TỪ KHÓA LIÊN QUAN

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

w