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

MỞ ĐẦU 1

Chương 1: TỔNG QUAN VỀ HÀM HỖN LOẠN VÀ ẢNH SỐ 7

1.1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

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

1.2.1 Định nghĩa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

1.2.2 Phân loại mật mã . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .8

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

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

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

1.3.2.1 Hàm Logistic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

1.3.2.2 Hàm Henon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

1.3.2.3 Hàm Cat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .14

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

1.3.2.5 Hàm Standard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

1.3.2.6 Hàm Skew tent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15

1.3.2.7 Hàm Chebyshev . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .16

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

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ã . . . . .16

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

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ã . . . . . . .18

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

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

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

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

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

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

1.7 Kết luận . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

pdf150 trang | Chia sẻ: honganh20 | Ngày: 15/03/2022 | Lượt xem: 209 | Lượt tải: 1download
Bạn đang xem trước 20 trang tài liệu Luận án Mật mã dữ liệu ảnh ứng dụng kỹ thuật hỗn loạn, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ch phân bố giá trị của các điểm ảnh (histogram) cho thấy, có tính cấu trúc trong phân bố giá trị điểm ảnh ở Hình 2.20(a) của ảnh bản rõ trong Hình 2.19(a); tính chất cấu trúc này bị phá vỡ và phân bố trở nên đồng đều ở Hình 2.20(b). 61 (a) Ảnh mức xám của màu đỏ (R) của ảnh RGB 2.19(b). (b) Ảnh màu RGB (Image1). (c) Ảnh màu Lena (Image2). (d) Ảnh màu Flower (Image3). (e) Ảnh bản mã của 2.19(a). (f) Ảnh bản mã của 2.19(b). (g) Ảnh bản mã của 2.19(c). (h) Ảnh bản mã của 2.19(d). Hình 2.19: Ảnh bản rõ và ảnh bản mã. 0 500 1000 1500 0 50 100 150 200 250 (a) Ảnh bản rõ Image1 0 200 400 600 800 1000 0 50 100 150 200 250 (b) Ảnh bản mã Image1 Hình 2.20: Phân bố giá trị điểm ảnh bản rõ và bản mã. 2.3.2.2 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. 62 Algorithm 2 : Giải mật ảnh lớp bit ĐẦU VÀO: Ảnh bản mã C with sizeM ×N pixels. ĐẦU RA: Ảnh bản rõ khôi phục I . procedure GIẢI MẬT ẢNH 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; for i = 1, 2, 3, 4, 5, 6, 7, 8 do % Số hiệu của lớp bit Tác lớp bit thứ ith; 5: Lưu lớp bit thứ ith vào ma trận bit Ei ; Chuyển đổi Ei thành mảng các số Bi; Ghép các mảng Bi thành mảngM8; end for; Tìm ma trận nghịch đảo H−13 ; 10: Thực hiện nhân giữaM8 với H−13 để nhận được D = ( M8 ×H −1 3 ) mod 256; Chuyển D thành 8 mảng nhị phân D∗; Áp dụng hàm InvertPerbitbyCat(.) vào D∗ để tìm ma trận khôi phục hoán vị D∗∗ = InvertPerbitbyCat [D∗]; Xóa bỏ 8− r bit cuối cùng trong từng Di; 15: Khôi phục ảnh I từ 8 ma trận Di; end procedure 2.3.2.3 Chi phí tính toán Chi phí tính toán cho các giải thuật này được đánh giá theo số lượng các phép toán hoạt động cần thiết cho các quá trình mật mã và giải mật, bao gồm: modulo, cộng, nhân, chia (đảo ngược) và lũy thừa. Chi phí này dùng để xem xét hiệu quả của giải thuật. Từ đó, chi phí thực hiện phần cứng có thể được ước tính dựa trên số lượng các hoạt động đó. Trong thực tế, chi phí của quá trình mật mã gồm hai quá trình chính. Đầu tiên, có các hoạt động hoán vị các bit trên sử dụng hàm hỗn loạn Cat; và thứ hai là nhân ma trận với hàm hỗn loạn Cat-Hadamard. Như vậy, cần 4 phép nhân, 2 phép cộng cho hàm PerbitbyCat(.); cần 8 phép nhân và 7 phép cộng cho phép nhân ma trận 8×8 và 2 phép toán modulo để chuẩn hóa dữ liệu về dải từ 0 đến 255. Do đó, chi phí tính toán của hệ mật mã được đề xuất ở đây là tốt hơn so với các phương pháp khác được đề xuất gần đây [71, 111, 112]. 2.3.2.4 Giải thuật phân phối khóa Để tạo cặp tham số (a, b) cho hai bên mật mã và giải mật, một giải thuật tạo khóa dựa trên đa thức Chebyshev được đưa ra trong Algorithm 3. Các đa thức Chebyshev như được định nghĩa trong biểu thức (1.17). Đa thức Chebyshev được biến đổi để tạo ra hàm Chebyshev rời rạc như sau y = Tn(x)mod p, (2.30) trong đó, x, n là các số nguyên và p là số nguyên tố lớn. Như được đưa ra trong [125], hàm hỗn loạn Chebyshev này thỏa mãn các thuộc tính bán-nhóm, thỏa mãn các đẳng thức sau: Tnm(x) = Tn(Tm(x)), Tn(Tm(x)) = Tm(Tn(x)). (2.31) 63 Như được đưa ra trong [125], đa thức Chebyshev rời rạc và bài toán logarit rời rạc Fq là tương đương về mặt tính toán. Algorithm 3 : Tạo ra các tham số. ĐẦU VÀO: Các số mầm để tạo số ngẫu nhiên. ĐẦU RA: Giá trị của a, b. procedure TẠO KHÓA Tạo ra hai số lớn αa, αb; A chọn khóa mật αa. Tương tự, B chọn khóa mật αb; Chọn số ngẫu nhiên x và tính toán khóa công khai: PKA = Tαa(x)mod p 5: và PKB = Tαb(x)mod p; Gửi bộ giá trị (αa;x, PKA), và (αb;x, PKB) tương ứng đến A và B; A và B tạo ra các khóa công khai đến các bên liên quan; A và B có thể tính các tham số (a, b) như sau: a = x mod 256 và b = Tαb(PKA)mod 256 = Tαa(PKB)mod 256; 10: end procedure Ở giải thuật này, hai số mầm được cung cấp để tạo ra hai số lớn αa và αb. Trong thực tế, hệ thống quản lý khóa có nhiệm vụ quản lý quá trình tạo khóa này. Nó được gọi là dịch vụ quản lý khóa. Cho một bộ giá trị (x, y = Tαa(x)mod p), không thể tính được để tìm thấy n thỏa mãn y = Tn(x)mod p. Do đó, không thể tính được αb từ kết quả tính toán Tαb(PKA)mod p = Tαaαb(x) mod p. Từ khả năng không thể tính toán đó, giải thuật tạo khóa đề xuất được xem là có khả năng chống lại các cuộc tấn công của người trong cuộc và bên ngoài [126]. 2.3.2.5 Phân tích khả năng bảo mật Để xem xét khả năng bảo mật của hệ mật mã được đề xuất ở đây, các đại lượng sau được đánh giá gồm: tương quan các điểm ảnh liền kề, lượng tin entropy, tỷ lệ số điểm ảnh thay đổi giá trị (NPCR), cường độ thay đổi trung bình thống nhất (UACI) và độ nhạy khóa. • Tương quan các điểm ảnh liền kề Mối quan hệ thống kê của hai điểm ảnh liền kề được đo bằng hệ số tương quan. Hai điểm ảnh liền kề theo chiều dọc, chiều ngang và đường chéo được chọn ngẫu nhiên để tính các hệ số tương quan như được xác định trong các công thức dưới đây cov(p1, p2) = 1 N N∑ i=1 (p1(i)− E(p1)) (p2(i)− E(p2)) , (2.32) rp1,p2 = cov(p1, p2)√ D(p1)D(p2) , (2.33) trong đó p1 và p2 là các giá trị mức xám của hai điểm ảnh liền kề; và N là số lượng cặp điểm ảnh được xem xét. Ở đây, E(p1) = 1N ∑N i=1 p1(i) và E(p2) = 1 N ∑N i=1 p2(i) tương ứng là kỳ vọng của p1 và p2;D(p1) = 1 N ∑N i=1 (p1(i)− E(p1)) 2 64 Bảng 2.9: Các hệ số tương quan tương ứng với các ảnh bản rõ và bản mã. Tương quan điểm ảnh Ảnh bản rõ Ảnh bản mã đề xuất [71] [112] [69] [68] Theo hướng ngang 0,9849 0,0097 0,01245 0,01008 0,005450 0,01177 Theo hướng đứng 0,9884 0,0359 0,0141 0,01416 0,000485 0,00208 Theo hướng chéo 0,9920 -0,0086 0,0115 0,00842 0,006502 0,00322 0 50 100 150 200 250 300 0 50 100 150 200 250 300 (a) Hướng ngang của bản rõ 0 50 100 150 200 250 300 0 50 100 150 200 250 300 (b) Hướng ngang của bản mã 0 50 100 150 200 250 300 0 50 100 150 200 250 300 (c) Hướng chéo của bản rõ 0 50 100 150 200 250 300 0 50 100 150 200 250 300 (d) Hướng chéo của bản mã 0 50 100 150 200 250 300 0 50 100 150 200 250 300 (e) Hướng đứng của bản rõ 0 50 100 150 200 250 300 0 50 100 150 200 250 300 (f) Hướng đứng của bản mã Hình 2.21: Tương quan giữa các ảnh bản rõ và bản mã của 2.19(a). vàD(p2) = 1N ∑N i=1 (p2(i)− E(p2)) 2 tương ứng là phương sai của p1 và p2; cov(p1, p2) và rp1,p2 tương ứng là hiệp phương sai và kết hợp giữa các điểm ảnh p1 và p2. Để tính toán, 8000 cặp điểm ảnh liền kề được chọn ngẫu nhiên, bao gồm các hướng dọc, ngang và chéo. Bảng 2.9 liệt kê và so sánh kết quả được công bố trước đây và kết quả của phương pháp này. Ở đây, các hệ số tương quan tương ứng với ảnh bản rõ và ảnh bản mã như được đưa ra trong Hình 2.19(c) và 2.19(g). Có thể thấy rằng, mối tương quan giữa các pixel liền kề của các ảnh bản mã theo ba hướng là rất nhỏ. Điều này có nghĩa là rất khó để phát hiện bất kỳ mối quan hệ nào giữa các điểm ảnh liền kề của ảnh bản rõ và các điểm ảnh tương ứng với ảnh bản mã. Do đó, giải thuật đề xuất có thể hạn chế các cuộc tấn công thống kê. So sánh với các kết quả công bố trước đây, một kết quả trước đây không tốt hơn so với kết quả của phương pháp này; các kết quả kém hơn được tô đậm. Hình 2.21 cho thấy phân bố tương quan của các ảnh bản mã theo ba hướng. • Phân tích lượng tin Lượng tin được tính theo biểu thức (2.26). Tính lượng tin cho ảnh 2.19(a) với phân bố giá trị điểm ảnh như được thấy ở Hình 2.20(b), cho thấy giá trị IE(v) = 7, 9983 ≈ 8. 65 Bảng 2.10: Các đại lượng NPCR và UACI . Các ảnh bản rõ NPCR UACI Ảnh 2.19(b) (Image1) 99,61 33,21 Ảnh Lena 2.19(c) (Image2) 99,76 33,52 Ảnh Flower 2.19(d) (Image3) 99,85 33,96 Giá trị thu được xấp xỉ bằng giá trị lý tưởng là 8. Do vậy, có thể khẳng định rằng hệ mật mã đề xuất này khả năng chống chịu rất tốt trước cuộc tấn công dựa vào lượng tin [127]. • Phân tích vi sai Có hai đại lượng được sử dụng trong phân tích khả năng bảo mật cho ảnh là tỷ lệ số điểm ảnh thay đổi giá trị (NPCR), cường độ thay đổi trung bình thống nhất (UACI) như đã trình bày ở trên.NPCR xác định tỷ lệ thay đổi giá trị điểm ảnh sau khi mật mã. Tham số UACI biểu thị cường độ thay đổi trung bình được tính bằng cách tính cường độ trung bình của sự khác biệt giữa ảnh bản mã và ảnh bản rõ. Biểu thức tính cho các đại lượng này được thấy ở (2.27) và (2.28). Bảng 2.10 cũng cho thấy các giá trị NPCR và UACI nhằm kiểm tra mức độ ảnh hướng của 1 bit trong bản rõ gây ra bao nhiêu thay đổi trong bản mã. Chú ý rằng, các giá trị này được tính trung bình cho ba màu R, G, và B. Có thể kết luận rằng các giá trị NPCR lớn hơn 99% và các giá trị UACI lớn hơn 33%. Hay nói cách khác, giải thuật đề xuất có thể chịu được các tấn công vi sai [124]. Kết quả này cho thấy, giá trị NPCR và UACI lớn nhất tương ứng là 99,85 và 33,96. Giá trị này lớn hơn các giá trị đạt được trong các công trình thực hiện ở mức bit. Có rất nhiều công trình không đạt được các giá trị cao như trong nghiên cứu này. Ví dụ, kết quả đạt được 99,62 và 33,51 trong [71], đạt được 93,79 và 16,86 trong [112], đạt được 99,6114 và 33,4896 trong [69], hay đạt được 99,5705 và 33,4781 trong [68]... • Phân tích độ nhạy của khóa mật Độ nhạy khóa của hệ mật mã là đại lượng dùng để cho thấy khả năng chống lại các cuộc tấn công vét cạn. Khả năng chống lại càng cao khi độ nhay khóa càng cao. Độ nhạy được xác định qua sự thay đổi nhỏ của khóa dẫn đến sự thay đổi như thế nào ở bản mã, và được tính tỷ lệ chênh lệch giữa các bản mã (Cdr) khi có sự sai khác nhỏ xảy ra ở khóa. Cdr được tính theo biểu thức (2.23). Trong ví dụ tính toán ở đây, lượng thay đổi khóa là+∆K và−∆K trong dải [1, 255] với khóa mật αa trong giải thuật Algorithm 3. Như được thấy trong Hình 2.22, độ 66 0 50 100 150 200 250 300 K 98 98.5 99 99.5 100 C D R ( % ) Hình 2.22: Cdr của giải thuật đề xuất với ảnh Image1. nhạy khóa Cdr được tính toán với ảnh Image1 với kết quả trả về lớn hơn 99%. Điều này có nghĩa là sự thay đổi nhỏ của khóa đã dẫn đến hơn 99% điểm ảnh bị thay đổi. Chú ý, giá trị này được tính theo trung bình cho ba màu R, G, và B. Như vậy, các bước để mật mã ảnh qua việc mật mã các lớp bit dựa trên các hàm hỗn loạn Cat và hàm Cat-Hadarmad gồm: Đầu tiên, ảnh mức xám được tách thành các mặt phẳng bit; sau đó mỗi mặt phẳng bit được hoán vị bởi hàm Cat và được khuếch tán bởi hàm Cat-Hadarmad; cuối cùng, các ảnh lớp bit được hợp nhất lại để thu được ảnh sau mật mã. Hơn nữa, phương pháp phân phối khóa dựa trên đa thức Chebyshev được đề xuất là phù hợp cho mã hóa dữ liệu đa phương tiện nói chung. Các kết quả và mô phỏng đã chỉ ra rằng phương pháp đề xuất có thể đạt mức bảo mật tốt hơn khi so sánh với các phương pháp đã được đề xuất trước đây. Cần chú ý, hệ mật được đề xuất chưa được đánh giá khi làm việc với nhiều vòng lặp mã. Thực tế, hệ mật được trình bày trong Luận án đã đạt được các tính chất thống kê nhằm chịu đựng được các tấn công vào hệ mật mã với một vòng lặp mã. Việc thực hiện nhiều vòng lặp mã hoàn toàn có thế thực hiện được với hệ mật này và khả năng chịu đựng tấn công thống kê vẫn đảm bảo. 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. Trong các nghiên cứu trước đây được công bố đã dựa vào các cách này. Phần đề xuất các hệ mật mã cũng được trình bày với hai hệ mật mã. Hệ mật mã thứ nhất được đề xuất làm việc ở mức bit bằng cách sử dụng hàm hỗn loạn Logistic có giá trị của biến trạng thái được biểu diễn dưới dạng số thực dấu phảy tĩnh. Đóng góp chính của công việc này là hệ mật mã hoạt động dựa trên tác động vào các bit của tham số điều 67 khiển hàm hỗn loạn Logistic. Không gian khóa được tìm thấy trong ví dụ cụ thể là 2378 bit; đây là con số rất lớn khi mà thứ tự các bit được trích xuất và mở rộng được xem xét tới. Với không gian khóa này, các cuộc tấn công vét cạn sẽ khó thành công trên các máy tính hiện nay. Kết quả mô phỏng cũng cho thấy hệ mật mã được đề xuất cho ra kết quả tốt hơn so với những các kết quả trong các công bố gần đây. Hệ mật mã thứ hai được đề xuất làm việc ở mức bit. Ảnh mức xám được tách thành các lớp bit, hàm Cat dùng để hoán vị các bit của mỗi lớp, hàm Chebyshev được dùng để biến đổi giá trị điểm ảnh và cuối cùng các lớp bit được ghép lại để thu về ảnh bản mã. Các tham số đánh giá khả năng chịu đựng tấn công được tính toán. Kết quả cho thấy các hệ mật mã đề xuất có khả năng chịu đựng được các tấn công vét cạn, phân tích vi sai... Sự đảm bảo an toàn cần thời gian để các nhà khoa học phát triển và đánh giá. Dựa trên những tìm hiểu về các nghiên cứu ứng dụng hỗn loạn cho thấy có sự đa dạng và rất phù hợp với các ứng dụng mật mã dữ liệu dạng khối và dữ liệu có chứa nhiều tương quan. Dữ liệu đó thường là dữ liệu âm thanh và hình ảnh. Với tính chất của hàm hỗn loạn và các tham số cũng như giá trị được sinh ra từ hàm hỗn loạn, ứng dụng hỗn loạn vào mật mã đã được tiếp cận theo nhiều cách khác nhau. Trong các công bố kết quả nghiên cứu, tất cả các tính chất ngẫu nhiên và khả năng chống lại các tấn công đều được xem xét và khẳng định chịu được tấn công tại thời điểm công bố. Tuy nhiên, cũng như các hệ mật mã cổ điển, vẫn có những điểm yếu có thể được khai thác nhằm mục đích tấn công phân tích mật mã. Các điểm yếu đó cần được xem xét và phân tích nhằm giúp các nhà khoa học tránh các điểm yếu trong thiết kế, để tránh khả năng phân tích mã thành công. Mặt khác, các hệ mật mã hỗn loạn được thiết kế cần phải xác định môi trường làm việc rõ ràng. Hầu hết các nghiên cứu hiện nay tập chung chủ yếu vào phát triển giải thuật mật mã mà chưa quan tâm đến môi trường làm việc của giải thuật đó. Đây là điều mà các nghiên cứu cần phải chú ý. Ví dụ trong môi trường máy tính thì năng lực tính toán và dung lượng bộ nhớ là ưu điểm cho các hệ mật mã hỗn loạn. Tuy nhiên, máy tính chỉ mạnh với các phép tính toán với các đơn vị dữ liệu được tính bằng byte. Với các hệ mật mã mà đơn vị dữ liệu nhỏ hơn hơn là bit thì máy tính không có được thế mạnh xử lý. Với các hệ mật mã làm việc ở mức bit thì cần các phần cứng linh động hơn, như FPGA. 68 Chương 3 PHÂN TÍCH MẬT MÃ HỖN LOẠN CÓ CẤU TRÚC SPN Nội dung Chương này trình bày điểm yếu bảo mật của giải thuật mật mã trong cấu trúc 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. Các phương pháp tấn công lựa chọn bản rõ và lựa chọn bản mã đã thành công và các phiên bản khóa tương đương của khóa mật ở phía mật mã và giải mã đã được khôi phục lại. Việc phân tích tính bảo mật cho thấy rằng việc mật mã với cấu trúc mạng hoán vị-thay thế phải được thực hiện nhiều hơn một vòng lặp mã để đảm bảo độ an toàn. Ví dụ cụ thể được đưa ra sẽ chứng minh tính khả thi của phương pháp thám mã. Nội dung của Chương này liên quan đến các bài báo [J1] và [J2]. 3.1 Giới thiệu Trong nhiều thập kỉ, các hệ thống hỗn loạn được thực hiện để đảm bảo tính bảo mật và tính riêng tư. Do hệ thống hỗn loạn có các đặc điểm như: nhạy với điều kiện đầu, nhạy với các tham số điều khiển, có tính chất ngẫu nhiên trong dữ liệu do nó tạo ra và tính ergodicty [128]. Đã có nhiều phương pháp mật mã dựa trên tích chất hỗn loạn đã được công bố, ví dụ như trong [55, 64, 84, 129]. Về cơ bản, có rất nhiều cách dùng hỗn loạn để mật mã như được đề cập một phần trong [130] và các tài liệu khác. Cho đến nay, về cơ bản có ba cách khác nhau dùng hỗn loạn vào mật mã; đó là (i) tạo ra các ma trận hoán đổi vị trí, (ii) sinh ra các dãy bit giả ngẫu nhiên để trộn với bản rõ và (iii) dùng bản rõ như là điều kiện đầu của hàm hỗn loạn để tạo ra bản mã. Tuy nhiên, do các yếu điểm tồn tại trong các thiết kế giải thuật mật mã, nhiều hệ mật mã đã không đáp ứng được các yêu cầu cơ bản [66], vì vậy chúng đã bị phá vỡ sau khi được công bố, ví dụ [11, 131, 132]. Kiến trúc mạng thay thế-hoán vị (SPN) có tính bảo mật cao [133] dùng cho việc mật mã dữ liệu [77, 134]. Ngày nay, kiến trúc SPN được coi như là một chuẩn thiết kế mật mã hiện đại như được thấy trong các hệ mật mã AES [135], PRESENT [136], SAFER [137], ... .. Gần đây nó được kết hợp với hỗn loạn để tạo ra hệ mật mã hỗn loạn theo một số cách như (i) và (ii) được trình bày ở trên để có được tính bảo mật qua hiệu ứng tuyết lở (avalanche) [133]. Cụ thể, phép hoán vị dựa trên hỗn loạn là sự xáo trộn vị trí của các điểm ảnh. Trong đó, vị trí của các điểm ảnh hiện tại được xem như là các véctơ ban đầu của hệ hỗn loạn và được dùng để tính toán cho vị trí mới cho các điểm ảnh. Các ví dụ được thấy trong các công trình gần đây như [129, 138, 139, 140]. Đặc biệt, quá 69 trình hoán vị dựa trên hỗn loạn được dùng để hoán vị vị trí các điểm ảnh, ví dụ được đưa trong [129, 138, 139, 140] hoặc dựa trên các bit [26] dữ liệu ảnh. Trong các hệ mật mã, quá trình khuếch tán dùng hỗn loạn cũng được thực hiện theo nhiều cách. Một trong các cách phổ biến nhất là dùng hệ hỗn loạn để tạo ra dãy số giả ngẫu nhiên; sau đó, các dãy số giả ngẫu nhiên hỗn loạn đó được kết hợp với các từ dữ liệu của bản rõ theo biểu thức nào đó tạo ra một giá trị mới cho điểm ảnh như được thấy trong [61, 141, 142]. Tuy nhiên, những thiếu sót trong thiết kế các giải thuật mật mã ứng dụng hỗn loạn lại tạo ra những yếu điểm. Độ mạnh của các hệ mật mã hỗn loạn vẫn trong thời gian tranh cãi. Các hệ mật mã có các ưu điểm và phù hợp với ứng dụng cụ thể vẫn đang được các nhà khoa học đề xuất với các tính chất mật mã được chứng minh là tốt. Gần đây, nhiều hệ mật mã hỗn loạn cũng bị phá vỡ thành công như được thấy trong [11, 130, 131, 132]. Tuy nhiên, do cấu trúc mạng thay thế-hoán vị tạo ra các tính chất mật mã rất tốt. Có rất ít tấn công vào các mạng thay thế-hoán vị dựa trên hỗn loạn đạt được thành công, đặc biệt trường hợp mã nhiều vòng lặp như được thấy đề cập trong [12]. Cho đến nay, số lượng các tấn công thành công vào các mạng thay thế-hoán vị ứng dụng hỗn loạn là rất ít. Theo hiểu biết của tác giả Luận án này, chỉ có hai phương pháp tấn công thành công vào các hệ mật mã có cấu trúc SPN có ứng dụng hàm hỗn loạn. Điểm chung ở hai tấn công đó là hệ mật mã chỉ lặp một vòng như được thấy trong [11, 12]. Như đã được trình bày trong [11], phương pháp có thể được mở rộng để đối phó với mã nhiều vòng lặp, trong khi các ví dụ trong công trình [11] chỉ thực hiện cho hệ mật mã một vòng lặp. Trong nội dung của Chương này, các vấn đề liên quan đến thám mã hệ mật mã hỗn loạn có cấu trúc SPN được áp dụng để tấn công hệ mật mã được đề xuất bởi W. Zhang và các đồng nghiệp [61]. Hai tấn công vào cấu trúc SPN, gồm lựa chọn bản rõ và lựa chọn bản mã, đã thành công trong việc khôi phục dữ liệu khi hệ mật mã chỉ thực hiện một vòng lặp, và thành công trong việc khôi phục các phiên bản khóa mật tương đương cho việc mã hóa và giải mã trong trường hợp nhiều vòng lặp. Lý do hệ mật mã hỗn loạn đề xuất bởi W. Zhang và các đồng nghiệp [61] được chọn để tấn công là hệ mật mã này được xem như tiên tiến nhất trong các hệ mật mã hỗn loạn cho ảnh. Trong hệ mật mã này, các đặc điểm phân bố nội tại các bit của ảnh raster đã được xem xét để làm tăng hiệu quả mật mã và tăng cường bảo mật. Chi tiết về các ví dụ tấn công cụ thể sẽ chứng minh sự thành công ở từng cơ chế thám mã dưới đây. 70 3.2 Một số qui ước trong phân tích mã Theo quy tắc Kerckhoff [134] trong việc phân tích mã, các thông tin chi tiết của toàn bộ hệ mật mã là công khai rõ ràng, ngoại trừ khóa mật. Nói cách khác là độ an toàn của một hệ mật mã chỉ được phép phụ thuộc vào tính bí mật của khóa. Có bốn cơ chế tấn công cổ điển chính được xếp theo độ khó giảm dần: (a) Chỉ có bản mã (Ciphertext-only attack): người phân tích có một hoặc nhiều bản mã. (b) Biết được bản rõ (Known-plaintext attack): người phân tích có một hoặc nhiều bản rõ và các bản mã tương ứng. (c) Lựa chọn bản rõ (Chosen-plaintext attack): người phân tích có thể truy nhập vào thiết bị mã. Một số bản rõ có thể được chọn để thực hiện mật mã và thu được các bản mã tương ứng. (d) Lựa chọn bản mã (Chosen-ciphertext attack): người phân tích có thể truy nhập vào thiết bị giải mã. Một số bản mã có thể được chọn để giải mã và thu được các bản rõ tương ứng. Ở các cơ chế tấn công, khả năng tiếp cận thông tin đầu vào và đầu ra cũng như khả năng tác động vào việc mật mã được thấy rõ. Các cơ chế tấn công này chủ yếu là để khôi phục lại bản rõ hoặc các khóa dùng trong các giải thuật. Một hệ mật mã không đảm bảo an toàn nếu nếu có ít nhất một trong các kiểu tấn công trên thành công. 3.3 Mô tả hệ mật mã hỗn loạn được đề xuất bởi W. Zhang Mỗi ảnh xám được xem như là một ma trận các điểm ảnh như được mô tả ở Mục 1.6.1. Ở đây cần chú ý, ảnh màu RGB có ba lớp: R (đỏ), G (xanh lá), B (xanh lam). Ảnh của mỗi màu được xem như là một ảnh mức xám. Giá trị của mỗi điểm ảnh tại vị trí (x, y) ở lớp màu đỏ, xanh lá, xanh lam tương ứng là pR(x, y), pG(x, y) và pB(x, y). Để mã ảnh RGB kích thước N ×N , ảnh màu RGB được sắp xếp lại để khai thác các đặc điểm nội tại về phân bố bit như được trình bày trong [61]. Cụ thể 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 ảnh mức xám 6 bit có kích thước là N ×N . Ba ảnh mức xám 6 bit kích thước N ×N chính là ảnh của 6 bit thấp còn lại của các ảnh màu, và giá trị điểm ảnh tại vị trí (x, y) là f(x, y). Hình 3.1 cho thấy điều này. Bốn ảnh mức xám 6 bit kích thước N × N được ghép lại thành một ma trận điểm ảnh có kích thước 2N × 2N , và ảnh này được dùng để mật mã. Thuật toán mật mã bao gồm 2 quá trình: hoán vị và khuếch tán như trong Hình 3.2. 71 R (8 bit mức xám) III III IV G (8 bit mức xám) B (8 bit mức xám) 6 bit thấp của R 6 bit thấp của G 6 bit thấp của B 6 bit hình thành từ ghép 2 bit cao của R, G, B Sắp xếp lại Hình 3.1: Ảnh RGB được sắp xếp lại thành một ma trận để mật mã. Tại một vòng thực hiện mật mã nào đó, hoán vị điểm ảnh được thực hiện bằng cách tính toán vị trí mới (x′, y′) dùng vị trí ở thời điểm hiện tại (x, y) như là một véctơ ban đầu của hàm hỗn loạn. Trong phần giải mật, việc hoán vị ngược lại để khôi phục lại (x, y) sử dụng (x′, y′) như là véctơ ban đầu nếu như sử dụng các hàm có thể giải ngược. Trong thực tế, việc hoán vị thuận và ngược thành công khi hàm hỗn loạn 2 chiều với ánh xạ một-một như trong các hàm Cat [143], Standard map [144, 145]. Còn một cách khác có thể thực hiện mật mã mà luôn giải ngược được, đó là quá trình thực hiện hoán vị một cách tuần tự ở phía giải mật được làm giống với bên mật mã. Chỉ có điểm khác nằm ở chỗ, việc giải mật được thực hiện với các điểm ảnh ngược thứ tự so với bên mật mã. Ở đây, hoán vị các điểm ảnh được thực hiện dùng hàm hỗn loạn Cat như sau: [ x1(n+ 1) x(n+ 1) ] = [ 1 p q pq + 1 ][ x1(n) y(n) ] mod N. (3.1) Như được đưa trong [61], tập các tham số điều khiển (p, q) của hàm Cat dùng làm khóa bí mật, chúng được tạo ra từ hàm Logistic như trong phương trình (1.6). Điều kiện đầu x0 của hàm Logistic nhận các giá trị bằng conf_key1 và conf_key2 tương ứng để tạo ra hai chuỗi giả ngẫu nhiên sq1 và sq2. Từ đó, các giá trị cho p và q tương ứng được dùng cho cho hàm hỗn loạn Cat được tính như sau: pi = (sq1(2000 + i)× 10 9)mod K qi = (sq2(2000 + i)× 10 9)mod K (3.2) trong đó, i là chỉ số cho lần hoán vị; giá trị K là phạm vi giới hạn giá trị của p và q được chọn. Chú ý, ở đây bỏ đi 2000 phần tử đầu tiên của hàm Logistic để đảm bảo tính ngẫu nhiên trong giá trị của p và q. Số lượng cặp giá trị p và q phụ thuộc vào việc có sử dụng lại hay không sử dụng lại các giá trị này trong các vòng hoán vị khác nhau. Trong trường hợp không sử dụng lại các cặp giá trị này cho lần hoán vị sau thì số lượng cặp sẽ bằng với số lần hoán vị. Ở ví dụ thực hiện, quá trình hoán vị bao gồm nhiều vòng hoán vị và các cặp giá trị p và q được sử dụng lại cho các lần hoán vị khác nhau và giá trị tham 72 số điều khiển của hàm Logistic được chọn bằng r = 3, 99999. Sau quá trình hoán vị các điểm ảnh là quá trình khuếch tán. Xáo trộn (rp vòng) Tạo ra ma trận mở rộng Ảnh bản rõ ME MPE AE ADE MTE Ảnh bản mã Chuyển mảng 1D thành ma trận 2D Khuếch tán (1 vòng) Chuyển ma trận 2D thành mảng 1D Sắp xếp lại thành ảnh C P (a) Các bước mã C P Đảo ngược xáo trộn (rp vòng) Chuyển mảng 1D thành ma trận 2D Ảnh bản rõ khôi phục MPD MTD ADD AD MD Ảnh bản mã Chuyển ma trận 2D thành mảng 1D Tái khuếch tán (1 vòng) Sắp xếp lại thành ảnh Tạo ra ma trận mở rộng (b) Các bước giải mật Hình 3.2: Các bước mật mã và giải mật. Các bước mã và giải mã được minh họa như trong Hình 3.2. Ở quá trình mật mã, P là ảnh bản rõ, trong khi đó tại giải mã thì P là ảnh được khôi phục từ bản mã. C là ảnh bản mã; 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à phạm vi giá trị được viết như trong phương trình (3.3). Mật mã:   P = {f(x, y); f(x, y) ∈ [0, 255], ∀x, y ∈ [1, N ]}, ME = {f(x, y); f(x, y) ∈ [0

Các file đính kèm theo tài liệu này:

  • pdfluan_an_mat_ma_du_lieu_anh_ung_dung_ky_thuat_hon_loan.pdf
Tài liệu liên quan