intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Tóm tắt luận án Tiến sĩ Kỹ thuật Điện tử: Mật mã dữ liệu ảnh ứng dụng kỹ thuật hỗn loạn

Chia sẻ: Gaocaolon6 Gaocaolon6 | Ngày: | Loại File: PDF | Số trang:27

65
lượt xem
1
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Luận án tìm hiểu các phương pháp hình thành nên hệ mật mã ứng dụng hàm hỗn loạn cho dữ liệu ảnh và khả năng chịu được các tấn công; từ đó đề 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, phù hợp trên nền phần cứng.

Chủ đề:
Lưu

Nội dung Text: Tóm tắt luận án Tiến sĩ Kỹ thuật Điện tử: Mật mã dữ liệu ảnh ứng dụng kỹ thuật hỗn loạn

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI HOÀNG XUÂN THÀNH MẬT MÃ DỮ LIỆU ẢNH ỨNG DỤNG KỸ THUẬT HỖN LOẠN Ngành: Kỹ thuật Điện tử Mã số: 9520203 TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT ĐIỆN TỬ HÀ NỘI - 2019
  2. Cô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
  3. MỞ ĐẦ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ức tạ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ính chất của số học. Các hệ mật đượ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ụng mậ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ằng bit 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ã 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ật mậ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 được xem 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àm hỗ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ác phươ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 theo thờ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 1 Hệ 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 1
  4. Tì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ên cứu của PGS. 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ả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 được dẫ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ên ˘ cứu gồm Hidayet OGRAS ¨ ¸ và Mustafa TURK (Thổ Nhĩ Kỳ); Nhóm nghiên cứu củ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ố. 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ồ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 đựng tấ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ạn vẫ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ều vòng lặp là rất khó và hầu như chưa được quan tâm. Đó cũng chính là những thá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ành hai 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ựa trê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. 2
  5. Chương 1 TỔNG QUAN VỀ HÀM HỖN LOẠN VÀ ẢNH SỐ 1.1 Giới thiệu Trong Chương này, phần đầu nói về tổng quan về mật 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ỗn loạn và khả năng ứng dụng của chúng vào lĩnh vực mật mã. 1.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ính toà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 cho việ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ẹn trong các dịch vụ xác thực. 1.2.2. Mật mã và phân loại mật mã Mật mã cổ điển Mật mã hiện đạ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ông khai để 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 được dùng trong thuật toán. Đị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ó  EK : P → C, D : C → P. (1.1) K Hay với mọi bản rõ P , ta có DK (EK (P )) = P. (1.2) Phân loại mật mã 3
  6. 1.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ân như sau: dX = F (X), (1.3) dt 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 Xn+1 = F (Xn ). (1.4) Trong đó, Xn là vector biến trạng thái. Hàm Logistic Hàm Logistic được diễn tả bởi biểu thức sau: xn+1 = rxn (1 − xn ), (1.5) Hàm Henon Biểu thức của hàm Henon như sau:  xn+1 = 1 − ax2n + yn , (1.6) yn+1 = bxn . Hàm Cat Hàm Cat là hàm 2D có biểu thức tổng quát mô tả như sau:       x1 (n + 1) x1 (n) x2 (n + 1) = mod A (a, b) × x2 (n) , N . (1.7) Hàm hỗn loạn Cat-Hadamard Hàm Cat-Hadamard được định nghĩa bởi ⎡ ⎤ ⎛ ⎡ ⎤ ⎞ x1 (n + 1) x1 (n) ⎢ x2 (n + 1) ⎥ ⎜ ⎢ x2 (n) ⎥ ⎟ ⎣ ... ⎦ = mod ⎝Hk × ⎣ ... ⎦ , N⎠ (1.8) x2k (n + 1) x2k (n) Hàm Standard Hàm Standard hay còn gọi là Chirikov–Taylor có dạng như sau:     xn+1 xn + yn+1 yn+1 = yn + k × sin(xn+1 )) , (1.9) 4
  7. Hàm Skew tent Hàm Skew tent có :  xn a nếu 0 ≤ xn ≤ a xn+1 = xn −1 (1.10) a−1 nếu a < xn ≤ 1 Hà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 x(k) n = (1 − ε)g(xn ) + εg( k k−1 xn ), (1.12) 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. 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ẫu nhiên cho việc mật mã [3]. 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 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ặp củ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ác phé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. 5
  8. 1.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ếp tuyế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ực tiế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ận cá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ần nhau. 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ác hàm hỗn loạn các các đặc trưng về đặc tính động đã được nghiên cứu nhiều nă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 nay chưa đề cập đến đặc trưng liên quan đến dữ liệu ảnh. Thực tế, ứng dụng hỗn loạ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 tranh luậ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 trung và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ất của Luận án này. 6
  9. Chươ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 động củ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ài báo [C1]. 2.2 Mô hình mật mã cấu trúc SPN Hệ mật mã dựa trên kỹ thuật hỗn loạn được xem là hệ mật mã có cách tiếp cận mới, và khác với hệ mật mã truyền thống [7, 8, 9]. Trong hệ thống mật mã ảnh dùng cấu trúc SPN trong Hình 2.1. Hình 2.1: Mật mã có cấu trúc SPN dùng hỗn loạn. n np nr Xáo Thay Bản rõ Bản mã key scheduling 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 ra theo 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 ảnh như 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ị. 7
  10. Phươ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ách xé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ự di chuyể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 của hàm hỗn loạn Cấu trúc của hệ thống mật mã được đề xuất ở dạng mô hình Unified như được đưa ra trong Hình 2.2. Hệ thống gồm các quá trình hoán vị, khuếch tán và cân bằng phân bố bit. Bộ mã mật và giải mã mật sử dụng hàm hỗn loạn Logistic cho quá trình hoán vị và khuếch tán. Bộ mật mã Hệ mật đề xuất như trong Hình 2.2. 8
  11. Hình 2.2: Cấu trúc bộ mật mã đề xuất. P Xáo trộn điểm P(PP) Khuếch tán hỗn Cân bằng phân C ảnh hỗn loạn loạn bố bit (CPP) (CD) (BDB) (a) Bộ mật mã C Giải cân bằng phân Giải khuếch tán Giải xáo trộn điểm P(iPP) P bố bit hỗn loạn ảnh hỗn loạn (iBDB) (iCD) (iCPP) (b) Bộ giải mật mã a. Hoán vị điểm ảnh hỗn loạn (CPP) Khối CPP thực hiện hoán vị điểm ảnh trên không gian kích thước hàng và cột của ảnh. Hình 2.3: Cấu trúc khối CPP và CD trong hệ mật mã được đề xuất. bits bits Mở rộng bit bits bits bits Logisc Map Tách bit bits bits bits bits Hoán vị hỗn loạn (a) Khối CPP s bits Mở rộng bit s s s rounds Logisc map Tách bit s s s s Khuếch tán hỗn loạn (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ều khiể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) = 9
  12. F n (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 được biểu diễn bởi m2 bit r = r(dif f ) ⊕ BitE (dif f ) , (2.3) ⎧ ⎨ C0 cho r(dif f ) = 1 và p(x, y) vớix = 0 và y = 0, BitSw(dif f ) = C Y cho r(dif f ) = 1 và p(x, y) vớix = 0 hoặc y = 0, ⎩ X BitExtr(dif f ) cho 1 < r(dif f ) ≤ N (dif f ) 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(dif f ) , (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. Bộ giải mật mã Bộ giải mật mã được đưa ra Hình 2.2(a).Cấu trúc chi tiết của iCD được minh họa trong Hình 2.4. Giá trị của BitSw(dif f ) trở thành Hình 2.4: Cấu trúc của iCD. s bits Mở rộng bit s s s Z-1 rounds Chaoc Map Tách bit s s s s Giải hoán vị hỗn loạn s ⎧ ⎨ C0 cho r(dif f ) = 1 và p(x, y) với x = 0 và y = 0, BitSw(dif f ) = C −1 cho r(dif f ) = 1 và p(x, y) với x = 0 hoặc y = 0, ⎩ XY BitExtr(dif f ) cho 1 < r(dif f ) ≤ N (dif f ) và p(x, y) với ∀x, y. (2.6) 10
  13. Bả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 m1 32 1.31 m2 33 2.31 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 r(perm) 3,75 33 r(dif f ) 3,75 33 IV (perm) 0,0123456789 32 IV (dif f ) 0,9876543210 32 C0 123 8 Tổng số bit 138 Kết quả mô phỏng Để minh họa hoạt động của hệ thống mật mã đề xuất, ví dụ ở đây được mô phỏng cho ảnh mức xám 8 bit với kích thước 256×256 hoặc k1 = log2 256 × 256 (hay k1 = 16 bit và k2 = 8 bit). Bảng 2.1 và 2.2 lần lượt hiển thị số bit và giá trị được chọn cho các tham số. (perm) Thứ tự của các bit được mở rộng bit hoặc tách bit ra thể hiện bởi Q1 , (dif f ) (perm) (dif f ) Q1 , Q2 và Q2 sẽ làm cho không gian khóa được mở rộng đáng kể. 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àn toà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ọi thành phần tạo nên khóa mật, tức là r(perm) , r(dif f ) , IV (perm) , IV (dif f ) và C0 . Lượng sai khác nhỏ nhất được xác định bởi độ phân giải của việc biểu diễn giá trị, tức là giá trị của bit LSB. Giá trị trung bình và độ lệch chuẩn của Cdr được thể hiện trong Bảng 2.4. Điều đó cho thấy phương phá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. Các danh sách bit Thứ tự của bit (perm) Q1 {2, 9, 13, 1, 10, 8, 5, 12, 3, 14, 7, 15, 4, 0, 6, 11} (perm) Q2 {3, 14, 6, 15, 10, 8, 4, 12, 13, 11, 7, 1, 5, 0, 2, 9} (dif f ) Q1 {7, 1, 3, 6, 4, 5, 2, 0} (dif f ) Q2 {2, 5, 6, 0, 4, 3, 7, 1} 11
  14. Bảng 2.4: Độ nhạy của khóa mật tính theo Cdr. Cdr Tham số xem xét Trung bình (%) Độ lệch chuẩn (%) N 1 2 3 1 2 3 r(perm) 99,8 99,9 99,9 0,015 0,01 0,01 r(dif f ) 99,7 99,8 99,8 0,02, 0,02 0,01 IV (perm) 98,6 98,8 99,0 0,012 0,01 0,01 IV (dif f ) 98,9 98,9 99,0 0,02 0,015 0,01 C0 99,0 99,4 99,5 0,021 0,02 0,01 Bảng 2.5: Lượng tin trong ảnh bản mã. Tên ảnh IE N 1 2 3 Lena 7,990 7,990 7,998 Cameraman 7,980 7,990 7,999 House 7,970 7,989 7,999 Peppers 7,985 7,987 7,999 c. Phân tích lượng tin Kết quả này cho thấy giá trị IE đạt được là 7,999 là tốt hơn so với hầu hết các kết quả nghiên cứu được công bố gần đây. Cụ thể, đạt được giá trị là 7,9972 trong [11], 7,9974 trong [12], hay 7,9965 trong [13]... 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. N P CR(%) U ACI(%) Nround Trung bình(%) Lệch chuẩn(%) Trung bình(%) Lệch chuẩn(%) 1 99,6 0,030 33,451 0,020 2 99,8 0,012 33,450 0,015 3 99,9 0,010 33,430 0,011 12
  15. 2.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ật Algorithm 1. Algorithm 1 Mật mã ảnh lớp bit ĐẦU VÀO: Đọc ảnh mức xám I kích thước M × N điểm ảnh. ĐẦU RA: Ảnh bản mã C. 1: procedure Mật mã ảnh 2: Bên gửi S nhận các tham số a, b từ hàm phân bố khóa Chebyshev-Key ở Thuật toán Algorithm 3; 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; 5: for 1 ≤ i ≤ 8 do 6: Tách mặt phẳng bit ith để có ma trận bit Ii kích thước M × N ; 7: if (r = 0) then 8: Chèn thêm 8 − r bit ‘0’ vào ma trận Ii ; 9: end if 10: Hoán vị các bit trong ma trận Ii dùng hàm hỗn loạn Cat để nhận được ma trận bit Bi = P erbitbyCat [Ii ]; 11: Chuyển đổi ma trận Bi thành mảng các số ở hệ 10, nhận được Ci ; 12: Ghép các mảng Ci để tạo thành các ma trận M8 kích thước 8×8; 13: end for; 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 Ei ; 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ủa các ảnh màu và ảnh mức xám. 13
  16. Hình 2.5: Ảnh bản rõ và ảnh bản mã. (a) Ảnh (b) Ảnh (c) Ảnh màu (d) Ảnh màu Lena bản mã Flower (Im- bản mã (Image2). của 2.5(a). 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 được thấ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. 1: procedure Giải mật ảnh 2: Bên nhận R nhận các tham số a, b từ bên phân phối khóa Chebyshev-Key trong Alogrithm 3; 3: for i = 1, 2, 3, 4, 5, 6, 7, 8 do % Số hiệu của lớp bit 4: Tác lớp bit thứ ith ; 5: Lưu lớp bit thứ ith vào ma trận bit Ei ; 6: Chuyển đổi Ei thành mảng các số Bi ; 7: Ghép các mảng Bi thành mảng M8 ; 8: end for; 9: Tìm ma trận nghịch đảo H3−1 ; 10:  Thực hiện  nhân giữa M8 với H3−1 để nhận được D = −1 M 8 × H3 mod 256; 11: Chuyển D thành 8 mảng nhị phân D∗ ; 12: Áp dụng hàm InvertP erbitbyCat(.) vào D∗ để tìm ma trận khôi phục hoán vị D∗∗ = InvertP erbitbyCat [D∗ ]; 13: Xóa bỏ 8 − r bit cuối cùng trong từng Di ; 14: Khôi phục ảnh I từ 8 ma trận Di ; 15: end procedure 2.4 Kết luận Chương này đã trình bày các đặc trưng cơ bản của hàm hỗn loạn và khả năng ứng dụng chúng vào để thiết kế hệ mật mã. Với các hàm hỗn loạn, ta có các cách khác nhau để dùng vào mật mã, đó là thông qua số lần lặp hàm hỗn loạn, đặc tính động của hàm hỗn loạn, và tham số điều khiển cũng như giá trị điều kiện đầu. 14
  17. Hình 3.1: Mã hóa và giải mã. Ảnh bản rõ khôi phục P Ảnh bản rõ P Sắp xếp lại thành ảnh Tạo ra ma trận mở rộng MPD Đảo ngược xáo trộn ME (rp vòng) Xáo trộn (rp vòng) MTD MPE Chuyển mảng 1D thành Chuyển ma trận 2D ma trận 2D thành mảng 1D ADD AE Tái khuếch tán Khuếch tán (1 vòng) (1 vòng) AD ADE Chuyển ma trận 2D Chuyển mảng 1D thành thành mảng 1D ma trận 2D MD MTE Tạo ra ma trận mở rộng Sắp xếp lại thành ảnh C C Ảnh bản mã Ảnh bản mã (a) Các bước (b) Các bước mã hóa giải mật 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òng khuế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ạn trong 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 được trì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ọn bả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ông trên phá được hệ thống đó. 15
  18. 3.3 Mô tả mật mã hóa ảnh Ảnh màu RGB có ba lớp: R (đỏ), G (xanh lá), B (xanh lam). Mỗi lớp được xem như là một ảnh xám. Ảnh ba màu được sắp xếp lại là hai bit cao nhất của mỗi điểm ảnh ở lớp R, G, B được lấy ra và ghép chúng lại thành bức ảnh xám 6 bit có kích thước là N × N và ba bức ảnh xám 6 bit kích thước N × N có các điểm ảnh là 6 bit thấp tạo thành một ma trận có kích thước 2N ×2N . Thuật toán mã hóa bao gồm 2 qúa trình: xáo trộn và khuếch tán như trong Hình 3.1. Tại quá trình mã hóa, P là ảnh rõ, trong khi đó tại giải mã thì P là ảnh được khôi phục. C là ảnh mật. Kí hiệu M là ma trận 2 chiều, A là mảng một chiều. Mô tả các kí hiệu và các dải giá trị được viết như trong phương trình (3.1). ⎧ P = {f (x, y); f (x, y) ∈ [0, 255], ∀x, y ∈ [1, N ]} ⎪ ⎪ ⎪ ⎪ M = {f (x, y); f (x, y) ∈ [0, 63], ∀x, y ∈ [1, 2N ]} ⎨ MEP = {f (x, y); f (x, y) ∈ [0, 63], ∀x, y ∈ [1, 2N ]} E Encryption : 2 ⎪ A E = {ac(i); ac(i) ∈ [0, 63], i ∈ [1, 4N ]} ⎪ ⎪ 2 ⎪ ⎩ ADE = {cipher_d(i); cipher_d(i) ∈ [0, 63], i ∈ [1, 4N ]} M TE = {f (x, y); f (x, y) ∈ [0, 63], ∀x, y ∈ [1, 2N ]} ⎧ C = {f (x, y); f (x, y) ∈ [0, 255], ∀x, y ∈ [1, N ]} (3.1) ⎪ ⎪ ⎪ ⎪ MD = {f (x, y); f (x, y) ∈ [0, 63], ∀x, y ∈ [1, 2N ]} ⎨ AD = {cipher_d(i); cipher_d(i) ∈ [0, 63], i ∈ [1, 4N 2 ]} Decryption : ⎪ ⎪ ADD = {ac(i); ac(i) ∈ [0, 63], i ∈ [1, 4N 2 ]} ⎪ ⎪ ⎩ M TD = {f (x, y); f (x, y) ∈ [0, 63], ∀x, y ∈ [1, 2N ]} M PD = {f (x, y); f (x, y) ∈ [0, 63], ∀x, y ∈ [1, 2N ]} Từ mật của phần tử thứ ith được tính toán theo  temp1 = cipher _d(i − 1) temp2 = rand1 (temp1 ) (3.2) cipher _d(i) = ([ac(i) ⊕ rand2 (temp2 )] + rand3 (i)) mod 64 Phương trình cho quá trình khuếch tán ngược ở giai đoạn giải mã như sau: ⎧ ⎪ temp = cipher _d(i − 1), ⎨ temp1 = rand (temp ), 2  1 1 [64 + cipher _d(i) − rand3 (i)] ⊕ rand2 (temp2 ), cipher _d(i) < rand3 (i), (3.3) ⎪ ⎩ ac(i) = [cipher _d(i) − rand3 (i)] ⊕ rand2 (temp2 ), cipher _d(i) ≥ rand3 (i). 3.4 Phân tích hệ mật mã hỗn loạn với một vòng lặp Để hình dung quá trình thám mã, ví dụ với ảnh RGB kích thước 5 × 5 được dùng để mô tả, sau đó trường hợp tổng quát ảnh RGB có kích thước N × N được diễn giải. Thêm vào đó, ma trận 2D được dùng để thay cho dãy 1D. 3.4.1. Tấn công lựa chọn bản rõ Tấn công vào quá trình xáo trộn Các bước thực hiện lấy lại thông tin hỗn loạn của vị trí hiện tại (x0 , y0 ) và vị trí đích đến (x1 , y1 ) được mô tả như sau: 16
  19. Hình 3.2: Khôi phục luật xáo trộn trong tấn công lựa chọn bản rõ cho vị trí (x0 , y0 ). Ảnh bản rõ ngẫu nhiên Ảnh mẫu bản rõ được chọn Sửa đổi giá trị tại (x0,y0) Parb P(x0,y0) Mật mã hóa Mật mã hóa Carb C(x0,y0) Tạo ra ma trận mở rộng Tạo ra ma trận mở rộng ME_arb ME_(x0,y0) So sánh (x1,y1) Bước 1: chọn ma trận mở rộng ME _arb bất kì. Bước 2: co ma trận ME _arb lại thành Parb để mã hóa. Bước 3: mã hóa Parb thu được Carb ở đầu ra của bộ mã hóa. Bước 4: dãn Carb thu được ma trận M T( Ea rb) Bước 5: chọn vị trí (x0 , y0 ) để tấn công quá trình xáo trộn. Bước 6: Gán ME _(x0 ,y0 ) = M _arb và chỉ khác nhau giá trị tại vị trí (x0 , y0 ). Bước 7: co ME _(x0 ,y0 ) lại thành P(x0 ,y0 ) để mã hóa. Bước 8: mã hóa P(x0 ,y0 ) thu được C(x0 ,y0 ) ở đầu ra của bộ mã hóa. Bước 9: tạo ra ma trận mở rộng M TE _(x0 ,y0 ) bằng cách dãn C(x0 ,y0 ) . Bước 10: so sánh hai ma trận M TE _arb và M TE _(x0 ,y0 ) để tìm ra vị trí (x1 , y1 ), tại đó bắt đầu có sự khác nhau về giá trị. Bước 11: lưu lại giá trị x1 vào vị trí (x0 , y0 ) của ma trận ROW và lưu lại giá trị y1 vào vị trí (x0 , y0 ) của ma trận COL. Bước 12: lặp lại bước 5 đến bước 11 để quét hết các vị trí hiện tại và tìm ra các vị trí đích. Hình 3.2 cho thấy mô hình tấn công luật xáo trộn. Kết quả của tấn công xáo trộn cho bức ảnh rõ kích thước 5 × 5 và luật xáo trộn đã đạt được. Tấn công vào khuếch tán Trong tấn công khuếch tán, khôi phục của các phần tử của dãy số ngẫu nhiên rcv_rd2 (tương đương với rand2 ) phải được xác định cho tất các các giái trị có thể có của các từ mà cipher_d(i − 1). Chúng ta hãy quan sát kĩ hơn biểu thức (3.2). Có một phép XOR (⊕) giữa ac(i) và rand2 (temp2 ), giá trị của các bit tại những vị trí khác nhau trong rand2 (temp2 ) có thể được phát hiện dễ dàng bằng cách quan sát các kết quả của cipher_d(i) trong trường hợp ac(i) = 0 và ac(i) = 0. Các giá trị bit tại những vị trí khác nhau của rand2 (temp2 ) có thể được tạo ra bằng các biện pháp kiểm tra bit cho mỗi vị trí bit. Kết quả là, phương trình mô tả bản sao khuếch tán dùng để khôi phục khóa như phương trình (3.4). Với rcv_rd2 và rcv_rd3 là một cặp khóa được khôi phục.  cipher _d(0) = rcv _rd2_initial cipher _d(i) = ([ac(i) ⊕ rcv _rd2 (cipher _d(i − 1))] + rcv _rd3 (i, cipher_d(i − 1))) mod 64, ...f or i = 1...4N 2 (3.4) 17
  20. Hình 3.3: Thủ tục khôi phục lại luật xáo trộn trong tấn công bản mã cho điểm ảnh tại vị trí (x0 , y0 ). Ảnh bản mã ngẫu nhiên Ảnh bản mã dùngc cho tấn công xáo trộn Sửa đổi giá trị tại (x0,y0) Carb C(x0,y0) Giải mật mã hóa Giải mật mã hóa Parb P(x0,y0) Tạo ra ma trận mở rộng Tạo ra ma trận mở rộng MPD_arb MPD_(x0,y0) Comparison (x1,y1), (x2,y2).... (xn,yn) Thuật toán mã hóa này không thể chống lại được kiểu tấn công lựa chọn bản rõ. 3.4.2. Tấn công lựa chọn bản mã Trong việc thực hiện tấn công lựa chọn bản mã, các khóa khuếch tán và các bẳng tra cứu hỗn loạn mong muốn được khôi phục. Chi tiết các thủ tục và các ví dụ được trình bày phần dưới. Tấn công quá trình xáo trộn ngược Nói chung, chiến lược để tấn công luật xáo trộn ngược như Hình 3.3 và kĩ thuật để tìm ra luật xáo trộn đảo là một bit khác nhau so với tấn công lựa chọn bản rõ. Các thủ tục để khôi phục luật xáo trộn được thực hiện như sau: Bước 1: chọn ma trận mở rộng MD_arb bất kì. Bước 2: co ma trận MD_arb lại thành Carb để giải mã. Bước 3: giải mã Carb thu được Parb ở đầu ra của bộ giải mã. Bước 4: dãn Parb thu được ma trận M PD_arb . Bước 5: chọn vị trí (x0 , y0 ) để tấn công quá trình xáo trộn. Bước 6: Gán MD_(x0 ,y0 ) =MD_arb và chỉ khác nhau giá trị tại vị trí (x0 , y0 ). Bước 7: co MD_(x0 ,y0 ) lại thành C(x0 ,y0 ) để mã hóa. Bước 8: sau khi giải mã C(x0 ,y0 ) thu được P(x0 ,y0 ) ở đầu ra của bộ giải mã. Bước 9: tạo ra ma trận mở rộng M PD_(x0 ,y0 ) bằng cách dãn P(x0 ,y0 ) . Bước 10: so sánh hai ma trận M PD_arb và M PD_(x0 ,y0 ) để tìm ra vị trí (x1 , y1 ), tại đó bắt đầu có sự khác nhau về giá trị. Bước 11: Tiếp tục tìm các vị trí (x1 , y1 ) mà chưa có trong bảng tra cứu. Bước 12: lưu lại giá trị x1 vào vị trí (x0 , y0 ) của ma trận ROW và lưu lại giá trị y1 vào vị trí (x0 , y0 ) của ma trận COL. Bước 13: lặp lại bước 5 đến bước 12 để quét hết các vị trí hiện tại và tìm ra các vị trí đích. 18
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2