Anpucha
End-to-end encrypted messaging for people who may be asked to unlock their phone.
Open the appWorks in the browser. No app store, no install required.
Code Protection
One account holds any number of separate spaces. Each is opened by its own code, and the code is never sent anywhere — it is the key, not a password to be checked.
Because nothing is stored to compare against, there is no wrong code. A different code simply opens a different space. Handing someone a code under pressure opens a real, ordinary conversation history, and nothing about the app can show that any other space exists.
We can describe exactly how this works without weakening it, which is the whole design: the guarantee comes from the structure, not from the method being secret.
What the server can see
Messages are encrypted on your device. The server stores ciphertext and opaque identifiers and can decrypt none of it — not your messages, not your contact list, not the names you give things. Message sizes are padded into buckets, so even the length of what you write is blurred.
Your email address is used once, to confirm you control it, by a small separate service that never sees any message data or any code.
What it does not do yet
Worth stating plainly. There is no forward secrecy: a chat's keys are static between rotations, so a key recovered today would open that chat's older messages. There are no duress codes and no two-factor authentication yet. A six-digit code is short enough that a well-equipped forensic lab with a copy of your data could work through every possibility offline — longer codes are meaningfully stronger.
There are no read receipts, no typing indicators and no "last seen", and there never will be.