Unpredictable Random Number Generator Based on the Performance Data Helper Interface

Kinga Marton, Peter Paul Toth, Alin Suciu · 2012

Performance evaluation and monitoring is essential for guiding performance improvement efforts and tuning software products - such as operating systems or applications -- based on the analysis of hardware events and hardware performance counters (HPC). Nevertheless, hardware performance counters are noisy by their very nature. The causes of variations in the counter values are so complex that are nearly impossible to determine. Hence, while being a major issue in the process of accurately evaluating software products, the unpredictability exhibited by HPCs offers a high potential for random number generation. In the present paper we propose an unpredictable random number generator based on the variations in the HPC values provided by the Performance Data Helper (PDH) interface on Windows operating systems and analyze the randomness quality and throughput of the generator in order to determine its suitability for integration in cryptographic applications. Experimental results show a high statistical quality of the generated sequences for the best performing counters -- measured using the NIST statistical test suite, and a throughput level at approximately 10-80 kB/s.

Read the paper · More papers on PaperTik