Test data
Sample files
Synthetic fixtures generated by this project's build script, so you can try the reader without hunting for files. They are NOT real vendor files — each manifest says “fixture” and carries no genuine signature.

claude-fixture.png
download ↓Claude (fixture)
Simulates a Claude-generated PNG with Content Credentials.

openai-fixture.png
download ↓gpt-image-1 (fixture)
Simulates a GPT Image output with a creation + edit history.

photoshop-fixture.png
download ↓Adobe Photoshop 2025 (fixture)
A human editing tool WITH credentials — proves 'has C2PA' does not equal 'made by AI'.

stripped-fixture.png
download ↓Claude (fixture, credentials removed)
Same generator as the Claude sample but shipped WITHOUT its caBX chunk — shows what careless re-encoding does.

clean-camera-fixture.png
download ↓Nikon Z 6II (fixture)
A no-credentials control with camera-style XMP — should read as 'no provenance data'.
In the spirit of honesty: we mark every fixture with the word “fixture” and leave signatures non-genuine, so no one mistakes synthetic samples for vendor output. The reader treats them exactly like real C2PA files structurally — that's the point of a test fixture — but the vendor claim inside is simulated.
Reproduce: npm run samples — sources in scripts/make-samples.mjs.