Stegstr
No. Anyone with Stegstr can open an "Open" image. A "Recipients" image needs the matching key.
No. Detect runs entirely on your device, in the web version entirely in the browser tab.
Only what you choose to publish with Network on: posts and reactions go to Nostr relays (public), direct messages go encrypted. Uploaded pictures go to nostr.build unencrypted. Nothing else. See privacy.
Robust and QIM images look like ordinary JPEGs and pass the classical steganalysis battery at normal settings. No hiding method is undetectable to a determined analyst with the original photo; Stegstr's goal is that the message is encrypted and the image looks unremarkable.
Any common photo as a cover. Output is JPEG for Robust and QIM, PNG for Dot.
No. Recompression and resizing are survived by the default method; crops beyond about two percent, any rotation, and screenshots are not.
Yes. Detect tries every method Stegstr has ever shipped.
The web version runs in a mobile browser for embedding and detecting. Native mobile apps are not part of the current release.
The image is just a photo to them. The events inside are standard NIP-01 events; once published to a relay through Stegstr, other clients see them normally.
Yes, two ways. Connect a Lightning wallet in Settings (Nostr Wallet Connect) and notes can carry invoices you pay with one tap, and Zap pays the author. Notes can also carry Cashu ecash tokens, which the reader redeems into their wallet. Both work inside hidden images. See Lightning and ecash.
No. Your wallet keeps the funds and the spending limit; Stegstr keeps only the connection string. Ecash lives at its mint until someone redeems it.
Robust: 48, 163 or about 1,217 bytes depending on mode. QIM: depends on the cover and target platform, typically a few kilobytes at 1080 px. Dot: far more, but only for lossless channels. The app shows the capacity before you embed.
Each mode needs a minimum short edge (320, 384 or 960 pixels) and enough texture. Use a larger, more detailed photo or a smaller mode.