Privacy Policy

Effective date: June 6, 2026  ·  MIT-licensed open source project

100% Offline — Nothing Leaves Your Device
The short version: Stegno is a fully offline, server-less steganography toolkit. It runs entirely on your device — desktop (via Tauri) or Android (via native Kotlin/Compose). It has no server to send data to, no accounts, no analytics, and no internet connection whatsoever. This policy exists to make that explicit and legally clear.

1. What Stegno Does

Stegno lets you hide encrypted data inside ordinary files (images, audio, text) and extract it again — all locally on your device. It uses AES-256-GCM encryption with Argon2id key derivation and a suite of steganographic methods (LSB, PVD, DWT, JPEG-DCT, etc.). Everything happens inside the app; nothing is transmitted anywhere.

2. Data We Do Not Collect

✓ None of the following are ever collected
  • Your secret messages, files, or passphrases
  • The cover files (images, audio) you use as carriers
  • Embedded or extracted stego output files
  • Your device identifiers, hardware info, or location
  • Usage analytics, crash telemetry, or event logs
  • Any personally identifiable information whatsoever

Stegno's core engine (stegno-core) is a single audited Rust crate with no network dependency. The desktop and Android apps call that same engine locally via UniFFI bindings.

3. Network Activity

✓ Zero network requests at runtime

Stegno makes no network connections during normal operation. There is no backend server, no cloud sync, no license check, and no update ping. If you run a network monitor alongside Stegno you will see no outbound traffic originating from the app.

4. Passphrase Security

Your passphrase never leaves your device and is never stored to disk. It is used in-memory solely to derive an AES-256-GCM encryption key via Argon2id. Once the session is over, the derived key is dropped from memory.

Security note
Argon2id makes brute-force expensive but cannot rescue a weak passphrase. Choose a strong, unique passphrase. The plausible-deniability decoy slot only provides deniability if you actually embed a decoy — the real slot is then indistinguishable from unused LSB noise without the correct real passphrase.

5. Files You Process

All cover files, secret content, and output stego files remain entirely under your control on your local filesystem. Stegno reads and writes only what you explicitly point it to. No copies are created anywhere outside the path you specify.

6. Third-Party SDKs & Dependencies

Stegno's runtime dependencies are all open-source Rust crates and Android/Tauri platform libraries. None of them are analytics, advertising, or tracking SDKs. You can audit every dependency in Cargo.lock in the public repository.

7. Permissions (Android)

The Android app requests only the permissions necessary to read and write files for steganographic processing. It does not request permission to access the internet, contacts, location, camera, or microphone.

8. Changes to This Policy

If this policy ever changes (for example, if a future version adds an optional cloud feature), the effective date above will be updated and the change will be noted in the project's changelog and README.