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

Separable ciphertext domain reversible data hiding method Download PDF

Info

Publication number
CN111898138A
CN111898138A CN202010639807.5A CN202010639807A CN111898138A CN 111898138 A CN111898138 A CN 111898138A CN 202010639807 A CN202010639807 A CN 202010639807A CN 111898138 A CN111898138 A CN 111898138A
Authority
CN
China
Prior art keywords
block
pixel
bits
value
flag
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.)
Granted
Application number
CN202010639807.5A
Other languages
Chinese (zh)
Other versions
CN111898138B (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 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.

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 perform the extraction of the secret data or the recovery of the carrier image alone, but the accuracy of the extraction of the secret data and the recovery of the carrier image in this scheme is based on the statistical characteristic of image pixel correlation, and therefore, the reversibility of the scheme cannot be fully ensured. 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, while the embedding of the ciphertext domain data inevitably modifies the encrypted data, and the larger the modification, the larger the decryption distortion. 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 BDA0002570535730000021
wherein the content of the first and second substances,
Figure BDA0002570535730000022
representing the mean, I, of image blocks located in row I and column j(p,q)(i, j) (1. ltoreq. i.ltoreq.a, 1. ltoreq. j.ltoreq.b) represents each pixel in the block B (p, q),
Figure BDA0002570535730000023
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 BDA0002570535730000024
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 BDA0002570535730000031
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 BDA0002570535730000032
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 BDA0002570535730000033
If it is not
Figure BDA0002570535730000036
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 the free space is generated, which is denoted as I':
1) when LM(p,q)1, the pixels in the current image block are not processed;
2) when LM(p,1)0, or LM(p,q)0 and LM(p,q-1)When 1 is satisfied, the average value of the current image block
Figure BDA0002570535730000037
A passable bitThe bit substitution mode is stored in the first 6 bits of the first pixel and the first two bits of the second pixel in the block, and the flag is recorded in the last two bits of the first pixel, wherein different flags are set, and the bits for hiding the secret data are different:
Figure BDA0002570535730000034
if flag is 00, it represents the mean value of the pixels in the block and the block
Figure BDA0002570535730000035
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 BDA0002570535730000041
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 BDA0002570535730000042
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, 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 BDA0002570535730000043
if flag is 11, it represents the difference D between the block mean value of the block and the pixels in the block(p,q)(i, j) are allBelong to (-8, 8)]Then, in addition to the bits for recording the block mean and flag in the block, four 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)0 and LM(p,q-1)When 0 is satisfied, the difference DB (p, q) between the average values of the adjacent blocks can be stored 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, and for different flags, the same execution is performed as in step 2);
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 KeAnd 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 equation (5) in which,
Figure BDA0002570535730000044
representing a bitwise xor calculation;
Figure BDA0002570535730000045
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 binary bit stream S ═ S1,s2,...,sq};
The third step: creating a hidden key KdAnd use the secretThe key carries out-of-order encryption processing on the binary bit stream;
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, embedding the encrypted secret bit stream into the spare bits in advance in sequence by using a bit direct substitution method to form an encrypted 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 KeAnd 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 KeProduce 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 with 00;
the third step: decrypting using equation (6);
Figure BDA0002570535730000051
the fourth step: according to the label value, the original pixel value of the carrier image is restored as follows:
Figure BDA0002570535730000052
when LM(p,q)1, the original pixel value is equal to the current decrypted pixel;
Figure BDA0002570535730000053
when LM(p,q)0 and LM(p,q-1)1, from the first pixel in the decrypted image blockExtracting block mean value from first two bits of high six bits and second pixel
Figure BDA0002570535730000054
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 equation (7);
Figure BDA0002570535730000055
Figure BDA0002570535730000061
when LM(p,q)0 and LM(p,q-1)0, extracting a difference value DB (p, q) of the block mean from the highest six bits of the first pixel in the decrypted current image block, and using a formula
Figure BDA0002570535730000062
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 equation (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 KdAnd 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, using the hidden key KdDecrypting the extracted secret bit sequence 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 KeHidden secret key KdAnd 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.
The a x b is 2 x 2.
The threshold value T is 8.
Advantageous effects
The separable ciphertext domain reversible data hiding method 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 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 standard test image "Lena" of 512 × 512 as a carrier image, and assumes that the threshold T is 8.
The specific operation steps are as follows:
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:
firstly, reading a carrier image I with the size of 512 multiplied by 512;
second, the carrier image is divided into 2 × 2 sizesNon-overlapping blocks, the average of each block is calculated, such as:
Figure BDA0002570535730000071
then
Figure BDA0002570535730000072
Figure BDA0002570535730000073
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 ═ 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;
And step four, setting a threshold parameter T to be 8, judging the label value of the block, and 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, the current block can be 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, the current block can be hidden;
fifthly, setting two bits of flag to record the difference D(p,q)(i, j), the first block difference values are all 0, so flag is 00, and the second block difference values 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) between the two neighboring blocks is calculated as 162-]No correction of the tag value;
the seventh step, according to the following rules, vacating the empty space for hiding the secret data, and generating a carrier image with the empty space, which is marked as I':
1) when LM(p,q)1, the pixels in the current image block are not processed;
2) when LM(1,1)Mean value of image block when 0
Figure BDA0002570535730000081
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 six upper 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 with the last two bits of the mean and the second pixel is modified11110011, except the highest two bits of the first pixel and the second pixel, other bits can be used for hiding the secret data, therefore, 22 bits can be left in the current block as the vacant space hidden secret data;
3) when LM(1,2)0 and LM(1,1)When 0 is satisfied, DB (1,2) ═ 1, only 6 bits are needed to record the difference between the means, -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, 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 on 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, so 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 Ke45 and generates a fetch using this keyHas 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 equation (7) where,
Figure BDA0002570535730000091
representing a bitwise xor calculation;
Figure BDA0002570535730000092
the method includes the following steps:
first, the hider of the data needs to hold the tag value LM(p,q)
Secondly, secret data to be hidden is converted into a binary bit stream S ═ S1,s2,...,sq};
Third step, create a hidden key Kd200, and using the key to carry out-of-order encryption processing on the binary bit stream;
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(1,1)And when the value is 0 and the value is 00, 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 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 KeAnd a tag value LM(p,q)The original carrier imageCan be recovered without distortion, and specifically comprises the following steps:
first, using an encryption key KeYielding a value of 0,255 for 45]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 BDA0002570535730000101
fourthly, restoring the original pixel value of the carrier image according to the label value under the following conditions:
taking the second block as an example, LM(1,2)=0,LM(1,1)0, extracting DB (1,2) from the first six bits of the first pixel in the block to-1, extracting flag from the last two bits, and extracting the first 6 bits of the first pixel and the first two bits of the second pixel in the previous block
Figure BDA0002570535730000102
Using formulas
Figure BDA0002570535730000103
Calculating the mean value of the current block; extracting corresponding difference D from the second, third and fourth pixels(p,q)(i, j) calculating a 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 KdAnd 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)When the value is 0, the flag is 00, and therefore, the remaining bits are secret data except the first two bits of the first pixel and the second pixel, and therefore, the bits are directly extracted in sequence;
third, using the hidden key KdThe original secret data can be obtained by decrypting the secret bit sequence extracted in the above step 200.
3. When the receiver receives the encrypted image E' with the secret data, if the receiver holds the encryption key KeHidden secret key KdAnd 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, Boat, Peppers, Tiffany) of 512 × 512 size were selected as carrier images to perform experiments on the proposed protocol.
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 has relatively less detail, 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.561 bpp. 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 BDA0002570535730000111
TABLE 3
Figure BDA0002570535730000121

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 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 FDA0002570535720000011
wherein the content of the first and second substances,
Figure FDA0002570535720000012
representing the mean, I, of image blocks located in row I and column j(p,q)(i, j) (1. ltoreq. i.ltoreq.a, 1. ltoreq. j.ltoreq.b) represents each pixel in the block B (p, q),
Figure FDA0002570535720000013
represents rounding down;
the third step: using the formula (2), calculateThe difference between each pixel in the previous block and the block mean is recorded as D(p,q)(i,j):
Figure FDA0002570535720000014
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 FDA0002570535720000015
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 FDA0002570535720000016
Figure FDA0002570535720000021
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 FDA0002570535720000022
If it is not
Figure FDA0002570535720000023
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 the free space is generated, which is denoted as I':
1) when LM(p,q)When 1, the pixel in the current image block does not doAny treatment;
2) when LM(p,1)0, or LM(p,q)0 and LM(p,q-1)When 1 is satisfied, the average value of the current image block
Figure FDA0002570535720000029
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 FDA0002570535720000024
if flag is 00, it represents the mean value of the pixels in the block and the block
Figure FDA0002570535720000025
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 FDA0002570535720000026
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 FDA0002570535720000027
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, three more bits are used in each pixel for recording the difference, and the remaining bits can be left unusedIn hiding the secret data, note: the first pixel is used to record the mean value, so its difference value can be recorded in the other pixels;
Figure FDA0002570535720000028
if flag is 11, it represents 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 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)0 and LM(p,q-1)When 0 is satisfied, the difference DB (p, q) between the average values of the adjacent blocks can be stored 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, and for different flags, the same execution is performed as in step 2);
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 KeAnd 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 equation (5) in which,
Figure FDA0002570535720000031
representing a bitwise xor calculation;
Figure FDA0002570535720000032
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 binary bit stream S ═ S1,s2,...,sq};
The third step: creating a hidden key KdAnd 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, embedding the encrypted secret bit stream into the spare bits in advance in sequence by using a bit direct substitution method to form an encrypted 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 KeAnd 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 KeProduce 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 with 00;
the third step: decrypting using equation (6);
Figure FDA0002570535720000041
the fourth step: according to the label value, the original pixel value of the carrier image is restored as follows:
Figure FDA0002570535720000042
when LM(p,q)1, the original pixel value is equal to the current decrypted pixel;
Figure FDA0002570535720000043
when LM(p,q)0 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 FDA0002570535720000044
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 equation (7);
Figure FDA0002570535720000045
Figure FDA0002570535720000046
when LM(p,q)0 and LM(p,q-1)0, extracting a difference value DB (p, q) of the block mean from the highest six bits of the first pixel in the decrypted current image block, and using a formula
Figure FDA0002570535720000047
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 equation (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 KdAnd 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, using the hidden key KdDecrypting the extracted secret bit sequence 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 KeHidden secret key KdAnd 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.
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 according to claim 1, wherein the threshold T is 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 true CN111898138A (en) 2020-11-06
CN111898138B 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)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113472968A (en) * 2021-05-08 2021-10-01 武汉理工大学 Encrypted image reversible data hiding method and device and storage medium
CN115190216A (en) * 2022-07-13 2022-10-14 西安理工大学 Encryption image reversible data hiding and decrypting method based on prediction error map
CN115379066A (en) * 2022-08-26 2022-11-22 西安理工大学 Encrypted image reversible data encryption and decryption method based on self-adaptive compression coding

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160189325A1 (en) * 2014-12-30 2016-06-30 University Of Macau Method for reversible image data hiding
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

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160189325A1 (en) * 2014-12-30 2016-06-30 University Of Macau Method for reversible image data hiding
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
WANG XIAOFENG ETC.: "Reversible data hiding in encrypted image with separable data extraction from image decryption", 《MULTIMEDIA TOOLS AND APPLICATIONS》 *
王丽芳等: "Hill密码体系中的加密矩阵与哑元", 《西南大学学报(自然科学版)》 *
郑淑丽等: "基于无损压缩的加密图像可逆信息隐藏", 《合肥工业大学学报(自然科学版)》 *

Cited By (6)

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

Also Published As

Publication number Publication date
CN111898138B (en) 2023-04-07

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
CN109348228B (en) Reversible information hiding system and method for image encryption domain
CN111898138B (en) Separable ciphertext domain reversible data hiding method
CN112311954A (en) Ciphertext domain reversible information hiding method based on complementary code mark and bitmap embedding
CN111861844A (en) Reversible watermarking method based on image block authentication
CN111464718B (en) Encryption image reversible information hiding method based on interpolation technology
CN111970507A (en) Reversible data hiding method of ciphertext domain image based on pixel difference coding
CN110211018B (en) Chaos encryption reversible information hiding method based on odd-even discrimination strategy
CN114172630B (en) Reversible information hiding method based on addition homomorphic encryption and multi-high-order embedding
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
Pal et al. Design of an edge detection based image steganography with high embedding capacity
CN114493968A (en) Data hiding method based on most significant bit replacement and least significant bit compression
Laffont et al. Enhanced pixel value modification based on modulus function for RGB image steganography
CN113382127B (en) Encrypted image reversible information hiding method with elastic selection and run-length coding
Sirsikar et al. Analysis of data hiding using digital image signal processing
Sharma et al. Secure data hiding scheme using firefly algorithm with hidden compression
Raj et al. A survey on reversible data hiding in encrypted image
Liu et al. Reversible data hiding in encrypted images based on bit-plane rearrangement and Huffman coding
Wang et al. A triangular algorithm of image-hiding
CN115348361B (en) Encryption image reversible data encryption and decryption method based on multi-MSB block coding
Ahmad Digital image information hiding methods for protecting transmitted data: a survey
CN113489859B (en) Reversible information hiding method on encrypted image using adaptive coding
Yang et al. High-performance digital watermarking with L2-norm centroid for colour images

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