How do they manage to make the same messages appear on multiple devices?
For a long time, they didn't.
I don't know for sure, but I expect it involves keys that multiple devices share. Any "linked" device would be able to download the encrypted copy and decrypt the message that way. Once any device has done that, it can send a copy to any other devices using the unique keys it knows for that device.
It's both amazing and annoying that Google is perfectly able to create useful apps for iOS (despite the huge limitations the OS imposes) but Apple can't figure out how to make any Android app that isn't utter crap with fewer restrictions imposed on them.
Accessing the keys from the server isn't really a mystery or hidden. It's technically possible for Apple to write software to query servers run by Google as well as any servers they created for themselves.
You don't need implementation source code when you have open standards already.
WhatsApp actually used Signal's development team to rollout the Signal protocol for them, but that app is still untrustworthy.
I would argue that bad experiences aren’t due to trains but due to poor investment and management.
I agree. I used trains to get to school as a commuter.
Nothing makes a train more unusable than not knowing when it will arrive at the destination (it was sometimes hours late) or if it will show up at all (the schedule was constantly changing, and some trains would just be cancelled when equipment was broken).
For Signal, they will know when and how often you receive Signal messages.
Notifications are used to "activate" the app on your device. Then it will connect to Signal servers and download the encrypted messages.
After the software on your device decrypted the message, then it has the sender details and message content.
There are settings to control how much of that information is used when creating the local notification. Because other apps might log notifications.
@jackalope
@L4s