A high-embedding reversible data hiding method and system resistant to internal attacks

By mapping the pixels of the carrier image onto a polynomial and generating a key polynomial for encryption, combined with the robust Chinese Remainder Theorem, the problem of lossless recovery of the carrier image under internal attacks is solved, achieving reversible data hiding with high embedding rate.

CN115001689BActive Publication Date: 2026-01-23UNIV OF SCI & TECH OF CHINA
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202210568498.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-24
Publication Date
2026-01-23
Estimated Expiration
2042-05-24

AI Technical Summary

Technical Problem

In existing technologies, carrier images cannot be recovered without loss when faced with internal attacks, leading to the failure of data hiding schemes.

Method used

By mapping each pixel value of the carrier image to a polynomial, a corresponding key polynomial is generated for encryption. The secret data is then embedded and decrypted using the key stream. Combined with the robust Chinese Remainder Theorem, resistance to internal attacks is achieved.

Benefits of technology

It achieves reversible data hiding with a high embedding rate, with a maximum embedding rate of 4 bits of secret data per pixel, and can extract secret data and restore the carrier image without loss. The embedding rate is not affected by changes to the carrier image.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115001689B_ABST
    Figure CN115001689B_ABST
Patent Text Reader

Abstract

The application relates to a high-embedding-rate reversible data hiding method and system resisting internal attacks, which comprises the following steps: S1, a carrier image owner maps the value of each pixel point of a carrier image S to a polynomial to generate a key polynomial ke of S, each pixel point of S is encrypted by using the key polynomial ke to obtain an encrypted carrier image ES, and the carrier image owner sends the key polynomial ke and the encrypted carrier image ES to a receiver and a data hider respectively; S2, the data hider receives the encrypted carrier image ES, generates a key stream kh to encrypt secret data P to obtain encrypted information C, sets embeddable pixel points on the encrypted carrier image ES, replaces the embeddable pixel points with the encrypted information C to obtain an encrypted image MES with the secret data P, and sends the key stream kh and the encrypted image MES to the receiver; S3, the receiver uses the key stream kh to decrypt the encrypted information C in the encrypted image MES to obtain the secret data P, and uses the key polynomial ke to restore the encrypted image MES to finally obtain the carrier image S. The method provided by the application can embed secret data into a carrier image and resist internal attacks.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of data hiding, and specifically to a high embedding rate reversible data hiding method and system that can resist internal attacks. Background Technology

[0002] The purpose of reversible data hiding is to embed specific data into carrier information, such as images, text, and videos, and then extract the embedded data when necessary. It is currently widely used in fields such as digital watermarking and secure data communication. In reversible data hiding schemes using images as carriers, the carrier image is divided into two types: natural carrier images and encrypted carrier images. In reversible data hiding schemes using encrypted images as carriers, the traditional process is as follows:

[0003] ① The content owner first encrypts the content image (S) using the encryption key ke to generate the encrypted image (ES), and then sends ke and ES to the receiver and data hider respectively through a secure channel;

[0004] ② The data-hider first uses the encryption key kh to encrypt the secret data (P) to be embedded, and obtains the encrypted data (C). Then, it uses a certain method to embed C into the ES to generate an image (MES) with the encrypted data. Finally, it sends kh and MES to the receiver through a secure channel.

[0005] ③ The receiver uses the decryption keys kh and ke to extract the secret information (P) and recover the carrier image (S) from the MES.

[0006] Methods for implementing reversible data in encrypted images are mainly divided into pre-encryption space clearing and post-encryption space clearing. Encryption methods for the carrier image can be categorized as stream ciphers, homomorphic encryption, secret sharing, etc., while data embedding methods can be categorized as least significant bit substitution, most significant bit substitution, etc. In traditional schemes, the data hider is a single entity. In this case, if the data hider becomes an insider attacker and corrupts the internal structure of the image (ES), such as by rewriting pixel values, then the receiver will be unable to recover the carrier image (S).

[0007] Therefore, how to resist internal attacks and enable lossless recovery of carrier images has become an urgent problem to be solved. Summary of the Invention

[0008] To address the aforementioned technical problems, this invention provides a high embedding rate reversible data hiding method and system that can resist internal attacks.

[0009] The technical solution of the present application is: a high-embedding-rate reversible data hiding method capable of resisting internal attacks, comprising:

[0010] Step S1: the carrier image owner maps the value of each pixel point of the carrier image S to a polynomial, generates a corresponding key polynomial for each pixel point, obtains the key polynomial ke of S, encrypts each pixel point of S by using the key polynomial ke, and obtains an encrypted carrier image ES; the carrier image owner sends the key polynomial ke to a receiver, and sends the encrypted carrier image ES to a data hider;

[0011] Step S2: the data hider receives the encrypted carrier image ES, generates a key stream kh for encrypting secret data P, sets an embeddable pixel point on the encrypted carrier image ES, replaces the embeddable pixel point with the encrypted information C, and obtains an encrypted image MES with the secret data P; the data hider sends the key stream kh and the encrypted image MES to the receiver;

[0012] Step S3: the receiver decrypts the encrypted information C in the received encrypted image MES by using the key stream kh, obtains the secret data P, and restores the carrier image S by using the key polynomial ke.

[0013] Compared with the prior art, the present application has the following advantages:

[0014] 1. The present application discloses a high-embedding-rate reversible data hiding method capable of resisting internal attacks, which embeds secret data in a carrier image and can resist internal attacks.

[0015] 2. The present application has a high embedding rate, and the highest embedding rate can reach 4, that is, 4 bits of secret data can be embedded in each pixel on average, and the embedding rate does not change with the change of the carrier image.

[0016] 3. The present application can losslessly extract secret data and restore the carrier image, and the extraction of the secret data does not depend on the restoration of the carrier image.

[0017] 4. The embedding rate of the present application does not change with the change of the carrier image. BRIEF DESCRIPTION OF DRAWINGS

[0018] Figure 1 The flowchart of the high-embedding-rate reversible data hiding method capable of resisting internal attacks in the embodiment of the present application is shown in the figure.

[0019] Figure 2 The overall framework schematic diagram of the high-embedding-rate reversible data hiding method capable of resisting internal attacks in the embodiment of the present application is shown in the figure.

[0020] Figure 3ACarrier image in the embodiment of the present application;

[0021] Figure 3B Encrypted image ES1 in the embodiment of the present application;

[0022] Figure 3C Encrypted image ES2 in the embodiment of the present application;

[0023] Figure 3D Encrypted image ES3 in the embodiment of the present application;

[0024] Figure 3E Encrypted image MES1 with secret data in the embodiment of the present application;

[0025] Figure 3F Encrypted image MES2 with secret data in the embodiment of the present application;

[0026] Figure 3G Encrypted image MES3 with secret data in the embodiment of the present application;

[0027] Figure 3H Recovered carrier image in the embodiment of the present application;

[0028] Figure 4 Structure block diagram of a high-embedding-rate reversible data hiding system against internal attacks in the embodiment of the present application. DETAILED DESCRIPTION

[0029] The present application provides a high-embedding-rate reversible data hiding method against internal attacks, which embeds secret data into a carrier image and is resistant to internal attacks.

[0030] In order to make the objects, technical solutions and advantages of the present application clearer, the present application is further described in detail below with reference to the specific embodiments and in conjunction with the drawings.

[0031] In order to better understand the embodiments of the present application, the following concepts are described:

[0032] I. Robust Chinese Remainder Theorem (RCRT) on polynomial ring

[0033] Let F p be a finite field over prime p, F p [x] be a polynomial with coefficients in F p , and the following polynomials and calculations are all in F p [x], and deg(f(x)) represents the order of the polynomial f(x).

[0034] If m1(x), m2(x),..., m nLet M(x) be n non-coprime modulo polynomials, where M(x) = lcm(m1(x), m2(x), ..., mn(x)). n (x)), and satisfy the following conditions:

[0035] 1.g(x)=gcd(m1(x),m2(x),...,m n (x)), deg(g(x))>1;

[0036] 2. And gcd(Γ) i (x), Γ j (x))=1,i≠j,i,j∈[1,n].

[0037] Where lcm(.) represents the least common multiple function, gcd(.) represents the greatest common divisor function, and [1, n] represents the set of sequences from 1 to n.

[0038] For any polynomial a(x) satisfying deg(a(x)) < deg(M(x)), the following equation holds:

[0039] a(x)=k i (x)m i (x)+r i (x), for i∈[1,n] (i)

[0040] where deg(r) i (x))<deg(m i (x)), according to equation (i), we can obtain the following system of equations:

[0041] a(x)≡r i (x)mod m i (x), for i∈[1,n] (ii)

[0042] When the remainder r i When no error occurs, a(x) can be accurately recovered using the following method.

[0043] ① Calculation:

[0044]

[0045] in Indicates rounding down.

[0046] ②Calculate N(x) using CRT based on the following congruence formulas:

[0047] N(x) 3q i (x)modΓ i (x), for i∈[1,n] (iv)

[0048] 3. Finally, compute:

[0049] a(x) = N(x)g(x) + r i (x) mod g(x) (v)

[0050] When the remainder r i (x) has an error, the remainder polynomial changes as follows:

[0051]

[0052] where e i (x) represents the error of r i (x), is the new remainder polynomial after introducing the error.

[0053] Observing equation (iii), if deg(e i (x)) < deg(g(x)), then q i (x) remains unchanged, so N(x) also remains unchanged, and the final computed polynomial is:

[0054]

[0055] In fact, according to equation (v) and equation (vii), we have:

[0056]

[0057] According to equation (viii), if deg(e i (x)) < τ, and that is,

[0058] In summary, let τ = deg(g(x)), if the error polynomial e i (x) satisfies deg(e i (x)) < τ, and deg(e i (x)) = 0, then the original polynomial a(x) can be accurately recovered.

[0059] II. Peak Signal-to-Noise Ratio (PSNR)

[0060] The quality of the recovered image can be determined according to the peak signal-to-noise ratio (PSNR), and the specific formula is:

[0061]

[0062]

[0063] Wherein, I is the original image, K is the image after I processing, and the size of both is: m*n.

[0064] In the gray scale image, MAX I =255, when PSNR>30db, the human eye is difficult to distinguish the difference between the image I and K, the greater the PSNR value, the smaller the difference between the image I and K, when PSNR=+∞, it means that I and K are the same.

[0065] Three, structural similarity (SSIM)

[0066] SSIM can be used to determine the similarity between two images, the specific formula is:

[0067]

[0068] Wherein, μ I , μ K I and K are the average value, σ I , σ K I and K are the standard deviation, σ I,K I and K are the covariance, C1 and C2 are constants.

[0069] The value of SSIM is between-1 and 1, the greater the value of SSIM, the higher the similarity between the image I and K, when the value of SSIM is 1, it means that I and K are the same.

[0070] Embodiment one

[0071] As Figure 1 shown, the high embedding rate reversible data hiding method provided by the embodiment of the application can resist internal attacks, and comprises the following steps:

[0072] Step S1: the carrier image owner maps the value of each pixel point of the carrier image S to a polynomial, generates a corresponding key polynomial for each pixel point, can obtain the key polynomial ke of S, encrypts each pixel point of S by using ke, and obtains the encrypted carrier image ES; the carrier image owner sends the ke to the receiver, and the carrier image owner sends the ES to the data hider;

[0073] Step S2: the data hider receives the ES, needs to hide secret data P, generates a key stream kh to encrypt P, and obtains encrypted information C, sets the embeddable pixel points on the ES, replaces the embeddable pixel points with C, and obtains the encrypted image MES with the secret data P; the data hider sends the kh and MES to the receiver;

[0074] Step S3: The receiver uses kh to decrypt the encrypted information C in the received MES to obtain the secret data P; and uses the key polynomial ke to recover the carrier pixels of the MES to obtain the carrier image S.

[0075] In one embodiment, step S1 above: The carrier image owner maps the value of each pixel of the carrier image S to a polynomial, generates a corresponding key polynomial for each pixel, and obtains the key polynomial ke of S. Each pixel of S is then encrypted using ke to obtain the encrypted carrier image ES. The carrier image owner sends ke to the receiver, and the carrier image owner sends ES to the data hider, specifically including:

[0076] Step S11: Let the size of the carrier image S be H×W, and the value of each pixel be S. h,w , of which S h,w The range of values ​​is [0, 255], 1 ≤ h ≤ H, 1 ≤ w ≤ W;

[0077] Mapping the value of each pixel onto a polynomial, let F2[x](q)={f(x)∈F2[x]|deg(f(x))≤q}, where deg(f(x)) represents the order of the polynomial f(x), resulting in the mapping functions shown in formulas (1) to (2):

[0078]

[0079]

[0080] Among them, a i = 0 or 1;

[0081] Step S12: The carrier image owner selects n polynomials: m1(x), m2(x), ..., m n (x) is the modulus, and the threshold is (k, n). The polynomial satisfies the following conditions:

[0082] ①m i (x)∈F2[x], deg(m) i (x))=8,i∈[1,n];

[0083] ②g(x)=gcd(m1(x), m2(x),...,m n (x)), and deg(g(x))>1; where gcd(.) is the greatest common divisor function;

[0084] ③ Order And gcd(Γ) i (x), Γ j (x))=1,i≠j,i,j∈[1,n];

[0085] IV. Let a(x) = lcm(m1(x), m2(x),..., m k (x)) and β(x) = lcm(m1(x), m2(x),..., m k-1 (x)) where 2≤k≤n, n is the number of data hiders, and lcm(.) is the least common multiple function.

[0086] Step S13: Randomly select a pair of key polynomials (q h,w (x), r h,w (x)) for each pixel point, which satisfy the following conditions:

[0087] I. deg(β(x))≤deg(χ(S h,w )q h,w (x))<deg(α(x))

[0088] II. deg(β(x))≤deg(r h,w (x))<deg(α(x))

[0089] Step S14: Repeat step S13 until a pair of key polynomials (q(x), r(x)) is generated for each pixel point in the carrier image S, and the key polynomial ke of S is obtained; the carrier image owner sends ke to the receiver.

[0090] Step S15: Encrypt each pixel point using the key polynomial according to formula (3):

[0091] y h,w (x) = χ(S h,w )q h,w (x) + r h,w (x) (3)

[0092] According to formula (4), generate n encrypted pixel values:

[0093]

[0094] where i∈[1, n], represents the i-th encrypted pixel value of the pixel in the h-th row and w-th column.

[0095] Step S16: Repeat step S15 until n encrypted pixel values are generated for each pixel point in the carrier image S, and finally obtain n encrypted images ES1, ES2,..., ES n , and send them to the corresponding n data hiders.

[0096] For example, taking a group of pixels as an example, let threshold (k, n) = (3, 3), and suppose the values of the group of pixels are (S1, S2, S3) = (55, 249, 49).

[0097] Let A represent a carrier image owner, D1, D2, D3 represent three data hiders, and R represent a receiver.

[0098] Let m1(x) = x 8 +x 7 +x 6 , m2(x) = x 8 +x 6 , and m3(x) = x 8 , then g(x) = x 6 , Γ1(x) = x 2 +x+1, Γ2(x) = x 2 +1, and Γ3(x) = x 2 , deg(β(x)) = 10, and deg(α(x)) = 12, satisfy the following conditions:

[0099] ① deg(m i (x)) = 8, i ∈ [1, 3];

[0100] ② deg(g(x)) = 6 > 1, gcd(Γ i (x), Γ j (x)) = 1, i ≠ j, i, j ∈ [1, 3]

[0101] Then τ = deg(g(x)) = 6, i.e., at most 6 bits of secret data can be embedded in the pixel points capable of embedding secret data.

[0102] For each pixel point, a group of key polynomials ke is randomly selected:

[0103] (q1(x), r1(x)) = (x 6 +x 4 +x 3 +x 2 , x 11 +x 8 +x 4 +x 3 +1)

[0104] (q2(x), r2(x)) = (x 3 +x+1, x 10 +x 7 +x 3 +x 2 )

[0105] (q3(x), r3(x)) = (x 6 +x 5 +x 2 , x 11 +x 9 +x 6 +x 4 +x 3 +x 2 +x)

[0106] The key polynomials satisfy the following conditions:

[0107] ① deg(β(x))≤deg(χ(S i )q i (x))<deg(α(x))

[0108] ② deg(β(x))≤deg(r i (x))<deg(α(x))

[0109] where i∈[1, 3].

[0110] According to formula (3), we have:

[0111] y1(x) = χ(S1)q1(x) + r1(x) = x 10 +x 9 +x 7 +x 6 +x 3 +x 2 +x+1

[0112] y2(x) = χ(S2)q2(x) + r2(x) = x 9 +x 6 +x 3 +x 2 +x+1

[0113] y3(x) = χ(S3)q1(x) + r3(x) = x 11 +x 10 +x 9 +x 7 +x 6 +x 3 +x+1

[0114] According to formula (4), the pixel values are encrypted: where represents the jth pixel value of the ith pixel after encryption, i, j∈[1, 3].

[0115] Finally, we get three encrypted images, respectively:

[0116] ES1 = [13 15 201]

[0117] ES2 = [13 207 137]

[0118] ES3 = [205 79 201]

[0119] Finally, the carrier image owner sends ES1, ES2, ES3 and key polynomials (q1(x), r1(x)), (q2(x), r2(x)), (q3(x), r3(x)) to data hiders D1, D2, D3 and receiver through a secure channel respectively.

[0120] In one embodiment, the above step S2: the data hider receives ES, the secret data to be hidden is P, generates a key stream kh to encrypt P to obtain encrypted information C, sets the embeddable pixel points on ES, replaces the embeddable pixel points with C, and obtains an encrypted image MES with secret data P; the data hider sends kh and MES to the receiver, which specifically includes:

[0121] Step S21: let P1, P2,..., Pn be the secret data to be hidden by n data hiders respectively, randomly generate a key stream kh1, kh2,..., khn with the same length as the secret data, and encrypt the secret data according to formula (5) to obtain encrypted information C: n n i

[0122]

[0123] wherein i ∈ [1, n], represents an exclusive or operation;

[0124] Step S22: let the encrypted image received by the i-th data hider be ES i , set the pixel points that can embed secret data in groups of n pixel points;

[0125] When k < n: each group only embeds secret data in the i-th pixel point;

[0126] When k = n: when i = 1, each group embeds secret data in all pixel points except the n-th pixel point; when 1 < i ≤ n, each group embeds secret data in all pixel points except the (i-1)-th pixel point;

[0127] Step S23: replace the τ least significant bits of each pixel point that can embed secret data with τ encrypted information C i , wherein τ = deg(g(x)), which represents the maximum number of bits that a pixel point can embed secret data; finally, n parts of encrypted images MES with secret data P i ​​​encrypted image MES i ; the data hider will kh i and MES i to the recipient;

[0128] When k < n, the maximum information embedding rate η can be calculated according to formula (6):

[0129]

[0130] When n = 3, τ = 6, it can be known that the maximum information embedding rate η max = 2

[0131] When k = n, the maximum information embedding rate η can be calculated according to formula (7):

[0132]

[0133] When n = 3, τ = 6, it can be known that the maximum information embedding rate η max = 4.

[0134] Continue to take the example in step S1 as an example:

[0135] Let P1 = [110001, 111011] be the secret information to be embedded in D1,

[0136] P2 = [101110, 010010] is the secret information to be embedded in D2,

[0137] P3 = [000110, 011011] is the secret information to be embedded in D3

[0138] Let kh1 = [110100, 010001] be the encryption key stream of D1,

[0139] kh2 = [010010, 100001] is the encryption key stream of D2,

[0140] kh3 = [111011, 011100] is the encryption key stream of D3,

[0141] According to formula (5), the encrypted information is calculated as:

[0142] C1 = [000101, 101010]

[0143] C2 = [111100, 110011]

[0144] C3 = [111101, 000111]

[0145] Since k = n = 3, each group has 2 embeddable pixel points, and τ = 6, each embeddable pixel point can embed at most 6 bits of secret data, thus it can be concluded that C i Replace ES i The last 6 bits of the corresponding pixels in ES: replace the first and second pixels of ES1, replace the second and third pixels of ES2, and replace the first and third pixels of ES3, to obtain 3 groups of encrypted images with secret data, which are:

[0146] MES1 = [5 42 201]

[0147] MES2 = [13 252 179]

[0148] MES3 = [253 79 199]

[0149] Where the black number is the number after embedding the secret data.

[0150] According to formula (7), the maximum information embedding rate of the encrypted image is

[0151] Finally, the data hider D1, D2, D3 sends MES1, MES2, MES3 and the key stream kh1, kh2, kh3 to the receiver R through a secure channel.

[0152] In one embodiment, the above step S3: the receiver uses kh to decrypt the encrypted information C in the received MES to obtain the secret data P; and uses the key polynomial ke to restore the carrier pixels of the MES to obtain the carrier image S, which specifically includes:

[0153] Step S31: Since the receiver has encrypted images MES1, MES2,..., MES n with secret data, the decryption key ke and the key stream kh1, kh2,..., kh n , and τ is known, the τ least significant bits of the pixel points with secret data in the MES i are extracted to obtain the encrypted information C i ; then kh i is used to calculate the secret data P i according to formula (8):

[0154]

[0155] Where i ∈ [1, n], represents the XOR operation;

[0156] Step S32: When the number of internal attackers is not more than (n-k), the receiver selects k parts of encrypted images with secret data MES1', MES2',..., MES k ', whose corresponding modulus polynomials are [m1(x)', m2(x)',..., m k (x)' ], and the decryption key is the key polynomial ke(q(x), r(x));

[0157] Step S33: Let be the remainder polynomial, and m i (x)' be the corresponding modulus polynomial. According to the robust Chinese remainder theorem, as long as one remainder polynomial does not have an error, and there is at least one pixel point without hidden data in the k pixel points, the polynomial y h,w (x) can be accurately recovered; wherein, and m i (x)' are known, indicates the pixel value of the hth row and wth column on MES i ', and m i (x)' is the corresponding modulus polynomial, i∈[1, k];

[0158] According to the formulas (9) ~ (10), the pixel point S h,w is recovered:

[0159]

[0160] S h,w = φ(S h,w (x)) (10)

[0161] wherein S h,w is the pixel value of the hth row and wth column of the carrier image S.

[0162] Step S34: Repeat step S33 until all pixel points on S are recovered, and the carrier image S is obtained.

[0163] The receiver R has three sets of encrypted images with secret data MES1, MES2, MES3, and knows τ=6 and the replaced pixels, so the low 6 bits of the values of the pixel points embedded with secret data can be directly extracted, and the following is obtained:

[0164] C1=[000101, 101010]

[0165] C2=[111100, 110011]

[0166] C3=[111101, 000111]

[0167] The decryption keys kh1, kh2, kh3 are respectively:

[0168] kh1 = [110100, 010001]

[0169] kh2 = [010010, 100001]

[0170] kh3 = [111011, 011100]

[0171] The real secret information P1, P2, P3 are respectively calculated according to formula (8):

[0172] P1 = [110001, 111011]

[0173] P2 = [101110, 010010]

[0174] P3 = [000110, 011011]

[0175] At this time, the secret data has been extracted without loss, and the carrier pixels can also be restored.

[0176] According to the data embedding rule, when k = n, there is only one pixel in each group that has not been embedded with data. According to the robust Chinese remainder theorem RCRT on polynomial ring, among n residue polynomials, if there is one residue polynomial without error, and the error of the remaining error residue polynomials is within a certain range, then the original polynomial can be accurately reconstructed.

[0177] Therefore, let be the residue polynomial, and [m1(x), m2(x), m3(x)] be the corresponding modulus polynomial. Using RCRT on polynomial ring, y1(x) can be reconstructed, and:

[0178] y1(x) = x 10 +x 9 +x 7 +x 6 +x 3 +x 2 +x+1

[0179] Similarly, we have:

[0180] y2(x) = x 9 +x 6 +x 3 +x 2 +x+1

[0181] y3(x) = x 11 +x 10 +x 9 +x 7 +x6 +x 3 +x+1

[0182] Finally, the original carrier image is recovered by using the decryption keys (q1(x), r1(x)), (q2(x), r3(x)) according to the formula (9) and (10):

[0183] (S1, S2, S3) = (55, 249, 49).

[0184] The experiment of the embodiment of the application selects a carrier image "lena" with a size of 512*512, as shown in the following figure: Figure 3A The experimental parameters are the same as those in the above embodiment, Figures 3B-3D respectively, are three encrypted images ES1, ES2, ES3 generated after the carrier image is encrypted, Figures 3E-3G are the corresponding encrypted images with secret data MES1, MES2, MES3, Figure 3H is the recovered carrier image.

[0185] According to the formula (ix) and the formula (x), the peak signal-to-noise ratio (PSNR) and the structural similarity (SSIM) of Figure 3A and Figure 3H are calculated, respectively, and the calculation results are shown in Table 1, and it can be known that the carrier image is losslessly recovered.

[0186] Table 1: Values of PSNR and SSIM

[0187] PSNR SSIM +∞ 1

[0188] Each data-embeddable pixel point can embed a maximum of 6 bits of data, and the embedding rate of each encrypted image is:

[0189]

[0190] That is, for each encrypted image, each pixel point can embed an average of 4 bits of secret data.

[0191] The application discloses a high-embedding-rate reversible data hiding method capable of resisting internal attacks, which embeds secret data into a carrier image and can resist internal attacks. The application has a high embedding rate, and the highest embedding rate can reach 4, that is, an average of 4 bits of secret data can be embedded per pixel, and the embedding rate will not change with the change of the carrier image. The application can losslessly extract secret data and recover the carrier image, and the extraction of the secret data does not depend on the recovery of the carrier image.

[0192] Embodiment two

[0193] As Figure 4As shown, the embodiment of the present application provides a high-embedding reversible data hiding system resisting internal attacks, comprising the following modules:

[0194] A carrier image encryption module 41 is used for the carrier image owner to map the value of each pixel point of the carrier image S to a polynomial, to generate a corresponding key polynomial for each pixel point, to obtain the key polynomial ke of S, to encrypt each pixel point of S by using the ke, and to obtain an encrypted carrier image ES; the carrier image owner sends the ke to a receiver, and sends the ES to a data hider;

[0195] A secret data embedding module 42 is used for the data hider to receive the ES, to generate an encrypted information C by encrypting a secret data P to be hidden by using a key stream kh, to set an embeddable pixel point on the ES, to replace the embeddable pixel point with the C, and to obtain an encrypted image MES with the secret data P; the data hider sends the kh and the MES to the receiver;

[0196] A secret data extraction and carrier image recovery module 43 is used for the receiver to decrypt the encrypted information C in the received MES by using the kh, to obtain the secret data P, and to recover the carrier pixel of the MES by using the key polynomial ke, to obtain the carrier image S.

[0197] The above embodiments are provided only for the purpose of describing the present application, and are not intended to limit the scope of the present application. The scope of the present application is defined by the appended claims. Various equivalent substitutions and modifications made without departing from the spirit and principle of the present application shall be encompassed within the scope of the present application.

Claims

1. A high embedding rate reversible data hiding method resistant to internal attacks, characterized in that, include: Step S1: The carrier image owner transfers the carrier image The value of each pixel is mapped to a polynomial, and a corresponding key polynomial is generated for each pixel, thus obtaining... Key polynomial ,use right Each pixel is encrypted to obtain the encrypted carrier image. The owner of the carrier image will Send to the recipient, the owner of the carrier image will Sent to data hiders, specifically including: Step S11: Set the carrier image The size is The value of each pixel is , ; Map the value of each pixel to a polynomial, let Representing prime numbers Finite field on, Indicates the coefficient in polynomials on, ,in, Representing a polynomial The order of the order of the mapping functions is given by equations (1) and (2): (1) (2) in, ; Step S12: The owner of the carrier image is selected. polynomials: As a modulus, the threshold is The polynomial satisfies the following conditions: ① , Represents the sequence from 1 to A set; ② ,and ;in, It is the greatest common divisor function; ③ Order ,and ; ④ Order , ,in , The number of data hiders, It is the least common multiple function; Step S13: Randomly select a pair of key polynomials for each pixel. The key polynomial satisfies the following condition: ① ② Step S14: Repeat step S13 until the carrier image is obtained. Generate a corresponding key polynomial for each pixel, and obtain Key polynomial e: The owner of the carrier image will e is sent to the recipient; Step S15: Encrypt each pixel using the key polynomial according to formula (3): (3) According to formula (4), generate Encrypted pixel values: (4) in, , Indicates the first OK, The first pixel of the column after encryption Pixel values; Step S16: Repeat step S15 until the carrier image is processed. Generate each pixel The encrypted pixel values ​​are finally obtained. Encrypted image and send to the corresponding A data hider; Step S2: The data hider receives The secret data that needs to be hidden is Generate key stream right Encrypted information is obtained after encryption. ,set up Pixels can be embedded on it, Replacing the embeddable pixels yields secret data. Encrypted images The data hider will and Send to the recipient, specifically including: Step S21: Let They are respectively For each piece of secret data that the data hider needs to conceal, a key stream of the same length as the secret data is randomly generated. The secret data is encrypted according to formula (5) to obtain encrypted information. : (5) in, , This represents the XOR operation; Step S22: Let the first The encrypted image received by the data hider is ,by Each pixel is grouped into a set of pixels that can be embedded with secret data; when Time: Each group only in the first... Embedding secret data in each pixel; when When: At that time, each group except the first Except for one pixel, all other pixels are embedded with secret data; when At that time, each group except the first Except for one pixel, secret data is embedded in all other pixels. Step S23: For each pixel that can be embedded with secret data The least significant bit is used The encrypted information To make substitutions, among which, This represents the maximum number of bits of secret data that can be embedded in a pixel; finally, we obtain... A document containing secret data Encrypted images The data hider will and Send to the recipient; Step S3: The receiver utilizes , to receive Encrypted information Decryption is performed to obtain the secret data. ; and using key polynomials e to Perform carrier pixel restoration to obtain the carrier image. Specifically, it includes: Step S31: Since the receiver possesses an encrypted image with secret data Decryption key e and key stream And it is known ,right Pixels containing secret data The encrypted information can be obtained by extracting the least significant bit. Reuse The secret data is calculated according to formula (8). : (8) in, , This represents the XOR operation; Step S32: When the number of insider attackers is no more than One, the recipient selects Encrypted images containing secret data that have not been affected by insider attacks Its corresponding modulo polynomial is The decryption key is the key polynomial. e ; Step S33: Let It is a remainder polynomial. Given the corresponding modular polynomial, according to the robustness of the Chinese Remainder Theorem, as long as there is a remainder polynomial without error, that is... At least one pixel in a given set of pixels has no hidden data, allowing for accurate recovery of the polynomial. ;in, and It is known. express The first OK, Column pixel values, For the corresponding modular polynomial, ; Pixels are recovered according to formulas (9) and (10). : (9) (10) in, For carrier image The OK, The pixel values ​​of the column; Step S34: Repeat step S33 until... Once all pixels have been recovered, the carrier image is obtained. .

2. A high embedding rate reversible data hiding system resistant to internal attacks, characterized in that, Includes the following modules: The carrier image encryption module is used by the carrier image owner to encrypt the carrier image. The value of each pixel is mapped to a polynomial, and a corresponding key polynomial is generated for each pixel, thus obtaining... Key polynomial e, using e to Each pixel is encrypted to obtain the encrypted carrier image. The owner of the carrier image will e sends it to the recipient, and the owner of the carrier image will... Sent to data hiders, specifically including: Step S11: Set the carrier image The size is The value of each pixel is , ; Map the value of each pixel to a polynomial, let Representing prime numbers Finite field on, Indicates the coefficient in polynomials on, ,in, Representing a polynomial The order of the order of the mapping functions is given by equations (1) and (2): (1) (2) in, ; Step S12: The owner of the carrier image is selected. polynomials: As a modulus, the threshold is The polynomial satisfies the following conditions: ⑤ , Represents the sequence from 1 to A set; ⑥ ,and ;in, It is the greatest common divisor function; ⑦ Order ,and ; ⑧ Order , ,in , The number of data hiders, It is the least common multiple function; Step S13: Randomly select a pair of key polynomials for each pixel. The key polynomial satisfies the following condition: ③ ④ Step S14: Repeat step S13 until the carrier image is obtained. Generate a corresponding key polynomial for each pixel, and obtain Key polynomial e: The owner of the carrier image will e is sent to the recipient; Step S15: Encrypt each pixel using the key polynomial according to formula (3): (3) According to formula (4), generate Encrypted pixel values: (4) in, , Indicates the first OK, The first pixel of the column after encryption Pixel values; Step S16: Repeat step S15 until the carrier image is processed. Generate each pixel The encrypted pixel values ​​are finally obtained. Encrypted image and send to the corresponding A data hider; Secret data embedding module, used by the data hider to receive The secret data that needs to be hidden is Generate key stream right Encrypted information is obtained after encryption. ,set up Pixels can be embedded on it, Replacing the embeddable pixels yields secret data. Encrypted images The data hider will and Send to the recipient, specifically including: Step S21: Let They are respectively For each piece of secret data that the data hider needs to conceal, a key stream of the same length as the secret data is randomly generated. The secret data is encrypted according to formula (5) to obtain encrypted information. : (5) in, , This represents the XOR operation; Step S22: Let the first The encrypted image received by the data hider is ,by Each pixel is grouped into a set of pixels that can be embedded with secret data; when Time: Each group only in the first... Embedding secret data in each pixel; when When: At that time, each group except the first Except for one pixel, all other pixels are embedded with secret data; when At that time, each group except the first Except for one pixel, secret data is embedded in all other pixels. Step S23: For each pixel that can be embedded with secret data The least significant bit is used The encrypted information To make substitutions, among which, This represents the maximum number of bits of secret data that can be embedded in a pixel; finally, we obtain... A document containing secret data Encrypted images The data hider will and Send to the recipient; The secret data extraction and carrier image restoration module is used by the receiver to... , to receive Encrypted information Decryption is performed to obtain the secret data. ; and using key polynomials e to Perform carrier pixel restoration to obtain the carrier image. Specifically, it includes: Step S31: Since the receiver possesses an encrypted image with secret data Decryption key e and key stream And it is known ,right Pixels containing secret data The encrypted information can be obtained by extracting the least significant bit. Reuse The secret data is calculated according to formula (8). : (8) in, , This represents the XOR operation; Step S32: When the number of insider attackers is no more than One, the recipient selects Encrypted images containing secret data that have not been affected by insider attacks Its corresponding modulo polynomial is The decryption key is the key polynomial. e ; Step S33: Let It is a remainder polynomial. Given the corresponding modular polynomial, according to the robustness of the Chinese Remainder Theorem, as long as there is a remainder polynomial without error, that is... At least one pixel in a given set of pixels has no hidden data, allowing for accurate recovery of the polynomial. ;in, and It is known. express The first OK, Column pixel values, For the corresponding modular polynomial, ; Pixels are recovered according to formulas (9) and (10). : (9) (10) in, For carrier image The OK, The pixel values ​​of the column; Step S34: Repeat step S33 until... Once all pixels have been recovered, the carrier image is obtained. .

Citation Information

Patent Citations

  • Reversible information hiding method with high embedding amount based on homomorphic encryption algorithm

    CN111640053A