Sprawdzanie C2PA / Content Credentials
Prześlij obraz lub wideo — pokażemy manifest C2PA, jeśli istnieje: jaka aplikacja go zapisała, czyj certyfikat podpisał plik, jakie akcje zadeklarowano (utworzone przez AI, edytowane), a także XMP DigitalSourceType i EXIF Software.
Zobacz także
Podgląd C2PA metadata i Content Credentials online
C2PA (Content Credentials) to otwarty standard, dzięki któremu aparaty, edytory i generatory AI zapisują w pliku podpisany manifest: czym utworzono plik i co z nim robiono. Narzędzie znajduje manifest w JPEG, PNG, WebP, AVIF/HEIC i MP4/MOV, analizuje go i pokazuje podpisującego z certyfikatu, aplikację, akcje i typ źródła (np. trainedAlgorithmicMedia — utworzone przez generatywną AI), a także XMP i EXIF. Podpis nie jest weryfikowany kryptograficznie — do tego służy link do oficjalnego serwisu.
Jak korzystać
- Prześlij oryginalny obraz lub wideo — kliknij pole albo przeciągnij plik
- Kliknij „Sprawdź C2PA” i poczekaj na raport
- Sprawdź podpisującego, akcje i typ źródła; podpis zweryfikuj na contentcredentials.org/verify
FAQ
Jak sprawdzić C2PA metadata online i odczytać raport
Aby sprawdzić C2PA, prześlij oryginalny plik — ten z generatora, aparatu lub edytora, a nie kopię przesłaną przez komunikator. Narzędzie szuka magazynu manifestów JUMBF w typowych miejscach kontenera i go analizuje. Raport zaczyna się od czterech kart:
- C2PA / Content Credentials — czy znaleziono manifest, ile ich jest w łańcuchu i gdzie leży (np. „JPEG APP11” lub „PNG caBX”). Status „Są ślady, nie przetworzono” oznacza, że plik zawiera znaczniki C2PA, ale magazyn jest obcięty lub uszkodzony — zdarza się to po niestarannym ponownym zapisie.
- Zadeklarowano AI — czy akcje manifestu lub XMP zawierają kod źródła oznaczający generatywną AI.
- Podpisał — organizacja z certyfikatu, którym podpisano aktywny manifest, oraz aplikacja, która go zapisała.
- Weryfikacja kryptograficzna — zawsze „nie wykonano”: pokazujemy to, co zadeklarowano, a nie to, co zweryfikowano.
Claim generator a podpisujący
Claim generator to program, który złożył manifest (np. „ChatGPT” lub „Adobe Photoshop”). Podpisujący to właściciel certyfikatu X.509 użytego do podpisu. Zwykle to ta sama firma, ale nie zawsze: usługa może podpisywać certyfikatem wydanym dla niej przez partnera. Jeśli pole podpisującego jest puste, a manifest został przetworzony, certyfikatu nie znaleziono w podpisie albo zapisano go niestandardowo — to dobry powód, by sprawdzić plik oficjalnym walidatorem.
Aktywny manifest i historia
Za każdym razem, gdy plik przechodzi przez zgodną aplikację, do magazynu dopisywany jest nowy manifest, a poprzedni staje się składnikiem (ingredient). Aktywny jest ostatni — opisuje bieżącą wersję pliku. Starsze manifesty pokazujemy w zwiniętym bloku „Historia”: widać w nich np., że obraz wygenerowano w jednej usłudze, a potem przycięto w innej.
Składniki, zgody na trening AI i znacznik czasu
Składniki to pliki, z których złożono wynik: źródło do edycji, wstawiony fragment, tło. Każdy może mieć tytuł, format i typ relacji: parentOf — plik otwarty i zmieniony, componentOf — wstawiona część, inputTo — materiał podany na wejście generatora. Wiersz „Zgody na trening AI” pokazuje asercję c2pa.training-mining lub cawg.training-mining: autor zaznacza, czy pozwala używać pliku do trenowania modeli (allowed, notAllowed, constrained). To deklaracja, a nie zabezpieczenie techniczne. Znacznik czasu TSA to czas nadany przy podpisie przez zaufany serwer czasu; pokazujemy go tak, jak zapisano, bez weryfikacji. Bez takiego znacznika data podpisu niczym nie jest potwierdzona.
Typowe wyniki
| Co widać w raporcie | Co to zwykle oznacza |
|---|---|
Jeden manifest, c2pa.created + trainedAlgorithmicMedia, podpisany przez usługę AI | Plik pobrano z generatora i od tego czasu go nie przebudowywano |
Kilka manifestów, ostatnie akcje to opened, edited w edytorze | Wygenerowany obraz był dalej obrabiany; początek łańcucha jest w „Historii” |
| Tylko XMP DigitalSourceType, bez C2PA | Generator lub edytor oznaczył plik, ale go nie podpisał |
| Nic | Metadane usunięto albo nigdy ich nie było |
Kody digitalSourceType — co oznaczają
Pole digitalSourceType w akcji c2pa.created lub c2pa.edited przyjmuje wartości ze słownika IPTC. Najczęstsze:
| Kod | Znaczenie | Jak interpretować |
|---|---|---|
trainedAlgorithmicMedia | Utworzone przez wytrenowany model | W całości wygenerowane przez AI (tekst na obraz, wideo z promptu) |
compositeWithTrainedAlgorithmicMedia | Kompozycja z elementami AI | Zdjęcie z generatywnym wypełnieniem lub podmienionym tłem |
algorithmicMedia | Algorytmiczne, bez trenowania | Grafika proceduralna, fraktale |
digitalCapture | Zarejestrowane aparatem | Oryginał z aparatu lub telefonu |
computationalCapture | Fotografia obliczeniowa | Zdjęcie z telefonu z HDR, trybem nocnym itp. |
digitalArt | Grafika cyfrowa człowieka | Ilustracja narysowana w edytorze |
screenCapture | Zrzut ekranu | Screenshot |
Ten sam kod może występować także poza C2PA — w polu XMP Iptc4xmpExt:DigitalSourceType. Zapisują go generatory, które nie podpisują plików, oraz edytory przy eksporcie. Taki wpis nie jest podpisany i można go zmienić dowolnym edytorem metadanych, więc waży mniej niż akcja w podpisanym manifeście.
Jak sprawdzić, czy obraz ma C2PA: gdzie jest zapisany manifest
Manifest jest przechowywany wewnątrz pliku, a każdy format ma na niego swoje miejsce. Dlatego ten sam obraz „traci” Content Credentials po konwersji: nowy plik powstaje bez tego bloku.
| Format | Gdzie jest C2PA |
|---|---|
| JPEG | Segmenty APP11 (JUMBF); duży manifest jest dzielony na kilka segmentów |
| PNG | Fragment caBX |
| WebP | Fragment RIFF C2PA |
| MP4, MOV, AVIF, HEIC | Box uuid najwyższego poziomu z identyfikatorem C2PA |
Manifest może być też przechowywany zdalnie, w chmurze usługi, a w pliku zostaje tylko odnośnik lub niewidoczny znak wodny, dzięki któremu manifest się odzyskuje. Nasze narzędzie nie pobiera zdalnych manifestów — pokaże je oficjalny serwis weryfikacji.
Dlaczego C2PA znika
- Zrzut ekranu tworzy nowy plik bez metadanych.
- Większość komunikatorów i wiele serwisów społecznościowych ponownie kompresuje obrazy i usuwa bloki pomocnicze.
- Optymalizatory obrazów na stronach często usuwają wszystko poza pikselami, żeby zmniejszyć rozmiar.
- Konwersja formatu (PNG → JPEG, MOV → MP4) przebudowuje kontener.
Dlatego „nie znaleziono manifestu” to wynik neutralny. Aby sprawdzić, czy obraz stworzyła AI, gdy metadanych już nie ma, szukaj niewidocznych znaków wodnych samych generatorów: dla Google to SynthID, dla pozostałych — narzędzia ich twórców.
Content Credentials verify: pełna weryfikacja podpisu
Nasz raport odpowiada na pytanie „co zadeklarowano”. Czy można temu ufać, rozstrzyga walidator, który sprawdza trzy rzeczy: podpis kryptograficzny manifestu, zgodność skrótu z zawartością pliku (czy po podpisaniu nie zmieniano pikseli) i to, czy certyfikat podpisującego jest na liście zaufanych. W tym celu:
- Otwórz contentcredentials.org/verify i przeciągnij plik. Serwis pokaże łańcuch edycji, podpisującego i ostrzeżenia, jeśli podpis lub skrót się nie zgadzają.
- Do sprawdzania wielu plików zainstaluj otwartoźródłowe narzędzie wiersza poleceń
c2patoolz projektu Content Authenticity Initiative i uruchomc2patool image.jpg— wypisze magazyn manifestów w JSON razem ze statusami weryfikacji. - Jeśli walidator zgłasza niezgodność skrótu, plik zmieniono po podpisaniu. Sam manifest może przy tym wyglądać wiarygodnie — dlatego nie nazywamy naszej analizy sprawdzeniem autentyczności.
C2PA na własnej stronie
Jeśli publikujesz obrazy wygenerowane przez AI i chcesz, by oznaczenie pochodzenia przetrwało, sprawdź całą drogę pliku na stronę: eksport z generatora, obróbkę w CMS, konwersję do WebP lub AVIF, CDN. Po każdym kroku prześlij wynikowy plik do sprawdzenia — szybko zobaczysz, na którym etapie znika manifest. Jeśli zadanie jest odwrotne i chcesz usunąć ze zdjęć dane pomocnicze, np. lokalizację GPS, użyj usuwania EXIF i metadanych: kasuje ono także C2PA, ale nie usuwa znaków wodnych osadzonych w pikselach. O innych śladach, które generatory zostawiają w plikach, przeczytasz w artykule o ukrytych znakach wodnych oraz w detektorze znaków wodnych na obrazach.
RankBotAI — optymalizacja SEO z AI dla WordPress
Wtyczka AI RankBotAI automatycznie znajduje i naprawia problemy SEO w produktach i wpisach WordPress — bez ręcznej edycji.