Útok na spotřebu energie

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 26. července 2015; kontroly vyžadují 7 úprav .

V kryptografii je energetický útok formou útoku postranním kanálem , ve kterém kryptoanalytik zkoumá spotřebu energie zařízení, které provádí kryptografické úkoly (jako je čipová karta , černá skříňka odolná proti neoprávněné manipulaci, integrovaný obvod atd.). Pomocí takového útoku je možné ze zařízení vytáhnout kryptografické klíče nebo jiné tajné informace, aniž by to bylo přímo ovlivněno.

Jednoduchý útok na spotřebu energie ( angl.  Simple Power Analysis , SPA ) znamená vizuální analýzu grafů elektrické aktivity zařízení v čase.

Útok DPA ( Differential Power Analysis ) je  pokročilejší typ útoku, pomocí kterého je kryptoanalytik schopen vypočítat mezihodnoty používané v kryptografickém algoritmu statistickou analýzou dat shromážděných během výpočtu několika kryptografických operací. SPA a DPA byly poprvé představeny v roce 1998 kryptografy Paulem Kocherem , Joshuou Jaffem a Benjaminem Junem . [jeden]

Typy útoků

Jednoduchý útok na spotřebu energie

Jednoduchý útok na spotřebu energie je útok postranním kanálem, při kterém se provádí vizuální analýza závislosti proudu / energie spotřebované zařízením na čase. K odchylkám ve spotřebě energie dochází, když zařízení provádí různé operace a sekvence akcí. Například různé instrukce prováděné mikroprocesorem mají různý vliv na spotřebu energie. V grafu spotřeby energie v závislosti na čase odebraném z čipové karty s algoritmem DES lze tedy jasně rozlišit 16 kol šifrování. Podobně lze operace výpočtu druhé mocniny čísla a operace násobení v implementacích algoritmu RSA od sebe vizuálně oddělit, což otevírá možnost obnovení tajného klíče. I při malém rozdílu ve spotřebě energie jsou standardní digitální osciloskopy schopny zobrazit odchylky způsobené rozdíly ve zpracovávaných datech. Frekvenční filtry a funkce průměrování, které jsou k dispozici v moderních osciloskopech, se často používají k odfiltrování vysokofrekvenčních složek, které ruší analýzu. Jednou z hlavních nevýhod tohoto útoku je jeho značná závislost jak na implementaci kryptografického algoritmu, tak na zařízení, které jej provádí, bez možnosti automatizace procesu analýzy pro obecný případ. [2]

Výkonový diferenciální útok

Útok s rozdílem výkonu je útok postranního kanálu, který provádí statistickou analýzu měření spotřeby energie kryptosystému. Útok využívá údaje o odchylkách spotřeby energie mikroprocesoru nebo jiného zařízení získané při provádění operací souvisejících s tajným klíčem. Výkonový diferenciální útok zahrnuje zpracování signálu a opravu chyb , což umožňuje získat tajné informace na základě měření obsahujících příliš mnoho šumu pro jednoduchý útok. Pomocí diferenciálního útoku je kryptoanalytik schopen odvodit tajné klíče analýzou měření spotřeby energie provedených během několika kryptografických operací prováděných zkoumaným zařízením. Na rozdíl od jednoduchého útoku není diferenciální útok tolik závislý na implementaci kryptosystému a je možné automatizovat proces útoku pro širokou škálu zařízení.

Výkonový diferenciální útok vysokého řádu

High -Order Differential Power Analysis ( HO - DPA ) je pokročilejší verze diferenciálního útoku. Diferenciální útok vyššího řádu poskytuje možnost použít více zdrojů měření a různé časové posuny v analýze. Tato verze útoku na spotřebu energie se používá méně často než konvenční diferenciální nebo jednoduché útoky, protože taková analýza je mnohem obtížnější a většina zařízení je hackována s menším úsilím pomocí konvenčních diferenciálních nebo jednoduchých útoků. [3]

Odolnost algoritmu vůči útoku

Power attack poskytuje způsob, jak nahlédnout dovnitř zařízení, které je odolné vůči vnějším vlivům. Například během plánovací fáze algoritmus DES otočí 28bitové klíčové registry . Mnoho implementací kontroluje nejméně významný bit registru pro "1". Pokud ano, pak se registr posune doprava a na konec registru se přidá "1". Jinak se registr posune bez přidání "1". Útok na spotřebu energie dokáže tyto procesy rozlišit a otevírá tak možnost obnovení tajného klíče. Nedostatečně robustní implementace algoritmů, jako je AES nebo 3-DES , které jsou považovány za matematicky stabilní, mohou být triviálně hacknuty pomocí útoků na spotřebu energie. Útoky na spotřebu energie tedy kombinují prvky algoritmické kryptoanalýzy a analýzy spolehlivosti implementace.

Požadované vybavení

Hardware potřebný pro útok na spotřebu energie je široce dostupný. Například většina digitálních osciloskopů má funkcionalitu potřebnou pro příjem dat pro zpracování a samotná data jsou obvykle zpracovávána na osobních počítačích. K dispozici jsou také komerční produkty určené pro testovací laboratoře. [4] Přestože moderní mikroprocesory pracují na frekvencích řádově 3 GHz , v některých situacích postačí pro úspěšnou analýzu měřicí přístroje se vzorkovací frekvencí řádově desítky kHz. [5] Zdrojem signálu spotřeby energie může být buď proud v kanálu přenosu energie ze zdroje energie do zařízení (například v napájecím kabelu), nebo napětí na povrchu pouzdra, napětí na různých rozhraních ( USB , síťový vstup, VGA atd.) a dokonce i elektromagnetické záření .

Protiopatření

V oblastech, kde se kryptografická zařízení mohou dostat do rukou kryptoanalytika, je odolnost vůči útokům na spotřebu energie jedním z hlavních systémových požadavků. Útok na spotřebu energie nemůže být obecně detekován kryptografickým zařízením, protože kryptoanalytik se obvykle chová pasivně. Kromě toho takové útoky přímo neovlivňují systém. V důsledku toho je detekce útoků neefektivní. Místo toho musí návrháři kryptosystémů zajistit, aby kolísání spotřeby energie a procesy probíhající v systému byly nezávislé. Jednoduchý útok na spotřebu energie je schopen libovolně rozlišit výsledek operace podmíněné větve, protože zařízení dělá různé věci (a tedy spotřebovává různou energii) v závislosti na směru větve. Proto je třeba zajistit, aby se tajné hodnoty nepodílely na určování směru podmíněných skoků při implementaci algoritmu. Jiné zdroje kolísání energie, jako jsou rozdíly v mikrokódu, skoky generované kompilátorem, různá spotřeba energie při operacích násobení, také často vedou ke zranitelnosti vůči jednoduchému útoku na spotřebu energie. Útoku s rozdílem výkonu je obtížnější zabránit, protože i malé kolísání spotřeby energie může vést ke zranitelnosti. Některé strategie protiopatření používají modifikace algoritmu tak, že kryptografické operace jsou prováděny na datech spojených s reálnými hodnotami prostřednictvím nějaké matematické transformace, která je zachována při provádění kryptografické operace. Jeden přístup zahrnuje míchání parametrů za účelem zavedení náhodnosti do jejich hodnot. Jiné strategie znamenají modifikaci hardwaru: změna frekvence mikroprocesoru se používá jako měřítko desynchronizace elektrických signálů, což zase vedlo ke zlepšení klasického algoritmu výkonového diferenciálního útoku. [6] [7]

Viz také

Poznámky

  1. P. Kocher, J. Jaffe, B. Jun, „ Analýza diferenciálního výkonu archivovaná 24. srpna 2009 na Wayback Machine “, technická zpráva, 1998; později publikované v Advances in Cryptology - Crypto 99 Proceedings, Lecture Notes In Computer Science Vol. 1666, M. Wiener, ed., Springer-Verlag, 1999.
  2. Michael Tunstall, " Útoky na čipové karty archivované 23. září 2015. »
  3. Paul Kocher, Joshua Jaffe, Benjamin Jun, „ Úvod do diferenciální analýzy výkonu a souvisejících útoků (1998) archivováno 20. dubna 2009 na Wayback Machine
  4. Pracovní stanice DPA . Datum přístupu: 12. prosince 2014. Archivováno z originálu 7. února 2009.
  5. Daniel Genkin, Itamar Pipman, Eran Tromer, „ Dej ruce pryč od mého notebooku: Útoky na extrahování klíčů z fyzického postranního kanálu na PC Archivováno 16. srpna 2014 na Wayback Machine
  6. Xavier Charvet, Herve Pelletier, „ Zlepšení útoku DPA pomocí waveletové transformace (2005) Archivováno 4. března 2016 na Wayback Machine
  7. Jasper van Woudenberg, Mark Witteman, Bram Bakker „ Zlepšení analýzy diferenciálního výkonu pomocí elastického vyrovnání (2011)