Own Mail: PGP running on local server; Is it secure
Robert J. Hansen
rjh at sixdemonbag.org
Mon Sep 28 19:00:46 CEST 2015
> Hi I spotted this project: https://www.own-mailbox.com/#HowWork
Looking over their FAQ, I found this entry which makes me doubt them
even further. It downright deserves a fisking, which I'll deliver inline.
"Q: Why shouldn't I trust any cloud email service with JavaScript
encryption on the client-side ?
A: These services cannot be trusted, because they still give power to
companies to spy on you.
Why is it not secure?
1-Encryption is done in JavaScript, and therefore relies on your
browser's JavaScript engines, which 80% of the time are proprietary
software coming from Google, Microsoft, Apple, and most eminent NSA
collaborators."
Nice allegation there about Google, Microsoft, and
Apple all being NSA collaborators. It's pretty
strange, though, that *all of these* companies are
currently pushing crypto in a big way, to the point
that the USG is currently pushing for legislation
requiring back-doors into crypto... why, it's almost
as if they're not collaborating at all, and are
responding to what they see as overreaching government
practices by introducing technologies to make those
overreaches more difficult.
Second, these guys are flat factually wrong about
JavaScript engines. Internet Explorer's Chakra engine
is proprietary code. Apple Safari's Nitro engine,
Mozilla Firefox's Spidermonkey engine, and Google
Chrome's V8 engine (also used in Chromium) are all
open-source. Let me repeat that: the *only* proprietary
JavaScript engine in common use today is in Internet
Explorer.
"It leaves 4% chances that both you and your correspondent don't use any
of them, (because even if you don't use them, your correspondent might,
and he would compromise your security). Using these browsers for
cryptography, even once, leaves these companies full power to forever
break your cryptography."
Cryptography is not like virginity, where once you
lose it it's gone forever. I have a hard time believing
that anyone could believe this crap -- I've had boxes
compromised before, and guess what, I wasn't "forever"
compromised. Talk about how "using these browsers for
cryptography, even once, leaves these companies full
power to forever break your cryptography" is scaremongering,
plain and simple, full stop.
Somebody really ought to write a FAQ entry about
scaremongerers.
https://www.gnupg.org/faq/gnupg-faq.html#fraudsters
"By extension any cryptography done on a proprietary operating system
like Mac or Windows can be considered as doomed, since Microsoft and
Apple can then access your keys."
"Doomed" is such a scaremongering word. It may be unwise,
but it's certainly not *doomed*. Further, where is there
any evidence that Microsoft or Apple has ever turned over
a user's encryption keys? Has this ever happened? Do they
even have that capability? Or is the author just trying to
scare you?
"2-The JavaScript code may be changed at any time by the email service
provider. So except if you check the JavaScript code sent to you each
time before entering your password (which is impracticable), you leave
the email service provider open to breaking your cryptography at any
time they want, without you even necessarily knowing it (since you don't
check it)."
Mostly true.
"3-These services don't and cannot have a strong private key encryption.
They rely on a much weaker private password that can be remembered by a
human being. Therefore, they either use a much weaker algorithm than
openPGP, or they use openPGP but store YOUR private key on THEIR
servers, in clear form or encrypted with a simple password. In the movie
citizenfour, Edward Snowden quoted saying "A 10 character password can
be broken by the NSA in few days". So in practice, using a simple
password for encryption make those services easily breakable. In
comparison GPG was initially designed to work with 2048 or 4096 bits
long private keys. GPG and SSL use this kind of strong private key
encryption, as simple passwords are too weak and can be easily broken."
This one makes my head hurt. Yes, a 10-character passphrase
can be broken in a few days. It can probably be broken in a
few *milliseconds*. Rainbow tables are awesome and there's
not enough entropy in a 10-character passphrase to really do
the trick. But that's why we recommend longer passphrases
with higher entropy. My Google login, for instance, is
literally 128 bits of random noise put into Base64.
Second, they seem to be completely missing the distinction
between the length of an asymmetric key and the entropy of
that asymmetric key. My 128-bit Google passphrase, which I've
committed to memory and have no trouble inputting by hand,
is about as hard to break as a 3072-bit RSA key.
Should you use short passphrases on sites that you care about?
Absolutely not. But it's just *flat* *wrong* to say that web
services don't and cannot use strong encryption.
"4-If you want to access your emails on computers that are not yours (at
the library, at work, at a printing store), you have to do cryptography
on their computer, and therefore you're never really sure that you don't
compromise your whole cryptographic system, you are effectively giving
the power to the computer's owner to break it."
And how is this cured, *in any way*, by using a stranger's
computer to access your email over HTTPS? That stranger could
store a local copy of your email, your keystrokes into the
terminal for your passphrase, etc...
"5- It is controversial whether JavaScript as a language, is actually
able to perform good quality encryption at all."
Dunno. I'm a pretty sharp guy but I'm not qualified to
have an opinion on this one. This puts me slightly ahead
of these guys, who appear just as unqualified but don't
know it.
I'm friends with Dr. Terri Oda, whose Ph.D. research was in
JavaScript security. I'll ask her what she thinks. If she
tells me that these guys are champs and I'm completely in
the wrong, y'all have my word I'll come clean.
"This is not only theoritical. The company hushmail, providing an email
service with java/javascript client-side encryption, has allready spied
on its users. [3]. If they could do it and did it, how do you know other
companies won't?"
Hushmail was ordered by a court to cooperate with an
investigation. In order to make things easier for users,
they allowed users to do crypto *server-side*. They advised
users this was less secure. People still did it anyway,
because convenience is more important to most people than
security. Hushmail was ordered to compromise their
*server-side* crypto for a small number of users in order
to cooperate with a legitimate Canadian investigation.
Remember what this FAQ question is about? "Why shouldn't
I trust any cloud email service with JavaScript encryption
on the client-side?"
Why would someone present an instance of a company compromising
*server-side* encryption as an argument against trusting
*client-side* encryption?
The only reason I can think of is to scare you.
"To conclude, it should be said that a broken cryptography implies not
only that your future emails can be watched, but also that all your past
emails can also retroactively be read by spies."
This is true for OpenPGP. This isn't true for any system that
employs, e.g., perfect forward secrecy. Break a message in
a system that employs PFS and you can neither read previous
traffic nor future traffic.
"Also you should not forget how aggressive the attempts are to break
cryptography. There have been several attempts from the US government in
the past to add flaws in the Linux kernel, in order to break
cryptography [4]. So it is very dangerous to leave that many security
holes opened, which are easy ways for NSA and other organizations to
break in."
All this obsession with the NSA. One wonders if they think
the Chinese Ministry of State Security is any less aggressive,
or any less of a threat. Obsessing on one three-letter agency
to the omission of all others is a sign of someone who has not
done a very good job of thinking through the problem.
Sometime, ask the kernel.org guys who they think was
responsible for the big intrusion back in 2012-2013, and what
they think the goal was. I'm not at liberty to say, since it
was told to me in a personal conversation, but I will say it
wasn't American in origin...
More information about the Gnupg-users
mailing list