9 ms·
This is neat but it has plenty of flaws. I wish the definitions were spelled out. It says Signal isn't "anonymous", which I assume means "uses a phone number t
by lvh 8y ago
This is neat but it has plenty of flaws.
I wish the definitions were spelled out. It says Signal isn't "anonymous", which I assume means "uses a phone number to find peers". And it has the usual feature matrix problem: sure XMPP "does E2E". But what does that mean? It supports S/MIME. Do you want S/MIME? (You don't.) It supports OTR, TS and SCIMP too: but you need to be an expert in messaging schemes to understand how those are different. None of them implement double ratchets. None of them implement even close to the privacy features Signal has implemented. But on this diagram it is clearly better because there is more green and less red.
Another example: "open server" and "on-premise" says nothing about whether or not you really want to run one of those instances. It just says that hypothetically one could.
In terms of errors: the linked "E2E audit" for Telegram did not audit E2E at all, and in fact only cites sources saying that it's probably fucked. Wire has a real audit that isn't listed. WhatsApp uses Signal, just with fewer of the.
Use WhatsApp to talk to normal people. Use Signal for nerds, and... probably Matrix for group collab? Or maybe stop caring about secure messages for group collab so much :-)
- arendtio 8y agoYour points are valid but you didn't mention that OMEMO [1] implements Double Ratchet for XMPP. You can find a list of clients which support OMEMO on https://omemo.top https://omemo.top [1] https://en.wikipedia.org/wiki/OMEMO https://en.wikipedia.org/wiki/OMEMO
- lvh 8y agoThat's a fair point, but the fact that there's yet another protocol, not mentioned on the XMPP E2E wiki, kinda plays into the point itself: XMPP has E2E maybe with a bunch of random protocols and the stars (and the people you talk with) need to align _just right_ for all of it to work. I think it would be fair to say that everyone uses WhatsApp and I know what they get, and at this point only XMPP people use XMPP (explicitly) and maybe they get some kind of E2E but who knows which one and what properties that has.
- vader1 8y agoFair enough, but this is kind of inherent for anything based on open standards. Was your email encrypted? It depends on whether the sending and receiving mailserver support TLS. Is your website visit perfect-forward-secret? Depends on whether your browser and the webserver support modern cipher suites. Is your DNS request encrypted? Only if your OS and your DNS server support DNSSEC or DoH. These are valid challenges, but moving to propietary and centralized solutions instead is throwing away the baby with the bathwater. Was your WhatsApp conversation encrypted? You honestly can't know, and even if it is right now, Facebook could disable Whatsapp's e2e encryption at any time without you even noticing. FWIW, OMEMO has been the (only) de facto encryption mechanism for modern XMPP clients in the last couple of years, and most clients that support it clearly distinguish encrypted and non-encrypted messages.
- CiPHPerCoder 8y ago> Is your DNS request encrypted? Only if your OS and your DNS server support DNSSEC or DoH. DNSSEC doesn't encrypt, it only signs.
- lvh 8y agoHow do I know my XMPP client is actually doing what it says? Are you saying the provenance for my XMPP client is fundamentally better than that of the WhatsApp app?
- seba_dos1 8y agoOMEMO and its implementation in Conversations has been security audited by an independent entity. Other than that, sure, you have no guarantees, yet it's still desirable for such critical security components to be free, or at least "open source".
- CiPHPerCoder 8y ago> it's still desirable for such critical security components to be free, or at least "open source". Why the scare quotes? What about software's source code being available makes it more desirable for your non-technical users who will never modify their software?
- Boulth 8y ago> It supports S/MIME. Do you want S/MIME? (You don't.) Could you provide your source? I've never seen S/MIME used in XMPP. Client certificates for authentication sure but not for E2E security. > It supports OTR, TS and SCIMP too: but you need to be an expert in messaging schemes to understand how those are different. OTR is being rolled back from clients in favor of OMEMO for good reasons: https://conversations.im/omemo/ https://conversations.im/omemo/
- lvh 8y agoS/MIME for XMPP E2E: https://xmpp.org/rfcs/rfc3923.html https://xmpp.org/rfcs/rfc3923.html I am aware that OTR is being rolled back. My point is that extensibility is at odds with practical security and privacy for the vast majority of users. The people who need it the most do not understand the difference between OMEMO and OTR, but I can tell them to go install WhatsApp or Signal, give them a rough idea of why you want one or the other, and everything will be copacetic.
- Boulth 8y agoThanks for the link, it appears to be from 2004. > The people who need it the most do not understand the difference between OMEMO and OTR, For most of them there won't be any difference. Modern clients do not implement OTR so people will not even encounter the term and OMEMO is enabled by default so users don't need to bother with it. Federated protocols can be made secure, if there are popular, secure by default players on the market. Look at what happened with HTTP2 and TLS 1.3: browsers basically used their powerful position to upgrade the security for the entire federated ecosystem. There are also other minor factors, such as tooling (SSL Labs) that incentivizes people to maintain their servers. And most certainly users of HTTPS don't need to understand how e.g. Certificate Transparency works, that's handled internally by their clients (browsers). Of course there will always be a niche of low security clients, but who cares that TLS 1.2 doesn't work on some old Java?
- lvh 8y agoIn what sense is HTTP/2 or TLS 1.3 federated?
- gaff33 8y ago> Use WhatsApp to talk to normal people. Use Signal for nerds. This has been my go-to advice for a while now too! The key driving point is that amazing crypto is 100% useless if the person you're talking to doesn't use it, or uses it incorrectly. The only sticking point with the above advice is the nerds who think they understand crypto but don't and insist on you using some crazy app :/
- lrvick 8y agoConsider that security you can't possibly verify is just marketing. Maybe try listening to those nerds and try out some open alternatives with security that is possible to verify. You might be surprised to find both tools are pretty low on the list in respect to security and privacy compared to tools with smaller marketing budgets.
- lvh 8y agoCould you elaborate how WhatsApp and Signal are not doing well from a security/privacy perspective? Can you name an alternative that does better under those criteria? I was under the impression that Signal precipitated most modern messaging protocol design and verification. But what do I know: I'm just a relapsed cryptographer :)
- saurik 8y agoSignal's stubborn insistence upon using Google Cloud Messaging (which is mostly notable due to their attempts to shut down third-party clients that remove this requirement) combined with its reliance upon phone numbers for identity is itself a serious problem, but when you combine this with the fact that their servers know "this phone number sent a message to this phone number at this time" (information that is even stored, at least temporarily, on their servers in order to implement rate limiting) we really should not give Signal as much default credit as it gets :/.
- lvh 8y ago> "this phone number sent a message to this phone number at this time" (information that is even stored, at least temporarily, on their servers in order to implement rate limiting) This claim appears to be unsupported by both Signal's privacy policy and public evidence. Unless I misunderstand, they've claimed to use IP addresses for rate limiting. Messages only necessarily contain the recipient's identifier for delayed delivery but certainly does not imply they have a store of (src_phone, dst_phone, hires_timestamp) triples. When subpoenaed for user data[0], they claimed to have no responsive records of IP data, let alone src, dst _and_ hi-res timestamps altogether. Are you saying that has changed, they're lying in their response to the subpoena, they were lying in their privacy policy, or something else? The issue of long-term identifiers for offline delivery is well-understood (e.g. Rottermanner05) but also not actually a Signal problem. In that light: what do you propose we do instead? (You can probably see the response coming already: let's just say metadata protection is, ahem, complicated.) [0]: https://signal.org/bigbrother/eastern-virginia-grand-jury/ https://signal.org/bigbrother/eastern-virginia-grand-jury/
- lvh 8y agoTypo correction, but I can no longer edit: WhatsApp uses the Signal protocol, just with fewer of the privacy tweaks in the implementation. The criteria don't seem to consider those. They're important, but the two should be equivalent.
- lrvick 8y agoWhatsapp is closed source so we can't really verify any claims about it. It thus gets "claimed"
- lvh 8y agoYou can't validate anything about an open source project either unless you have repeatable builds. Real audits can be source-assisted, but do not rely on anyone pinky-swearing that this is actually the checkout that eventually produced the apk.
- lrvick 8y agoI do agree reproducible builds are the only solution to have practical evidence a given binary came from given source code. F-droid does this, which is why I personally don't consider any clients that are not willing to undergo that rigor. "AOSP" support in this context implies f-droid and implies reproducible builds, but maybe I should break that out more clearly.
- lvh 8y agoThis is not responsive to the core of my argument that nobody who actually audits and analyzes this stuff will tell you that source availability is necessary or even useful for figuring out if a particular application does what it says it does, unless you’re building the entire thing yourself off a trusted buildchain. Even if you have repeatable builds you still audit what the thing actually does.
- Leace 8y ago
- lrvick 8y agoPlease make comments on individual cells for improvements to be seen/added more easily. This is obviously big research undertaking that got thrown together last weekend :) > Another example: "open server" and "on-premise" says nothing about whether or not you really want to run one of those instances. It just says that hypothetically one could. I know a number of people that run matrix.org servers for personal use and companies. The entire French government runs on riot.im/matrix.org. When security and really privacy matters, you don't want a third party being able to push updates to your clients/servers at any time without warning. > None of them implement even close to the privacy features Signal has implemented. But on this diagram it is clearly better because there is more green and less red. What features specifically? Happy to add more columns if signal really has anything unique to offer here. The things Signal gets red marks on are pretty fair though imo, and things others do better. > Use WhatsApp to talk to normal people. I think you will find many options above WhatsApp on the list in terms of security and privacy that have clients that are every bit as simple to use. Other than their (very) effective marketing advantage, -why- would you encourage people towards these respective walled gardens instead of more open alternatives listed?
- lvh 8y agoIn order to comment on individual cells, we appear to first have to have an argument about how audits work. You say WhatsApp can only "claim" certain features as a consequence of it being closed source, but that's because of a misunderstanding about how audits work. In a backchannel, as a consequence of this HN article, someone (names withheld to protect the guilty, they can identify themselves if they'd like) started looking at Dust and figured out the key store password is a hardcoded, short, ASCII string and the messages are encrypted with unauthenticated AES-CBC. They did not need the source code to do that. JP Aumasson phrased it more eloquently than I could: https://research.kudelskisecurity.com/2018/10/02/open-source-crypto-is-no-better-than-closed-source-crypto/ https://research.kudelskisecurity.com/2018/10/02/open-source...
- lrvick 8y agoEven if they release all their code at this moment to a dozen third party code auditing firms, they can then undermine all the verified security with the next closed binary they release. I will never use Signal with their current direction and don't recommend anyone use it, but they get credit where it is due. They actually offer source code for their walled garden and allow that their basic crypto can -generally- be verified except for extreme cases like my other comment. Allo, Whatsapp and other closed systems that give you no reason to trust them other than faith in the people advocating them and that their engineers got it 100% right. Their claims can't be verified so they can only be marked as just that, claims. Sure, plenty of obvious flaws can be spotted without source code access, but many are hard to find even if you -do- have source code to the point they would probably have never been found were they not open to allow the right set of eyes to eventually read the right section of code (Heartbleed etc). I found random number generation flaws in Terraform I would of -never- found without source code access. It is for this reason I trust Terraform and Hashicorp quite a bit. They normally get it right, but are not afraid to have other people audit and point out flaws because they don't have this arrogant idea their engineers will get everything right 100% of the time. Security is -hard- and anyone that thinks they can get it right with a SPOF closed source approach is more interested in marketshare than security. Trust, but verify. Likewise if you are not even allowed to verify, you should instantly distrust.
- lrvick 8y ago> Wire has a real audit that isn't listed Fixed
- kbenson 8y agoThat's always a problem with comparison charts when used to survey they field. The flip side is if they compare a bunch of features you don't care about at all, there's a bunch of red on some which makes no difference to you in real life, but now you either need to know what each esoteric feature means so you can ignore it, or just accept that the one with more red is probably worse and avoid it, even if overall it's a better fit for your needs. The extreme ends of this are simple charts where someone just tells you "good" or "bad" on one end, or pointlessly complex ones where someone adds bullshit fields like "experienced developers" or something like it. I'm not sure what the solution is, besides much more interactive and thorough presentation of features in a way that allows classification of how advanced they are or likely you are to need them, but that's a lot of work. Until then, a comparison like this will always suffer from rarely matching exactly what the reader is looking for. They do work well as quick references though.
- lvh 8y agoI'm concerned that they don't work well at all: a number of highly important properties are missing and a number of the criteria have been challenged; see rest of thread.
- codedokode 8y agoRequiring a phone number means you have to disclose your identity (in many countries, for example in Russia) and your physical location (everywhere). This is the opposite to privacy and anonimity. Imagine, one of your contacts is captured; attackers get his contact list that includes you; then they get your phone number from Signal; then they get your location and put you to all kinds of black lists, extremists lists, no fly lists, watch lists and so on. Signal is nothing better than Telegram. They should be on the same position.
- lvh 8y agoThat equivalence does not follow. The counterpoint is simple: can people figure out how to get burner numbers? Yes, they can: there are a myriad of services for doing so. And, importantly: journalists already know how.
- vader1 8y agoIn many countries it's not (legally) possible to buy a SIM card without providing your ID. Sure, you go ahead and buy an illegal burner number, then download Signal/Whatsapp from the Play Store and reverse engineer that binary to see if it "does what it says". Other people might find it useful to look at this comparison to discover alternatives that better fit the characteristics they find important.
- lvh 8y agoI know; I lived in one. A burner number does not imply getting a SIM. That is not how journos in sensitive countries get a number.
- codedokode 8y agoFirst, that leaves a trace: location where you used that number to connect to GSM network (ok, there are also services receiving messages for you). Second, this is inconvenient: if you change your IP address or log out, the server will require you to provide a SMS code.
- the_clarence 8y agoYeah security for groups is messed up anyway.
- lawnchair_larry 8y agoSignal using phone numbers is almost as anti-anonymous as you can possibly get. A phone number leaks nearly everything about you to anyone who has access to the right data sources. Most people would be more anonymous providing a SSN than a phone number in practice.
- tptacek 8y agoYou just said the same thing LVH did, just with more emphasis. It's tough to reason about on a message board. Signal does some important privacy things better than anyone else does; for instance, Signal cares more about metadata that I think any mainstream messenger does. On the other hand, Signal made a conscious, deliberate choice to ensure that it works for ordinary users. It is not a goal of Signal's to mollify the tiny fraction of people in the world who have strong opinions about Tor; it is much more important to them that, say, any immigration lawyer in the country could readily pick it up and start using it. The phone number ID thing creates an instantly bootstrapped social network. It solves a problem Signal actually cares about, while making a problem nerds care about a little more annoying. That is a reasonable reason not to use Signal (if you're one of those nerds), but, like DeVault's inane F-Droid conspiracy theory, not a reasonable reason to warn people off of Signal. Signal, WhatsApp, Wire: any one of those is going to be radically better than the alternatives nonspecialists are likely to use (Fb Messenger, email). But my confidence drops rapidly when you go to anything else on this list.
- lawnchair_larry 8y agoYou are way out of touch here. Disclosing a phone number is absolutely not a nerd problem and very much a normal people problem. Particularly women or vulnerable people. I don’t even need to warn people about it, they already don’t want to share their phone number with strangers. That’s in spite of them not even knowing a fraction of what a dangerous person can do with your phone number. Journalists and nerds know how to get burner numbers. They have less to worry about. I know people who have been sim-jacked to bypass their 2FA and steal their savings, which they did not get back. I know people who have been stalked using cell tower geolocation. I know (of) people who have hacked LexisNexus accounts and can get your whole life with a phone number. Hell, I know which forums I could spend $20 on to get that info. Aside from the really dangerous stuff, many people don’t want harassing texts or calls from creepy nerds, so they have reservations about sharing their phone number (and rightly so). The set of people I want to casually message is far larger than the set of people who I want to have my number, and I’m not even particularly worried about these things.