ChronoVerify

Newsrooms and journalism

Verifying a source image under deadline is hard. ChronoVerify reads capture time, device, and C2PA Content Credentials, and validates them cryptographically, so a desk can check provenance in seconds and keep a signed record.

The workflow

  1. Check provenance first. Validate any C2PA Content Credentials against the official trust list before anything else.
  2. Corroborate the metadata. Read capture time, device, and location, and look for internal contradictions.
  3. Keep a signed record. Generate a signed report to attach to the story's verification notes.

Which verdicts matter

provenance_confirmed means a trusted Content Credential validated. consistent means the metadata holds up with no manipulation signal. Treat manipulation_indicated as a lead to investigate, not a conclusion.

What this can and cannot tell you

Most images on the open web are unsigned and platform-stripped, so they return inconclusive; absence of provenance is not evidence of fakery. A verdict supports your reporting.

One call

curl -X POST https://chronoverify.com/v1/verify \
  -F "url=https://example.com/source-photo.jpg"

Omit the Authorization header to use the free, rate-limited public path. Full field reference is on the method and API page.

Common questions

Does it work on a photo with no Content Credentials?

Yes. It falls back to EXIF, XMP, and pixel forensics and returns a verdict on any image, while being honest that an unsigned image carries weaker provenance.

Can I prove to readers a photo is authentic?

You can show a validated Content Credential and a signed verification record. ChronoVerify reports provenance integrity; it does not certify that the scene depicted is true.

Is ChronoVerify C2PA conformant?

Yes. ChronoVerify is a C2PA Conformant Validator on the C2PA Conforming Products List, record 019f8a20-6452-7a43-b11b-59d0b0e4a84a, covering validation of JPEG, PNG, WebP and AVIF under C2PA specification 2.2. The list is public, so you can check the record yourself. It covers validation rather than generation: ChronoVerify reads and validates Content Credentials, it does not sign them.

See a verdict on a real photo.

Try the free verifier