b it -p lane c omplexity s teganography joseph szigeti (source list)

Post on 17-Jan-2016

218 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

BIT-PLANE COMPLEXITY STEGANOGRAPHYJoseph Szigeti

(source list)

OVERVIEW

Why BPCS was developed How it works Several implementations

Kawaguchi, Eason Beaullieu, Crissey, Smith Stoleru

Results Possible improvements

STEGANOGRAPHY

Hiding a secret message by embedding it in data

Different from: Cryptography

Scrambling a secret message such that the message is not hidden, but simply unreadable

Watermarking Embedding copyright/ownership information inside

data

BIT-PLANE COMPLEXITY STEGANOGRAPHY

BPCS Invented by Eiji Kawaguchi and Richard

Eason in 1997 Kyushu Institute of Technology University of Maine

Created because traditional forms of steganography were limited in information-hiding capacity Estimated at ≤10%

OLD STEGANOGRAPHY VS. BPCS

Old stego. Replace small frequency components of vessel

data Replace LSB of vessel data

BPCS Separate vessel into bit-planes Replace noisy regions in bit-planes with secret

data Does not deteriorate quality

Works because of limitations in human vision

VISUALIZATION OF BPCS

VISUALIZATION OF BPCS

KAWAGUCHI & EASON’S FINDINGS

Information-hiding capability is ≈50% Sharpening operations on vessel image

increase embedding capacity significantly Canonical Gray coded bit-planes are better

than binary bit-planes Randomization of the secret data by a

compression operation makes the embedded data even harder to spot

BPCS will never be overwriting the same bit-planes the same way from image to image

CANONICAL GRAY VS. PURE BINARY

Goal of BPCS is to maximize space in an image that can be used for data hiding

PBC More space (noisier) Runs into “Hamming Cliff” problem

Small change in color affects many bits

CGC Flat regions stay flat at lower planes Does not have Hamming Cliffs Allows for more intelligent embedding

CGC VS PBC EXAMPLE

PBC difference between 127 and 128 0111 1111 1000 0000

CGC difference between 127 and 128 0100 0000 1100 0000

CGC VS PBC EXAMPLE

IMAGE COMPLEXITY

Length of black-and-white border in a binary image is used to measure complexity Length determined by number of color changes

along the rows and columns in an image Image complexity α

α = border length / max possible B-W changes 0 ≤ α ≤ 1

In BPCS, α is measured on a local level Small pixel areas, as opposed to entire image

ANALYSIS OF NOISY REGIONS

Conjugation α(P*) = 1 – α(P) Complexity of P* is symmetric to P about α=0.5

If the data is informative, it must be conjugated before embedding into vessel image

ANALYSIS OF NOISY REGIONS

Create a complexity distribution of vessel image

Find point at which embedding data is viable e.g. α = 0.5 ± k*σ

k is some constant σ is some deviationNot viable Viable

ANALYSIS OF NOISY REGIONS

Kawaguchi and Eason have determined that there is often a majority of noise-like 8x8 binary patterns In the previous example, 6.67x10-14% were

simple This is where BPCS gets its effectiveness

compared to LSB steganography

KAWAGUCHI & EASON IMPLEMENTATION

Transform vessel image from PBC to CGC Segment bit-planes into informative and

noisy regions using threshold value (e.g. α0=0.3)

Group bytes of secret file into secret blocks If a block (S) is less complex than threshold

(α0), conjugate it Embed each secret block into noisy regions

of the bit-planes Record conjugated blocks in conjugation map

Embed conjugation map with secret blocks

Convert vessel image back to PBC

KAWAGUCHI & EASON IMPLEMENTATION

Data to hide:

RESULTS

Image with a lot of flat regions

RESULTS

Image with few flat regions

MODIFIABLE ALGORITHM PARAMETERS

Embedding location of secret file headers Embedding threshold α0

Sequence in which 8x8 regions are considered for embedding

Encoding of conjugation map Special operations

XOR of header bytes with pseudo-random numbers

Encryption parameters of secret files Compression parameters of secret files

REGION SELECTION SEQUENCE

Demonstrated by Steve Beaullieu, Jon Crissey, Ian Smith UTSA

Regions for embedding are considered from the bottom left to the top right This could be

modified if a particular image warranted it

CONT.

Starting the embedding process from the LSB is another option to make the image more convincing

Alternatively, change parameter for complexity with each plane

FURTHER IMPROVEMENTS

Determining complexity using run length irregularity or border noisiness As opposed to number of borders

Randomly distribute data As opposed to linearly, from one bit plane to next

Encrypting data before embedding it

PROBLEMS WITH BPCS

Bit operations after embedding data may make data unrecoverable Not robust

Complexity histogram of vessel image will be noticeably different

APPLICATIONS

Secrecy Embedding data publicly

Without discernably altering quality of vessel Applying bit plane algorithms to files other

than PBC images

MULTIPLE-IMAGE SCHEME (D. STOLERU)

MULTIPLE-IMAGE SCHEME

MORE EXAMPLES

MORE EXAMPLES

top related