-
Notifications
You must be signed in to change notification settings - Fork 596
Respect multiple TSA certificate chains in trust root #4174
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
base: main
Are you sure you want to change the base?
Conversation
126a3fc
to
608b4cb
Compare
You can use the sigstore/sigstore version at the commit. |
nvm, I cut a release :) https://github.com/sigstore/sigstore/releases/tag/v1.9.4 |
Signed-off-by: Slavek Kabrda <[email protected]>
Signed-off-by: Slavek Kabrda <[email protected]>
77145cf
to
73d343d
Compare
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #4174 +/- ##
==========================================
- Coverage 40.10% 36.46% -3.64%
==========================================
Files 155 210 +55
Lines 10044 13762 +3718
==========================================
+ Hits 4028 5019 +991
- Misses 5530 8120 +2590
- Partials 486 623 +137 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Signed-off-by: Slavek Kabrda <[email protected]>
@haydentherapper thanks for the quick release of the sigstore library. I updated the PR to incorporate that, but I noticed that one e2e test is failing; it looks like it might be related to my change, so I'll try to take a look at it later today to see what's going wrong. |
Ok, I understand what's going wrong; in the "nonstandard key names with valid usage", it is assumed that even if multiple targets with "Usage: TSA" are used, they are still just parts of one certificate chain, but my code change expects these to be full certificate chains and therefore it fails on parsing them as such. Even though I dislike the behavior, I think technically my change is breaking it and so probably shouldn't be merged... WDYT @haydentherapper? I currently don't see a fully backwards compatible way of making this work with the "old-style" tuf targets and so probably the best way to go would be to wait for the trusted_root.json support to get merged. |
Note: right now the CI is failing, because this PR needs updating sigstore/sigstore to a version containing sigstore/sigstore#2068 which wasn't released yet. I'm not sure if the best course is to update the dependency to the specific commit or if it's better to wait until a new version is released - please let me know.
Summary
Fixes #4098 - cosign will now respect multiple TSA certificate chains provided through the trust root and will try to verify the signed timestamp with all of them (and fail if none of the TSA chains verify the signed timestamp).
Release Note
Support for multiple TSA certificate chains in the trust root was added.
Documentation
I don't believe this requires a documentation change.