[Discuss] KeePassX
Richard Pieri
richard.pieri at gmail.com
Tue Aug 13 16:07:25 EDT 2013
Kent Borg wrote:
> I'll accept your math, and it makes my point. You describe a facility
> that can only brute-force a couple hundred 80-bit keys a year. Which
> means brute-forcing 80-bit keys is not something routine and cheap for
> the NSA, not when they think they need a plaintext copy of *everything*.
Go back to PRISM. How did the NSA get all that traffic data? They asked
for it, and the big providers handed it over. It stands to reason that
the NSA has obtained SSL certificates from public CAs the same way. If
so then the vast bulk of Internet traffic is already decrypted by the
time it ends up on the NSA's storage servers. But even if this is not
the case, SSL and TLS are vulnerable to chosen plain-text attacks (CRIME
and BREACH). The protocols are vulnerable regardless of the keys or
ciphers you use.
This covers, what, 95% of the encrypted traffic on the Internet? Yes,
there is a cost to running CRIME and BREACH attacks but it is a tiny
cost compared to exhaustive search/brute force.
Now, my noodling is based on some assumptions. One is that the NSA
doesn't know about any weaknesses at all and therefore must brute force
every key that isn't in the ~95% of automagically decrypted traffic.
Another is that they're using off the shelf GPUs. I doubt that either of
these is the case.
Take a look at the current state of the art in Bitcoin mining. The
fastest Bitcoin mining GPU manages 1.2 GH/s (billion hashes per second)
at a cost of around $1000. Most lesser GPUs get around 0.3 GH/s. A
Butterfly mining box with a cost of $1250 performs 25 GH/s, an
improvement of 20 times that of the best GPU, and pushing 100 times the
performance of lesser GPUs. ASICs offer a massive performance
improvement for roughly the same cost.
A 100 times performance improvement over my GPU noodling reduces the
32-hour crack time to just 19 minutes. If there is a weakness in the
cipher that reduces analysis time by another order of magnitude? Your
80-bit key will be cracked in less than 115 seconds.
This is based on the assumption that the NSA can do no better than the
state of the art in Bitcoin mining. I figure they can do better than
that so a 500 times performance improvement over the GPU solution may be
a more realistic figure. If so then your 80-bit key can be cracked in
~24 seconds. If the NSA has ASIC boxes that are 1000 times faster than
my GPU noodling? 11.5 seconds.
More realistically, the NSA won't bother with brute forcing every key
that they haven't gotten by asking. They'll use more sophisticated
analysis, so maybe 3-5 seconds to break an 80-bit key? Maybe less?
Depends on the cipher.
Let's follow along with John's mailing list example: 20,000 messages
going through BLU per day. Let's assume that every one of them is
encrypted with an 80-bit key unique to each recipient. And let's use the
24 second figure just for the example. That's 5.5 days to handle one
day's worth mail. Seems like a lot. But -- and this is important -- once
a given recipient's key is cracked it remains cracked forever. New mail
to that recipient does not need to be cracked, just decrypted with
whatever keys are associated with the recipient. The 5.5 days cost is a
one-time cost of doing business. A crack attempt won't have to be
performed for any given recipient until that recipient's "master" key is
changed.
This is the biggest problem with the "encrypt everything to keep the NSA
out" argument. If a key is compromised then anything encrypted with it
might as well be clear-text as far as the compromising party is concerned.
--
Rich P.
More information about the Discuss
mailing list