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

Một phần của tài liệu Digital library Ha Noi university of science and technology760 (Trang 47)

Hoán vị là hình thức hoán đổi vị trí các đơn vị dữ liệu trong ảnh nhằm phá vỡ cấu trúc

thống kê của ảnh, tạo ra sự phụ thuộc của văn bản mã hóa vào khóa mật. Thực tế, việc

hoán vị cần được xem xét thực hiện trên các đơn vị dữ liệu khác nhau sẽ tạo ra các

tính chất khác nhau cho mục đích mật mã ảnh; đó là các tính chất lẫn lộn. Các đơn vị

dữ liệu được xem xét để thực hiện hoán vị gồm (i)cụm các điểm ảnh,(ii)từng điểm

ảnh đơn,(iii)số biểu diễn giá trị điểm ảnh, và(iv)bit dữ liệu trong các điểm ảnh.

Với hoán vị cụm các đ iểm ảnh hoặc các điểm ảnh đơn mang lại tính chất lẫn lộn

mà hoàn toàn không tạo ra sự thay đổ i giá trị của điểm ảnh. Trong trường hợp hoán vị

các số biểu diễn giá trị của điểm ảnh hoặc hoán vị bit của từng điểm ảnh sẽ làm thay

Ba cách xem xét đơn vị dữ liệu được hoán vị ở trên cũng đồng thời thể hiện cho các

giai đoạn phát triển của mật mã hỗn loạn rất rõ ràng. Trong giai đoạn đầu của nghiên

cứu về ứng dụng hỗn loạn trong mật mã ảnh, đơn vị dữ liệu là cụm điểm ảnh được

dùng như trong các nghiên cứu [25, 99]. Trong những năm gần đây, việc h oán vị được thực hiện với điểm ảnh và trên không gian kích thước của ảnh như được thấy trong

nhiều nghiên cứu (ví dụ [58, 100]). Gần đây hơn, hai phương pháp h oán vị được quan

tâm nhiều là hoán vị với chữ số biểu diễn giá trị của điểm ảnh [16] và bit biểu diễn

điểm ảnh [82, 101]. Với dữ liệu là chữ số biểu diễn điểm ản h, ví dụ giá trị biểu diễn

mức xám của điểm ảnh là 218 được hiểu là có ba chữ số gồm “2 ”, “1” và “8”.

Trong các nghiên cứu mật mã ảnh sử dụng hỗn loạn, các hàm hỗn loạn tạo ra luật

hoán vị theo một số cách khác nhau. Hiện nay có hai cách tạo ra luật hoán vị dựa trên

các hàm hỗn loạn gồm: thông tin vị trí điểm ảnh được dùng giá trị khởi đầu cho hàm

hỗn loạn hai chiều, và quy luật hoán vị được tạo ra dựa vào biến trạng thái. Dưới đây

tr ình bày một số phương pháp hoán vị điển hình theo các hướng đề cập trên.

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

Với luật hoán vị được hìn h thành dựa trên hỗn loạn, các phương pháp dưới đây đã

được nghiên cứu và dùng phổ biến gồm:

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ị đến. Các

phương pháp này được dùng rất phổ biến. Để có thể thực hiện được phương pháp này,

các hàm hỗn loạn cần có đặc trưng song án h như đã nói ở trên, hoặc là dùn g các vòng tuần hoàn của các hàm hỗn loạn [76].

Phương pháp 2: Các điểm ảnh được quét để hình thành mảng một chiều, s au đó

thực hiện hoán vị trên mảng một chiều này [26]. Theo cách tiếp cậ n này, qui luật hoán vị thường được lưu trữ sẵn trong bộ nhớ.

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

Cơ chế hoán vị có yêu cầu là cho phép khôi phục lại vị trí các điểm ảnh ban đầu.

Phương pháp tạo ra luật hoán vị ứng dụng hỗn loạn được thực hiện dựa trên dãy các

giá trị lấy từ biến trạng thái của hàm hỗn loạn. Nếu các giá trị này được xem là chuỗi

giả ngẫu nhiên với giá trị nằm trong phạm vị số hàng và cột của ảnh. Các giá trị được

tạo ra từ hàm hỗn loạn mà lớn hơn g iá trị của phạm vi số hàng và số cột, thì phép chuẩn hóa được áp dụng để có giá trị nằm trong dải được giới hạn thông qua phép

modulo (mod .( )). Các bước thực hiện cho hoán vị như sau:

{Xi; i ∈ [1, NX]};Xilà các số có giá trị khác nhau, với NX là tổn g số ký hiệu cần

được hoán vị. Thông thường chuỗi này nhận được sau khi loại bỏ các giá trị ở thời

gian đầu của hàm hỗn loạn tạo ra, ở đó các giá trị trong giai đoạn quá độ và dễ bị đoán trong quá trình tấn công. Tuy nhiên,Xilà các giá trị có thể ở dạng số thực. Do

việc hoán vị thực tế là phải là ánh xạ một-một, do vậy các giá trị củaX không có các

thành phần với giá trị được lặp lại quá một lần. Như vậy, trong quá tr ình hình thành

lên chuỗiX cần giải quyết các trường hợp giá trị lặp lại ở các phần tử của .X

Bước 2: Thực hiện sắp xếp các giá trị của chuỗiX theo thứ tự tăng dần, ta nhận được chuỗiX′ = {X ′

j; j∈[ 1 , NX]}. Như vậy, vị trí của các giá trị Xi bị thay đổi sang

vị trí mới X′

j, và từ đó hình thành hàm quan hệ hoán vị h i( ) = j; hay X ′

h i( ) = Xj.

Việc hoán vị được thực hiện dễ dàng ch o các chuỗi dữ liệu là mảng một chiều.

Ví dụ, chuỗi giá trị nhận được từ hàm hỗn loạn làX = {0,52, 0,61, 0,93, 0,15, 0,82,

0,41, 0,29, 0 ,76, 0,33 . Sau khi sắp xếp theo thứ tự tăng dần ta có} X′ = {0,15, 0,29,

0,33, 0,41, 0,52, 0,61, 0,76, 0,82, 0,93 . Luật hoán vị} H = { ( );h i i∈[1, M N× ]}cho

ví dụ này n hư được thấy trong Hình 2.2(a). Theo quan hệh i( ) =j, ta có h(1) = 5,

h(2) = 6;h(3) = 9,h(4) = 1;h(5) = 8,h(6) = 4,h(7) = 2,h(8) = 7, vàh(9) = 3.

Như vậy, với một chuỗi giá trịP = {21, 32, 13, 25, 31, 20, 67, 45, 69 cần được hoán}

vị, chuỗi này có chiều dài bằng với chiều dài của chuỗi . Áp dụng qui luật hoán vịX

như thấy ở Hình 2.2(a), ta có chuỗi sau khi hoán vị là P′ = {25, 67, 69, 20, 21, 32, 45, 31, 13 như Hình 2.2(b).}

0.52, 0.61, 0.93, 0.15, 0.82, 0.41, 0.29, 0.76, 0.33 0.15, 0.29, 0.33, 0.41, 0.52, 0.61, 0.76, 0.82, 0.93 X:

X’:

(a)Luật hoán vị

21, 32, 13, 25, 31, 20, 67, 45, 32 25, 67, 69, 20, 21, 32, 45, 31, 13 P: P’: (b)Hoán vị chuỗi P

Hình 2.2: Luật hoán vị và ví dụ hoán vị cho mảng 1D.

Trong các phương pháp được phát triển cho mục đích hoán vị các điểm ảnh [3], về cơ bản cũ ng làm như trên, nhưng các thành phần của X′ được đưa vào ma trận hai

chiều T kích thướcM ×N theo một quy tắc nào đó; ví dụ từ trên xuống dưới, từ

trái qua phải. Ta cóT = {Tij; Tij ∈[1, M N ] × } và các thành phầnTij được lấy từ

quan hệh i( ) =j. Ví dụ, chuỗi 64 phần tửX n hận được từ hàm Logistic vớia= 4 0, ,

X0 = 0 1 , , và bỏ đi 500 phần tử đầu, Xn = {0,3653, 0,9274, 0,2694, 0,7872 , 0,6700,

0,8844, 0,4088, 0,9667, 0,1286, 0,4482, 0,9893, 0,0424, 0,1625, 0,5445, 0,9921 , 0,0314, 0,1217, 0,4274, 0,9789, 0,0825, 0,3028, 0,8444, 0,5255, 0,9974, 0,0104 ,

1 9 17 25 33 41 49 57 2 10 18 26 34 42 50 58 3 11 19 27 35 43 51 59 4 12 20 28 36 44 52 60 5 13 21 29 37 45 53 61 6 14 22 30 38 46 54 62 7 15 23 31 39 47 55 63 8 16 24 32 40 48 56 64

(a)Vị trí ban đầu

29 19 17 5 43 7 58 47 52 33 31 10 50 14 13 40 25 59 57 20 34 27 26 54 45 11 15 36 64 48 46 21 42 22 28 62 1 39 41 37 51 38 49 6 2 56 53 61 30 60 35 12 3 18 24 8 55 9 63 23 4 32 44 16 (b)Luật hoán vị Hình 2.3: Luật hoán vị ở dạng 2D. 1,0000, 0,0001, 0,0003, 0,0013, 0,0050, 0,0199, 0,0782, 0,2882, 0,8206, 0,5890 , 0,9683, 0,1227, 0,4305, 0,9807, 0,0757, 0,2800, 0,8063, 0,6246, 0,9379, 0,2330 , 0,7149, 0,8153, 0,6022, 0,9582, 0,1602, 0,5382, 0,99 42, 0,0232, 0,0908 . Sau khi}

sắp xếp theo thứ tự tăng dần và quan hệ hoán vị tìm được làH = {29, 52, 25, 45, 42,

51, 30, 55, 19, 33, 59, 11, 22, 38, 60, 9, 17, 31, 57, 15, 28, 49, 35, 63, 5, 10, 20, 36,

62, 6, 12, 23, 43, 50, 34, 64, 1, 2, 3, 4, 7, 14, 27, 48, 39, 56, 1 8, 32, 58, 13, 26, 46,

41, 53, 24, 44, 47, 40, 54, 21, 37, 61, 8, 16 . Như vậy, nếu ma trận các điểm ảnh được}

đánh số thứ tự như trong Hình 2.3(a), thì ma trận như thấy ở Hình 2.3(b) được hìnhT

thành từH theo qui tắc trên-xuống-dưới và trái-qua-phải. Các điểm ảnh ở các vị trí

có thứ tự như Hình 2.3(a) đ ược chuyển đến vị trí mới sau khi ho án vị, như đưa ra ở Hình 2.3(b).

Từ ma trận , vị trí mớiT i′ vàj′cho điểm ảnh trong ma trận ảnh ban đầu có tọa đ ộ

ivà sẽ được tính làj

( i

′ =div T( ij, N ) + 1;

j′ =mod T( ij, N .) (2.1)

Ví dụ, Hình 2.4(a) cho thấy ảnh ban đầu kích thước 512×512 được hoán vị theo

phương pháp thực hiện như trên và tạo ra ảnh hoán vị như trong Hình 2.4(b). Chuỗi

giá tr ịX được tạo ra từ hàm Logistic vớir = 4 0 X, , 0 = 0 1 , . ChuỗiX có chiều dài

512 512× và nhận được sau khi bỏ đi 500 điểm đầu nhằm tránh quá độ.

Tuy nhiên, m ột trong các vấn đề khó k hăn là sắp xếp một chuỗi số nhiều phần tử

sẽ mất nhiều thờ i gian. Do vậy, các g iải thuật sắp xếp nhanh cần được áp dụng. Dưới

đây là các phương pháp sử dụng cách thức hoán vị có những điểm giống với phương

pháp được trình bày ở trên.

Ta cần xét mức độ linh động trong việc tạo ra luật hoán vị. Cần chú ý ở đây, nếu

(a)Ảnh ban đầu (b)Ảnh sau khi hoán vị

Hình 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.

(a) T499: bỏ đi 499 điểm

đầu đầu(b) T500: bỏ đi 500 điểm đầu(c) T501: bỏ đi 501 điểm (d)T499− T500

(e)T500 − T501 (f)T501− T499

Hình 2.5: Ma trậnT 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.

hàm hỗn loạn này chỉ có thể được thực hiện thông qua thay đổi số điểm đầu bị lược bỏ với mục đích tránh ảnh hưởng của hiện tượng quá độ. Ví dụ dưới đây cho thấy sự

nhạy cảm trong trường hợp này. Xét trường hợp tạo ra ma trận trong các trường hợpT

bỏ đi 499, 500, và 501 điểm đầu của chuỗi hỗn loạn. Hàm Logistic được dùng với các

tham số như các ví dụ trên. Ma trận trong các trường hợp được thấy trong các HìnhT

2.5(a)-2.5(c). Sự khác n hau giữa các ma trận T được đưa ra trong các Hình 2.5(d)-

2.5(f). Ta thấy rằng, khi số điểm đầu của chuỗi hỗn loạn được bỏ đi khác nhau, ta có

các ma trận hoán vị khác nhau mặc dù tham số hàm h ỗn loạn không thay đổi. Hay nói

cách khác, ta có thể tạo ra các ma trận hoán vịT khác nhau dựa trên một số hữu hạn

các giá trị của biến trạng thái. Nếu nhìn kỹ vào các bảng trong Hình 2.5(a)-2.5(c) ta

thấy rằng, sự khác nhau nằm ở các giá trị bị dịch đi theo các ô. Lý do là những giá trị

trong dãy được sắp xếp. Điều này có nghĩa là sự khác nhau giữa các bảng hoán vị phụ

thuộc cả vào sự khác nhau ở số điểm dữ liệu được bỏ đi. Ví dụ, để tạo ra ma trận hoán

vịM N× , ta cần chuỗiM Np hần tử. Để tạo thêm được một ma trận, ta chỉ cần d ịch

về phía trước hoặc về phía sau một phần tử. Khi đó số thành phần biến trạng thái chỉ

cần chuỗi có(M N+ 1)phần tử. Dưới đây là một số nghiên cứu đã sử dụng phương pháp này.

• Trong nghiên cứu của Xingyuan Wang và các đồng nghiệp [55], nhóm điểm ảnh

được xét là các hàng và cột điểm ảnh. Hàm Logistic được dùng để sinh ra luật

hoán vị theo phương pháp như được mô tả ở trên, vớ i tham số điều khiển đượcr

chọn trong khoảng làr ∈[3 569945 6 4], , . Ảnh màu RGB có kích thướcM ×N

với mỗi pixel của từng màu là 8 bit được xét. Trong đó, các ma trận điểm ảnh củ a

các màu được tổ chức thành ma trận bằng cách ghép các ma trận điểm ảnh của

các màu theo hàng lại với nhau. Và như vậy, ma trận cuối cùng có kích thước là

3M ×N. Sau đó, việc hoán vị được thực hiện theo hai bước. Bước thứ nhất là

hàng điểm ảnh này với hàng điểm ảnh khác, và bước thứ hai là hoán vị cột điểm ảnh này với cột điểm ảnh khác.

• Trong nghiên cứu [59], phương ph áp hoán vị đ ược thực hiện th eo đơn vị bit thay

vì điểm ảnh 8 bit. Cụ thể, mỗi điểm ảnh được đưa về dạng 8 bit và ảnh có k ích

thướcM N× được chuyển thành ma trận bit kích thướcMN. Việc hoán vị hàng và cột được thực hiện như giải thuật trình bày trong [55]. Tuy hình thức diễn đạt

khác đôi chút, qui luật hoán vị được tạo ra dùng hàm hỗn loạn Logistic với đ iều

kiện đầu làX0 = 0 009 , và tham số điều khiển r = 3 98, theo phương pháp được

tr ình bày ở trên.

• Nghiên cứu của [102] trình bày phương p háp hoán vị dùng phép sắp xếp chuỗi

giá trị sinh ra từ hàm hỗn loạn như trình bày trên. Ở đó, ma trận bit M × 8N

được tạo ra từ ảnh mức xám, như đã được đề cập trong nghiên cứu [59]. Chuỗi

hỗn loạn được tạo ra bằng việc lặp hàm Chebyshev. Các hàng bit được hoán vị trước, sau đó các cột bit được hoán vị. Hàm Chebyshev được chọn dùng với các

tham sốr= 4 0 X, , 0 = 0 30000000 , .

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

Một trong những cách thực hiện hoán vị vị trí bit hoặc vị trí điểm ảnh có thể được thực hiện thông qua lợi dụng đặc tính động của hàm hỗn loạn rời rạc. Hàm hỗn loạn rời

rạc hai chiều được sử dụng trong trường hợp này. Vị trí của điểm ảnh hoặc bit trong

…… …… =i’ =j’ Xn=F(n)(X0) Với: 0 X0=[X(1)0 ] Xn=[ , X(2)0 X , X(1)n (2)n] X(1)n X(2)n =i X(1)0 =j X(2)0

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

1 . 2 . 3 . 4 . . A . B . C . D X Y Hình 2.7: Ánh xạ một-một của hàm.

số lần, các biến trạng thái đầu ra của hàm hỗn loạn nhận được làXn = F ( )n (X0).Xn

được dùng là vị trí của đến của điểm ảnh. Hình 2.6 cho thấy phương pháp hoán vị này, trong đó,X0 = [X0(1), X0(2)]vàXn = [Xn(1), Xn(2)]là các giá trị của biến trạng thái ở

điều kiện đầu và của biến trạng thái sau khi lặp lần. Để có thể tìm lại vị trí ban đầun của điểm ảnh, hàm hỗn loạn được chọn theo một trong hai hướng, gồm(i) hàm hỗn

loạn có tính chất ánh xạ một-một (bijective), và (ii)hàm hỗn loạn có thể tìm nghịch đảo.

Tính chất ánh xạ một-một như được minh họa trong Hình 2.7 là một đầu vào th ì

tìm được một đầu ra duy nhất tương ứng với đầu vào đó. Những hàm hỗn loạn có định

thứcdetcủa ma trận Jacobian bằng 1 sẽ có tính chất này. Điển hình là tính chất này

Một phần của tài liệu Digital library Ha Noi university of science and technology760 (Trang 47)

Tải bản đầy đủ (PDF)

(154 trang)