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.. Mật mã theo hướng ứng dụng hỗn loạnvẫn còn đang trong giai đoạn đầu của quá trình phát tr
Trang 1BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
Trang 2Công trình này được hoàn thành tại:
Trường Đại học Bách Khoa Hà Nội
Người hướng dẫn khoa học: PGS.TS.Hoàng Mạnh Thắng
Phản biện 1:
Phản biện 2:
Phản biện 3:
Luận án được bảo vệ trước Hội đồng đánh giá luận án tiến sĩ cấp trường
họp tại Trường Đại học Bách Khoa Hà Nội
vào hồi giờ, ngày tháng năm 2019
Có thể tìm hiểu luận án tại:
1 Thư viện Tạ Quang Bửu, Trường ĐHBK Hà Nội
2 Thư viện Quốc gia Việt Nam
Trang 3MỞ ĐẦU
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ứctạp của giải thuật mật mã hóa và giải mật mã, đồng thời dựa trên các tínhchất của số học Các hệ mật được đưa về nguyên tắc này đểxem xét Hơnnữa, trong kỷ nguyên số, hầu hết các ứng dụng mật mã được thực hiện trêncác thiết bị số, do vậy độ dài của khóa mật được tính bằng bit và thường đượcxem 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ẫntheo cách lý giải đó, mật mã hóa ứng dụng hiện tượng hỗn loạn của hệ thốngđộng1 là dựa trên sự phức tạp của hệ động học và sự phức tạp của giải thuậtmật mã hóa và giải mật mã hóa Tuy nhiên, sự phức tạp của hệ hỗn loạn đượcxem xét tương ứng với bê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ân tí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:
• Tìm hiểu các phương pháp hình thành lên hệ mật mã ứng dụng hàmhỗn loạn cho dữ liệu ảnh và khả năng chịu được các tấn công
• Luận án đề xuất ra hệ mật mã hỗn loạn mới có khả năng chịu được cácphương pháp tấn công, phù hợp trên nền phần cứng
Đối tượng và phạm vi nghiên cứu:
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: hệ mật sử dụng các hàm hỗn loạn rời rạc theothời gian
• Phạm vi nghiên cứu: Hệ mật được xây dựng theo cấu trúc Unified, vàcác phương pháp phân tích mã cơ bản
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ê
3 Tình hình nghiên cứu trong và ngoài nước
1Hệ mật mã được xây dựng dưa vào hàm hỗn loạn được gọi tắt là hệ mật mã hỗn
loạn
Trang 4Tình hình nghiên cứu trong nước:
Theo như hiểu biết của tác giả Luận án này, chỉ có duy nhất nhóm nghiêncứu của PGS Hoàng Mạnh Thắng (người hướng dẫn khoa học của Luận ánnày) thuộc Trường Đại học Bách khoa Hà nội tập trung nghiên cứu về hỗnloạn và ứng dụng trong bảo mật và truyền tin
Tình hình nghiên cứu ngoài nước:
Các nhóm lớn nghiên cứu về vấn đề này gồm: Nhóm nghiên cứu đượcdẫn dắt bởi GS Guanrong Ron Chen (Hồng Kông); Nhóm nghiên cứu của TS.Arroyo Guarde˜no David và TS Gonzalo Alvarez (Tây Ban Nha); Nhóm nghiêncứu gồm Hidayet O ˘GRAS¸ và Mustafa T ¨URK (Thổ Nhĩ Kỳ); Nhóm nghiên cứucủa GS Safwan El Assad (Pháp); và nhiều nhóm nghiên cứu khác
4 Động lực nghiên cứu:
Cho đến nay, những cố gắng đó đã tạo ra nhiều hệ mật được công bố Tuynhiê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ồi kết về các vấn đề liên quan như tạo hệ mật mã mới, khả năng chịu đựngtấn công, và tối ưu hóa các quá trình Mật mã theo hướng ứng dụng hỗn loạnvẫn còn đang trong giai đoạn đầu của quá 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 nghiên cứu của Luận án này.Phân tích mã là việc làm không thểthiếu, song song với tạo mật mã.Phân tích mật mã có cấu trúc mạng hoán vị-thay thế (SPN: Substitution-Permutation Network) được xây dựng dựa trên các hàm hỗn loạn với nhiềuvòng lặp là rất khó và hầu như chưa được quan tâm Đó cũng chính là nhữngthách thức tạo nên động lự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 làm việc ởmức bit và phân tích mật mã Luận án có một số đóng góp được nhóm thànhhai nhóm chính như sau:
• Đề xuất 02 hệ mật mã hỗn loạn làm việc ở mức bit Hệ thứ nhất dựatrên đặc tính động của hàm Logistic; hệ thứ hai dựa trên hàm Cat vàCat-Hadamard nhiều chiều
• Đề xuất 02 phương pháp phá vỡ tính chất mật của hệ mật mã hỗn loạn
có cấu trúc SPN: một vòng lặp mã và nhiều vòng lặp mã Sau đó đưa
ra cải tiến nhằm nâng cao khả năng chịu đựng tấn công
6 Cấu trúc của Luận án
Cấu trú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 2: Mật mã ảnh ở mức bit ứng dụng kỹ thuật hỗn loạn Chương 3:Phân tích mật mã hỗn loạn có cấu trúc SPN Kết luận và hướng phát triển
Trang 51.2 An toàn thông tin, mật mã và phân loại mật mã
1.2.1 An toàn thông tin
Tổ chức NIST của Mỹ xuất bản sổ tay an ninh cho thông tin và dịch vụvới ba mục tiêu cần đảm bảo gồm: (i) Tính bí mật (confidentiality), (ii) Tínhtoàn vẹn (integrity), và (iii) Tính sẵn sàng (availability)
Mật mã được xem như là một trong những kỹ thuật được ứng dụng choviệc đảm bảo một số tính chất, điển hình là tính bảo mật và tính toàn vẹntrong các dịch vụ xác thực
Định nghĩa
Mật mã hiện đại được định nghĩa là một hệ gồm 5 tham số (P, C, K, E, D) với ý nghĩa như sau [1]: P (plaintext):Tập bản rõ; C (ciphertext): Tập bản mã.
K (Key): Tập khóa mật; E (Encryption): Tập qui tắc mật mã; D (Decryption):
Tập qui tắc giải mật mã Đối với mỗi khóa K ∈ K, ta có qui tắc mã hóa EK ∈ E
và tương ứng với nó là một qui tắc giải mã DK ∈ D đểcó
Trang 61.3 Hệ thống hỗn loạn
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ânnhư sau:
dX
trong đó, X = {xi, xi ∈ R, i = 1 n} là vectơ biểu diễn biến trạng thái
1.3.2 Hệ hỗn loạn rời rạc theo thời gian
Một hàm rời rạc theo thời gian được mô tả bởi
Trang 7Hàm Chebyshev
Biểu thức tổng quát của hàm như sau:
Tn(x) = 2xTn−1(x) − Tn−2(x)., (1.11)
Hàm hỗn loạn không gian-thời gian
Hàm hỗn loạn ghép không gian-thời gian theo kiểu lưới ghép một chiều(CML) [2] như sau
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ã
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ác giá trị tạo ra từ hàm hỗn loạn được dùng như là một chuỗi giả ngẫunhiên cho việc mật mã [3] Cách thứ hai là ứng dụng đặc tính động của hàmhỗ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 vectơ điều kiện đầu (IV) và/hoặc vào các tham số điều khiển [4]
1.5.1 Tạo chuỗi bit ngẫu nhiên
• Phương pháp 1: Giá trị Xn của biến trạng thái được sinh ra qua quátrình lặp các hàm hỗn loạn
• Phương pháp 2: Tạo ra chuỗi bit giả ngẫu nhiên thông qua các phép lặpcủa được thực hiện dựa trên một chuỗi số biết trước và kết hợp với cácphép XORshift như được đề xuất bởi [5, 6]
• 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
• Phương pháp 4: Từ thực tế đánh giá cho thấy các giá trị được 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
Trang 81.5.2 Tạo chuỗi số giả ngẫu nhiên
• 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 chuỗi giá trị được sinh ra từ hàm hỗn loạn là các số thực Xn
• 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 thanh ghi dịch hồi tiếptuyến tính (LFSR) nhằm tạo ra sự bất định
• Phương pháp 3: Tạo chuỗi giá trị giả ngẫu nhiên có thểđược tạo ra trựctiếp từ hàm hỗn loạn
1.6 Ảnh số và các đặc điểm
1.6.1 Biểu diễn ảnh số
Ảnh số được biểu diễn với hai cấu trúc dữ liệu chính là vectơ và ma trậncác điểm ảnh (ảnh raster)
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ầnnhau
1.7 Kết luận
Trong Chương này đã trình bày tổng quan các nội dung cơ bản của mật mã
và phân loại mật mã, các hàm hỗn loạn, và ảnh số cùng với các đặc trưng Cáchàm hỗn loạn các các đặc trưng về đặc tính động đã được nghiên cứu nhiềunăm nay Việc ứng dụng các hàm hỗn loạn vào được xem xét xoay quanh khảnăng tác động và giá trị các biến hỗn loạn Các hàm hỗn loạn được dùng đểtạo ra các chuỗi giả ngẫu nhiên theo một số cách khác nhau Các chuỗi này cóthểđược dùng trong các quá trình mật mã trong các đề xuất trước đây.Trong phần lớn các hệ mật mã hỗn loạn được đề xuất từ nhiều năm naychưa đề cập đến đặc trưng liên quan đến dữ liệu ảnh Thực tế, ứng dụng hỗnloạn vào thiết kế hệ mật mã là một hướng còn mới và vẫn còn rất nhiều tranhluận trên các diễn đàn khoa học Phần lớn các nghiên cứu hiện nay tập trungvào mật mã dữ liệu ảnh, một số ít đề xuất mật mã cho dữ liệu âm thanh,giọng nói Điều này cho thấy khả năng phát triển ứng dụng hỗn loạn cho mật
mã vẫn còn nhiều nhiều triển vọng Chương 2 của Luận án trình bày chi tiết
về các hướng tiếp cận của mật mã ứng dụng kỹ thuật hỗn loạn và các đề xuấtcủa Luận án này
Trang 9Chương 2
MẬT MÃ ẢNH Ở MỨC BIT ỨNG DỤNG
KỸTHUẬT HỖN LOẠN
2.1 Giới thiệu
Chương này cũng trình bày đóng góp của Luận án trong việc đề xuất các
hệ mã mật mới làm việc ở mức bit Phương pháp tác động lên tăng tính độngcủa hàm hỗn loạn Logistic được thực hiện cho cả quá trình hoán vị điểm ảnh
và quá trình khuếch tán Nội dung đề xuất này được trình bày trong bài báo[J3]
Hệ mật mã hỗn loạn thứ hai được đề xuất sử dụng hàm hỗn loạn Cat vàCat-Hadamard nhiều chiều Nội dung đề xuất này được trình bày trong bàibáo [C1]
Khóa mật
Trong thực tế, việc ứng dụng hỗn loạn vào quá trình mật mã được chia ratheo các hướng như sau:
• Tạo chuỗi ngẫu nhiên dùng hỗn loạn:
• Tạo qui luật hoán vị hoặc thay thế:
2.2.1 Hoán vị các điểm ảnh sử dụng hỗn loạn
Các cơ chế hoán vị dữ liệu cho ảnh
Phương pháp 1: Coi ảnh như ma trận 2 chiều, và dùng tọa độ điểm ảnhnhư là đầu vào cho các hàm hỗn loạn đểtính ra vị trí của điểm ảnh được hoán
vị giá trị
Trang 10Phương pháp 2: Các điểm ảnh được quét để hình thành mảng một chiều,sau đó thực hiện hoán vị trên mảng một chiều này [3].
Luật hoán vị dựa vào biến trạng thái
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 Đánh giá hiệu năng của phép hoán vị
• Phần trăm các điểm ảnh lân cận: Tham số PAPC đánh giá bằng cáchxét hai của sổ vuông gồm các điểm ảnh
• Khoảng cách giữa các điểm ảnh lân cận: Phương pháp DBAP xét sự dichuyển của điểm ảnh từ cửa sổ W1 ra các vị trí với khoảng cách bao xa
so với điểm ảnh quan tâm
2.2.2 Phép thay thế sử dụng hỗn loạn
Phép thay thế không tạo ra lan truyền
• Tính chất ánh xạ một-một
• Tiêu chí thác chặt (SAC)
• Tiêu chí độc lập bit đầu ra (BIC)
• Tính chất phân bố XOR vào/ra đồng đều
Thay thế có lan truyền
2.3 Đề xuất các hệ mật mã hỗn loạn làm việc ở mức bit
2.3.1 Đề xuất 1: Hệ mật mã dựa trên tác động đặc tính động
Trang 11Hình 2.2: Cấu trúc bộ mật mã đề xuất.
P Xáo trộn điểm ảnh hỗn loạn
(CPP)
Khuếch tán hỗn loạn
Hình 2.3: Cấu trúc khối CPP và CD trong hệ mật mã được đề xuất
bits s
(b) Khối CD
Trong quá trình hoán vị đưa ra ở Hình 2.3(a), giá trị của tham số điềukhiển r của hàm hỗn loạn Logistic là m2 bit và được tính bởi biểu thức
r = r(perm)⊕ BitE(perm), (2.1)
Ở đây, hàm hỗn loạn Logistic có thểđược lặp lại n lần vì X(n+1) =
Trang 12Fn(Xn) với IV(perm) là giá trị ban đầu Vị trí mới của điểm ảnh là
XYnew = XY ⊕ BitExtr(perm), (2.2)
b Khuếch tán hỗ n loạn (CD)Quá trình khuếch tán hỗn loạn như đượcđưa ra trong Hình 2.3(b) Tham số điều khiển của hàm Logistic đượcbiểu diễn bởi m2 bit
r = r(diff)⊕ BitE(diff), (2.3)
BitSw(diff)=
⎧
⎨
⎩
C0 cho r(diff)= 1 và p(x, y) vớix = 0 và y = 0,
CXY cho r(diff)= 1 và p(x, y) vớix = 0 hoặc y = 0,BitExtr(diff) cho 1 < r(diff)≤ N(diff) và p(x, y) với ∀x, y
(2.4)
Giá trị của các điểm ảnh sau khuếch tán CXY là
CXY = PXY ⊕ BitExtr(diff), (2.5)với C0 là byte bản mã khởi tạo ban đầu.
c Cân bằng phân bố bit (BDB) Cân bằng phân phối bit nhằm đểlàm cho phân bố số bit 0 và số bit 1 tương đối bằng nhau
bits
s
Z -1
s s
BitSw(diff)=
⎧
⎨
⎩
C0 cho r(diff) = 1 và p(x, y) với x = 0 và y = 0,
CXY−1 cho r(diff)= 1 và p(x, y) với x = 0 hoặc y = 0,BitExtr(diff) cho 1 < r(diff)≤ N(diff) và p(x, y) với ∀x, y
(2.6)
Trang 13Bảng 2.1: Số bit biểu diễn dữ liệu.
Tham số Số bit Định dạng dấu phảy tĩnh
Bảng 2.2: Giá trị của các tham số và số bit biểu diễn Npara
Tham số Giá trị được chọn Số bit biểu diễn
Thứ tự của các bit được mở rộng bit hoặc tách bit ra thểhiện bởi Q(perm)1 ,
Q(diff)1 , Q(perm)2 và Q(diff)2 sẽ làm cho không gian khóa được mở rộng đángkể
Phân tích khả năng bảo mật
a Phân tích không gian khóa Do đó, không gian khóa là NSpace =
Npara + Norder (= 378 bit), hay 2378 Như vậy, hệ mật mã này hoàntoàn đáp ứng yêu cầu đảm bảo an toàn trước tấn công vét cạn
b Phân tích độ nhạy của khóa mật
Việc mô phỏng được thực hiện với sự khác biệt nhỏ nhất trong mọithành phần tạo nên khóa mật, tức là r(perm), r(diff), IV(perm), IV(diff)
và C0 Lượng sai khác nhỏ nhất được xác định bởi độ phân giải của việcbiểu diễn giá trị, tức là giá trị của bit LSB Giá trị trung bình và độ lệchchuẩn của Cdr được thểhiện trong Bảng 2.4 Điều đó cho thấy phươngpháp đề xuất cho ra kết quả lên đến 99,9 là tốt hơn so với giá trị tối đa
là 99,63% trong nghiên cứu [10]
Bảng 2.3: Thứ tự các bit được lựa chọn
Trang 14Bảng 2.4: Độ nhạy của khóa mật tính theo Cdr.
d Phân tích vi sai
Kết quả được thểhiện trong Bảng 2.6 cho thấy N P CR và U ACI của
hệ mật mã được đề xuất ở đây tốt hơn các kết quả gần đây được công
bố trong [10, 13] và tốt hơn so với các kết qủa được trích dẫn trong đó
Kết quả thiết kế mạch cứng
a Thiết kế hàm Logistic nhiều vòng lặp
b Thiết kế cho khối mở rộng bit
c Thiết kế cho khối tách bit
d Thiết kế tổng thể cho khối hoán vị
Bảng 2.6: Trung bình của N P CR và U ACI được tính toán với 100 ảnh
Trang 152.3.2 Đề xuất 2: Hệ mật mã hỗn loạn cho ảnh ởmức bit.
Hệ thống đề xuất này sử dụng hàm hỗn loạn Cat-Hadamard rời rạc đểmãhóa các ảnh ở dạng bitmap dựa trên các quá trình phân rã các mặt phẳng bit
Giải thuật mật mã dùng hàm hỗn loạn Cat-Hadamard
Các bước chi tiết thực hiện mật mã ảnh được minh họa trong giải thuậtAlgorithm 1
3: Thiết lập các chỉ số cho mặt phẳng bit i = 1, 2, 3, 4, 5, 6, 7, 8;
4: Tính toán r = (M × N ) mod 8 đểchèn thêm các bit;
14: Tìm H3 theo biểu thức (1.12) và nhận được ma trận kích thước 8 × 8;15: Thực hiện nhân M8 với H3 đểnhận được E = (M8× H3) mod 256;16: Chuyển E về thành 8 mảng nhị phân E∗;
17: Sắp xếp lại E∗ đểtrở thành ma trận bit E
i;18: Ghép 8 ma trận Ei thành ảnh C;
19: end procedure
Các kết quả mô phỏng được đưa ra ở Hình 2.5 cho bản rõ và bản mã củacác ảnh màu và ảnh mức xám
Trang 16Hình 2.5: Ảnh bản rõ và ảnh bản mã.
màu Lena (Image2).
của 2.5(a).
(c) Ảnh màu Flower (Im- age3).
của 2.5(c).
Giải thuật giải mật
Giải thuật giải mã là quá trình ngược lại với mật mã Các chi tiết đượcthấy trong giải thuật Algorithm 2
Algorithm 2 Giải mật ảnh lớp bit
ĐẦU VÀO: Ảnh bản mã C with size M× N pixels
ĐẦU RA:Ảnh bản rõ khôi phục I
Trang 17Sắp xếp lại thành ảnh
C P
Chương 3
PHÂN TÍCH MẬT MÃ HỖN LOẠN CÓ CẤU TRÚC SPN
Nội dung phần này trình bày điểm yếu về bảo mật của thuật toán mãhóa trong mạng hoán vị-thay thế (SPN) với nhiều vòng hoán vị và một vòngkhuếch tán được đề xuất bởi W.Zhang
3.1 Giới thiệu
Cho đến nay, chỉ có hai cuộc tấn công thành công vào các SPN hỗn loạntrong trường hợp một vòng mã hóa được đăng tải trong [14, 15] Như đãđược trình bày trong [14], phương pháp có thể được mở rộng để đối phó với
mã hóa nhiều vòng, trong khi công việc trong [14] chỉ thực hiện cho hệ mật
mã một vòng Nghiên cứu này, việc thám mã trên hệ mật hỗn loạn đượctrình bày Hai loại tấn công được thực hiện là lựa chọn bản rõ và lựa chọnbản mã
3.2 Một số qui ước trong phân tích mã
Có bốn kiểu tấn công cổđiển chính được xếp theo độ khó giảm dần: Chỉ
có bản mã; Biết được bản rõ; Lựa chọn bản rõ; và Lựa chọn bản mã Một
hệ mật không có tính bảo mật nếu có ít nhất một trong các kiểu tấn côngtrên phá được hệ thống đó