# Content Authenticity Initiative

Die Content Authenticity Initiative (CAI) ist eine im November 2019 von Adobe, der New York Times und Twitter gegründete Vereinigung. Ziel der CAI ist die Förderung eines Industriestandards, der sichere Aussagen über die Herkunft digitaler Inhalte erlauben soll. Teil solcher Aussagen können die Umstände der erstmaligen Speicherung, der Bearbeitungsverlauf und die Identität der Herausgeber sein. Als eine Motivation ihrer Tätigkeit benennt die CAI das Eindämmen von Desinformation.

## Zusammenarbeit mit der C2PA

Zuständig für die genaue Formulierung des zu den Vorschlägen der CAI passenden, technischen Standards ist die im Februar 2021 gegründete Coalition for Content Provenance and Authenticity (C2PA). Die von der C2PA veröffentlichten Standardspezifikationen stehen unter der Creative Commons Lizenz CC BY 4.0. Sie können ohne Lizenzzahlungen verwendet werden.
Während die Arbeit der C2PA den zur Gestaltung und Nutzung des Standards notwendigen technischen Voraussetzungen gilt, sieht die CAI ihre Aufgabe in der Verbreitung und Förderung des Standards.
Mit Blick auf die Rolle der CAI als öffentlicher Repräsentant des Standards kommen im folgenden Text überall dort, wo es um die Benennung allgemeiner Aspekte des Standards geht, Begriffe wie „CAI-Standard“ oder „CAI-konform“ zum Einsatz. Ebenso steht der Begriff „CAI“ im Folgenden überall dort stellvertretend für beide Organisationen, wo deren gemeinsame Bemühungen angesprochen sind. Der Begriff „C2PA-Metadaten“ wiederum bezieht sich auf jene Daten und Datenstrukturen, die von CAI-konformen Systemen verarbeitet, gespeichert oder dargestellt werden.

## Metadaten zur Dateiherkunft

Mittelpunkt der von der CAI vorgeschlagenen Verfahren ist Bereitstellung von Angaben zur Herkunft digitaler Inhalte. Diese Angaben ergänzen bereits vorhandene Dateiinhalte um zusätzliche Metadaten. Anders als bei bekannten Standards für Metadaten wie Exif oder IPTC sind diese Daten gegen Fälschungen gesichert. Manipulationen an den Metadaten und am eigentlichen Inhalt einer Datei sind zwar weiterhin möglich, können aufgrund der Anwendung kryptographischer Methoden jedoch mit großer Wahrscheinlichkeit erkannt werden. Inhalt und Struktur der Metadaten sind in den C2PA-Standardspezifikationen definiert. Die Speicherung von C2PA-Metadaten erfolgt ausschließlich optional.
Teil der gespeicherten Metadaten können zum Beispiel Ort und Zeitpunkt einer Aufnahme, eine Liste durchgeführter Bearbeitungsschritte sowie Angaben zu Urhebern und Herausgebern einer Datei sein. Dazu ist unter anderem auch die Einbindung von Datenblöcken etablierter Formate wie Exif und IPTC vorgesehen. Darüber hinaus wird ein digitaler Fingerabdruck (Hashwert) des eigentlichen Inhalts der Datei (Foto, Text...) gespeichert. Für visuelle Inhalte gibt es die Möglichkeit, eine verkleinerte Darstellung des Inhalts (Vorschaubild, „Thumbnail“) zu speichern.

## Darstellung CAI-konformer Dateien

CAI-konforme Webseiten oder andere Systeme, die Inhalte mit C2PA-Metadaten darstellen, sollen dies anhand eines grafischen Symbols mit dem Kleinbuchstaben „i“ verdeutlichen. Die C2PA-Spezifikationen verwenden hierfür den Begriff „L1 Indikator“. Das Symbol soll entweder auf dem betreffenden Element oder in dessen unmittelbarer Umgebung zu sehen sein.
Auf eine Interaktion (z. B. Mausklick, Berührung) mit diesem Symbol hin sollen standardkonforme Anwendungen bzw. Internetseiten einige elementare Informationen anzeigen, etwa zum Herausgeber der Datei. Der C2PA-Begriff für visuelle Elemente mit diesen Angaben lautet „L2 Herkunftsübersicht“. Die L2-Übersicht kann bei ihrer erstmaligen Darstellung auf eine minimale Datendarstellung beschränkt sein, etwa auf den Namen der für die letzte Speicherung der Datei verantwortlichen Entität (Person, Firma, System...) und das Datum der entsprechenden Signatur. L2-Übersichten mit umfangreicheren Informationen, etwa Ortsangaben oder durchgeführten Bearbeitungsschritten, sind ebenfalls möglich.
Über die Herkunftsangaben hinaus können L2-Übersichten einen Link zu einem umfassenderen, „L3“ genannten Informationsangebot bereithalten. Dieser Link kann zum Beispiel mit einer externen Website verknüpft sein, die auf die ausführliche Anzeige von C2PA-Daten spezialisiert ist. Ein Beispiel für eine L3-Anzeige findet sich auf der CAI-Webseite „Verify“. In einer L3-Anzeige können die Betrachter dann beispielsweise im Detail sehen, welche Änderungen an einem Foto nach seiner Aufnahme vorgenommen wurden, falls diese Informationen verfügbar sind. Je nach der Menge der vorhandenen C2PA-Metadaten zeigt die Seite nicht nur die jüngste Iteration der verfügbaren Daten an, sondern ermöglicht auch das Untersuchen früherer Versionen. In diesem Fall kann auch ein Vergleich zwischen verschiedenen Versionen des visuellen Inhalts innerhalb einer Mediendatei möglich sein.
„Verify“ bietet auch eine interaktive Upload-Funktion für JPEG- und PNG-Bilddateien. Auf diese Weise können Anwender auch solche Inhalte, die nicht im Kontext einer CAI-konformen Webseite oder Software angezeigt werden, auf das Vorhandensein von CAI-Herkunftsdaten überprüfen.

## Kryptographische Absicherung

Eine zentrale Aufgabenstellung CAI-konformer Systeme ist die Absicherung von Inhalten und Metadaten gegen unbemerkte Manipulationen. Zu diesem Zweck definiert die C2PA-Spezifikation verschiedene miteinander verbundene, teilweise mit Hashes und digitalen Signaturen versehene Datenstrukturen. Es dürfen ausschließlich zertifizierte Signaturen zur Verwendung kommen. Das einer Signatur zugeordnete Zertifikat muss dem in X.509 definierten Standard entsprechen. Für das Errechnen von Hashwerten empfiehlt die C2PA das Verfahren SHA2-256.
Grundlegendes Element der C2PA-Datenstrukturen sind sogenannte „Assertions“ („Behauptungen“). Assertions enthalten Aussagen zum eigentlichen Dateiinhalt, beispielsweise zu durchgeführten Bearbeitungsschritten. Der für spätere Prüfungen besonders wichtige Hashwert des eigentlichen Dateiinhalts wird ebenfalls in einer Assertion abgelegt. Assertions können auch größere Datenstrukturen enthalten, beispielsweise ein Vorschaubild des Inhalts oder komplette Exif- und IPTC-Blöcke.
Eine Liste mit Verknüpfungen zu allen Assertions fließt schließlich in eine „Claim“ („Anspruch“) genannte Datenstruktur ein. Hier speichert die jeweilige Software darüber hinaus die für alle Assertions errechneten Hashwerte. Um den Claim und insbesondere die dort gespeicherten Hashes vor Manipulationen zu schützen, erzeugt das speichernde System eine digitale Signatur des Claims. Darin ist ein Hashwert enthalten, den das System für den Inhalt des Claims errechnet und dann verschlüsselt hat. Für diese Verschlüsselung kommt der private, geheime Schlüssel des für das speichernde System verantwortlichen Akteurs zum Einsatz, zum Beispiel dem Hersteller einer Kamera-App oder eines Bildbearbeitungsprogramms.
Die Signatur des Claims, der Claim selbst sowie der gesamte Assertion Store sind Teil einer übergeordneten Struktur namens „Manifest“. Da das Manifest nur als Rahmen bereits kryptographisch geschützter Datenstrukturen dient, wird es keiner eigenen kryptographischen Behandlung unterzogen.
Sofern es das jeweilige Dateiformat erlaubt, erfolgt die Speicherung des Manifests direkt in der betreffenden Datei. Ist dies zum Beispiel wegen Beschränkungen des jeweiligen Dateiformats nicht möglich, werden die Daten in einem Sidecar abgelegt. Die für eine Datei gespeicherten Metadaten können, zum Beispiel im Rahmen einer späteren Bearbeitung, ergänzt werden. Auch das Entfernen von Informationen, etwa zum Schutz abgebildeter Personen, ist vorgesehen. Die kryptographische Integrität bleibt dabei gewahrt, da jeweils neue, zu den Änderungen passende Metadaten, Hashwerte und Signaturen erzeugt werden.

## Kryptographische Überprüfung

Die einem Claim zugeordnete Signatur enthält dessen verschlüsselten Hashwert. Um den Inhalt des Claims auf mögliche Manipulationen zu prüfen, wird genau dieser Hashwert benötigt. Für dessen Entschlüsselung benötigt das prüfende System den öffentlichen Schlüssel des für die Dateispeicherung verantwortlichen Akteurs. Dieser öffentliche Schlüssel ist über das mit der Signatur des Claims verknüpfte, ebenfalls kryptographisch geschützte Zertifikat erreichbar. Zugleich dient dieses Zertifikat als Beleg der Identität des für die Dateispeicherung verantwortlichen Akteurs, da die Ausstellerin des Zertifikats die Identität des Akteurs geprüft und sie im Zertifikat gespeichert hat.
Nach der Entschlüsselung des in der Claim-Signatur enthaltenen Hashwertes kann der Claim der gerade untersuchten Datei auf Unversehrtheit überprüft werden. Dazu errechnet das prüfende System den Hashwert des untersuchten Claims und vergleicht ihn mit dem zuvor aus der Signatur extrahierten und entschlüsselten Hashwert. Stimmen beide Hashes überein, ist dies ein sehr sicheres Zeichen, dass der Claim nicht manipuliert wurde. Auf dieser Basis kann das prüfende System auch den im Claim gespeicherten Hashes der Assertions trauen. Im nächsten Schritt der Untersuchung werden daher die Hashes der zu prüfenden Assertions neu errechnet und mit den Hashes im Claim verglichen. Bei einer Übereinstimmung dürfen die in den Assertions gespeicherten Daten als unverändert gelten.
Eine weitere Prüfung gilt schließlich dem in einer eigenen Assertion gespeicherten Hashwert des eigentlichen Dateiinhalts. Hierfür errechnet das Prüfsystem den entsprechenden Hashwert der gerade untersuchten Datei. Ist dieser neue Hashwert mit dem in der Assertion gespeicherten Hash identisch, ist dies ein sehr starker Beleg, dass auch der Dateiinhalt unverändert geblieben ist.

## Beweiskraft kryptographischer Integrität

Die kryptographische Integrität einer CAI-konform gespeicherten Datei liefert keinen Beweis, dass sie eine authentische Abbildung der Wirklichkeit enthält. Eine nach den Vorgaben der CAI und C2PA konstruierte Kamera oder Kamera-App kann statt der durch die Linse erfassten Szene auch ein frei erfundenes, z. B. KI-generiertes Bild speichern und signieren. Ebenso kann jedes CAI-konforme System die zu speichernden Metadaten frei erfinden oder beliebig verfälschen und diese Daten dann ordnungsgemäß signieren. Im Ergebnis kann eine Datei entstehen, die den technischen Vorgaben des Standards vollständig entspricht. Eine CAI-konforme Prüfung würde ergeben, dass die kryptographischen Prüfmerkmale zu den Inhalten der Datei passen.
Aussagen zum Wirklichkeitsbezug der Daten sind im Rahmen der CAI-Verfahren nicht möglich. Dies gilt auch bei Systemen, die Bilddaten mittels speziell gesicherter Hardware auslesen und signieren. Trotz der damit verbundenen, weitaus größeren Gewissheit wirklichkeitsgetreuer Abbildungen können Manipulationen auch hier nicht vollständig ausgeschlossen werden.
Das von der CAI vorgeschlagene System erlaubt für Dateien mit kryptographisch intakten Metadaten lediglich zwei vertrauenswürdige Aussagen:
* Die mit der betreffenden Datei verknüpften C2PA-Metadaten sowie der eigentliche Dateiinhalt wurden tatsächlich von dem im Zertifikat genannten Akteur bzw. einem von ihm autorisierten System erzeugt und signiert.
* Der signierte Dateiinhalt (zum Beispiel die Pixel eines Fotos) und die signierten Metadaten wurden seit dem Signieren nicht verändert.
Auf dieser Basis können Betrachter bzw. Nutzer einer Datei eine informierte, belastbare Entscheidung treffen, ob sie dem vom Zertifikatsinhaber signierten Inhalt trauen wollen.
* Wer dem Zertifikatsinhaber eine sachgerechte, sorgfältige Geheimhaltung des privaten Schlüssels zutraut, kann auch dessen Signatur vertrauen und davon ausgehen, dass die signierten Dateiinhalte und Metadaten tatsächlich vom Zertifikatsinhaber oder einem von Zertifikatsinhaber autorisierten System erzeugt wurden.
* Wer dem Zertifikatsinhaber darüber hinaus darin vertraut, Informationen nach bestem Wissen korrekt und unverfälscht zu verarbeiten bzw. zu veröffentlichen, kann dieses Vertrauen auf die Richtigkeit der in der Datei enthaltenen Informationen übertragen.
Vereinfacht ausgedrückt, erlaubt der CAI-Standard einer Person belastbare Entscheidungen, welchen Inhalten sie trauen möchte. Ohne abgesicherte Aussagen zur Herkunft einer Datei sind solche Entscheidungen zwar ebenfalls möglich und auch alltäglich, sie werden jedoch häufig ohne eine solide Grundlage gefällt.

## Entwicklungswerkzeuge

Im Juni 2022 veröffentlichte die CAI zwei Software Development Kits (SDK) und ein Kommandozeilentool, um die Entwicklung von CAI-konformen Anwendungen zu erleichtern. Ein JavaScript-SDK bietet Funktionen zur Anzeige und Überprüfung von C2PA-Metadaten. Ein Rust-SDK befasst sich mit der Programmierung allgemeiner CAI-kompatibler Anwendungen und stellt Entwicklern Funktionen zum Lesen, Anzeigen, Überprüfen und Schreiben von C2PA-Metadaten zur Verfügung. Das Kommandozeilentool erlaubt es, C2PA-Metadaten aus Dateien zu lesen, zu verifizieren und zu schreiben. Die SDKs und das Kommandozeilen-Tool sind auf GitHub unter der MIT-Lizenz und Apache-Lizenz verfügbar.

## CAI-konforme Systeme in der Praxis

Die von der C2PA verfasste Standarddokumentation wurde im Januar 2022 in Version 1.0 veröffentlicht. Produkte, die diesen Standard unterstützen, gibt es, Stand Juni 2022, nur in sehr geringer Zahl. Adobe Photoshop unterstützt die CAI-konforme Speicherung von Bearbeitungsschritten sowie weiterer Angaben im Rahmen einer experimentellen Implementierung. Adobe Stock, eine kommerzielle Plattform für Fotos, Grafiken und Videos stattet dort angebotene Dateien mit einigen CAI-konformen Angaben aus. Kameras oder Kamera-Apps, die Metadaten CAI-konform speichern können, sind bislang nicht verfügbar. Internetseiten, die Inhalte mit CAI-Metadaten anbieten, gibt es derzeit ausschließlich im Rahmen experimenteller Testprojekte.

## Mitglieder der CAI

Die Liste der Mitglieder der CAI umfasst mit Stand Juni 2022 mehr als 200 Einträge. Neben den drei Gründungsmitgliedern zählen dazu unter anderem arm, BBC, dpa, Microsoft, Nikon, Qualcomm, das Magazin Stern und die Washington Post.