Source-linked AI summary
A novel technique for image steganography based on Block-DCT and Huffman Encoding
A. Nag, S. Biswas, D. Sarkar, P. P. Sarkar
TL;DR
Encryption can attract attention because it scrambles a message without concealing that a message exists, motivating steganography within ordinary media. This paper combines block DCT of a cover image with Huffman encoding of secret data before frequency-domain embedding. The authors report stego-images that are difficult to distinguish from the originals and describe added security layers.
Problem
Encryption scrambles message contents but can attract attention, while steganography aims to conceal the existence of a message within ordinary media.
Source: §1 · p. 1Method
The approach applies DCT to 8 × 8 cover-image blocks and Huffman-encodes the secret image before embedding in the frequency domain.
Source: §2 · p. 3, §2.1 · p. 4, §2.2 · p. 4Results
The authors report that their stego-images are almost identical to those of other methods and difficult to distinguish from the original images.
Source: §4 · p. 8Takeaways & Limitations
The authors describe DCT and Huffman encoding as providing three additional security layers in the proposed process.
Source: §4 · p. 8
Abstract
from arXiv · showhide
Image steganography is the art of hiding information into a cover image. This paper presents a novel technique for Image steganography based on Block-DCT, where DCT is used to transform original image (cover image) blocks from spatial domain to frequency domain. Firstly a gray level image of size M x N is divided into no joint 8 x 8 blocks and a two dimensional Discrete Cosine Transform (2-d DCT) is performed on each of the P = MN / 64 blocks. Then Huffman encoding is also performed on the secret messages/images before embedding and each bit of Huffman code of secret message/image is embedded in the frequency domain by altering the least significant bit of each of the DCT coefficients of cover image blocks. The experimental results show that the algorithm has a high capacity and a good invisibility. Moreover PSNR of cover image with stego-image shows the better results in comparison with other existing steganography approaches. Furthermore, satisfactory security is maintained since the secret message/image cannot be extracted without knowing decoding rules and Huffman table.
1. INTRODUCTION
Encryption protects message contents but can attract attention, whereas steganography conceals a message’s existence within ordinary media. The introduction distinguishes steganography from watermarking, reviews spatial and transform-domain approaches, and defines PSNR as an image-quality measure.
1. INTRODUCTION
- Steganography conceals a secret message’s existence in ordinary media, unlike encryption, which scrambles its contents, or watermarking, which protects the cover object.The stated goal is for a stego-image not to deviate much from its cover image.Source: §1 · p. 1
1.1. RELATED WORK
- Spatial-domain LSB methods embed data directly in pixels, while transform-domain methods operate on image representations such as 8 × 8-block DCT coefficients.Modifying a DCT coefficient affects all 64 pixels in its block.Source: §1.1 · p. 2
- Capacity, security, and robustness are identified as three main aspects affecting steganography and its usefulness.Capacity concerns how many bits can be hidden, security whether an eavesdropper can find the information, and robustness resistance to modification or destruction.Source: §1.1 · p. 2
1.2 PSNR (Peak Signal to Noise Ratio)
- PSNR measures the quality difference between a cover image and its stego-image, with a larger value indicating higher image quality and less difference.The paper expresses PSNR in dB.Source: §1.2 · pp. 2–3
2. PROPOSED IMAGE STEGANOGRAPHY ALGORITHM
The proposed approach embeds secret data in the frequency domain and contrasts this with spatial-domain methods. Its described preparation applies block DCT to the cover image and Huffman-encodes the secret image before dividing the encoded stream into 8-bit blocks.
2. PROPOSED IMAGE STEGANOGRAPHY ALGORITHM
- The proposed method uses frequency-domain embedding and claims high capacity, security, and invisibility, in contrast to spatial-domain approaches described as easy to attack.The paper also claims improved image quality and security over the modified side match scheme at the same embedding capacity.Source: §2 · p. 3
2.1 Discrete Cosine Transform
- The cover image is divided into non-overlapping 8 × 8 blocks, and a two-dimensional DCT transforms each block into frequency-domain coefficients.The paper specifies L = M1×N1 / 64 blocks for an M1×N1 cover image.Source: §2.1 · p. 4
2.2 Huffman encoding and Huffman table (HT )
- The secret image is Huffman-encoded into a one-dimensional bit stream, and its Huffman table must be available to both encoder and decoder.For an image, the codes are assigned to intensity values; the encoded stream is described as shorter than the number of image pixels.Source: §2.2 · p. 4
2.3 8-bit block preparation
- The Huffman-encoded stream is divided into 8-bit blocks, with the final block containing the remaining bits when the stream length is not divisible by eight.The remainder is defined as r = LH % 8.Source: §2.3 · p. 4
2.4 Embedding of Secret Message / Image
- The listed embedding steps begin by applying DCT to the cover image, Huffman-encoding the secret image, and preparing the encoded stream as 8-bit blocks.The passage describes these as the first three steps of a five-step embedding scheme.Source: §2.4 · pp. 4–5
Step 4: Bit replacement
Secret bits replace the least significant bits of DCT coefficients, and inverse block DCT produces an image containing the secret.
Step 4: Bit replacement
- Each secret bit from an 8-bit block B replaces the LSB of a DCT coefficient, using bits from left to right.B(k) denotes the kth bit from left to right; F(u,v) in binary form is the DCT coefficient.Source: Step 4: Bit replacement · p. 5
- B(k) identifies the secret bit to insert into the coefficient’s least significant bit.The passage defines B(k) as the kth bit of block B and the binary DCT coefficient as F(u,v).Source: Step 4: Bit replacement · p. 5
- The method applies inverse block DCT to F to obtain a new image containing the secret image.The inverse transform uses the same block size as the block DCT.Source: Step 4: Bit replacement · p. 5
Embedding Algorithm
The embedding procedure Huffman-encodes the secret and embeds its bits in DCT-transformed carrier blocks; extraction transforms the stego-image and recovers the encoded data and Huffman table.
Embedding Algorithm
- Huffman-encode the secret message or image, then divide the carrier into non-overlapping 8×8 blocks and apply DCT.The procedure records the encoded stream size before embedding.Source: Embedding Algorithm · p. 5
- Insert encoded bits and the Huffman table into the least significant bits of DCT coefficients, then apply inverse DCT.The first block stores the encoded-stream size; subsequent blocks carry stream bits and table bits.Source: Embedding Algorithm · p. 5
2.3 Extraction of the secret message / Image
- For extraction, apply the same 8×8 DCT to the stego-image and recover the encoded-stream size, stream, and Huffman table.The passage introduces an extraction algorithm following this description.Source: §2.3 · p. 5
Extraction Algorithm
Extraction applies block DCT to the stego-image, reads the embedded stream length and data from coefficient LSBs, then uses the recovered Huffman table to decode the secret image.
Extraction Algorithm
- Apply DCT to non-overlapping 8×8 stego-image blocks and read the encoded-stream size from LSBs in the first block.The algorithm’s stated output is the secret image.Source: Extraction Algorithm · p. 6
- Collect coefficient LSBs from subsequent blocks until the extracted array reaches the recorded stream size.The collected bits form the encoded secret stream.Source: Extraction Algorithm · p. 6
- Recover the Huffman table from other blocks and decode the collected bit array with that table.The algorithm excludes the first block and the stream blocks when extracting the table.Source: Extraction Algorithm · p. 6
3. SIMULATION RESULTS
The simulations use 512×512 8-bit grayscale cover images and report capacity and PSNR results; the figures show cover images, stego-images, and the retrieved secret.
3. SIMULATION RESULTS
- The simulations use 8-bit grayscale cover images of size 512×512.The experiments were run using MATLAB 7 on Windows XP.Source: §3 · p. 6
- 294912 bits are embedded by hiding a 192×195 8-bit grayscale image in a 512×512 carrier.The paper describes overall capacity as about 30 × 104 bits per 512×512 cover.Source: §3 · p. 7
- Below 40 dB PSNR for Baboon, despite its higher capacity; the proposed algorithm is otherwise reported better than reference.The comparison is presented in Table 2.Source: §3 · p. 7, Table 2 · p. 7
- All four images have PSNR greater than 50 and hiding capacity of about 299520 bits.Table 1 reports capacity and PSNR for four images.Source: §3 · p. 7, Table 1 · p. 7
- Figure 4 shows the resulting stego-images and the original secret message retrieved from them.Figure 3 presents the cover images used for the simulations.Source: §3 · p. 7, Figure 3 · p. 7, Figure 4 · p. 8
4. CONCLUSIONS
The proposed frequency-domain method aims to improve security and image quality over spatial-domain approaches. The authors report added security layers and potential resistance to brute-force attacks.
4. CONCLUSIONS
- The method uses frequency-domain steganography to improve security and image quality over existing approaches that normally operate in the spatial domain.Simulations report that its stego-images are difficult to distinguish from original images.Source: §4 · p. 8
- DCT, inverse DCT, and Huffman encoding add three security layers, while concealing the embedding process under the transformations may improve resistance to brute-force attacks.The authors describe this resistance as a possibility, not a demonstrated guarantee.Source: §4 · pp. 8–9
- Image steganography generally places less emphasis on robustness than watermarking, and methods often neglect that demand.This qualifies the paper's robustness motivation against brute-force attacks.Source: §4 · p. 8