Image content provenance
A signed C2PA manifestC2PA manifest: The signed label itself: a small package inside a file that records who signed it, what they declared and how to check it. can sit inside a JPEG, PNG, WebP, HEIC and 11 other image formats. It shows who published the picture and whether it changed since. Anyone can check it, free.

- Formats
- 15 image formats.
- Where it sits
- In its own part of the file, apart from the picture data.
- AI images
- The label can say the picture was made with AI.
- Checking
- Free, with no account.
EXIF is easy to change. A signed label is not.
EXIFEXIF: Photo details stored in an image file, such as date, camera and settings. holds a photo's date, camera and credit as plain text. Anyone can edit it, and most social sites delete it on upload. A C2PA manifest is signed, so a change to the picture or the label shows in a check.
Some sites also strip C2PA manifests when they rebuild a file. Then the check finds no label, and says so.
Where the label sits in each image format
Each format has its own place for extra data. The C2PAC2PA: The Coalition for Content Provenance and Authenticity: the group that publishes the open standard for content labels. standard says which one to use.
Marking AI images
The label can record that a picture was made or changed with AI, using a field called the digital source typeDigital source type: A field in the label that says how content was made: captured by a camera, made by AI, or a mix.. It can carry the machine-readable markingMachine-readable marking: A label software can read that says content was made or changed by AI. the EU AI ActEU AI Act: The European Union's law on artificial intelligence, which includes rules for marking AI-made content. asks AI providersProvider: Under the EU AI Act, the company that builds an AI system or puts it on the EU market under its own name. for.
When a copy loses its label
A label in the file is a hard bindingHard binding: A hash of the content's signed bytes stored in the label, so a change to those bytes makes the check fail.. If a site strips it, a hidden watermarkWatermark: A mark placed in the content itself, visible or hidden, so it can be found again after the file is copied. added at signing can still point back to the record. That second link is a soft bindingSoft binding: A watermark or fingerprint that can find a content label again after the file was copied or its metadata stripped..

For engineers
Show the technical detail
What the manifest records
- Signer
- The publisher's X.509 certificate chain.
- Hard binding
- A SHA-256 hash over the image bytes, excluding the manifest itself.
- Assertions
- Actions (created, edited, published), digital source type, rights terms, optional location.
- Ingredients
- References to signed source images used to make this one.
- Signature
- COSE over the claim, with an RFC 3161 timestamp.
Embedding per format
| Format | MIME type | Embedding |
|---|---|---|
| JPEG | image/jpeg | JUMBF manifest store in APP11 marker segments |
| PNG | image/png | JUMBF manifest store in a caBX chunk |
| WebP | image/webp | JUMBF manifest store in a C2PA chunk of the RIFF container |
| TIFF | image/tiff | JUMBF manifest store in a dedicated tag of the TIFF image file directory (IFD) |
| AVIF | image/avif | JUMBF manifest store in a C2PA uuid box in the ISO BMFF structure |
| HEIC | image/heic | JUMBF manifest store in a C2PA uuid box in the ISO BMFF structure |
| HEIC Sequence | image/heic-sequence | JUMBF manifest store in a C2PA uuid box in the ISO BMFF structure |
| HEIF | image/heif | JUMBF manifest store in a C2PA uuid box in the ISO BMFF structure |
| HEIF Sequence | image/heif-sequence | JUMBF manifest store in a C2PA uuid box in the ISO BMFF structure |
| SVG | image/svg+xml | Base64-encoded JUMBF manifest store in the SVG metadata element |
| DNG | image/x-adobe-dng | JUMBF manifest store in a dedicated tag of the TIFF/EP image file directory (DNG is TIFF-based) |
| GIF | image/gif | JUMBF manifest store in a GIF application extension block |
| JPEG XL | image/jxl | JUMBF superbox (jumb) at the top level of the JPEG XL box structure |
For images registered in the Encypher CDN provenance store (Enterprise), a lookup by perceptual hash (pHash) matches resized or recompressed copies by Hamming distance and returns the original record as a verified derivative. Manifests can also be read with the open-source c2pa-rs, c2pa-python and c2pa-js libraries.
Create. Mark. Endure.
Sign your first image free. Checking stays free for everyone.