A Generalization of the PVD Steganographic Method

Document Sample
A Generalization of the PVD Steganographic Method Powered By Docstoc
					                                                       (IJCSIS) International Journal of Computer Science and Information Security,
                                                       Vol. 8, No. 8, November 2010

         A Generalization of the PVD Steganographic
                                       M.B. Ould MEDENI and El Mamoun SOUIDI
                                     Laboratory of Mathematic Informatics and Applications
                                      University Mohammed V-Agdal, Faculty of Sciences
                                                   Rabat ,BP 1014, Morocco
                                        Email : sbaimedeni@yahoo.fr, souidi@fsr.ac.ma

   Abstract—In this work we propose a novel Steganographic           equal amount of changes without causing noticeable distortion.
method for hiding information within the spatial domain of the       Hence, to improve the quality of stego images, several adaptive
gray scale image. The proposed approach works by dividing the        methods have been proposed in which the amount of bits to
cover into blocks of equal sizes and then embeds the message in
the edge of the block depending on the number of ones in left        be embedded in each pixel is variable. Wu and Tsai proposed
four bits of the pixel. The purpose of this work is to generalize    a novel steganographic method that uses the difference value
the PVD method [7] With four-pixel differencing instead of two-      between two neighboring pixels to determine how many secret
pixel differencing and use the LSB Substitution to hide the secret   bits should be embedded [7].
message in the cover image                                           In contrary : Steganalysis methods attempt to detect Stego-
  Keywords: Steganography, Watermarking, Least Signifi-               image and extract it. Inserting secret bits in image changes
cant Bit(LSB), PVD method, Digital Images, Information               some statistics of image, this opens some roads to detect Stego-
Hiding,Pixel-value differencing.                                     image. So the changes made by Steganographic are a key
                                                                     performance metric ; lower change : more robust algorithm.
                      I. I NTRODUCTION
                                                                     It is evident that the changes in cover image are related to the
   Steganography is the art of stealth communication. Its pur-       volume of inserted bit, so Stego-images with higher insertion
pose is to make communication undetectable. The steganogra-          rate are detected more easily.
phy problem is also known as the prisoners’ dilemma formu-           Stegananalysis methods generally are divided in two main
lated by Simmons [4]. Alice and Bob are imprisoned and want          groups: active and passive methods. In passive methods only
to hatch an escape plan. They are allowed to communicate via         presence or absence of hidden data is considered, while in
a channel monitored by a warden. If the warden finds out that         active methods a inserted data is extracted [8]. Furthermore,
they are communicating secretly, he throws them into solitary        different steganalysis methods, depending on steganography
confinement. Thus, the prisoners need to design a method to           algorithms they target, can be classified in two groups : Model-
exchange messages without raising the warden’s suspicion.            based (Specific) and Universal Steganalysis.
The prisoners hide their messages in innocuous-looking cover         The aim of this work is to generalize the PVD method [7] With
objects by slightly modifying them (obtaining stego objects).        four-pixel differencing instead of two-pixel differencing and
The embedding process is usually driven by a stego key, which        LSB Substitution. The remainder of the paper is organized as
is a secret shared between Alice and Bob. It is typically used       follows. Section 2 gives a brief introduction to Steganography
to select a subset of the cover object and the order in which the    and Data Hiding Methods.We construct our approach and
cover object elements are visited during embedding. The most         report on experimental results in section 3 and 4. Section 5
important property of any steganographic communication is            gives a conclusion.
statistical undetectability. In other words, the warden should
                                                                               II. D IGITAL I MAGES IN S TEGANOGRAPHY
not be able to distinguish between cover and stego objects.
Formal description of this requirement in information-theoretic      A. Digital Images
terms was given by Cachin [5]. If the communication channel             A digital image at the most abstract level is a two-
that Alice and Bob use is distortion-free, we speak about the        dimensional array of colored pixels or dots. When these pixels
passive warden scenario.                                             are displayed on a high-resolution monitor and viewed at
The most common and well-known steganographic method is              an appropriate distance, they appear to be a continuously
called least significant bit (LSB) substitution, which embeds         colored image. Each pixel is a certain color which is typically
secret data by replacing k LSBs of a pixel with k secret bits di-    defined, using the redgreen- blue (RGB) color model, as
rectly [1]. Many optimized LSB methods have been proposed            a combination of varying amounts of red, green, and blue
to improve this work [2], [3]. The human perceptibility has          light. A color image is therefore said to contain three bands,
a property that it is sensitive to some changes in the pixels        each of which represents the amount of red, green, or blue
of the smooth areas, while it is not sensitive to changes in         light in the image. Whereas a color image contains color
the edge areas. Not all pixels in a cover image can tolerate         and intensity information, a gray-scale image is composed of

                                                                  156                             http://sites.google.com/site/ijcsis/
                                                                                                  ISSN 1947-5500
                                                                 (IJCSIS) International Journal of Computer Science and Information Security,
                                                                 Vol. 8, No. 8, November 2010

pixels that vary only in intensity, not color. Gray-scale images                    The difference is that steganography conceals a message
therefore have only a single band. Without loss of generality,                   so that this hidden message is the object of the communi-
the remaining discussion will focus on gray-scale images. The                    cation where in watermarking; the hidden message provides
discussion is easily extended to cover color images by noting                    important information about the cover media, such as au-
that a color image is the composition of three individual gray-                  thentication or copyright. Steganography, in the simplest case,
scale images representing the red, green and blue bands. The                     capitalizes on this overabundance of information by replacing
typical gray-scale image has an 8-bit depth which is sufficient                   the noise channels (i.e. the least significant bit channels)
to represent 256 unique intensity values ranging from black                      with an arbitrary secret message. Figure 1 gives an overview
to white [9]. A brief review of binary representation will be                    of a steganographic process flow. A source image, hereafter
instructive when interpreting bit-level pixel data in the context                referred to as a cover, is viewed as 8 information carrying
of a digital image. An 8-bit binary numeral has the general                      channels. A secret message is spread over the least significant
form                                                                             channels (in this case the three least significant channels)
              A7 27 + A6 26 + ... + A1 21 + A0 20                                with the modified channels re-combined to obtain an output,
                                                                                 hereafter referred to as the stego image, that visually resembles
   where An represents a single binary digit. In a digital image                 the cover image and contains the injected message.
it is clear that A7 is the most significant bit and indicates
whether the pixel value is greater than 127. A common means                             III. PVD M ETHOD FOR G RAY-L EVEL I MAGE
of converting a grayscale image to a binary (i.e. black-and-                        The pixel-value differencing (PVD) method [7] segments
white) image is to extract the A7 bit from each pixel. By                        the cover image into nonoverlapping blocks containing two
contrast, A0 embodies relatively little information and, in the                  connecting pixels and modifies the pixel difference in each
context of a digital image, can generally be understood as a                     block (pair) for data embedding. A larger difference in the
noise channel.                                                                   original pixel values allows a greater modification. The hiding
                                                                                 algorithm is described as follows:
B. Overview of Steganograhy
                                                                                    1) Calculate the difference value di for each block of two
   Steganography hides secret messages under the cover of                               consecutive pixels Pi and Pi+1 , di = Pi+1 − Pi
a carrier signal so it cannot be seen or detected [6], [8],                         2) Find the optimal Ri of the di such that Ri = min(ui −
[11]. Steganography technique should generally possess two                              k), where ui ≥ k, k = |di | and Ri ∈ [li , ui ]
important properties: good visual/statistical imperceptibility                      3) Decide t bits of secret data which are hidden with each
and a sufficient payload. The first is essential for the security                         di , i.e. each block of two consecutive pixels is defined
of hidden communication and the second ensures that a large                             as t = log2 (wi ) where wi is the width of the Ri
quantity of data can be conveyed [10]. Two levels of protection                     4) Read t bits binary secret data one by one according to
can be done if the message is encrypted before hiding it, so                            Step 3, and then transform t into decimal value b. For
it must be decrypted before reading it. Invisible watermarking                          instance, assume a binary secret data is 101, then b = 5.
is treated as a subset of steganography [10].                                       5) Calculate the new difference value di using: di = li + b,
                                                                                        for di ≥ 0 or di = −(li + b), for di < 0
                                                                                    6) Pi and Pi+1 are modified to hide t secret data by the fol-
                                                                                        lowing formula: (Pi , Pi+1 ) = (Pi − m , Pi+1 + m )
                                                                                                                                 2             2
                                                                                        : di ∈ odd or (Pi , Pi+1 ) = (Pi − m , Pi+1 + m ) :
                                                                                                                              2              2
                                                                                        di ∈ even where m = di − di . Finally, we compute the
                                                                                        values of (Pi , Pi+1 ) which represent the secret data.
                                                                                    7) Repeat Steps 1-6, until all secret data are hidden into
                                                                                        the cover image and the stego-image is obtained.
                                                                                    In the extraction phase, the original range table is necessary.
                                                                                 It is used to partition the stego-image by the same method as
                                                                                 used to the cover image. The extraction phase is implemented
                                                                                 as follows:
                                                                                    1) Calculate the difference value di between each two
                                                                                        successive pixels for each block (Pi , Pi+1 ) from the
                                                                                        following formula : di = |Pi+1 − Pi |
                                                                                    2) Find the optimum Ri of the di just as in Step 2 in the
                                                                                        hiding phase.
                                                                                    3) Obtain b by subtracting li from di . The b value repre-
                                                                                        sents the value of the secret data in decimal.
Fig. 1. Embedding of a secret message into the three least significant channels      4) Convert b into binary then find number of bits t from
of a cover image                                                                        the secret data, where t = log2 (wi ) [7]

                                                                             157                            http://sites.google.com/site/ijcsis/
                                                                                                            ISSN 1947-5500
                                                     (IJCSIS) International Journal of Computer Science and Information Security,
                                                     Vol. 8, No. 8, November 2010

        IV. P ROPOSED S TEGANOGRAPHY S CHEME                                         V. E XPERIMENTAL RESULTS
   In this section we discuss the proposed approach for hiding        Several experiments are preformed to evaluate our proposed
information within the spatial domain of the gray scale image.     method. Ten gray-scale images with size 512×512 are used in
The proposed approach works by dividing the cover into             the experiments as cover images, and three of them are shown
blocks of equal sizes (8 × 8). Our proposed method adaptively      in Fig. 3. A series of pseudo-random numbers as the secret bit
embeds messages using two levels (lower-level and higher-          streams are embedded into the cover images. The peak signal
level), and the square of median value M is used to partition      to noise ratio (PSNR) is utilized to evaluate the quality of the
the average difference D into two levels. If D < M , D             stego image. For an M ×N gray-scale image, the PSNR value
belongs to ”lower-level” (i.e., the block belongs to a smooth      is defined as follows:
area). Otherwise, D belongs to ”higher-level” (i.e., the block                                  255 × 255 × M × N
                                                                        P SN R = 10 × log10 M                            (dB)
belongs to an edge area).                                                                              N               2
                                                                                                 i=1   j=1 (Pij − Qij )

A. Determine The Place of Embedding in The Image                   where Pij and Qij denote the pixel values in row i and column
   All the pixels in the cover image are 256 gray values.          j of the cover image and the stego image, respectively. In this
The cover image is partitioned into non-overlapping four-pixel     section we present the experimental results of stego-image on
blocks. For each block, there are four neighboring pixels pi,j ,   three will known images: Lena, Pepper, and Baboon images.
pi,j+1 , pi+1,j , pi+1,j+1 , and their corresponding gray values   These images are shown in Figs 3. The quality of stego-image
are y1 , y2 , y3 and y4 , respectively.                            created by our proposed method are shown in Figs.4. As
                                                                   the figures show, distortions resulted from embedding are
   1) Divide the cover into blocks of equal sizes 8 × 8
                                                                   imperceptible to human vision. We present also a comparative
   2) Calculate the square root of median for each block. M =
                                                                   study of the proposed methods with PVD method.
   3) Calculate the average difference value D, which is given
                  1   3                                              We have analyzed our results according to PVD method for
       by D = 3 i=0 (yi+1 − yi )
                                                                   each of the tested images. We also analyzed our results by
   4) IF D ≥ M , then embed Message in pi,j , pi,j+1 , pi+1,j ,
                                                                   computing Payload, and peak signal-to noise ratio (PSNR).
       pi+1,j+1 , (go to The embedding algorithm)

B. The embedding algorithm
  1) Split each pixel into two equal parts (see Figure 2).
  2) Count number of 1 in the most part and embed a secret
     message in the least part according to the corresponding
     number of bits in Table 1.

                                                                   Fig. 3. Three cover images with size 512 × 512: (a) Lena (b) Peppers (c)

                                                                     Payload: the size of date that could be imbedded within the
                                                                   cover-image is shown in Table 2
                                                                      Image        Image size       Data size           Data size
                      Fig. 2.   Split Process.
                                                                                                     (PVD)         (Proposed Method)
                                                                       Lena        128 × 128          2048                2493
                                                                                   255 × 255          8192               10007
              number of 1 in        number of Bits
                                                                                   512 × 512          32768              40017
               the most part       to be embedded
                                                                                  1024 × 1024        131072              160604
                   4 or 3               3 bits
                                                                      Peppers      128 × 128          2048                2560
                     2                  2 bits
                                                                                   255 × 255          8192               10211
                   1 or 0                 1
                                                                                   512 × 512          32768              40990
                                                                                  1024 × 1024        131072              163724
                                                                      Baboon       128 × 128          2048                2443
   The recipient uses the extraction algorithm in order to
                                                                                   255 × 255          8192                9767
extract the secret message from the stego-image. Extracting
                                                                                   512 × 512          32768              39034
secret message is done in the same way as in the embedded
                                                                                  1024 × 1024        131072              156308
operation, depending on the value of the median: M =
   (median). If the average difference value D is more than        Figure. 4 shows the amount of messages hidden in the 3
the value of M then extract the message depending on the           cover images. Three stego images (a) Lena (embedded 40017
rule in Table 1.                                                   bits, P SN R = 42.68dB) (b) Peppers (embedded 40990

                                                                158                             http://sites.google.com/site/ijcsis/
                                                                                                ISSN 1947-5500
                                                               (IJCSIS) International Journal of Computer Science and Information Security,
                                                               Vol. 8, No. 8, November 2010

bits, P SN R = 43.23dB) (c) Baboon (embedded 39034 bits,
P SN R = 37.71dB).

      Fig. 4.   Three stego images : (a) Lena (b) Peppers (c) Baboon.

                          VI. C ONCLUSION
   In this paper, we have proposed a novel steganographic
method based on four-pixel differencing and LSB substitution.
Secret data are hidden into each pixel by the k-bit LSB
substitution method, where k is decided by the number of
1 in the most part for pixel. Experimental results showed that
the proposed method gave best values for the PSNR measure,
which means that there is no difference between the original,
and the stegano-images.
                             R EFERENCES
 [1] D.W. Bender, N.M. Gruhl, A. Lu, : Techniques for data hiding, IBM
     Syst. J. 35 (1996) 313-316
 [2] R.Z. Wang, C.F. Lin, J.C. Lin, Image hiding by optimal LSB substitution
     and genetic algorithm, Pattern Recognit. 34 (3) (2001) 671-683.
 [3] I.C. Lin, Y.B. Lin, C.M. Wang,: , Hiding data in spatial domain images
     with distortion tolerance, Comput. Stand. Inter. 31 (2) (2009) 458-464.
 [4] G. J. Simmons : The prisoners problem and the subliminal channel, in
     Advances in Cryptology, pp. 5167, Plenum Press, New York, NY, USA,
 [5] C. Cachin : An information-theoretic model for steganography, in D.
     Aucsmith (ed.): Information Hiding. 2nd International Workshop, LNCS
     vol. 1525, Springer-Verlag Berlin Heidelberg (1998), 306-318.
 [6] Y. Kim, Z. Duric, D. Richards : Modified matrix encoding technique for
     minimal distortion steganography, In: Camenisch, J.L., Collberg, C.S.,
     Johnson, N.F., Sallee, P. (eds.) IH 2006. LNCS, vol. 4437, pp. 314-327
 [7] D. C. Wu and W. H. Tsai, : A steganographic method for images by pixel-
     value differencing, Pattern Recognition Letters, 24(9-10), pp.16131626,
 [8] A. Westfeld and A. Pfitzmann : Attacks on Steganographic Systems, 3rd
     International Workshop. Lecture Notes in Computer Science, Vol.1768.
     Springer-Verlag, Berlin Heidelberg New York (2000) 61-75.
 [9] Kenny Hunt : A Java Framework for Experimentation with Steganog-
     raphy, ACM SIGCSE Bulletin Proceedings Volume 37 Issue 1, 2005.
[10] C. C. Chang, W. L. Tai, and C. C. Lin : A novel image hiding scheme
     based on VQ and Hamming distance, Fundamenta Informaticae, vol. 77,
     no. 3, pp. 217-228, 2007.
[11] M. B. Medeni and El. Souidi : A Novel Steganographic Protocol from
     Error-correcting Codes, Journal of Information Hiding and Multimedia
     Signal Processing, Volume 1, Number 4, October 2010, pp 337-343..

                                                                           159                            http://sites.google.com/site/ijcsis/
                                                                                                          ISSN 1947-5500