Craton HSM
Governance
Project Structure
Craton HSM is maintained by Craton Software Company with contributions from the open-source community.
Roles
Maintainers have full commit access and are responsible for:
- Reviewing and merging pull requests
- Triaging issues and security reports
- Release management and signing
- Architectural decisions
Crypto reviewers are maintainers with additional responsibility for:
- Reviewing changes to
src/crypto/,src/store/key_material.rs, andsrc/token/token.rs - Validating cryptographic correctness and side-channel resistance
- Approving changes to self-tests, DRBG, and key lifecycle code
Contributors are community members who submit pull requests, report issues, or participate in discussions.
Current Maintainers
See CODEOWNERS for the current list of maintainers and their review responsibilities.
Decision-Making Process
Minor Changes
Bug fixes, documentation improvements, dependency updates, and small enhancements can be merged by any maintainer after code review approval.
Significant Changes
Changes that affect the public API, security model, cryptographic implementations, or architectural design require:
- Issue or discussion: Open a GitHub issue or discussion describing the change and its motivation
- Review by two maintainers: At least two maintainers must approve the PR
- Crypto review: Changes to cryptographic code require approval from a crypto reviewer
- Documentation update: Affected docs must be updated in the same PR
Breaking Changes
Changes that break the PKCS#11 ABI, change key serialization formats, or alter security behavior require:
- All of the above, plus:
- CHANGELOG entry with migration instructions
- Migration guide update documenting the change
- Version bump following semantic versioning
Contribution Process
- Fork the repository
- Create a feature branch from
main - Sign the CLA (one-time, via CLA Assistant bot)
- Submit a pull request using the PR template
- Address review feedback
- Maintainer merges after approval
See CONTRIBUTING.md for detailed build, test, and code guidelines.
Security Governance
- Security vulnerabilities are reported via GitHub private advisories
- Response timeline: 48h acknowledgment, 1 week assessment, 30 days fix target
- Security fixes are backported to all supported versions
- See SECURITY.md for full details
Release Process
- All tests pass on CI (multi-platform)
cargo auditandcargo deny checkpass- CHANGELOG updated with version and date
- Version bumped in
Cargo.toml - Git tag created and signed
- Release artifacts published with checksums
- See Release Signing for signing procedures
Versioning
Craton HSM follows Semantic Versioning:
- MAJOR: Breaking changes to PKCS#11 ABI or key formats
- MINOR: New features, new mechanisms, backward-compatible additions
- PATCH: Bug fixes, security patches, documentation updates
Pre-1.0 versions (current) may include breaking changes in minor releases, documented in the CHANGELOG.
Code of Conduct
All participants must follow the Code of Conduct (Contributor Covenant 2.1).
License
Craton HSM is licensed under Apache-2.0. All contributions are subject to the CLA.