If you're seeing this message, it means we're having trouble loading external resources on our website.

Wenn du hinter einem Webfilter bist, stelle sicher, dass die Domänen *. kastatic.org und *. kasandbox.org nicht blockiert sind.

Hauptinhalt

Bit-weise XOR Operation

Die ultimative Verschiebechiffre

Falls du die Lektion über die Einmaverschlüsselung gesehen hast, weißt du, dass es die ultimative Verschiebechiffre ist. Es beinhaltet die Anwendung einer zufälligen Liste von Verschiebungen, die gleich der Länge der Nachricht ist. Es ist wichtig zu verstehen, warum genau die Einmalverschlüsselung nicht zu knacken ist oder vollkommen sicher ist
Um dies zu verstehen, müssen wir erst folgende Operationen einführen: UND, ODER und XOR. Insbesondere muss XOR verwendet werden, wenn wir den Einmalblock auf Computern ausführen. Bitweise bedeutet einfach, dass wir uns mit einzelnen Bits oder Binärzahlen beschäftigen. In jedem modernen/computerisierten Verschlüsselungsschema repräsentieren wir unsere Symbole durch binäre Zahlen.  Wenn du nicht mehr weißt warum, schau das Video über Computerspeicher an.

Verschlüsseln von Farben

Beginnen wir mit einem sehr visuellen Beispiel, indem wir die Farbe des grünen Blatt-Avatars von Khan Academy verschlüsseln
Wie wandeln wir eine Farbe in eine Reihe um? Nun, jetzt seht ihr HTML-Farben, die mit dem RGB-Farbmodell definiert werden. Dies ist ein additives Modell, dass auf einer gewisser Mischung an rotem, grünen und blauem Licht beruht
Wir können genau definieren, wie viel Rot, Grün und Blau wir haben durch eine Zahl zwischen 0 und 255. Schwarz ist alles aus (0,0,0) während weiß alles an (255,255,255) bedeutet. Dazwischen gibt es 16 Millionen mögliche Farben (256 * 256 * 256). Als Nächstes analysieren wir das Grün im Khan Academy-Blatt in einem beliebigen Bildbearbeitungs-Werkzeug:
Screenshot des Dialogs zur Farbwahl in Photoshop, mit ausgewähltem Grün.
Hinweis: Die Farbe wird gespeichert als ROT=156, GRÜN=181, BLAU=58.
Wenn wir diese Zahlen in binärer Form darstellen, erhalten wir:
ROT=10011100, GRÜN=10110101, BLAU=00111010.
Das können wir zusammenhängend schreiben als: 100111001011010100111010
Binäre RGB Darstellung des Khan Academy Grüns:
Grüner Hintergrund auf dem 10011100101101010100111010 geschrieben steht

Anwendung von zufälligen Verschiebungen

Jetzt generierst Du eine Verschiebesequenz durch Münzwurf und wandelst sie in eine Binärsequenz um:
HTHTTHTHHHHTTHTTTTHTTHHH = 010110100001101111011000
Lassen Sie uns darüber nachdenken, wie wir diese Verschiebesequenz auf unsere Farbe anwenden können, um sie mit unserem Einmal-Schreibblock zu verschlüsseln**:
100111001011010100111010 + 010110100001101111011000 = ?
Um den Einmal-Schreibblock arbeiten zu lassen, müssen wir die richtige Operation wählen, so dass die Ergebnissequenz wirklich eine beliebige Farbe ist.   Lass uns nun die drei verschiedene Vorgänge, AND, OR, XOR anschauen.

AND

Der UND -Operator ist auch bekannt als logische Konjunktion und funktioniert genau wie die Multiplikation. 
Er gibt nur eine 1 aus,falls alle Eingänge 1 sind. Hier ist die Wahrheitstabelle:
0 AND 0 = 0
0 AND 10
1 AND 0 = 0
1 UND 1 = 1
Versuchen wir es:
100111001011010100111010 AND 010110100001101111011000 = 000110000001000100011000
Dies führt zu einem sehr dunklen Violett. Beachte: Wenn wir die UND-Operation für eine Binärzahl durchführen, kann die daraus resultierende Sequenz nicht größer sein. In unserem Farbbeispiel werden dadurch viele mögliche Schattierungen entfernt und die Farbe Richtung Schwarz verschoben.

OR

Der ODER -Operator ist auch bekannt als logische Disjunktion. Er gibt eine 1 aus, wenn eine oder mehrere seiner Eingänge 1 sind. Hier ist die Wahrheitstabelle:
0 OR 0 = 0
0 OR 1 = 1
1 ODER 0 = 1
1 ODER 1 = 1
Versuchen wir es:
100111001011010100111010 OR 010110100001101111011000 = 110111101011111111111010
Daraus ergibt sich ein helles lila. Beachte, wenn wir die Operation ODER für jede binäre Sequenz durchführen, kann die daraus resultierende Sequenz nicht kleiner sein . Dadurch eliminieren sich viele Möglichkeiten, weil die Farbe in Richtung weiß verschoben wird.

XOR

Der XOR-Operator gibt eine 1  aus, wenn die Eingaben nicht übereinstimmen. Da tritt auf, wenn genau eine der beiden Eingaben 1 ist. Dies ist dasselbe wie Addition mod 2. Hier ist die Wahrheitstabelle:
0 XOR 0 = 0
0 XOR 1 = 1
1 XOR 0 = 1
1 XOR 1 = 0
Versuchen wir es:
100111001011010100111010 XOR 010110100001101111011000 = 110001101010111011100010
dunkel violett
Daraus ergibt sich ein etwas dunkleres Lila im Vergleich zu der ODER-Operation. Beachte, wenn wir die XOR-Operation auf eine binäre Sequenz anwenden, kann die daraus resultierende Sequenz jede mögliche Sequenz ergeben. Über eine verschlüsselte Farbe, wissen wir dann nur, dass die ursprüngliche Farbe “jede mögliche Farbe” sein kann. Wir haben keine Informationen, die ein blindes Raten verbessern könnte (1/16 Millionen).
Lass uns nun eine visuelle Demonstration machen, so dass wir den Einmal-Schreibblock in Aktion sehen können. Dann können wir mehr Energiepunkte sammeln!

Willst du an der Diskussion teilnehmen?

Noch keine Beiträge.
Verstehst du Englisch? Klick hier, um weitere Diskussionen auf der englischen Khan Academy Seite zu sehen.