Live data from Hacker News

Ask HN: How do we know Signal or Telegram don't store our data on their servers?

news.ycombinator.com

81–90 of 241 posts

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#81

Earlier quoted context omitted.

My understanding: If you verify the safety numbers in person, then I believe you can be confident that it's E2E encrypted for that conversation. If the safety numbers are different, then there could be a nefarious actor listening in. Someone please correct me if I'm wrong. Edit: That being said, I believe they could still record IPs, as well as the destination and timestamps of each message.

If they were storing that it would have been produced when they were forced to produce all data relevant to the case.

Agreed. Just pointing out what information they have access to if they wanted to start logging as much as they could.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#82
post #74

What prevents Google from replacing Signal on the Android Application store with their custom and backdoored version ? Can we check a hash or something ? Does the signal foundation do that on a regular basis ?

If Google wanted to read your messages and were willing to use malware to do it, there’s little to stop them on Android. Even if Signal checked the apk regularly, there’s no guarantee that the apk served to them is the same one served to everyone else. They could also push an update to the OS that recognizes the Signal apk and applies a patch after downloading but before installing. That said, Signal does apparently…

> They could also push an update to the OS that recognizes the Signal apk and applies a patch after downloading but before installing.

Ah, right, there's also that.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#83
post #61

Earlier quoted context omitted.

The server can MITM the public keys, providing you with a key from the server instead of the key from your conversation partner. It very much does matter if the server is malicious.

Not if the keys are generated by the client. Signal also offers to label contacts for which you could verify the authenticity by another way. Doing a video call with the contact can be a simple way to clear doubts, even if it is not a proper different channel.

This is false. A video call will not prevent or detect MITM. You may be suggesting that a video call is used to authenticate the key, which is certainly a step in the right direction, but I don't think Signal supports this.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#84
post #61

Earlier quoted context omitted.

The server can MITM the public keys, providing you with a key from the server instead of the key from your conversation partner. It very much does matter if the server is malicious.

If you are paranoid, you can do public key verification through another channel. People with high risk profiles should do this.

Key authentication is not for the "paranoid" or simply those with "high risk profiles", otherwise every web browser in the universe wouldn't do it by default on every single connection to every single website. It is a normal, routine thing that is expected in all modern secure communications systems.

Please don't spread this harmful meme.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#85
post #41
post #38

We don't know that Signal doesn't store data about users on its servers. Even the source code can't tell us that, because we don't run the servers. What we do know is that programs like Telegram have to store data about users on their servers, by design. A big difference between the two projects is that Signal is carefully designed to minimize the amount of data the service needs to operate; it's why identifiers are…

Signal has reproducible builds for Android. https://signal.org/blog/reproducible-android/ Does that help in any way to verify that they do not store data on their servers?

It only helps verify what data the client sends to their servers, not what fraction of that data is stored on their servers. They could be (but probably aren't; see other comments) storing e.g. information about how often you connect and the volume of data that passes through their servers.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#86
post #68
post #51

Earlier quoted context omitted.

I imagine it's non-trivial. I think it would involve (in case of iOS): 1. downloading the binary 2. jailbreaking the phone to extract the binary (pretty sure this is necessary on iOS) 3. check the version of the binary, then compile the original sources of the version 4. ??? compare the two binaries, this is likely the most difficult part, they won't be identical because of things like codesigning (and build flags, t…

You don't compare builds because you probably don't actually have sources. What you do is use a special iPhone (a Security Research Device) that Apple grants some researchers or you use an emulator like the one from Corellium (to whom Apple recently lost a lawsuit over this emulator) to probe and step through the code. Find the key sections that do the real crypto work and make sure that they do what they are suppose…

> You don't compare builds because you probably don't actually have sources

https://github.com/signalapp/Signal-iOS

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#87
post #83

Earlier quoted context omitted.

Not if the keys are generated by the client. Signal also offers to label contacts for which you could verify the authenticity by another way. Doing a video call with the contact can be a simple way to clear doubts, even if it is not a proper different channel.

This is false. A video call will not prevent or detect MITM. You may be suggesting that a video call is used to authenticate the key, which is certainly a step in the right direction, but I don't think Signal supports this.

It will, because it will prove (or give you a lot of confidence) that the agent who sent you their public key is your legit correspondent.

This uses the fact that the client on each side is open source and inspectable, so that each side knows that they sent only the public key that they generated on their own device.

PS: to answer your last sentence, Signal allows you to flag specifically contacts that you managed to verify. Which is technically equivalent to say that you verified that the public key is theirs.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#88
post #83

Earlier quoted context omitted.

This is false. A video call will not prevent or detect MITM. You may be suggesting that a video call is used to authenticate the key, which is certainly a step in the right direction, but I don't think Signal supports this.

It will, because it will prove (or give you a lot of confidence) that the agent who sent you their public key is your legit correspondent. This uses the fact that the client on each side is open source and inspectable, so that each side knows that they sent only the public key that they generated on their own device. PS: to answer your last sentence, Signal allows you to flag specifically contacts that you managed to…

Yes, but it doesn't support doing that whilst in a video call with them.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#89

Earlier quoted context omitted.

PIA used to be my go-to, but I immediately ceased using PIA after the 2019 acquisition by Kape Technologies, which has a rather foul track record.

What did you switch to?

AlgoVPN is really so easy that it's hard for me to justify using anything else.

Re: Ask HN: How do we know Signal or Telegram don't store our data on their servers?

#90
post #88

Earlier quoted context omitted.

It will, because it will prove (or give you a lot of confidence) that the agent who sent you their public key is your legit correspondent. This uses the fact that the client on each side is open source and inspectable, so that each side knows that they sent only the public key that they generated on their own device. PS: to answer your last sentence, Signal allows you to flag specifically contacts that you managed to…

Yes, but it doesn't support doing that whilst in a video call with them .

[edited]

Indeed it is far from straightforward that merely doing a video call suffices to check the keys.

Signal is famously using a special protocol for secure key sharing through the server, which I have not studied.

But as said by another comment, there is no way around verifying explicitly the public key using an independent channel.

Post reply on HN