Skip to main content

Universal steganographic analysis — statistical, forensic, and neural watermark detection

Project description

Stegmark

Universal steganographic analysis — statistical, forensic, and neural watermark detection.

Install

pip install stegmark                  # statistical + forensic detectors
pip install "stegmark[neural]"        # + TrustMark / Stable Signature neural detection

Usage

from stegmark import analyze, robustness_test

# Analyze any image
result = analyze("image.jpg")
print(result.verdict)
print(result.confidence)
result.save_report("audit.pdf")

# Test watermark robustness
report = robustness_test("cover.jpg", secret="my_id")
print(f"Survived {report.survival_rate:.0%} of attacks")
print(f"Failed: {report.failed_attacks}")
report.save_report("robustness_audit.pdf")

# With cover image for quality metrics
result = analyze("stego.jpg", cover_path="original.jpg")
print(f"PSNR: {result.psnr:.1f} dB  SSIM: {result.ssim:.4f}")

What it detects

Detector Domain Catches
Chi-square JPEG DCT LSB replacement in DCT coefficients
RS Analysis Spatial Pixel-level LSB substitution
SPA Spatial Sample pair analysis
EOF Detection Forensic Data appended after image end marker
EXIF Analysis Forensic Metadata anomalies, steg tool fingerprints
LSB Histogram Forensic LSB plane uniformity
Multi-channel Forensic Per-R/G/B channel embedding
TrustMark Neural Adobe C2PA robust watermarks
Stable Signature Neural Meta AI Stable Diffusion watermarks
SRNet Neural/GPU Adaptive spatial steg (WOW/S-UNIWARD/HILL)

API

Also available as a hosted API: https://raghav7006--stegmark-api-web.modal.run

curl -X POST https://raghav7006--stegmark-api-web.modal.run/analyze \
  -F "stego=@image.jpg"

Installation Notes

Apple Silicon (M1/M2/M3 Mac)

jpegio requires a native arm64 build:

ARCHFLAGS="-arch arm64" pip install jpegio
pip install stegmark

Linux

pip install stegmark

Windows

jpegio is not supported on Windows. Use WSL2 or Docker.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

stegmarc-1.0.0.tar.gz (31.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stegmarc-1.0.0-py3-none-any.whl (34.9 kB view details)

Uploaded Python 3

File details

Details for the file stegmarc-1.0.0.tar.gz.

File metadata

  • Download URL: stegmarc-1.0.0.tar.gz
  • Upload date:
  • Size: 31.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for stegmarc-1.0.0.tar.gz
Algorithm Hash digest
SHA256 9da28b7c4bc317c416cb661f61d79feaf6eed1712a5a0a20fd70feceedf76cab
MD5 c795dcf248c214a770b234d5d908a730
BLAKE2b-256 8eb0e1d0347c8108dcc7f8dd0a900e47f5c63040f50e7cdef4d49571a2e2a88d

See more details on using hashes here.

File details

Details for the file stegmarc-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: stegmarc-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 34.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.2

File hashes

Hashes for stegmarc-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6108c995f17419f43bace72600376a9c21a59c6d16371a3a94315aa260017493
MD5 0f63d51f3757a9e8267fdd3c10d55d9a
BLAKE2b-256 38032f9134c2d4a66a44dc3f3048e03ec288e157e79174b23f12dc09925dcd6c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page