A system collects entropy data and stores the entropy data in a nonvolatile memory. The entropy data stored in the nonvolatile memory is updated with newly collected entropy data. The entropy data stored in the nonvolatile memory is used to generate a string of random bits. The entropy data is collected from multiple sources within a computer system and may include data related to a processor in the computer system and an operating system executing on the computer system. The entropy data is maintained in a protected portion of an operating system kernel. A hashing algorithm is applied to the entropy data to generate random seed data.