Cover Image
Embed / Extract
Visual Comparison
Upload a stego JPEG, enter the key, and click Extract. If you just embedded above, click Extract without uploading.
Steganalysis Comparison
What will this panel show?
- Change exposure
- Where each method's changes land, ranked against the J-UNIWARD cost map. 0% = hidden in the most textured coefficients; 100% = the smoothest, most conspicuous ones. Lower is stealthier.
- DC (flat-brightness) terms hit
- The one structurally conspicuous edit: shifting a whole 8Γ8 block's brightness. J-UNIWARD and F5 skip the DC term by construction; naΓ―ve LSB edits pixels, so its changes can land there too β how many depends on the cover. Alongside it, "changes in the costliest 10%" counts the edits that landed in this image's smoothest coefficients β which adaptive embedding reduces but does not eliminate.
- DCT histogram
- The coefficient distribution. F5's magnitude-shrinkage leaves a visible histogram signature.
- Objective exposure
- A low/medium/high band for how much each method's changes are exposed to J-UNIWARD's own cost objective β derived from placement alone, not from a trained detector, so it is not a detectability verdict. All three methods are asked for the same payload; when one cannot carry it (F5 runs out of non-zero coefficients on smooth covers) the panel marks its comparison invalid rather than ranking it anyway.
Embed a message to compare all three methods on the same image and payload.
Load an image and embed a message to see steganalysis results.
Where changes landed
Terrain: blue = textured (cheap) β red = smooth (costly). Bright dots = changes.How STC chooses which coefficients to flip (schematic)
The cost map says where hiding is cheap; STC + Viterbi decide which coefficients actually carry the payload. This 3-step schematic shows the idea the real embedder implements.
Methodology
- Cost function: the published UNIWARD distortion — a Β±1 DCT change is scored by its relative disturbance across the three first-level undecimated Daubechies-8 wavelet subbands (LH, HL, HH), with σ = 2−6.
- Embedding: Syndrome-Trellis Codes (h=12, 4096 states) find the minimum-distortion modification via Viterbi search. The search is exact within each 12-bit syndrome block over its own window of carriers; the trellis restarts per block rather than running one shifted parity-check matrix across the whole image, so the result is block-optimal, not globally optimal.
- Analysis: each method's changes are re-projected into the quantized DCT domain (LSB via a real forward DCT) and ranked against the cost map by where they land.
Placement predicts resistance to modern feature-based detectors better than any single first-order test β but it does not prove undetectability under all attacks.
Limitations
- The placement analysis is a proxy, not a detector. Real-world steganalysis (e.g., SRM, SRNet, XuNet) uses deep learning on rich feature sets.
- At high payloads even adaptive embedding runs out of textured coefficients, so the average change lands in a costlier coefficient as the rate rises. The panel shows that climb for the cover you loaded rather than asserting a safe rate.
- The COM marker sideband for salt/rate may be stripped by image pipelines, social media compression, or metadata-stripping tools. It also makes any file this demo produces trivially identifiable as one β it is a teaching sideband, not a covert one.
- This is fragile steganography, not robust watermarking. The payload lives in the exact DCT coefficients, so recompression, quality-factor changes, resizing, cropping, rotation, or lossless JPEG optimization will alter the coefficients and break extraction β the recipient generally needs the original stego JPEG bytes.
- J-UNIWARD is not "undetectable," and on this lab's own exposure measure it does not always beat the baselines: F5 only edits non-zero AC coefficients, which are already the cheap textured ones, so its per-change average can be lower while it makes far more changes. The panel reports the ordering it measured for your run. This is an educational tool, not suitable for adversarial environments.