Viber adds end-to-end encryption
techcrunch.com
techcrunch.com
Also, message metadata is still being leaked by all of these E2E implementations and needs to be fixed.
I mean, sure, there could be "Whatsapp clones" (aren't there already?!), but wouldn't Whatsapp still benefit from the phone number user base it has, thus maintaining a certain lock-in on its users from which it already benefits?
Sounds funny if you consider that Whatsapp itself is just a branded deployment of FOSS XMPP server Ejabberd, with feature of federation taken away. Plus a client app implementation, of course.
Nothing in the AGPL prevents either from occurring.
No idea whether the assumption is true that Whatsapp is just a branded deployment.
As the countless messaging apps out there demonstrate, the value of communication apps lies in the network they build. If they provide a decent UX, and successfully bootstrap a network large enough, it wont matter if their code is open.
you replace Whatsapp.sendMessage(string,Jonny) with WhatsApps.sendMessage(EncryptString(string,Jonny),Jonny)
And EncryptString taps into your keystore to find jonny's key.
Ricochet (https://ricochet.im/) solves that problem using Tor hidden services. Desktop only at the moment AFAIK, though.
Appears to have a lot of docs/code, are you able to link to the related code & docs?
This zealous belief that all secure cryptography must be open source is something I hear a lot from open source advocates, but not so much from cryptography engineers.
It's the exact same code we use in Signal: https://github.com/whispersystems/libsignal-protocol-java
You are better off verifying the actual compiled and distributed apk files than verifying the source.
For an example of a more sophisticated approach, look at:
Remember, in this case, it's especially easy to reverse, because you have the source code; all you're doing is matching the control flow graph to the original source.
[To whomever down voted... I guess I get down voted for not showing gratitude immediately after he posted a reply? This is why I don't post here often. Quite mean people here.]
I imagine I won't ever get to it, but that sounds like an interesting problem to try to work on.
I think it's great when people further verify WhatsApp's client security, please share your analysis!
My primary concern here is a long con. Everything is probably okay now, but after a while, people will stop looking and verifying. With WhatsApp keeping source closed, it makes that period of time shorter, I think. I will try to work your suggestion into my job :) If I'm paid to do it, I can keep doing it indefinitely, even working on tools to automate it.
Could you cite this? The Signal Protocol implementations they're using are both open source and well audited.
By that logic the entire application would need to be open source, because nobody would start out by targeting the crypto if they wanted to spy on someone.
What I find ridiculous though was
>venders that don't agree to an audit should be considered insecure
The same thing applies to every single part of the application, but not equally. No attacker is going to start out by trying to break the crypto, unless it's obviously broken. "Normal" bugs are far more common and often more dangerous (Thing RCE, or in the case of many modern apps: XSS)
Emphasis mine. I agree with ryanlol here. Why bother with active attacks when you can just steal their private key from a code execution?
Similar to this, but with the priority flipped:
https://www.bishopfox.com/blog/2016/04/if-you-cant-break-cry...
The second problem is - you don't know if that source is what ended up in the binary.
So yeah, unless you can compile the whole thing yourself, it should not be considered secure.
It's not a high bar.
https://www.bishopfox.com/blog/2016/04/if-you-cant-break-cry...
So, my point that the E2E should be open source is that that code should never be the basis for a business model, so to me, it being open source makes sense. As larger system, that's why I'm saying there needs to be an audit.
Also, you mentioned ATP and I agree, which is why to me it is troubling Signal instead of guarding metadata, actively collects it.
Please let me know I have missed anything you'd like me to address. And I really would be interested in your thought on the question above in as much detail as you're able to share. Thanks!
But you need far more than just the crypto code to create a client, I think open source protocol specs would already achieve this.
And my main complaint was with the claim that open sourcing their crypto code would somehow make a meaningful difference to the security of these applications to the extent where you could consider all applications that haven't done so "insecure".
Without open-sourcing the crypto, they could be just doing rot16($message) for all we know. Open-source is a requirement for being considered secure. It doesn't mean they aren't secure if they aren't open-source, but that you shouldn't consider it so, because you don't know if it is or not.
> Without open-sourcing the crypto, they could be just doing rot16($message) for all we know.
There are two things you can do:
1. Watch the outbound traffic and attempt known-plaintext attacks
2. Reverse engineer the app
Neither is particularly difficult. Most Android apps are trivial to break apart using Lobotomy. A large swath of software security folks specialize in binary auditing.
https://github.com/tgalal/yowsup for example
https://gigaom.com/2015/01/20/whatsapp-cracks-down-on-people...
Do you know if the clients work with the new encryption?
Does anyone else think this is a violation of users' rights? If I've been sent a message, it shouldn't be possible for the server to delete it. I could screenshot everything, or run a tweak that saves everything.
Imagine if Gmail started allowing senders to remove email they've already sent and has been delivered.
This feature is quite useful, even if not 100% proof.
And doesn't the same logic apply to Gmail? Do you think they should do the same?
I suppose I might be OK with individual exceptions to this rule, if some sensitive message was sent, after going through customer service. It certainly shouldn't be a one click to delete.
This sounds no different from, say, Snapchat, except that the deletion is triggered by the sender instead of by a timer.
The difference with snapshot is that their whole gimmick was the deleting thing. You had no expectation of permanency. But I'm sure many use Viber with the expectation that they'll be able to access old communications; after all, it's on their own device.
Sure, they have the right to do it, in the same way that Gmail could implement the same anti feature, in the same way Amazon had the right to delete books. But that just causes me not to use them, just like I'd stop using Gmail if they did that. (I still use a Kindle, but I've only ever purchased one book, and read it right away. I'm not dependent on them not deleting my books.)
The comparison to Amazon is not apt. That was Amazon, not the seller of the book, that chose to delete it (in that case because the seller didn't have a right to sell, though given it was 1984 it was rather amusing/ironic). If, for instance, Amazon's digital platform allowed sellers to remove their content from Amazon's listings AND from "buyers'" devices, then 1) no one should be too surprised when it happens, 2) no one should use that platform.
Not being pedantic for the sake of it, just pointing out the language you are using is from a position of ownership -- you receiving and owning a message sent to you, and it is then being deleted -- while the app seems to be retaining all rights with the sender, who merely uses the app to present a message to you, and can revoke viewing privileges at any time.
Not everything needs to be a philosophical debate.
Not at all, and it's kind of strange to me that you do. It's just... how the app works. Slack lets you do it, for example, and I've used it occasionally. Heck, reddit (and I think HN?) let you delete comments, even if they were previously, uh, transmitted to a reader's browser.
The Gmail example is irrelevant because that's not how email works. If a new company / protocol came about which wanted to try their hand at a different way of sending online letters, that let you delete them later then I'd have no problem with that. I might not use the service, but there's no foul play or anything.
I don't think this is a particularly well-advertised feature of Viber.
Neither reddit nor hn are meant to be a means of private comunication. Generally you can't view them offline, and so on. I'm not sure about slack
>that's not how email works
And I think the average user's expectation is that a messaging app will work the same.
By the way, reddit won't let you delete PMs you've sent to another user.
"Wow, Viber disables crypto based on geo-location? Export controls related?" https://twitter.com/FredericJacobs/status/722511416381480961
"Viber’s encryption appears to be a custom C++ implementation. Super reassuring they use MD5 for attachments." pic.twitter.com/wi6lB30KjY
https://twitter.com/FredericJacobs/status/722489499779858432
Most people who try to implement cryptographically secure messaging get it badly wrong.
That being said, we can still judge them positively for at least trying to secure their user's messages end-to-end.
This isn't about trusting that the company isn't try to dupe you. It's about trusting that the company can implement security properly, and that enough "good" people will find security flaws before the "bad" guys do.
As for the good people vs. bad people argument, it should be noted that the good people have a harder job than the bad people. For the bad people to do their job, they only have to find one exploit, whereas the good people have to find most/all of them to have made the system secure. That's why employing people to work on security matters (whether through a bug bounty program or through direct employment), a company that values security shouldn't rely on unpaid volunteers alone.
“Talmon served for four years in the Israel Defense Forces and held the position of CIO of the central command. He graduated Cum Laude from the Tel-Aviv University with a degree in Computer Science and Management.”
More here: https://viberphoneapp.wordpress.com/
http://www.moh10ly.com/home/security/viberisaspy
http://www.jpost.com/Business/Business-Features/Japans-Rakut...
https://www.theguardian.com/technology/2013/aug/30/viber-fou...
This is fantastic news, as others have said, maybe they should really open source the portions of code that have to deal with E2E encryption so it may be audited.
Can anyone with Viber describe what happens when you get a new message from a hidden chat partner? Does a notification show? how does that notification look?
When we're talking about End-to-End Encryption, we usually mean:
* Application Layer Security (between users)
* Transport Layer Security (between each user and the server)
And here, Security should mean public key authenticated encryption (e.g. crypto_box() from NaCl)You shouldn't throw around accusations without proof.
The word "broken" means susceptible to practical attack, and attacks aren't always of the "cryptanalyze the ciphertext and read the plaintext because you're a clever mathematician" variety.
For example: Padding Oracle Attacks. This is the most accessible explanation on-hand: https://twitter.com/SoatokDhole/status/720435675401744385
A padding oracle attack lets you decrypt a message by studying how the cryptosystem responds to garbage input. Without recovering the key.
iMessage had a compression oracle attack recently: http://blog.cryptographyengineering.com/2016/03/attack-of-we...
They didn't merely "read the plain text of the traffic [they] capture[d]". But these systems were still, quite badly, broken.
So what's my point? Telegram's protocol is susceptible to the same class of active attack. Thus, it is broken.
iMessage would have been reasonably secure had they used AEC-GCM or a MAC. The design at least made sense: compose a scheme out of known primitives. They just missed (very important) details. Telegram is just turtles all the way down.
I'm not trying to imply that WhatsApp are the first secure chat, but I am saying it is the first major platform to switch to end-to-end security and this looks like the first step in a trend of switching.