Skip to content

docs: add XML documentation for core parameter classes and digests#666

Open
KonradSop wants to merge 1 commit intobcgit:masterfrom
KonradSop:documentation/xml-docs-parameter-classes-batch-1-3
Open

docs: add XML documentation for core parameter classes and digests#666
KonradSop wants to merge 1 commit intobcgit:masterfrom
KonradSop:documentation/xml-docs-parameter-classes-batch-1-3

Conversation

@KonradSop
Copy link
Copy Markdown

@KonradSop KonradSop commented Mar 27, 2026

Pull Request Description: Bouncy Castle C# Documentation Improvements

Description

This pull request improves the developer experience and IntelliSense support by adding comprehensive C# XML documentation (/// <summary>) to key cryptographic parameter classes and digests.

Currently, many core classes either lack documentation or use legacy Java-style comments (/** ... */) which are not natively supported by C# IntelliSense in some IDE environments.

Scope of Changes

  • Symmetric Keys: Added XML documentation to KeyParameter.
  • Hashing: Converted legacy comments to C# XML for Sha256Digest and Sha512Digest.
  • Asymmetric Parameters:
    • RSA: RsaKeyParameters, RsaPrivateCrtKeyParameters.
    • EC: ECKeyParameters, ECPrivateKeyParameters, ECPublicKeyParameters.
    • DH: DHPrivateKeyParameters, DHPublicKeyParameters.
    • DSA: DsaPrivateKeyParameters, DsaPublicKeyParameters.
    • ElGamal: ElGamalPrivateKeyParameters, ElGamalPublicKeyParameters.

Future Work

If this contribution style is acceptable, I am prepared to continue with further PRs covering:

  • AEAD/Block Cipher Parameters
  • Modern Curves (Ed25519, X25519)
  • PQC (Post-Quantum)
  • MACs (HMac, CMac)

Verified by building the full BouncyCastle.sln (Build succeeded).

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

See also Contributing Guidelines.

Added XML documentation for RSA, EC, DH, DSA, and ElGamal parameter classes.
Converted Sha256Digest and Sha512Digest JavaDoc to C# XML tags.
Updated KeyParameter documentation for better IntelliSense.
Comment on lines +30 to +32
.contributions/
*.log
build_*.txt
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Were these .gitignore changes intended to be part of the PR? If so, what tools/files do they relate to?

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