Skip to content

Inspection et signature des œuvres

L'outil le plus largement disponible pour lire et écrire des manifestes C2PA est c2patool, maintenu dans le cadre de l'implémentation de référence. Il s'exécute en ligne de commande et fonctionne avec les principaux formats pris en charge.

Pour inspecter un fichier :

c2patool image.jpg

La sortie indique si un manifeste est présent et résume ses assertions. L'ajout de --output json produit des données structurées qui peuvent être analysées par d'autres programmes. Pour les vérifications en masse, une courte boucle shell ou un script Python appelant l'outil sur chaque fichier suffit.

L'écriture d'un manifeste nécessite une définition de manifeste et une clé de signature. Une définition minimale peut déclarer une action de création et quelques métadonnées de base. L'outil signe ensuite la définition par rapport au fichier et intègre le résultat.

c2patool input.jpg \
  --manifest manifest.json \
  --signer-file key.pem \
  --output output.jpg

La définition du manifeste elle-même est un document JSON. Elle peut contenir une assertion d'actions, une assertion de métadonnées, ou les deux. Le signataire contrôle le contenu de ces assertions.

Plusieurs limites pratiques apparaissent immédiatement. L'outil ne peut pas forcer un manifeste à survivre à chaque modification ultérieure. De nombreux éditeurs d'images courants et chemins d'exportation supprimeront ou invalideront les données C2PA. Les clés doivent être gérées par le signataire ; il n'y a pas de récupération intégrée si le matériel privé est perdu. Et les revendications à l'intérieur du manifeste restent des revendications. La vérification confirme la signature et l'intégrité des données signées, pas la vérité des déclarations sur l'origine artistique.

La signature en masse est simple à scripter une fois que la définition du manifeste est stable. La difficulté réside ailleurs : décider ce que la définition doit réellement dire lorsque l'objectif est de protéger le statut d'une œuvre particulière plutôt que de satisfaire un pipeline automatisé.

CC BY 4.0 — Translations and contributions for other languages are welcome.