Presentation on theme: "F5 A Steganographic Algorithm"— Presentation transcript:
1 F5 A Steganographic Algorithm Davang PatelThomas Schulze
2 AgendaIntroductionCapacity vs. SecurityJPEGJSTEGF3F4F5
3 steganographical decryption What is Steganography?Steganography is the art and science of embedding hidden messages in a carrier medium such that no one apart from the sender and intended recipient even realizes there is a hidden message.Mediums can include images, video, and audio.MessageCarriersteganographicalencryptionalgorithmsteganographical decryptionAttackMessage should be invisible to an aggressorMessage should be not readable to an aggressorSteganogram
4 Steganogram Example The Story Behind the MATLAB Default Image More Info:
5 Capacity vs. Security F5 algorithm combines BOTH advantages!! e.g. JstegEmbedding capacity 12 %Secure against visual attacksWeak against statistical attacksFirst algorithmgreat Capacity for steganographic messagesWeak against attacks (visual or statistic)Second algorithmsmall Capacity for steganographic messagesStrong against attacks (visual or statistic)e.g. MP3StegoEmbedding capacity less then 1 %Secure against visual attacksSecure against statistical attacksF5 algorithm combines BOTH advantages!!Great capacity for steganographic messagesStrong against statistical and visual attacks13.4% embedding capacity
6 Histogram for JPEG coefficient after quantization JPEG MechanismHistogram for JPEG coefficient after quantizationThe coefficient’s frequency of occurrence decreases with increasing absolute value.The difference between two bars in the middle of the histogram is greater than the difference between two bars near the ends.
7 JSTEG AlgorithmAfter quantization, Jsteg replaces (over writes) the least significant bits (LSB) of the frequency coefficient by the secret message. The embedding mechanism skips all coefficient with the value 0 and 1.Resistant against the visual attacks and good capacity with 12.8 % of the steganogram's size, but the secret message is easily detected by statistical attacks. (chi-square test)Jsteg influences pairs of the coefficients frequency of occurrence !!!JSTEG
8 F3 Algorithm Original F3 Algorithm JSTEG Does not overwrite bits -- Decrement the non-zero coefficient’s absolute value only if the LSB does not match. Zero coefficients are skipped.The LSB of a non-zero coefficient will match the secret message after embedding.Advantage: statistical attack (chi-square test) will not be successfulDisadvantage: Less capacity and surplus of even coefficients caused by shrinking.The surplus of even coefficients can be detected by statistical means.OriginalF3 AlgorithmJSTEG
9 F3 ShrinkageShrinkage of coefficients causes a decrease in embedding capacity.Since the receiver cannot tell between a skipped zero and a zero that was generated due to shrinkage, repetitive embedding is necessary.
10 F4 AlgorithmMapping negative coefficients to the inverted steganographic value.Even negative coefficients and odd positive coefficients represent a steganographic one.Even positive coefficients and odd negative coefficients represent a steganographic zero.
11 F4 embedding example Embed the code “01110” If LSB and message does not match,Increment negative CoefficientsDecrement positive coefficients
12 F5 Algorithm Overall algorithm the same as F4. Extends F4 by adding two distinct features:Permutative straddlingMatrix encoding
13 Permutative Straddling F4 embeds the data into the next available non-zero coefficient.F5 will scatter the entire message throughout the carrier.Uses permutation to equalize the spread of embedded data.F5F4carrierpermutationcarriercarrier+ messagepermutation +messageInversepermutationNote: treat each pixel as if it was a JPEG coefficient.
14 Improves the embedding efficiency from 1.5 bit to 3.8 bit per change. Matrix EncodingImproves the embedding efficiency from 1.5 bit to 3.8 bit per change.Embed 1736 bit message459 changes1157 changesF4F5How does it work?Consider we want to embed x1 and x2 in LSB locations a1, a2, and a3.
15 F5 encoding processPermutation is generated using user-defined password.Discrete Cosine TransformQuantizationPermutationF5EmbeddingfunctionInverseHuffmanEncoderSteganogram(JPEG)Bitmap CarrierMessageRandom Number GeneratorPasswordQuality