De-Coded - Verschlüsselung Vernam-Chiffre (Ein-Zeit-Pad) Die Verzeich-Chiffre, die manchmal als ein Zeit-Pad bekannt ist, ist eine Stromchiffre, die bestimmte Anforderungen erfüllt, kann theoretisch unzerbrechlich sein. Es verwendet einen zufällig ausgewählten Schlüssel, der XORd ein Bit zu einer Zeit mit dem Klartext ist. Wenn der verwendete Schlüssel die gleiche Länge wie die Nachricht hat und keine Redundanz (dh Wiederholung) enthält, kann jeder, der versucht, ihn zu brechen, nur an dem Schlüssel erraten, der verwendet werden könnte - irgendeine einer potentiell massiven Anzahl von binären Zeichenfolgen. Zum Beispiel, sagen wir hatten eine Nachricht, die 100 Zeichen lang war. Angenommen, es wurde ascii-codiert, würde jeder Charakter ein Byte aufnehmen, oder acht Bits. Das gibt uns eine Nachricht von 800 Bits lang, also sollte der Schlüssel auch 800 Bits lang sein. Die möglichen Permutationen auf einen binären String der Länge 4 ist 2x2x2x2 (16). Um die möglichen Permutationen eines binären Strings der Länge 800 auszuführen, müssen wir 2x2x2x2x2x2x2x2x2x2x2 tun. Und halten, bis wir auf 800. Zu sagen, seine ziemlich sizaable Zahl ist eine Untertreibung - und das ist nur auf eine Nachricht 100 Zeichen lang. Nein ist 2 Zeichen lang - 16 Bits. Das würde uns 131072 mögliche binäre Zeichenfolgen geben. Selbst mit solch einer kurzen Nachricht, viel Glück erraten den Schlüssel On auf die Demo. Können Sie das untenstehende Formular ausprobieren. Geben Sie einen Suchbegriff und Ihre Nachricht im Textbereich ein. Das md5 der Keyphrase wird als Samen in einem LFSR verwendet, um sicherzustellen, dass ein ausreichender Längenschlüssel erzeugt werden kann. Der generierte Schlüssel wird am Ende angezeigt. Der Chiffretext kann in ASCII nicht angezeigt werden - er würde Werte enthalten, die nicht in der ASCII-Tabellenhexe enthalten sind, und Binärdarstellungen werden jedoch angezeigt. Zum Entschlüsseln kopieren Sie den hexadezimalen Schlüsseltext in das Eingabefeld, geben Sie den Schlüssel erneut ein und wählen Sie entschlüsseln. Wenn Sie auf Senden klicken, sollte derselbe Schlüssel generiert und Ihre Nachricht entschlüsselt werden. Kopie De-Coded - David Wilshaw, sicherer amp Forensic Computing Student an der Universität von Huddersfield. Email - davidde-codedCryptography Einmalige Pads Ein One Time Pad (OTP) ist die einzige potenziell unzerbrechliche Verschlüsselungsmethode. Unverschlüsselter Text, der mit einem OTP verschlüsselt wurde, kann nicht mit dem Verschlüsselungsschlüssel abgerufen werden. Es gibt jedoch mehrere Schlüsselbedingungen, die vom Benutzer einer Ein-Zeit-Pad-Verschlüsselung erfüllt werden müssen, oder die Chiffre kann kompromittiert werden. Der Schlüssel muss zufällig sein und durch einen nicht deterministischen, nicht wiederholbaren Prozess erzeugt werden. Jeder Schlüssel, der von einem Algorithmus generiert wird, funktioniert nicht. Die Sicherheit des OTP beruht auf der Zufälligkeit des Schlüssels. Leider kann die Zufälligkeit eines Schlüssels nicht bewiesen werden. Der Schlüssel darf niemals wiederverwendet werden. Die Verwendung des gleichen Schlüssels, um verschiedene Nachrichten zu verschlüsseln, egal wie trivial klein, kompromittiert die Chiffre. Der Schlüssel darf nicht in die Hände des Feindes fallen. Dies scheint offensichtlich, aber es weist auf die Schwäche des Systems, dass Sie in der Lage, große Mengen an Daten an den Leser des Pads zu übertragen. Typischerweise werden einmalige Schlüsseltasten über einen diplomatischen Beutel gesendet. Ein typisches ein Mal Pad-System funktioniert wie folgt: Generieren Sie eine lange frische neue zufällige Taste. XOR den Klartext mit dem Schlüssel, um den Chiffretext zu erstellen. Um den Chiffretext zu entschlüsseln, XOR mit dem Originalschlüssel. Das dargestellte System ist somit eine symmetrische und reziproke Chiffre. Andere Funktionen (z. B. Addition modulo n) könnten verwendet werden, um den Schlüssel und den Klartext zu kombinieren, um den Chiffretext zu ergeben, obwohl das resultierende System keine reziproke Chiffre sein kann. Wenn der Schlüssel zufällig ist und nie wieder verwendet wird, ist ein OTP nachweislich unzerbrechlich. Jeder Chiffretext kann mit der entsprechenden Taste zu einer beliebigen Nachricht der gleichen Länge entschlüsselt werden. Somit kann die eigentliche Originalnachricht nicht aus dem Chiffretext allein bestimmt werden, da alle möglichen Klartexte gleichermaßen wahrscheinlich sind. Dies ist das einzige Kryptosystem, für das ein solcher Beweis bekannt ist. Das OTP ist extrem einfach zu implementieren. 1 Es gibt jedoch Einschränkungen. Wiederholen Sie den Schlüssel und das System wird extrem schwach, es kann mit Bleistift und Papier gebrochen werden. Versuchen Sie, ein One-Time-Pad mit Hilfe eines Algorithmus zu erstellen, um die Schlüssel zu generieren und Sie haben keine One-Time-Pad, haben Sie eine Stream-Chiffre. Es gibt einige sehr sichere Stream-Chiffren, aber Menschen, die nicht wissen, ein von einem einmaligen Pad sind wahrscheinlich nicht in der Lage, ein Design. Es ist leider ziemlich häufig, schwache Strom-Ziffern zu sehen, die als unzerbrechliche Einmal-Pads angezeigt werden. Auch wenn Sie ein gut implementiertes OTP-System haben und Ihr Schlüssel sicher gehalten wird, sollten Sie einen Angreifer betrachten, der den Klartext eines Teils einer Nachricht kennt. Er kann dann diesen Teil des Schlüssels wiederherstellen und ihn verwenden, um eine eigene Botschaft zu verschlüsseln. Wenn er das anstelle von Ihnen liefern kann, sind Sie in tiefen Schwierigkeiten. Zuerst wird ein OTP für den Klartext ausgewählt: Wikipedia hat verwandte Informationen bei Padding (Kryptographie) Das Beispiel zeigt an, dass der Klartext nicht immer die gleiche Länge wie das Schlüsselmaterial hat. Dies kann durch Verfahren behandelt werden, wie beispielsweise: Anfügen eines Terminators an den Klartext vor der Verschlüsselung und Beenden des Cyphertextes mit Zufallsbits. Voranstellen der Länge und eines Präambelterminators zum Klartext und Beenden mit Zufallsbits. Solche Signalisierungssysteme (und ggf. das Klartext-Codierungsverfahren) müssen so ausgelegt sein, dass diese Terminatoren nicht mit dem Klartext verwechselt werden. Für dieses Beispiel wird daher davon ausgegangen, dass der Klartext bereits eine Endpunktlängensignalisierung enthält. Für zunehmend lange Klartext-Schlüsselpaarlängen nähert sich die Kreuzkorrelation näher zu Null. Verschlüsselungsbearbeitung Für zunehmend lange Klartext-Cyphertext-Paarlängen nähert sich die Kreuzkorrelation auch näher an Null. Entschlüsselung bearbeiten Ein scharfsinniger Leser könnte beobachten, dass der Entschlüsseler die Länge des Klartextes in der Praxis kennen muss. Dies geschieht durch Entschlüsseln des Cyphertextes als Bitstrom (d. H. X oder jedes Bit, wie es gelesen wird) und Beobachten des Stroms, bis das Ende des Klartext-Regelsatzes durch die an den Klartext angehängten Signale erfüllt ist. Einmalige Pads von Hand herstellen Edit Ein komplettes englischsprachiges Scrabble-Set. Siehe Scrabble-Buchstaben-Verteilungen für andere Sprachen. Einmalige Pads wurden ursprünglich ohne den Einsatz eines Computers hergestellt und das ist heute noch möglich. Das Verfahren kann langwierig sein, aber wenn es richtig gemacht wird und das Pad nur einmal verwendet wird, ist das Ergebnis unzerbrechlich. Es gibt zwei Komponenten, die benötigt werden, um ein einmaliges Pad zu erstellen: eine Möglichkeit, Buchstaben zufällig zu erzeugen, und eine Möglichkeit, zwei Kopien des Ergebnisses aufzuzeichnen. Die traditionelle Art, das letztere zu tun, war die Verwendung einer w: Schreibmaschine und w: Kohlepapier. Das Kohlepapier und das w: Schreibmaschinenband würden dann zerstört werden, da es oft möglich ist, die Kissendaten von ihnen wiederzugewinnen. Da Schreibmaschinen knapp geworden sind, ist es auch akzeptabel, die Briefe ordentlich in Gruppen zu fünf auf zwei Teile zu schreiben: kohlefreie Kopierpapierblätter, die bei Büromärkten erhältlich sind. Jedes Blatt kann eine Seriennummer oder eine andere eindeutige Kennzeichnung erhalten. Historisch gesehen wurde das Schlüsselmaterial für manuelle Einmalauflagen als Auflage von vielen kleinen Papierseiten verteilt. Jede kleine Seite hatte typischerweise eine Reihe von 5-stelligen Gruppen, wobei jede Ziffer nach dem Zufallsprinzip von 0 bis 9 ausgewählt wurde. 2 3 4 5 6 7 8 9 Ein Einmal-Pad-Set besteht aus zwei identischen Pads. Einige Schriftsteller beziehen sich auf die beiden als zwei identische Originale, um zu betonen, dass keine Kopien vom Schlüsselmaterial hergestellt werden sollten. 10 Herkömmlicherweise erfordert die Zweiwegkommunikation zwei Pad-Sets (insgesamt 4 Pads): Eine Person erhält das IN-Pad eines Satzes und das OUT-Pad des anderen Sets. 11 Jede kleine Seite enthält typischerweise 50 Gruppen von 5 zufälligen Dezimalstellen 0. 9, genug für eine normale Nachricht und eine eindeutige Seitenzahl von fünf Ziffern. 11 12 Eine Umrechnungstabelle wird verwendet, um die Buchstaben der Klartextnachricht in Zahlen umzuwandeln und die Zahlen der dekodierten Meldung zurück in die Buchstaben. 5 Vielleicht ist die einfachste Umwandlung A01, B01. Z26, aber in der Vergangenheit wurde üblicherweise eine Art schachbrettartiges Schachbrett verwendet, wie CT-37c, 13 CT-37w, CT-46, 14 usw. 15 Das Schlüsselmaterial für eine Einmalauflage wurde manchmal als 50 Gruppen von 5 zufällig geschrieben Briefe AZ 12 16 Das Schlüsselmaterial für kryptographische Maschinen, einschließlich Einmal-Pad-Systemen, wurde oft in einem Binärcode auf einem langen, schmalen Papierband gestanzt - ein einmaliges Band OTT. 12 17 10 Buchstaben-Fliesen Bearbeiten Der einfachste Weg, zufällige Buchstaben im römischen Alphabet zu erzeugen, besteht darin, 26 identische Objekte mit einem anderen Buchstaben des Alphabets zu erhalten, das auf jedem Objekt markiert ist. Fliesen aus dem Spiel w: Scrabble kann verwendet werden, solange nur ein Buchstabe ausgewählt ist. Kits für die Herstellung von Charme-Armbändern sind eine andere Möglichkeit. Man kann auch die Buchstaben auf 26 sonst identische Münzen mit einem Markierstift schreiben. Die Gegenstände werden in eine Schachtel oder eine Schale gegeben und kräftig geschüttelt, dann wird ein Gegenstand zurückgezogen und sein Buchstabe wird aufgezeichnet. Das Objekt wird an das Feld zurückgegeben und der Vorgang wird wiederholt. 10-seitige Würfel Bearbeiten Eine andere Möglichkeit, um eine Zeit pads ist mit w: zweiseitige Würfel zu machen. Man kann zufällige Zahlengruppen generieren, indem man mehrere zweiseitige Würfel gleichzeitig rollt und eine Gruppe von Dezimalzahlen - eine Dezimalstelle von jedem Würfel - für jede Rolle aufzeichnet. 11 Diese Methode erzeugt zufällige Codegruppen viel schneller als die Verwendung von Scrabble-Kacheln. Die Klartextnachricht wird in numerische Werte mit A 01, B 02 und so weiter konvertiert. Die resultierenden numerischen Werte werden durch Hinzufügen von Ziffern aus den einmaligen Pads unter Verwendung nichttragenden Additionen verschlüsselt. Man kann dann entweder die numerischen Gruppen übertragen, wie es ist, oder verwenden Sie die straddling Schachbrett, um die Zahlen wieder in Buchstaben umwandeln und übertragen, dass Ergebnis. 6-seitige Würfel Bearbeiten Eine andere Möglichkeit, ein Mal Pads zu machen, ist die Verwendung von 6-seitigen Würfeln. 18 Es ist möglich, mit 6-seitigen Würfeln zufällige Dezimalstellen zu erzeugen (um ein herkömmliches Dezimal-Einmal-Pad zu erzeugen). 11 Wenn die Nachricht in zweistellige Basis-6-Zahlen umgewandelt wird, können gewöhnliche sechsseitige Würfel verwendet werden, um die Zufallszahlen in einem einzigen Zeitfenster zu erzeugen. Ziffern in dem Pad würden modulo-6 zu den Ziffern in der Klartext-Nachricht (wieder ohne Carry) hinzugefügt und subtrahiert modulo 6 aus dem Chiffretext, um zu entschlüsseln. Beispiel: Tabelle zum Konvertieren von Nachrichten in Basis-6
Comments
Post a Comment