FAZOLE

BEAN  je symetrický algoritmus synchronního šifrování toku založený na algoritmu Grain . Jedná se o zástupce tzv. „lightweight“ šifer, to znamená, že jsou zaměřeny na hardwarovou implementaci uvnitř zařízení s omezeným výpočetním výkonem, nízkou pamětí a nízkou spotřebou energie (například RFID tagy nebo senzorové sítě ). Byl navržen v roce 2009 Navi Kumar , Srikanta Oiha , Kritika Jain a Sangita Lal [1] .

Popis

V symetrických proudových algoritmech dochází k šifrování (nebo dešifrování) pomocí gama , to znamená "překrytí" náhodné sekvence bitů (gama) na holém textu (nebo šifrovaném textu). "Překryv" odkazuje na operaci XOR na gama a textových bitech. Herní sekvence, které se také říká keystream (key stream), se získává pomocí generátorů pseudonáhodných čísel [2] .

Stejně jako Grain se BEAN skládá ze dvou 80bitových posuvných registrů a výstupní funkce. Ale zatímco Grain používá jeden registr lineární zpětné vazby (LFSR) a jeden registr nelineární zpětné vazby (NFSR), BEAN používá dva posuvné registry s přenosovou zpětnou vazbou (FCSR) [3] . LFSR se používá v Grain pro větší období sekvence a NFSR pro nelinearitu. FCSR v BEAN kombinuje obě tyto vlastnosti a přitom zůstává kompaktní na hardwarové úrovni [4] .

V obou registrech je další bit, který se má zapsat, roven součtu modulo 2 všech odboček buněk registru. Taková implementace se nazývá Fibonacciho konfigurace . Zatímco v Grain jsou registry implementovány podle konfigurace Galois , to znamená, že poslední 79. bit je zapsán beze změny na 0. místo a součet modulo 2 předchozí th a tap 79. buňky je zapsán do každého dalšího th. buňka [5] .

Registry FCSR

Oba registry jsou dlouhé 80 bitů. Označme je jako FCSR-I a FCSR-II a jejich stavy na -tém cyklu jako [6] :

FCSR-I

Zpětnovazební funkce FCSR-I je dána primitivním polynomem 80. stupně [7] :

to znamená, že aktualizace stavu FCSR-I v dalším cyklu vypadá takto [6] :

FCSR II

Podobně pro FCSR-II je funkce zpětné vazby [8] :

Aktualizace stavu [6] :

Výstupní funkce

Pro generování gama se používá booleovská funkce . Autoři algoritmu jej nastavili pomocí S-boxu , který jako vstup bere 6 bitů (2 bity definují řádek a 4 bity definují sloupec) a vrací slovo o 4 bitech [9] . Ale protože je ze slova převzat pouze poslední bit, lze jej reprezentovat jako Zhegalkinův polynom [6] :

Gamma bity se nacházejí následovně [10] :

V jednom cyklu jsou tedy generovány dva bity najednou.

Inicializace stavu

Inicializace probíhá načtením 80bitového klíče do registrů FCSR-I a FCSR-II:

Nosné registry jsou inicializovány na nulu: .

Poté FCSR provede 81 nečinných cyklů, po kterých začne generování gama [11] .

Výkon

BEAN vytváří dobrou rovnováhu mezi bezpečností, rychlostí a náklady na implementaci. Grain může generovat dva gama bity na takt pomocí dalšího hardwaru. Zatímco BEAN se s tímto úkolem vypořádá bez dalšího vybavení [12] .

Podle autorů algoritmu [13] je generování bitů pomocí BEAN v průměru 1,5krát rychlejší než pomocí Grain a spotřeba paměti je snížena o 10 %.

Zabezpečení

Důležitým cílem při vývoji kryptografického algoritmu je dosáhnout lavinový efekt , který spočívá v tom, že když se změní jeden bit klíče (prostý text), změní se alespoň polovina bitů gama (šifrového textu). Pro srovnání BEAN a Grain bylo odebráno 1 000 000 náhodných 80bitových klíčů a 80 bitů gama bylo vygenerováno pro každý klíč pomocí obou algoritmů. Podle autorů v BEANu pro 65,3 % klíčů vyhovují přijaté bity podmínkám lavinového efektu, zatímco v Grain je tento podíl 63,1 % [11] .

Algoritmus byl také testován na statistických testech NIST , které neukázaly odchylku generovaného klíčového proudu od náhodné sekvence [14] .

V roce 2011 Martin Agren a Martin Hell ve svém článku poukázali na neoptimálnost inferenční funkce. Navrhli účinný diskriminační algoritmus pro BEAN, stejně jako algoritmus pro obnovení klíče , který je poněkud rychlejší než vyčerpávající vyhledávání ( vs. vyčerpávající vyhledávání v navrhovaném algoritmu ) a není náročný na paměť [15] .

V roce 2013 stejní autoři ve spolupráci s Hui Wongem a Thomasem Johanssonem objevili nové korelace mezi klíčovými bity a gama bity, které vedly k ještě účinnějšímu algoritmu útoku na obnovu klíče ( ). Kromě toho byla navržena některá vylepšení FCSR a také účinnější funkce odvození, které jsou odolné vůči známým metodám útoku [16] .

Aplikace

Stejně jako mnoho „odlehčených“ kryptografických algoritmů může BEAN najít uplatnění v RFID značkách, bezdrátových senzorových sítích a také ve vestavěných systémech [17] .

Poznámky

  1. Kumar, 2009 .
  2. Kostelní dům, 2002 .
  3. Kumar, 2009 , Obrázek 1, s. 169.
  4. Klapka, 1993 .
  5. Goresky, 2002 .
  6. 1 2 3 4 Agren, 2011 , str. 23.
  7. Kumar, 2009 , Rovnice 1, str. 169.
  8. Kumar, 2009 , Rovnice 3, str. 169.
  9. Kumar, 2009 , Tabulka 1, str. 170.
  10. Agren, 2011 , Rovnice 5, 6, str. 23.
  11. 1 2 Kumar, 2009 , s. 170.
  12. Manifavas, 2016 , str. 338.
  13. Kumar, 2009 , str. 171.
  14. Kumar, 2009 , Tabulka 3, str. 170.
  15. Agren, 2011 , str. 24.
  16. Wang, 2013 .
  17. Manifavas, 2016 .

Literatura

Odkazy