náhled|Kryptoprocesor Western Electric 229G Bezpečný kryptoprocesor je specializovaný počítač na čipu nebo mikroprocesor pro provádění kryptografických operací, zabudovaný v pouzdře s několika fyzickými bezpečnostními opatřeními, která mu poskytují určitý stupeň odolnosti proti neoprávněné manipulaci. Na rozdíl od kryptografických procesorů, které odesílají dešifrovaná data po sběrnici v zabezpečeném prostředí, zabezpečený kryptoprocesor neprodukuje dešifrovaná data ani dešifrované programové instrukce v prostředí, kde nelze vždy zachovat bezpečnost.
Účelem zabezpečeného kryptoprocesoru je fungovat jako klíčový kámen bezpečnostního subsystému, čímž eliminuje potřebu chránit zbytek subsystému fyzickými bezpečnostními opatřeními.
Příklady
Hardwarový bezpečnostní modul (HSM) obsahuje jeden nebo více zabezpečených kryptoprocesorových čipů. Tato zařízení jsou vysoce kvalitně zabezpečené kryptoprocesory používané v podnikových serverech. Hardwarový bezpečnostní modul může mít více úrovní fyzického zabezpečení s jednočipovým kryptoprocesorem jako jeho nejbezpečnější součástí. Kryptoprocesor neodhaluje klíče ani spustitelné instrukce na sběrnici, s výjimkou šifrované formy, a klíče vynulují pokusy o sondování nebo skenování. Kryptoměnový čip (čipy) může (mohou) být také zapouzdřen (zalit) v hardwarovém bezpečnostním modulu s dalšími procesory a paměťovými čipy, které ukládají a zpracovávají šifrovaná data. Jakýkoli pokus o odstranění zapouzdření způsobí vynulování klíčů v kryptoměnovém čipu. Hardwarový bezpečnostní modul může být také součástí počítače (například bankomatu), který pracuje uvnitř uzamčeného trezoru, aby zabránil krádeži, záměně a manipulaci.
Moderní čipové karty jsou pravděpodobně nejrozšířenější formou zabezpečeného kryptoprocesoru, ačkoli složitější a všestrannější zabezpečené kryptoprocesory jsou široce používány v systémech, jako jsou bankomaty, televizní set-top boxy, vojenské aplikace a vysoce zabezpečená přenosná komunikační zařízení. Některé zabezpečené kryptoprocesory mohou dokonce v rámci svého zabezpečení spouštět univerzální operační systémy, jako je Linux. Kryptoprocesory vstupují programové instrukce v zašifrované podobě a dešifrují je na prosté instrukce, které jsou poté prováděny ve stejném kryptoprocesorovém čipu, kde jsou dešifrované instrukce nepřístupně uloženy. Tím, že kryptoprocesor nikdy neodhalí dešifrované programové instrukce, zabraňuje manipulaci s programy techniky, kteří mohou mít legitimní přístup k datové sběrnici subsystému. Toto je známé jako šifrování sběrnice. Data zpracovávaná kryptoprocesorem jsou také často šifrována.
Trusted Platform Module (TPM) je implementace zabezpečeného kryptoprocesoru, který přináší koncept důvěryhodných výpočtů do běžných počítačů tím, že umožňuje bezpečné prostředí. Současné implementace TPM se zaměřují na zajištění odolného bootovacího prostředí proti neoprávněné manipulaci a na trvalé a proměnlivé šifrování úložiště.
K dispozici jsou také bezpečnostní čipy pro vestavěné systémy, které poskytují stejnou úroveň fyzické ochrany klíčů a dalšího tajného materiálu jako procesor čipových karet nebo TPM, ale v menším, méně složitém a levnějším provedení. Často se označují jako kryptografická autentizační zařízení a používají se k ověřování periferních zařízení, příslušenství a/nebo spotřebního materiálu. Stejně jako TPM se obvykle jedná o hotové integrované obvody určené k zabudování do systému, obvykle připájené k desce plošných spojů.
Funkce Bezpečnostní opatření používaná v zabezpečených kryptoprocesorech:
Detekce neoprávněné manipulace a zabezpečení proti neoprávněné manipulaci. Vodivé stínicí vrstvy v čipu, které zabraňují čtení vnitřních signálů. Řízené provádění, aby se zabránilo odhalení tajných informací v důsledku časových zpoždění. Automatické nulování tajných dat v případě neoprávněné manipulace. Zavaděč řetězce důvěryhodnosti, který před spuštěním ověřuje operační systém. Operační systém s řetězcem důvěryhodnosti, který ověřuje aplikační software před jeho načtením. Hardwarové registry schopností implementující jednosměrný model oddělení privilegií.
Stupeň zabezpečení Bezpečné kryptoprocesory, ačkoli jsou užitečné, nejsou nezranitelné vůči útokům, zejména pokud jde o dobře vybavené a odhodlané protivníky (např. vládní zpravodajskou službu), kteří jsou ochotni na projekt vynaložit dostatek zdrojů.
Jeden útok na zabezpečený kryptoprocesor byl zaměřen na IBM 4758. Tým z Univerzity v Cambridge oznámil úspěšnou extrakci tajných informací z IBM 4758 pomocí kombinace matematiky a speciálního hardwaru pro lámání kódů. Tento útok však nebyl praktický v reálných systémech, protože vyžadoval, aby útočník měl plný přístup ke všem funkcím API zařízení. Běžné a doporučené postupy používají integrovaný systém řízení přístupu k rozdělení oprávnění, takže nikdo nemohl útok provést jednotlivě.
Ačkoli zneužitá zranitelnost spočívala v chybě v softwaru nahraném v čipu 4758, a nikoli v samotné architektuře čipu 4758, jejich útok slouží jako připomínka toho, že bezpečnostní systém je jen tak bezpečný, jako jeho nejslabší článek: silný článek hardwaru čipu 4758 tak byl zneužit kvůli chybám v návrhu a specifikaci softwaru, který byl v něm nahraný.
Čipové karty jsou výrazně zranitelnější, protože jsou náchylnější k fyzickému útoku. Hardwarové zadní vrátka mohou navíc ohrozit bezpečnost čipových karet a dalších kryptoměnových procesorů, pokud se neinvestuje do metod návrhu proti zadním vrátkům.
V případě aplikací pro šifrování celého disku, zejména pokud jsou implementovány bez bootovacího PIN kódu, by kryptoprocesor nebyl chráněn proti útoku typu studený boot pokud by bylo možné zneužít remanenci dat k vypsání obsahu paměti poté, co operační systém načte kryptografické klíče ze svého TPM.
Pokud jsou však všechna citlivá data uložena pouze v paměti kryptoprocesoru a nikoli v externím úložišti, a kryptoprocesor je navržen tak, aby nebyl schopen odhalit klíče nebo dešifrovaná či nešifrovaná data na kontaktních ploškách čipu nebo pájených kontaktech, pak by tato chráněná data byla přístupná pouze sondováním čipu kryptoprocesoru po odstranění veškerého obalu a kovových ochranných vrstev z čipu kryptoprocesoru. To by vyžadovalo jak fyzické vlastnictví zařízení, tak dovednosti a vybavení nad rámec možností většiny technického personálu.
Jiné metody útoku zahrnují pečlivou analýzu časování různých operací, které se mohou lišit v závislosti na tajné hodnotě (která se může lišit podle složitosti a/nebo náročnosti operace), nebo mapování spotřeby proudu v závislosti na čase za účelem identifikace rozdílů ve způsobu, jakým jsou interně zpracovávány bity „0“ oproti bitem „1“. Útočník může také použít teplotní extrémy, nadměrně vysoké nebo nízké taktovací frekvence nebo napájecí napětí, které překračuje specifikace, aby vyvolal chybu. Vnitřní návrh kryptoprocesoru lze upravit tak, aby se těmto útokům zabránilo.
Některé zabezpečené kryptoprocesory obsahují dvě procesorová jádra a v případě potřeby generují nepřístupné šifrovací klíče, takže i když je obvod zpětně analyzován, neodhalí žádné klíče potřebné k bezpečnému dešifrování softwaru spuštěného ze šifrované flash paměti nebo komunikovaného mezi jádry.
První návrh jednočipového kryptoprocesoru byl určen pro ochranu proti kopírování softwaru osobních počítačů (viz americký patent 4 168 396 z 18. září 1979) a byl inspirován Otevřeným dopisem Billa Gatese amatérům.
Dějiny Hardwarový bezpečnostní modul (HSM), typ bezpečného kryptoprocesoru, byl vynalezen egyptsko-americkým inženýrem Mohamedem M. Atallou v roce 1972. Vynalezl vysoce zabezpečený modul s názvem „Atalla Box“, který šifroval PIN a zprávy z bankomatů a chránil offline zařízení pomocí neuhádnutelného klíče generujícího PIN. V roce 1972 podal patent na toto zařízení. V témže roce založil společnost Atalla Corporation (nyní Utimaco Atalla) a v následujícím roce komerčně prodal „Atalla Box“ oficiálně jako systém Identikey.https://books.google.com/books?id=fB-Te8d5hO8C&pg=PA49 Jednalo se o systém čtečky karet a identifikace zákazníků, který se skládal z konzole čtečky karet, dvou PIN klávesnic zákazníků, inteligentního ovladače a vestavěného elektronického rozhraní. Umožňoval zákazníkovi zadat tajný kód, který zařízení pomocí mikroprocesoru transformuje na jiný kód pro pokladníka.https://books.google.com/books?id=3u9H-xL4sZAC&pg=PA3 Během transakce bylo číslo účtu zákazníka přečteno čtečkou karet. Byl to úspěch a vedl k širokému používání vysoce bezpečnostních modulů.
V obavě, že Atalla bude dominovat trhu, začaly banky a společnosti vydávající kreditní karty v 70. letech 20. století pracovat na mezinárodním standardu. Systém IBM 3624, uvedený na trh koncem 70. let, používal podobný proces ověřování PINem jako dřívější systém Atalla. Atalla byla jedním z prvních konkurentů IBM na trhu bankovní bezpečnosti.
Na konferenci Národní asociace vzájemných spořitelen (NAMSB) v lednu 1976 společnost Atalla představila vylepšení svého systému Identikey s názvem Interchange Identikey. Ten přidal možnosti zpracování online transakcí a zabezpečení sítě. Systém Identikey, navržený s cílem převést bankovní transakce online, byl rozšířen na provoz se sdílenými zařízeními. Byl konzistentní a kompatibilní s různými přepínacími sítěmi a byl schopen se elektronicky resetovat na kterýkoli z 64000 nevratných nelineárních algoritmů podle pokynů na základě informací o datech karty. Zařízení Interchange Identikey bylo uvedeno na trh v březnu 1976. Později, v roce 1979 společnost Atalla představila první procesor zabezpečení sítě (NSP). Produkty HSM společnosti Atalla chrání 250milionů transakcí kartou denně od roku 2013 a od roku 2014 zajišťovaly většinu transakcí bankomatů na světě.
Odkazy
Reference
Literatura Ross Anderson, Mike Bond, Jolyon Clulow and Sergei Skorobogatov, Cryptographic Processors — A Survey, April 2005 (PDF) R. Elbaz, et al., Hardware Engines for Bus Encryption — A Survey, 2005 (PDF)
Související články Secure element Počítačová bezpečnost Hardwarová akcelerace Akcelerátor SSL/TLS Čipová karta Trusted Computing Trusted Platform Module Titan M
Externí odkazy Robert M. Best, US Patent 4,278,837, July 14, 1981 David Lie, Execute Only Memory, Extracting a 3DES key from an IBM 4758 J. D. Tygar and Bennet Yee, A System for Using Physically Secure Coprocessors, Dyad
Kategorie:Kryptografie Kategorie:Řízení přístupu Kategorie:Údržba:Články s nekontrolovanými překlady