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

Sequester with key rotation #6644

Open
wants to merge 20 commits into
base: master
Choose a base branch
from
Open

Conversation

touilleMan
Copy link
Member

@touilleMan touilleMan commented Mar 8, 2024

This PR fix the sequester service implementation.
Specifically, we encrypt the keys bundle for sequester services, instead of encrypting each manifest as it's uploaded. It's much better that way, by the way (simpler to implement and more robust).

Yet to be done:

  • PostgreSQL support
  • add tests for realm_rotate_key
  • fix client protocol tests (since vlob_create/vlob_update/realm_rotate_key commands have changed)
  • rename APIv4 into APIv5 (since backward incompatible change has been done in vlob_create/vlob_update/real_rotate_key)

It's not an urgent PR (there's no need for it in the demo, I implemented it because it was quick and allowed me to validate the corrections I was thinking while working on CSPN spec).

@touilleMan touilleMan requested review from a team as code owners March 8, 2024 09:38
@touilleMan touilleMan marked this pull request as draft March 8, 2024 09:38
@mmmarcos mmmarcos linked an issue Mar 8, 2024 that may be closed by this pull request
@touilleMan touilleMan force-pushed the sequester-with-key-rotation branch 10 times, most recently from 63b87ca to ab64e02 Compare October 29, 2024 12:08
@touilleMan touilleMan marked this pull request as ready for review October 29, 2024 15:11
@touilleMan touilleMan requested a review from a team as a code owner October 29, 2024 15:11
if sequester_topic_last_timestamp >= certif.timestamp:
return RequireGreaterTimestamp(strictly_greater_than=sequester_topic_last_timestamp)

# 4) All checks are good, now we do the actual insertion
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
# 4) All checks are good, now we do the actual insertion
# 3) All checks are good, now we do the actual insertion

// Returned if `per_participant_keys_bundle_access` field is out of date
// with the server:
// - A user part of the realm is missing
// - A user no longer (or that have never been) part of the realm is present
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
// - A user no longer (or that have never been) part of the realm is present
// - A user is no longer (or that have never been) part of the realm is present

Copy link
Member Author

Choose a reason for hiding this comment

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

You missed the end of the sentence: a user [...] *is* present

@touilleMan touilleMan linked an issue Oct 30, 2024 that may be closed by this pull request
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.

Sequester: RFC porting to V3 Create KEYS_BUNDLE_ACCESS for sequester services
2 participants