Information security systems have made extensive use of chaotic systems due to their starting value sensitivity, unpredictability, ergodicity, and numerous other features. Shannon outlined the three fundamental information security systems—encryption, privacy, and hidden systems—in the Monograph on Information Security. This section describes the creation of a reversible data-hiding strategy for the secure transmission of stereoscopic medical images, based on 2D-LSM.
As shown in
Figure 7, the whole structure of the reversible data-hiding scheme based on 2D-LSM mainly consists of five stages: stereo image segmentation, key and chaotic sequence generation, image authentication, EMR authentication, and data hiding. Assuming the grayscale spiral CT image
is used as the object, these stages can be simply described as follows.
3.1. Stereo Image Segmentation
As shown in
Figure 8, this section introduces the generation process of a stereoscopic image segmentation mask.
Step 1: Stereoscopic medical images are evenly divided into three parts: top, middle, and lower.
Step 2: The first image of these three parts was selected and denoted as
,
, and
, respectively. The Otsu threshold segmentation method [
7] was applied to segment
,
, and
to generate three segmentation masks, denoted as
.
Step 3: The three segmentation masks are added to obtain
, and the final segmentation mask
is generated according to Equation (11).
Step 4: The segmentation mask was applied to the whole stereoscopic image and divided into a region of interest (ROI) and background region. The ROI was denoted as , and pixels belonging to the background region were discarded.
3.2. Key and Chaotic Sequence Generation
The initial value and sequence generation steps of chaotic systems are as follows:
Step 1: The plaintext information
are taken as the input of the SHA-256 algorithm to obtain the hash values
, which are usually represented by a hexadecimal number of length 64.
Step 2: Convert
to 4-bit binary numbers, and then convert each group of eight to decimal numbers, and calculate the XOR according to the Equation (13) to generate a decimal array of length 32.
Step 3: The initial parameters of the chaotic system are calculated according to Equation (14).
Step 4: Set the parameter to 0.5 and the parameter to 0.6, and substitute the calculated into the 2D-LSM hyperchaotic system; iteratively generate two random sequences, denoted .
3.3. Image Authentication
Double random phase coding (DRPE) is an optical coding technique that is frequently used for picture authentication and encryption. It was first presented by Refregier et al. [
31]. Equations (15) and (16) illustrate the double random phase encoding and decoding procedure.
where
is the original image, and
is the encoded image.
and
represent the Fourier transform and the inverse Fourier transform, respectively.
and
are spatial coordinates, and
and
are frequency domain coordinates.
and
are two sets of two-dimensional normally distributed random numbers in the spatial domain and the frequency domain, whose values are randomly distributed between [0, 1], and the convolution and mean of the two arrays are zero; that is, they are two random white noises that are independent of each other. Therefore,
and
are phase masks capable of producing phases between
. The encoding result
is a complex amplitude with amplitude spectrum and phase spectrum. The phase spectrum of the encoding result is extracted as authentication information, and the correlation between the decoded image and the authenticated image can be verified by peak correlation energy.
Step 1: Calculate the size of the cover image
according to Equation (17).
Step 2: Two random phase plates were constructed, the first
bits of a random sequence
and
were intercepted, reconstructed according to Equation (18).
Step 3: According to Equation (15), encoding results only retain the phase signal , and discard all amplitude information.
Step 4: According to Equation (19), the phase signal
is binarized.
Step 5: is converted into a one-dimensional sequence as the authentication information of the image.
3.4. EMR Authentication
Information security-related concerns will have an impact on the management of medical images. Three primary concerns are image source verification, whether the image matches the patient, and preventing the separation of the image from the associated electronic medical record (EMR) [
7]. To prevent illegal copying and falsification of EMR data and to ensure that patient data and their corresponding medical images correspond, a QR code has been chosen as the container of the patient electronic medical record report in this paper. The QR code is embedded in stereoscopic medical image data.
Step 1: According to Equation (20), the QR code
is binarized.
Step 2: is converted into a one-dimensional sequence as the authentication information for EMR data.
3.5. Data Hiding
, and as secret information are hidden in .
Step 1: According to Algorithm 1,
is divided into the embeddable region
and the unembeddable region
.
Algorithm 1 Embedded region partitioning algorithm |
Input:. Output:. |
1: | ; |
2: | ; |
3: | ; |
4: | ; |
5: | ; |
6: | ; |
7: | . |
Step 2: The median edge detector (MED) predictor [
32] was used to calculate the predicted value
for each pixel
of the embedded region
.
Step 3: Convert the values of and into an 8-bit binary sequence denoted as and , where .
Step 4: According to the method in Ref. [
10],
and
are compared successively from the most significant bit to the least significant bit until a certain bit is different, the label value of each pixel is recorded, and the theoretical embedding capacity of the entire image is calculated by adding all the label values. For these label values, Huffman coding is used for compression, reducing the amount of auxiliary information and increasing the payload of the image.
Step 5: According to Equation (21), auxiliary information such as Huffman coding rules and label mapping and secret information such as
,
, and
are embedded into
.
where
is the label value of the current pixel, and
is the secret information to be embedded.
Step 6: is converted into a one-dimensional sequence and joined with , denoted as .
Step 7: Equation (22) is used to process chaotic sequence
, and Equation (23) is used to process chaotic sequence
.
where
represents the length of the sequence to be encrypted,
.
Step 8: Sort the sequence
, derive the index matrix
, all elements in
are non-repeatable integers ranging from 1 to
, and encrypt
according to Equation (24).
where
,
,
represents the bit-level XOR operation [
5].
At this point, the data-hiding and encryption process is complete.