NLS Chiffre
Kategorisierung: | Moderne binär-basierte Stromchiffre |
Herkunft / Verwendung: |
NLS ist eine 2005 von Gregory Rose, Philip Hawkes, Michael Paddon und Miriam Wiggers de Vries entwickelte Stromchiffre mit einer Schlüssellänge von 128 bit (entsprechend 16 Zeichen). NLS war Kandidat beim eStream Projekt des ECRYPT-Netzwerkes, einem Kryptowettbewerb, der von 2004 bis 2008 lief und das Ziel verfolgte, Vorschläge für neue Stromchiffren entgegenzunehmen, kryptologisch zu untersuchen und zu bewerten und so empfehlenswerte Verfahren zu finden. Das eStream Projekt lief über drei Phasen: Phase 1, die bis März 2006 lief, war eine allgemeine Beurteilung und Analyse der eingereichten 34 Kandidaten. Hier wurden offensichtliche Schwächen erkannt. Phase 2, im August 2006 gestartet, untersuchte die Kandidaten, die weitergekommen waren insbesondere auch auf Design und Performance und beinhaltete weitere Kryptoanalysen. Phase 3 schließlich, im April 2007 gestartet und im April 2008 beendet, verglich die übrigen 14 Kandidaten miteinander und kürte die besten als empfehlenswert: vier in der Kategorie Software-Implementierung und drei in der Kategorie Hardware-Implementierung. NLS (in der 128 bit Version 2) schaffte es bis in Phase 3 des Wettbewerbs, wurde allerdings nicht als einer der sieben empfehlenswerten Algorithmen eingestuft. NLS ist für die Implementierung in Software optimiert, ist aber auch gut in Hardware implementierbar. NLS ist für kommerziellen und nicht-kommerziellen Gebrauch freigegeben. Es sind einige Schwächen in NLS bekannt geworden, die einen Angriff ermöglichen, der effizienter als ein Brute-Force-Attack ist. |
Beschreibung des Algorithmus
NLS folgt dem Designprinzip eines nichtlinearen Feedback Shift Registers (NFSR) mit einem nichtlinearen Filter.Die hier benutzte Version 2 erhielt gegenüber Version 1 einige Verbesserungen, die die Sicherheit bei einem hohen Ausgabevolumen des Schlüsselstroms verhindern sollen. NLS ist eine Weiterentwicklung von SOBER von Rose von 1998, der noch auf 8 Bit hin optimiert war und dem SOBER-II mit 16-bit-Operationen nachfolgte. Weitere Vorgänger-Algorithmen waren SOBER-t16, SOBER-t32 und SOBER-128.
NLS Der Algorithmus funktioniert mit einer Schlüssellänge von 128 bit und einer Initialisierungsvektorlänge von 128 bit. Die Verschlüsselung erzeugt den Schlüsselstrom in 32-bit-Blöcken. Sie benutzt simple 32-bit-breite Binäroprationen wie XOR. Außerdem benutzt sie S-Boxen.
NLS kann auch mit MAC (Message Authentification) benutzt werden, wovon in der Demo weiter unten aber kein Gebrauch gemacht wird.
Beispiel
Klartext: | BeispielklartextBeispielklartext (32 Bytes) |
Schlüssel: | Schokoladentorte (16 Bytes, 128 bit) |
IV: | 00000000 00000000 00000000 00000000 (hex 16 Bytes, 128 bit) |
Chiffrat: | C21AA1E3 43AA968B D16D1498 30FB7E05 5B3AAD90 76940803 76B9C44A A9F340E7 (hex) |
Code / Chiffre online dekodieren / entschlüsseln bzw. kodieren / verschlüsseln (DeCoder / Encoder / Solver-Tool)
Wenn Sie Texte eingeben, die nicht als Hex-Sequenz (ohne Leerzeichen) interpretiert werden können, erfolgt eine automatische Umsetzung in eine Hex-Sequenz. Ist das Ergebnis umsetzbar in druckbare ASCII-Zeichen, erfolgt eine automatische Umsetzung von Hex.Einen eventuell zu berücksichtigen Initialisierungsvektor (IV) können Sie, durch Komma getrennt, nach dem Schlüssel angeben.
Quellen, Literaturverweise und weiterführende Links
Homepage des eSTREAM Projekts
Joo Yeon Cho und Josef Pieprzyk: Linear Distinguishing Attack on NLS

Cameron McDonald und Philip Hawkes: On Exploiting Adjacent Bits in NLS

Joo Yeon Cho und Josef Pieprzyk: Crossword Puzzle Attack on NLSv2

Bhattacharya, Mukhopadhyay, Saha und RoyChowdhury: Strengthening NLS Against Crossword Puzzle Attack
