Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: HSM support #344

Merged
merged 34 commits into from
Nov 30, 2024
Merged

feat: HSM support #344

merged 34 commits into from
Nov 30, 2024

Conversation

bgrieder
Copy link
Contributor

@bgrieder bgrieder commented Nov 26, 2024

The main goal of this PR is to add support for the Proteccio HSM.
It provides both

  • the ability to perform the Create, Destroy, Export, Encrypt, and Decrypt operations on the HSM
  • the ability to create keys in the KMS which are wrapped by a key in the HSM

This leads to significant refactoring of the database and encryption/decryption (wrap/unwrap) components to add flexibility for supporting additional hardware (or external software) in the future. In particular:

  • the database components are now in a separate crate server_database. They are now split in 2 implementations: Objects store and Permissions store
  • a new interfaces crate gathers interfaces to be implemented by new external components. Interfaces include:
    • Object Store
    • Permissions Store
    • Encryption Oracle

Key unique identifiers now support prefixes. Object Stores, Permissions stores, and Encryption Oracles can be registered against the prefixes.

Support for the Sensitive Attribute in addition to the ability to wrap a key by another key has been added to all keys creations

@Manuthor Manuthor changed the title WIP: HSM support feat: HSM support Nov 28, 2024
Copy link
Contributor

@Manuthor Manuthor left a comment

Choose a reason for hiding this comment

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

review in progress

bgrieder and others added 12 commits November 29, 2024 12:07
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
bgrieder and others added 6 commits November 29, 2024 12:41
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
Co-authored-by: Manuthor <32013169+Manuthor@users.noreply.github.com>
@Manuthor Manuthor merged commit c660254 into develop Nov 30, 2024
71 checks passed
@Manuthor Manuthor deleted the pkcs11 branch November 30, 2024 05:45
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