Practical Random Number Generation in Software

  • Authors:
  • John Viega

  • Affiliations:
  • -

  • Venue:
  • ACSAC '03 Proceedings of the 19th Annual Computer Security Applications Conference
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

There is a large gap between the theory and practicefor random number generation. For example, on mostoperating systems, using /dev/random to generate a256-bit AES key is highly likely to produce a key withno more than 160 bits of security. In this paper, wepropose solutions to many of the issues that realsoftware-based random number infrastructures haveencountered. Particularly, we demonstrate thatuniversal hash functions are a theoretically appealingand efficient mechanism for accumulating entropy, weshow how to deal with forking processes withoutusing a two-phase commit, we explore better metricsfor estimating entropy and argue that systems shouldprovide both computational security and informationtheoretic security through separate interfaces.