Unblock — Legal

Privacy Policy

How the Unblock app handles your data — designed from day one to collect nothing.

Effective date: 12 August 2026

1. Summary

Unblock is designed to work without an account, without a server, and without collecting personal data. We do not run analytics, we do not attach an advertising ID, and we do not upload your contacts, location, or messages to any service under our control.

2. Data We Collect

None on our servers. Unblock has no backend operated by us. All data the app processes is stored on your device in an encrypted local database: • Device identity (Ed25519 keypair) — Signing your broadcasts and DMs — encrypted at rest (PIN-derived key, Argon2id) • Channel keys (content encryption keys) — Decrypting messages from channels you follow — encrypted at rest (database encryption) • Channel metadata (name, size/rate limits) — Enforcing channel rules locally — not encrypted • Messages (ciphertext + signatures) — Displaying channel and group content — encrypted at rest (XChaCha20-Poly1305) • Direct messages (1:1 and group) — End-to-end encrypted conversations — encrypted at rest (Double Ratchet) • Following list (channel public keys) — Knowing which channels to relay and display — not encrypted • Contacts (DH keys + display names) — Reaching 1:1 and group members — encrypted at rest (database encryption) • Outbox (unsent messages) — Store-and-forward when the mesh is unavailable — encrypted at rest (same as messages) • Local moderation state — Message IDs you hid, senders you muted — encrypted at rest (database encryption) Not stored: phone number, email, IP address, location, contacts from your phone's address book, browsing history, device identifiers, or any other personally identifiable information (PII).

3. Data That Leaves Your Device

When you broadcast or send a message, Unblock relays it over: • Bluetooth Low Energy (BLE) mesh — to nearby devices in radio range. • Local Wi-Fi (LAN) mesh (optional, off by default) — to other app users on the same Wi-Fi network, for higher throughput. Traffic stays on the local network and is never sent to the internet. • LoRa (sub-GHz radio) — for long-range, low-bandwidth relay when paired with a LoRa-capable accessory (Meshtastic). • Nostr relays over the internet (optional) — if you have configured relay URLs and internet is available. Mesh frames are wrapped in Nostr events (kind 30078) and sent via WebSocket. The relay receives the encrypted frame and the bridge's ephemeral public key — nothing else. The relay cannot read message content (it is encrypted under the channel key or Double Ratchet session key, neither of which is sent to the relay). The relay does see the connecting device's IP address, as with any WebSocket connection — use Tor or a VPN if this is a concern. No IP addresses, device identifiers, or location data are included in mesh frames. Public channel messages are signed but not encrypted so any recipient can verify the sender. Direct messages and group messages are end-to-end encrypted. Nostr relays are third-party servers you choose to connect to. Each relay operator has its own policy. We do not operate any relay.

4. Permissions and Why We Ask

• Bluetooth Scan / Connect / Advertise — Discover and relay to nearby devices over BLE mesh • Nearby Wi-Fi Devices — Reach other app users on the same local Wi-Fi network (optional, off by default) • Access Fine Location — Required by Android for BLE scanning — we do not record or transmit location • Camera — Scan channel, group invite, and contact QR codes • Post Notifications, Foreground Service, Wake Lock — Keep the mesh service running while the screen is off • Internet — Optional Nostr relay bridge We do not request contacts, phone, SMS, microphone, or files.

5. Children

Unblock is not directed to children under 13. We do not knowingly collect information from anyone.

6. Data Retention and Deletion

All data lives on your device. Uninstalling the app deletes it. You can also wipe the local database from Settings inside the app. Panic wipe: The Settings screen includes a panic-wipe button that immediately and irreversibly deletes the entire storage directory — your identity keypair, all channels, all messages, all contacts, the following list, and the outbox — then restarts the app as if freshly installed. Duress PIN: You can set a second PIN that, when entered on the lock screen, silently performs the same irreversible wipe. This is designed for situations where you need to destroy all evidence of use under coercion.

7. Third-Party Services

• Nostr relays you configure. Their operators may log connections, IP addresses, and public event content. • Google Play Services for app distribution. We do not integrate any analytics SDK, crash reporter, or advertising SDK.

8. Security

• Local database is encrypted with a key derived from your PIN (Argon2id key derivation). • Channel message bodies are sealed with XChaCha20-Poly1305 under the channel's symmetric content key. • Direct messages use the X3DH key agreement and Double Ratchet protocol (the same protocol family as Signal) for end-to-end encryption with forward secrecy. • Group messages are encrypted with a shared group key distributed over each member's encrypted 1:1 channel. • The Ed25519 signature covers the ciphertext, so a forged body fails the signature check before decryption is attempted. • Identity secrets never leave the device. • Cleartext HTTP is disabled at the network layer; Nostr relays must use wss://.

9. Changes

If we change this policy we will update the effective date and post the new version at this URL and inside the app (Settings → Privacy Policy).

10. Contact

Email: unblock-support@bluedefense.de Publisher: BlueDefense