> [...]
>> I've backported the necessary code changes and have uploaded it to
>> experimental as golang-github-notaryproject-notation-core-go_1.1.0-7, to
>> allow (more) convenient testing and review of the code. Once that has
>> been built, we can upload the patch from upstream commit
>> e7005a6d13e5ba472d4e166fbb085152f909e102 to experimental as well, so
>> that we can then actually rebuild src:golang-github-notaryproject-notation
>
> [...]
>
>> CC'ed debian-release: Please let me know if you prefer to go with newer
>> upstream release, otherwise I'll proceed as outlined above: Minimal code
>> changes, and rebuild dependencies in experimental so that they can be
>> tested safely.
>
> I just happened to see this bug report. Individual messages to -release often
> get lost in the volume, which is why we prefer unblock requests bugs, so that
> they can be tracked properly.

Thanks for getting back to me.

So here is the thing, I've managed to run the e2e tests with the change
in experimental (which took me to set up a qemu VM and manually install packages
from experimental), and as it turns out, exactly one of the tests appear to 
fail:



>> should pass: /usr/bin/notation verify 
>> localhost:5000/e2e-1275110522315878098@sha256:b8479de3f88fb259a0a9ea82a5b2a052a1ef3c4ebbcfc61482d5ae4c831f8af9
>>  -v >>
level=info msg="Allowed to access the referrers API, fallback if not supported"
level=info msg="Reference 
sha256:b8479de3f88fb259a0a9ea82a5b2a052a1ef3c4ebbcfc61482d5ae4c831f8af9 
resolved to manifest descriptor: 
{MediaType:application/vnd.oci.image.manifest.v1+json 
Digest:sha256:b8479de3f88fb259a0a9ea82a5b2a052a1ef3c4ebbcfc61482d5ae4c831f8af9 
Size:517 URLs:[] Annotations:map[] Data:[] Platform:<nil> ArtifactType:}"
level=info msg="Checking whether signature verification should be skipped or 
not"
level=info msg="Trust policy configuration: &{Name:e2e RegistryScopes:[*] 
SignatureVerification:{VerificationLevel:strict Override:map[] 
VerifyTimestamp:always} TrustStores:[ca:e2e tsa:e2e] TrustedIdentities:[*]}"
level=info msg="Check over. Trust policy is not configured to skip signature 
verification"
level=info msg="Processing signature with manifest mediaType: 
application/vnd.oci.image.manifest.v1+json and digest: 
sha256:360633c4b9d4639e69b07b176e18fa2c6574f71fd8de3f03f87466d955c9ccb0"
level=info msg="Trust policy configuration: &{Name:e2e RegistryScopes:[*] 
SignatureVerification:{VerificationLevel:strict Override:map[] 
VerifyTimestamp:always} TrustStores:[ca:e2e tsa:e2e] TrustedIdentities:[*]}"
level=info msg="Performing timestamp verification..."
level=info msg="TSA identity is: CN=DigiCert SHA256 RSA4096 Timestamp Responder 
2025 1,O=DigiCert\\, Inc.,C=US"
level=error msg="authenticTimestamp validation failed. Failure reason: 
timestamping certificate with subject \"CN=DigiCert SHA256 RSA4096 Timestamp 
Responder 2025 1,O=DigiCert\\\\, Inc.,C=US\" revocation status is unknown"
level=warning msg="Signature 
sha256:360633c4b9d4639e69b07b176e18fa2c6574f71fd8de3f03f87466d955c9ccb0 failed 
verification with error: timestamping certificate with subject \"CN=DigiCert 
SHA256 RSA4096 Timestamp Responder 2025 1,O=DigiCert\\\\, Inc.,C=US\" 
revocation status is unknown"
Error: signature verification failed for all the signatures associated with 
localhost:5000/e2e-1275110522315878098@sha256:b8479de3f88fb259a0a9ea82a5b2a052a1ef3c4ebbcfc61482d5ae4c831f8af9

------------------------------
• [FAILED] [0.319 seconds]
notation verify [It] with timestamp verification
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/_build/src/github.com/notaryproject/notation/test/e2e/suite/command/verify.go:227

  Timeline >>
  STEP: 
  >> should pass: /usr/bin/notation cert add --type ca --store e2e 
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/test/e2e/testdata/config/localkeys/e2e.crt
 >> @ 06/14/25 23:20:36.405
  STEP: 
  >> should pass: /usr/bin/notation cert add --type tsa --store e2e 
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/test/e2e/testdata/config/timestamp/globalsignTSARoot.cer
 >> @ 06/14/25 23:20:36.416
  STEP: 
  >> should pass: /usr/bin/notation cert add --type tsa --store e2e 
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/test/e2e/testdata/config/timestamp/DigiCertTSARootSHA384.cer
 >> @ 06/14/25 23:20:36.426
  STEP: 
  >> should pass: /usr/bin/notation sign --timestamp-url 
http://timestamp.digicert.com --timestamp-root-cert 
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/test/e2e/testdata/config/timestamp/DigiCertTSARootSHA384.cer
 
localhost:5000/e2e-1275110522315878098@sha256:b8479de3f88fb259a0a9ea82a5b2a052a1ef3c4ebbcfc61482d5ae4c831f8af9
 >> @ 06/14/25 23:20:36.463
  STEP: 
  >> should pass: /usr/bin/notation verify 
localhost:5000/e2e-1275110522315878098@sha256:b8479de3f88fb259a0a9ea82a5b2a052a1ef3c4ebbcfc61482d5ae4c831f8af9
 -v >> @ 06/14/25 23:20:36.638
  [FAILED] in [It] - 
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/_build/src/github.com/notaryproject/notation/test/e2e/internal/utils/exec.go:173
 @ 06/14/25 23:20:36.722
  << Timeline

  [FAILED] Expected
      <bool>: true
  to equal
      <bool>: false
  In [It] at: 
/tmp/autopkgtest.xKBg3z/build.2pt/real-tree/_build/src/github.com/notaryproject/notation/test/e2e/internal/utils/exec.go:173
 @ 06/14/25 23:20:36.722
------------------------------

I could verify that this is coming from code that is part of the patch,
and deals with certificate revocation status. Apparently one of the test
certificates cannot be verified, but it remains very unclear to me why.

As such, I am not comfortable uploading this patch to experimental. A
more producent approach is probably to update to notation 1.3.2, which
comes with a number of additional code changes. If the release team was
okay with going to a newer upstream release, then I can work on
that. Note that this covers updating multiple source packages:


- golang-github-notaryproject-notation
- golang-github-notaryproject-notation-go
- golang-github-notaryproject-notation-core-go


Notation is a CLI tool to sign and verify artifacts, and commonly used
to sign OCI images (read: docker images). Not including it would mean
users will have to download this software elsewhere. AFAIUI, no other
packages use this code.

Ivo, let me know how best to proceed here.

Best,
-rt

Reply via email to