Diese Studie umfasste keine menschlichen Teilnehmer, menschliche Proben, Tierproben oder klinische Proben. Daher waren keine institutionelle ethische Genehmigung und informierte Einwilligung erforderlich.
Materialien und Software
Die Umgebung, die zur Bereitstellung des Frameworks verwendet wurde, war Hyperledger Fabric Version 2.4.8, CouchDB, Docker Containers, Minifab-Deployment, FFmpeg-Multimedia-Verarbeitungsanwendungen und die Programmiersprache Go. Hyperledger Fabric bot Dienstleistungen für dezentrales Hauptbuchmanagement und Smart-Contract-Ausführung an, während CouchDB Urheberrechtsinformationen effizient über Off-Chain-Speicher speicherte und abrief. FFmpeg wurde zur Vorverarbeitung von Videos und zum Extrahieren von Videoframes verwendet, während Wahrnehmungs-Hashing-Algorithmen über Bild-Hashing-Bibliotheken in der Programmiersprache Go angewendet wurden. Eine Liste aller Werkzeuge und ihrer jeweiligen Beschreibungen ist in der Materialtabelle dargestellt.
Framework-Architektur
Das vorgeschlagene Framework verwendet Wahrnehmungs-Hashing-Algorithmen innerhalb der genehmigten Blockchain Hyperledger Fabric, um einen dezentralen Ansatz zum Schutz des Videourheberrechts und zur Validierung des Eigentums zu ermöglichen. Das Framework besteht aus fünf Hauptkomponenten: Video-Vorverarbeitung, Erstellung wahrnehmbarer Hashs, blockchain-basierte Urheberrechtsregistrierung und ähnlichkeitsbasierte Verifikation. In diesem Rahmen dient Hyperledger Fabric als Vertrauensschicht und stellt unveränderliche Eigentumsdatensätze bereit, während CouchDB Off-Chain-Speicher bereitstellt. Die Gesamtarchitektur des vorgeschlagenen Rahmens ist in Abbildung 1 dargestellt.
Modell des Systems zur Urheberrechtsprüfung
Ein detaillierter Arbeitsablauf des untersuchten Systems ist in Abbildung 2 dargestellt. Es beginnt mit der Videoaufnahme, gefolgt von Frame-Extraktion in regelmäßigen Abständen mit FFmpeg. Die extrahierten Frames werden innerhalb der Implementierungsumgebung Hyperledger Fabric verarbeitet, die Aktionen wie Eigentumsregistrierung, Zertifikatsverwaltung, Peer-Kommunikation und Transaktionsvalidierung umfasst. Auf die extrahierten Frames wird Wahrnehmungshashing angewendet, gefolgt von der Berechnung der Hamming-Distanz, um den Grad der Ähnlichkeit zu bewerten. Liegt die Hamming-Distanz unter dem Schwellenwert, gilt der Rahmen als authentisch und ähnelt dem registrierten Inhalt; ansonsten wird es als modifizierter Inhalt behandelt.
Videoaufnahme, Vorverarbeitung und Erstellung von Wahrnehmungshashing
Videoproben, die im Experiment verwendet wurden, waren MP4-Dateien mit 480p-Auflösung und durchschnittlich etwa 26 Sekunden lang. Der Bewertungsdatensatz enthielt 15 Videoproben, darunter ein Originalreferenzvideo und mehrere modifizierte Versionen. Diese Änderungen umfassten gängige Bearbeitungsaufgaben wie das Ändern der Bildraten, das Einfügen, Löschen oder Ersetzen von Frames sowie das Anwenden von Verzerrungen wie Beschneiden, Skalierung, Rotation und Overlay-Effekten. Der Datensatz enthielt außerdem Kompression, Rauschen, Text und Aufkleber, Glitch-Effekte und mehr. Alle Videos waren im MP4-Format in 480p-Auflösung und durchliefen die gleichen Vorverarbeitungs- und Fingerabdruckgenerierungsschritte. Dieser Datensatz wurde entwickelt, um die Widerstandsfähigkeit des Systems zu testen, und deckt eine breite Palette realer Szenarien ab, die Verletzungen und Manipulationen beinhalten. Bevor sie der Urheberrechtserkennung und Bestätigung unterzogen wurden, wurden Videodateien in FFmpeg vorbearbeitet. Bilder aus Videodateien wurden im Abstand von 1 Sekunde extrahiert, um komprimierte Inhaltszusammenfassungen in Form visueller Inhalte zu erhalten, die rechnerisch kostengünstig zu verarbeiten waren. Anschließend wurden diese Bilder in Graustufen umgewandelt und normalisiert, um Veränderungen der Pixelintensität durch Lichtverhältnisse, Kodierung und Kompressionsunterschiede zu minimieren.
Vier perzeptive Hashing-Funktionen wurden verwendet, um Videoinhalts-Fingerabdrücke in Form von Average Hashing (aHash), Difference Hashing (dHash), Perceptual Hashing (pHash) und Wavelet-Hashing (wHash) zu erzeugen.
Für die Hash-Generierung wurden die Frames zunächst in Graustufen umgewandelt und auf 8x8 Pixel verkleinert, um aHash und dHash zu berechnen. Mit aHash wurde ein 64-Bit-Fingerabdruck erzeugt, indem jeder Pixel mit dem durchschnittlichen Graustufenwert verglichen wurde. Der dHash-Algorithmus hat etwas Ähnliches gemacht, indem er ebenfalls einen 64-Bit-Fingerabdruck erzeugte, aber untersuchte, wie sich benachbarte horizontale Pixelintensitäten unterscheiden. Für pHash wurden die Bilder auf 32x32 Pixel verkleinert, dann wurde die diskrete Kosinustransformation berechnet. Um den 64-Bit-Wahrnehmungsfingerabdruck zu erzeugen, wurden nur die niederfrequenten 8x8-DCT-Koeffizienten verwendet. Was wHash betrifft, wurden die Bilder erneut auf 32x32 Pixel verkleinert, diesmal jedoch mit einer Haar-Wavelet-Transformation verarbeitet. Ein 64-Bit-Hash wurde aus den extrahierten Wavelet-Koeffizienten mit niedrigster Frequenz erzeugt. Alle diese Parametereinstellungen zielen auf ein gutes Gleichgewicht zwischen Recheneffizienz und Stärke ab, um typische Videoanpassungen zu bewältigen.
Um effiziente Hashfunktionsberechnungen durchzuführen, wurden diese Bilder normalisiert und verkleinert. Die durchschnittliche Hashing-Methode funktioniert, indem Pixelintensitäten mit denen des Mittelwerts des Bildes verglichen werden. Differenz-Hashing funktioniert ähnlich, konzentriert sich jedoch auf lokale Verläufe, indem Pixelintensitäten mit denen benachbarter Pixel verglichen werden. Perzeptuelle Hashing verwendet Fourier-Merkmale, die aus DCT resultieren, während Wavelet-Hashing auf Wavelet-Transform-Ergebnisse basiert, um Features zu extrahieren.
Blockchain-basierte Urheberrechtsregistrierung und -verifizierung
Die erhaltenen Wahrnehmungsfingerabdrücke, Eigentumsmetadaten, Zeitstempel und Transaktionsdetails werden über den Smart Contract vitChain in die Hyperledger-Fabric-Blockchain eingespeist. Die Implementierung der Blockchain umfasst zwei Organisationen, zwei Peers, zwei geordnete Knoten, zwei Zertifikatsautoritäts- (CA)-Knoten und CouchDB-Zustandsdatenbanken, die alle über einen automatischen Kanal verknüpft sind. Das permissioned Blockchain-Framework ermöglicht eine sichere Verarbeitung, eingeschränkten Zugriff und manipulationssichere Speicherung von Urheberrechtsdaten.
Das Urheberrechtsregistrierungsverfahren beginnt, sobald der Inhaltsinhaber das Video über die Benutzeroberfläche hochlädt. Wenn ein Nutzer ein Video zur Urheberrechtsregistrierung einreicht, ruft die Anwendungsebene den vitChain-Smart-Contract über das Hyperledger Fabric SDK auf. Diese Registrierung umfasst eine eindeutige Transaktions-ID, Besitzerinformationen, Video-ID, Zeitstempel und vier Arten von Wahrnehmungs-Hashwerten: aHash, dHash, pHash und wHash. Außerdem gibt es Metadaten zum Inhalt. Die App sendet den Transaktionsvorschlag an die unterstützenden Peers. Diese Peers führen dann die Smart-Contract-Logik aus und stellen sicher, dass die Transaktion mit der Empfehlungsrichtlinie übereinstimmt. Nach erfolgreicher Validierung wird die Transaktion zum Bestelldienst weitergeleitet. Hier werden verifizierte Transaktionen in Blöcke gruppiert und an Peer-Knoten zur Aufnahme in das Hauptbuch gesendet. In der Zwischenzeit werden die zugehörigen Metadaten in CouchDB eingetragen. Sie verbinden sich über die Transaktions-ID mit den Datensätzen der Blockchain, was einfache Abfragen ermöglicht und sowohl On-Chain- als auch Off-Chain-Daten konsistent bleibt.
Nach der Vorverarbeitung und den Hash-Berechnungen werden die Fingerabdrücke zusammen mit den zugehörigen Metadaten zu einer Transaktion zusammengefasst, die vom Smart Contract ausgeführt wird. Die Transaktionsvalidierung erfolgt von teilnehmenden Peers gemäß der festgelegten Empfehlungsrichtlinie. Nach der Zustimmung wird die Transaktion an den Bestelldienst weitergegeben, um sie in einen Block im verteilten Hauptbuch aufzunehmen. Für einen zuverlässigen Betrieb haben wir grundlegende Fehlerbehandlungen in die Registrierungs- und Verifizierungsprozesse integriert. Vor einer Transaktion überprüft die App die erforderlichen Metadaten, Eigentumsinformationen und Wahrnehmungs-Hashes, um Probleme zu vermeiden. Wenn Transaktionen die Empfehlungsregeln nicht erfüllen oder ungültige Parameter haben, lehnen Peer-Nodes sie sofort ab. Wenn es Probleme wie Kommunikationsfehler oder Verarbeitungsfehler gibt, protokolliert das System diese und sendet eine Admin-Benachrichtigung. Dies hilft, kleinere Verarbeitungsfehler zu verhindern, die sich im System ausbreiten. Während der Urheberrechtsprüfungen werden Videos mit ungültigen Metadaten oder beschädigten Hashwerten vom Verifizierungsprozess ausgeschlossen. Videos, bei denen die Fingerabdruckgenerierung fehlschlägt, sind ebenfalls vom Verifizierungsprozess ausgeschlossen. Insgesamt halten diese Schritte die Daten sauber und stärken die Zuverlässigkeit des Frameworks. Die Eigentumsinformationen für das urheberrechtlich geschützte Video werden unveränderlich und können später abgerufen werden.
Verifikation
Der Verifikationsprozess umfasst ähnliche Vorverarbeitungs- und Fingerabdruckberechnungsschritte, gefolgt von einem Fingerabdruckvergleich mit gespeicherten Fingerabdrücken in der Blockchain mittels einer Hamming-Distanz-basierten Ähnlichkeitsmessung. Basierend auf der Ähnlichkeitsmessung bestimmt der Smart Contract die Urheberrechtsinformationen des eingereichten Videos. Der Interaktionsworkflow ist in Abbildung 3 dargestellt.
Ähnlichkeitsbasierte Urheberrechtsüberprüfung
Der Urheberrechtsprüfprozess vergleicht Wahrnehmungsfingerabdrücke, die aus dem Abfragevideo gewonnen wurden, mit zuvor im Blockchain-System gespeicherten Fingerabdrücken. Der gleiche Vorverarbeitungs- und Hash-Wert-Generierungsprozess wie bei der Registrierung wird in der Verifikationsphase wiederholt, um Konsistenz zu gewährleisten. Die Ähnlichkeit wird anhand der Hamming-Distanz gemessen, die die Anzahl der Bitunterschiede zwischen zwei Hashwerten zählt. Kleinere Hamming-Distanzen zeigen eine größere Ähnlichkeit zwischen den beiden Videos, während höhere Hamming-Distanzen auf Inhaltsmanipulation hinweisen. Um zu sehen, ob das Abfragevideo mit dem registrierten Video übereinstimmt, haben wir die Hamming-Distanz zwischen ihren Wahrnehmungs-Hashwerten verwendet. Basierend auf vorläufigen Experimenten wurde eine Hamming-Distanz-Schwelle von 20 ausgewählt, um ein geeignetes Gleichgewicht zwischen Robustheit gegenüber gängigen Videoverarbeitungsoperationen und Empfindlichkeit gegenüber unautorisierten Änderungen zu gewährleisten. Videos mit einer Hamming-Distanz von 20 oder weniger galten als denselben urheberrechtlich geschützten Inhalt. Wenn es mehr wäre, würde es große Veränderungen zeigen. Diese 20 wurde ausgewählt, um gängige Videobearbeitungen wie Kompression, Filterung, Transkodierung und Änderungen der Bildrate zu übernehmen, erkennt aber weiterhin unautorisierte Änderungen. Messungen der Ähnlichkeit werden für alle gesammelten Frame-Fingerabdrücke durchgeführt und dann aggregiert, um eine urheberrechtliche Überprüfung zu erzielen. Videos, die von den registrierten Inhalten abweichen, werden für eine weitere Überprüfung markiert.
Einsatzumgebung
Die Testumgebung wurde mit Docker-Containern und dem Minifab-Orchestrierungstool erstellt. Ein Blockchain-Netzwerk basierend auf Hyperledger Fabric Version 2.4.8 wurde mit CouchDB als Zustandsdatenbank und Speicherschicht für Smart-Contract-Daten bereitgestellt. Der vitChain Smart Contract wurde in Go implementiert und mithilfe des Hyperledger Fabric Chaincode Lifecycle bereitgestellt. Die Einsatzparameter sind in Tabelle 2 zusammengefasst. Das Netzwerk bestand aus zwei teilnehmenden Organisationen, nämlich dem Content Creator und dem Videographen. Um die Integrität der Transaktionen zu gewährleisten und unbefugte Urheberrechtsregistrierung oder -änderungen zu verhindern, wurde eine Multi-Organisations-Endorsement-Richtlinie eingeführt, die die Zustimmung beider Organisationen erforderte, bevor eine Transaktion im Hauptbuch übertragen werden konnte. Konkret folgte die Empfehlungsrichtlinie einer UND-Regel, die als AND ('ContentCreatorMSP.peer', 'VideographerMSP.peer') ausgedrückt wurde.