Image encryption method based on multi-scale compressed sensing and Markov model

Information

  • Patent Grant
  • 12118096
  • Patent Number
    12,118,096
  • Date Filed
    Tuesday, September 20, 2022
    2 years ago
  • Date Issued
    Tuesday, October 15, 2024
    a month ago
Abstract
The present disclosure discloses an image encryption method based on multi-scale compressed sensing and a Markov model. According to the difference in information carried by low-frequency coefficients and high-frequency coefficients of an image, different sampling rates are set for the low-frequency coefficients and the high-frequency coefficients of the image, which can effectively improve the reconstruction quality of a decrypted image. The decrypted image obtained by the present disclosure has higher quality than the decrypted image generated by the existing scheme, and a better visual effect and more complete original image information can be obtained.
Description
CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the priority of Chinese Patent Application Serial No. 202111111707.6, filed with the State Intellectual Property Office of P. R. China on Sep. 18, 2021, named “Image Encryption Method Based on Multi-scale Compressed Sensing and Markov Model”, the entire contents of which are incorporated herein by reference.


TECHNICAL FIELD

The present disclosure relates to the technical field of image encryption, in particular to an image encryption method based on multi-scale compressed sensing and a Markov model.


BACKGROUND

With the continuous development of social productivity and Internet technologies, digital image information, as an important carrier of Internet information, plays a very important role in the interaction of Internet information. In many fields involving personal privacy, commercial secrets, national defense secrets, national security and so on, the security requirements of digital image information are getting higher and higher, so digital image encryption technologies are becoming more and more important. At present, the commonly used digital image encryption technologies are relatively mature, but most of theoretical cores thereof are still mainly put forward by foreign countries. Throughout existing image encryption schemes, there are some weaknesses, such as easy access to the relevant information of original images, poor plaintext sensitivity and key sensitivity, poor reconstruction quality of decrypted images and poor encryption effects. Therefore, it is very urgent and necessary to comprehensively improve and innovatively provide a more perfect and safer digital image encryption method.


SUMMARY

In view of the above-mentioned shortcomings of prior art, the present disclosure provides an image encryption method based on multi-scale compressed sensing and a Markov model, which expands the application range of compressed sensing theory in the field of image encryption; a new pixel scrambling method is designed with the help of the Markov model; and finally encrypted images with better encryption effects and decrypted images with better decryption effects are obtained.


In order to achieve the above objective, the present disclosure adopts the following technical solution:


The image encryption method based on multi-scale compressed sensing and the Markov model includes:

    • generating parameters and initial values of one-dimensional chaotic mapping according to plaintext image information;
    • obtaining subsampling rates of original coefficient matrices at all levels by using multi-scale block compressed sensing theory through a total target sampling rate of a plaintext image;
    • substituting the parameters and initial values of the one-dimensional chaotic mapping into a corresponding chaotic system to generate chaotic sequences, transforming the chaotic sequences into a matrix form, and obtaining corresponding orthogonal basis matrices, and extracting some elements of the orthogonal basis matrices as measurement matrices according to the subsampling rates;
    • performing three-level discrete wavelet transform on the plaintext image to obtain the original coefficient matrices at all levels, and blocking the original coefficient matrices at all levels to construct new coefficient matrixes at all levels;
    • using the chaotic sequences to generate index sequences, and scrambling the corresponding coefficient matrices at all levels as blocks;
    • using the measurement matrices to measure the coefficient matrices at all levels;
    • retaining low-frequency coefficient matrices, merging measured non-low frequency coefficient matrices at all levels to construct a matrix T, performing micro-processing on the matrix T to obtain a to-be-measured matrix NT, and respectively generating a row-state transition probability matrix and a column-state transition probability matrix according to the to-be-measured matrix NT;
    • performing SVD decomposition on the low-frequency coefficient matrices to obtain submatrices, and quantizing the elements in the submatrices and the non-low frequency coefficient matrices at all levels to a preset interval;
    • generating index values according to the information of the chaotic sequences and determining merging rules by the index values, firstly mering the non-low frequency coefficient matrices at all levels according to the merging rules to obtain an overall matrix, and then inserting the submatrices into different positions of the overall matrix;
    • adjusting the dimension of the overall matrix, acquiring the element information of the overall matrix, and generating control parameters for secondary scrambling;
    • scrambling the merged overall matrix according to the row-state transition probability matrix and the column-state transition probability matrix, and simultaneously setting corresponding flag bits; and
    • performing independent diffusion of elements on the overall matrix by using one of the chaotic sequences, and performing global diffusion on elements of the overall matrix by using the other chaotic sequences to obtain a final encrypted image.


Further, a specific method of generating parameters and initial values of one-dimensional chaotic mapping according to plaintext image information is as follows:

    • a SHA256 function is used for generating a hash value K of the plaintext image, and after K is transformed into a binary number, 32 sets of binary numbers k1, k2 . . . , k32 are generated in groups of 8 bit;







r
0

=

{






r

e

n

d


-


mod

(



(



l
0


L
0


+


l
1


L
1



)

×

r

e

n

d


×
1

0

,
1

)


1

0



,



(



l
0


L
0


+


l
1


L
1



)

×

r

e

n

d


×
1

0

>

r

e

n

d











(



l
0


L
0


+


l
1


L
1



)

×

r

e

n

d


×
10

,



(



l
0


L
0


+


l
1


L
1



)

×

r

e

n

d


×
1

0



r

e

n

d














    • where, L0 and L1 are the numbers of 0 and 1 in a hash value K of the plaintext image respectively, l0 and l1 are a length of a longest continuous 0 sequence and a length of a longest continuous 1 sequence respectively, rend is a right endpoint of a chaotic interval, and r0 is a certain value of the chaotic interval;









{





r
1

=


r

s

t

a

r

t


+

mod

(



(


(


max

(


k
1

,

k
2

,

k
3

,

k
4

,

k
5

,

k
6


)

×

t
1


)


(


min

(


k
1

,

k
2

,

k
3

,

k
4

,

k
5

,

k
6


)

×

t
2


)


)

×
1


0

1

4



,


r

e

n

d


-

r

s

t

a

r

t




)









r
2

=


r

s

t

a

r

t


+

mod

(



(


(


max

(


k
7

,

k
8

,

k
9

,

k

1

0


,

k

1

1


,

k

1

2



)

×

t
3


)


(


min

(


k
7

,

k
8

,

k
9

,

k

1

0


,

k

1

1


,

k

1

2



)

×

t
4


)


)

×
1


0

1

4



,


r

e

n

d


-

r

s

t

a

r

t




)












    • where, ki, i=1, 2, . . . , 12 is the i-th binary number of K, t1-t4 is an external key, rstart is a left endpoint of the chaotic interval, rend is the right endpoint of the chaotic interval, r1 and r2 are some values of the chaotic interval;









{




a
=


r

e

n

d



(

1
+

e


1

2

5

6


×

(


-

t
5


×

(


k

1

3




k

1

4




k

1

5



)


)




)








b
=


r

e

n

d



(

1
+

e


1

2

5

6


×

(


-

t
6


×

(


k

1

6




k

1

7




k

1

8



)


)




)








c
=


1
2

×

(



r

s

t

a

r

t



(

1
+

e


1

2

5

6


×

(


-

t
7


×

(


k

1

9




k

2

0




k

2

1



)


)




)


+


r

e

n

d



(

1
+

e


1

2

5

6


×

(


-

t
8


×

(


k

2

2




k

2

3




k

2

4



)


)




)



)












    • where, ki, i=13, 14, . . . , 24 is the i-th binary number of K, t5-t8 is an external key, rstart is the left endpoint of the chaotic interval, rend is the right endpoint of the chaotic interval, and a, b and c are some values of the chaotic interval;









{





Z
1

=

[





t
1

×

k
25






t
3

×

k
26








t
5

×

k
27






t
7

×

k
28





]








Z
2

=

[





t
5

×

k
29






t
4

×

k
30








t
6

×

k
31






t
8

×

k
32





]











    • where, ki, i=25, 14, . . . , 32 is the i-th binary number of K, t1-t8 is an external key, and Z1 and Z2 are transition matrices;









{





x
0

=

mod

(



(



Z
3

(
1
)

+


Z
3

(
2
)

-





Z
3

(
1
)

+


Z
3

(
2
)





)

×
1


0

1

4



,
1

)








x

0

0


=

mod

(



(



Z
3

(
3
)

+


Z
3

(
4
)

-





Z
3

(
3
)

+


Z
3

(
4
)





)

×
1


0

1

4



,
1

)








y
00

=

mod

(



(



Z
3

(
1
)

+


Z
3

(
3
)

-





Z
3

(
1
)

+


Z
3

(
3
)





)

×
1


0

1

4



,
1

)








v
0

=

mod

(



(



Z
3

(
2
)

+


Z
3

(
4
)

-





Z
3

(
2
)

+


Z
3

(
4
)





)

×
1


0

1

4



,
1

)











    • where, └⋅┘ presents downward rounding, Z3 is a Kronecker product of transition Z1 and transition Z2, Z3 (i), 1=1, 2, 3, 4 represents the i-th element of the matrix Z3, and x0, x00, y00, v0 are the initial values of the corresponding chaotic mapping, respectively.





Further, a specific method of scrambling the corresponding coefficient matrices at all levels as the blocks comprises:

    • letting a matrix A3 be an m×n matrix, expanding the matrix A3 into a sequence with a length being m×n, wherein i is the index of the i-th element in the sequence, a scrambling method of which is as follows:

      A3′(Ind3(m×n−i+1))=A3(Ind3(i))
    • where, A3′ is a sequence after A3 is scrambled, and Ind3 is an index sequence for scrambling third-level wavelet decomposition coefficient matrices; and similarly, other coefficient matrices Hi′, Vi′, Di′, i=1, 2, 3 after scrambling are obtained.


Further, a specific method of performing micro-processing on the matrix T to obtain the to-be-measured matrix NT is as follows:






T
=

(




H
1





V
1





D
1







H
2





V
2





D
2







H
3





V
3





D
3





)







    • where, Hi″, Vi″, Di″, i=1, 2, 3 are coefficient matrices after Hi′, Vi′, Di′, i=1, 2, 3 are compressed, and T is a coefficient merging matrix;









{






N

T


=

-
T


,


l
0

>

l
1










N

T


=

T
-

0
.5



,


L
0

>

L
1










N

T


=

T
+

0
.5



,


L
0

<

L
1












    • where, L0 and L1 are the numbers of 0 and 1 in the hash value K of the plaintext image respectively, l0 and l1 are the length of the longest continuous 0 sequence and the length of the longest continuous 1 sequence respectively, and NT is the to-be-measured matrix after processing T.





Further, a specific method of firstly mering the non-low frequency coefficient matrices at all levels according to the merging rules to obtain the overall matrix is as follows:






{





L

i

n


d
1


=


(



X
1


(


n
1

×

n
1


)

+


X
2


(


n
2

×

n
2


)

+


X
3


(


n
3

×

n
3


)


)

/
3








L

i

n


d
1


=


floor



(

mod

(



abs

(

Lin


d
1


)

×
1


0
8


,
6

)

)


+
1








Lind
2


=


(



X
1


(



n
1

×

n
1


-
1

)

+


X
2


(



n
2

×

n
2


-
1

)

+


X
3


(



n
3

×

n
3


-
1

)


)

/
3








L

i

n


d
2


=


floor



(

mod

(



abs

(

Lin


d
2


)

×
1


0
8


,
6

)

)


+
1








Lind
3


=


(



X
1


(



n
1

×

n
1


-
1

)

+


X
2


(



n
2

×

n
2


-
1

)

+


X
3


(



n
3

×

n
3


-
1

)


)

/
3








L

i

n


d
3


=


floor



(

mod

(



abs

(

Lin


d
3


)

×
1


0
8


,
6

)

)


+
1











    • where, Lindi, i=1, 2, 3 is an index value generated by the chaotic sequence Xi′, i=1, 2, 3, ni×ni, i=1, 2, 3 is a length of Xi′, i=1, 2, 3, and Lindi′, i=1, 2, 3 is a result of mapping Lindi, i=1, 2, 3 to an interval [1, 6];









{






(




Y
11






Y
12






Y
13




)

=

(




H
3
′″






H
2
′″






H
1
′″




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
3
′″






V
2
′″






V
1
′″




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
3
′″






D
2
′″






D
1
′″




)










(




Y
11






Y
12






Y
13




)

=

(




H
3
′″






H
1
′″






H
2
′″




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
3
′″






V
1
′″






V
2
′″




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
3
′″






D
1
′″






D
2
′″




)










(




Y
11






Y
12






Y
13




)

=

(




H
2
′″






H
3
′″






H
1
′″




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
2
′″






V
3
′″






V
1
′″




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
2
′″






D
3
′″






D
1
′″




)










(




Y
11






Y
12






Y
13




)

=

(




H
2
′″






H
1
′″






H
3
′″




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
2
′″






V
1
′″






V
3
′″




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
2
′″






D
1
′″






D
3
′″




)










(




Y
11






Y
12






Y
13




)

=

(




H
1
′″






H
3
′″






H
2
′″




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
1
′″






V
3
′″






V
2
′″




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
1
′″






D
3
′″






D
2
′″




)










(




Y
11






Y
12






Y
13




)

=

(




H
1
′″






H
2
′″






H
3
′″




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
1
′″






V
2
′″






V
3
′″




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
1
′″






D
2
′″






D
3
′″




)












    • where, Hi′″, Vi′″, Di′″, i=1, 2, 3 is a result of quantizing Hi″, Vi″, Di″, i=1, 2, 3 to [0, 255], a first group of sorted matrices are marked as Y1, three internal block matrices are marked as Y11, Y12, Y13 respectively, and a sorting order is determined by Lind1′; a second group of sorted matrices are marked as Y2, three internal block matrices are marked as Y21, Y22, Y23, and a sorting order is determined by Lind2′; and a third group of sorted matrices are marked as Y3, three internal block matrices are marked as Y31, Y32, Y33, and a sorting order is determined by Lind3′ D.





Further, a specific method of inserting the submatrices into different positions of the overall matrix is as follows:






{





H

i

n


d
1


=


(



X
1


(
1
)

+


X
2


(
1
)

+


X
3


(
1
)


)

/
3








Hind
2


=


(



X
1


(
2
)

+


X
2


(
2
)

+


X
3


(
2
)


)

/
3








Hind
3


=


(



X
1


(
3
)

+


X
2


(
3
)

+


X
3


(
3
)


)

/
3








Hind
1


=


floor



(

mod

(



abs

(

Hin


d
1


)

×
1


0
8


,
4

)

)


+
1








Hind
2


=


floor



(

mod

(



abs

(

Hin


d
2


)

×
1


0
8


,
4

)

)


+
1








Hind
3


=


floor



(

mod

(



abs

(

Hin


d
3


)

×
1


0
8


,
4

)

)


+
1











    • where, Hindi, i=1, 2, 3 is an index value generated by the chaotic sequence Xi′, i=1, 2, 3, and Hindi′, i=1, 2, 3 is a result of mapping Hindi, i=1, 2, 3 to the interval [1, 4];









{






Y
1


=

(



U





Y
11






Y
12






Y
13




)


,


Y
2


=

(



S





Y
21






Y
22






Y
23




)


,


Y
3


=

(



VT





Y
31






Y
32






Y
33




)










Y
1


=

(




Y
11





U





Y
12






Y
13




)


,


Y
2


=

(




Y
21





S





Y
22






Y
23




)


,


Y
3


=

(




Y
31





VT





Y
32






Y
33




)










Y
1


=

(




Y
11






Y
12





U





Y
13




)


,


Y
2


=

(




Y
21






Y
22





S





Y
23




)


,


Y
3


=

(




Y
31






Y
32





VT





Y
33




)










Y
1


=

(




Y
11






Y
12






Y
13





U



)


,


Y
2


=

(




Y
21






Y
22






Y
23





S



)


,


Y
3


=

(




Y
31






Y
32






Y
33





VT



)













T


=

(




Y
1





Y
2





Y
3






)







    • where, Y1′ is a matrix after the first group merging, and the sorting order is determined by Hind1′; Y2′ is a matrix after the second group merging, and the sorting order is determined by Hind2′; Y3′ is a matrix after the third group merging, and the sorting order is determined by Hind3′; T′ is a matrix after Y1′, Y2′ and Y3′ are merged; and U, S and VT are three submatrices obtained by SVD decomposition of the low-frequency coefficient matrices at levels.





Further, a specific method of adjusting the dimension of the overall matrix and acquiring the element information of the overall matrix is as follows:






{




Max
=

max

(

T


)







Min
=

min

(

T


)








d
1

=

floor



(

mean
(

T


)

)









d
2

=

ceil



(


(

Max
+
Min

)

/
2

)









d
1


=

mod

(


d
1

,

1

0


)








d
2


=

mod



(


d
2

,

1

0


)









d

1

2


=

max

(


d
1


,


d
2



)









where, Max is the maximum value of the matrix T′, Min is the minimum value of the T′, d1 is the maximum integer less than or equal to the average value of elements in the T′, d2 is the minimum integer greater than or equal to the average value of Max and Min, d1′ is the remainder of d1 divided by 10, d2′ is the remainder of d2 divided by 10, and d12 is the larger of d1′ and d2′.


Further, a specific method of generating the control parameters for secondary scrambling is as follows:






{





V
1

=


10
×

V



-

round
(

10
×

V



)









V
2

=


1


0
2

×

V



-

round
(


10
2

×

V



)









V
3

=


1


0
3

×

V



-

round


(


10
3

×

V



)










V
4

=


1


0
4

×

V



-

round


(


10
4

×

V



)













    • where, V′ is a generated and processed chaotic sequence, and Vi, i=1, 2, 3, 4 is a subsequence generated by V′;









{





w
1

=

fix


(


mod

(



V
1

(


m
1


+

n
1



)

+

1
,
5


)

)









w
2

=


fix

(

mod



(



V
2


(


round

(



m
1



/
2


+

n
1





/
2


)

+
2

)

×
1


0
2

,

5
2


)


)








w
3

=


fix

(

mod


(



V
3

(

abs



(

round

(


(



m
1



/
3


-

n
1





/
3


)

+
3

)

)


)

×
1


0
3

,

5
3


)


)








w
4

=


fix

(

mod



(



V
4

(

abs



(


round

(



m
1



/
4


-

n
1





/
4


)

+
4

)


)

×
1


0
4

,

5
4


)


)











    • where, w1-w4 are used as control parameters for subsequent shift operation, and fix is a rounding function to zero; and m1′ is a maximum prime factor of a matrix row dimension m1, and n1′ is a maximum prime factor of a matrix column dimension n1.





The encrypted image obtained by the present disclosure has higher information entropy than the encrypted image generated by the existing scheme, it is difficult to obtain the relevant information of an original image, and at the same time, the encrypted image obtained by the present disclosure has better plaintext sensitivity and key sensitivity, and can resist various attacks. The decrypted image obtained by the present disclosure has higher quality than the decrypted image generated by the existing scheme, and a better visual effect and more complete original image information can be obtained.


Compared with the existing methods, the present disclosure has the following advantages:


1. The concept of a transition probability matrix in the Markov model is introduced to scramble the image, the state space is defined according to the characteristics of image pixel values in the encryption process, and a state transition probability matrix is constructed according to the distribution of pixel values, so that the encryption process has relatively good randomness, which is difficult to predict.


2. The information of plaintext images and chaotic sequences is used in the whole encryption process, which makes the encryption scheme have better plaintext sensitivity and can effectively resist and select plaintext attacks and known plaintext attacks.


3. The multi-scale block compressed sensing theory is introduced to set the sampling rate of the image more reasonably, which greatly improves the reconstruction quality of the decrypted image.





BRIEF DESCRIPTION OF DRAWINGS


FIG. 1 is a frame diagram of an encryption process of the present disclosure; and



FIG. 2 is a schematic diagram of three-level wavelet decomposition of the present disclosure.





DETAILED DESCRIPTION OF THE EMBODIMENTS

Firstly, an image is subjected to wavelet decomposition to obtain original coefficient matrices at all levels, secondly, the coefficient matrices at all levels are scrambled once, then the corresponding coefficient matrices are measured by multiple measurement matrices respectively, afterwards, the merged measurement matrices are scrambled twice by means of a state transition probability matrix, and finally the final encrypted image is obtained by diffusion. The decryption process is the reverse process of the encryption process.


There are four chaotic mapping used in the present disclosure, which are respectively TSL mapping, TLT mapping, Hybrid mapping and ISEL mapping.


The TSL mapping, TLT mapping, and Hybrid mapping are used for constructing measurement matrices, index sequences for first scrambling, and index values of coefficient matrix merging rules. The ISEL mapping is used for generating control parameters for second scrambling, and diffusion sequences for independent diffusion and global diffusion.


A construction method of the state transition probability matrix used in the present disclosure comprises:


firstly, constructing state space, and dividing numbers into four categories, which are defined as follows:


(1) if the integer part of a number is both positive and odd, the number is a positive odd number.


(2) if the integer part of a number is both negative and odd, the number is a negative odd number.


(3) if the integer part of a number is both positive and even, the number is a positive even number.


(4) if the integer part of a number is both negative and even, the number is a negative even number.


Then, initializing a 4×4 matrix f which is used for recording the frequency number of state transition. For each column of vectors of a to-be-measured matrix, firstly determining which category of number a first element belongs to, that is, determining row coordinates of the state transition matrix. Then determining which category of number the next element belongs to, that is, determining column coordinates of the state transition matrix. The numerical value of the position in the matrix f corresponding to a coordinate point is plus 1. By analogy, the updated matrix f is obtained, which is as shown in Table 1, the sum of each row of the above matrix f is calculated, and each element in a row is divided by the sum of the corresponding row to obtain a corresponding probability. After all probabilities are calculated, a final row-state transition probability matrix is obtained, which is as shown in Table 2. A generation method of a column-state transition probability matrix is similar to that of the row-state transition probability matrix, except that row vectors are taken each time instead of column vectors of the to-be-measured matrix.














TABLE 1







Positive odd
Negative odd
Positive even
Negative even



number
number
number
number




















Positive odd
3696
3796
4249
3289


number


Negative odd
3833
3928
4409
3449


number


Positive even
4217
4471
4937
3733


number


Negative even
3284
3424
3763
2962


number





















TABLE 2







Positive odd
Negative odd
Positive even
Negative even



number
number
number
number




















Positive odd
0.2459
0.2526
0.2827
0.2188


number


Negative odd
0.2454
0.2515
0.2823
0.2208


number


Positive even
0.2429
0.2576
0.2844
0.2151


number


Negative even
0.2445
0.2549
0.2801
0.2205


number









A method of scrambling pixels based on the state transition probability matrix used in the present disclosure is as follows:


for the row-state transition probability matrix (the column-state transition probability matrix), finding the position of a value with a probability value greater than 0.25 in the matrix. Row coordinates indicate the selection of odd/even column (row) vectors and the moving direction up/down (left/right). If the row coordinates are odd numbers, the odd column (row) is selected, and if the row coordinates are even numbers, the even column (row) is selected; and if the row coordinates are positive numbers, the selected element are moved up (left), and if the row coordinates are negative numbers, the selected element are moved down (right). Specifically, if the row of the selected number corresponds to a positive odd number, all odd columns (rows) of the matrix are moved up (left); if the row of the selected number corresponds to a negative odd number, all odd columns (rows) of the matrix are moved down (right); if the row of the selected number corresponds to a positive even number, all even number columns (rows) of the matrix are moved up (left); and if the row of the selected number corresponds to a negative even number, all even number columns (rows) of the matrix are moved down (right). The column coordinates indicate the shift number of cyclic shifts, and specific values are generated by chaotic mapping.


Embodiment 1

As shown in FIG. 1, the embodiments of the present disclosure are implemented based on the technical solution of the present disclosure. Detailed implementation and specific operating processes are given, but the scope of protection of the present disclosure is not limited to the following embodiments. An external key set in the embodiment can be:


t1=0.11, t2=0.22, t3=0.33, t4=0.44, t5=2.723, t6=0.618, t7=3.141, t8=4.6692, t=600, the array block_size that determines the block size of the matrix is set to [32, 16, 8], that is, block_size1=32, block_size2=16, block_size3=8, and the sampling rate is set to 0.25. The chaotic mapping is as described above.


Step 1. generating parameters and initial values of one-dimensional chaotic mapping according to plaintext image information.


For example, a SHA256 function is used for generating a hash value K of the plaintext image, and after K is transformed into a binary number, 32 sets of binary numbers k1, k2 . . . , k32 are generated in groups of 8 bits. The number L0 of 0 and the number L1 of 1 in the hash value K of the plaintext, the length l0 of the longest continuous 0 sequence and the length l1 of the longest continuous 1 sequence are calculated. The parameters and initial values of one-dimensional chaotic mapping are generated according to the following formula.







r
0

=

{






4
-


mod



(


(



l
0


L
0


+


l
1


L
1



)

×
40
,
1

)



1

0



,



(



l
0


L
0


+


l
1


L
1



)

×
4

0

>
4









(



l
0


L
0


+


l
1


L
1



)

×
4

0

,



(



l
0


L
0


+


l
1


L
1



)

×
4

0


4








{





r
1

=

1.05
+

mod



(


(


(


max

(


k
1

,

k
2

,

k
3

,

k
4

,

k
5

,

k
6


)

×

t
1


)


(


min

(


k
1

,

k
2

,

k
3

,

k
4

,

k
5

,

k
6


)

×

t
2


)


)

×
1


0

1

4


,
2.95

)










r
2

=

1.05
+

mod



(


(


(


max

(


k
7

,

k
8

,

k
9

,

k

1

0


,

k

1

1


,

k

1

2



)

×

t
3


)


(


min

(


k
7

,

k
8

,

k
9

,

k

1

0


,

k

1

1


,

k

1

2



)

×

t
4


)


)

×
1


0

1

4


,
2.95

)
















    • where, ki, i=1, 2, . . . 32 is the i-th binary number of K, and r0, r1 and r2 are the parameter values of the Hybrid mapping, the TLT mapping and the TST mapping respectively.









{




a
=

1.
/

(

1
+

e


1
256

×

(


-

t
5


×

(


k
13



k
14



k
15


)


)




)








b
=

5.
/

(

1
+

e


1
256

×

(


-

t
6


×

(


k
16



k
17



k
18


)


)




)








c
=





1
2

×

(


1.5
/

(

1
+

e


1
256

×

(


-

t
7


×

(


k
19



k
20



k
21


)


)




)


+









2.8
/

(

1
+

e


1
256

×

(


-

t
8


×

(


k
22



k
23



k
24


)


)




)


)














    • where, a, b, c are the parameter values of the ISEL mapping.









{





Z
1

=

[





t
1

×

k
25






t
3

×

k
26








t
5

×

k
27






t
7

×

k
28





]








Z
2

=

[





t
2

×

k
29






t
4

×

k
30








t
6

×

k
31






t
8

×

k
32





]









The two matrices Z1 and Z2 are constructed according to the above formula, and then the Kronecker product of the two matrices is calculated to obtain Z3.









{





x
0

=

mod



(


(



Z
3

(
1
)

+


Z
3

(
2
)

-





Z
3

(
1
)

+


Z
3

(
2
)





)

×
1


0

1

4


,

1

)









x

0

0


=

mod



(


(



Z
3

(
3
)

+


Z
3

(
4
)

-





Z
3

(
3
)

+


Z
3

(
4
)





)

×
1


0

1

4


,

1

)









y
00

=

mod



(


(



Z
3

(
1
)

+


Z
3

(
3
)

-





Z
3

(
1
)

+


Z
3

(
3
)





)

×
1


0

1

4


,

1

)









v
0

=

mod



(


(



Z
3

(
2
)

+


Z
3

(
4
)

-





Z
3

(
2
)

+


Z
3

(
4
)





)

×
1


0

1

4


,

1

)
















where, └⋅┘ presents downward rounding, Z3 (i), i=1, 2, 3, 4 represents the i-th element of the matrix Z3, and x0, x00, y00, v0 are the initial values of the Hybrid mapping, the TLT mapping, the TSL mapping, and ISEL mapping respectively.


Step 2. obtaining subsampling rates of original coefficient matrices at all levels by using multi-scale block compressed sensing theory through a total target sampling rate of a plaintext image.


Step 3. substituting the parameters and initial values of the one-dimensional chaotic mapping into a corresponding chaotic system to generate chaotic sequences, transforming the chaotic sequences into a matrix form, and obtaining corresponding orthogonal basis matrices; and extracting some elements of the orthogonal basis matrices as the measurement matrices according to the subsampling rates.


For example, the parameter r2 and initial value y00 of the chaotic system generated in step 1 are substituted into the TST mapping, which iterates t+n1×ni times, r1 and x00 are substituted into the TLT mapping, which iterates t+n2×n2 times, and r0 and x0 are substituted into the Hybrid mapping, which iterates t+n3×n3 times, where n1, n2, and n3 are determined by the block size given in advance. Every 2000 iterations, the sine value of the initial state is multiplied by a tiny coefficient to disturb the initial state value of the next iteration, and the corresponding chaotic sequences X1, X2, X3 are obtained by discarding the first T elements. Where, X1 is a sequence of a length n1×n1, X2 is a sequence of a length n2×n2, and X3 is a sequence of a length n3×n3. In order to strengthen the randomness of the chaotic sequences, the generated chaotic sequences are further processed. That is, the sequence is multiplied by an interference coefficient α, and then an interference coefficient β is added to obtain the sequences X1′, X2′, X3′, where, α=−2 and β=1. The processed chaotic sequences X1′, X2′, X3′ are transformed into a matrix form to obtain X1″, X2″, X3″. Where, X1″ is a n1×n1 matrix, X2″ is a n2×n2 matrix, and X3″ is a n3×n3 matrix. Then, the orthogonal basis matrices Φ1, Φ2, Φ3 corresponding to X1″, X2″, X3″ are used as redundant measurement matrices. The row dimensions ni, i=1, 2, 3 of the redundant measurement matrices are multiplied by the corresponding sampling rates to obtain new row dimensions mi, I=1, 2, 3, and then the first mi rows of the redundant measurement matrices are extracted as the formal measurement matrices Φ1′, Φ2′, Φ3′ respectively.


Step 4. performing three-level discrete wavelet transform on the plaintext image to obtain the original coefficient matrices at all levels, and blocking the original coefficient matrices at all levels to construct new coefficient matrixes at all levels.


For example, as shown in FIG. 2, new coefficient matrices at all levels are constructed as a low-frequency coefficient matrix A3 and nine high-frequency coefficient matrices Hi, Vi, Di, i=1, 2, 3 in horizontal, vertical and diagonal directions.


Step 5. using the chaotic sequences to generate index sequences, and scrambling the corresponding coefficient matrices at all levels as blocks;


For example, the array block_size with a length being 3 is given, and the numerical value of the element represents the block size. Third-level wavelet decomposition coefficient matrices H3, V3, D3 are divided into block_size3×block_size3 blocks, second-level wavelet decomposition matrices H2, V2, D2 are divided into block_size2×block_size2 blocks, first-level wavelet decomposition coefficient matrices H1, V1, D1 are divided into block_size1×block_size1 blocks, and then each block matrix is expanded into column vectors after blocking. Finally, the corresponding column vectors are merged in turn to form nine new coefficient matrices NH3, NV3, ND3, NH2, NV2, ND2, NH1, NV1, ND1.


The three chaotic sequences X1′, X2′ and X3′ generated in step 3 are sorted in ascending order to obtain the corresponding index sequences Ind1, Ind2 and Ind3. Third-level wavelet decomposition coefficient matrices A3, NH3, NV3, ND3 are scrambled by Ind3 to obtain A3′, H3′, V3′, D3′, second-level wavelet decomposition coefficient matrices NH2, NV2, ND2 are scrambled by Ind2 to obtain H2′, V2′, D2′, and first-level wavelet decomposition coefficient matrices NH1, NV1, ND1 are scrambled by Ind1 to obtain H1′, V1′, D1′. Taking A3 as an example, letting the matrix A3 be an m×n matrix, expanding the matrix A3 into a sequence with a length being m×n, wherein i is the index of the i-th element in the sequence. Wherein, A3′ is the sequence after A3 is scrambled.

A3′(Ind3(m×n−i+1))=A3(Ind3(i))


Step 6. using the measurement matrices to measure the coefficient matrices at all levels.


For example, the coefficient matrix A3′ remains unchanged, and the coefficient matrices H3′, V3′, D3′ are measured with Δ3′ to obtain measured value matrices H3″, V3″, D3″, the coefficient matrices H2′, V2′, D2′ are measured with Φ2′ to obtain measured value matrices H2″, V2″, D2″; and the coefficient matrices H1′, V1′, D1′ are measured with Φ1′ to obtain measured value matrices H1″, V1″, D1″.


Step 7. retaining low-frequency coefficient matrices, merging measured non-low frequency coefficient matrices at all levels to construct a matrix T, performing micro-processing on the matrix T to obtain a to-be-measured matrix NT, and respectively generating the row-state transition probability matrix and the column-state transition probability matrix according to the to-be-measured matrix NT;






T
=

(




H
1





V
1





D
1







H
2





V
2





D
2







H
3





V
3





D
3





)





In order to enhance the randomness, the to-be-measured matrix T is microprocessed according to the information l0, l1, L0, L1 obtained in step 1 to obtain the matrix NT.






{






N

T

=

-
T


,


l
0

>

l
1










N

T

=

T
-

0
.
5



,


L
0

>

L
1










N

T

=

T
+

0
.
5



,


L
0

<

L
1










The row-state transition probability matrix and the column-state transition probability matrix are constructed by merging the element information of the matrix NT.


Step 8. performing SVD decomposition on the low-frequency coefficient matrices to obtain submatrices, and quantizing the elements in the submatrices and the non-low frequency coefficient matrices at all levels to a preset interval.


For example, the maximum value and the minimum value of the nine coefficient matrices Hi″, Vi″, Di″, i=1, 2, 3 after wavelet decomposition at all levels are obtained respectively, and the coefficient matrices are quantized to an interval [0, 255]. After the quantification of the nine coefficient matrices Hi″, Vi″, Di″, i=1, 2, 3 is completed, the nine corresponding coefficient matrices Hi′″, Vi′″, Di′″, i=1, 2, 3 are obtained. SVD decomposition is performed on the low-frequency matrix A3′ to obtain three submatrices with the same dimensions u, s, and vt, then the maximum and minimum values of the three submatrices are obtained respectively, the three sub-matrices u, s, and vt are quantized to the interval [0, 255], and the corresponding matrices U, S, VT are finally obtained.


Step 9. generating index values according to the information of the chaotic sequences and determining merging rules by the index values, firstly mering the non-low frequency coefficient matrices at all levels according to the merging rules to obtain an overall matrix, and then inserting the submatrices into different positions of the overall matrix.


For example, the coefficients in the same direction are merged into one group, and H1′″, H2′″, H3′″ are grouped into one group, which is recorded as the first group. V1′″, V2′″, V3′″ are grouped into one group, which is recorded as the second group. D1′″, D2′″, D3′″ are grouped into one group, which is recorded as the third group. The three chaotic sequences X1′, X2′, X3′ generated in step 3 are used for obtaining the index values.






{





L

i

n


d
1


=


(



X
1


(


n
1

×

n
1


)

+


X
2


(


n
2

×

n
2


)

+


X
3


(


n
3

×

n
3


)


)

/
3








Lind
1


=


floor



(

mod

(

abs


(

Lin


d
1


)

×
1


0
8

,
6

)

)


+
1








Lind
2

=


(



X
1


(



n
1

×

n
1


-
1

)

+


X
2


(



n
2

×

n
2


-
1

)

+


X
3


(



n
3

×

n
3


-
1

)


)

/
3








Lind
2


=


floor


(

mod

(


abs


(

Lin


d
2


)

×
1


0
8


,
6

)

)


+
1








Lind
3


=


(



X
1


(



n
1

×

n
1


-
2

)

+


X
2


(



n
2

×

n
2


-
2

)

+


X
3


(



n
3

×

n
3


-
2

)


)

/
3








Lind
3


=


floor


(

mod

(


abs


(

Lin


d
3


)

×
1


0
8


,
6

)

)


+
1









That is, the index value Lind1′ of the first group is determined by the last element of X1′, X2′, X3′, the index value Lind2′ of the second group is determined by the penultimate element of X1′, X2′, X3′, and the index value Lind3′ of the third group is determined by the antepenult element of X1′, X2′, X3′. At the same time, the three index values are mapped to an interval [1,6], representing that there are six possible sorting orders for each group.






{






(




Y
11






Y
12






Y
13




)

=

(




H
3
′′′






H
2
′′′






H
1
′′′




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
3
′′′






V
2
′′′






V
1
′′′




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
3
′′′






D
2
′′′






D
1
′′′




)










(




Y
11






Y
12






Y
13




)

=

(




H
3
′′′






H
1
′′′






H
2
′′′




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
3
′′′






V
1
′′′






V
2
′′′




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
3
′′′






D
1
′′′






D
2
′′′




)










(




Y
11






Y
12






Y
13




)

=

(




H
2
′′′






H
3
′′′






H
1
′′′




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
2
′′′






V
3
′′′






V
1
′′′




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
2
′′′






D
3
′′′






D
1
′′′




)










(




Y
11






Y
12






Y
13




)

=

(




H
2
′′′






H
1
′′′






H
3
′′′




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
2
′′′






V
1
′′′






V
3
′′′




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
2
′′′






D
1
′′′






D
3
′′′




)










(




Y
11






Y
12






Y
13




)

=

(




H
1
′′′






H
3
′′′






H
2
′′′




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
1
′′′






V
3
′′′






V
2
′′′




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
1
′′′






D
3
′′′






D
2
′′′




)










(




Y
11






Y
12






Y
13




)

=

(




H
1
′′′






H
2
′′′






H
3
′′′




)


,


(




Y
21






Y
22






Y
23




)

=

(




V
1
′′′






V
2
′′′






V
3
′′′




)


,


(




Y
31






Y
32






Y
33




)

=

(




D
1
′′′






D
2
′′′






D
3
′′′




)










where, a first group of sorted matrices are marked as Y1, and three internal block matrices are marked as Y11, Y12, Y13 respectively; a second group of sorted matrices are marked as Y2, and three internal block matrices are marked as Y21, Y22, Y23 respectively; and a third group of sorted matrices are marked as Y3, and three internal block matrices are marked as Y31, Y32, Y33 respectively.


The quantized matrices U, S, VT are inserted into the first round of merged matrices respectively. That is, the matrix U is inserted into the first group Y1, the matrix S is inserted into the second group Y2, and the matrix VT is inserted into the third group Y3. The three chaotic sequences X1′, X2′, X3′ generated in step 3 are used for obtaining the index value.









{





H

i

n


d
1


=


(



X
1


(
1
)

+


X
2


(
1
)

+


X
3


(
1
)


)

/
3








Hind
2


=


(



X
1


(
2
)

+


X
2


(
2
)

+


X
3


(
2
)


)

/
3








Hind
3


=


(



X
1


(
3
)

+


X
2


(
3
)

+


X
3


(
3
)


)

/
3








Hind
1


=


floor


(

mod



(

abs


(

Hin


d
1


)

×
1


0
8

,
4

)


)


+
1








Hind
2


=


floor
(

mod



(


abs

(

H

i

n


d
2


)

×
1


0
8

,
4

)


)

+
1








Hind
3


=


floor
(

mod



(


abs

(

H

i

n


d
3


)

×
1


0
8

,

4

)


)

+
1















That is, the index value Hind1′ of the first group is determined by the first element of X1′, X2′, X3′, the index value Hind1′ of the second group is determined by the second element of X1′, X2′, X3′, and the index value Hind1′ of the third group is determined by the third element of X1′, X2′, X3′. At the same time, the three index values are mapped to an interval [1,4], representing that the three matrices U, S, and VT have four insertion positions respectively, that is, the top of each matrix group, between the two adjacent block matrices in the group, and the bottom of the matrix group. The results are as follows:






{






Y
1


=

(



U





Y
11






Y
12






Y
13




)


,


Y
2


=

(



S





Y
21






Y
22






Y
23




)


,


Y
3


=

(



VT





Y
31






Y
32






Y
33




)










Y
1


=

(




Y
11





U





Y
12






Y
13




)


,


Y
2


=

(




Y
21





S





Y
22






Y
23




)


,


Y
3


=

(




Y
31





VT





Y
32






Y
33




)










Y
1


=

(




Y
11






Y
12





U





Y
13




)


,


Y
2


=

(




Y
21






Y
22





S





Y
23




)


,


Y
3


=

(




Y
31






Y
32





VT





Y
33




)










Y
1


=

(




Y
11






Y
12






Y
13





U



)


,


Y
2


=

(




Y
21






Y
22






Y
23





S



)


,


Y
3


=

(




Y
31






Y
32






Y
33





VT



)










Where, a first group of merged matrices are marked as Y1′, a second group of merged matrices are marked as Y2′, and a third group of merged matrices are marked as Y3′. The three matrices Y1′, Y2′ and Y3′ are merged, and the merged matrix is recorded as a matrix T′.

T′=(Y1′Y2′Y3′)


Step 10. adjusting the dimension of the overall matrix, acquiring the element information of the overall matrix, and generating control parameters for secondary scrambling.


For example, assuming that the dimension of the merged matrix is m×n, two factors m1 and n1 of m×n are found, so that m1×n1=M×n, meanwhile, |m1−n1| is the minimum, and then the dimension of the matrix is adjusted to m1×n1. Then the matrix information is obtained as follows.






{




Max
=

max

(

T


)







Min
=

min

(

T


)








d
1

=

floor
(

mean

(

T


)

)








d
2

=


ceil

(


(

max
+
min

)

/
2

)








d
1


=

mod

(


d
1

,
10

)








d
2


=

mod

(


d
2


,
10

)








d

1

2


=

max

(


d
1


,

d
2



)









where, Max is the maximum value of the matrix T′, Min is the minimum value of the matrix T′, d1 is the maximum integer less than or equal to the average value of elements in the matrix T′, d2 is the minimum integer greater than or equal to the average value of Max and Min, d1′ is the remainder of d1 divided by 10, d2′ is the remainder of d2 divided by 10, and d12 is the larger of d1′ and d2′.


Step 11. scrambling the merged overall matrix according to the row-state transition probability matrix and the column-state transition probability matrix, and simultaneously setting corresponding flag bits;


For example, the parameters a, b, c and the initial value v0 generated in step 1 are substituted into the ISEL mapping, which iterates t+(d12+1)×m1×n1, and every 2000 iterations, the sine value of the initial state is multiplied by the tiny coefficient to disturb the initial state value of the next iteration. One chaotic sequence V is generated by discarding the first t elements. In order to strengthen the randomness, the sequence V is further processed. That is, the sequence is multiplied by the interference coefficient α, and then the interference coefficient β is added to obtain the sequence V′, where, α=−4, and β=1. Then, the four subsequences V1, V2, V3 and V4 are generated according to the chaotic sequence V′.






{





V
1

=


10
×

V



-

round

(

10
×

V



)









V
2

=


1


0
2

×

V



-

round

(

1


0
2

×

V



)









V
3

=


1


0
3

×

V



-

round

(

1


0
3

×

V



)









V
4

=


1


0
4

×

V



-

round

(

1


0
4

×

V



)










where, round is a rounding function.


According to V1, V2, V3 and V4, control parameters for the scrambling process are generated, and the calculation process is as follows.






{





w
1

=

fix



(

mod

(




V
1

(


m
1


+

n
1



)

+
1

,
5

)

)









w
2

=

fix



(

mod


(


V
2

(



round





(



m
1


/
2

+


n
1


/
2


)

+

2
×

10
2



,

5
2


)

)












w
3

=

fix



(



mod

(


V
3

(

abs

(


round





(



m
1


/
3

+


n
1


/
3


)

+
3

)

)

)

×

10
3


,

5
3


)



)







w
4

=

fix



(

mod


(




V
4

(

abs

(


round





(



m
1


/
4

+


n
1


/
4


)

+
4

)

)

×

10
4


,

5
4


)


)










where, w1-w4 are used as control parameters for subsequent shift operation, and fix is a rounding function to zero. Where, m1′ is a maximum prime factor of a matrix row dimension m1, and n1′ is a maximum prime factor of a matrix column dimension n1.


Step 12. performing independent diffusion on the elements of the overall matrix by using one of the chaotic sequences, and performing global diffusion on the elements of the overall matrix by using the other chaotic sequences to obtain the final encrypted image.


For example, the column vectors are scrambled according to the row-state transition probability matrix generated in step 7. If the column of the selected number corresponds to a positive odd number, the moving digit of the matrix element is w1; if the column of the selected number corresponds to a negative odd number, the moving digit of the matrix element is w3; if the column of the selected number corresponds to a positive even number, the moving digit of the matrix element is w2; and if the column of the selected number corresponds to a negative even number, the moving digit of the matrix element is w4. The scrambled matrix is set to T″. The initial value of the state transition flag bit matrix is set to 0. If the element in the corresponding position is shifted, the flag bit of the corresponding position changes from 0 to 1.


The row vectors are scrambled according to the column-state transition probability matrix generated in step 7, and the rules are the same as those in the above steps. The scrambled matrix is set to T′″. Similarly, the initial flag bit matrix is set, and if the corresponding position is shifted, the flag bit of the corresponding position changes from 0 to 1.


The chaotic sequence V′ generated in step 11 is quantized to an interval [0,255] to obtain the sequence V″. The d1′ and d2′ obtained in step 10 are used as samplings interval of the chaotic sequences, the sequence V1′ is obtained by sampling V″ at the interval of d1′, and the sequence V2′ is obtained by sampling V″ at an interval of d2′. The position of the last element of the sequence V2′ is taken as the starting position, and the continuous m1×n1 data are taken backward from the sequence V″, and are recorded as a sequence V0. The image matrix T′″ is XOR with the sequence V0 to obtain the matrix T″″. T″″ is recorded as the matrix A.


The sequence V1′ is used for performing forward additive modulo operation on the matrix A to obtain a matrix B, and then the previous element of each element in the matrix B is used for performing cyclic left shift operation to obtain B′; V2′ is used for performing backward additive modulo operation on the matrix B′ to obtain a matrix C, and then the latter element of each element in the matrix C is used for performing cyclic left shift operation to obtain C′. Thus, the final encrypted image is obtained.


The present disclosure discloses an image encryption method based on multi-scale compressed sensing and a Markov model. According to the difference in information carried by low-frequency coefficients and high-frequency coefficients of an image, different sampling rates are set for the low-frequency coefficients and the high-frequency coefficients of the image, which can effectively improve the reconstruction quality of a decrypted image. In addition, by merging the chaotic system and the Markov model, the encryption process is completed by firstly scrambling in the coefficient matrices of the image, then scrambling between the coefficient matrices of the image, and finally performing independent diffusion and global diffusion.

Claims
  • 1. An image encryption method based on multi-scale compressed sensing and a Markov model, comprising: generating parameters and initial values of one-dimensional chaotic mapping according to plaintext image information;obtaining subsampling rates of original coefficient matrices at all levels by using multi-scale block compressed sensing theory through a total target sampling rate of a plaintext image;substituting the parameters and initial values of the one-dimensional chaotic mapping into a corresponding chaotic system to generate chaotic sequences, transforming the chaotic sequences into a matrix form, and obtaining corresponding orthogonal basis matrices, and extracting some elements of the orthogonal basis matrices as measurement matrices according to the subsampling rates;performing three-level discrete wavelet transform on the plaintext image to obtain the original coefficient matrices at all levels, and blocking the original coefficient matrices at all levels to construct new coefficient matrixes at all levels;using the chaotic sequences to generate index sequences, and scrambling the corresponding coefficient matrices at all levels as blocks;using the measurement matrices to measure the coefficient matrices at all levels;retaining low-frequency coefficient matrices, merging measured non-low frequency coefficient matrices at all levels to construct a matrix T, performing micro-processing on the matrix T to obtain a to-be-measured matrix NT, and respectively generating a row-state transition probability matrix and a column-state transition probability matrix according to the to-be-measured matrix NT;performing SVD decomposition on the low-frequency coefficient matrices to obtain submatrices, and quantizing the elements in the submatrices and the non-low frequency coefficient matrices at all levels to a preset interval;generating index values according to the information of the chaotic sequences and determining merging rules by the index values, firstly mering the non-low frequency coefficient matrices at all levels according to the merging rules to obtain an overall matrix, and then inserting the submatrices into different positions of the overall matrix;adjusting the dimension of the overall matrix, acquiring the element information of the overall matrix, and generating control parameters for secondary scrambling;scrambling the merged overall matrix according to the row-state transition probability matrix and the column-state transition probability matrix, and simultaneously setting corresponding flag bits; andperforming independent diffusion of elements on the overall matrix by using one of the chaotic sequences, and performing global diffusion on elements of the overall matrix by using the other chaotic sequences to obtain a final encrypted image.
  • 2. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of generating parameters and initial values of one-dimensional chaotic mapping according to plaintext image information is as follows:
  • 3. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of scrambling the corresponding coefficient matrices at all levels as the blocks comprises: letting a matrix A3 be an m×n matrix, expanding the matrix A3 into a sequence with a length being m×n, wherein i is the index of the i-th element in the sequence, a scrambling method of which is as follows: A3′(Ind3(m×n−i+1))=A3(Ind3(i))where, A3′ is a sequence after A3 is scrambled, and Ind3 is an index sequence for scrambling third-level wavelet decomposition coefficient matrices; and similarly, other coefficient matrices Hi′, Vi′, Di′, i=1, 2, 3 after scrambling are obtained.
  • 4. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of performing micro-processing on the matrix T to obtain the to-be-measured matrix NT is as follows:
  • 5. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of firstly mering the non-low frequency coefficient matrices at all levels according to the merging rules to obtain the overall matrix is as follows:
  • 6. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of inserting the submatrices into different positions of the overall matrix is as follows:
  • 7. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of adjusting the dimension of the overall matrix and acquiring the element information of the overall matrix is as follows:
  • 8. The image encryption method based on multi-scale compressed sensing and a Markov model of claim 1, wherein a specific method of generating the control parameters for secondary scrambling is as follows:
Priority Claims (1)
Number Date Country Kind
202111111707.6 Sep 2021 CN national
US Referenced Citations (9)
Number Name Date Kind
5260968 Gardner Nov 1993 A
12048549 Li Jul 2024 B1
20070018109 Wang Jan 2007 A1
20080316491 Franzen Dec 2008 A1
20240160420 Martinez Canedo May 2024 A1
20240168437 Lei May 2024 A1
20240177246 Jackson May 2024 A1
20240187260 Krahn Jun 2024 A1
20240205031 Thongsom Jun 2024 A1
Foreign Referenced Citations (6)
Number Date Country
104699606 Jun 2015 CN
104751495 Jul 2015 CN
105488426 Apr 2016 CN
108235029 Jun 2018 CN
114338023 Apr 2022 CN
110148078 Sep 2022 CN
Related Publications (1)
Number Date Country
20230092977 A1 Mar 2023 US
Continuations (1)
Number Date Country
Parent PCT/CN2022/097275 Jun 2022 WO
Child 17948648 US