CN111898138B - Separable ciphertext domain reversible data hiding method - Google Patents

Separable ciphertext domain reversible data hiding method Download PDF

Info

Publication number
CN111898138B
CN111898138B CN202010639807.5A CN202010639807A CN111898138B CN 111898138 B CN111898138 B CN 111898138B CN 202010639807 A CN202010639807 A CN 202010639807A CN 111898138 B CN111898138 B CN 111898138B
Authority
CN
China
Prior art keywords
block
pixel
bits
value
secret data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010639807.5A
Other languages
Chinese (zh)
Other versions
CN111898138A (en
Inventor
王丽芳
蒋泽军
刘丽
刘志强
杜承烈
尤涛
陈进朝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Northwestern Polytechnical University
Original Assignee
Northwestern Polytechnical University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Northwestern Polytechnical University filed Critical Northwestern Polytechnical University
Priority to CN202010639807.5A priority Critical patent/CN111898138B/en
Publication of CN111898138A publication Critical patent/CN111898138A/en
Application granted granted Critical
Publication of CN111898138B publication Critical patent/CN111898138B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Image Processing (AREA)

Abstract

The invention relates to a reversible data hiding method of a separable ciphertext domain, which comprises three parts, namely an owner of content, a hider of secret data and a receiver, wherein the owner of the content preprocesses a carrier image to vacate a vacant space to hide the secret data; the data hider can directly hide secret data under the condition of not knowing the content of the carrier image; after the receiver obtains the encrypted image with the secret data, the extraction of the secret data and the restoration of the carrier image can be respectively carried out. The invention realizes the reversible digital hiding method of the separable ciphertext domain. The authorized user can recover the carrier image without loss or extract the secret data without loss, according to his own needs or a key held by him.

Description

Separable ciphertext domain reversible data hiding method
Technical Field
The invention belongs to the technical field of information hiding, and particularly relates to a separable ciphertext domain reversible data hiding method.
Background
Ciphertext domain reversible data hiding refers to a technology that a carrier used for embedding a secret is encrypted, and an original carrier can still be decrypted without errors after the secret is embedded. The technology combines encryption and steganography, and is one of the research hotspots for protecting privacy data in the cloud environment at present. The separable ciphertext domain reversible data hiding emphasizes the separability of two processes of user secret extraction and reversible carrier data recovery, and has great significance for privacy protection of users and information safety and management in a cloud environment.
In 2012, zhang et al proposed a separable ciphertext image data hiding mechanism, which compressed the LSB of the encrypted image by using a matrix operation method to vacate spatial hidden data, and the receiver could extract the secret data or recover the carrier image alone, but in this scheme, the accuracy of secret data extraction and carrier image recovery is based on the statistical characteristic of image pixel correlation, and therefore, the reversibility of the scheme cannot be fully guaranteed. In 2018, qin et al proposed a separable ciphertext domain reversible data hiding method based on adaptive embedding strategy and block selection. Firstly, dividing an original image into non-overlapping blocks with the same size; secondly, encrypting the blocks by using a mode of simulating stream ciphers and block replacement, and dividing the encrypted blocks into smooth blocks and edge blocks according to the smoothness degree of the blocks; finally, the data-concealer may make free space to embed the secret data by compressing the least significant bits of the pixels in the slider block. But this method has limited embedding capacity. In 2019, wu et al proposed a separable ciphertext domain reversible data hiding method based on scalable blocks, where the original image is divided into multiple blocks of different sizes, and two least significant bits of each pixel can be left out for hiding the secret data based on the average value of each block. The data-concealer may embed the secret data directly into the vacated bits. Experimental results show that the scheme is superior to the existing separable ciphertext domain reversible data hiding method in the aspects of visual quality, embedding capacity and data security. In summary, the key of the separable reversible data hiding method is to ensure the reversibility of the carrier recovery process under the condition of directly decrypting the embedded ciphertext, but the embedding of ciphertext domain data inevitably modifies the encrypted data, and the larger the modification is, the larger the decryption distortion is. With the increasing demand of users on the security of private data, the separable ciphertext domain reversible data hiding method has wider application space and application value.
Disclosure of Invention
Technical problem to be solved
In order to avoid the defects of insufficient embedding capacity and incomplete separation of extraction and decryption in the prior art, the invention provides a ciphertext domain data hiding method capable of separating a carrier image lossless decryption process and a secret data extraction process.
Technical scheme
A separable ciphertext domain reversible data hiding method is characterized by comprising three parts: (i) the owner of the content; (II) a concealer of secret data; (III) a recipient;
the method comprises the following steps that firstly, a content owner carries out preprocessing on a carrier image to vacate a vacant space and hide secret data, and specifically comprises the following steps:
the first step is as follows: reading a carrier image I with the size of M multiplied by N;
the second step is that: dividing the carrier image into non-overlapping blocks of a x b size, and calculating the mean value of each block according to formula (1);
Figure SMS_1
wherein the content of the first and second substances,
Figure SMS_2
representing the mean, I, of image blocks located in ith row and jth column (p,q) (i, j) (1 ≦ i ≦ a,1 ≦ j ≦ B) for each pixel in block B (p, q), based on the pixel map>
Figure SMS_3
Represents rounding down;
the third step: calculating the difference value between each pixel in the current block and the block mean value by using the formula (2), and marking the difference value as D (p,q) (i,j):
Figure SMS_4
The fourth step: setting a threshold parameter T, and obtaining a label value LM of the current block by using a formula (3) (p,q)
Figure SMS_5
The value is 0, which indicates that the current block can be used for hiding secret data, otherwise, the current block cannot be used;
the fifth step: setting two bits of flag to record the difference D (p,q) (i, j) in Table 1:
TABLE 1
Figure SMS_6
And a sixth step: calculating a difference DB (p, q) of block means between adjacent blocks using equation (4), and correcting a label value LM according to the difference (p,q)
Figure SMS_7
If it is not
Figure SMS_8
Then LM is corrected (p,q) =1;
The seventh step: according to the following rules, a free space is made for hiding the secret data, and a carrier image with a free space is generated, which is denoted as I':
1) When LM (p,q) =1, pixels in the current image block do not do any processing;
2) When LM (p,1) =0, or LM (p,q) 1 and LM (p,q-1) If =1, the mean value of the current image block
Figure SMS_9
The method can be stored in the first 6 bits of the first pixel and the first two bits of the second pixel in the block by means of bit replacement, and the flag is recorded in the last two bits of the first pixel, and different flags are different from one another, and the bits left for hiding the secret data are different:
Figure SMS_10
if flag is 00, this indicates that the pixel in the block is based on the mean value ≧ for the block>
Figure SMS_11
Equal, then the block is not used to record the block meanAnd all bits except flag, can be left out for hiding the secret data;
Figure SMS_12
if flag is 01, it indicates the difference D between the block mean of the block and the pixels in the block (p,q) (i, j) are all (-2,2)]Then, in addition to the bits for recording the block mean and flag in the block, two bits are used in each pixel for recording the difference, and the remaining bits can be left free for hiding the secret data, note that: the first pixel is used to record the mean value, so its difference value can be recorded in the other pixels;
Figure SMS_13
if flag is 10, it indicates the difference D between the block mean value of the pixels in the block and the block (p,q) (i, j) are all (-4,4)]Then, in addition to the bits for recording the block mean and flag in the block, three bits are used in each pixel for recording the difference, and the remaining bits can be left free for hiding the secret data, note that: the first pixel is used to record the mean value, so its difference value can be recorded in other pixels;
Figure SMS_14
if flag is 11, it indicates the difference D between the block mean value of the block and the pixels in the block (p,q) (i, j) are all (-8,8)]Then, in addition to the bits for recording the block mean and flag in the block, four more bits are used in each pixel for recording the difference, and the remaining bits can be left free for hiding the secret data, note that: the first pixel is used to record the mean value, so its difference value can be recorded in the other pixels;
3) When LM (p,q) And LM (p,q-1) If =0, the difference DB (p, q) between the average values of the adjacent blocks can be saved in the first 6 bits of the first pixel in the block by bit replacement, and the flag is recorded in the last two bits of the first pixel, which is the same as the above step 2) for different flags;
eighth step: carrying out encryption processing on the carrier image I' with the vacant space to generate an encrypted image E;
1) Creating an encryption key K e And using this key to generate a value of 0,255]A random matrix R (i, j) of size M N;
2) Dividing the matrix R (i, j) into non-overlapping blocks of a x b size, and replacing the lowest two bits of the first element in each block with 00;
3) The image I' with the empty space is encrypted using formula (5) wherein,
Figure SMS_15
representing a bitwise exclusive-or calculation;
Figure SMS_16
the method for hiding the data can hide the secret data directly without knowing the content of the carrier image, and specifically comprises the following steps:
the first step is as follows: the hider of the data needs to hold the tag value LM (p,q)
The second step: converting secret data to be hidden into a binary bit stream S = { S = { (S) } 1 ,s 2 ,...,s q };
The third step: creating a hidden secret key K d And the binary bit stream is encrypted out of order by using the key;
the fourth step: dividing the encrypted image E into non-overlapping blocks of a x b size, extracting the flag from the last two bits of the first pixel in each block, and calculating the flag value according to the flag value LM (p,q) And flag, the method of direct substitution of bit position imbeds the secret bit stream after encrypting into the spare bit position in advance sequentially, form the encryption image E' with secret data;
after the receiver obtains the encrypted image E' with the secret data, the extraction of the secret data and the recovery of the carrier image can be respectively carried out, and the two processes are separable:
1. when the receiver receives the message with the secretAfter encrypting the image E' of the secret data, if it holds the encryption key K e And a tag value LM (p,q) Then, the original carrier image can be restored without distortion, which specifically includes the following steps:
the first step is as follows: using an encryption key K e Produce a value of [0,255]A random matrix R (i, j) of size M N;
the second step: dividing R (i, j) into non-overlapping blocks of a x b size, and replacing the lowest two bits of the first element in each block with 00;
the third step: decrypting using equation (6);
Figure SMS_17
the fourth step: according to the label value, the original pixel value of the carrier image is restored as follows:
Figure SMS_18
when LM (p,q) =1, the original pixel value is equal to the current decrypted pixel;
Figure SMS_19
when LM (p,q) And LM (p,q-1) =1, extracting a block mean value ÷ from the highest six bits of the first pixel and the first two bits of the second pixel in the decrypted image block>
Figure SMS_20
Extracting a flag from the lowest two bits of the first pixel, and extracting a difference value D from the pixel according to the value of the flag (p,q) (i, j) calculating a value of the original pixel using formula (7);
Figure SMS_21
Figure SMS_22
when LM (p,q) And LM (p,q-1) =0, extract difference DB (p, q) of block mean from the highest six bits of the first pixel in the decrypted current image block and use formula @>
Figure SMS_23
Calculating the mean value of the current block, extracting a flag from the lowest two bits of the first pixel, and extracting a difference value D from the pixel according to the value of the flag (p,q) (i, j) calculating a value of the original pixel using formula (7);
the fifth step: repeating the fourth step until all blocks are processed and the original carrier image is restored;
2. when the receiver receives the encrypted image E' with the secret data, if the receiver holds the hidden key K d And a tag value, the secret data can be extracted without loss, and the method specifically comprises the following steps:
in a first step, E' is divided into non-overlapping blocks of a x b size,
secondly, extracting a flag from the last two bits of the first pixel of each block, and extracting the secret data from the spare bits of each pixel directly according to the tag value and the flag;
third step, using the hidden key K d Decrypting the secret bit sequence extracted in the above steps to obtain original secret data;
3. when the receiver receives the encrypted image E' with the secret data, if the receiver holds the encryption key K e Hidden secret key K d And the label value, the processes 1 and 2 can be executed simultaneously, so that the carrier image can be recovered without loss, and the embedded secret data can be completely extracted.
The a x b is 2 x 2.
The threshold value T =8.
Advantageous effects
The separable ciphertext domain reversible data hiding method provided by the invention has the following beneficial effects:
(1) The scheme is simple, easy to realize, high in safety, and the embedding capacity is greatly improved compared with other algorithms.
(2) The protection of the carrier image is easy to realize;
(3) The scheme is flexible to apply, and can hide copyright information, identity or content retrieval and other information into the encrypted image according to different requirements of a user on image protection, so that management of copyright protection, security authentication, retrieval, classification and the like of the encrypted image is realized.
(4) The invention realizes a reversible digital hiding method of separable ciphertext domains. The authorized user can recover the carrier image without loss or extract the secret data without loss, according to his own needs or a key held by him.
Detailed Description
The invention will now be further described with reference to the following examples:
matlab is selected as a software platform, and the design of the scheme of the invention is realized by programming. The implementation selects a 512 × 512 standard test image "Lena" as the carrier image, assuming that the threshold T =8.
The specific operation steps are as follows:
the method comprises the following steps that I, an owner of the content preprocesses a carrier image to vacate a vacant space for hiding secret data, and specifically comprises the following steps:
firstly, reading a carrier image I with the size of 512 multiplied by 512;
in a second step, the carrier image is divided into non-overlapping blocks of size 2 × 2, and the average value of each block is calculated, for example:
Figure SMS_24
then->
Figure SMS_25
Figure SMS_26
Thirdly, calculating the difference value between each pixel in the current block and the block mean value, and for the first block, calculating the difference value between each pixel in the current block and the block mean value by: such as: d (1,1) (1,1)=163-163=0,D (1,1) (1,2)=163-163=0,D (1,1) (2,1)=163-163=0,D (1,1) (2,2)=163-163=0; for the second block there are: d (1,2) (1,1)=163-162=1,D (1,2) (1,2)=161-162=-1,D (1,2) (2,1)=163-162=1,D (1,2) (2,2)=161-162=-1;
Step four, setting a threshold parameter T =8, and then determining a label value of the block, where for the first block: max { D (1,1) (1,1),D (1,1) (1,2),D (1,1) (2,1),D (1,1) (2,2)}=0∈(-8,8]Thus LM (1,1) =0, current block hidden; for the second block there are: max [ D ] (1,2) (1,1),D (1,2) (1,2),D (1,2) (2,1),D (1,2) (2,2)]=max[1,-1,1,-1]∈(-8,8]Thus LM (1,2) =0, current block hidden;
fifthly, setting two bits of flag to record the difference D (p,q) (i, j), the first block differences are all 0, so flag is 00, and the second block differences are all (-2,2)]In the range of (1), all the flags are 01;
sixth step, because LM (1,1) =0,LM (1,2) =0, so the difference DB (1, 2) =162-163= -1 e (-32,32) between the two adjacent blocks is calculated]No correction of the tag value;
seventhly, vacating a vacant space for hiding the secret data and generating a carrier image with the vacant space, wherein the carrier image is marked as I' according to the following rules:
1) When LM (p,q) =1, pixels in the current image block do not do any processing;
2) When LM (1,1) Mean value of image blocks when =0
Figure SMS_27
The corresponding binary value is 01110011 and the flag is 00, so that the first six bits of the first pixel in the block record the upper six bits of the mean, the last two bits record the flag, and the first pixel is modified to be01110000; the first two bits of the second pixel are stored for the last two bits of the mean, and the second pixel is modified11110011, except the top two bits of the first and second pixels, other bits can be used to hide the secret data, so 22 bits can be left out of the current blockUsing the bit as vacant space hidden secret data;
3) When LM (1,2) And LM (1,1) If =0 is satisfied, DB (1, 2) = -1, only 6 bits are needed to record the difference between the mean values, -1 is converted to binary representation 000001, where the most significant bit 0 represents that the difference is negative and 1 represents that the difference is positive, so the first 6 bits of the first pixel are modified to 000001 and the last two bits record flag to 01, and the first pixel is modified to 00000100000101, respectively using {01,11} to represent the difference value { -1,1}, then D is obtained (1,2) (1,1)=1,D (1,2) (1, 2) = -1 is stored in the first four bits of the second pixel, D (1,2) (2, 1) =1 stored in the first two bits of the third pixel, D (1,2) (2, 2) = -1 is stored in the first two bits of the fourth pixel, and thus the second pixel is modified to be11010001, third Pixel modification11110011, the fourth pixel is modified01100001, except for the bits for recording the difference value and the flag, the rest bits can be used for hiding the secret data, therefore, 14 bits can be left in the current block as the vacant space hidden secret data;
eighthly, carrying out encryption processing on the carrier image I' with the vacant space to generate an encrypted image E;
4) Creating an encryption key K e =45, and use this key to generate a value of 0,255]A random matrix R (i, j) of size 512 × 512;
5) Dividing the matrix R (i, j) into non-overlapping blocks of 2 x 2 size and replacing the lowest two bits of the first element in each block with 00;
6) The image I' with the empty space is encrypted using formula (7) wherein,
Figure SMS_28
representing a bitwise exclusive-or calculation;
Figure SMS_29
the method includes the following steps:
first, the hider of the data needs to hold the tag value LM (p,q)
In the second step, the first step is to remove the waste water, converting secret data to be hidden into binary bit stream S = { S = { S = } 1 ,s 2 ,...,s q };
Third step, create a hidden key K d =200, and uses the key to encrypt the binary bit stream out of order;
fourthly, dividing the encrypted image E into non-overlapping blocks of 2 × 2 size, and extracting a flag from the last two bits of the first pixel in each block, taking the first block as an example: LM (melt extrusion) (1,1) And if 0 and 00 is marked, all bits except the first two bits of the first pixel and the second pixel in the block can be replaced by the secret bits in sequence by using a bit replacement method, so that an encrypted image E' with the secret data is formed.
After the receiver obtains the encrypted image E' with the secret data, the extraction of the secret data and the recovery of the carrier image can be respectively carried out, and the two processes are separable:
1. when the receiver receives the encrypted image E' with the secret data, if the receiver holds the encryption key K e And a label value LM (p,q) Then, the original carrier image can be restored without distortion, specifically including the following steps:
first step, using an encryption key K e =45 yields a value of [0,255]A random matrix R (i, j) of size 512 × 512;
a second step of dividing R (i, j) into non-overlapping blocks of 2 x 2 size and replacing the lowest two bits of the first element in each block with 00;
thirdly, decrypting by using a formula (8);
Figure SMS_30
fourthly, according to the label value, restoring the original pixel value of the carrier image according to the following conditions:
taking the second block as an example, LM (1,2) =0,LM (1,1) =0, DB (1, 2) = -1 is extracted from the first six bits of the first pixel in the block, flag is extracted from the last two bits, and the first 6 bits of the first pixel and the first two bits of the second pixel in the previous block are extracted
Figure SMS_31
By means of a formula>
Figure SMS_32
Calculating the mean value of the current block; extracting corresponding difference D from the second, third and fourth pixels (p,q) (i, j) calculating the value of the original pixel; i is (1,2) (1,1)=162+1=163,I (1,2) (1,2)=162-1=161,I (1,2) (2,1)=162+1=163,I (1,2) (2,2)=162-1=161;
And fifthly, repeating the fourth step until all the blocks are processed and the original carrier image is recovered.
2. When the receiver receives the encrypted image E' with the secret data, if the receiver holds the hidden key K d And a tag value, the secret data can be extracted without loss, and the method specifically comprises the following steps:
in a first step, E' is divided into non-overlapping blocks of size 2 x 2,
secondly, extracting a flag from the last two bits of the first pixel of each block, and extracting the secret data from the spare bits of each pixel directly according to the tag value and the flag;
taking the first block as an example, LM (1,1) =0, flag is 00, and therefore, except for the first two bits of the first pixel and the second pixel, the remaining bits are secret data, and therefore, it is sufficient to directly extract these bits in sequence;
third, using the hidden key K d =200, the original secret data can be obtained by performing decryption processing on the secret bit sequence extracted in the above step.
3. When the receiver receives the encrypted image E' with the secret data, if the receiver holds the secret data, the receiver adds the secret dataSecret key K e Hidden secret key K d And the label value, the processes 1 and 2 can be simultaneously executed, the carrier image can be recovered without damage, and the embedded secret data can be completely extracted.
To further illustrate the feasibility of the present invention, six standard test images (Lena, baboon, airplan, bat, peppers, tiffany) with a size of 512 × 512 were selected as carrier images to perform experiments on the proposed scheme of the present invention.
Table 2 shows the effect of different block sizes on embedding capacity for a threshold T of 8. It can be seen that due to the correlation between adjacent pixels, the difference between a pixel and its predicted value is mostly concentrated around the value of 0, which provides a large redundant space for embedding secret information. Further, as the image block size is smaller, the larger the ratio of the difference between the pixel in the block and the block mean value being 0, the more redundant space is left, and therefore, the capacity of embedding is much larger for the block size of 2 × 2 than for the block size of 4 × 4. Furthermore, from the different test images, we can also see that the smoother the image, the greater the embedding capacity. The "airplan" has a large area of snow and sky as background, and the image detail is relatively small, so the embedding capacity of the image can reach 2.608bpp, while the "babon" has too much detail information, the variation between adjacent pixels is large, so more bits are needed to record the difference, and the embedding capacity is relatively low, and is only 0.561bpp. Table 3 shows a comparison between the scheme of the present invention and the three existing schemes, and compared with the other three schemes, the scheme of the present invention has a significant improvement in embedding capacity.
TABLE 2
Figure SMS_33
TABLE 3
Figure SMS_34
/>

Claims (3)

1. A separable ciphertext domain reversible data hiding method is characterized by comprising three parts: (i) the owner of the content; (II) a concealer of secret data; (III) a recipient;
the method comprises the following steps that firstly, a content owner carries out preprocessing on a carrier image to vacate a vacant space and hide secret data, and specifically comprises the following steps:
the first step is as follows: reading a carrier image I with the size of M multiplied by N;
the second step: dividing the carrier image into non-overlapping blocks of a x b size, and calculating the mean value of each block according to formula (1);
Figure FDA0004037912470000011
wherein the content of the first and second substances,
Figure FDA0004037912470000012
representing the mean, I, of image blocks located in row I and column j (p,q) (i, j) (1 ≦ i ≦ a,1 ≦ j ≦ B) represents each pixel in block B (p, q), which is greater than or equal to>
Figure FDA0004037912470000013
Represents rounding down;
the third step: calculating the difference value between each pixel in the current block and the block mean value by using the formula (2), and marking the difference value as D (p,q) (i,j):
Figure FDA0004037912470000014
The fourth step: setting a threshold parameter T, and obtaining a label value LM of the current block by using a formula (3) (p,q)
Figure FDA0004037912470000015
The value is 0, which indicates that the current block can be used for hiding the secret data, otherwise, the current block cannot be used;
the fifth step: setting two bits of flag to record the difference D (p,q) (i, j) ranges, see Table 1:
TABLE 1
Figure FDA0004037912470000016
Figure FDA0004037912470000021
And a sixth step: calculating a difference DB (p, q) of block means between adjacent blocks using equation (4), and correcting a label value LM according to the difference (p,q)
Figure FDA0004037912470000022
If it is not
Figure FDA0004037912470000023
Then revise LM (p,q) =1;
The seventh step: according to the following rules, a free space is made for hiding the secret data, and a carrier image with the free space is generated, which is denoted as I':
1) When LM (p,q) =1, pixels in the current image block do not do any processing;
2) When LM (p,1) =0, or LM (p,q) And LM (p,q-1) =1, mean value of current image block
Figure FDA0004037912470000024
The first 6 bits of the first pixel and the first two bits of the second pixel in the block can be saved in a bit replacement mode, and a flag is recorded in the last two bits of the first pixel, wherein different flags are set aside, and the bits for hiding the secret data are different:
Figure FDA0004037912470000025
if flag is 00, this indicates that the pixel in the block is based on the mean value ≧ for the block>
Figure FDA0004037912470000026
If they are equal, all bits of the block except for recording the block mean and flag can be vacated for hiding the secret data;
Figure FDA0004037912470000027
if flag is 01, it indicates the difference D between the block mean of the block and the pixels in the block (p,q) (i, j) are all (-2,2)]Then, in addition to the bits for recording the block mean and flag in the block, two more bits are used in each pixel for recording the difference, the remaining bits can be left for hiding the secret data, and the first pixel is used for recording the mean, so that the difference can be recorded in other pixels;
Figure FDA0004037912470000028
if flag is 10, it represents the difference D between the block mean of the block and the pixels in the block (p,q) (i, j) are all (-4,4)]Then, in addition to the bits for recording the block mean and flag in the block, three bits are used in each pixel for recording the difference, the remaining bits can be left for hiding the secret data, and the first pixel is used for recording the mean, so that the difference can be recorded in other pixels;
Figure FDA0004037912470000029
if flag is 11, it indicates the difference D between the block mean value of the block and the pixels in the block (p,q) (i, j) are all (-8,8)]Then in addition to the bits used to record the block mean and flag, four more bits are used in each pixel to record the difference, and the remaining bits can be usedVacate for hiding secret data, the first pixel is used for recording the mean value, so the difference value can be recorded in other pixels;
3) When LM (p,q) 1 and LM (p,q-1) If =0, the difference DB (p, q) between the average values of the adjacent blocks can be saved in the first 6 bits of the first pixel in the block by bit replacement, and the flag is recorded in the last two bits of the first pixel, which is the same as the above step 2) for different flags;
eighth step: carrying out encryption processing on the carrier image I' with the spare space to generate an encrypted image E;
1) Creating an encryption key K e And using this key to generate a value of 0,255]A random matrix R (i, j) of size M N;
2) Dividing the matrix R (i, j) into non-overlapping blocks of a x b size, and replacing the lowest two bits of the first element in each block with 00;
3) The image I' with the empty space is encrypted using formula (5) wherein,
Figure FDA0004037912470000032
representing a bitwise xor calculation;
Figure FDA0004037912470000031
the method includes the following steps:
the first step is as follows: the hider of the data needs to hold the tag value LM (p,q)
The second step is that: converting secret data to be hidden into a binary bit stream S = { S = { (S) } 1 ,s 2 ,...,s q };
The third step: creating a hidden secret key K d And using the key to carry out-of-order encryption processing on the binary bit stream;
the fourth step: dividing the encrypted image E into a x b largeSmall non-overlapping blocks, and extracting flag from the last two bits of the first pixel in each block, according to the label value LM (p,q) And flag, the method of direct substitution of bit position imbeds the secret bit stream after encrypting into the spare bit position in advance sequentially, form the encryption image E' with secret data;
after the receiver obtains the encrypted image E' with the secret data, the extraction of the secret data and the recovery of the carrier image can be respectively carried out, and the two processes are separable:
(1) When the receiver receives the encrypted image E' with the secret data, if the receiver holds the encryption key K e And a tag value LM (p,q) Then, the original carrier image can be restored without distortion, specifically including the following steps:
the first step is as follows: using an encryption key K e Produce a value of [0,255]A random matrix R (i, j) of size M N;
the second step is that: dividing R (i, j) into non-overlapping blocks of a x b size, and replacing the lowest two bits of the first element in each block to 00;
the third step: decrypting using equation (6);
Figure FDA0004037912470000041
the fourth step: according to the label value, the original pixel value of the carrier image is restored as follows:
Figure FDA0004037912470000042
when LM (p,q) =1, the original pixel value is equal to the current decrypted pixel;
Figure FDA0004037912470000043
when LM (p,q) And LM (p,q-1) =1, from the highest six bits of the first pixel and the first two bits of the second pixel in the decrypted image blockTaking the mean value of the block>
Figure FDA0004037912470000044
Extracting a flag from the lowest two bits of the first pixel, and extracting a difference value D from the pixel according to the value of the flag (p,q) (i, j) calculating a value of the original pixel using formula (7);
Figure FDA0004037912470000045
Figure FDA0004037912470000046
when LM (p,q) And LM (p,q-1) =0, extract difference DB (p, q) of block mean from the highest six bits of the first pixel in the decrypted current image block and use formula @>
Figure FDA0004037912470000047
Calculating the mean value of the current block, extracting a flag from the lowest two bits of the first pixel, and extracting a difference value D from the pixel according to the value of the flag (p,q) (i, j) calculating a value of the original pixel using formula (7);
the fifth step: repeating the fourth step until all blocks are processed and the original carrier image is restored;
(2) When the receiver receives the encrypted image E' with the secret data, if the receiver holds the hidden key K d And a tag value, the secret data can be extracted without loss, and the method specifically comprises the following steps:
in a first step, E' is divided into non-overlapping blocks of a x b size,
secondly, extracting a flag from the last two bits of the first pixel of each block, and extracting the secret data from the spare bits of each pixel directly according to the tag value and the flag;
third step, using the hidden key K d The secret bit sequence extracted in the above steps is decrypted, so as to obtain the secret bit sequenceObtaining original secret data;
(3) When the receiver receives the encrypted image E' with the secret data, if the receiver holds the encryption key K e Hidden secret key K d And the label value, the processes (1) and (2) can be executed simultaneously, the carrier image can be recovered without damage, and the embedded secret data can be completely extracted.
2. The separable ciphertext domain reversible data hiding method of claim 1, wherein a x b is 2 x 2.
3. The separable ciphertext domain reversible data hiding method of claim 1, wherein the threshold parameter T =8.
CN202010639807.5A 2020-07-06 2020-07-06 Separable ciphertext domain reversible data hiding method Active CN111898138B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010639807.5A CN111898138B (en) 2020-07-06 2020-07-06 Separable ciphertext domain reversible data hiding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010639807.5A CN111898138B (en) 2020-07-06 2020-07-06 Separable ciphertext domain reversible data hiding method

Publications (2)

Publication Number Publication Date
CN111898138A CN111898138A (en) 2020-11-06
CN111898138B true CN111898138B (en) 2023-04-07

Family

ID=73191598

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010639807.5A Active CN111898138B (en) 2020-07-06 2020-07-06 Separable ciphertext domain reversible data hiding method

Country Status (1)

Country Link
CN (1) CN111898138B (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113472968B (en) * 2021-05-08 2023-10-13 武汉理工大学 Method, device and storage medium for hiding reversible data of encrypted image
CN115190216B (en) * 2022-07-13 2023-08-18 西安理工大学 Encrypted image reversible data hiding and decrypting method based on prediction error map
CN115379066B (en) * 2022-08-26 2023-07-25 西安理工大学 Encryption image reversible data encryption and decryption method based on self-adaptive compression coding

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547797A (en) * 2019-01-02 2019-03-29 太原科技大学 A kind of separable encrypted domain information concealing method
CN111311474A (en) * 2020-02-04 2020-06-19 太原科技大学 Large-capacity image encryption domain information hiding method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9639912B2 (en) * 2014-12-30 2017-05-02 University Of Macau Method for reversible image data hiding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109547797A (en) * 2019-01-02 2019-03-29 太原科技大学 A kind of separable encrypted domain information concealing method
CN111311474A (en) * 2020-02-04 2020-06-19 太原科技大学 Large-capacity image encryption domain information hiding method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Hill密码体系中的加密矩阵与哑元;王丽芳等;《西南大学学报(自然科学版)》;20141130;全文 *
Reversible data hiding in encrypted image with separable data extraction from image decryption;Wang Xiaofeng etc.;《MULTIMEDIA TOOLS AND APPLICATIONS》;20170331;全文 *
基于无损压缩的加密图像可逆信息隐藏;郑淑丽等;《合肥工业大学学报(自然科学版)》;20160128(第01期);全文 *

Also Published As

Publication number Publication date
CN111898138A (en) 2020-11-06

Similar Documents

Publication Publication Date Title
CN111311474B (en) High-capacity image encryption domain information hiding method
Qin et al. Separable reversible data hiding in encrypted images via adaptive embedding strategy with block selection
CN108566500B (en) Reversible hiding method of self-adaptive image encryption domain based on hybrid encryption mechanism
CN111898138B (en) Separable ciphertext domain reversible data hiding method
CN109348228B (en) Reversible information hiding system and method for image encryption domain
Zhang et al. Reversibility improved data hiding in encrypted images
Yin et al. Reversible data hiding in encrypted images based on pixel prediction and bit-plane compression
CN112311954B (en) Ciphertext domain reversible information hiding method based on complementary code mark and bitmap embedding
Yin et al. Separable and Error‐Free Reversible Data Hiding in Encrypted Image with High Payload
CN109803142B (en) Encrypted domain image reversible data hiding method based on neighborhood prediction
CN111861844A (en) Reversible watermarking method based on image block authentication
CN113114869B (en) Ciphertext domain high-capacity image reversible data hiding method based on MSB prediction
CN111464718B (en) Encryption image reversible information hiding method based on interpolation technology
CN114172630B (en) Reversible information hiding method based on addition homomorphic encryption and multi-high-order embedding
CN110211018B (en) Chaos encryption reversible information hiding method based on odd-even discrimination strategy
CN114666453A (en) Separable ciphertext domain reversible data hiding method based on bit plane segmentation
CN111915474B (en) Reversible encryption domain information hiding method based on integer transformation
CN114493968A (en) Data hiding method based on most significant bit replacement and least significant bit compression
CN115379066B (en) Encryption image reversible data encryption and decryption method based on self-adaptive compression coding
CN113382127B (en) Encrypted image reversible information hiding method with elastic selection and run-length coding
Puteaux et al. High-capacity reversible data hiding in encrypted images using MSB prediction
CN111814160B (en) Ciphertext domain reversible information hiding system and method for DICOM file
CN115348361B (en) Encryption image reversible data encryption and decryption method based on multi-MSB block coding
CN113489859B (en) Reversible information hiding method on encrypted image using adaptive coding
Wang et al. A triangular algorithm of image-hiding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant