SNOW Stream Chiffre

Winter. Zeit, sich im Schnee zu suhlen und Schneebälle zu spielen. Oder lesen Sie einen Artikel über Stream-Chiffren. Wer mag was mehr.





Dieser Artikel ist eine Übersicht. Wir werden kurz über das Funktionsprinzip von Version 1 von SNOW 1.0 sprechen , über die verschiedenen Angriffe auf die Chiffre und die Verwendung ihrer Modifikationen.





Grundinformation

Und das Wichtigste meiner Meinung nach.





SNOW-Chiffre bezieht sich auf wortorientierte Stream-Chiffren. Es arbeitet mit 32-Bit-Wörtern und unterstützt sowohl 128- als auch 256-Bit-Schlüssel. Es besteht aus einer Kombination eines linearen Rückkopplungsschieberegisters (LFLR) und einer Finite-State-Maschine (FSM).





Es hat 3 Modifikationen. Und einer von ihnen - SNOW 3G - wird zur Übertragung mobiler Daten verwendet. Die neueste Version von SNOW-V wurde für 5G-Netzwerke entwickelt, wird jedoch noch nicht verwendet.





Ein bisschen über die Geschichte

SNOW 1.0 , ursprünglich nur SNOW, wurde im Jahr 2000 an der Universität Lund (Schweden) entwickelt.





In der ersten Version wurden Schwachstellen entdeckt und daher wurde SNOW nicht in die NESSIE-Algorithmus-Suite aufgenommen. Im Jahr 2003 entwickelten die Autoren eine neue Version der SNOW 2.0- Verschlüsselung , die Fehler beseitigte und die Leistung verbesserte. Während der ETSI SAGE- Auswertung wurde der Verschlüsselungsalgorithmus weiter modifiziert, um seine Widerstandsfähigkeit gegen algebraische Angriffe zu erhöhen. Das Ergebnis solcher Verbesserungen im Jahr 2006 war die Modifikation der SNOW 3G-Verschlüsselung.





2019 Ericsson Research SNOW 3G , SNOW-V.





SNOW

. .





16 \ mathbb {F} _ {2 ^ {32}}. . 32- , R1 R2, ( R1 R2). . . , R1, R2 . 32 . , 32 . .









t = 0 32- s(1), s(2),…, s(16) , .









p (x) = x ^ {16} + x ^ {13} + x ^ {7} + \ alpha ^ {- 1}

\ mathbb {F} _ {2 ^ {32}},





 \ pi (x) = x ^ {32} + x ^ {29} + x ^ {20} + x ^ {15} + x ^ {10} + x + 1,

\ mathbb {F} _ {2}, \ pi (\ alpha) = 0 .





FSM_ {out}. :





FSM_ {out} = (s (1) \ boxplus R1) \ oplus R2,

\ boxplus \ mod2 ^ {32}.





FSM_ {out} s(16) 2 ,





Ausführender Schlüssel = FSM_ {out} \ oplus s (16),

\ oplus mod 2.





R1 R2 :





newR1 = ((FSM_ {out} \ boxplus R2) \ lll 7) \ oplus R1,

\ lll - ,





R2 = S (R1), R1 = newR1

, S-, S(x), c S- 8×8 . 4 , 8 8 . , S-





2.





.





  • 2002 «Guess and determine attack» SNOW 1.0, , . -, , s(1). .  — SNOW 1.0.





  • 2003 , SNOW 2.0 .  2 ^ {230}  2 ^ {215} , , 256- .





  • 2010 SNOW 3G SNOW 3G ⊕ . IV 18 33 SNOW3G ⊕ 2 ^ {57} 2 ^ {53} .





  • 2020 Lin Jiao, Yongqiang Li Yonglin Hao SNOW-V «Guess and determine attack». .. , SNOW 1.0. , , . ?





  • SNOW 2.0 — , ISO/IEC 18033-4, , .





  • SNOW 3G 3GPP UEA2 UIA3.





  • SNOW-V , !





STRUMOK ( : 8845:2019 ""), SNOW 2.0.





(Der Unterschied besteht in der Länge des geheimen Schlüssels und des Initialisierungsvektors. SNOW 2.0 ist auch für die Verwendung in 32-Bit-Computersystemen und STRUMOK in 64-Bit-Computersystemen vorgesehen.)





Kleine Zusammenfassung

Diese Chiffre ist natürlich nicht perfekt. Wer ist perfekt? Aber er ist modern und ich denke, er hat eine Zukunft. Das Problem der sicheren Datenübertragung war schon immer relevant und bleibt bestehen!








All Articles