AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Noise XOR Signal = Noise?

Ein Thema von sx2008 · begonnen am 12. Jul 2014 · letzter Beitrag vom 15. Jul 2014
Antwort Antwort
Seite 1 von 3  1 23      
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#1

Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 00:05
Ich habe mal eine eher theoretische Frage.
Angenommen man hat einen guten Zufallsgenerator der einen Strom von zufälligen Bytes liefert.
Dann hat man einen Signalgenerator der eine frei wählbare Bytefolge liefert.
Die beiden Bytefolgen werden mit XOR verknüpft und das Ergebnis wird analysiert.
Man kann den Signalgenerator auch abschalten; dann wird immer Noise XOR $00 berechnet was natürlich genau
dem Ausgang des Zufallsgenerators entspricht.

Kann man an dem Ergebnis irgendwie erkennen, ob gerade der Signalgenerator an oder aus ist?
Oder anderst gefragt: kann man ein Signal erzeugen, dass sich messbar gegen das Rauschen des Zufallsgenerator absetzen kann?
fork me on Github
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#2

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 00:52
Kann man an dem Ergebnis irgendwie erkennen, ob gerade der Signalgenerator an oder aus ist?
Bei einer 50% Chance für das Zufallsbit sollte man das nicht erkennen können. Stromverschlüsselungen basieren darauf.
Du kannst dir mal einfach einen Entscheidungsbaum für ein einzelnes Bit aufzeichnen, da kann man sich das gut überlegen.

Oder anderst gefragt: kann man ein Signal erzeugen, dass sich messbar gegen das Rauschen des Zufallsgenerator absetzen kann?
Was hast du vor?

Geändert von BUG (12. Jul 2014 um 03:25 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Phoenix
Phoenix
(Moderator)

Registriert seit: 25. Jun 2002
Ort: Hausach
7.639 Beiträge
 
#3

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 08:41
Kann man an dem Ergebnis irgendwie erkennen, ob gerade der Signalgenerator an oder aus ist?
Oder anderst gefragt: kann man ein Signal erzeugen, dass sich messbar gegen das Rauschen des Zufallsgenerator absetzen kann?
1. Ja.
2. Nein.
3. Das ist nicht Praxisrelevant.

Du kannst den reinen Zufall statistisch analysieren, und erkennen, dass es echter Zufall ist.
Du kannst den Strom des Signalgenerators statistisch analysieren und erkennen, das es kein Zufall ist.

Der Signalstrom 'verzerrt' beim XORen den Zufall, denn er wird ohne Informationsverlust in den Zufall hineingewoben. Dadurch, das der Signalstrom nicht zufällig ist, wird er zwangsläufig *irgendwann* zu messbaren Patterns im modifizierten Zufallsstrom führen.

Die Unterschiede sind allerdings sehr gering. Du wirst nur über einen *längeren* Zeitraum durch sehr aufwändige Analysen des gesamten Datenstroms herausbekommen, ob in einem Teilstrom nun ein Signal eingewoben ist oder nicht.

Da wir hier auch nur über statistische Auffälligkeiten reden wirst Du auch den Beginn oder das Ende des Einwebens nie genau ermitteln können, sondern nur auf einem definierten Teilstrom mit einer gewissen Wahrscheinlichkeit sagen können: Hier war er an, und hier nicht.


Es ist also keineswegs so, dass Du den Strom mithörst und sagen kannst: 'Jetzt ist das Signal da, und jetzt nicht mehr', sondern Du kannst im Nachhinein nach der Analyse der Aufzeichnung vielleicht mal einigermassen sicher sagen: Damals, da in dem Teilbereich, ist es wahrscheinlich dass das Signal da war.

Wir reden hier aber über Datenmengen, die in der Praxis nicht zu bewältigen sind (ausser, Du bist die NSA oder hast unbegrenzte finanzielle Mittel um den nötigen Storage und die Rechenkapazität aufzubringen). Deswegen habe ich oben das 'nicht Praxisrelevant' dazugeschrieben.
Sebastian Gingter
Phoenix - 不死鳥, Microsoft MVP, Rettungshundeführer
Über mich: Sebastian Gingter @ Thinktecture Mein Blog: https://gingter.org
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#4

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 09:59
Klingt logisch, ist aber trotzdem (in meinen Augen) nicht richtig. Ich glaube eher, das ein Signalstrom etwaige Schwächen des Zufallsgenerators aufdecken würde, mehr nicht. Ein 'perfekter' bzw. hinreichend guter Zufallsstrom wird dir nicht den Gefallen tun. Voraussetzung ist natürlich, das die Wertebereiche beider Signale (Rauschen und Muster) identisch sind.

Deiner Ansicht nach gilt: Zufall xor Muster = Kein Zufall (vereinfacht). Das stimmt aber meiner Meinung nach nicht.
Ein Gedankenexperiment soll das belegen.
Du hast ein Gefäß mit zwei Bällen (schwarz und weiß). Du greifst blind in das Gefäß, nimmst einen Ball und schreibst die Farbe auf (Zufallsstrom). Nun kommt das Signal (111100001111000). Bei einer '1' schreibst Du die Farbe des gezogenen Balles auf, bei einer '0' die andere.
Preisfrage: Wird sich die Sequenz bzw. der Informationsgehalt dadurch in irgend einer Weise verändern? Selbst wenn Du das Ausgangssignal 1000 Jahre analysierst, wirst Du nicht merken, ob die Sequenz durch das blinde Ziehen oder erzeugt wurde, oder eine Regel zur Veränderung angewandt wurde.

Geändert von Dejan Vu (12. Jul 2014 um 10:22 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#5

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 15:15
Angenommen man hat einen Generator für echten Zufall (z.B. radioaktiver Zerfall, thermisches Rauschen, usw.), dann entspräche das in Grunde einem One-Time-Pad.
Die Argumentation ist natürlich verkehrt herum, weil das OTP gerade sicher ist, weil dort diese Eigenschaften ausgenutzt werden; aber wenn Phoenix recht hätte wäre das OTP nicht sicher

Auch die Theorie mit dem Informationsverlust hat einen Haken: Die Information ist steckt eben nicht in dem Endresultat, sondern nur in der Kombination aus Schlüssel und dem Resultat ... also exakt so viele Bits wie vorher.
  Mit Zitat antworten Zitat
nuclearping

Registriert seit: 7. Jun 2008
708 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#6

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 18:14
Ich denke das Hauptproblem ist hier auch, dass man Byte XOR Byte macht. Also beide Positionen haben einen Wertbereich von 0-255. Daran direkt zu erkennen, ob ein zusätzlicher Prozess das Signal beeinflusst oder nicht, schließt sich wohl damit auch aus.

Ich denke auch, dass der Ansatz von Phoenix, über eine indirekte Analyse, hier eher zum Ergebnis führen würde, vorrausgesetzt es handelt sich um einen "echten" Zufall.

Geändert von nuclearping (12. Jul 2014 um 18:18 Uhr)
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#7

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 18:37
Es kommt wohl darauf an, um was für eine Art Zufall es sich handelt, bzw. wie der Zufall verteilt ist.

Wenn man gleichverteilete Zufallswerte von 0..255 generiert und diese Byte-weise mit dem Signal XORt, dann kann man unter Umständen eine Analyse durchführen, denn durch das XOR mit dem Signal ändert sich die Verteilung (beispielsweise ist der Mittelwert dann u.U. nicht mehr 127).

Hantiert man dagegen mit zufälligen Bits, wobei jedes Bit eine 50%ige Chance hat, 1 oder 0 zu sein, dann sollte es unmöglich sein, das Signal zu rekonstruieren. Das ist ja gerade das Prinzip des One-Time-Pad.


Edit:
Schwachsinn, bei gleichverteilten Bytes ist jedes Bit auch wieder gleichverteilt.

Also man kann das Signal so oder so nicht rekonstruieren.

Bei Stochastik verknoten sich mir immer die Hirnwindungen

Geändert von Namenloser (12. Jul 2014 um 18:50 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von BUG
BUG

Registriert seit: 4. Dez 2003
Ort: Cottbus
2.094 Beiträge
 
#8

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 18:55
Bist du sicher das gleich-verteilte Bytes nicht gleich-verteilte Bits implizieren?

Ich würde mir das so überlegen: Angenommen man hat ein Byte aus einer gleich-verteilten Quelle. Nun wähle man ein beliebiges Bit in diesem Byte. Für jeden Wert dieses Bits gibt es gleich viele Byte-Werte, bei dem dieses Bit gesetzt bzw. nicht gesetzt ist. Jeder dieser Byte-Werte ist gleich wahrscheinlich. Daraus folgt, dass das einzelne Bit auch eine 50% Chance hat, gesetzt zu sein.

Beispiel: das höchstwertige Bit
Gesetzt für 0..127, also 128 Werte
Nicht gesetzt für 128..255, also 128 Werte
Die Wahrscheinlichkeit für beide Mengen von Werten ist jeweils (1/256)*128 = 1/2.

@rote Box: Ich poste es jetzt trotzdem
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#9

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 22:04
Ich will nur daran erinnern, das es hier nicht um Ver/Entchlüsselung geht, sondern *ob* man erkennt, ob eine Signalveränderung durch XOR stattgefunden hat, oder nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Aphton
Aphton

Registriert seit: 31. Mai 2009
1.198 Beiträge
 
Turbo Delphi für Win32
 
#10

AW: Noise XOR Signal = Noise?

  Alt 12. Jul 2014, 22:48
Ich kann mich intuitiv an Phonix #3 anschließen..

Als ein einfaches Beispiel habe ich mir ein Geradensegment vorgestellt, das beliebig durch den Raum verläuft, wo man aber mit dem freien Auge bereits ein Muster erkennt.
Wenn man nun die Operation "Xor" in diesem Fall durch "Addition" substituiert und dem Geradensegment ein Noise "draufaddiert", kann man folglich Änderungen am Muster warnehmen. Komplizierter wirds dann natürlich, wenn die Muster komplexer werden. Hängt m.M.n also von der Mustererkennung ab.

Ob die Änderung der Operation ohne Weiteres möglich ist und die Schlussfolgerung dadurch nicht beeinträchtigt wird, ist mir moment nicht bewusst.
das Erkennen beginnt, wenn der Erkennende vom zu Erkennenden Abstand nimmt
MfG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:30 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz