Forward secrecy from the very first message
Why Verus keeps a steady supply of single-use keys, so every new conversation starts with forward secrecy however many people you meet.
What I tried
Each new Verus conversation uses a single-use key, which gives even the first message forward secrecy. The first version set up a fixed supply at sign-up.
Why I chose differently
A fixed supply suits a private messenger. A team, where everyone meets everyone, needs it to keep coming. Verus was moving towards teams.
What I chose
The apps now replenish the supply as it is used. In review I also made replenishing safe against an uncertain reply from the server, so a key is never advertised that the app cannot honour.
The principle
In key management, plan for the case where the other side succeeded and you never heard back.
- Signal protocol
- Forward secrecy
- Prekeys
- End-to-end encryption