-
Notifications
You must be signed in to change notification settings - Fork 43
Replace sigstore_proto_buf with sigstore_models #533
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
I running into all kinds of issue where I am not sure whether sigstore_models is wrong or whether we need to do something different: (please excuse the debugging output.)
I am not sure why it doesn't accept the mediaType even though it clearly is in the JSON object. Sometimes the signing works (as above), at other times it fails like this:
It's the sig parameter to Signature(sig=sig,...) that is of type bytes, but then the padding is bad... eh? The sigstore_models code looks like it's supposed to convert the bytes to a b64 encoded string:
@woodruffw , maybe you have a hint? |
@woodruffw With this change to _core.py I can at least eliminate the 2nd problem above:
|
I have the impression that |
846aa28
to
2ed924e
Compare
I got a lot farther now but had to disable verification tests with public keys because sigstore-models does seem to deal with plain public keys the same way as protobuf did. |
56cba6f
to
af16355
Compare
af16355
to
9b60a55
Compare
certificates=chain | ||
) | ||
), | ||
tlog_entries=[], |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@woodruffw Should this have to be here or is this a bug in the library?
Unfortunately this would break verifying models from the NVidia hub in that case, so we'd still need to patch to support that use case. |
We do have test cases verifying older signatures and they do pass now... |
In that case, let's merge this too and tentatively do a release and ask NVIDIA to also test. One sample model: https://catalog.ngc.nvidia.com/orgs/nvidia/teams/tao/models/peoplenet?version=pruned_quantized_decrypted_v2.3.4 There are also instructions on https://developer.nvidia.com/blog/bringing-verifiable-trust-to-ai-models-model-signing-in-ngc/ |
In many cases the classes of sigstore_models can be called with unchanged parameters. However, in some cases explicit base64 encoding needs to be done. Signed-off-by: Stefan Berger <[email protected]>
9b60a55
to
9af5f42
Compare
@mihaimaruseac I converted it to a draft for now, hoping to hear back from @woodruffw soon on the issues that I have seen with the library, such as the necessary additional parameter ( |
Whatever 'File Browser' I clicked on of various versions, I don't see any file that looks like model.sig. |
Yeah, the signature is not displayed there, you download it with the CLI command |
I must be doing something wrong. With the command
|
Summary
Replace sigstore_proto_buf with sigstore_models. In many cases the classes of sigstore_modelscan be called with unchanged parameters, but in some cases explicit base64 encoding needs to be done.
Checklist