Skip to content

Conversation

@torben-hansen
Copy link
Contributor

Description of changes:

The way the PRNG model is written looks more complicated than what is actually needed. Attempt to re-write it. This also makes it slightly easier to amend with future potential changes.

Only tested on x86_64. Some surprises might arise when running through the CI dimensions.

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license and the ISC license.

dkostic
dkostic previously approved these changes Jun 29, 2023
dkostic
dkostic previously approved these changes Jun 29, 2023
@torben-hansen torben-hansen enabled auto-merge (squash) July 3, 2023 18:17
@torben-hansen torben-hansen merged commit a33d16a into aws:main Jul 5, 2023
@skmcgrail skmcgrail mentioned this pull request Jul 7, 2023
torben-hansen added a commit to torben-hansen/aws-lc that referenced this pull request Sep 18, 2023
The way the PRNG model is written looks more complicated than what is actually needed. Attempt to re-write it. This also makes it slightly easier to amend with future potential changes.
skmcgrail pushed a commit that referenced this pull request Sep 20, 2023
* Make PRNG model slightly more readable (#1079)

The way the PRNG model is written looks more complicated than what is actually needed. Attempt to re-write it. This also makes it slightly easier to amend with future potential changes.

* Remove CRNGT (#1112)

CRNGT is not a requirement for FIPS 140-3.

FIPS 140-2 Section 4.9.2 required the execution of the Continuous Randomness Number Generation Test (CRNGT). However, this requirement is not present in FIPS 140-3. In addition, later stages of FIPS 140-2 this test was not mandatory in all cases either (cf. FIPS 140-2 IG 9.8).

Executing this test requires maintaining state, which inevitably introduces complexity. Given CRNGT is redundant with respect to compliance and really provides zero practical value (see, again, FIPS 140-2 IG 9.8), we axe it.

* Abstract fips entropy functions (#1113)

Abstract getting data from the configured entropy source of FIPS. Atm, the configured source is hard-coded in multiple workflows. This allows adding another source more easily.

In addition, add some machinery to configure another source of build-time using the new define FIPS_ENTROPY_SOURCE_JITTER_CPU.

* Implementation passive entropy (#1125)

* Use passive entropy source method by default for FIPS build mode (#1188)

Enables passive entropy method by default. In addition, adds a build-time config that can modify (at build-time) the entropy source method to CPU Jitter.

* Kick CI bots

* Kick CI bots, again
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants