> 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.
Right, that makes sense, although the article doesn’t go into detail about how the server decides when it’s time to delete a message.
It also doesn’t back up your claim that multiple devices sharing the same account will ever exchange messages amongst each other. Which would be a technical nightmare BTW since they could be located behind firewalls etc. and this still require a central server to coordinate. Might as well keep the middle man in that case and leave the messages on the server until they’ve been retrieved.
My initial point therefore is mostly correct: messages ARE stored on their servers in encrypted form for an unknown length of time, although likely not forever.
The algorithm for when to delete could be very simple: 1) is expired? or 2) the client confirmed download.
Thinking of it as a shared account is likely wrong. Every device has its own place to check. Exchanging messages doesn’t have to mean direct connections. It doesn’t mean that for Signal.
The messages temporarily on the server can’t be read by the server, that’s the important difference. They also are not stored forever. The storage costs would grow forever that way.
> 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.
This link describes independent queues for devices: https://support.signal.org/hc/en-us/articles/5532268300186-Disappearing-Messages-with-a-Linked-Device
@MacNCheezus
Right, that makes sense, although the article doesn’t go into detail about how the server decides when it’s time to delete a message.
It also doesn’t back up your claim that multiple devices sharing the same account will ever exchange messages amongst each other. Which would be a technical nightmare BTW since they could be located behind firewalls etc. and this still require a central server to coordinate. Might as well keep the middle man in that case and leave the messages on the server until they’ve been retrieved.
My initial point therefore is mostly correct: messages ARE stored on their servers in encrypted form for an unknown length of time, although likely not forever.
The algorithm for when to delete could be very simple: 1) is expired? or 2) the client confirmed download.
Thinking of it as a shared account is likely wrong. Every device has its own place to check. Exchanging messages doesn’t have to mean direct connections. It doesn’t mean that for Signal.
The messages temporarily on the server can’t be read by the server, that’s the important difference. They also are not stored forever. The storage costs would grow forever that way.
@MacNCheezus