[liberationtech] Random number generation being influenced - rumors
Andy Isaacson
adi at hexapodia.org
Fri Sep 6 12:34:54 PDT 2013
On Fri, Sep 06, 2013 at 10:45:46AM -0700, Joe Szilagyi wrote:
> Does anyone put any stock into the rumors floating lately that the
> government may have influenced Intel and/or AMD into altering in
> subtle ways that CPUs handle random number generation? I keep seeing
> this possible FUD floating around in comments here and there on
> other articles.
I agree with some of your premises, but disagree with the conclusion you
seem to be drawing.
Yes, it's just a fear of uncertainty. We do not have evidence, nor even
a claim based on knowledge, that HWRNG backdooring has occurred.
However, I claim that the fear is well founded and should be taken into
account by all threat models.
HWRNG is a nearly-uniquely difficult security problem to crack. By
definition it is impossible to prove that a black-box HWRNG is safe.
This is different from the security properties of a blackbox AES or
MODMUL accelerator, which can be demonstrated to conform to a known
specification. If your AES instructions don't do AES, then testing
against a software implementation will show it! The AES logic unit
will have a hard time leaking the AES keybits since there's nowhere
nondeterministic to put them. etc.
By contrast, a properly functioning HWRNG cannot be tested in a way that
distinguishes it from the output of a stream cipher seeded with a
backdoor key. And there's no way to test the behavior of HWRNG on an
ongoing basis; even if you had a test to run, it might switch to "stream
cipher mode" under the covers.
This is not to say that RdRand is completely unusable. Putting RdRand
entropy into a software pool implementation like /dev/urandom (or
preferably, a higher-assurance multipool design like Fortuna) is a cheap
way to prevent a putative backdoor from compromising your system state.
Now, there is a way that we can learn that a backdoor was included; if
someone does a tear-down of a HWRNG and finds circuitry that has no
purpose other than being a backdoor, that would be conclusive. AFAIK
nobody has tried that experiment.
Weighing towards distrusting HWRNG we have the fact that NSA is reported
(yesterday) to have intentionally backdoored Dual_EC_DRBG, and to have
spent significant amounts of money to backdoor chip implementations,
with enough success that they brag about it in administrative summaries.
So, I put a lot of credence in distrusting HWRNG black box
implementations. But unfortunately we need a lot more reliable entropy.
A fully open source, nothing up my sleeve hardware entropy source would
be a huge improvement.
-andy
More information about the liberationtech
mailing list