Dear cryptography enthusiasts!

Glad to see a mailing list still in operations for applied cryptography.

In my ever ensuing quest for proper implementation of applied cryptographic techniques, I spent some time on the source of random secrets in a security system. I also reviewed the "best practice" for casino and gambling systems, including on-line (conformance to standards is important for player's confidence that the game is fair, for whatever "conformance" and "standards" means in the various segments -- or jurisdictions -- in this industry).

With the recent security incident where a private signature key has been trivially recovered because the signature system wrongly re-used a random secret, we get a reminder that random secret data *throughout*its*life*cycle* need to be handled with caution.

So, here are a few highlights of my recent findings. I found that too many notions deserved a description of rationales, and hence a draft-in-progress document is just stalled.

STANDARDIZATION

Only NIST (with the help of NSA and participants in a circa 2004 symposium) advanced the true random source standardization effort, with the main outcome being NIST SP-800-90. Neither the financial industry (ANSI) nor the European digital signature got any noticeable momentum on true random source standardization.

Even with the NIST outcome, the technical quality of the standard is questionable. There are various meanings for "entropy" in the document (and its references), and even when a proper definition is intended, its use does not always appear technically correct.

HARDWARE AND PROPRIETARY DESIGN DEPENDENCIES

This is really at the core of the technical challenges. NIST SP-800-90 proposes a neat analytical framework separating digitalization (e.g. an instrument's firmware) from conditioning (algorithmic processing for turning noise measurements into fair binary data with an entropy estimate).

Sub-issues: technology obsolescence, calibration and stability of unpredictable phenomenon digitalization, breakdown of analysis according to the broad class of unpredictable phenomenon.

DATA / METADATA / ENTROPY ESTIMATE

No matter how fantastic is the true random source, in all cases (with the exception of the genuine one-time-pad) a deterministic algorithm crunches the true random data before a security service is provided. The big picture analysis can not ignore this required mating between true random source and deterministic algorithms. A deterministic PRNG seeded by a true random source is usually present in the overall arrangement as a link in the processing chain.

Before I introduce a definition of entropy, let me stress the separation of data from meta-data in the processing chain. A simple example of meta-data is the size of random secret consumption by a run of a given application. While protections for the data are well-known (secrecy, statistical properties, reliability, resistance to environmental influence, ...), security breaches from leakage of meta-data is more subtle.

Entropy is an estimation of information quantity from a data source derived from a probability distribution *as*if*the*data*source*could*be*exercised*multiple*times*. It assumes some stability in the data source properties. Entropy is derived from an appraisal of the process by which true random data is obtained. I doubt any automated process can reliably insert entropy estimate in meta-data. Any arbitrary rule is just a reflection of someone's appraisal.

Nonetheless, as secret random data is processed in the chain of deterministic algorithms, entropy may be reduced. Given that deterministic algorithms are implemented with computing efficiency in mind, opportunities for inadvertently reduced entropy abounds. This is even more so due to the immaterial aspect of an entropy estimate. It reminds me the discussions on brute force attacks that are immaterial nowadays for (symmetric) key sizes above e.g. 256 bits (but they were immaterial above 112 bits not long ago).

DATA RATE AND ARRANGEMENT OF PROTECTIONS

The data rate of a true random source will remain an order of magnitude (or more) slower than the processing speed of a system CPU (or dedicated crypto processor). Bursts of cryptographic operations consuming random data will force either a PRNG expander of randomness or true random data buffering, both of which implies system state data that requires secrecy protection.

(The data rate limitation occurs even with the single photon detector which seems to be the foundation of so-called quantum random number generator, because the single photon detector, just like any type of sensor, requires interfacing and digitilization which occurs at typical speed of classical electronics.)

In any event, a cryptographic system invariably needs a secure storage arrangement ("chmod 600 filename" as a very least) for secret or private key material. I would like to see a publication about the pros and cons of relying on such secure storage in a secure system design instead of a higher speed true random source. I suspect overall protections are enhanced if design/implementation efforts are devoted to secure storage (where a PRNG state may be kept) and correspondingly lesser emphasis is put on high speed true random source.

CONCLUSION

Much needs to be done for secure system design principles when the complete life cycle of true random is considered. In addition, the immaterialness of entropy estimates is the source of great confusion among system designers more used to measurable properties.

Comments are welcome!

CAVEAT

Elsewhere with the PUDEC proposal (http://pudec.connotech.com), I make an argument for a unique arrangement featuring self-evident entropy estimate but a random source data rate asymptotically close to zero.

--
- Thierry Moreau

CONNOTECH Experts-conseils inc.
9130 Place de Montgolfier
Montreal, QC, Canada H2M 2A1

Tel. +1-514-385-5691
_______________________________________________
cryptography mailing list
[email protected]
http://lists.randombit.net/mailman/listinfo/cryptography

Reply via email to