Skip to content

test(verifier): repair origin-bound DC API fixture - #2105

Merged
3 commits merged into
mainfrom
fix/wal-752-dc-api-fixture-origin
Aug 17, 2026
Merged

test(verifier): repair origin-bound DC API fixture#2105
3 commits merged into
mainfrom
fix/wal-752-dc-api-fixture-origin

Conversation

@szijpeter

@szijpeter szijpeter commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Summary

Repairs the static DC API verifier vector for the canonical origin https://portal2.demo.walt.id.

The request object, x509 client authentication, required static-discovery audience, DCQL query, and mdoc response now form one cryptographically coherent transaction.

What Changed

Request authentication and coherence

  • Replaces the placeholder x509_hash with the SHA-256 hash of the request leaf certificate's DER.
  • Uses a real client-auth certificate chain in the signed request object and asserts authentication against its trust anchor.
  • Includes the required static-discovery audience https://self-issued.me/v2 in the signed Request Object.
  • Aligns the canonical origin and nonce across session metadata, request URL, signed request object, and expected_origins.
  • Preserves the age_over_21 DCQL claim and compares the request's response type, client ID, response mode, audience, nonce, expected origins, DCQL, and client metadata.

mdoc verification

  • Uses verifier-side DC API session-transcript reconstruction for DeviceAuth verification.
  • Uses a verifier-supported ES256 device signature and a static mdoc containing all requested claims.
  • Keeps direct-post success coverage and rejects an issuer-auth algorithm outside the request metadata.

Test-fixture boundaries

  • Keeps MdlTestFixture local to verifier-api2.
  • Removes the verifier test's unnecessary wallet and service-commons-test dependencies.
  • Production protocol behavior is unchanged.

Caveats and Follow-Ups

The vector intentionally omits state: DC API JSON responses do not echo it, and the production DC API session shape already uses null.

Breaking

None.

@linear-code

linear-code Bot commented Aug 14, 2026

Copy link
Copy Markdown

WAL-752

@szijpeter szijpeter self-assigned this Aug 14, 2026
@coderabbitai

coderabbitai Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: ef719e47-ff72-4ba0-b50d-a2109d00b31d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@szijpeter
szijpeter force-pushed the fix/wal-752-dc-api-fixture-origin branch from 74e7881 to 5a7e3e3 Compare August 14, 2026 10:41
@szijpeter
szijpeter marked this pull request as ready for review August 14, 2026 10:48
@szijpeter
szijpeter force-pushed the fix/wal-752-dc-api-fixture-origin branch from 5a7e3e3 to 2113cb6 Compare August 15, 2026 00:21
@sonarqubecloud

Copy link
Copy Markdown

szijpeter added a commit that referenced this pull request Aug 15, 2026
@JakeFernandes98 JakeFernandes98 closed this pull request by merging all changes into main in 09c5113 Aug 17, 2026
@JakeFernandes98
JakeFernandes98 deleted the fix/wal-752-dc-api-fixture-origin branch August 17, 2026 08:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants