CN111898138A - Separable ciphertext domain reversible data hiding method - Google Patents
Separable ciphertext domain reversible data hiding method Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6209—Protecting 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
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);
wherein the content of the first and second substances,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),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):
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):
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
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);
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 blockA 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:
if flag is 00, it represents the mean value of the pixels in the block and the blockIf they are equal, all bits of the block except for recording the block mean and flag can be vacated for hiding the secret data;
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;
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;
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,representing a bitwise xor calculation;
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);
the fourth step: according to the label value, the original pixel value of the carrier image is restored as follows:
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 pixelExtracting 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);
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 formulaCalculating 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:then
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 0The 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,representing a bitwise xor calculation;
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);
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 blockUsing formulasCalculating 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
TABLE 3
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);
wherein the content of the first and second substances,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),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):
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):
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
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);
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 blockThe 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:
if flag is 00, it represents the mean value of the pixels in the block and the blockIf they are equal, all bits of the block except for recording the block mean and flag can be vacated for hiding the secret data;
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;
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;
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,representing a bitwise xor calculation;
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);
the fourth step: according to the label value, the original pixel value of the carrier image is restored as follows:
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 blockExtracting 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);
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 formulaCalculating 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.
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)
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)
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 |
-
2020
- 2020-07-06 CN CN202010639807.5A patent/CN111898138B/en active Active
Patent Citations (3)
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)
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)
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 |