La plupart des outils C2PA sont desktop-only et passent par Adobe Bridge, le CLI c2patool ou des pipelines commerciaux qui ré-uploadent votre fichier. GhostMeta est l’alternative simple : un remover C2PA pure-navigateur qui détecte la box JUMBF, identifie le claim_generator (Sora, Midjourney, Adobe, OpenAI, Google) et retire le manifest via re-encodage canvas en millisecondes. Pas de compte, pas d’upload, pas d’install. Ouvrez la page, déposez votre image, téléchargez une copie propre. Comme tout s’exécute côté client, l’outil fonctionne entièrement hors ligne — chargez la page une fois, passez en mode avion, et vous pouvez toujours traiter vos fichiers : c’est la preuve la plus directe qu’aucun upload n’a lieu. Pratique pour nettoyer une capture d’écran ou une photo de listing depuis un poste de travail où une installation logicielle ou un envoi sortant est bloqué par la DSI. Après le strip, vérifiez le résultat en rouvrant le fichier propre dans n’importe quel viewer Content Credentials public (contentcredentials.org/verify) : une image nettoyée renvoie « aucun Content Credentials trouvé » au lieu du manifest d’origine.
Le C2PA insère dans le fichier un bloc JUMBF signé qui déclare l’outil de création et la chaîne des modifications. C’est une métadonnée : GhostMeta la retire des JPEG et des PNG par réencodage, dans le navigateur. En revanche l’empreinte conservée côté serveur par l’émetteur et les filigranes au niveau pixel restent hors de portée.
Le C2PA est une norme de provenance portée par Adobe, Microsoft, OpenAI et d’autres. Concrètement, un bloc JUMBF est inséré dans le fichier : il contient des assertions signées (outil de création, date, éventuelles modifications successives) et une signature cryptographique qui les authentifie.
Ce bloc est une métadonnée, pas une marque dans l’image. Il se retire donc comme une métadonnée. C’est ce que fait GhostMeta sur les JPEG et les PNG : le réencodage ne réécrit pas le conteneur JUMBF, et l’image sortante ne présente plus de Content Credentials à un vérificateur.
Le C2PA prévoit un mécanisme de soft binding : une empreinte de l’image est enregistrée côté serveur, chez l’émetteur. Retirer le manifeste local n’efface pas cette empreinte. Une recherche par similarité peut donc encore rattacher l’image à son origine, et aucun traitement effectué dans votre navigateur n’y changera quoi que ce soit.
S’ajoutent les filigranes au niveau pixel, invisibles et résistants à la recompression, hors de portée d’un réencodage. Un outil qui promet l’anonymat complet d’une image générée par IA promet ce qu’il ne peut pas tenir.
Le manifeste C2PA n’est pas visible à l’œil : rien ne distingue une image qui en porte un d’une image qui n’en porte pas. La seule façon de constater le résultat est de relire le fichier.
Déposez la copie nettoyée dans le lecteur de métadonnées et comparez avec la lecture faite avant. Les champs disparus s’y voient directement, et vous n’avez pas à nous croire sur parole.
| Composant | Où il vit | Retiré ici |
|---|---|---|
| Manifeste C2PA (JUMBF) | Dans le fichier | Oui, sur JPEG et PNG |
| Chunks texte PNG | Dans le fichier | Oui |
| EXIF, IPTC, XMP | Dans le fichier | Oui |
| Soft binding | Sur le serveur de l’émetteur | Non, hors de portée |
| Filigrane pixel type SynthID | Dans les pixels | Non |
| Filigrane visible | Dans les pixels | Non |
c2patool est un binaire CLI qui tourne localement mais nécessite installation et toolchain Rust. GhostMeta tourne dans tout navigateur moderne sans install. Pour le batch c2patool est plus rapide ; pour un nettoyage ponctuel GhostMeta est sans friction.
Seulement si l’outil de sauvegarde le ré-ajoute (Photoshop avec Content Credentials activé, Adobe Bridge, etc.). Un Save As Windows/macOS standard garde le fichier propre.
JPEG (segment APP11) et PNG (chunk caBX) en v1. Support WebP et HEIC en cours.
Un manifest C2PA est stocké dans un conteneur JUMBF (JPEG Universal Metadata Box Format) regroupant un claim, un assertion store et une signature cryptographique. Le claim référence un hash content_binding des octets de l’image ; les assertions listent le générateur, les éditions et les horodatages ; la signature porte la chaîne de certificats du producteur. GhostMeta retire toute la structure JUMBF lors du re-encodage canvas plutôt que d’éditer les box une à une, donc aucun fragment de manifest partiel ne subsiste.
Vous pouvez ouvrir les outils développeur du navigateur, surveiller l’onglet Réseau pendant le traitement et confirmer qu’aucune requête sortante n’est émise. Avec un binaire desktop ou une API serveur, vous devez faire confiance à une politique de confidentialité au lieu d’observer le comportement. Le traitement passe par l’API Canvas sur la page déjà chargée : un panneau réseau qui reste vide est une preuve directe et reproductible.
Oui. Retirer le manifest C2PA supprime seulement la couche de métadonnées ; les pixels décodés sont ré-encodés en un JPEG ou PNG standard qui s’ouvre, s’affiche et s’uploade comme n’importe quelle image ordinaire. Les Content Credentials sont des données de provenance optionnelles, pas une exigence du format : un fichier propre n’est donc pas rejeté par les viewers ni les formulaires d’upload — un viewer C2PA indique simplement qu’aucun credential n’est présent au lieu de la signature d’origine.