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: add ability to sign with vault transit secret engine #260

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

mikhailswift
Copy link
Member

@mikhailswift mikhailswift commented May 30, 2024

This isn't quite ready for merge, but ready for people to look at.

Few things here:

  • this doesn't currently support local verification.
  • no tests
  • haven't tested verification

The biggest one, though:

vault transit sends it's signatures in a peculiar format. namely it's vault:v1:BASE64ENCODEDSIGNATURE. sigstore handles this by just purging the vault:v1:. this has some nice qualities because it then just becomes a regular signature that you can verify with other tooling (provided you have the public key).

however, the v1 part of the prefix is the key version that was used to create the signature. this means if you do not have the public part of the key locally and try to do remote verification, you will not know what key version to verify with. the transit engines API expects the signature sent for verification to have this prefix with the appropriate key version attached.

what this means in practice is if we do not store the prefix as part of the signature and we try to do a remote verification and the key has since been rotated, verification will fail unless we ask the user to manually provide the key version.

I welcome thoughts about how to handle this.

@mikhailswift mikhailswift force-pushed the feat/vault-transit branch 3 times, most recently from e69ca3d to a0f753f Compare June 12, 2024 16:10
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.

1 participant