Requirements for obtaining the badge "Signed" for container images #4715
Replies: 2 comments 1 reply
-
|
Hi @volker-raschek 👋 It's likely that's related to the cosign version used, yes. Please see #4684 (comment) and #4684 (comment). |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
Hi @tegioz, Are there plans to support the new pattern of cosign v3 as well or is that an unexpected breaking change of cosign? Volker |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hello everyone,
I am in the process of unlocking all three badges for the container image dcmerge. Currently, the only badge I'm missing is "Signed".
I couldn't find anything in the documentation about how container images need to be signed or what requirements ArtifactHub has for signed images to receive the "Signed" badge.
Since dcmerge project uses goreleaser, I followed the documentation there and defined docker_sign in the .goreleaser file. In the CI,
cosignis installed via Action. Actuallyv3.0.3of cosign. The environment variables that cosign needs for signing, such asCOSIGN_PASSPHRASEandCOSIGN_PRIVATE_KEY, are also defined there.When I now check the image using cosign, I don't get an error message / exit code > 0. I assume that the signature of the container image is correct:
$ oras pull git.cryptic.systems/volker.raschek/dcmerge:cosign.pub $ cosign verify \ --key cosign.pub \ git.cryptic.systems/volker.raschek/dcmerge:0.8.3 ✓ Pulled cosign.pub 178/178 B 100.00% 64µs └─ sha256:14e056b1cd208bf3b285369ecd7e296b92b5546dd13b29f7907c2a45b414d975 ✓ Pulled application/vnd.oci.image.manifest.v1+json 597/597 B 100.00% 12µs └─ sha256:56df96a04fefaad86894cbc79ace1d747de7e7eeaa05ed1e5a2cbacd2b91757a Pulled [registry] git.cryptic.systems/volker.raschek/dcmerge:cosign.pub Digest: sha256:56df96a04fefaad86894cbc79ace1d747de7e7eeaa05ed1e5a2cbacd2b91757a Verification for git.cryptic.systems/volker.raschek/dcmerge:0.8.3 -- The following checks were performed on each of these signatures: - The cosign claims were validated - Existence of the claims in the transparency log was verified offline - The signatures were verified against the specified public key [{"critical":{"identity":{"docker-reference":"git.cryptic.systems/volker.raschek/dcmerge:0.8.3"},"image":{"docker-manifest-digest":"sha256:5a0889073d2cebc3c05ccf886ba4250e07308720d928b688d9647f852450889b"},"type":"https://sigstore.dev/cosign/sign/v1"},"optional":{}},{"critical":{"identity":{"docker-reference":"git.cryptic.systems/volker.raschek/dcmerge:0.8.3"},"image":{"docker-manifest-digest":"sha256:5a0889073d2cebc3c05ccf886ba4250e07308720d928b688d9647f852450889b"},"type":"https://sigstore.dev/cosign/sign/v1"},"optional":{}}]Nevertheless, the badge is not displayed. I can't immediately explain why.
I tried to locate the blob using
cosignwhere the signature is stored. It also ends in.sig.I don't know if this is a requirement of ArtifactHub, but when I look at other images that are signed, the tags always end in
.sig, which I don't have:So now the questions:
.siga must have?cosignv3.0.3 is to new and does not create signatures ending on.sig?I hope someone can help me.
Thanks in advance,
Volker
Beta Was this translation helpful? Give feedback.
All reactions