V oblasti počítačových systémů se používají různé formy tajemství. Některá
tajemství vytváří člověk (hesla nebo PIN), jiná jsou generována nebo odvozována algoritmy
(kryptografické klíče). Přestože se s nimi setkáváme denně, jejich význam a správné použití
bývají často zaměňovány. Tento článek přináší stručný slovníček nejdůležitějších pojmů.?
Uvedená tajemství se zpravidla uchovávají způsobem, který je má odpovídajícím způsobem chránit.
Některé klíče zůstávají jenom dočasně uložené v paměti, jiné jsou uloženy buď jako soubory bez
ochrany nebo s nějakou vrstvou ochrany (například pomocí hesla). Jiné jsou uloženy na specializovaná
zařízení, jako jsou HSM (Hardware Security Module). V případě uložení pomocí software se zpravidla
používají formy databází hesel, nebo specializovaný software nazývaný KMS (Key Management Software).
Mezi těmito úrovněmi ochrany je velký rozdíl, který bude popsán v některém z dalších článků.
Tajemství (secret) je jakákoli informace, která musí zůstat neveřejná. Může jít o heslo, kryptografický klíč, soukromý klíč, API klíč nebo například obnovovací kód. Samotné tajemství ale nemusí být náhodné – typickým příkladem je heslo vytvořené člověkem. Kryptografická tajemství by však měla vznikat způsobem zajišťujícím vysokou náhodnost, nepředvídatelnost a dostatečnou entropii. K tomu se zpravidla používají KDF nebo CSPRNG. Termíny jako je náhodnost, nepředvídatelnost a entropie je možné vysvětlit jako:
Heslo (password) je tajemství vytvářené člověkem. Obvykle obsahuje slova, vzory nebo osobní informace, a proto mívá nižší entropii než stejně dlouhá náhodně generovaná hodnota. Heslo by se nemělo nikdy přímo používat jako kryptografický klíč. Naopak, heslo by mělo sloužit jako vstup, který se KDF (např. Argon2 nebo PBKDF2) převede na klíč vhodný pro kryptografické algoritmy.
Klíčová fráze je delší heslo složené z několika slov. Díky větší délce a počtu možných kombinací může poskytovat vyšší entropii při zachování dobré zapamatovatelnosti. Zároveň je možné do těchto slov cíleně zavést gramatické chyby nebo nahrazení, přidání či vypuštění některých znaků, případně skupin znaků. Tyto změny mohou zvýšit nepředvídatelnost, ale je nutné je používat s rozmyslem.
PIN (Personal Identification Number) je krátký autentizační údaj, obvykle o délce 4 až 6 číslic. Používá se například pro odemknutí telefonu, platební karty nebo hardwarového tokenu.
Klíčový materiál (key material) představuje soubor citlivých kryptografických dat používaných pro vytváření, odvozování, ukládání nebo používání klíčů. Patří sem například hlavní klíče, soukromé klíče, sdílená tajemství nebo seed. Může zahrnovat i některé pomocné hodnoty používané při práci s klíči.
Kryptografický klíč je binární hodnota používaná kryptografickým algoritmem. Na rozdíl od hesla není určen člověku, ale algoritmu. Klíče jsou zpravidla generovány kryptograficky bezpečným generátorem náhodných čísel (CSPRNG) nebo odvozovány pomocí KDF. V případě asymetrických klíčů je zde ještě požadavek na další matematické vlastnosti, generátor je tedy v tomto případě podstatně složitější.
Sdílený klíč je znám dvěma nebo více stranám. Používá se především v symetrické kryptografii k zajištění důvěrnosti a integrity dat.
Asymetrická kryptografie používá dvojici klíčů. Veřejný klíč lze bezpečně zveřejnit a používá se například pro šifrování nebo ověřování digitálních podpisů. Soukromý klíč musí zůstat tajný a slouží k dešifrování nebo vytváření digitálních podpisů. Mezi soukromým a veřejným klíčem je jednoduchý vztah, veřejný klíč se generuje ze soukromého. Mezi klíči tak vzniká matematická vazba.
Pár klíčů tvoří odpovídající veřejný a soukromý klíč. Ze soukromého klíče se odvozuje veřejný, mezi těmito členy páru je matematická vazba.
Hlavní klíč, ze kterého jsou odvozovány další kryptografické klíče. Pro odvození mohou být použity na vstupu další tajemství, jako je například Seed.
Klíč určený k šifrování jiných kryptografických klíčů. Používá se v místech, kde je pro snadnější správu vytvořena lokální databáze klíčů, tato databáze je šifrována pomocí KEK. Databáze klíčů je relativně malá, změnit její klíče je jednoduché. Naproti tomu změnit klíčový materiál pro všechny bloky dat by mohlo znamenat neúměrně vysoké výpočetní požadavky.
Klíč používaný k šifrování a následnému dešifrování uživatelských dat.
Počáteční hodnota, ze které lze deterministicky vytvářet další klíče. Sám seed obvykle neslouží přímo k šifrování.
Inicializační vektor upravující průběh šifrovacího algoritmu. Obvykle není tajný a musí splňovat požadavky konkrétního algoritmu.
Jednorázová hodnota (number used once). Obvykle není tajná, ale nesmí být znovu použita tam, kde to algoritmus nevyžaduje. V případě nonce je hezkou ukázkou možných dopadů nonce reuse u algoritmu AES-GCM, která v roce 2016 dovolovala dešifrovat část kryptograficky chráněných informací. Stejnou hrozbou je pak nonce reuse pro algoritmy ECDSA, kde v případě použití stejné nonce pro dva texty nebo dvou různých nonce pro jeden text je možné dopočítat privátní klíč.
Sůl (salt) je veřejná náhodná hodnota přidávaná k heslu před jeho zpracováním. Zabraňuje tomu, aby stejná hesla vytvářela stejné výsledky. Pepř (pepper) je dodatečné tajemství uchovávané odděleně od databáze hesel a poskytuje další vrstvu ochrany.
Algoritmus pro odvozování kryptografických klíčů z hesel nebo jiných klíčů. Moderní KDF (např. Argon2) záměrně zpomalují výpočet, čímž zvyšují odolnost proti útokům hrubou silou.
Hashovací funkce převádí vstupní data na otisk pevné délky. Používá se pro kontrolu integrity dat a spolu s KDF také při bezpečném ukládání hesel.
Cryptographically Secure Pseudo-Random Number Generator je kryptograficky bezpečný generátor pseudonáhodných čísel používaný pro vytváření klíčů, nonce a dalších kryptografických hodnot. Jedná se o algoritmus určený k vytváření posloupnosti bitů, která se pro praktické účely chová skutečně náhodně a nepředvídatelně, zároveň jeho chování vychází z počátačního nastavení. Takový generátor musí mít ještě další vlastnosti zvyšující bezpečnost. Těmi je odolnost vůči kompromitaci (to platí hlavně pro hardware generátory) a odolnost proti odvození inicializace z výstupu generátoru.
Tajemství je vhodné si nechat pro sebe. Ale popis jak se s tajemstvím nakládá mezi tato tajemství nepatří. Pokud tyto termíny nejsme schopní pochopit a používat, hrozí přešlapy, které mohou ve výsledku ohrozit bezpečný provoz kryptografie.
1. Úvodní ustanovení
1.1. Tyto všeobecné obchodní podmínky jsou, není-li ve smlouvě písemně dohodnuto jinak, nedílnou součástí všech smluv týkajících školení, pořádaných nebo poskytovaných školitelem, Jan Dušátko, IČ 434 797 66, DIČ 7208253041, se sídlem Pod Harfou 938/58, Praha 9, zapsané u Úřadu městské části Praha 9 (dále jen „školitel“).2. Vznik smlouvy přihlášením ke kurzu
2.1. Přihláškou se rozumí jednostranný úkon objednatele adresovaný školiteli prostřednictvím datové schránky s identifikací euxesuf, e-mailu na adresu register@cryptosession.cz nebo register@cryptosession.info, internetových stránek cryptosession.cz, cryptosession.info nebo kontaktním telefonem +420 602 427 840.3. Zánik smlouvy zrušením přihlášky
3.1. Přihláška může být objednatelem zrušena pomocí e-mailu, nebo pomocí datové schránky.4. Cena a platební podmínky
4.1. Odesláním přihlášky objednatel akceptuje smluvní cenu (dále jen účastnický poplatek) uvedenou u daného kurzu.5. Podmínky školení
5.1. Školitel je povinnen informovat objednatele 14 dní dopředu o místě a času školení, včetně termínu zahájení a ukončení denního programu.6. Reklamace
6.1. Pokud je účastník hrubě nespokojen s průběhem kurzu, je školitel o této informaci vyrozuměn.7. Autorská práva k poskytnutým materiálům
7.1. Školicí materiály poskytnuté školitelem v rámci konání školení splňují znaky autorského díla dle zákona č. 121/2000 Sb.8. Zodpovědnost
8.1. Školitel nepřebírá odpovědnost za nedostatky ve službách kterékoliv třetí strany, kterou využívá při školeních.9. Platnost podmínek
9.1 Tyto všeobecné obchodní podmínky jsou platné a účinné od 1. října 2024.Informace o sběru a zpravování osobních údajů
Zpracovatel Jan Dušátko (dále jen „Správce“), dle nařízení Evropského parlamentu a Rady (EU) č. 2016/679 o ochraně fyzických osob v souvislosti se zpracováním osobních údajů a o volném pohybu těchto údajů a o zrušení směrnice 95/46/ES (obecné nařízení o ochraně osobních údajů, dále jen „Nařízení“) zpracovává osobní údaje. Dále jsou rozepsané jednotlivé osobní údaje, které jsou součástí zpracování při konkrétních aktivitách u této webové prezentace a v rámci obchodního styku.Informace o záznamech přístupu na webovou prezentaci
Tento web nesbírá žádné cookies. Stránka nepoužívá ani žádné analytické scripty třetích stran (sociální sítě, cloud provideři). Z těchto důvodů je také nabízena volba pro zobrazení mapy formou odkazu, kde primárním zdrojem je OpenStreet a alternativy pak často používané Mapy společnosti Seznam, a.s., případně Google Maps společnosti Google LLC Inc. Využití jakéhokoliv z těchto zdrojů je zcela na libovůli uživatelů těchto stránek. Správce nenese odpovědnost za sběr dat realizovaný těmito společnostmi, neposkytuje jim data o uživatelích a na sběru dat nespolupracuje.Informace o kontaktování provozovatele stránek
Formulář pro kontaktování provozovatele stránek (správce) obsahuje následující osobní údaje: jméno, příjmení, e-mail. Tyto údaje jsou určeny jen a pouze pro tuto komunikaci, odpovídající oslovení uživatele a jsou udržovány po dobu nezbytnou k naplnění účelu, maximálně pak po dobu jednoho roku, pokud si uživatel neurčí jinak.Informace o objednávkovém formuláři
Pro případ zájmu o objednávku formulář obsahuje více údajů, tj. jméno, příjmení, e-mail a kontaktní údaje na organizaci. Tyto údaje jsou určeny jen a pouze pro tuto komunikaci, odpovídající oslovení uživatele a jsou udržovány po dobu jednoho roku, pokud si uživatel neurčí jinak. V případě, kdy na základě této objednávky dojde k uzavření obchodního vztahu, budou nadále správcem udržovány pouze informace vyžadované českými zákony na základě obchodních vztahů (název a adresa společnosti, číslo bankovního účtu, typ kurzu a jeho cena).Informace o dokumentu o absolovování kurzu
V rámci kurzu je vydán zpracovatelem dokument o absolovování kurzu. Tento dokument obsahuje následující údaje: jméno a příjmení studenta, název a datum absolovování kurzu a jméno zaměstnavatele. Uvedené informace se následně používají pro tvorbu lineárního stromu hashí (nemodifikovatelný záznam). Tato databáze obsahuje pouze informace o poskytnutých jménech a názvech společností, které mohou a a nemusí odpovídat realitě a je udržován zpracovatelem pro případné opětovné vystavení nebo ověření vydání dokumentu.Práva subjektu osobních údajů
Zákazník nebo návštěvník tohoto webu má možnost požádat o informace o zpracování osobních údajů, právo požadovat přístup k osobním údajům, případně právo požádat o opravu nebo výmaz veškerých dat, které by o něm byly vedeny. V případě výmazu tento požadavek není možné splnit pouze pokud se nejedná o data nezbytně nutná v rámci obchodního styku. Zákazník nebo návštěvník webu má dále právo na vysvětlení týkající se zpracování jeho osobních údajů, pokud tento zjistí nebo se domnívá, že zpracování je prováděno v rozporu s ochranou jeho soukromého a osobního života nebo v rozporu s platnými právními předpisy a právo požadovat odstranění takto vzniklého stavu a zajištění nápravy.