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

Betrachten wir zunächst mit  ein visuelles Beispiel: Verschlüsseln eine Farbe im Khan Academy-Logo.
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:
Farbauswahl
Hinweis: Es speichert  ROT=156, GRÜN=181 & BLAU=58. Wenn wir diese Zahlen binär darstellen, bekommen wir:
10011100 + 10110101 + 00111010.  die wir zusammen so ausdrücken können: 100111001011010100111010
Binäre RGB Darstellung des Khan Academy Grüns:
greeg

Application of Random Shifts

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
100.111.001.011.000.000.000.000 + 10.110.100.001.100.000.000.000 = ?
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 über drei verschiedene Vorgänge reden:

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
Lass es uns versuchen:  100111001011010100111010 UND 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 ODER 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
Lass es uns ausprobieren: 100111001011010100111010 XOR 010110100001101111011000 =  110001101010111011100010
dunkel violett
Daraus ergibt sich ein etwas dunkleres Lila im Vergleich zu der ODER-Operation. Beachten Sie, 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!