Skip to content

docs: add XML documentation for ML-KEM and ML-DSA parameters (Batch 5)#673

Closed
KonradSop wants to merge 1 commit intobcgit:masterfrom
KonradSop:feature/pqc-params-docs
Closed

docs: add XML documentation for ML-KEM and ML-DSA parameters (Batch 5)#673
KonradSop wants to merge 1 commit intobcgit:masterfrom
KonradSop:feature/pqc-params-docs

Conversation

@KonradSop
Copy link
Copy Markdown
Contributor

Describe your changes

Adds XML documentation for the public API surface of the ML-KEM (FIPS 203) and ML-DSA (FIPS 204) parameter classes. This is Batch 5 of the ongoing documentation effort, following the pattern established in merged PRs #666, #669 and the in-review PRs #670, #671.

Files covered:

  • MLKemParameters — parameter set constants (ml_kem_512/768/1024) + Name, ParameterSet, ToString.
  • MLKemPublicKeyParameters — class summary, FromEncoding, GetEncoded.
  • MLKemPrivateKeyParameters — class summary, Format enum (incl. per-value descriptions), FromEncoding, both FromSeed overloads, GetEncoded, GetPublicKey, GetPublicKeyEncoded, GetSeed, PreferredFormat, WithPreferredFormat.
  • MLDsaParameters — pure and HashML-DSA-with-SHA512 variants, IsPreHash, Name, ParameterSet, ToString.
  • MLDsaPublicKeyParameters — class summary, FromEncoding, GetEncoded.

No behavioural changes. References to FIPS 203 / FIPS 204 are included where it clarifies semantics.

How has this been tested?

dotnet build crypto/src/BouncyCastle.Crypto.csproj -c Release succeeds with 0 errors across all target frameworks (net6.0, netstandard2.0, net461). No new tests — this is a documentation-only change.

Checklist before requesting a review

  • I have performed a self-review of my code
  • I have kept the patch limited to only change the parts related to the patch
  • This change requires a documentation update

Adds XML documentation for the public API surface of the ML-KEM
(FIPS 203) and ML-DSA (FIPS 204) parameter classes. Covers the
standard parameter set constants, key creation factories, encoding
accessors, and the seed/encoding format enum for ML-KEM private keys.

- MLKemParameters: algorithm parameter sets (ml_kem_512/768/1024)
- MLKemPublicKeyParameters: FromEncoding, GetEncoded
- MLKemPrivateKeyParameters: Format enum, FromEncoding, FromSeed
  (both overloads), GetEncoded, GetPublicKey, GetPublicKeyEncoded,
  GetSeed, PreferredFormat, WithPreferredFormat
- MLDsaParameters: pure and HashML-DSA with SHA-512 variants
- MLDsaPublicKeyParameters: FromEncoding, GetEncoded
@peterdettman
Copy link
Copy Markdown
Collaborator

Thanks for the PR. Rebased and merged.

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.

2 participants