Improved diagonal queue medical image steganography using Chaos theory, LFSR, and Rabin cryptosystem
 Mamta Jain^{1}Email author,
 Anil Kumar^{1} and
 Rishabh Charan Choudhary^{2}
Received: 4 May 2016
Accepted: 29 August 2016
Published: 9 September 2016
Abstract
In this article, we have proposed an improved diagonal queue medical image steganography for patient secret medical data transmission using chaotic standard map, linear feedback shift register, and Rabin cryptosystem, for improvement of previous technique (Jain and Lenka in Springer Brain Inform 3:39–51, 2016). The proposed algorithm comprises four stages, generation of pseudorandom sequences (pseudorandom sequences are generated by linear feedback shift register and standard chaotic map), permutation and XORing using pseudorandom sequences, encryption using Rabin cryptosystem, and steganography using the improved diagonal queues. Security analysis has been carried out. Performance analysis is observed using MSE, PSNR, maximum embedding capacity, as well as by histogram analysis between various Brain disease stego and cover images.
Keywords
1 Introduction
In this era, various medical systems are continuously migrating into the cloud and mobile environments. In the version of the telemedicine, the doctor examines medical images along with the patient data, which are transmitted from remote places, which help in receiving medical care by expediting diagnosis and immediate treatment. Security parameters such as authentication, integrity, confidentiality, and availability have to be considered for secure transmission, where Department of Health and Human Services (DHHS), USA imposed regulations for data security and privacy under the health insurance portability and accountability act (HIPAA) of 1996, USA [1–3].
Cryptographic techniques encrypt the secret records with a password and assume that only authorized parties have access to the password [4], along with the traditional encryption schemes, chaosbased techniques are used these days, because of properties such as ergodicity, mixing property, sensitivity to initial conditions, and system parameters which can be considered analogous to ideal cryptographic properties such as confusion, diffusion, balance, and avalanche properties. Hence, many chaosbased encryption systems also proposed in last few years [5, 6].
In steganography, the very existence of sensitive data by concealing the data in nondescript areas of the carrier image, such that the changes made to the image are imperceptible, and the secret information is retrieved only by authorized person [7–9]. Various steganography techniques have used the concept of pixelvalue differencing for secret data insertion [10–12]. The pixelvalue differencing (PVD) scheme uses the difference value between two consecutive pixels in a block to determine how many secret bits should be embedded [13, 14]. Steganography methods' performance can be measured by the three valuable specifications: security, capacity, and visual imperceptibility [15, 16].
Since the debut of this era, one of the most intelligible terms of information technology and communication is the security of medical records and patient’s personal information like unique ID, name of patient, disease information, etc.
Anderson et al. discussed some limitations in steganography methods [17]. They approached an information theoretic method using Shannon’s theory for perfect security of data. Therefore, both steganography and cryptography are used together to accomplish the security challenges [15].
Thiyagarajan et al. proposed a new steganography methodology for hiding patient information inside a medical cover image using a dynamic key produced by graph 3 coloring problem [18].
In this paper, we have proposed an improved security system by using the chaotic 2D standard map and linear feedback shift register, as an improvement in our previous report [19]. The proposed algorithm comprises three stages, viz. (i) generation of pseudorandom sequences (pseudorandom sequences are generated by linear feedback shift register and standard chaotic map); (ii) permutation and XORing using pseudorandom sequences; and (iii) steganography using the improved diagonal queues.
This novel approach can be understood by referring the following divisions. In division 2, brief description of chaos, linear feedback shift register, Rabin cryptosystem, queue, and security system of Jain et al. [19] is discussed. In division 3, the proposed method is discussed. In division 4, security analysis is performed. The performance analysis is carried out in division 5. Finally, the work is concluded in division 6.
2 Brief description of Chaos, LFSR, Rabin cryptosystem, queue, and security system of Jain et al. [19]
In this section, various techniques have been discussed as follows:
3 Basics of Chaos Theory and LFSR
3.1 Chaotic sequence
Now, generate the pseudorandom sequences using Eq. (4) which in turn used for generating the synthetic images and in counting the number of rounds [6].
3.2 Linear feedback shift register
Period of the sequence generated by LFSR is high if the primitive polynomial is used. To design any stream cipher system, one needs to consider the LFSR with primitive feedback polynomials as the basic building blocks. The pseudorandom sequence depends upon the initial seed value and feedback function [6].
3.3 Rabin cryptosystem with security concern
The Rabin cryptosystem is a public key encryption method. It is established on numbertheoretic problems allied to the stiffness of integer factoring and computing square roots modulo of composite number, which is straight forward when the factorization is familiar, but very composite when it is concealed. The Rabin cryptosystem requires a receiver’s public key to encrypt the text and a private key to decrypt it [4, 19].
3.4 Queue
The linear data structure or abstractly a sequential collection is called a queue. The principal operations on the collection of data are the addition of them to the rear terminal position, known as enqueuing, and deletion of data from the front terminal position, known as dequeuing [20].
3.5 Brief description of security system [19]
Jain et al. [19] proposed a security system which utilizes Rabin cryptosystem, diagonal queue, dynamic keys ,and Brain Disease medical cover image. The dynamic keys were considered as the secret key for the algorithm and public key for Rabin encryption. The algorithm comprises three rounds. The first round encryption using Rabin cryptosystem, the outcome is organized in various blocks and equally distributed subblocks (using dynamic keys). The second round, the secret cipher blocks and subblocks are assigned dynamically to selected diagonal queues for embedding. In third round, steganography process is performed using LSB (5th–8th bits, dynamic keys are also embedded into the cover image).
4 Main scope of improvements

Apart from secret data, metadata are also embedded into cover image, which consume lot of space of the cover image.

Dynamic keys are inserted into the cover image. Hence, these will be easily available to the intruders, which are not desirable.

Creation of diagonal queue is static.
5 Proposed work
5.1 Cover image and secret message
In this system, select a grey Brain disease image as a cover image and a secret message of patient information, which will be embedded in the cover image.
5.2 Chaos theory for random number generation

The secret key consists of three floating point numbers and one integer \((x_{0,} y_{0,} K,N)\), where \(x_{0}\),\(y_{0} \in (0,2\pi )\), \(K\) can have any real value greater than 18.0 and \(N\) is any integer value, ideally should be greater than 100.

By iterating Eq. (4) 2 times the size of the secret data, the pseudorandom sequence is generated as \(XKey\) and \(YKey\)
$$For\;i = 1\; to\; 2\,*\,size\;of\;the\; \sec\; ret\; data$$$$X1\left( i \right) = \left[ {\frac{{Xkey\left( i \right)}}{{2\pi }}*256} \right];$$(5a)$$Y1\left( i \right) = \left[ {\frac{{Ykey\left( i \right)}}{{2\pi }}*256} \right];$$(5b)End
5.3 Pseudorandom sequence generation using LFSR

\(For i = 1 to (secret data size)/2\).

Generate the pseudorandom sequences \((L1(i))\) using the primitive root \(, f = 1 + x^{4} + x^{5} + x^{6 } + x^{8}\), and the seed value is \(X1(i)\).

Generate the pseudorandom sequences \((L2(i))\) using the primitive root,\(f = 1 + x^{4} + x^{5} + x^{6 } + x^{8}\), and the seed value is \(Y1(i)\).

Generate the pseudorandom sequences \((L3(i))\) using the primitive root,\(f = 1 + x + x^{4}\), and the seed value is \((X(i)  Y1(i))(mod 15)\).

Generate the pseudorandom sequences \((L5(i))\) using the primitive root,\(f = 1 + x + x^{4}\), and the seed value is \((Y1(1)*X1(1))(mod 15)\)
End
5.4 XORING and permutation of secret data using pseudorandom sequence

Let secret data be \(S\)

Here, XOR pseudorandom sequence \((X1)\) with secret data is \(S\).$$S{\prime } = S( \oplus )X1$$(6)

Divide the \(S^{'}\) into blocks of 256 bytes.

Permute first block elements using pseudorandom sequence \(L1(1)\), second block with \(L1(2),\) and so on.

Permute first 256 blocks using pseudorandom sequence \(s L2(1)\), next 256 blocks using \(L2(2)\) and so on.

Combine the entire blocks as \(S^{''}\).
5.5 Rabin cryptosystem

Rabin encryption technique is used to encrypt the permuted secret data \(S^{''}\) before embedding$$S^{'''} = RabinCryotsystem (S^{''} , Publickeyofreceiver).$$(7)

Now, cipher text will be divided into 16 bits blocks sequentially.

Permute first block elements using pseudorandom sequences \(L3(1)\), second block with \(L3(2)\) and so on.

After that, each block is divided into equally distributed 4 bits subblocks.

Permute first subblock elements using pseudorandom sequence \(s L4(1)\), second subblocks with \(L4(2),\) and so on.
5.6 Diagonal queue

Now, the cover image will be divided into a number of \(8\) pixels image blocks.

Now, organize the first image block’s \(64\) bits in diagonal queues using pseudorandom sequence \(s L5(1)\), second blocks using \(L5(2),\) and so on.
5.7 Diagonal queue embedding

Encrypt seed values along with data size using public key of receiver as \(F = E((Seed + Secret Data Size),Public key of Receiver)\), and embed in cover image.

Select first 8 pixels of the cover image, and assign them random number \(XKey\left( 1 \right)\) to \(XKey(8)\), next \(8\) pixels of the cover image, and assign them random number \(XKey(9)\) to \(XKey(16)\) and so on.

One block of the cover image using pseudorandom number as discussed above point is represented by diagonal queues for embedding.

If the generated random value is \(0\) for particular pixel, then the \(8\) bits will be distributed from right to left direction.

If the generated random value is \(1\) for particular pixel, then the \(8\) bits will be distributed from left to right direction example as above.


Embedding will be done in selected diagonal queues sequentially, using LSB technique from 5th to 8th bits using pseudorandom number \((4 + L5(i))\).
Continue this process until all the cipher data blocks are not empty and all secret cipher text is not embedded in diagonal queues sequentially and send resultant stego image to the receiver.
(a–f) are cipher text blocks, cipher text subblocks, Brain disease cover image blocks, assignment of random number to cover image blocks, cover image block into bits and diagonal queues, respectively
Suppose we have the following data a. N blocks of permuted cipher text: 1x16 b. Permuted 4 subblocks of each N block: 1x4 c. M block of 8 pixels each, from cover image: 1x8 d) Now, assign pseudorandom number to each pixel for converting the above block into bits: As example the pseudorandom number generated as \(01100110\) e) M block of \(64\) bits each. It is obtained by converting the above block into bits as follows: If the generated random value is \(0\) for particular pixel, then the \(8\) bits will be distributed from right to left direction. If the generated random value is \(1\) for particular pixel, then the \(8\) bits will be distributed from left to right direction example as above. Using the above matrix, various diagonal queues from left to right inserted bits are created on the basis of above example. The above shown bold bits in the example are used to swap with the cipher text bits using FIFO property of queue. Now, we will select one of these eligible diagonal queues, using chaos theory of random number generation. We will also select one of the N blocks and subblocks using chaos theory of random number generation. We will then put the selected ciphertext bits, in selected diagonal queue at 5th to 8th bit LSB position. Example for selection of hiding position in diagonal queues using pseudorandom number is as follows: If \(L5(1)\) is having value \(1\) then \(4 + L5\left( 1 \right)\) is \(5\), i.e., secret cipher data bit will be hidden at 5th LSB position in selected diagonal. If \(L5(1)\) is having value \(2\) then \(4 + L5\left( 1 \right)\) is \(6\), i.e., secret cipher data bit will be hidden at 6th LSB position in selected diagonal. If \(L5(1)\) is having value \(3\) then \(4 + L5\left( 1 \right)\) is \(7\), i.e., secret cipher data bit will be hidden at \(7\) th LSB position in selected diagonal. If \(L5(1)\) is having value \(4\) then \(4 + L5\left( 1 \right)\) is \(8\), i.e., secret cipher data bit will be hidden at 8th LSB position in selected diagonal. 
5.8 Extraction process
Extraction of the secret medical data can be obtained as exact reverse of the encryption and embedding as discussed in above sections.
6 Security analysis

Starting seed values are encrypted using public key of the receiver.

As we know, slight change in seed values will generate the complete different pseudorandom sequences (using chaos).

Seed values, for the LFSR, depend upon the pseudorandom sequence generated by the chaos.

Hence, slight change in the starting seed value will generate different pseudorandom sequences of the LFSR.

Permutation depends on the pseudorandom sequences.

The complexity of the chaos is very high, and it is next to impossible to break, with existing systems.

Also, encryption using Rabin cryptosystem increases the complexity.

Diagonal queue generation having the complexity \(2^{8}\), and permutation complexity is 15!, Hence, overall diagonal queue complexity will be \(2^{8} *15!\)
7 Performance analysis
Patient secret medical data
Input data to the Brain disease medical scan cover image  Output using proposed methodology 

Patient Name: XXX  Patient Name: XXX 
Patient ID/UID: XX  Patient ID/UID: XX 
Doctors remarks: X  Doctors remarks: X 
Observed Capacity, MSE, and PSNR value (different Brain disease cover images of same/different sizes with various secret cipher medical data of same/different sizes)
Brain disease cover image (*.bmp)  Brain disease cover image size (Kilo bytes)  Quantity of cipher embedded (Bytes)  Maximum embedding volume (Kilo bytes)  Percentage of embedding volume in % w.r.t (Image size)  MSE  PSNR (dB) 

Vascular (MultiInfarct) dementia  262  256  97.54  37  0.0031  76.57 
Vascular (MultiInfarct) dementia  262  1024  97.54  37  0.0062  72.17 
HIVassociated dementia  262  256  93.57  36  0.0038  75.36 
HIVassociated dementia  262  1024  93.57  36  0.0067  72.58 
Brain Huntington’s disease  262  256  90.43  35  0.0052  75.02 
Brain Huntington’s Disease  262  1024  90.43  35  0.0043  73.48 
Corticobasal degeneration  262  256  88.31  34  0.0037  77.16 
Corticobasal degeneration  262  1024  88.31  34  0.0057  73.27 
Vascular (Multiinfarct) dementia  1048  256  408.20  39  0.0004  85.26 
Vascular (MultiInfarct) dementia  1048  1024  408.20  39  0.0025  80.39 
HIVassociated dementia  1048  256  402.29  38  0.0005  84.28 
HIVassociated dementia  1048  1024  402.29  38  0.0024  79.39 
Brain Huntington’s disease  1048  256  397.44  37  0.0005  84.39 
Brain Huntington’s disease  1048  1024  397.44  37  0.0027  79.49 
Corticobasal degeneration  1048  256  385.49  36  0.0004  85.19 
Corticobasal degeneration  1048  1024  385.49  36  0.0021  79.36 
where \(CV_{max}\) represents a maximum 255 pixel value, for 8bit cover images [22]

In vascular (multiinfarct) dementia image, maximum embedding capacity is 97.54 and 408.20 kilo bytes which is 37 and 39 %, respectively, of the image size.

In HIVassociated dementia image, it is 93.57 and 402.29 kilo bytes, which is 36 and 38 %, respectively, of the image size.

In Brain Huntington’s disease image, it is 90.43 and 379.44 kilo bytes, which is 35 and 37 %, respectively, of the image size.

In corticobasal degeneration image, it is 88.31 and 385.49 kilo bytes, which is 34 and 36 %, respectively, of the image size.
So by result analysis, it can be noticed that by increasing the Brain disease cover image size and decreasing the secret data size, PSNR value will be increased up to 85.26 dB and MSE value will be decreased up to 0.0004 as well as maximum embedding capacity is increased up to 39 %. So that performance will be high with respect to PSNR, MSE, and maximum embedding capacity values.
Comparison with Jain et al.'s [19] work
Research article  Brain disease cover image size (Kilo Bytes)  Quantity of cipher embedded (Bytes)  Maximum embedding volume (Kilo Bytes)  Percentage of embedding volume w.r.t (Image Size)  MSE  Minimum calculated PSNR (dB) 

Jain et al. [19]  262  256  84.49  32 %  0.0049  73.02 
Proposed Algorithm  262  256  90.43  35 %  0.0052  75.02 
Jain et al. [19]  262  1024  89.32  34 %  0.0054  70.37 
Proposed algorithm  262  1024  97.54  37 %  0.0062  72.17 
Jain et al. [19]  1048  256  383.49  37 %  0.0004  82.18 
Proposed algorithm  1048  256  402.29  38 %  0.0005  84.28 
Jain et al. [19]  1048  1024  383.49  37 %  0.0011  77.29 
Proposed algorithm  1048  1024  385.49  36 %  0.0021  79.36 
Comparison with other researchers
Research article  Minimum calculated PSNR(dB)  Capacity  Visual imperceptibility 

Thiyagarajan and Aghila [18]  65.53  Good  Better 
Wang et al. [13]  44.20  Medium  Good 
Kumar et al. [14]  44.15  Medium  Good 
Wu et al. [10]  37.90  Very Low  Average 
Zhang et al. [11]  36.00  Very low  Average 
Chang et al. [12]  33.53  Very low  Average 
Nag et al. [8]  30.48  Very low  Not good 
Proposed algorithm  72.17  Very good  Best 
8 Conclusion and future scope
In this article, an improved secret medical data transmission scheme is proposed using the notion of opacity with respect to an improved diagonal queue least significant bits substitution using pseudorandom sequences. The secret message blocks and subblocks are allocated randomly using pseudorandom sequences by the sender to the Brain disease cover image blocks with respect to improved diagonal queues, which increases security levels and gives randomness to proposed algorithm. The proposed algorithm used multilevel encryption at cryptography level to provide encryption of secret patient medical data in remote places communication. At steganography level, least significant bits substitutions using chaos theory and improved diagonal queues are used to protect data. By security analysis, it is found that complexity of the encryption is very high to break, from existing system.
Proposed algorithm hides only secret medical data, embedding of metadata in Brain disease cover image is not required, so that lot of space are available in the cover image. By pseudorandom numbers using chaos theory and LSFR, no clue will be available to the intruders. By using proposed algorithm, creation of diagonal queue is dynamic. As we are hiding less data comparatively to previous technique [19] hence, from result analysis, it is concluded that PSNR, MSE values, and percentage of maximum embedding capacity are better as compared to previous work [19] and others. By histogram analysis, it is concluded that imperceptibility distortion cannot be measured from the corresponding stego images. Here, proposed technique is used for medical application and spatial domain image steganography. In future, this technique can be used for various applications using multimedia secret data, where secrecy of data is a very big challenge. We also would like to use this technique to develop some better steganography algorithms in various image steganography domains.
Declarations
Acknowledgments
This work was part of the Research Project funded by All India Council of Technical Education (Government of India) vide their office order: F.No. 8023/BOR/RID/RPS236/200809.
Compliance with ethical standards
Conflict of interest
On behalf of all authors, the corresponding author states that there is no conflict of interest.
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
Authors’ Affiliations
References
 Randolph C, Barrows JR, Paul MD, Clayton D (1996) Review: privacy, confidentiality and electronic medical records. J Am Med Inform Assoc 3(2):139–148View ArticleGoogle Scholar
 Raman RS, Reddy R, Jagannathan V, Reddy S, Cleetus KJ, and Srinivas K (1997) A strategy for the development of secure telemedicine applications. Proc AMIA Annual Fall Symposium, 344–348Google Scholar
 United S (2000) Summary of the HIPAA Privacy Rule, United States Department of Health and Human Services 1–19Google Scholar
 Srivastava AK, Mathur A (2013) The rabin cryptosystem & analysis in measure of Chinese Reminder Theorem. Inter J Scient Res Publ 3(6):493Google Scholar
 Patidar V, Pareek NK, Sud KK (2009) A new substitution diffusion based image cipher using chaotic standard and logistic Maps. Commun Nonlinear SciNumerSimulat 14(7):3056–3075View ArticleGoogle Scholar
 Kumar A, Ghose MK (2011) Extended substitutiondiffusion based image cipher using chaotic standard map. Commun Nonlinear Sci Numer Simul 16(1):372–382MathSciNetView ArticleMATHGoogle Scholar
 Mohammad ABY, Jantan A (2008) A new steganography approach for image encryption exchange by using the LSB insertion. IJCSNS Inter J Comp Sci Netw Secur 8(6):247–254Google Scholar
 Nag A, Singh JP, Khan S, Ghosh S (2011) A Weighted location based LSB image steganography technique. Springer ACC, Berlin, pp 620–627Google Scholar
 Swain G, Lenka SK (2015) A Novel steganography technique by mapping words with LSB array. Inter J Signal Imaging Syst Eng Indersci 8:1–2Google Scholar
 Wu DC, Tsai WH (2003) A steganograhic method for images by pixel value differencing. Pattern Recogn Lett 24(910):1613–1626View ArticleMATHGoogle Scholar
 Zhang X, Wang S (2004) Vulnerability of pixelvalue differencing steganography to histogram analysis and modification for enhanced security. Pattern Recogn Lett 25(12):331–339View ArticleGoogle Scholar
 Chang CC, Tseng HW (2004) A steganographic method for digital images using side match. Pattern Recogn Lett 25(12):1431–1437View ArticleGoogle Scholar
 Wang R, Chen Y (2006) High payload image steganography using twoway block matching. IEEE Signal Proc Lett 13(3):161–164View ArticleGoogle Scholar
 Kumar PM, Roopa D (2007) An image steganography framework with improved tamper proofing. Asian J Inf Technol 6(10):1023–1029Google Scholar
 Provos N, Honeyman P (2003) Hide and seek: an introduction to steganography. Secur Priv Mag IEEE 1(3):32–44View ArticleGoogle Scholar
 Cheddad A et al (2010) Digital image steganography survey and analysis of current methods. Sig Process 90(3):727–752View ArticleMATHGoogle Scholar
 Ross J, Anderson F, Petitcolas AP (1998) On the limits of steganography. IEEE J Selected Areas Commun Special Issue Copyright Priv Protect 6(4):474–481Google Scholar
 Thiyagarajan P, Aghila G (2013) Reversible dynamic secure steganography for medical image using graph coloring. Health Policy Technol 2(3):151–161View ArticleGoogle Scholar
 Jain M, Lenka SK (2016) Diagonal queue medical image steganography with rabin cryptosystem. Springer Brain Inform 3(1):39–51View ArticleGoogle Scholar
 Thomas HC, Charles EL, Ronald LR, Clifford S (2001) Introduction to algorithms, 2nd edn. MIT Press and McGrawHill, Section 10.1: Stacks and queues, CambridgeMATHGoogle Scholar
 Li B et al (2011) A survey on image steganography and steganalysis. J Inform Hiding Multimed Signal Process 2(2):142–172Google Scholar
 Martin A, Sapiro G, Seroussi G (2005) Is image steganography natural. IEEE Trans Image Process 14(12):2040–2050View ArticleGoogle Scholar