Frage:
Ist es möglich, Informationen einzubetten, die für das bloße Auge nahezu unsichtbar und von einer externen Kamera dekodierbar sind?
Zac R.
2017-05-04 17:37:42 UTC
view on stackexchange narkive permalink

Ich bin daran interessiert, ein Video aus urheberrechtlichen Gründen mit einem Wasserzeichen zu versehen. Die Anforderungen lauten wie folgt:

  • Das Wasserzeichen muss mit bloßem Auge kaum wahrnehmbar sein.
  • Das Wasserzeichen muss von einem Gerät wie einer Smartphone-Kamera extrahiert werden können .

Das Einbetten einer geheimen Nachricht, in der die Rohdaten verfügbar sind, ist ziemlich einfach. Es scheint viel schwieriger zu sein, wenn die Daten aus einer externen Quelle extrahiert werden müssen, bei der die Details der Pixel leicht verloren gehen. Ist das eine hoffnungslose Anstrengung?

Vermutlich ist das Video komprimiert.Ist es erforderlich, dass die Wiedergabe mit einem Standard-Decoder / Anzeigeprogramm erfolgt, ohne das Wasserzeichen zu kennen?Die Dinge hängen von der Komprimierungsmethode ab und davon, ob das Wasserzeichen vor der Komprimierung durch einen Standardcodierer hinzugefügt werden soll.durch einen wasserzeichenbewussten Encoder;nach Komprimierung durch einen Standard-Encoder.Ist es eine Anforderung, dass Dekomprimierung / Rekomprimierung das Wasserzeichen behält?
Was bedeutet für Sie "kaum wahrnehmbar"?Und was ist der Unterschied zu herkömmlichen Wasserzeichen, die jedes Fernsehsender verwendet?
Meine erste Vermutung wäre so etwas wie eine periodisch schwankende Helligkeit mit unterschiedlichen Frequenzen, um unterschiedliche Wasserzeichen zu unterscheiden.Das Timing könnte extrahiert werden, selbst wenn es visuell nicht erkennbar ist, und es hat eine Chance, das Neucodieren, Ändern der Größe und sogar das Abdunkeln / Aufhellen / Verschieben des Farbtons zu überleben.Es würde jedoch einen absichtlichen Versuch, es zu entfernen, nicht überleben.
Hah, dies war eines der vorgeschlagenen Themen für eine Masterarbeit an meiner Universität.
Vielleicht so etwas wie die Art und Weise, wie Fotokopierer das Wort "VOID" sehen können, das auf Schecks gedruckt ist und für das bloße Auge unsichtbar ist.Aber solche Techniken würden die Komprimierung wahrscheinlich nicht überleben.Möglicherweise verwandt: Anti-Duplikations-Technologien, wie sie für Währungen verwendet werden - aber ich weiß nicht, wie Dinge wie Mikrodruck von Kameras erkannt werden können.
@kbelder Ich sollte denken, dass Sie auch Moiré zwischen der Bildwiederholfrequenz des Anzeigegeräts und der Videoaufnahme berücksichtigen müssen.
FYI @Zac R., siehe auch diesen Beitrag https://security.stackexchange.com/questions/2144/detecting-steganography-in-images
IIRC fast alles, was tatsächlich funktioniert, ist durch Patente von Digimarc geschützt.
Während dies auf einem Screenshot und nur ein Beispiel für die anderen Antworten ist, http://www.ownerscore.com/forums/world-of-warcraft/world-of-warcraft-general/375573-looking-inside-your-screenshots.html enthält einen Bericht darüber, wie Blizzard jedem Screenshot, den Sie aufnehmen, ein wirklich subtiles Wasserzeichen hinzufügt, um private Server usw. aufzuspüren.
Sie können leicht Variationen in Intensität oder Farbe einführen, die sich unscharf über mehrere Pixel erstrecken und ein Muster erzeugen, das mit niedriger Auflösung extrahiert werden kann.Variieren Sie dann das Muster mit einer Pseudozufallsmaske (dh einem Schlüssel), damit die gewünschten Daten eingebettet werden können.
Dies wurde zuvor mit dem Audiostream (z. B. [Cinavia] (https://en.wikipedia.org/wiki/Cinavia)) etwas erfolgreich durchgeführt.
Fünf antworten:
#1
+39
Dewi Morgan
2017-05-05 02:36:45 UTC
view on stackexchange narkive permalink

Bedenken Sie, dass Sie möglicherweise nicht möchten, wonach Sie fragen. Das heißt, wenn der Zweck des Wasserzeichens darin besteht, zu beweisen, dass Sie es verfasst haben, sind Ihre Clips und Outtakes im Schneidraum Beweis genug - Sie können sie bereitstellen, Ihre Verstöße können dies nicht.

Dies deutet auf einen möglichen Ansatz für den zweiten hin Verwendung von Wasserzeichen, um festzustellen, wer das Video durchgesickert ist.

Dieser Ansatz ist Frame-Entfernung . Wenn Sie hier und da eine Zehntelsekunde entfernen, wird dies normalerweise von Personen ohne Zugriff auf Ihr Originalmaterial nicht bemerkt. Aber es wird von einer Kamera aufgenommen.

Nehmen wir an, Sie entfernen in Szenen mit geringer Aktion einen Block jedes fünften Bildes für eine halbe Sekunde und nennen das eine "Eins". oder Sie entfernen sie nicht und nennen das eine Null. Ihr Lead-In besteht aus einer Folge von Einsen, dann einer Null und dann der ID von rechts nach links.

Angenommen, Sie lesen im aufgezeichneten Film 111010110000. ... dann ist der 1110 der Lead-In und die ID ist 00001101 oder 0x0D. Dies ist die 13. Kopie, die Sie ausgegeben haben.

Synchronisieren Sie das Audio, indem Sie es schneiden, beschleunigen usw., je nach Bedarf.

Je mehr Frames Sie entfernen, desto größer ist der Effekt. Anfänglich fällt dies nur bei einem Vergleich mit Ihrem Original auf.

Eine andere Möglichkeit, diese Art von Timing-Hack durchzuführen, besteht darin, N Frames vor / nach jedem Schnitt zu entfernen oder beim Überblenden sogar zusätzliche Darkness-Frames einzufügen -Schnitte. Damit können Sie jedoch nur wenige Frames pro Schnitt hinzufügen / entfernen, wodurch sich die Anzahl der Datenbits verringert, die Sie speichern können.

===

@Mindwin wies auf einen schwerwiegenden Fehler hin in dieser Idee.

Jedes eindeutige Wasserzeichensystem ist für den Vergleich zwischen zwei Kopien anfällig. In diesem Fall können Sie das Wasserzeichen erkennen .

Bei meinem obigen Vorschlag werden jedoch zwei angegeben Kopien, ein Angreifer, der das System kennt, kann es in eine dritte ID ändern, entweder durch Entfernen zusätzlicher Frames oder durch XORing oder Frame-Duplizieren, um Frames zu ersetzen! Nicht gut.

Ich dachte vielleicht, indem ich Frames hinzufüge und entferne, dass dies behoben werden könnte. Ich kann jedoch keine Lösung finden, die gegen einen entschlossenen und gut informierten Angreifer beweist (wenn ich davon ausgehe, dass der Algorithmus öffentlich ist und mindestens zwei Kopien mit Wasserzeichen vorhanden sind).

Ich halte dies für fatal Fehler: Kein Wasserzeichensystem sollte es einem Angreifer ermöglichen, einen anderen Benutzer als Leaker zu definieren.

Aber dann könnte jeder, der zwei verschiedene Kopien des Videos besitzt, XOR in den fehlenden Frames
@Mindwin Die Frage erwähnt keine solche Anforderung.
@JollyJoker Ist das (Frage, die es nicht erfordert) relevant?Ich habe diese Antwort vor meinem Kommentar positiv bewertet, musste jedoch darauf hinweisen, dass die in dieser Antwort vorgeschlagene Lösung keineswegs vollständig "sicher" ist.
Verdammt, @Mindwin!Das ist ein guter Punkt, ich hätte es verstehen sollen, und ich denke, es würde meine Idee völlig brechen.Meine Antwort wurde aktualisiert :(
@DewiMorgan DRM ist ein harter Kampf, der genauso gut von Anfang an verloren gehen könnte.Prof. Stallmans [zu diesem Thema stehend] (https://www.gnu.org/philosophy/opposing-drm.html) mag radikal sein, aber der Mann ist kein Trottel und hat sehr solide Punkte.
+1, weil dies eine gute Lösung für die ursprüngliche Frage zu sein scheint.Wenn Sie diese Idee erweitern, um viel, viel länger gehashte zufällige "Seriennummern" zu codieren, können Sie [Traitor Tracing] -Algorithmen (https://en.wikipedia.org/wiki/Traitor_tracing) verwenden, die einen Angreifer vereiteln, der genau über diese verfügtzwei Kopien mit Wasserzeichen und der öffentliche Algorithmus, der für die ursprüngliche Frage nicht erforderlich zu sein scheint.
#2
+34
M'vy
2017-05-04 19:47:16 UTC
view on stackexchange narkive permalink

Ihr Anwendungsfall erfordert ein robustes Wasserzeichenschema. Es muss der Komprimierung und Dekomprimierung des Bildes widerstehen, muss einer Modifikation (z. B. Änderungen des Weißabgleichs, verlorene Pixel) und auch einer geometrischen Variation widerstehen, da die Erfassung des Handgeräts nicht perfekt ist.

Robustheit geht normalerweise zu Lasten von Unsichtbarkeit und Kapazität. Da ein Identifikationsbedarf besteht und die Anforderungen an die Robustheit sehr hoch sind, ist es unwahrscheinlich, dass Sie angesichts des aktuellen Standes der Technik ein Schema finden, das alle Ihre Anforderungen berücksichtigt.

Als Referenz: A. Übersicht über das digitale Wasserzeichenschema ( Google-Cache).

Ein wichtiger Punkt: Es gibt einen großen Unterschied zwischen der Erstellung eines Wasserzeichens, das Änderungen widersteht, die beispielsweise durch Komprimierung und Dekomprimierung entstehen, und der Erstellung eines Wasserzeichens, das der vorsätzlichen Entfernung durch jemanden widersteht, der weiß, dass es vorhanden ist und beabsichtigt, es zu entfernenminimale visuelle Wirkung auf das Bild.Um es klar auszudrücken: Wenn der Angreifer Zugriff auf einen Test hat, der ihm sagt: "Ja, Markierung ist da" oder "Nein, keine Markierung hier", kann er die Markierung mit einem Dichotomieprozess lokalisieren und so eine saubere Entfernung erreichen.Kein Wunder da.
Bei Wasserzeichen wird normalerweise davon ausgegangen, dass das Vorhandensein der Marke bekannt ist.Und ja, ich habe nur den Anwendungsfall besprochen, der an sich schon viel erfordert.Angriffe auf die Marke sind eine ganz andere Sache.
Was ist mit ["The Penguin Barcode"] (https://www.youtube.com/watch?v=kW39Mt5kscQ)?Irgendwo im Video könnten einige Frames einige Bilder mit diesen unbestreitbaren Daten enthalten.Und alle x Sekunden könnte das Objekt mit den erforderlichen Funktionen irgendwo sichtbar sein.Und die Verbindung dieser Frames könnte einen öffentlichen Schlüssel codieren.Sollte das nicht funktionieren?Wenn Teile des Videos fehlen, ist der Schlüssel unvollständig, aber Sie können ihn mit dem Original vergleichen und die Daten trotzdem extrahieren.
Ihr Link scheint ausgefallen zu sein.
Es sieht so aus, als hätte jemand seine Domain-Rechnung nicht bezahlt.Ich habe den Google-Cache-Link [bearbeitet in] (https://security.stackexchange.com/suggested-edits/15953).Archive.org hat leider keine Kopie.
#3
+5
woliveirajr
2017-05-04 22:30:10 UTC
view on stackexchange narkive permalink

Nicht, es ist nicht hoffnungslos, alles hängt davon ab, wie viele Informationen Sie codieren möchten.

Beispielsweise können Unterschiede in den Farbtönen von einem Quadranten der Szene zum anderen anzeigen, ob Sie eine haben 0 oder a 1. Die Codierung eines Bits für jeden Frame (oder für eine Folge von Frames) ist jedoch möglicherweise zu niedrig für Sie.

Wenn Sie es mit einem Wasserzeichen versehen, benötigen Sie nicht sehr viele Bits.Gerade genug, um zu überprüfen, ob es sich um ein gültiges Wasserzeichen und wahrscheinlich um eine ID handelt.Die ID kann eine 32-Bit-Zahl sein, es sei denn, Sie erstellen Billionen von Kopien.Dann möchten Sie natürlich eine Fehlerkorrektur hinzufügen, aber das Ganze sollte im schlimmsten Fall nur ein paar hundert Bit betragen und bei 24 FPS bedeutet dies, dass Sie ungefähr eine Minute Video benötigen.Ich würde es auch im gesamten Video wiederholen, damit Sie es jederzeit abfangen können.Die Wahl der Fehlerkorrektur ist sehr wichtig und sollte einen Blick auf die QR-Codes werfen
#4
+2
Dewi Morgan
2017-05-05 22:55:28 UTC
view on stackexchange narkive permalink

Eine weitere Antwort, die entfernt werden kann, wenn die Leute wissen, dass sie vorhanden ist: Ultraschall.

Informative Links: https://science.slashdot.org/story/17/01/05/2159219/ Ultraschall-Tracking-könnte-verwendet werden, um Benutzer zu dekanonymisieren

http://rnd.azoft.com/mobile-app-transering-data-using -ultrasound /

Bonusse:

  • Die meisten Smartphones können dies mit der richtigen Software aufzeichnen und erkennen.
  • Das tun Sie nicht Sie müssen eine Kamera auf offensichtliche Weise auf den Bildschirm richten: Sie können Audio einfach mit einem Telefon in der Tasche aufnehmen.
  • Schwächen:

    • Lautsprecher mit Eine niedrige Wiedergabetreue bei hohen Frequenzen filtert den Ultraschall heraus.
    • Das Herausfiltern ist trivial.
    • Es ist anfällig für verlustbehaftete Audiokomprimierung.
    • Es ist eine Audiospur erforderlich , die nicht alle Videos haben.

    Angesichts der Schwachstellen denke ich, dass dies als Sicherungsmethode zur Unterstützung anderer hier vorgeschlagener Methoden gut funktionieren könnte, aber die gestellte Frage nicht vollständig anspricht .

    Angesichts des pa Parameter der Frage (dass der einzige Beweis, der erhältlich sein könnte, eine Telefon-Cam-Aufzeichnung ist), scheint jedoch nützlich zu sein, um die Beweissammler vor der Exposition zu schützen. Wenn das Telefon vibriert und "Ja, Verletzung" sagt, müssen sie keine weiteren Untersuchungen durchführen.

    Außerdem filtert MP3 jeglichen Ultraschall heraus und ersetzt ihn durch ein statisches Ultraschallrauschen.Einige der beliebtesten Videoformate verwenden MP3 als Audio-Codec.
    @wizzwizz4 Ja, das habe ich mit verlustbehafteter Audiokomprimierung gemeint.
    Die erste Anforderung in der Frage ist, dass das Wasserzeichen erkennbar ist ...
    @schroeder Nein, es heißt, es muss kaum wahrnehmbar sein.
    @Hankrecords daher auffällig - Wasserzeichen sollen * bemerkt * werden, um das Kopieren zu verhindern
    @shroeder Für mich scheint Ihre Interpretation eine gültige zu sein, die in der Antwort von rcorty angesprochen wird.Für mich erkennbare Wasserzeichen sind trivial: Überlagern Sie jedes Bild mit einem halbtransparenten Bild.Daher interpretiere ich "kaum wahrnehmbar" als "spürbare Auswirkungen auf die Videoqualität minimieren".Steganografisches Wasserzeichen (https://en.wikipedia.org/wiki/Digital_watermarking) ist nur für Menschen erkennbar.
    @schroeder * kaum * auffällig, nicht auffällig.Und das OP spricht in der Frage von "geheimer Botschaft", daher bin ich mir ziemlich sicher, dass er möchte, dass das Wasserzeichen für das bloße Auge so unsichtbar wie möglich ist.
    #5
    +1
    rcorty
    2017-05-07 12:38:38 UTC
    view on stackexchange narkive permalink

    Diese Antwort ist auf das Wasserzeichen eines Bildes zugeschnitten. Dies ist für Ihre Frage zu Videos relevant, da ein Video als eine Reihe von Bildern betrachtet werden kann.

    Berechnen Sie die Fourier-Transformation des Bildes. Schreiben Sie etwas im Fourierraum. Fügen Sie einfach einfachen Text oder einen normalen alten Barcode direkt in das Bild ein. Verwandle es wieder in den normalen Raum. Viola! Sie können das Bild teilen und es sieht normal aus. Wenn Sie etwas Ähnliches sehen, transformieren Sie es mit Fourier und prüfen Sie, ob Ihr Text vorhanden ist.

    Dies funktioniert unabhängig von der Auflösung des Bildes einwandfrei. Ich vermute, das Wasserzeichen würde ruiniert, wenn jemand das Bild verlustbehaftet komprimiert.



    Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
    Loading...