Skip to content

feat(licensing): vendor ML-DSA-65 trust anchor + PLANS_TODO entry for shell hardening (#2042, #1926) - #2075

Merged
FabioLeitao merged 4 commits into
mainfrom
epic/boar-mldsa-anchor
Oct 12, 2026
Merged

FabioLeitao merged 4 commits into
mainfrom
epic/boar-mldsa-anchor

Conversation

@FabioLeitao

Copy link
Copy Markdown
Collaborator

Summary

Gate files

No file under .github/workflows/ and none of the tripwire gate files is touched, so no Gate-Change-Approved-By is needed.

Verification

  • ./scripts/check-all.sh exited 0 on this branch after the last commit (pre-commit, pytest, security scans).
  • Fail then pass: with the PEM renamed, test_committed_mldsa_anchor_pem_matches_canonical_sha256 fails with missing packaged anchor PEM in source tree; restored, the 6 tests pass.
  • Packaging: built the wheel (uv build --wheel, 1.8.0rc0) and listed it: it contains core/licensing/license-mldsa-pub-v1.pem (2717 bytes, sha256 37faef8f…, no PRIVATE) next to license-pub-v1.pem.
  • Windows: the canonical sha256 is of LF bytes, so the test normalises CRLF to LF before hashing; .gitattributes is untouched.

Not verified

  • Other distribution channels: only the wheel was inspected. I found no reference to the Ed25519 PEM in a Dockerfile, MANIFEST.in or a hash manifest to mirror, so none was changed.
  • End-to-end hybrid token with this anchor: needs a token signed by the operator's golden ML-DSA private key, which is deliberately not available here. The embedded key is verified by hash and by loading, not by verifying a production token.

Closing

Closes #1926
Refs #2042
Refs #1462
Refs #2055
Refs #2021

🤖 Generated with Claude Code

https://claude.ai/code/session_0142QEjA7eEFcdXTpcTmcAZk

Ship license-mldsa-pub-v1.pem for trust_anchor rotation and optional
hybrid verify; mirror Ed25519 wheel force-include and gitignore allowlist.

Refs #2042
Refs #1462
Hermetic SHA-256 (LF-normalized file bytes), loader parity, absent-resource
None, ML-DSA-65 key size, and unchanged Ed25519-only JWT decode.

Refs #2042
Refs #1462
Note packaged license-mldsa-pub-v1.pem, canonical SHA-256, and that hybrid
dbmldsa_sig verification remains optional until operator policy.

Refs #2042
Refs #1462
@FabioLeitao
FabioLeitao merged commit 2c4eb0c into main Oct 12, 2026
33 checks passed
@FabioLeitao
FabioLeitao deleted the epic/boar-mldsa-anchor branch October 12, 2026 22:19
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.

chore: shellcheck em CI + bats hermético seletivo pros 65 scripts bash do repo (zero cobertura hoje)

1 participant