- Dec 19, 2023
- 11
Signal is widely seen as the gold standard of secure messaging. I’ve been digging into how Signal handles identity verification, especially when a user switches devices, to understand why it’s so trusted. Here’s how the process works based on their technical docs and my personal understanding:
I see some potential vulnerabilities in Signal's approach. Curious if others in the community share this concern.
- You log into Signal on a new device with your phone number via SMS code
- A new key pair (new public/private key) is generated—Signal doesn’t reuse old ones
- Signal assigns a new Registration ID
- Signal server flags this as a “device change” and notifies all your contacts: “Safety number has changed"
- Each contact must re-establish a secure session with your new public key. This usually happens silently, except for the visible warning
So in short, in Signal’s model:
- Phone number = identity
- Key pair = encryption only
I see some potential vulnerabilities in Signal's approach. Curious if others in the community share this concern.
- MitM risk on device change: If someone intercepts your SMS during setup, they can hijack your identity and communicate as you.
- User ignorance can lead to security breach: Most users ignore the “safety number changed” alert and keep chatting like nothing happened. Signal offloads risk to the user.
- Social relationships exposure: Signal uses your contact list to auto-discover which friends use Signal. This leaks your social graph—a dataset that is more sensitive than your messages.