Notice: Preliminary Architectural Draft PolicyThis document is an engineering and informational draft illustrating IndiChat's architectural privacy commitments. It does not constitute formal legal counsel. Official legal policies should be reviewed by accredited legal advisors prior to commercial multi-tenant operations.
Data Governance & Cryptographic Privacy

Privacy Policy

Last revised: November 2026 • Architecture Spec

01

Core Privacy Philosophy

IndiChat is designed around strict data minimization and user sovereignty. We believe your conversations, calls, and files belong solely to you. We do not sell user data, integrate third-party advertising SDKs, or harvest behavioral tracking telemetries.

02

Data We Process

  • Account Authentication Data: Usernames and email addresses. User passwords are encrypted using the BCrypt cryptographic algorithm with a logarithmic work factor of 12. Plaintext passwords are never persisted.
  • Passkey Public Credentials: When using WebAuthn / FIDO2 Passkeys, your biometric information and private keys remain strictly within your device hardware enclave. IndiChat only stores the public key credential and credential ID.
  • Session & Device Metadata: When you connect, we record device type, platform, and IP address in user_linked_devices to allow you to inspect active sessions and remotely disconnect compromised devices from Settings.
  • Media & Files: Uploaded attachments are stored in object storage (MinIO / S3) using randomized UUID filenames, preventing predictable resource enumeration.
03

Real-Time Communications & WebSockets

IndiChat coordinates real-time messaging and WebRTC call signaling through high-throughput duplex WebSockets. Undelivered messages are held in PostgreSQL until delivery confirmation (message.delivered) is acknowledged by the recipient socket client.

04

Local Archives & Chat Backups

Local archive exports generated on client devices are strictly client-side operations. IndiChat does not upload or analyze exported plaintext chat archives.

05

Account Termination & Data Deletion

Users may request full account deletion through Settings. Deletion purges user credentials, linked device sessions, active socket tokens, and conversation memberships across the system.