103
CHAPTER IV: INTELLIGENT RANDOM IMAGE STEGANOGRAPHY
4.1. INTRODUCTION
Of the spatial domain stego methods [5, 14, 76-80, 125, 169-171], the LSB
embedding [14, 76-78, 169-171] scheme has been extensively used to hide secret data
because of its simplicity and speed of implementation, which offers a higher concealment
capacity [14, 16, 19, 47, 83, 172] and simultaneously, improved control over the quality
of the stego-image [14, 169-171]. In the LSB embedding process, raster scans [3, 5, 14,
76, 78, 125, 202] and random scans [10, 77, 81, 191-193] have been adapted to hide the
confidential data in the visited pixel. Between these two types of scan, the random scan is
preferred over the raster scan to increase the level of complexity faced by the intruders.
However, the real challenge lies in attaining a good imperceptibility of the stego-image
and sharing the secret key for retrieving the original message.
Chan et al. [169] proposed an Optimal Pixel Adjustment Process (OPAP) to
enhance the quality of the stego-image by simple LSB substitution method through a
raster scan. The OPAP tries to vary the value of Most Significant Bits (MSB) next to the
kth
bit, up to which the secret data are embedded. Yang [170] has proposed an LSB
substitution method using the raster scan to improve stego-image quality by adapting an
Inverted Pattern (IP) approach. In this technique, the secret message has been processed
prior to embedding, i.e., some secret data are inverted and some are kept unaltered. The
IP approach is believed to have a better image quality than that of OPAP. Although it
yields a higher payload and image quality, it is still of concern because the approach has
adapted the simple raster scan.
104
Provos et al. [10] have proposed a hide-and-seek software technique for the
random selection of pixels for embedding secret data, thereby generating the stego-
image. In these random approaches, all the pixels of the cover image are not used to
conceal the secret data, which in turn affects the payload and the good imperceptibility.
Tuomas Aura [77] has proposed a stego method adapting a random embedding procedure
in which a stego key and a secure hash function are used to generate a sequence of unique
pixel addresses for embedding.
It has been established that the random or the raster scan-based stego techniques
are not preferable to achieve maximum stego-image quality, minimum key length and
greater complexity against intruders. Several of the proposed stego methods have
computed stego image quality by considering a particular type of confidential data. These
data may be text or numbers or even a combination of the two, but the available stego
methods do not consider the nature of the confidential data when enhancing the quality of
the stego image.
To overcome these limitations, two types of novel adaptive random k-bit
embedding stego methods are implemented with the aim of achieving higher
imperceptibility, higher payload, optimised key length and enormous complexity against
hackers by significantly considering the nature of the confidential data. In the first
method, by fixing raster scan as the traversing path, four different forms of same
confidential data — namely, binary, inverted binary, gray and inverted gray have been
adapted for embedding. Of the four versions, the version giving the least MSE is
embedded on a row-by-row basis. In the second proposed method, four different random
walks—namely, Z scan SFC, Hilbert SFC, Zigzag SFC and Moore SFC [191-193] are
105
considered for k-bit LSB embedding. Before embedding the confidential data, the cover
image considered has been divided into an equal number of repeated smaller blocks as
discussed in Chapter 3. During the embedding procedure, the four random scans have
been tested for k-bit embedding in each smaller block; the scan, which results in the
minimum MSE and maximum PSNR for that block, has been adapted for embedding.
The optimum random walk for each block of the entire image is identified and fixed.
Consequently, the pattern of each fixed random walk has been recorded and kept as the
secret key. In this way, the nature of the text and its matching with each block for
minimum MSE and maximum PSNR has been accomplished.
4.2. ADAPTIVE RANDOM METHOD 1: ENCODED CONFIDENTIAL DATA
A schematic diagram of the proposed method is given in Fig 4.1 and 4.2. Initially
the secret data or message is encrypted using Data Encryption Standard (DES) [1], which
is a symmetric key cryptography algorithm. The cover image is split into separate rows.
The order of rows considered for embedding data is chosen using a Pseudo Random
Number Generator (PRNG) with a chosen seed. For each row, a try is made to embed
binary and inverted binary form of data, gray and the inverted gray form of data. The
encoded form of the confidential information on the selected row, which offers minimum
MSE is chosen and fixed for the same.
106
This binary / inverted binary / gray and inverted gray data pattern is stored as
Inverted Pattern Key (IPkey). Thus, on an average MSE is reduced to a greater extent.
The Stego image, IPkey and the seed will be communicated to the receiver for data
retrieval.
Figure.4.1. Block diagram for confidential data embedding.
107
4.2.1. Algorithm for random k-bit adaptive embedding
Inputs:
1. Sampled cover image C
2. Secret data bit stream M
3. Key E for encryption
Outputs:
1. Stego image (S), containing embedded secret data
2. KEY (used for recovery)
Algorithm for embedding:
Step-1 : Encrypt the secret data (M) using DES with key E
Figure.4.2. Block diagram for confidential data extraction.
108
Step-2 : Let P = length of secret data stream M (in number of bits) obtained from Step-1
Step-3 : Split the cover image C into separate rows . Let N = Total number of rows
Step-4 : Generate an array of N pseudo-random numbers (PRN )in the range [0,N-1]
where each number occurs only once. Let the seed be stored in a text file
Step-5 : Invert the bit array M to give M . Encode the bit array M using Gray Code to
give G and invert G to give G
Step-6 : Let i=1 (Here, i is the row counter)
Step-7 : Select PRNG[i]th
block and perform the following operations
A .Selective Embedding
{ a. Let r = pixel index array (for traversal)
b. For ( j = 1 to length(r) ) do (Here j is the pixel counter)
{
i. Replace k LSBs of jth
pixel of the selected block with k bits
from M to give O[i,1]
}
c. Compute MSE.
d. For ( j = 1 to length(r) ) do (Here j is the pixel counter)
{
i. Replace k LSBs of jth
pixel of the selected block with k bits
from M to give O[i,2]
}
e. Compute MSE .
f. For ( j = 1 to length(r) ) do (Here j is the pixel counter)
{
i. Replace k LSBs of jth
pixel of the selected block with k bits
from G to give O[i,3]
}
g. Compute MSEGray.
h. For ( j = 1 to length(r) ) do (here j is the pixel counter)
{
i. Replace k LSBs of jth
pixel of the selected block with k bits
from G to give O[i,4]
}
g. Compute MSEGray .
h. If MSE is greatest,
KEY[i]=”00”
Else if MSE is greatest,
KEY[i]=”01”
Else if MSEGray is greatest,
KEY[i]=”10”
Else
KEY[i]=”11”
Assign MSE[i]=Minimum MSE.
}
109
B. Choose STEG[i] as the value of O for which MSE is minimum
C. P = P - k. (Reduce length as k bits have been embedded)
D. If P>0 then assign i=i+1. Else, goto step-8 (that is check whether message is
finished)
E. If i>N then goto step-8 (check whether End of file(EOF) is reached for cover
image)
F. Goto Step-7
Step-8 : Save the array STEG as the stego image array S
Step-9 : Save S into an image file and KEY in a text file
Step-10: Communicate S, KEY and seed used to generate PRNG
Recovery process
The same PRN sequence is generated using the received seed. Using the KEY, the
pattern is identified for different rows. Recovery modules are run to recover the secret.
The result is then decrypted using DES to get the secret message back
4.2.2. Algorithm for random k-bit adaptive recovery
Inputs:
1. Stego image (S), containing embedded secret data
2. Key E for decryption, KEY in text file from embedding process
3. Seed to generate PRNG
Output:
1. Secret data bit stream M
Algorithm for extraction
Step-1 : Split the stego image S into separate rows. Let N = Total number of rows
Step-2 : Generate a array PRNG of N pseudo-random numbers in the range [0,N-1]
where each number occurs only once.
Step-3 : Let i=1 (Here, i is the row counter)
Step-4 : Select PRNG[i]th
row and perform the following operations:
A. Get Message M using retrieval
B. If KEY[i,1]=”01”
M[i]= M [i]
Else if KEY[i,1]=”10”
M[i]=MGray[i]
Else if KEY[i,1]=”11”
M[i]= MGray [i]
110
Else
M[i]=M[i]
C. Assign i= i+1 (increment row count)
D. If i>N goto step-5 else goto Step-4
Step-5: Decrypt M using DES and write it to text file as output.
4.2.3. Mathematical model for row wise, inverted pattern LSB embedding
General Formulae
a. 1’s Complement of a number
xx k )12( (4.1)
where k = number of bits
x = number to be inverted in bits
x = 1’s complement of the number
for example, take a 4 bit binary representation of a number ‘2’ [0010] as x
here k = 4 so, 2)12( 4 x
= (16-1)-2
x = 13[1101] complement of [0010] ‘2’
b. LSB embedding
Si = Ci - Ci mod 2k + mi (4.2)
where k = number of bits to be embedded
Ci = Cover Pixel
Si = Stego Pixel
mi = k – bit message block in decimal
for example, let k = 4 Ci = 16[0001000] and mi is ‘2’ [0010] as mi
Si = 16- 16 mod 24 + 2
= 16-16mod16+2 = 18
Si = 18[00010010]
c. LSB recovery
mi = Si mod 2k (4.3)
where symbols are same as equation 2
Let Si = 18[00010010]
To extract the last 4[since k=4] bits, we have
mi = 18 mod 24 = 18 mod 16 = 2 [0010]
111
d. Four flavours of secret data
a. Plain data – m(i,j)
b. Inverted data - m (i, j)
c. Gray Coded data – g(i,j)
d. Inverted Gray Coded data – g'(i,j)
e. R rows
In each cover image, there are ‘R’ number of rows, each of same length D, where
R× D = Mc×Nc (4.4)
Where Mc×Nc are the dimensions of the cover image
Each row is denoted as ri , where i N and i R
i.e., Set of rows = {ri, i N and i R}
Each row ri is in turn a matrix, denoted as
ri = [ri1, ri2,……., riD] where i N and i R (4.5)
In other words, each row has D pixels.
f. Message data (secret) to be embedded [k bit length]
m(i, j) , where i = row identifier
j = Pixel inside a row
The complement of m (i, j) is denoted as m (i, j)
g. Embedding procedure
Let the cover image be C with Mc×Nc pixels.
Let it be divided into R blocks named ri, ri,……., riR , each having equal number of
pixels D
R x D = Mc×Nc (4.6)
Also , ri = [ri1, ri2,……., riD], where i N and i R
Let ‘k’ be the number of LSBs to be replaced in cover pixels
Let the secret message be a matrix M, where each elements of M is made up of k
bits
Then we can denote the message to be embedded in the ith
row, jth
pixel as m(i, j)
Let s(i, j) denote the stego value of jth
pixel in the ith
row, when message m(i, j) is
embedded in cover pixel rij.
Alternatively m (i, j) is embedded instead of m(i, j) then
112
the stego pixel is denoted as s (i, j) s(i, j) = rij-rijmod2
k+ m(i, j)(Applying equation 2) and (4.7)
s (i, j) = rij-rijmod2k+ m (i, j)( Applying equation 1)
sg(i,j) = rij-rijmod2k+ g(i, j)
sg'(i, j) = rij-rijmod2k+ g'(i, j)
If we consider R blocks of stego image as s1,s2,…………..sR
Then,
si = s(i) or s (i) or sg(i) or sg'(i) where MSE is minimum and s(i) = { s(i, j) , j N
and j D }
key matrix is denoted as
K = [K1,K2,……..KR]
Where Ki is chosen based on the following conditions
00 – if m(i,j) is embedded
01 – if m ʹ(i, j) is embedded
10 – if g(i,j) is embedded
11 – if gʹ (i,j) is embedded
h. Retrieval procedure
Key matrix is denoted as
K = [K1,K2,……..KR]
The preliminary, unprocessed message mu (i,j) can be extracted from pixels in
stego image as :-
mu (i,j) = s(i,j) mod 2k from equation (3)
the actual message m(i,j) can be extracted by processing mu (i,j) as follows
m(i,j) is chosen from the following conditions based on Ki value.
mu(i,j) - if corresponding Ki=00
(2k – 1) – mu(i,j) , if Ki =01
g-1(i,j) , if Ki=10 (if g-1 denotes inverse of gray code function)
g'-1(i,j) = (2k – 1) – g-1(i,j) ( if Ki=11 )
(if g'-1 denotes inverse of inverted gray code function)
4.2.4. Worst case MSE
The worst case MSE for a block with D pixels is defined as
MSEw (i) =
D
jD 1
1(2
k – 1)
2
= D
-1 [D (2
k – 1)
2 ]
113
= (2k – 1)
2 (4.8)
MSE for ith
row, when m(i) (actual data) is embedded, is given as
D
j
jicjisDiMSE1
21 )),(),(()(
When inverted data m (i) is embedded, then, MSE for the same parameters is
denoted as
D
j
jicjisDiMSE1
21 )),(),(()(
When gray coded data g(i) is embedded, then MSE for the same parameter is
denoted as
D
j
gg jicjisDiMSE1
21 )),(),(()(
When inverse gray coded data gʹ(i) is embedded, then MSE for the same
parameter is denoted as
D
j
g jicjisDigMSE1
21 )),(),(()(
According to the embedding procedure, minimum MSE is chosen. The minimum
MSE for a row is defined as
MSEmin(i) = min { MSE(i) , )(iMSE , MSEg(i) , )(iMSEg }
MSE(i) + (i) + MSEg(i) + g(i)
= D-1
D
j
jicjis1
2)),(),(( + D-1
D
j
jicjis1
2)),(),((
+ D-1
D
j
g jicjis1
2)),(),(( + D-1
D
j
g jicjis1
2)),(),((
= D-1
D
j 1
(2k – 1)
2 ( since sum of all s , s , gs and gs components)
= (2k – 1)
2 ) (as given in the IP paper)
114
= (2k – 1)
2 = MSEw (i) (4.9)
We know that, if any n numbers x1, x2, x3, x4,…, xn are added up to produce a total
T, then,
Min{ x1, x2, x3, x4,…, xn } (T / n) (4.10)
Thus, using (4.10) in (4.9), we get
MSEmin(i) (1/2) MSEw (i) for all iR
Thus, one can get MSE for any block to be less than or equal to ½ of the worst
case MSE.
4.2.5. Results and discussion
In this implementation Lena, Baboon, Gandhi and Temple of 256 × 256 pixel
Images have been considered by varying k = 1, 2, 3 and 4 bit LSB embedding, then stego
image quality has been improved with OPAP. The effectiveness of the proposed system
has been estimated by computing the MSE and PSNR of the Stego object with cover
object. The cover image is shown in Fig 4.3. (a-d) and the corresponding stego images for
k=1 in Fig. 4.3. (e-h), k=2 in Fig .4.3. (i-l), k=3 in Fig. 4.3. (m-p), k=4 in Fig. 4.3(q-t) and
the proposed stego results in Fig. 4.3. (u-z, aa, bb). For k=4, MSE and PSNR values and
its comparative results are shown in Fig. 4.4 and Fig. 4.5 respectively.
Figure 4.3. Cover Images: (a)Lena, (b)Baboon, (c)Gandhi and (d)Temple
115
Figure 4.3. For k=1 Stego Images: (e)Lena, (f)Baboon, (g)Gandhi and (h)Temple
Figure 4.3. For k=2 Stego Images: (i) Lena, (j) Baboon, (k) Gandhi and (l) Temple
Figure 4.3. For k=3 Stego Images: (m) Lena, (n) Baboon, (o) Gandhi and (p) Temple
Figure 4.3 For k=4 Stego Images : (q) Lena, (r) Baboon, (s) Gandhi and (t) Temple
116
Figure 4.3. For k=4 Proposed 256 Stego Images: (u) Lena, (v) Baboon, (w) Gandhi and
(x) Temple
Figure 4.3. For k=4 Proposed 64 Stego Images: (y) Lena, (z) Baboon, (aa) Gandhi and
(bb) Temple
To compare the implemented methodology, the case of simple LSB embedding
for full embedding capacities of 256×256 bits for k=1, 256×256×2 bits for k=2 and so on
are considered. While using secret data in binary format alone for k=4 the MSE is 36.60,
36.90 for inverted binary, 41.17 for gray, 40.88 for inverted gray and 34.84 for the
implemented method. The MSE of the present method by adapting quantum of 64 pixels
further reduces it to 32.81. These values are shown in Tables 4.1, 4.2 and 4.3. The
corresponding PSNR value of the implemented method has been improved to 35.03826
dB, which is better than Chan & cheng [169] value of 34.8 dB. The corresponding MSE
value of the proposed method is reduced to 20.38, which is better than Chan & cheng
2004[169] value of 21.6 and Yang 2008[170]. Random Image steganography employing
this method is successfully implemented using a novel encoding method in which various
117
bit representations namely binary, inverted binary, gray and inverted gray are employed.
Here the secret data, encoded in all the four representations is embedded in a row of the
cover image and the MSE is calculated exclusively for each of the four encoding bit
representations. Of the many representations the one that yields the least MSE is adapted
for the respective row. In this way all the four forms of representation are used in each
row and the form resulting in the least MSE and PSNR is espoused and the results are
given in Fig. 4.4 and 4.5.
118
Table 4.1 Comparative MSE values for full embedding capacity on Lena & Baboon by splitting it into 256 pixels as one block.
MSE for Simple LSB Substitution Lena PSNR for Simple LSB Substitution Lena
k - bit embedding 1 2 3 4 k - bit embedding 1 2 3 4
Binary 0.4971 2.2100 9.0421 36.6052 Binary 51.1663 44.6867 38.5680 32.49537
Inv.Binary 0.5028 2.1987 8.9769 36.9059 Inv.Binary 51.1159 44.7089 38.5995 32.45985
Gray 0.4990 2.5090 9.8571 41.1694 Gray 51.1497 44.1357 38.1932 31.98505
Inv.Gray 0.5009 2.4888 9.8673 40.8816 Inv.Gray 51.1325 44.1707 38.1888 32.01552
Best 0.4655 2.0820 8.5782 34.8433 Best 51.4514 44.9459 38.7968 32.70961
MSE After OPAP Process PSNR After OPAP Process
Binary 0.4971 1.4952 5.5365 21.5915 Binary 51.1663 46.3837 40.6984 34.78797
Inv.Binary 0.5028 1.5001 5.4632 21.6549 Inv.Binary 51.1159 46.3693 40.7562 34.77524
Gray 0.4990 1.5052 5.5056 21.6138 Gray 51.1497 46.3546 40.7227 34.78349
Inv.Gray 0.5009 1.4990 5.4984 21.5549 Inv.Gray 51.1325 46.3727 40.7284 34.79533
Best 0.4655 1.4584 5.3683 20.9985 Best 51.4514 46.4918 40.8324 34.9089
MSE for Simple LSB Substitution Baboon PSNR for Simple LSB Substitution Baboon
Binary 0.5020 2.1985 9.1081 36.1049 Binary 51.1236 44.7094 38.5365 32.55514
Inv.Binary 0.4979 2.2133 9.0564 36.0211 Inv.Binary 51.1586 44.6802 38.5612 32.56523
Gray 0.5001 2.5158 9.9620 40.3310 Gray 51.1393 44.1239 38.1473 32.07441
Inv.Gray 0.4998 2.4851 9.9079 40.3350 Inv.Gray 51.1428 44.1773 38.1709 32.07398
Best 0.4674 2.0909 8.61828 34.2822 Best 51.4332 44.9273 38.7765 32.78011
MSE After OPAP Process Baboon PSNR After OPAP Process Baboon
Binary 0.5020 1.4979 5.5380 21.4848 Binary 51.1236 46.3757 40.6972 34.80949
Inv.Binary 0.4979 1.4982 5.4776 21.4747 Inv.Binary 51.1586 46.3748 40.7449 34.81152
Gray 0.5001 1.5092 5.5252 21.5268 Gray 51.1393 46.3431 40.7072 34.80099
Inv.Gray 0.4998 1.4937 5.4804 21.4731 Inv.Gray 51.1428 46.3879 40.7426 34.81184
Best 0.4674 1.4599 5.3741 20.9741 Best 51.4332 46.4873 40.8277 34.91396
119
Table 4.2 Comparative MSE values for full embedding capacity on Lena & Baboon by splitting it into 64 pixels as one block.
MSE for Simple LSB Substitution Lena Image PSNR for Simple LSB Substitution Lena Image in dB
k - bit embedding 1 Bit 2 Bit 3 Bit 4 Bit k - bit embedding 1 Bit 2 Bit 3 Bit 4 Bit
Binary 0.4971 2.2100 9.0421 36.6052 Binary 51.1663 44.6867 38.5680 32.4953
Inv.Binary 0.5028 2.1987 8.9769 36.9059 Inv.Binary 51.1159 44.7089 38.5995 32.4598
Gray 0.4990 2.5090 9.8571 41.1694 Gray 51.1497 44.1357 38.1932 31.9850
Inv.Gray 0.5009 2.4888 9.8673 40.8816 Inv.Gray 51.1325 44.1707 38.1888 32.0155
Best 0.4331 1.9493 8.0310 32.8100 Best 51.7645 45.2319 39.0830 32.9707
MSE After OPAP Process Lena Image PSNR After OPAP Process in dB Lena Image
Binary 0.4971 1.4952 5.5365 21.5915 Binary 51.1663 46.3837 40.6984 34.7879
Inv.Binary 0.5028 1.5001 5.4632 21.6549 Inv.Binary 51.1159 46.3693 40.7562 34.7752
Gray 0.4990 1.5052 5.5056 21.6138 Gray 51.1497 46.3546 40.7227 34.7834
Inv.Gray 0.5009 1.4990 5.4984 21.5549 Inv.Gray 51.1325 46.3727 40.7284 34.7953
Best 0.4331 1.4091 5.2095 20.3823 Best 51.7645 46.6411 40.9628 35.0382
MSE for Simple LSB Substitution Baboon Image PSNR for Simple LSB Substitution Baboon Image in dB
Binary 0.4997 2.1849 9.0795
36.0596 Binary 51.1440 44.7365 38.5502 32.5606
Inv.Binary 0.5003 2.2141 9.0668 35.8387 Inv.Binary 51.1382 44.6787 38.5562 32.5873
Gray 0.4999 2.4795 9.8695 40.5180 Gray 51.1418 44.1871 38.1878 32.0543
Inv.Gray 0.5001 2.5086 9.9822 39.9203 Inv.Gray 51.1404 44.1365 38.1385 32.1189
Best 0.4356 1.9426 8.0661 32.1796 Best 51.7403 45.2469 39.0642 33.0550
MSE After OPAP Process Baboon Image PSNR After OPAP Process Baboon Image
Binary 0.4997 1.4990 5.5185
21.5684 Binary 51.1440 46.3728 40.7126 34.7926
Inv.Binary 0.5003 1.5061 5.4880 21.3119 Inv.Binary 51.1382 46.3522 40.7367 34.8446
Gray 0.4999 1.4939 5.4679 21.5678 Gray 51.1418 46.3876 40.7526 34.7927
Inv.Gray 0.5001 1.5041 5.5061 21.4189 Inv.Gray 51.1404 46.3581 40.7223 34.8228
Best 0.4356 1.4162 5.1879 20.2704 Best 51.7403 46.6194 40.9809 35.0622
120
Table 4.3 Comparison of MSE values with other methods for full embedding capacity in Lena, Baboon, Gandhi and Temple
MSE for Lena Image MSE for Baboon Image
k - bit embedding 1 2 3 4 k - bit embedding 1 2 3 4
Simple LSB 0.4971 2.2100 9.0421 36.6052 Simple LSB 0.4997 2.1849 9.1081 36.1049
Best 0.4655 1.9493 8.0310 32.8100 Best 0.4674 1.9426 8.0661 32.1796
Chan,& Cheng [169] 0.4971 1.4952 5.5365 21.5915 Chan,& Cheng [169] 0.4674 1.4979 5.5380 21.4731
Thien, & Lin, [14] 0.5009 1.4990 5.4984 21.5549 Thien, & Lin, [14] 0.4674 1.4989 5.5392 21.4849
Yang, method [170] 0.4655 1.4942 5.4370 20.9467 Yang, method [170] 0.4674 1.4952 5.4381 20.9991
Proposed[*256] 0.4655 1.4585 5.3683 20.9985 Proposed[*256] 0.4674 1.4599 5.3741 20.9741
Proposed[*64] 0.4331 1.4091 5.2095 20.3823 Proposed[*64] 0.4356 1.4162 5.1879 20.2704
MSE for Gandhi Image MSE for Temple Image
Simple LSB 0.5001 2.1925 9.0976 35.9473 Simple LSB 0.5005 2.2238 8.9121 36.4952
Best 0.4429 2.0774 8.6089 34.2189 Best 0.4649 2.0845 8.4842 34.4149
Chan,& Cheng [169] 0.4989 1.4957 5.5090 21.4870 Chan,& Cheng [169] 0.4649 1.5027 5.4848 21.5683
Thien, & Lin, [14] 0.4999 1.4984 5.5134 21.66132 Thien, & Lin, [14] 0.4649 1.5042 5.5152 21.6500
Yang, method [170] 0.4989 1.4870 5.4663 21.4627 Yang, method [170] 0.4649 1.5009 5.4839 21.4678
Proposed[*256] 0.4670 1.4671 5.3765 20.9625 Proposed[*256] 0.4649 1.4507 5.3470 21.0672
Proposed[*64] 0.4329 1.4140 5.2271 20.5736 Proposed[*64] 0.4354 1.4205 5.1832 20.4412
*256 - 256 pixels as one block, *64 - 64 pixels as one block.
121
Finally a key is formulated using a code to depict the bit representation format
employed in each row which again is arcane thereby protecting the stego image from
malicious aggressors. While considering an image of dimensions 256 × 256, key bits per
row is 2. Therefore, in order to account for 256 rows, we get 256 × 2 = 512 bits. These
512 bits of data form a secret key array. Thus, we can define key-to-data ratio as 512 /
Figure 4.4. Comparative MSE values for full embedding capacity on Lena.
Figure 4.5. Comparative PSNR values for full embedding capacity on Lena.
122
(256 × 256×8) = 512 / (65536×8) = 0.00098 = 0.098%. Also one more experiment has
been carried out to improve the quality of the stego image by splitting each row into 4
quantum units of 64 pixels. The results are encouraging with slight increase in the key
length. Since embedding depends upon the Least Mean Square Error, which is
dynamically determined by the combination of cover image pixels and secret data bits,
any attack to recover the data without using the secret key becomes impossible.
4.2.6. Complexity analysis
The DES cryptography system introduces a complexity of 264
For 256*256 pixel image, total number of rows will be 256
These 256 rows can be selected in a random manner in 256! ways
In each row one embedding technique out of four is chosen
So total complexity in this case will be 264
*256!* 4
which reveals the firmness of the proposed stego system against hackers
4.3. ADAPTIVE RANDOM METHOD 2: SFC FOR ADAPTIVE RANDOM
IMAGE STEGANOGRAPHY
For implementing adaptive random k-bit embedding, four different cover images
of 256 × 256 pixels of gray levels were selected and are shown in Fig. 4.6(a-d). Before
considering the entire cover image for confidential bit embedding, each cover image was
divided into multiple blocks of 8 × 8 pixels to cover the entire 28 × 2
8 pixels.
123
Figure 4.6 Selected cover images: (a) Lena, (b) Baboon, (c) Aeroplane, and (d) Gandhi.
The encrypted confidential message was initially embedded by adapting the
selected four random traversing paths—namely Z scan SFC, Hilbert SFC, Zigzag SFC
and Moore SFC—in the 8 × 8 block chosen using PRNG. In an 8 × 8 block for each
traversing path, the path that provides minimum MSE and maximum PSNR has been
identified, and the same random path is fixed for the final embedding in that particular
block.
Because the four random walks—Z scan SFC, Hilbert SFC, Zigzag SFC and
Moore SFC—are allotted the pattern keys 00, 01, 10 and 11, respectively, a particular
pattern key will be fixed for each block based on the best walk for that particular block.
In this way, all the 28 × 2
8 pixels of the entire cover have been considered to achieve full
embedding capacity. In the case of full embedding capacity, the total key size has been
estimated to be 2,048. The same procedure has been performed by considering the
fundamental block size as 4 × 4 pixels as well. For each 8 × 8 block of the cover, one can
embed a maximum of 64 bits. Therefore, for k = 1 bit embedding, 65,536 bits can be
embedded. For k = 2 bits, 3 bits and 4 bits per pixel embedding, the maximum number of
possible bits are 1,31,072, 1,96,608 and 2,62,144, respectively. However, this limit on the
maximum capacity will vary based on the total number of key bits to be embedded in the
124
image along with the confidential data. For k = 4 bit embedding, the number of pixels
occupied by the key in the cover image is 0.98% of the number of those occupied by the
confidential data is 99.02%.
The four random walks adapted to embed the encrypted confidential data for 8 × 8
pixels are shown in Figs. 4.7(a-d).
Figure 4.7. (a) Z scan SFC, (b) Hilbert SFC, (c) Zigzag SFC, and (d) Moore SFC.
4.3.1. Algorithm for random k-bit adaptive embedding process
Inputs:
1. Cover image C
2. Secret data bit stream M
Outputs:
1. Bits of M are embedded into C to form a stego-image S
2. Key (Used for recovery)
Embedding algorithm
Step-1: Encrypt the secret data (M) using DES
Step-2: Let P = length of secret data stream M (in number of bits)
Step-3: Split the cover image C into 8 × 8 or 4 × 4 blocks. Let N = the total number of
blocks
Step-4: Generate PRNG (where the total number should be equal to N), which
corresponds to each random block
125
Step-5: Invert the bit array M to obtain M
Step-6: Let i=1 (here, i is the block counter)
Step-7: Select PRN[i]th
block and perform the following operations
A. For (CC = 1 to 4) do (here, CC identifies the random path)
{
a. Let r = pixel index array defined by the value of CC (for traversal)
b. For (j = 1 to length(r)) do (here, j is the pixel counter)
{
i. Replace k LSBs of the jth
pixel of the selected block with k bits from M to
obtain O[i,CC,1]
}
c. Compute MSE(CC)
d. For (j = 1 to length(r)) do (here, j is the pixel counter)
{
i. Replace k LSBs of jth
pixel of the selected block with k bits from M to obtain
O[i,CC,2]
}
e. Compute MSE(CC )
f. If MSE(CC) < MSE( CC ), then KEY[i,1]=0, else KEY[i,1]=1
g. Assign MSE[i,CC]=minimum MSE
}
B. Assign X = value of CC, for which MSE is the minimum.
C. Choose STEG[i] as the value of O, for which MSE is the minimum.
D. Assign the value of KEY[i,2] and KEY[i,3] based on the following table.
126
X KEY[i,2] KEY[i,3]
1 0 0
2 0 1
3 1 0
4 1 1
E. P = P - k (remaining length after k-bit embedding)
F. If P>0, then assign i=i+1; else, go to step-8 (to check whether M has finished)
G. If i>N, then go to Step-8 (to check EOF for cover image)
H. Go to Step-7
Step-8: Call the OPAP module on STEG
Step-9: Save the array STEG as the stego-image array S
Step-10: Save S into an image file and KEY in a text file
Step-11: Communicate S and KEY
4.3.2. Algorithm for secret data recovery process
Inputs:
1. Stego-image (S), containing embedded secret data
2. Key
Output:
1. Secret data bit stream M
Extraction algorithm
Step-1: Split the stego-image S into 8 × 8 or 4 × 4 blocks. Let N = the total number of
blocks
Step-2: Generate pseudo-random Number (PRN) (used in the embedding process), which
Corresponds to each random block
Step-3: Let i=1 (here, i is the block counter)
Step-4: Select PRN[i] th
block and perform the following operations:
127
A. Assign the value of X from the value of KEY[i,2]and KEY[i,3] according to
the following table
X KEY[i,2] KEY[i,3]
1 0 0
2 0 1
3 1 0
4 1 1
B. Get Message M using the retrieval module corresponding to CC=X.
C. If KEY[i,1]=1, then M[i]= M .
D. Assign i= i+1 (increment block count).
E. If i>N, go to step-5; else, go to Step-4.
Step-5: Decrypt M using DES and write it to the text file as output.
To prove the significance and effectiveness of the proposed AR approach in
enhancing the quality of the stego-image, the inverted pattern technique [170] has also
been implemented by employing the present method in all the cover images. The
combination of the proposed adaptive random and the IP [170] approach has been titled
the Adaptive Random Inverted Pattern (ARIP) method. The effectiveness of the proposed
stego process has been studied by estimating the PSNR and MSE.
4.3.3. Mathematical model for 4 traversing path, inverted pattern LSB embedding
General Formulae:
(a) Four traversal paths
Each path denoted by a different order of traversal t(p) where p{1,2,3,4}
(b) B blocks
In each cover image, there are ‘B’ number of blocks, each of same dimension
Mb×Nb , where
128
B× Mb×Nb = Mc×Nc (4.11)
where the Mc×Nc are dimensions of the cover image
Number of block = B
If we assume D = Mb×Nb (4.12)
Each block is denoted as bi , where i N and i B
i.e., Set of blocks = {bi, i N and i B }
(c) Each block bi is in turn a matrix, denoted as
bi = [bi1, bi2,……., biD] where i N and i B (4.13)
In other words, each block has D pixels.
(d) Message data (secret) to be embedded [k bit length]
When traversal path t(p) is followed is given by
m(i, j, p) , where i = Block identifier
j = Pixel inside a block
p = traversal path identifier
The complement of m (i, j, p) is denoted as m (i, j, p)
(f) Embedding procedure
Let the cover image be C with Mc×Nc pixels.
Let it be divided into B blocks named bi, bi,……., biB , each having equal number of
pixels D = Mb×Nb so that
B×Mb×Nb = Mc×Nc (4.14)
BD = Mc×Nc
Also , bi = [bi1, bi2,……., biD], where i N and i B
Let there be Four traversal paths t(p), where 1 p 4. Each t(p) is a row matrix
with D elements
Elements of t(p) are denoted as t(p,j), where j N and j D
b1 b2
bB
129
Also t(p,j) [1,D]
Elements should not repeat in t(p). so
t(p,j) t(p,h), where p=constant and j h , where h N and h D
Let ‘k’ be the number of LSBs to be replaced in cover pixels
Let the secret message be a matrix M, where each elements of M is made up of k
bits.
Then we can denote the message to be embedded in the ith
block, jth
pixel using
traversal path t(p) as m(i, j, p)
Let s(i, j, p) denote the stego value of jth
pixel in the ith
block, using traversal path
t(p), when message m(i, j, p) is embedded in cover pixel bij
Alternatively m (i, j, p) is embedded instead of m(i, j, p) then
the stego pixel is denoted as s (i, j, p)
s(i, j, p) = bij-bijmod2k+ m(i, j, p)(Applying equation 2) and (4.15)
s (i, j, p) = bij-bijmod2k+ m (i, j, p)(by Applying equation 1)
Then this could be modified as follows
s (i, j, p) = bij-bijmod2k + (2
k-1)- m(i, j, p) (4.16)
If we consider B blocks of stego image as s1,s2,…………..sB , Then,
si = s(i,p) or s (i, p) where MSE is minimum and s(i,p) = { s(i, j, p) , j N and j
D }
key matrix is denoted as
K = [K1,K2,……..KB]
Where each Ki =(yi , zi)
yi = p [traversal path chosen]
zi =
][),,(,1
][),,(,0
ssageinvertedmejallforembeddedispjimif
messagejallforembeddedispjimif
(g) Retrieval procedure
The preliminary, unprocessed message mu (i,j) can be extracted from pixels in
stego image as :-
mu (i,j) = s(i.j,yi) mod 2k
from equation 3
the actual message m(i,j) can be extracted by processing mu (i,j) is as follows:-
m(i,j) =
1),,()12(
0),,(
iu
k
iu
zifjim
zifjim
4.3.4. Results and discussion
The proposed AR k-bit embedding approach-based stego process has been
implemented in four different cover images. The quality of the stego-images has been
130
evaluated, and the results are presented in Table 4.4. Initially, the stego-image quality
was estimated by adapting the Z scan SFC, Hilbert SFC, Zigzag SFC and Moore SFC
scans individually for k-bit embedding by considering all the 8 × 8 blocks of a cover
image. To prove the enhanced quality of the stego-image produced by the AR approach,
the estimated MSE and PSNR values of the image are compared with the results of the
individual random traversing path approaches.
From Table 4.4, it can be observed that the MSE and PSNR values produced by
the AR approach for all four cover images are better than the values obtained through the
individual random traversing path approaches. This significant enhancement is due to the
adaptive selection of a particular random traversing path for a particular block, which is,
in turn, fixed based on the nature of the confidential message. Because the cover image
has a total of 1,024 blocks of 8 × 8 pixels, the required key size would be 2,048 bits. A
similar procedure has been adopted that considers the fundamental block size to be 4 × 4
pixels. From the results, it is obvious that the quality of the stego cover is still improved
with one limitation on the key size, which is 8,192 bits. Even though the key size is
considerably greater, this AR approach offers good security along with enhanced
imperceptibility.
131
Table 4.4. Comparison of computed MSE and PSNR values of AR approach with the individual random traversing path LSB approach. C
ov
er
TM K=1 K=2 K=3 K=4
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
Len
a
ZS 0.5001 51.1221 0.4985 51.1541 2.5846 44.0068 2.5752 44.0225 10.2769 38.0121 10.2825 38.0097 40.3637 32.0708 40.1217 31.7650
HS 0.5000 51.1010 0.4980 51.1583 2.5761 44.0210 2.5695 44.0321 10.2881 38.0074 10.3119 37.9974 40.4174 32.0651 40.3393 31.7757
ZigS 0.5000 51.1414 0.4991 51.1488 2.5905 43.9969 2.5732 44.0259 10.2506 38.0233 10.2717 38.0143 40.2424 32.0839 40.0531 31.8043
MS 0.5016 51.1371 0.4994 51.1458 2.5829 44.0097 2.5906 43.9967 10.2904 38.0064 10.2890 38.0070 40.4684 32.0596 39.8514 31.7896
AR 0.4217 51.8799 0.4519 51.5794 2.1903 44.7256 2.1312 44.4194 8.8498 38.6614 9.4507 38.3761 34.7583 32.7202 36.6366 32.2295
Bab
oo
n
ZS 0.5031 51.1134 0.5009 51.1332 2.5699 44.0316 2.5691 44.0329 10.3083 37.9989 10.3036 38.0008 39.7817 32.1339 39.4619 32.1690
HS 0.5023 51.1206 0.5002 51.1388 2.5644 44.0408 2.5635 44.0423 10.2998 38.0025 10.3197 37.9941 39.4745 32.1676 39.4874 32.1662
ZigS 0.5028 51.1161 0.5006 51.1354 2.5778 44.0181 2.5599 44.0485 10.3036 38.0008 10.2898 38.0067 39.6620 32.1470 39.4315 32.1723
MS 0.5016 51.1272 0.5018 51.1253 2.5657 44.0386 2.5819 44.0112 10.3421 37.9847 10.2814 38.0102 39.2557 32.1917 39.6129 32.1524
AR 0.4231 51.8662 0.4548 51.5521 2.1775 44.7510 2.3483 44.4232 8.8178 38.6771 9.4358 38.3830 33.3436 32.9006 35.9628 32.5722
Pla
ne
ZS 0.4998 51.1420 0.4990 51.1492 2.5497 44.0658 2.5647 44.0403 10.2024 38.0437 10.1728 38.0563 40.1222 32.0969 40.2439 32.0838
HS 0.4986 51.1526 0.4975 51.1624 2.5562 44.0547 2.5413 44.0801 10.2066 38.0419 10.2211 38.0358 39.9365 32.1171 40.3492 32.0724
ZigS 0.4979 51.1593 0.5012 51.1306 2.5510 44.0635 2.5558 44.0554 10.2099 38.0405 10.1610 38.0614 40.1795 32.0907 40.2495 32.0831
MS 0.5004 51.1370 0.4993 51.1468 2.5743 44.0240 2.5703 44.0308 10.2075 38.0415 10.2435 38.0263 40.1770 32.0910 40.4328 32.0634
AR 0.4204 51.8936 0.4510 51.5884 2.1665 44.7732 2.3382 44.4419 8.81054 38.6807 9.3968 38.4009 34.8361 32.7105 37.1580 32.4302
Mah
atm
a G
and
hi
ZS 0.4985 51.1535 0.4973 51.1642 2.5401 44.0822 2.5330 44.0943 10.2842 38.0090 10.2954 38.0043 39.4977 32.1650 39.3415 32.1822
HS 0.4968 51.1684 0.4969 51.1676 2.5469 44.0705 2.5301 44.0993 10.2963 38.0039 10.3148 37.9961 39.3717 32.1789 39.0898 32.2101
ZigS 0.4968 51.1682 0.4967 51.1698 2.5413 44.0801 2.5328 44.0947 10.3121 37.9973 10.2633 38.0179 39.2947 32.1874 39.2182 32.1959
MS 0.4986 51.1530 0.4964 51.1719 2.5287 44.1017 2.5254 44.1074 10.2449 38.0256 10.3244 37.9921 39.1976 32.1982 39.0033 32.2197
AR 0.4228 51.8686 0.4529 51.5700 2.1631 44.7799 2.3183 44.4789 8.8857 38.6438 9.4763 38.3643 33.9351 32.8243 35.7446 32.5986
ZS - Z scan SFC, HS - Hilbert SFC, ZigS - Zigzag SFC, MS - Moore SFC and AR - Adaptive Random
132
The IP scheme of a 1,024 key size and the 8 × 8 block-based ARIP method has
been used to provide a common platform for fair comparison. Similarly, the 4,096 key
size of the IP approach is compared with the 4 × 4 block-based ARIP method. The stego-
images for the ARIP case with k=4-bit full embedding capacity are shown in Fig. 4.8(a-
d). The maximum embedding capacity of ARIP includes both the confidential data and
the respective key. Because the key is embedded in the same cover with the confidential
message, there is a reduction of 0.98% of the pixels available for embedding the
confidential data. This can be avoided by adapting the regular procedure of the stego
technique, i.e., sending the key through the Key Distribution Centre (KDC) [1].
Figure 4.8. Stego images (a) Lena, (b) Baboon, (c) Aeroplane, and (d) Gandhi.
Even though the security level is increased manifold in the AR approach due to
the multi-type random traversing paths, the estimated PSNR value is found to be lesser
than that of the IP approach. Therefore, the IP and AR are combined to form the ARIP
method. As presented in Table 4.5, the estimated MSE and PSNR values of the ARIP
approach for all four cover images are observed to be better than the values of the simple
IP [179] and OPAP [169] approaches as given in Table 4.6.
133
Table 4.5. Comparison of computed MSE and PSNR values of ARIP approach with IP LSB and OPAP approaches
Co
ver
Traversing
Method
K=1 K=2 K=3 K=4
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
MSE
4×4
PSNR
4×4
MSE
8×8
PSNR
8×8
Len
a
LSB 0.5018 51.1251 2.5833 44.0091 10.2066 38.0420 39.8895 32.1222
OPAP[169]
Thien[14]
0.5018
0.5020
51.1251
51.1239
1.5012
1.5138
46.3663
46.3301
5.4930
5.5046
40.7327
40.7235
21.5482
21.6129
34.7967
34.7837
IP[170] 0.4002 52.1080 0.4481 51.6171 1.4964 46.3803 1.4942 46.3868 5.4370 40.7772 5.4845 40.7395 20.8657 34.9364 20.9872 34.9113
ARIP 0.3873 52.2503 0.4346 51.7499 1.3038 46.9787 1.4044 46.6559 5.0158 41.1274 5.2182 40.9556 17.2816 35.7550 19.7523 35.1746
Bab
oon
LSB 0.4996 51.1446 2.5755 44.0221 10.3604 37.9770 39.6373 32.1498
OPAP[169]
Thien[14]
0.4996
0.4994
51.1446
51.1463
1.4939
1.4951
46.3876
46.3841
5.4752
5.5112
40.7468
40.7183
21.4698
21.4437
34.8125
34.8178
IP[170] 0.4019 52.0896 0.4538 51.5622 1.4392 46.5496 1.4768 46.4376 5.4291 40.7835 5.4522 40.7651 21.5010 34.8062 21.5295 34.8005
ARIP 0.3877 52.2458 0.4456 51.6414 1.2936 47.0128 1.3931 46.6910 5.0163 41.1270 5.1871 40.9816 19.4786 35.2352 20.3934 35.0359
Pla
ne
LSB 0.5007 51.1350 2.5791 44.0161 9.9168 38.1671 39.1154 32.2073
OPAP[169]
Thien[14]
0.5007
0.5009
51.1350
51.1333
1.5034
1.4999
46.3601
46.3701
5.3985
5.4019
40.8081
40.8053
20.6223
20.8175
34.9874
34.9465
IP[170] 0.4002 52.1080 0.5004 51.1376 1.4334 46.5671 1.4931 46.3899 5.0859 41.0671 5.2511 40.9283 19.3970 35.2535 20.2644 35.0635
ARIP 0.3851 52.2751 0.4447 51.6501 1.3075 46.9664 1.3874 46.7088 5.0473 41.1002 5.1486 41.0139 17.0235 35.8203 18.2774 35.5117
Mah
atm
a
Gan
dh
i
LSB 0.4975 51.1629 2.5375 44.0868 10.2772 38.0121 39.3030 32.1865
OPAP[169]
Thien[14]
0.4975
0.4978
51.1629
51.1603
1.4975
1.5003
46.3773
46.3690
5.5135
5.5192
40.7165
40.7120
21.3533
21.3574
34.8362
34.8353
IP[170] 0.3904 52.2157 0.4964 51.1725 1.5017 46.3650 1.4500 46.5171 5.5250 40.7075 5.4716 40.7496 20.1310 35.0922 21.1767 34.8722
ARIP 0.3789 52.3456 0.4567 51.5345 1.3078 46.9654 1.3992 46.6720 5.0403 41.1062 5.2378 40.9393 17.2794 35.7555 19.0275 35.3370
134
This performance is further improved in the case of 4 × 4 block pixels, in addition to the
larger key size. In the ARIP approach, the required key size is 3 bits per one 8 × 8 block,
i.e., 2 bits for the selected random traversing path and one bit for the IP approach; hence,
the total key size is 3,072 bits. With the exception of this bottleneck, the ARIP method
has shown dominance over the existing random approaches in enhancing stego-image
quality and complexity against hackers. To substantiate the efficiency of the proposed
methodology, six more digital images have been considered in the experiments. Their
results are compared with the other experimental results and are provided in Table 4.6.
From this comparison, it is clear that the estimated MSE values of all six stego
images for the proposed ARIP technique dominate those of the existing methods [14,
169, 170]. In particular, the estimated MSE for ARIP is reduced to less than half of the
Table 4.6. Comparison of computed MSE values of AR, ARIP methods with other existing methods
Cover
256×256
MSE for k = 4 bit embedding
ZS HS ZigS MS LSB AR OPAP[169] Thien[14] IP[170] ARIP
8×8
ARIP
4×4
Pepper 39.3518 39.5976 39.5413 39.5139 39.4718 35.9319 21.4585 21.4585 20.9762 19.0774 18.0245
Tiffany 40.3479 40.3372 40.2697 40.4028 40.3527 37.1582 21.5122 21.5122 20.9487 19.1435 17.6528
Boat 40.0237 40.3263 40.2531 39.9914 40.2895 36.5479 21.5082 21.5082 20.9472 19.3523 17.3726
Nehru
Gandhi
39.3618 39.4976 39.5313 39.4179 39.4718 35.9319 21.4727 21.4727 20.9607 19.3034 17.4786
Goldhill 40.2439 40.3492 40.2495 40.4328 40.2507 37.1569 21.4882 21.4882 20.9712 19.2574 17.5235
Girl 39.3015 39.1898 39.2792 39.2933 39.3643 35.6567 21.5124 21.5124 20.9467 19.2475 17.3794
135
MSE obtained by the regular LSB method [169]. In the case of key size, the ARIP
technique nearly matches the IP approach [170].
For the maximum embedding capacity (64,536 bits) for k=1 bit case, a different
confidential text has been considered with different keys in DES. The size of the actual
confidential message considered for the experiment is 8,192 characters for the maximum
embedding capacity. To compute the exact MSE and PSNR values of the stego-image,
these 8,192 characters of different types, namely, pure text, pure numbers, mixture of text
and numbers and pseudo-random input have been considered. Based on the stego-image
generated for each of these cases, PSNR and MSE values have been estimated. Because
an adaptive stego process is involved, the best random path is always selected; hence, this
scheme results in better PSNR and MSE. Because of the random nature of the input, the
key also changes for the same cover, which further increases the depth of secrecy.
To eliminate the bias between the image and the confidential data during the
embedding process, the algorithm has been optimised to select the 8 × 8 or 4 × 4 blocks
of the cover in a random order using a PRNG. Therefore, the first part of the encoded
confidential data will be embedded. For an example, the qth
block, the next one in the xth
and so on, instead of in the usual numerical order, increasing the total number of keys
(2048 + initialisation vector for PRNG) to attain full embedding capacity. The starting
point of the individual SFC curves has also been changed, which completely eliminates
the bias between the image and the confidential data for the selected SFC.
The robustness of the implemented stego scheme has also been verified by
rotating the cover image. This process has not altered the nature of the embedded data,
136
but it changes the embedding path. As a consequence, the nature and size of the key
change, this accounts for the retrieval.
4.3.5. Security analysis
The implemented intelligent stego approach has multilayer protection stages
against different attacks. For each module, the scanning technique that results in the
minimum MSE and maximum PSNR values is adapted here, thereby augmenting the
quality of the stego image. Furthermore, splicing with the inverted pattern approach
increases the security of the critical data because only the authorised user has the key to
the correct combination of scanning technique and binary pattern employed in every
block. Furthermore, by utilising a PRN scheme, the AIRP technique effectively employs
an arbitrary order for embedding the blocks, consequently rendering the crucial
information incoherent for unauthorised users. Ultimately, by imparting flexibility in the
choice of the starting point of the SFC, this method ensures stronger security and
impregnability.
The steps involved in the protection mechanism are as follows:
Step-1: The confidential message is encrypted using the DES technique.
Step-2: The cover image is divided into either 1,024 blocks of 8 × 8 pixels or 4,096
blocks of 4 × 4 pixels.
Step-3: Four different scan paths for random embedding process can be adopted.
Step-4: The PRN scheme has been adopted to select the block order in which the
embedding and the path with the maximum PSNR can be fixed.
Step-5: The starting point of each SFC has been changed.
137
Step-6: The superposition of the inverted pattern approach on the proposed technique
while embedding.
Step-1 provides a strong cryptic effect for the confidential message before embedding,
which leads to the first layer of security. Step 2 provides an unassuming platform for
embedding the data with each platform having either 64 or 16 pixels; then the
corresponding number of bits can be embedded. In Step-3, one random path is selected
out of the four methods based on the PSNR value, thus increasing the security. Step-4
provides a very strong security level and also removes the bias of the relationship
between image and confidential message by adopting a PRN sequence for selecting the
order of the fundamental blocks (4 × 4 or 8 × 8) to be embedded. Step-5 adds complexity
to the security level by changing the starting point of the adopted random SFC path.
These two steps effectively unbiased the relation between the confidential message and
image. Finally, the fusion of the inverted pattern approach with the intelligent random
technique results in an enormous, complexly secure stego-image; this fusion completely
removes the bias between the confidential message and the image.
4.3.6. Complexity level estimation
The proposed stego technique provides the confidential image with highly secure
protection. In order to validate this statement, the following analysis has been performed.
For the 8 × 8 pixels block case, the total number of blocks (N) = 1,024
As per DES, the complexity of each block = 2^64
Number of PRNG output for randomising the 1,024 blocks =NpR
= N!/(N-r)! = 1024p1024 = 1024!
138
From these four scans, the scan with the best PSNR will be selected as the best path. In
each selected scan in the 8 × 8 block (64 pixels), 64 different paths can be selected by
having 64 different starting points in the selected SFC.
Therefore, the total complexity = (2^64)×(1024)! × (4) ×64
= (2^64) × (2^10)! × (4) ×64
= (2^64) × (2^10)! × (2^8)
= (2^72) × (2^10)! ×2 (for inverted pattern)
Similarly, in the case of 4 × 4 fundamental block size, the complexity level is as follows:
=2^64× (2^12)! ×4×16
=(2^70) × (2^12)! ×2 (for inverted pattern)
From this analysis, it is obvious that one has to perform 2^64× (2^12)! ×4×16 = (2^70) ×
(2^12)! ×2 number of attacks to crack the confidential message. This security level
estimation reveals the robustness of the ARIP method against hackers.
4.4. CONCLUSION
By simultaneously serving two ultimate requirements of security, i.e., greater
imperceptibility (least MSE) and high complexity (cryptic effect created by the choice of
row-wise embedding), the implemented technique promises un-tampered transmission
and authorized use of secret data. Usage of nominal key length reduces the cost
associated with the transport of key over a secure channel.
The adaptive stego processes discussed in this chapter encrypts confidential data
using DES and randomises the block selection for binary, inverted binary, gray and
139
inverted gray employing an intelligent chaotic walk for embedding the encrypted
confidential data. The inverted pattern approach has been super positioned for an
additional crypto effect. From the computed results of the MSE and PSNR values of the
stego-image generated by the ARIP method, it is observed that the proposed adaptive
stego technique supersedes the IP, LSB and OPAP stego techniques in enhancing the
quality of the stego-image. Moreover, the ARIP approach offers significantly improved
security without markedly compromising the payload. In addition, the ARIP approach
significantly considers the nature of the text while embedding the data, emphasising the
quality enhancement. A security analysis has been carried out to demonstrate the efficacy
of the multilevel security of the ARIP technique against hackers as well as the unbiased
nature of the random embedding path between the image and the confidential message.