You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Also the bundle format alone leaves some things underspecified. Such as hash and signature algorithm used by the transparency log, that has to be documented. This is now captured in the bundle verification interface, and also called out in this issue: #7, but should be properly documented.
During SigstoreCon there was a lot of discussion on this, the general idea was a layered approach:
The process has a global trust root
During artifact verification a few steps happen
Based on artifact/policy a subset/filtered of the trust root is selected
The real verification function is executed with the filtered trust root and artifact as input
The primary reason for first filtering the trust root and then running the verification logic is that code with this layout is easier to write and test, as each stage has specific purpose. The verification code should be as simple as possible, with minimal dependencies and possible choices.
Where should the such documentation live? In this repository, the architecture-docs? Separate document or part of the client spec?
Description
There is currently no real documentation on how to verify a bundle. There are some drafts like this: https://github.com/kommendorkapten/cosign/blob/bundle_verification/specs/dotsigstore_bundle/verify.md
Also the bundle format alone leaves some things underspecified. Such as hash and signature algorithm used by the transparency log, that has to be documented. This is now captured in the bundle verification interface, and also called out in this issue: #7, but should be properly documented.
During SigstoreCon there was a lot of discussion on this, the general idea was a layered approach:
The primary reason for first filtering the trust root and then running the verification logic is that code with this layout is easier to write and test, as each stage has specific purpose. The verification code should be as simple as possible, with minimal dependencies and possible choices.
Where should the such documentation live? In this repository, the architecture-docs? Separate document or part of the client spec?
cc @znewman01 @asraa @joshuagl @vaikas who was present during the discussions.
The text was updated successfully, but these errors were encountered: