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

Implementing automated versioning #7

Merged
merged 4 commits into from
Mar 24, 2024
Merged

Implementing automated versioning #7

merged 4 commits into from
Mar 24, 2024

Conversation

nstilt1
Copy link
Owner

@nstilt1 nstilt1 commented Mar 19, 2024

The goal of this PR is to create a relatively-automated MasterKey, where versions and EPOCH times can be routinely increased. This PR will fix #4, and it will fix #1, with the exception of providing ways to change signature algorithms and KDF algorithms (unless I can get that sorted out).

There are several requirements for the MasterKey:

  1. Every single generated key and key ID MUST expire. If they don't expire, there could exist a "MasterKey" that an attacker could use that will always be validated. The probability of this seems to be extremely low, but would be there nonetheless.
  2. Versions need to expire as well as IDs. This will not apply to non-expiring keyless_ids, but for any expiring key ID, if the version is too old to have possibly been generated with a specific version, the key needs to be invalidated based on the version.

@nstilt1
Copy link
Owner Author

nstilt1 commented Mar 20, 2024

Also fixes #6 as the timestamp precision and bits are now constant parameters

@nstilt1 nstilt1 marked this pull request as draft March 20, 2024 00:24
@nstilt1 nstilt1 linked an issue Mar 20, 2024 that may be closed by this pull request
…; added some compile-time validation for consts, and tests to verify the validation
@nstilt1 nstilt1 self-assigned this Mar 24, 2024
@nstilt1 nstilt1 changed the title Implementing a MasterKey for automated versioning Implementing automated versioning Mar 24, 2024
@nstilt1 nstilt1 marked this pull request as ready for review March 24, 2024 01:36
@nstilt1 nstilt1 merged commit 2f5d5b9 into master Mar 24, 2024
@nstilt1 nstilt1 linked an issue Mar 24, 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
1 participant