Náhodná data jako zdroj bezpečí v RFC 4086
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Náhodná data jako zdroj bezpečí v RFC 4086Náhodná data jako zdroj bezpečí v RFC 4086

 

Náhodná data jako zdroj bezpečí v RFC 4086

Google       Google       3. 8. 2006       7 067×
Reklama
Reklama

Perfektní bezpečnost je samozřejmě jen těžko dosažitelná, přesto současné algoritmy nabízejí poměrně spolehlivý stupeň utajení – ať už v podobě obligátního šifrování, steganografie, nebo dalších technik. Základem bezpečnosti se v mnoha případech stávají dostatečně náhodná data, jejichž pořízení nemusí být vždy až tak jednoduché. Ucelené informace o snadno dostupných zdrojích entropie, jejich využití i (pseudo) náhodných číslech shrnuje RFC s pořadovým číslem 4086 a výmluvným názvem Randomness Requirements for Security.

Kolik náhody je zapotřebí?

Současný návrh kryptografického softwaru velice často trpí nedostatkem zdrojů náhodných dat, což představuje velký problém pro celou navazující oblast bezpečnosti. Nemálo bezpečnostních systémů je totiž pouze natolik bezpečných jako generování odpovídajících tajných a zároveň náhodných parametrů. Za použití pseudonáhodných postupů pro generování tajných veličin je možné dospět až do kritické situace nežádané „pseudobezpečnosti“.

Požadavky na náhodné veličiny se odvíjejí od povahy konkrétní kryptografické funkce. Například klasický algoritmus RSA požaduje unikátní náhodné veličiny pouze při prvotním generování nové dvojice šifrovacích klíčů, s jejichž pomocí v budoucnu může být podepsáno libovolné množství zpráv. Naproti tomu algoritmus DSS si vynucuje použití náhodných veličin při každém podpisu a konečně perfektní „one-timepad“ vyžaduje náhodnost během celého průběhu šifrování původní zprávy.

Další problém je v kvantifikaci dostatečné entropie, tedy kolik náhodnosti je a do budoucna ještě bude zapotřebí. Pohledem na současné počítače lze nalézt několik poměrně (za určitých okolností) spolehlivých zdrojů náhodnosti, které pokrývají například data získaná ze zvukových a video zařízení, rotujících pevných disků apod.

V hlavní roli hardware i software

Podle odkazovaného RFC 4086 je možné ze zvukového vstupu získat náhodná data analýzou dat bez připojeného vstupního zařízení, tedy například zachytáváním a následnou digitalizací analogového zvukového vstupu bez zapojeného mikrofonu. Podobná situace nastává také v případě video vstupu, kdy lze použít a dále zpracovat obraz z objektivu cloněného nepropustnou krytkou. V obou případech se jedná o zdroj potenciálně náhodných dat, nicméně je zapotřebí ověřit jejich korektnost – entropie může být ovlivněna chybou hardwaru, vlivem vnějšího prostředí a dalšími okolnostmi.

Běžný počítačový hardware však poskytuje také celou řadu dalších unikátních informací, jež ale nemusejí být natolik náhodné, jak se na první pohled zdá. Kupříkladu odvozování jakýchkoli dalších „náhodných“ dat z MAC adresy síťového adaptéru není zdaleka nepředvídatelné – pokud obchodní společnost bude zároveň vyrábět síťové adaptéry i celé počítačové sestavy, dá se předpokládat, že do druhého artiklu vhodně zařadí svůj prvně jmenovaný produkt. Tím se na určitých sestavách značně snižuje náhodnost spektra dat získaných z informací síťové karty.

Svět entropie samozřejmě není a ani nemůže být živ z čistě hardwarových zdrojů dat. Asi každý pokročilý koncový uživatel si již setkal s výzvou softwaru o co možná nejnáhodnější pohyb myší nebo psaní na klávesnici. Jedná se o efektivní využití běžné interakce počítač-uživatel, která může přinést požadované ovoce. Bohužel zde platí známá pravda, že uživateli může být výrazně doporučováno, nikoliv striktně přikazováno, takže náhodnost závisí čistě na spolehlivosti lidského faktoru.

Náhodně napříč platformami

Pokud nelze zajistit zdroj dostatečně náhodných dat, přichází na řadu výpomoc v podobě takzvané mixující funkce. Opět s odkazem na původní RFC 4086 ji lze definovat jako funkci, která zachovává jakoukoli entropii obsaženou v libovolném z původních zdrojů, při silnějším požadavku pak na výstupu dává nelineární kombinaci všech vstupů. Jinými slovy se dá říct, že změna jednoho vstupního bitu zajistí změnu kolem poloviny výstupních bitů, přičemž nelze předpovědět korespondenci mezi změnou a výstupem. Za jeden z příkladů mixujících funkcí lze zvolit třeba kryptografický standard AES či některé hashovaní funkce. Jakmile je k dispozici dostatečně kvalitní zdroj náhodných dat, lze je použít jako takzvané semínko (seed) pro další generování.

Například Americký DoD pro tvorbu hesel doporučuje použití DES v módu OFB (Output Feedback), kdy je prvotní inicializační vektor vytvořen z aktuálních systémových hodnot (datum, čas, identifikátor uživatele atd.). Poté je podobným způsoben určen klíč, například z hodnot registrů přerušení či systémových čítačů. Konečně jako otevřený text do celého šifrovacího soukolí vstupuje 64 bitů, které mohou odpovídat 8 osmibajtovým znakům napsaným na klávesnici.

Z dalších příkladů generátorů stojí za zmínku třeba unixový /dev/random, který svou nepředvídatelnost staví na událostech zpracovávaných jádrem. Jedná se tak o přerušení při stisku kláves, zápis na disk, pohyb myší apod. Na platformě Windows zdroj náhodnosti představuje CryptAPI, které uchovává semínko spojené s každým uživatelem. Při zavolání konkrétní funkce CryptGenRandom je toto semínko spojeno s aktuálními hodnotami, kterými mohou být identifikátory procesu, vlákna, obsah paměti apod.

Generování náhodných dat představuje velkou výzvu a na jeho spolehlivosti ve velké míře závisí bezpečnost celého softwaru. Za použití hardwarových zdrojů je nutné brát v úvahu možné poruchy, aktuální prostředí provozu a nezanedbávat testování. V případě softwarového řešení velká část generování spadá na bedra aktuálních hodnot systémových proměnných, stejně tak interakce s uživatelem. Pokud už se podaří získat dostatečně náhodná data, nic nebrání jejich použití v kryptografických algoritmech a budování zase o něco bezpečnějšího softwaru.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Lukáš ChurýLukáš je šéfredaktorem Programujte, vyvíjí webové aplikace, fascinuje ho umělá inteligence a je lektorem na FI MUNI, kde učí navrhovat studenty GUI. Poslední dobou se snaží posunout Laser Game o stupeň výše a vyvíjí pro něj nové herní aplikace a elektroniku.
Web     Twitter     Facebook     LinkedIn    

Nové články

Obrázek ke článku Nový IT hráč na českém trhu

Nový IT hráč na českém trhu

V roce 2015 otevřela v Praze na Pankráci v budově City Tower své kanceláře společnost EPAM Systems (NYSE:EPAM), jejíž centrála se nachází v USA. Společnost byla založená v roce 1993 a od té doby prošla velkým vývojem a stále roste.

Reklama
Reklama
Obrázek ke článku České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace (CRA) pořádají druhý ročník CRA IoT Hackathonů. Zájemci z řad vývojářů a fanoušků moderních technologií mohou změřit své síly a během jediného dne sestrojit co nejzajímavější funkční prototyp zařízení, které bude komunikovat prostřednictvím sítě LoRa. CRA IoT Hackathony se letos uskuteční ve dvou fázích, na jaře a na podzim, v různých městech České republiky. Jarní běh se odstartuje 31. března v Brně a 7. dubna v Praze.

Obrázek ke článku Cloud computing je využíván stále intenzivněji

Cloud computing je využíván stále intenzivněji

Využívání cloud computingu nabývá na intenzitě. Jen v letošním roce vzroste podle analytiků trh se službami veřejného cloudu o 18 %, přičemž o téměř 37 % vzrostou služby typu IaaS. Růst o více než pětinu pak čeká služby poskytování softwaru formou služby, tedy SaaS. Aktuálním trendům v oblasti využívání cloudu se bude věnovat konference Cloud computing v praxi, která se koná 23. března. 2017 v pražském Kongresovém centru Vavruška na Karlově náměstí 5.

Reklama autora

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý