Zero Knowledge Architecture

Technical Documentation

Last update: March 2026

MoveChat uses a "Zero Knowledge" architecture to guarantee the highest level of privacy in user communications. This document describes in detail how the encryption system works and its implications for data management.

How End-to-End Encryption Works

Messages exchanged between users on MoveChat are protected by end-to-end (E2E) encryption. This means that:

  • Key generation: Cryptographic keys are generated and stored exclusively on user devices. The server never has access to private keys.
  • Client-side encryption: Each message is encrypted on the sender's device before being transmitted to the server. The server only receives encrypted data it cannot decrypt.
  • Client-side decryption: Only the recipient's device has the key needed to decrypt the received message.
  • No keys on the server: The platform operator does not have decryption keys and technically cannot access conversation content.

This architecture ensures that even MoveChat, as the platform operator, cannot read, intercept or recover message content.

What the operator CANNOT see

By design and technical constraint, the MoveChat operator has no access to:

  • Message content: Messages are E2E encrypted and the operator does not have decryption keys
  • Precise user location: Locations shown on the map are approximate (~500m) and based on manual user input
  • Agreements between users: Any understanding, financial agreement or decision made between users takes place in encrypted chats or outside the platform
  • Conversation content: Even in case of requests from judicial authorities, the operator can only provide connection metadata (timestamp, user ID) but not the content of communications
  • Files and media shared in chat: Attachments shared in chat are also subject to E2E encryption

What the operator CAN see

For the functioning of the platform, the operator has access to the following data:

  • Registration data: Name, email, date of birth and data provided during registration (necessary for service provision and legal compliance)
  • Published ads: Contact requests published by users are visible to the operator as public platform content
  • Average ratings: Mutual user ratings are public data within the platform
  • Connection metadata: Access timestamps, IP addresses and session identifiers (kept for security purposes for up to 12 months)
  • Phone number: We do not store it in clear text: we keep a non-reversible fingerprint, to prevent duplicate accounts, and a sealed copy that can only be reopened with a private key kept outside our systems. It is never visible to other users

Why this choice

The adoption of Zero Knowledge architecture responds to specific legal and user protection needs:

Legal qualification

MoveChat is qualified as an information society service under Directive 2000/31/EC and Italian Legislative Decree 70/2003. As such, the operator provides exclusively the technical communication infrastructure without having knowledge or control over the content exchanged between users. The Zero Knowledge architecture is the technical guarantee of this qualification.

  • Privacy by Design (Art. 25 GDPR): Data protection is integrated into the design of the system itself, not added afterwards
  • Data Minimisation (Art. 5.1.c GDPR): By not collecting communication content, MoveChat applies the minimisation principle in its strictest form
  • User protection: the content of conversations is encrypted on the device and the server does not have the keys to read it
  • Consistency with the nature of the service: MoveChat is a communication platform, not a surveillance platform. Zero Knowledge architecture is the technical manifestation of this principle

Simplified technical diagram

Sender device

Generate key → Encrypt message → Send encrypted data

MoveChat Server

Receive encrypted data → Forward to recipient → Cannot decrypt

Recipient device

Receive encrypted data → Decrypt with local key → Read message

Cryptographic keys

Generated and stored ONLY on user devices. Never transmitted to the server.

Last update: March 2026

This document is an integral part of MoveChat's technical documentation and is updated when changes are made to the system architecture.

  • Home
  • How it works
  • Help
  • Delete account
  • Privacy
  • Become an Android tester
  • Terms