Keywords

1 Introduction

Quantum information processing has great deal of attention from both engineers and quantum scientists. The main task of quantum information is to develop new quantum algorithms for processing and storing quantum information. Quantum computer is a machine accepts input quantum states as a superposition of several inputs in another state as output quantum state [1]. Quantum steganography utilizes the effects of quantum mechanics such as quantum computation and quantum communication to achieve tasks of quantum information hiding. Quantum steganography, can be defined as the classical steganography in viewpoint of quantum mechanics, has become important researching area of quantum cryptography [2]. There are four types of quantum steganography classified as per embedding strategies [3]. The first type is information hiding of quantum data [410]. The second type is quantum error code [11, 12]. The third type based on the quantum cryptography protocols to hide secret messages [13, 14]. The last type, which based on quantum image processing techniques named as quantum image steganography.

The effects of quantum parallelism used in processing quantum images (PQI) to improve many processing tasks in classical image processing. The first step of PQI is to represent and store the classical images on quantum computers. There are many representations for classical images on quantum computers, such as Entangled Image [15], Real Ket [16], Multi-Channel representation of quantum image [17], log-polar representation [18], flexible representation of quantum images (FRQI) [19], which uses number of qubits 2x + 1 to represent a gray image with size 2x × 2x and the NEQR model for represent quantum images [20]. In spite of the used qubits of NEQR increases from 2x + 1 qubits used in FRQI to 2x + q qubits, it is excellent for processing quantum image because the quantum representation is very similar to the representation of a classical image.

Recently, a number of quantum image security algorithms including encryption [2123] and steganography based on NEQR have been proposed [2427]. Jiang et al. introduced in [24] a scheme based on Moir´e Pattern, which embeds the secret binary image with size 2n × 2n into a cover gray image with size 2n × 2n. Afterward, Jiang et al. introduced in [25] a new quantum image steganography algorithm based on LSB, which embeds a message as binary 2n × 2n image into a cover image 2n × 2n gray image.

In the earlier works, there is no previous quantum image steganography algorithm to embed quantum secret message as a text into a quantum image. The quantum image steganography algorithms [24, 25] embed binary images or message as a binary image with maximum capacity one bit per pixel. However, quantum image steganography algorithms [24, 25] were broken to embed quantum text message into a cover image. In this paper, we will propose a quantum image steganography scheme to embed quantum text message instead of a message as an image into a quantum image. It utilizes Hadamard transformation to increase the security of embedded quantum data. Experimental results demonstrated that the maximum capacity increases from one bit per pixel to two bit per pixel in the proposed scheme and the invisibility is good [24, 25].

The rest of this paper is as follows. The Hadamard transformation and NEQR representation model are briefly reviewed in Sect. 2. Section 3 introduced the proposed quantum image steganography scheme. Section 4 gives analyses and results. The comparison with related schemes provided in Sect. 5. Finally, in Sect. 6 the conclusion is drawn.

2 Background

In this section, the NEQR model [20] for representation quantum images and Hadamard transformation are briefly reviewed, which the essentials of the proposed scheme.

2.1 NEQR Quantum Representation

By using the representation pixels idea for images in traditional computers, the NEQR representation is proposed in [20]. The NEQR model has information about the pixels color and its related position of each pixel in the image. The mathematical representation of a quantum image for an \( 2^{n} \times \, 2^{n} \) image can be expressed as follows.

$$ \begin{array}{*{20}c} {|I{\rangle } = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} {|c_{i} {\rangle } \otimes |i{\rangle }} } \\ {|c_{i} \rangle \, = \,|c_{i}^{q - 1} \ldots .c_{i}^{1} c_{i}^{0} \rangle ,\,c_{i}^{j} \, \in \,\left\{ {0,1} \right\},i\, = \,0,1, \ldots .,2^{2n} \, - \,1,\,j = 0,1, \ldots .,q\, - \,1} \\ \end{array} $$
(1)

where the sequence \( c_{i}^{q - 1} \ldots .c_{i}^{1} c_{i}^{0} \) encodes the color value with range \( 2^{q} \), \( |i{\rangle } \, for \, i \, = 2^{2n} - 1, \ldots ,1, \, 0, \, are \, 2^{2n} \) dimension computational basis quantum states. There are two parts of \( |I{\rangle } \) as follows \( |c_{i} {\rangle } \), which encodes the information about the pixels color and \( |i{\rangle } \) which encodes the information about the related position for colors in the image.

2.2 Hadamard Transformation

The basic unite of classical informationand classicalcomputation is bit. Quantum information and quantum computation are based upon an analogue idea, quantum bit (qubit). Qubits are represented by state vectors

$$ |0{\rangle = }\left( {\begin{array}{*{20}c} 1 \\ 0 \\ \end{array} } \right)|1{\rangle = }\left( {\begin{array}{*{20}c} 0 \\ 1 \\ \end{array} } \right) $$

and a superposition of two states

$$ |{\psi \rangle } = \, \alpha |0{\rangle } + \, \beta |1{\rangle } $$
(2)

where α and β are complex numbers and \( \left| { \, \alpha \, } \right|^{2} + \, \left| { \, \beta \, } \right|^{2} = \, 1 \)

To express the operation of the classical gates, we have used a truth table. For quantum gates, we use matrix representation. Hadamard transformation is represented by the following matrix.

$$ H \, = \frac{1}{\sqrt 2 }\left( {\begin{array}{*{20}c} 1 & 1 \\ 1 & { - 1} \\ \end{array} } \right) $$

3 Proposed Quantum Image Steganography Scheme

We introduce a quantum image steganography scheme based on NEQR representation and Hadamard gate in this section. The proposed quantum image steganography procedures are shown in Fig. 1.

Fig. 1.
figure 1

Embedding and extraction procedures of the proposed quantum image steganography

3.1 Embedding Process

The proposed quantum image steganography embedding procedures consist of two phases, which are given by the following steps.

Phase 1

Preparation of quantum states

Let the cover image \( |I{\rangle } \) is \( 2^{n} \times \, 2^{n} \) image and the secrete message encoded into two binary matrixes with size \( 2^{n} \times \, 2^{n} \).

Note the size of the secrete text message must be less than or equal to \( 2^{2n - 2} \left( {2 \times 2^{n} \times 2^{n} {\text{bit }} = \, 2 \times 2^{n} \times 2^{n} /8{\text{ byte}}} \right) \) characters.

The NEQR representations of \( |I{\rangle } \), \( |M1{\rangle } \) and \( |M2{\rangle } \) are shown as follows:

$$ |I\rangle = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} {|c_{i} } \rangle \otimes |i\rangle = |c_{i} \rangle = |c_{i}^{q - 1} \ldots .c_{i}^{1} c_{i}^{0} \rangle ,\,c_{i}^{j} \, \in \,\{ 0,1\} $$
(3)
$$ |M1\rangle = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} {|m1_{i} } \rangle \otimes |i\rangle ,\,|m1_{i} \rangle = |m1_{i}^{q - 1} \ldots .m1_{i}^{1} m1_{i}^{0} \rangle ,\,m1_{i}^{j} \in \{ 0,1\} $$
(4)
$$ |M2\rangle = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} | m2_{i} \rangle \otimes |i\rangle ,\,|m2_{i} \rangle = |m2_{i}^{q - 1} \ldots .m2_{i}^{1} m2_{i}^{0} \rangle ,\,m2_{i}^{j} \in \{ 0,1\} $$
(5)

Note that the representation of quantum text is represented only in \( m_{i}^{0} \) and all others \( m_{i}^{j} \) = 0 where j = 1, 2, 3, …., q-1, according to Theorem 1.

Then shift the coefficients of vector \( |\text{M}2\rangle \) by \( 2^{2n + 1} \) as follows:

$$ |M2_{{mod(i + 2^{2n + 1} , \, 2^{2n + q} )}} {\rangle } = |M2_{i} {\rangle }, i = 1, \, 2, \ldots , \, 2^{2n + q} $$
(6)

Then take the superposition of the two states \( |\text{M}1\rangle \) and \( |\text{M2}\rangle \) to state \( |\text{T}\rangle \).

$$ |T{\rangle } = \frac{1}{\sqrt 2 }(|M1{\rangle } + |M2{\rangle }) $$
(7)

Theorem 1

Text message can be represented in quantum computation as

$$ |M{\rangle } = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} {|m1_{i} {\rangle } \otimes |i{\rangle }} ,m_{i}^{{}} \in \{ 0,1\} $$
(8)

where\( |\text{M}\rangle \) is a vector space with length \( 2^{2n + 1} \) and i is the position of binary bit mi after the representation of text message as 2n × 2n binary matrix.

Proof

To process the text message on quantum computers, the text message information at first should be represented and stored in quantum states by quantum encoding state about bits of the text message and its positions.

From NEQR representation, there are number of 2n +q qubits required to construct the representation for a 2n × 2n image with gray range \( 2^{q} \). There are two values for a bit in a text message 0 or 1 so that we need 2n + 1 qubits to represent a 2n × 2n bit matrix for the text message.

Information about bits encoded in \( |\text{m}_{\text{i}} \rangle \), where \( m_{i} { \in }\left\{ {0, \, 1} \right\} \) and \( |i{\rangle } \) encodes the position of the related text bits. Information about the position consists of two parts: horizontal and vertical coordinates. By taking into consideration a quantum text message is a system in 2n-qubit,

$$ i\rangle \, = \,|v\rangle |h\rangle \, = \,|v_{n - 1} v_{n - 2} , \ldots \ldots ,v_{0} \rangle |h_{n - 1} h_{n - 2} , \ldots \ldots ,h_{0} \rangle , $$
(9)
$$ h, \, v \in \left\{ {0, \, 1, \, \ldots \ldots .., \, 2^{n} - 1} \right\}, $$
$$ |v_{k} {\rangle },|h_{k} {\rangle } \in \{ |0{\rangle }, \, |1{\rangle }\} , k = 0,1,2, \, \ldots .., \, n - 1 \, , $$

here \( |v_{n - 1} v_{n - 2} , \ldots \ldots ,v_{0} {\rangle } \) encodes the first n-qubit over the vertical axis and \( |h_{n - 1} h_{n - 2} , \ldots \ldots ,h_{0} {\rangle } \) by encoding the second n-qubit over the horizontal axis. The state of quantum text message is a normalized as shown in (10),

$$ \left\| {|M{\rangle }} \right\| = \frac{1}{{2^{n} }}\sqrt {\sum\limits_{i = 0}^{{2^{2n} - 1}} {|m_{i} {\rangle } \otimes |i{\rangle }} } = \frac{1}{{2^{n} }}\sqrt {2^{2n} } = \frac{1}{{2^{n} }}2^{n} = 1 $$
(10)

Phase 2

Apply unitary Hadamard transformation

Firstly, form unitary Hadamard transformation gate (HG) controlled by secrete key K in binary form where K = k1k2 k3 …ki…. K2n+q, i = 2, 3, ……., 2n + q, ki∈{0,1}, k1 = 1 is to ensure the color qubit transformation.

$$ HG = H\mathop \otimes \limits_{i = 2}^{{^{2n + q} }} H^{{k_{i} }} ,H^{{k_{i} }} = {\{ }\begin{array}{*{20}c} {H,k_{i} = 1} \\ {I,k_{i} = 0} \\ \end{array} i = 2, \, 3, \, \ldots \ldots ., \, 2n + q $$
(11)

where I is identity matrix in 2-dimantional form and H is the Hadamard transformation matrix.

Then, execute HG on the quantum cover state \( |{I\rangle } \) and quantum text state \( |{T\rangle } \), getting vector \( \text{HG}\left( {|{I\rangle }} \right) \) and vector \( \text{HG}\left( {|{T\rangle }} \right) \) as follows:

$$ HG(|I{\rangle }) = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} {HG(|c_{i} {\rangle )} \otimes |i{\rangle }} $$
(12)
$$ HG(|T{\rangle }) = \frac{1}{{2^{n} }}\sum\limits_{i = 0}^{{2^{2n} - 1}} {HG(|m_{i} {\rangle )} \otimes |i{\rangle }} $$
(13)

Then, take the superposition of the two states \( \text{HG}\left( {|{I\rangle }} \right) \) and \( \text{HG}\left( {|{T\rangle }} \right) \) to the stego image state \( |\text{S}\rangle \).

$$ |S{\rangle } = \frac{1}{\sqrt 2 }(HG(|I{\rangle }) \, + \, HG(|T{\rangle })) $$
(14)

3.2 Extraction Operation

At the extraction operation, we utilize the secrete key to extract embedded text message from the quantum cover image. The quantum process is totally revertible, because all used transforms are unitary matrices in quantum computation.

By executing inverse of HT on the stego-image \( |\text{S}\rangle \), getting the cover image \( |\text{I}\rangle \) and the text message \( |\text{M}\rangle \).

$$ \begin{aligned} inv(HG(|S{\rangle })) \, = & inv(HG(\frac{1}{\sqrt 2 }(HG(|I{\rangle }) \, + \, HG(|T{\rangle })))) \\ = & \frac{1}{\sqrt 2 }(inv(HG(HG(|I{\rangle }))) \, + \, inv(HG(HG(|T{\rangle })))) \\ = & \frac{1}{\sqrt 2 }(|I{\rangle } + |T{\rangle }) \\ \end{aligned} $$

4 Analyses and Results

We perform the simulation of quantum operations on the classical computer to analyses our proposed scheme. We introduce several analyzes, such as visual quality, payload capacity and security analysis.

4.1 Visual Quality

Visual quality is the amount of difference between the stego image and the original cover image in pixels values. There are many quantities to measure the difference of pixels between the stego image and the original cover image; one of the most used quantities is PSNR (peak signal to noise ratio). It is defined as the MSE (mean squared error) for two images X and Y with size i × j.

$$ {\text{MSE}} = \frac{1}{ij}\sum\limits_{x = 0}^{i - 1} {\sum\limits_{y = 0}^{j - 1} {[X(x,y) - Y(x,y)]^{2} } } $$
(16)

PSNR is defined as follows.

$$ {\text{PSNR }} = 20\log_{10} (\frac{{{\text{MAX}}_{X} }}{{\sqrt {\text{MSE}} }}) $$
(17)

Where, MAXX is the maximum value of pixels in the cover image X. In this scheme, Y related to the stego image and X related to the original cover image. To simulate the proposed scheme we use images with size 64 × 64 in these experiments. The following Fig. 2 describes experimental results of our scheme and Figs. 3 and 4 describe two different text messages that embedded in the stego image and Table 1 shows the PSNR values among the original cover image and the stego image for different two text messages.

Fig. 2.
figure 2

The visual effects

Fig. 3.
figure 3

Text message 1 with length 1024 character

Fig. 4.
figure 4

Text message 2 with length 165 character

Table 1. PSNR values for different secrete text messages

Obviously, from Fig. 2, human eyes can’t identify the difference between the original coverimage and the stego image. From Table 1, the values of PSNR are enough. So our scheme has a good visual effect.

4.2 Payload Capacity

The steganography capacity can be stated as the ratio between the number of embedded bits of the text message and the number of pixels for cover image. The proposed scheme’s capacity is given as follows:

$$ C = \frac{number of message bits}{number of cover image pixels} = \frac{{2 \times 2^{n} \times 2^{n} bit}}{{2^{n} \times 2^{n} pixel}} = 2 \, bit/pixel $$

The proposed algorithm has Payload capacity two bits per pixel, which is higher than of majority of the quantum image steganography algorithms. So we can conclude that our scheme has high-capacity.

4.3 Security Analysis

The embedded text message is same as the extracted text message so that there is no BER (Bit Error Rate) in extracted text message. The extract operation needs only quantum stego image and the binary key. The key utilized to control unitary Hadamard transformation, which is secret. Therefore, the effect of the proposed quantum image steganography scheme based on NEQR for quantum images and Hadamard transformation is excellent and has no error (error-free).

5 Comparison with Related Schemes

From the above section, the proposed algorithm has high PSNR compared to the schemes of [24, 25] based on the simulation results. The payload capacity of our scheme is two bit per pixel while the capacity of algorithms in [24, 25] are one bit per pixel. From Table 2, the proposed scheme has high-capacity, high security, good visual effect and embedding quantum text message instead of a message as an image.

Table 2. Comparison with related schemes

6 Conclusion

A quantum image steganography scheme based on NEQR representation of quantum images and Hadamard transformation is proposed. The proposed scheme has good advantages such as the extracting operation does not require the original image or information about the embedded text message. Simulation results proved that the efficiency of the proposed scheme.