Hauptinhalt
Informationstechnik
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:
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.
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:
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 = start text, question mark, end text
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:
Er gibt nur eine 1 aus,falls alle Eingänge 1 sind. Hier ist die Wahrheitstabelle:
0 AND 0 = 0
0 AND 1 = 0
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
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.