Skip to content

Add encryption infrastructure#1365

Open
edwinyyyu wants to merge 7 commits intoMemMachine:mainfrom
edwinyyyu:key_manager
Open

Add encryption infrastructure#1365
edwinyyyu wants to merge 7 commits intoMemMachine:mainfrom
edwinyyyu:key_manager

Conversation

@edwinyyyu
Copy link
Copy Markdown
Contributor

@edwinyyyu edwinyyyu commented Apr 22, 2026

Purpose of the change

For supporting sensitive data encryption.
The approach to encrypting in SQL will be to store codec config (including wrapped DEK) in database.

Description

Based on #1291 for easier rebasing, but really only creates stuff for encryption.

KMSCryptoClient may get implementations with the following backends:

  • OpenBao
  • HashiCorp Vault
  • cloud KMS such as AWS, Azure, GCP

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactor (does not change functionality, e.g., code style improvements, linting)
  • Documentation update
  • Project Maintenance (updates to build scripts, CI, etc., that do not affect the main project)
  • Security (improves security without changing functionality)

How Has This Been Tested?

  • Unit Test
  • Integration Test
  • End-to-end Test
  • Test Script (please provide)
  • Manual verification (list step-by-step instructions)

Checklist

  • I have signed the commit(s) within this pull request
  • My code follows the style guidelines of this project (See STYLE_GUIDE.md)
  • I have performed a self-review of my own code
  • I have commented my code
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings
  • I have added unit tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes
  • Any dependent changes have been merged and published in downstream modules
  • I have checked my code and corrected any misspellings

Maintainer Checklist

  • Confirmed all checks passed
  • Contributor has signed the commit(s)
  • Reviewed the code
  • Run, Tested, and Verified the change(s) work as expected

@edwinyyyu edwinyyyu added this to the v0.4.0 milestone Apr 22, 2026
@edwinyyyu edwinyyyu marked this pull request as draft April 23, 2026 01:52
@edwinyyyu
Copy link
Copy Markdown
Contributor Author

May need changes to support BYOK.

@edwinyyyu edwinyyyu changed the title Add KeyManager ABC for KEK management Add KMSCryptoClient ABC for KEK management Apr 23, 2026
@edwinyyyu edwinyyyu changed the title Add KMSCryptoClient ABC for KEK management Add KMSCryptoClient ABC for using KEK Apr 23, 2026
@edwinyyyu edwinyyyu changed the title Add KMSCryptoClient ABC for using KEK Add encryption infrastructure Apr 23, 2026
@edwinyyyu edwinyyyu marked this pull request as ready for review April 23, 2026 06:33
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
@edwinyyyu edwinyyyu marked this pull request as draft April 23, 2026 21:56
Signed-off-by: Edwin Yu <edwinyyyu@gmail.com>
@edwinyyyu edwinyyyu marked this pull request as ready for review April 24, 2026 03:13
@edwinyyyu edwinyyyu modified the milestones: v0.4.0, v0.3.7 Apr 24, 2026
@edwinyyyu edwinyyyu modified the milestones: v0.3.7, v0.4.0 Apr 24, 2026
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