SNÍH (šifra)

SNOW  je slovně orientovaná synchronní proudová šifra vyvinutá Lund University (Švédsko). V tuto chvíli má 3 modifikace: SNOW 2.0, SNOW 3G, SNOW-V. SNOW 3G se používá pro bezpečný přenos mobilních dat.

Historie

SNOW 1.0, původně jen SNOW [1] , byl vyvinut v roce 2000. Šifra pracuje s 32bitovými slovy a podporuje 128bitové i 256bitové klíče. Šifru tvoří kombinace lineárního zpětnovazebního posuvného registru (LFSR) a stavového automatu (FA).

V první verzi [2] byly nalezeny slabé stránky a v důsledku toho nebyl SNOW zahrnut do sady algoritmů NESSIE . V roce 2003 autoři vyvinuli novou verzi šifry SNOW 2.0 [3] , která odstranila nedostatky a zlepšila výkon. Během hodnocení skupinou odborníků na bezpečné algoritmy ( angl.  SAGE ) [ 4] Evropského institutu pro telekomunikační standardy ( ETSI ) [4] byl šifrovací algoritmus dále upraven, aby se zvýšila jeho odolnost vůči algebraickým útokům. Výsledkem těchto vylepšení v roce 2006 byla úprava šifry SNOW 3G [5] [6] .  

V roce 2019 Ericsson Research společně s Lund University revidoval algoritmus SNOW 3G a aktualizoval jej na novou, rychlejší šifru nazvanou SNOW-V [7] , kterou lze použít pro bezpečný přenos dat v nové generaci 5G komunikace .

Schéma práce SNÍH

Obecné schéma práce

Generátor se skládá z lineárního zpětnovazebního posuvného registru délky 16 přes pole . Výstup registru je přiveden na vstup stavového automatu. KA se skládá ze dvou 32bitových registrů nazývaných R1 a R2 a také některých operací pro výpočet výstupu a dalšího stavu (další hodnota R1 a R2). Šifra funguje následovně. Nejprve se inicializuje klíč. Tento postup poskytuje počáteční hodnoty pro LFSR a také pro registry R1, R2 ve stavovém automatu. Poté se prvních 32 bitů toku klíčů vypočítá bitovým sčítáním výstupu KA a posledního záznamu LFSR. Poté se celý proces synchronizuje a dalších 32 bitů toku klíčů se vypočítá přidáním jednoho dalšího bitového sčítání výstupu stavového stroje a posledního záznamu LFSR. Opět se synchronizujeme a pokračujeme ve stejném duchu. [2]

Podrobné schéma práce

V počátečním čase t = 0 je posuvný registr inicializován 32bitovými hodnotami , které jsou specifikovány pomocí vygenerovaného klíče.

Zpětná vazba pro registr je dána polynomem:

kde je dáno ireducibilním polynomem

,

přes a .

Nazvěme výstup KA . Vypočítá se pomocí následujícího vzorce:

,

kde  je sčítání celého čísla přes .

Výstup stavového automatu je porovnán s modulem 2 za účelem vytvoření streamovacího klíče, tzn.

,

kde  je sčítání přes .

Uvnitř stavového automatu jsou nové hodnoty pro R1 a R2 přiřazeny podle následujících vzorců:

,

kde  je cyklický posun doleva

Nakonec S-box , označený , se skládá ze čtyř identických 8x8 bitových S-boxů a permutace výsledných bitů. Vstupní data jsou rozdělena do 4 bajtů, každý bajt je zahrnut v nelineárním mapování od 8 bitů do 8 bitů. Po tomto mapování jsou bity ve výsledném slově prohozeny, aby vytvořily konečný výsledek S-boxu [1] .

Pro konečné vytvoření šifrového textu je klíč streamu porovnán s otevřeným textem modulo 2.

Pozoruhodné útoky

Aplikace

SNOW 2.0 je jednou ze streamových šifer zahrnutých v šifrovacím standardu ISO/IEC ISO/IEC 18033-4 [10] , který definuje inferenční funkce pro zřetězení toku klíčů s prostým textem, generátory toku klíčů pro generování toku klíčů a identifikátory objektů přiřazené vybraným generátory toku klíčů v souladu s ISO/IEC 9834 pro proudové šifry.

SNOW 3G [6] je vybrán jako generátor klíčů toku pro šifrovací algoritmy 3GPP UEA2 a UIA2 [11] .

Poznámky

  1. 1 2 Patrik Ekdahl, Thomas Johansson. SNOW-nová proudová šifra  : [ eng. ] // Sborník z prvního otevřeného workshopu NESSIE, KU-Leuven. - 2000. - 13. listopadu. - S. 167-168.
  2. 1 2 Patrik Ekdahl, Thomas Johansson. Nová verze Stream Cipher SNOW  : [ eng. ] // Springer. - 2003. - Sv. 2595. - S. 47-61. ISSN 0302-9743 .
  3. O. Billet, H. Gilbert. Odolnost SNOW 2.0 proti algebraickým útokům  : [ eng. ] // Springer. - 2005. - Sv. 3376. - S. 19-28. - doi : 10.1007/978-3-540-30574-3_3 .
  4. Bezpečnostní algoritmy . Získáno 25. listopadu 2020. Archivováno z originálu dne 26. července 2020.
  5. UEA2 Design and Evaluation Report  ( 6. září 2006). Získáno 20. října 2020. Archivováno z originálu dne 29. října 2020.
  6. 1 2 J. Molina-Gil, Caballero-Gil, Caballero-Gil, Amparo Fúster-Sabater. Analýza a implementace generátoru SNOW 3G používaného v systémech 4G/LTE  : [ eng. ] // Springer. - 2013. - Sv. 239.—Str. 499-508. ISBN 978-3-319-01854-6 . - doi : 10.1007/978-3-319-01854-6_51 .
  7. P.Ekdahl, T.Johansson, A.Maximov, J.Yang. Nová proudová šifra SNOW s názvem SNOW-V  : [ eng. ] // ToSC. - 2019. - Sv. 2019, č. 3. - S. 1-42. - doi : 10.13154/tosc.v2019.i3.1-42 .
  8. Philip Hawkes, Gregory G. Rose. Hádej a urči útoky na SNOW  : [ eng. ] // Springer. - 2002. - Sv. 2595.—S. 37–46. - doi : 10.1007/3-540-36492-7\_4 .
  9. Dai Watanabe, Alex Biryukov, Christophe De Cannière. Výrazný útok SNOW 2.0  s metodou lineárního maskování ] // Springer. - 2003. - Sv. 3006. - S. 222-233.
  10. ISO/IEC 18033-4:2011  : Informační technologie - Bezpečnostní techniky - Šifrovací algoritmy - Část 4: Streamové šifry : ] . - 2. - Mezinárodní organizace pro normalizaci (ISO), 2011. - 92 s.
  11. Specifikace UEA2 & UIA2  ( 16. března 2009). Získáno 13. listopadu 2020. Archivováno z originálu dne 19. ledna 2022.