Standards & Validation

SP 800-90B Restart Testing

Learn why entropy-source restart testing matters, what restart datasets are designed to reveal, and how restart analysis complements sequential entropy testing.

QRNG.io · iQrypto4 min read
  • SP 800-90B restart testing

The problem with testing only one long run

Imagine an entropy source that behaves well after warming up but emits a similar pattern every time it powers on. A million-sample continuous capture taken after startup might look excellent.

The vulnerability is still real if keys are generated immediately after each boot.

Restart testing exists because initialization is a distinct operating condition.

What a restart dataset represents

A restart dataset should preserve the two-dimensional structure of repeated restarts: multiple restart events, each followed by a sequence of samples.

This lets the assessment look across comparable sample positions as well as within individual restart sequences. The objective is to identify dependence or unexpectedly low diversity tied to restart behavior.

Do not manufacture restart data by slicing one continuous acquisition into equal chunks. That loses the property being tested: repeated initialization of the actual source.

Why physical entropy sources can be vulnerable at restart

Potential causes include:

  • deterministic initialization of analog or digital circuitry;
  • sensor or detector settling time;
  • repeated bias immediately after power-up;
  • shared clock phase or startup timing;
  • calibration routines;
  • state retained across reset boundaries;
  • insufficient wait time before sampling;
  • environmental conditions that make startup highly repeatable.

The exact risks depend on the source architecture.

QRNG-specific relevance

A QRNG's underlying quantum event can be unpredictable while the surrounding acquisition system has repeatable startup dynamics.

For example, the first measurements after enabling a circuit may be affected by bias settling, amplifier state, detector recovery or digital initialization. Restart testing helps prevent the engineering system around the quantum process from being ignored.

Restart testing is not a certification badge

Running a restart executable or obtaining an acceptable result is useful evidence. It does not by itself establish SP 800-90B validation.

Formal validation considers the source model, entropy estimate, health tests, conditioning, documentation, implementation scope and other requirements. NIST's ESV material explicitly describes statistical-tool execution as one component of a broader submission and review process.

Collection discipline

When collecting restart data:

  1. define what constitutes a real source restart;
  2. ensure each row/run begins from that restart condition;
  3. document any delay before sample collection;
  4. preserve raw samples before conditioning where required for the analysis;
  5. keep sample encoding consistent;
  6. record environment and configuration;
  7. avoid silently dropping “bad” restarts.

A test is only as meaningful as the data-collection protocol behind it.

Relationship to health testing

Restart testing is an evaluation activity. Health tests are runtime controls.

If restart evaluation reveals that the source needs a settling period, initialization check or discard policy, that insight should feed the operational design. A robust system should avoid making cryptographic material available before the source reaches its acceptable operating condition.

Relationship to IID/non-IID analysis

Restart analysis does not eliminate the need to choose and justify an IID/non-IID model for sequential data. It adds another view of the source.

Think of the evidence as complementary:

  • sequential assessment: what is the entropy behavior during ongoing operation?
  • restart assessment: what happens across repeated initialization?
  • health testing: how does the system detect runtime degradation?

Together these are more informative than any one dataset alone.

Practical QRNG.io workflow

For the local assessment kit, restart mode should be marked Advanced. The GUI should explain what a valid restart dataset is before enabling the run.

The report should record the tool version, parameters, dataset hash and result, while clearly stating that the output is a preliminary engineering assessment rather than a validation certificate.

Sources and further reading

  1. NIST SP 800-90B
  2. NIST EntropyAssessment repository
  3. NIST ESV

Primary sources

Part of the QRNG.io quantum randomness knowledge hub.

Keep learning

More on quantum randomness

QRNG.io is an educational hub. Browse the full library, or look up any term you met in this article in the glossary.