Telegram allows you to "unsend" messages coming from either party, and has no time limit

The way that modern messaging services typically work is that you can associate the copy on a given device with any number of phone numbers and email addresses (and probably other things). The app takes cryptographic hashes of those addresses, and associates them with the arbitrary internal ID number which is your “real” login. When it scans your address book, it generates hashes of all your contacts’ addresses, and asks the server if any of them have associated accounts.

If the system is designed to work securely, then the server never actually sees a phone number, and if the FBI asks for the phone numbers associated with an account, the messaging service provider can truthfully say “we don’t know”. Because it is not possible to work out the phone number from the hash. However, if the FBI asks what account is associated with the phone number 867-5309, the messaging company can answer that (otherwise you’d never be able to connect to anyone).

Another practical advantage to using multiple, secondary identifiers – rather than having to know a specific WhatsApp / Telegram / Signal username – is that it makes account management easier for both the user and the service. It causes problems if you stop using a phone number and someone else starts using it (which happens in the US and Canada because of the odd way they manage phone numbers), but you can learn to avoid that.

2 Likes