Image Steganography Lab

Image Steganography Lab

Educational PNG LSB experiment. Messages are not encrypted and may disappear after resizing, color edits or JPEG conversion.

1. Source PNG

PNG only, up to 8 MiB, 1600px per side and 2 million pixels. The file is not uploaded to a server.

2. Embed message

RGB uses up to three bits per pixel; blue-only uses one. A 14-byte header is reserved first.

Choose a PNG or load the example first.

3. Extract from PNG

The newly generated PNG is selected automatically. Choose another PNG below to inspect it.

4. Alteration experiment

Trials use a copy of the currently decoded pixels. They do not change the source or your downloaded PNG.

Choose a PNG or load the example.

Comments & questions

Image Steganography Lab

Store a UTF-8 message in the least significant bit of either all three RGB channels or just the blue channel of a PNG. The browser reopens its generated PNG, checks the length and CRC-32, and shows the extracted text. Compare channel capacities, then experiment with a one-bit edit or JPEG recompression to see how the message can break. This is an educational format, not encryption, secrecy, tamper protection or a way to recover data after editing.

Key features

  • PNG-only RGB and blue-channel LSB methods with separate byte capacities
  • UTF-8 messages, including Korean and emoji, up to 8,192 bytes
  • Reopen the generated PNG and check length, CRC-32 and UTF-8 round trip
  • Extract from a separate PNG with explicit damage and unsupported-format errors
  • One-bit damage and actual JPEG recompression trials

How to use

  1. Choose an opaque PNG or load the example; transparent pixels are flattened onto white.
  2. Choose RGB or blue-only mode, enter a short message and check byte capacity.
  3. Create the encoded PNG and let the browser reopen the file to verify extraction.
  4. Download the PNG, and select it again in the extraction section when needed.
  5. Try a one-bit change and JPEG conversion to observe checksum damage or header loss.

Use cases

  • Learn how least significant bits work in lossless PNG pixels
  • Compare the capacity of RGB and a single blue channel
  • Observe how recompression and pixel editing affect embedded data

Frequently asked questions

Can I send secure messages with this tool?

No. Messages are not encrypted and anyone who knows the format can read them. CRC-32 checks for accidental damage; it is neither authentication nor tamper protection.

Why does it accept only PNG?

LSB data needs exact pixel values. JPEG uses lossy compression and can destroy the message. Even a PNG may lose it after color conversion, resizing or resaving in another app.

Why do transparent areas become white?

A browser can change RGB under transparent pixels while saving. This tool flattens onto white before embedding, so every output pixel is opaque. It does not preserve source alpha.

What does a CRC error mean?

The message length was readable, but extracted bytes do not match the stored check value. It does not mean the original text can be recovered.

How is this different from a watermark?

A watermark places visible text or a logo over an image. This lab changes pixel LSBs to store a short text string inside the file and read it back.

Privacy

The image and text are processed in this tool's browser memory and are not sent to this site's server API. The downloaded PNG contains an unencrypted message; review it before sharing.

Related Tools

Image WatermarkImage Difference HeatmapImage Quality LabImage Super ResolutionHDR Exposure MergerPhoto Colorization LabPanorama StitcherSheet Nesting PlannerEdit Decision WorkbenchTeleprompter StudioBilingual Video Study PlayerChord Progression LabMusic Score EditorSubtitle WorkbenchSpatial Audio DesignerMusic Chord Candidate AnalyzerMIDI Piano Roll EditorSample Instrument BuilderImpulse Response LabAudio Waveform EditorDTMF Signal LabSpectrogram Sound PainterAudio Spectrum AnalyzerAudio DenoiserAudio Source SeparatorSound Effect SynthesizerMultitrack Audio MixerAudio Transient SlicerAudio Loop Seam FinderAudio Loudness AuditorAudio Pitch Tempo StudioStereo Anaglyph MakerPhoto Mosaic MakerImage Frequency SpectrumSimilar Photo FinderLenticular InterlacerPBR Texture Map LabPanorama Tour BuilderImage Calibration TargetsVector Morph EditorDocument Perspective CorrectorImage Inpainting StudioKnitting Chart EditorSVG Boolean WorkbenchSVG Path EditorSeamless Pattern MakerScreenprint Separation StudioQuilt Layout PlannerPerspective Mockup StudioLow Poly Mesh MakerFont Subset BuilderFocus Stacking LabImage Depth EstimatorCross Stitch Chart MakerAnimation Timeline EditorPixel Paint StudioID photo makerBarcode scannerVideo to GIFVideo Chroma KeyerVideo StabilizerVideo Reframe StudioStop Motion StudioVideo Timecode ConformerVideo Quality ComparatorHLS and DASH Manifest ValidatorVideo Speed Ramp EditorVideo Container InspectorVideo Storyboard MakerVideo Privacy MaskerRotoscope Mask EditorVideo Motion TrackerVideo Frame InterpolatorAudio Description EditorVideo Audio Sync LabVideo TrimmerGIF Frame ExtractorSVG to PNG / JPEGImage to SVG VectorPixel Art ConverterCircle Profile CropPhoto and Polaroid FrameRound Image CornersJPEG EXIF Viewer and RemoverImage Color Vision SimulatorImage to ASCII ArtPhoto CollageInstagram 9-Tile SplitterLong Image SplitterImage CropRotate and Flip ImagesImage FiltersMeme GeneratorScreenshot BeautifierBarcode GeneratorQR Code GeneratorImage CompressorImage ResizeImage ConverterFavicon GeneratorYouTube Thumbnail ExtractorHEIC to JPGSignature & Stamp MakerGIF MakerImage Color PickerImage to Text (OCR)Merge ImagesPhoto Blur & MosaicQR Code ScannerMP4 to MP3 ConverterVideo CompressorBackground Remover
Explore all Image/Media tools →Text/Convert →Life/Fun →Dev Tools →