Signal is end-to-end encrypted open-source messaging software available for Android, iOS, Linux, MacOS, and Windows. It is tied to (and identifies, when connected to other users) the phone number of each user; it's not clear why this is so.
To be documented:
- device fingerprints and all that kind of stuff that I don't really understand.
- Question: how do you add someone who already has Signal installed? The only way I can find to add a new person is to "invite" them, which just sends them a text inviting them to install Signal.