1. Introduction
In the era of digital information transmission, privacy and security issues are becoming increasingly prominent in the fields of information processing and transmission [
1,
2]. Confronted with the challenge of how to effectively hide sensitive information, reversible data hiding (RDH) has garnered significant interest. The feature of this technique is that the secret data are concealed in a cover, and the cover can be recovered nondestructively after the secret data are extracted. RDH has shown broad application prospects in many fields, including but not limited to medical image transmission [
3], legal evidence [
4], and military communication [
5]. Existing RDH schemes are classified as difference expansion [
6,
7,
8], histogram shifting [
9,
10], pixel value ordering [
11,
12], prediction error expansion [
13,
14,
15], etc. However, traditional RDH schemes tend to embed data in plaintext images, which can be easily detected by unauthorized users, thus reducing covertness and security. To overcome these limitations, reversible data hiding over ciphered images (RDH-CI) has gained prominence during the last few yeas.
RDH-CI enhances the security of secret data by employing encryption algorithms [
16], enabling more effective protection of privacy content during the transmission of sensitive data. In [
17], Wang et al. introduced an adaptive most significant bit (MSB) prediction-based method for RDH-CI, in which the pixel correlation is remained by block permutation encryption. With the help of the symmetry of the block permutation, the embedding room can be created by MSB prediction. In the method of Gao [
18], the cover image underwent encryption by block substitution and bitstream cipher. The ciphered image is then compressed on the basis of adaptive block coding; therefore, the room used for embedding data is vacated. In [
19], Sui et al. used a pseudo-random matrix-based symmetric encryption to encrypt a primitive image. The receiver uses the same key matrix to restore the primitive image due to the symmetry of the encryption algorithm. In addition, MSB and the remaining bits of the primitive image are combined to generate hiding room by employing the property of image redundancy. In [
20], bitstreams are initially encrypted using the JPEG encryption algorithm. Subsequently, a combination of Huffman code mapping and histogram shifting is employed to conceal secret data. Finally, the receiver extracts the concealed secret data from marked JPEG bitstreams, achieving perfect reconstruction of the primitive bitstreams. In Ge’s approach [
21], chaotic sequences are generated using chaotic mapping, which are utilized to perform inter-block scrambled operations, and finally secondary encryption is performed by stream cipher to improve security. In the data embedding stage, the detection of all bit planes is achieved by recording smooth and rough bit planes, which yields a high embedding capability.
The homomorphism-based RDH-CI is also presented, which is particularly prominent in scenarios where computations need to be conducted while maintaining data encryption. In Wu’s scheme [
22], the Pallier algorithm is used to encrypt the preprocessed images, which can realize the extraction of data in both plaintext and ciphertext domains due to the homomorphism of the Paillier algorithm. In addition, Zheng et al. [
23] proposed a method to generate a ciphered cover using homomorphic encryption, which enables the data hider to conceal secret data within a ciphered cover by establishing a secret bit mapping and lossless modification. The receiver can successfully retrieve the hidden data from the ciphered domain. Ke et al. [
24] proposed a fully homomorphic cryptographic encapsulation differential extension scheme to achieve ciphertext control for homomorphic encryption. By introducing a key-switching technique, the data extraction process can be efficiently achieved by directly retrieving data from the ciphered domain. However, an obvious disadvantage of homomorphic encryption is its high computational overhead, which may lead to performance decline during large-scale data processing.
The mentioned RDH-CI methods are built on a data hider, and when the data hider is compromised, the recovery of the primitive image cannot be realized. To improve the restorability, there has been a rise in the introduction of multi-party reversible data hiding over ciphered images (MRDH-CI) [
25,
26]. Chen et al. [
25] proposed a MRDH-CI method derived from secret sharing, in which multiple ciphered images are generated and assigned to multiple data hiders. Every data hider conceals the secret data into a designated area of the ciphered image through the substitution of the least significant bits. In [
26], Hua et al. firstly proposed a cryptographic feedback secret sharing (CFSS) to generate multiple ciphered images. Then, a multi-MSB prediction method is employed to reserve embedding room for data hiding. MRDH-CI methods ensure the lossless restoration of the primitive image through gathering some marked ciphered images from intact data hides.
However, the MRDH-CI methods cannot efficiently deal with overexposed images since there are many pixels that are not directly encrypted into multiple ciphered pixels (called overflow pixels). They either fail to produce satisfactory results, or only work well for conventional images. To address this issue, multi-party reversible data hiding over ciphered overexposed images (MRDH-COI) is proposed, in which the overflow pixels are efficiently processed for data hiding. In the following, the contributions of this paper are encapsulated:
By decomposing the pixel of the overexposed image into two parts, each of which is suitable for secret sharing, it is thus efficient to handle overflow pixels.
An encryption algorithm combining group scrambling and modified secret sharing is given for the overexposed image, by which the differences of the groups of ciphered overexposed images are retained. It means that the ciphered overexposed images can be facilely used for data hiding.
According to the given overexposed image encryption, the overflow pixels can be encrypted without labeling, so the executing time of the overexposed image encryption is reduced.
The subsequent sections of this paper are organized below. A brief analysis of related MRDH-CI works is given in
Section 2.
Section 3 provides the presented MRDH-COI approach. The experiment and its analysis are demonstrated in
Section 4. At last,
Section 5 draws our conclusion.
2. Related Works
The existing MRDH-CI methods are designed for conventional images. In [
25], a MRDH-CI method is given, in which the traditional secret sharing strategy is employed to encrypt the primitive image into multiple ciphered images, and the ciphered images are distributed to multiple data hiders so that they can be used to embed data independently. In the case of a damaged hider, by collecting marked ciphered images from other undamaged hiders, the receiver is able to restore the primitive image in a lossless manner, which significantly improves the security of the image. In [
26], a CFSS-based MRDH-CI method is proposed, in which the embedding room is reserved by the content owner. First, the median edge detector is used to predict the image to produce predictable pixels, and the MSB planes are determined based on the proportion of predictable pixels. Then, the predictor error is obtained by predicting the MSB planes, and the embedding room is reserved by encoding the predictor error with Huffman coding. This method provides a feasible and secure encryption protection mechanism for multiple data hiders.
The MRDH-CI methods proposed in [
25,
26] are constructed over finite field
by Shamir secret sharing [
27], where
p is a prime. For grayscale images with 8 bits, the pixels exceeding 250 are not suitable for secret sharing since
p is set to 251. Therefore, the pixels exceeding 250 need to be processed so that they can be used for secret sharing. In [
25], a location map (LM) is used to label the pixels exceeding 250 and concealed within the primitive image in a reversible manner. In [
26], to label the pixels exceeding 250, the difference between
and the pixel value is encoded by introducing reference information. The reference information is embedded into the multiple MSBs of the pixel vacated via prediction error expansion.
However, the methods mentioned above have deficiencies in dealing with overexposed images. Four overexposed images selected from the standard dataset [
28] are used for the demonstration as shown in
Figure 1. We found that the percentages of pixels exceeding 250 are 51.7%, 61.7%, 59.8%, and 62.4%, respectively. In other words, there are plenty of overflow pixels that are not directly encrypted into multiple ciphered pixels. To deal with these overflow pixels, a lot of auxiliary information is required. For the method in [
25], the primitive image may not have enough room to accommodate this auxiliary information. In [
26], a lot of auxiliary information will increase the computational overhead since it is implemented by the reserving embedding room technique.
Faced with these challenges, we propose a novel MRDH-CI method that focuses on solving the problem of overflow pixels in overexposed images. The challenge posed by overflow pixels is effectively overcome by splitting the pixel of the image into two parts. In addition, by combining group scrambling and modified secret sharing techniques, the grouping differences of overexposed images can be preserved during encryption, thus making the ciphered overexposed images suitable for data hiding. The key to the proposed scheme is the successful fusion of overexposed image processing and encryption algorithms, which achieves the efficient encryption of overflow pixels without labeling. The proposed scheme simplifies the process of overexposed image encryption, thereby significantly reducing the time cost of processing overflow pixels.
3. Presented Approach
Figure 2 shows the given MRDH-COI approach, which involves encrypting the overexposed image, hiding data into ciphered overexposed images, and extracting hidden data and restoring overexposed images. For encrypting the overexposed image, the owner first scrambles an overexposed image to obtain a scrambled overexposed image. Then, the scrambled overexposed image is split into multiple ciphered overexposed images by secret sharing, and the ciphered overexposed images are sent to the associated data hiders, respectively. After that, every data hider conceals the secret data within a ciphered overexposed image, resulting in the creation of a marked ciphered overexposed image. In the step of extracting hidden data and restoring the overexposed image, once a sufficient number of marked ciphered overexposed images are obtained, the receiver first performs data extraction to obtain the embedded secret data. Subsequently, the receiver proceeds with the overexposed image restoration to obtain the primitive overexposed image.
3.1. Overexposed Image Encryption
Suppose the overexposed image
O is an eight-bit grayscale image sized by
, and
is the pixel at location
, where
,
,
. For simplicity,
P and
Q are considered even. The overexposed image encryption is comprised of two parts: group scrambling and secret sharing. First, the owner divides the overexposed image into groups with size
. It is easily obtained that there are
groups. All groups of the overexposed image are scrambled by using an encryption key, then a scrambled overexposed image
is obtained. It is worth mentioning that by using a pseudorandom number generator with a seed, the encryption key can be created. The key generation process is shown in
Figure 3. First of all, the content owner chooses a seed at random and assigns the seed to the state. Secondly, with the state, an encryption key is generated by adopting a 256-bit secure hash algorithm (SHA-256). At the same time, the state is modified to the sum of the encryption key and step
m, where
m is an integer. Finally, the second step is repeated to generate multiple encryption keys as needed. In general, the encryption key is shared over a covert channel or a public channel with the assistance of a key exchange protocol, such as the Diffie–Hellman key negotiation algorithm.
After group scrambling, secret sharing is performed on the scrambled overexposed image
. Herein, a modified secret sharing method inherited from Shamir secret sharing is used to convert the scrambled overexposed image into multiple ciphered overexposed images. For grayscale images with eight bits, pixels exceeding 250 do not lend themselves to secret sharing. To address this issue, we decompose the pixels of the overexposed image and make a simple modification to
threshold secret sharing [
27], where
. Let a group of the scrambled overexposed image be
, where
,
. To obtain multiple ciphered overexposed images, a identifier is chosen for each ciphered overexposed image, denoted as
,
, each of which is distinct from one another. Usually,
is determined by the encryption key. When
or
, a polynomial
with a degree of
is formulated via
where
or
,
is a integer, and
are chosen at random. For each specified
, a corresponding
can be calculated by Equation (
1), and
is set as the pixel of the ciphered overexposed image. When
or
, another polynomial
with a degree of
is formulated via
where
or
. Similarly, for each specified
, another corresponding
can be calculated by Equation (
2), and the corresponding
is set as the pixel of the ciphered overexposed image. In this way,
n ciphered overexposed images are created, and the created ciphered overexposed images are shared among
n data hiders for data hiding. Algorithm 1 shows the procedure of the overexposed image encryption.
Next, we will demonstrate that the obtained ciphered overexposed images are suitable for data hiding. An example is given in
Figure 4, where
modified secret sharing is adopted. Assume that a group of the scrambled overexposed image is
. With the encryption key, three identifiers 2, 3, and 5 are generated. According to Equation (
1), two 2-degree polynomials with
and random integer
are constructed by
and
respectively. Three identifiers 2, 3, and 5 are substituted into Equations (
3) and (
4), and three corresponding groups of ciphered overexposed images
,
, and
, are generated, respectively. As can be seen, the differences of the generated three groups are retained, which means that the ciphered overexposed images can be used for data hiding.
Algorithm 1 Overexposed image encryption. |
Input: Overexposed Image O, Encryption Key. |
Output: Ciphered Overexposed Image . |
Divide O into groups with size 1 × 2; |
Obtain scrambled overexposed image by scrambling the groups; |
for r ← 1 : n do |
Generate with the encryption key; |
for i ← 1 : P do |
for j ← 1 : Q do |
if ≥ d && ≤ 255 then |
←; |
Construct polynomial by Equation (1) with , d and random integer ; |
else |
←; |
Construct polynomial by Equation (2) with and random integer ; |
end if |
← Calculate with ; |
end for |
end for |
end for |
For the group belonging to , the difference retaining verification is similar to the group belonging to , and thus no description is provided here.
3.2. Data Hiding
To manage the obtained ciphered overexposed images, data hiders conceal secret data into them to create marked ciphered overexposed images without accessing the primitive overexposed image. Based on the analysis in
Section 3.1, the differences of the groups of ciphered overexposed images are retained, so data hiding can be achieved using the classic difference expansion algorithm, such as the method in [
7]. Let the ciphered overexposed image be
,
. The group of the ciphered overexposed image is represented by
,
,
. Specifically, comprehensive description of the data hiding algorithm is provided below.
Compute the integer mean and difference of the groups of ciphered overexposed images. For each , the integer mean and difference are computed by and , respectively, where is a floor function.
Determine the expandable and non-expandable groups. A group is expandable if its integer mean l and difference h satisfy , where b is the bit of the secret data; otherwise, it is considered non-expandable. In addition, an LM is created to label expandable and non-expandable groups, and their associated bits are set to 0 and 1, respectively.
Embed secret data into the expandable groups. First, for each expandable group, a new difference is generated with the difference
h by
where
is the bit of the secret data that is concealed within the ciphered overexposed images. Then, with the new difference
, the pixels of the marked ciphered overexposed image are computed by
where
(resp.
) is the pixel of the
rth marked ciphered overexposed image at location
(resp.
).
By these means, the ciphered overexposed images can accommodate the embedding of secret data, and the marked ciphered overexposed images are generated, denoted as
,
. The data hiding procedure is given in Algorithm 2.
Algorithm 2 Data hiding. |
Input: Ciphered Overexposed Image , Embedded Bit b. Output: Marked Ciphered Overexposed Image .
- 1:
for : P do - 2:
for 1 : 2 : Q do - 3:
; - 4:
; - 5:
if then - 6:
; - 7:
; - 8:
; - 9:
end if - 10:
end for - 11:
end for
|
It is noted that the LM has high data redundancy since most groups are expandable. We use run-length coding to compress LM to generate compressed LM. Meanwhile, the compressed LM is required for data retrieval and overexposed image reconstruction, and hence it is embedded into the pixels of the initial few rows of the ciphered overexposed images. The initial few rows of pixels from the ciphered overexposed images will be concealed within the remaining pixels along with the secret data.
3.3. Data Extraction and Overexposed Image Restoration
When having any t marked ciphered overexposed images, the concealed data and the primitive overexposed image can be obtained by the receiver. Assume any t marked ciphered overexposed images are received, represented by , where ⊆ .
3.3.1. Data Extraction
Extracting concealed secret data is performed on the expandable groups of marked ciphered overexposed images. Denote as an expandable group, where . The data extraction is described in detail as follows:
Fix the expandable groups. Extract the compressed LM from the pixels of the initial few rows of marked ciphered overexposed images, and decode it to obtain the associated LM. By the decoded LM, the expandable groups are fixed, that is, if the bit of LM is 0, the corresponding group is expandable.
Compute the integer mean and difference of the expandable groups. For an expandable group , the integer mean and difference are computed by and , respectively.
Retrieve the secret data by utilizing the difference
. The embedded secret data are obtained by
where
b is the bit of the secret data.
Algorithm 3 shows the data extraction procedure.
Algorithm 3 Data extraction. |
Input: Any t Marked Ciphered Overexposed Image . Output: Embedded bit b.
- 1:
for do - 2:
for do - 3:
if is an expandable group then - 4:
; - 5:
; - 6:
; - 7:
end if - 8:
end for - 9:
end for
|
3.3.2. Overexposed Image Restoration
For overexposed image restoration, we first transform the marked ciphered overexposed images to ciphered overexposed images and then restore the primitive overexposed image from the ciphered overexposed images. In fact, only expandable groups of the ciphered overexposed images are modified for data hiding. Therefore, the non-expandable groups of the marked ciphered overexposed images can be recognized as those of the ciphered overexposed images. On the other hand, with the integer mean
and the difference
, the expandable groups of the ciphered overexposed images can be obtained by
where
,
is an expandable group of the ciphered image
and
.
After the
t ciphered overexposed images are generated, the primitive overexposed image is recovered. According to the encryption key, the identified
,
, can be obtained. Subsequently, the polynomial
with a degree of
is reconstructed via the Lagrange polynomial interpolation technique as represented by
where
is the pixel of the ciphered overexposed image
at location
,
,
. Obviously, the parameter
d is equivalent to the coefficient associated with a term in the function
. If
, the pixel of the scrambled overexposed image is calculated by
or
; otherwise, we have
or
, where
is the constant term of
. Finally, the primitive overexposed image is obtained from the scrambled overexposed image according to the inverse operation of the group scrambling with the encryption key. The procedure of overexposed image restoration is provided in Algorithm 4.
Algorithm 4 Overexposed image restoration. |
Input: Any t Marked Ciphered Overexposed Image , Encryption Key. Output: Primitive Overexposed Image O.
- 1:
for do - 2:
for do - 3:
if is an expandable group then - 4:
; - 5:
; - 6:
; - 7:
; - 8:
; - 9:
end if - 10:
end for - 11:
end for - 12:
Generate with the encryption key; - 13:
for do - 14:
for do - 15:
Reconstruct by Equation ( 9) with and ; - 16:
Constant term of ; - 17:
One term of ; - 18:
if then - 19:
; - 20:
else - 21:
; - 22:
end if - 23:
end for - 24:
end for - 25:
Obtain O by the inverse operation of the group scrambling with ;
|