Infrastruktura veřejného klíče ( PKI , anglicky PKI - Public Key Infrastructure ) - sada nástrojů (technických, materiálních, lidských atd.), distribuovaných služeb a komponent, společně sloužících k podpoře krypto úloh založených na soukromých a veřejných klíčích. PKI je založeno na použití kryptografického systému veřejného klíče a několika základních principech:
Asymetrické šifry začaly v New Directions in Modern Cryptography od Whitfielda Diffieho a Martina Hellmana , vydaném v roce 1976. Ovlivněni prací Ralpha Merkla na distribuci veřejného klíče navrhli metodu pro odvození tajných klíčů pomocí veřejného kanálu. Tato metoda exponenciální výměny klíčů, která se stala známou jako výměna klíčů Diffie-Hellman , byla první publikovanou praktickou metodou pro zavedení sdílení tajných klíčů mezi ověřenými uživateli kanálu. V roce 2002 Hellman navrhl nazvat algoritmus „Diffie-Hellman-Merkle“, čímž uznal Merkleův příspěvek k vynálezu kryptografie s veřejným klíčem. Stejné schéma bylo vyvinuto Malcolmem Williamsonem v 70. letech, ale bylo drženo v tajnosti až do roku 1997. Metoda distribuce veřejného klíče Merkle byla vynalezena v roce 1974 a publikována v roce 1978, také nazývaná Merkleova hádanka.
V roce 1977 vyvinuli vědci Ronald Rivest , Adi Shamir a Leonard Adleman z Massachusetts Institute of Technology šifrovací algoritmus založený na problému faktorizace - RSA . Systém byl pojmenován podle prvních písmen jejich příjmení (RSA - Rivest, Shamir, Adleman). Stejný systém vynalezl v roce 1973 Clifford Cocks, který pracoval ve Government Communications Center (GCHQ), ale tato práce byla vedena pouze v interních dokumentech centra, takže o její existenci se až do roku 1977 nevědělo. RSA se stal prvním algoritmem vhodným pro šifrování i elektronický podpis.
Hlavní úkoly systému informační bezpečnosti, které řeší infrastruktura správy veřejných klíčů:
Zjednodušeně řečeno, PKI je systém, jehož hlavní součástí je certifikační autorita a uživatelé, kteří mezi sebou komunikují pomocí certifikátů vydaných touto certifikační autoritou. Činnost infrastruktury správy veřejných klíčů je realizována na základě systémových předpisů. Infrastruktura veřejného klíče je založena na principech kryptografického systému s veřejným klíčem . Infrastruktura veřejných klíčů se skládá z certifikační autority , koncových uživatelů a volitelných součástí: registrační autority a síťového adresáře.
Hlavní funkce certifikačního centra:
Další funkce certifikačního centra:
Certifikát je elektronický dokument, který obsahuje elektronický klíč uživatele (veřejný klíč), informace o uživateli, který certifikát vlastní, elektronický podpis certifikační autority (CA), informace o platnosti certifikátu a další atributy. Certifikát nemůže být věčný, vždy obsahuje datum a čas začátku a konce jeho platnosti.
Důvody předčasného zrušení certifikátů:
Pár klíčů je sada dvou klíčů: soukromý klíč (soukromý klíč) a veřejný klíč (veřejný klíč). Tyto klíče jsou vytvořeny společně, vzájemně se doplňují (to, co je zašifrováno veřejným klíčem, lze dešifrovat pouze pomocí soukromého klíče a elektronický podpis vytvořený pomocí soukromého klíče lze ověřit pomocí veřejného klíče).
Dvojici klíčů vytváří buď certifikační autorita (certifikační autorita) na žádost uživatele, nebo uživatel sám pomocí speciálního softwaru. Uživatel požádá o certifikát a po proceduře identifikace uživatele mu CA vydá certifikát podepsaný touto certifikační autoritou. Elektronický podpis CA ukazuje, že tento certifikát byl vydán tímto centrem a nikým jiným.
Veřejný klíč zná každý, zatímco soukromý klíč je držen v tajnosti. Vlastník soukromého klíče jej vždy udržuje v tajnosti a za žádných okolností by neměl dovolit, aby se o něm dozvěděli vetřelci nebo jiní uživatelé. Pokud je soukromý klíč stále známý útočníkům, je považován za kompromitovaný , takže certifikát s veřejným klíčem, který je k němu přidružen, musí být odvolán. Pouze vlastník soukromého klíče může podepisovat data a také dešifrovat data, která byla zašifrována veřejným klíčem spojeným se soukromým klíčem vlastníka. Platný podpis zaručuje autorství informací a to, že informace nebyly během přenosu změněny. Podepisování kódu zaručuje, že tento software je skutečně vyroben uvedenou společností a neobsahuje škodlivý kód, pokud jej společnost deklaruje.
Váš vlastní soukromý klíč se používá k podepisování dat a k dešifrování dat přijatých od ostatních účastníků PKI. Veřejný klíč extrahovaný z certifikátu jiného účastníka Infrastruktury veřejného klíče lze použít k potvrzení správnosti elektronického podpisu tohoto účastníka a také k šifrování dat zasílaných tomuto účastníkovi. Proces šifrování využívající asymetrickou kryptografii je ve srovnání se symetrickými algoritmy pomalý, takže jeho použití k šifrování dat se nedoporučuje a ve skutečnosti se neprovádí v systémech, kde je čas kritickým faktorem. Při použití certifikátů veřejného klíče pro bezpečnou interakci s webovými stránkami (internetové obchody, banky) se certifikáty používají pouze k navázání zabezpečeného připojení; pro následnou výměnu informací se používají symetrické klíče zvolené stranami.
Jedním z klíčových konceptů PKI je elektronický podpis . V rámci tohoto článku jsou pojmy podpis, elektronický podpis (ES), digitální podpis a elektronický digitální podpis (EDS) zaměnitelné. Ve federálním zákoně Ruské federace č. 1 „O digitálním podpisu“ z roku 2001 existoval pouze koncept digitálního podpisu. Federální zákon Ruské federace č. 63 „O elektronickém podpisu“ z roku 2011 rozšířil pojem podpis. V souladu s článkem 5 „Druhy elektronických podpisů“ se rozlišuje prostý elektronický podpis a vylepšený elektronický podpis. V aktuálním článku a téměř ve všech literárních zdrojích o infrastruktuře veřejného klíče, jak v angličtině, tak v ruštině, je pojem podpis chápán jako silný elektronický podpis.
Elektronický podpis je výsledkem použití algoritmu elektronického podpisu pro hash dat (dokument/zpráva/soubor).
Pravost elektronického podpisu se ověřuje takto:
Mezi aplikace, které podporují PKI, patří: zabezpečený e-mail , platební protokoly, elektronické šeky, elektronická výměna informací, ochrana dat přes sítě IP , elektronické formuláře a dokumenty elektronického digitálního podpisu (ES).
Chcete-li získat certifikát, musíte kontaktovat certifikační autoritu. Než požádáte o certifikát, musíte se ujistit, že je tato CA akreditována v oblasti, kde ji bude držitel certifikátu používat. Chcete-li získat certifikát, musíte vygenerovat pár veřejného a soukromého klíče; toto provádí buď uživatel, nebo CA, v závislosti na politice certifikační autority nebo dohodách mezi klientem a CA.
Pro použití certifikátů (podepisování nebo ověřování podpisů) musí uživatel na používaný operační systém nainstalovat kryptografické nástroje, které podporují práci s těmito certifikáty a algoritmy elektronického podpisu.
Po obdržení certifikátu je potřeba jej nainstalovat do vašeho systému. Při použití operačního systému rodiny Windows lze certifikát po instalaci zobrazit prostřednictvím modulu snap-in „úložiště osobních certifikátů“ (Start -> Spustit -> certmgr.msc -> OK). Ve vlastnostech vidíte dobu platnosti certifikátu, kdo byl vydán, komu byl vydán, jeho unikátní číslo a další atributy. Aby klient mohl spolupracovat s certifikační autoritou, je nutné centrum zařadit do seznamu důvěryhodných. Po zařazení do tohoto seznamu je jakýkoli certifikát vydaný důvěryhodnou autoritou považován za důvěryhodný a jeho vlastník za důvěryhodného. Uživatelé si vyměňují certifikáty (takto se vyměňují veřejné klíče) a zahajují interakci.
V zásadě existuje 5 typů architektur PKI, tyto jsou:
V zásadě jsou PKI rozděleny do různých architektur podle následujících funkcí:
Pojďme se blíže podívat na každou z PKI architektur zvlášť.
1. Jednoduché PKIJak bylo uvedeno výše, nejjednodušší z architektur je architektura jedné CA. V tomto případě všichni uživatelé důvěřují jedné CA a vzájemně si korespondují. V této architektuře, pokud se útočník vydává za CA, stačí znovu vydat všechny vydané certifikáty a pokračovat v běžném provozu.
2. Hierarchická PKIHierarchická struktura je nejběžnější architekturou PKI. V tomto případě je celá struktura v čele s jedním Head CA, kterému všichni důvěřují a podřízené CA jsou mu podřízeny. Kromě této vedoucí CA je ve struktuře více CA, která je podřízena vyšší CA, ke které jsou zase přiřazeni případní uživatelé nebo podřízení CA. Konkrétním příkladem hierarchické PKI je podniková PKI. V hierarchickém PKI, i když se útočník vydával za CA, síť dál funguje bez něj, a když obnoví normální výkon, jednoduše znovu vstoupí do struktury.
3. Network PKISíťová architektura PKI je postavena jako důvěryhodná síť s mnoha certifikačními autoritami, které poskytují služby PKI a jsou propojeny prostřednictvím peer-to-peer, tedy vztahů peer-to-peer. Ale v tomto případě neexistuje jedna hlavní CA, které by všichni důvěřovali. V této architektuře všechny CA důvěřují sousedním CA a každý uživatel důvěřuje pouze CA, od které vydal certifikát. CA si navzájem vydávají certifikáty; pár certifikátů popisuje obousměrný vztah důvěryhodnosti. K této architektuře PKI lze snadno přidat novou CA, k tomu potřebuje vyměnit certifikáty s alespoň jednou CA, která je již v síti. V této architektuře je nejsložitější konstrukce certifikačního řetězce.
Síťové PKI jsou velmi flexibilní, protože mají více bodů důvěryhodnosti. Kompromitace jedné CA neovlivní síťovou PKI jako celek: certifikační autority, které vydaly certifikáty pro kompromitovanou CA, je jednoduše odvolají, čímž odstraní nedůvěryhodnou CA z infrastruktury. Výsledkem je, že uživatelé přidružení k jiným CA nejsou narušeni – mohou se stále spolehnout na důvěryhodné body důvěry a bezpečně komunikovat s ostatními uživateli svých PKI. Narušení síťového PKI vede buď k tomu, že je omezena práce jedné CA spolu s její uživatelskou komunitou, nebo v případě, že se několik certifikačních autorit stane nespolehlivým, k tomu, že se PKI rozpadne na několik menších infrastruktur. Obnova z kompromitované sítě PKI je snazší než hierarchická, především proto, že kompromitace postihne méně uživatelů.
Je poměrně obtížné vybudovat certifikační cestu v síti, protože tento proces není deterministický a existuje mnoho možností pro vytvoření řetězce certifikátů. Některé z nich vedou ke stavbě správné cesty, jiné vedou do slepé uličky. Z tohoto důvodu se validace certifikační cesty často provádí současně s jejím budováním, součástí čehož je i odstranění špatných větví. K vytvoření správné cesty se používá několik dalších polí certifikátu.
4. Cross-Certified Enterprise PKI ArchitectureTento typ architektury lze považovat za smíšený typ hierarchické a síťové architektury. Existuje několik firem, z nichž každá má své vlastní PKI, ale chtějí spolu komunikovat, výsledkem je jejich společné mezipodnikové PKI Křížově certifikovaná podniková architektura PKI má nejsložitější systém certifikačního řetězce.
5. Architektura mostu CAArchitektura bridge CA byla navržena tak, aby řešila nevýhody složitého certifikačního procesu v křížově certifikovaném podnikovém PKI. V tomto případě všechny společnosti nedůvěřují pouze jedné nebo dvěma firmám, ale jedné konkrétní překlenovací CA, která je prakticky jejich hlavní CA, ale není hlavním bodem důvěry, ale funguje jako prostředník mezi ostatními CA.
Implementace infrastruktury pro správu veřejných klíčů s přihlédnutím ke snížení nákladů a době implementace probíhá v sedmi etapách.
Strana A pro dokument vypočítá hashovací funkci, poté je výsledná hodnota zašifrována pomocí soukromého klíče (privátního klíče) přijímajícího ES. Strana B obdrží dokument, ES a certifikát (odkaz na certifikát) Strany A, ověří certifikát veřejného klíče Strany A v certifikačním centru, ověří přijatý ES pomocí veřejného klíče, vypočítá hashovací funkci dokumentu a zkontroluje s dešifrovanou hodnotou. Pokud je certifikát strany A platný a ověření je úspěšné, má se za to, že dokument podepsala strana A.
Strana B zašifruje dokument veřejným klíčem strany A. K ověření, že veřejný klíč skutečně patří straně A, si strana B vyžádá certifikát veřejného klíče od certifikační autority. Pokud ano, pak pouze strana A může dešifrovat zprávu, protože má odpovídající soukromý klíč.
Certifikáty lze použít k ověření identity uživatele a specifikaci oprávnění, které má. Mezi pravomoci subjektu certifikátu může patřit např. právo nahlížet do informací nebo právo provádět změny v materiálu prezentovaném na webovém serveru.
Ze všeho výše uvedeného lze některé body zvýraznit a také přidat nové, aby bylo možné definovat hlavní pojmy používané v PKI. Takže termíny používané v PKI jsou:
certifikát veřejného klíčeelektronický dokument ověřený elektronickým podpisem certifikačního centra obsahující veřejný klíč, údaj o době jeho platnosti a vlastníkovi klíče.
soukromý klíčklíč známý pouze jeho vlastníkovi, generovaný pomocí asymetrického kryptografického algoritmu, používaný k elektronickému podepisování dat a dešifrování dat zašifrovaných veřejným klíčem odpovídajícím tomuto soukromému klíči.
veřejný klíčklíč vygenerovaný ve dvojici se soukromým klíčem pomocí asymetrického kryptografického algoritmu se používá k šifrování dat a ověřování elektronického podpisu.
Otisk veřejného klíče (otisk prstu/otisk palce)informace, podle kterých lze identifikovat veřejný klíč. Otisk je vytvořen aplikací kryptografické hašovací funkce na hodnotu veřejného klíče.
Podepsané údajedata podepsaná soukromým klíčem uživatele.
Šifrovaná datadata zašifrovaná veřejným klíčem uživatele.
Cesta důvěryřetězec dokumentů, který vám umožní ujistit se, že předložený certifikát byl vydán důvěryhodným centrem; posledním článkem v tomto řetězci je předložený certifikát, počátečním je certifikát kořenové důvěryhodné certifikační autority a prostřední jsou certifikáty vydané zprostředkujícím certifikačním autoritám. Rysem cesty důvěry je, že pokud dojde ke ztrátě důvěry v počátečním článku řetězce (kořenové certifikační autoritě), ztratí se důvěra v celém řetězci, tedy ve všech certifikátech vydaných touto autoritou, včetně toho, který byl předložen.
Osobní certifikátycertifikáty, které jsou uloženy uživatelem v osobní paměti certifikátů.
Kořenové CACA, kterým zpočátku všichni důvěřují, buď podle podnikových zásad, nebo podle výchozího nastavení úložiště certifikátů, a mohou být na začátku cesty důvěryhodnosti.
Důvěryhodné certifikační autorityseznam certifikačních autorit, kterým důvěřují držitelé certifikátů. Aby bylo jakékoli centrum důvěryhodné, stačí od něj získat certifikát a přidat jej do seznamu důvěryhodných center.