Skip to content

[manuf] Fill entire attestation seeds flash info page with random bytes - #31042

Merged
timothytrippel merged 1 commit into
lowRISC:earlgrey_1.0.0from
sasdf:mjTmmnkzuzm
Aug 24, 2026
Merged

[manuf] Fill entire attestation seeds flash info page with random bytes#31042
timothytrippel merged 1 commit into
lowRISC:earlgrey_1.0.0from
sasdf:mjTmmnkzuzm

Conversation

@sasdf

@sasdf sasdf commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

Fill the entire 2048-byte (512-word) attestation seeds flash info page (kFlashCtrlInfoPageAttestationKeySeeds) with random bytes generated by CSRNG in a single erase & write operation during manufacturing personalization. This provides entropy seeds for newly added ML-DSA keys as well as future keys without requiring individual per-seed code updates.

Also increment the attestation keygen version to
kAttestationKeyGenVersion1 (Gen 1) and update functests to verify the whole page.

Fill the entire 2048-byte (512-word) attestation seeds flash info page
(kFlashCtrlInfoPageAttestationKeySeeds) with random bytes generated by
CSRNG in a single erase & write operation during manufacturing
personalization. This provides entropy seeds for newly added ML-DSA
keys as well as future keys without requiring individual per-seed code
updates.

Also increment the attestation keygen version to
kAttestationKeyGenVersion1 (Gen 1) and update functests to verify the
whole page.

Signed-off-by: Yi-Hsuan Deng <yhdeng@google.com>
Change-Id: Iddcf050de962a297a1efc33a4c3c02056a6a6964
@sasdf sasdf added the CI:Rerun Rerun failed CI jobs label Aug 18, 2026
@github-actions github-actions Bot removed the CI:Rerun Rerun failed CI jobs label Aug 18, 2026
@sasdf
sasdf marked this pull request as ready for review August 18, 2026 14:41
@sasdf
sasdf requested a review from a team as a code owner August 18, 2026 14:41
@sasdf sasdf added the CI:Rerun Rerun failed CI jobs label Aug 19, 2026
@github-actions github-actions Bot removed the CI:Rerun Rerun failed CI jobs label Aug 19, 2026
// Read the entire attestation key seed page to ensure the random words
// are non-zero and the version field matches kAttestationKeyGenVersion1.
enum {
kPageWords = FLASH_CTRL_PARAM_BYTES_PER_PAGE / sizeof(uint32_t),

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we put this in a header file since it is used in multiple places?

@timothytrippel
timothytrippel merged commit dd9bb17 into lowRISC:earlgrey_1.0.0 Aug 24, 2026
100 of 105 checks passed
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.

3 participants