Live data from Hacker News

How the Textsecure Protocol Works

alexkyte.me

11–20 of 87 posts

Re: How the Textsecure Protocol Works

#11

Nice overview. I only wish for there to be an implementation of the signal protocol that fits my needs. In WhatsApp and Allo there are concerns of ad companies using your metadata, and the Signal app is lackluster in the UX department and OWS's affinity with Google is rather disappointing also.

> I only wish for there to be an implementation of the signal protocol that fits my needs. ...and which most of my friends used. I'm OK with Signal's UX, but the problem is that I know exactly two people who use it too, everyone else is on WhatsApp. I mean: Writing this implementation would be hard, but still tremendously easier than getting enough traction to make it useful.

People can change fairly quickly to a new platform and it doesn't have to be all or nothing. I stopped using WhatsApp and have convinced most of my friends to install Signal for communicating with me in place of SMS.

However it's hard to recommend because of the lack of features.

Re: How the Textsecure Protocol Works

#12
> Instead, copies of the server's role in the key negotiation are stored by a centralized server for potential clients to fetch and use. This

"centralised" and "server" are just about the worst words you want to hear in the description of a system like this and yet they are just thrown in there in a flippant comment at the end of a section?

I think a more detailed description of this glorified cache is warranted.

Re: How the Textsecure Protocol Works

#13
post #9
post #5

Earlier quoted context omitted.

- we don't have access to the source code, so who knows what they have implemented? - even if they have implemented it faithfully, you should compare fingerprints. If they don't line up, you might be subject to a MITM attack

1. Anyone who can read a control flow graph. 2. Yes.

I just love reading post-optimisation machine code.

Re: How the Textsecure Protocol Works

#14
post #8

Earlier quoted context omitted.

Open source is a red herring. You're downloading WhatsApp from an app store (or, at least, the overwhelming majority of users are). If you can't verify what the binary is doing, the source code doesn't make a difference. Beyond that, despite the repeated claims of open source advocates, there's nothing preventing people from taking the app store versions of things like WhatsApp and reverse engineering them.

If builds were reproducible (i.e. binaries would be identical if recompiled with the same toolchain on a different machine), then all it would take is N independent builders to verify the app store binary matches their locally built binary to greatly decrease the likelihood of tampering. So, while being open source is not the complete answer, it certainly doesn't hurt.

Or we could have build systems that weren't even more convoluted and fragile than they were 50 years ago and just release software in the form it's supposed to be in.

Re: How the Textsecure Protocol Works

#15
post #12

> Instead, copies of the server's role in the key negotiation are stored by a centralized server for potential clients to fetch and use. This "centralised" and "server" are just about the worst words you want to hear in the description of a system like this and yet they are just thrown in there in a flippant comment at the end of a section? I think a more detailed description of this glorified cache is warranted.

Oh it's not warranted is it?

Does whichever butthurt shill clicked that button want to suggest why we don't need more detail on which central server stores what in this self-proclaimed "secure" system?

Re: How the Textsecure Protocol Works

#17
post #8

Earlier quoted context omitted.

Open source is a red herring. You're downloading WhatsApp from an app store (or, at least, the overwhelming majority of users are). If you can't verify what the binary is doing, the source code doesn't make a difference. Beyond that, despite the repeated claims of open source advocates, there's nothing preventing people from taking the app store versions of things like WhatsApp and reverse engineering them.

If builds were reproducible (i.e. binaries would be identical if recompiled with the same toolchain on a different machine), then all it would take is N independent builders to verify the app store binary matches their locally built binary to greatly decrease the likelihood of tampering. So, while being open source is not the complete answer, it certainly doesn't hurt.

I don't think it hurts! All else being equal, I'd rather have source than not have it. What I don't accept is our supposed helplessness in detecting backdoors in secure messaging software.

Re: How the Textsecure Protocol Works

#18
post #12

> Instead, copies of the server's role in the key negotiation are stored by a centralized server for potential clients to fetch and use. This "centralised" and "server" are just about the worst words you want to hear in the description of a system like this and yet they are just thrown in there in a flippant comment at the end of a section? I think a more detailed description of this glorified cache is warranted.

The server role seems quite clearly described in more detail in the actual protocol description, is there something missing? The section you quote just describes the high-level idea of why and how to introduce the server in the scheme.

Re: How the Textsecure Protocol Works

#19
This post doesn't explain the protocol all that well.

This is a great explainer:

https://vimeo.com/117532499

I can't seem to find the PDF of the slides of this talk anymore.

These are also very useful for understanding:

https://whispersystems.org/blog/advanced-ratcheting/

https://whispersystems.org/blog/private-groups/

https://github.com/trevp/double_ratchet/wiki

Re: How the Textsecure Protocol Works

#20

Nice overview. I only wish for there to be an implementation of the signal protocol that fits my needs. In WhatsApp and Allo there are concerns of ad companies using your metadata, and the Signal app is lackluster in the UX department and OWS's affinity with Google is rather disappointing also.

It's beta currently, but we're trying to fill this gap in matrix.org with the Olm & Megolm ratchets as showcased in the web version of http://riot.im. Once it's implemented on mobile too (around the end of October) it will hopefully be a compelling option!
Post reply on HN