A top cryptographer has expressed concern about a possible backdoor in a standard for random-number generators approved by the National Institute of Standards and Technology (NIST) this year.
Random number generators are important because the correct operation of SSL and other protocols relies on their randomness. Standards set in this area by NIST are significant because they are likely to be followed by hardware and software suppliers in much the same way that the Advanced Encryption Standard (AES), which was also approved under the auspices of the NIST, has become widely adopted.
NIST gave its seal of approval to the use of four "Deterministic Random Bit Generators" for random number generation in March, with the release of its NIST Special Publication 800-90 paper (PDF). The four techniques are based on hash functions, Hash Message Authentication Codes, block ciphers and elliptic curves cryptography. All four are based on existing cryptographic primitives, generally a good idea. However, the elliptic curve method adopted by NIST, and championed by the NSA, is both slow and flawed, cryptography guru Bruce Schneier warns.
Flaws in the approach (Dual_EC_DRBG) first emerged in August at the Crypto 2007 conference when cryptographers Dan Shumow and Niels Ferguson demonstrated that two constants in the standard used to define the algorithm's elliptic curve have a relationship with a second, secret set of numbers. Anyone who had access to the second set of numbers would have a kind of skeleton key able to unlock any instance of Dual_EC_DRBG.
Shumow and Ferguson described their finding as a weakness and are at pains to avoid suggestions that NIST intentionally put a back-door in the function. Schneier is less circumspect saying that the "algorithm contains a weakness that can only be described a backdoor".
"You only need to monitor one TLS internet encryption connection in order to crack the security of that protocol. If you know the secret numbers, you can completely break any instantiation of Dual_EC_DRBG," Schneier explains in an essay on the subject in Wired.
"We have no way of knowing whether the NSA knows the secret numbers that break Dual_EC-DRBG... We don't know where the constants came from in the first place. We only know that whoever came up with them could have the key to this backdoor. And we know there's no way for NIST - or anyone else - to prove otherwise." ®