Trusted Platform Module

Z Wikipedie, otevřené encyklopedie
Interní komponenty TPM

Trusted Platform Module (zkratka TPM) je ve výpočetní technice název specifikace, která popisuje zabezpečený kryptoprocesor (šifrovací procesor), na který lze ukládat šifrovací klíče, které chrání informace. Implementací specifikace je často míněn „TPM čip“ nebo „TPM Security Device“. Specifikaci TPM vytvořila Trusted Computing Group. Současná verze specifikace je TPM 1.2 revize 116, která byla zveřejněna 3. března 2011.[1] Specifikace je k dispozici také jako mezinárodní standard ISO/IEC 11889.

Přehled

TPM nabízí možnosti pro bezpečné generování kryptografických klíčů a různá omezení v jejich použití, jako hardwarová nadstavba generátoru pseudonáhodných čísel. Zahrnuje schopnosti, jako například vzdálené ověření a zapečetěné uložení.

  • Vzdálené ověřování vytváří téměř nepadělatelný hash klíč, který obsahuje souhrn údajů hardwarové a softwarové konfigurace. Program šifrující data určuje rozsah souhrnu údajů o software. To umožňuje třetí straně ověřit, zda nebyl software změněn.
  • Vázání šifruje data za použití TPM potvrzovacího klíče, což je unikátní RSA klíč, který je při výrobě vypálen přímo do čipu a nebo se jedná o jiný důvěryhodný klíč, který z něho vychází.[2]
  • Zapečetění šifruje data podobným způsobem jako vázání, ale oproti vázání určuje stav, ve kterém TPM musí být v pořádku, aby mohla být data dešifrována (rozpečetěna).[3]

Software může využít TPM k ověření hardwarových zařízení. Vzhledem k tomu, že každý TPM čip má v sobě při výrobě vypálen unikátní a zároveň tajný RSA klíč, umožňuje tak autentizaci platformy. Například může být využíván k ověření, zda systém žádající o přístup je očekávaný systém.

Obecně platí, že posunování zabezpečení dolů k hardwarové vrstvě ve spojení se softwarem poskytuje větší ochranu, než jen pouhé softwarové řešení. Nicméně i tam, kde je TPM používán, je klíč stále ohrožen i v době, kdy ho softwarová aplikace získává z TPM a je používán pro vykonání šifrovacích/dešifrovacích operací, jak bylo znázorněno v případě útoku při studeném startu.

TPM je občas spojeno se jménem bývalého senátora Spojených států Ernesta „Fritze“ Hollinga. Jméno „Fritzův čip“ bylo vymyšleno profesorem Rossem Andersonem, který je autor Bezpečnostního inženýrství a profesor na univerzitě v Cambridgi.[4]

Použití

Integrita platformy

Hlavní účel TPM (ve spojení s dalšími TCG implementacemi) je zajistit integritu platformy. V tomto kontextu "integrita" znamená "pracovat dle očekávání" a "platforma" je obecně jakákoliv počítačová platforma - není to omezeno pouze na PC nebo pouze pro Windows. Nastartuje se power-on startovací proces z důvěryhodné podmínky a tato důvěryhodnost se zvětšuje, dokud se Operační Systém plně nezavede a aplikace se nezačnou provádět.

Společně s BIOSem tvoří TPM takzvaný "Root of Trust": TPM obsahuje několik PCR (nastavovací registry platformy), které umožňují bezpečné uložení a nahlašování bezpečnostních metrik. Tyto matrice mohou být použity na odhalení změn v předchozích nastaveních a odvodit z nich jak pokračovat dál. Dobrý příklad může být nalezen v Microsoft's BitLocker Drive Encryption (viz níže).

Proto mají BIOS a operační systém hlavní zodpovědnost na využití TPM k zajištění integrity platformy. Pouze tehdy můžou uživatelé a aplikace běžící na takovéto platformě spoléhat na své bezpečnostní charakteristiky. Například bezpečný vstup/výstup "co vidíš, to dostaneš", zabezpečený vstup z klávesnice a operace s pamětí a daty.

Mezi praktické příklady využití principu "Root of Trust" patří autentizace/identifikace zařízení v rámci IEEE 802.1X například v systémech Network Access Control (NAC) a ohlašování změn či identifikace přítomnosti perzistentní hrozby (rootkit) ve spouštěcím prostředí zařízení (BIOS/boot prostředí).

Šifrování disku

Aplikace pro úplné šifrování disku (jako například BitLocker Drive Encryption obsažená v operačních systémech Windows Vista Ultimate, Windows Vista Enterprise, Windows Server 2008, Windows 7 Enterprise a Windows 7 Ultimate od Microsoftu) používají tuto technologii ke chránění klíčů používaných k zašifrování pevných disků v počítači a poskytují ověření integrity pro důvěryhodnou zaváděcí cestu (například BIOS, boot sektor, atd.). Mnoho produktů třetích stran pro plné šifrování disku nepodporují TPM čip jako kryptoprocesor a ponechávají kryptografické operace neužitečně na CPU. Použití TPM jako kryptoprocesoru vyžaduje aktivaci čipu prostřednictvím BIOS (lze i vzdáleně pomocí WMI) s čímž si prozatím žádný z výrobců SW šifrovacích systémů neporadil.

Dvoufaktorová autentizace

V kombinaci s technologií VSC (Virtual Smart Card) umožňuje bezpečné přihlašování uživatele k zařízení pomocí dvoufaktorové autentizace (princip něco znám /PIN/ a něco mám /počítač/) bez nutnosti vlastnit externí autentizační prvek (Smart Card / USB token). V tomto případě nahrazuje vlastní počítač (TPM čip) prvek externího autentizátoru a zajišťuje nemožnost použití tohoto autentizačního prostředku v jiném zařízení. Virtuální čipová karta může být používána ve dvou variantách:

  • samostatně (bez TPM čipu) - vhodná pro aplikační vývoj
  • v kombinaci s TPM čipem, který zajišťuje bezpečné úložiště pro uživatelskou elektronickou identitu

Technologie VSC je nativní součástí operačního systému Microsoft Windows 8.1. Pro ostatní platformy je ale k dispozici v některých aplikacích spravujících funkce modulu TPM.

Ochrana hesla

Přístup ke klíčům, datům nebo systému je často chráněn pomocí hesla. Pokud je ověřovací mechanismus implementován pouze v softwaru, přístup je náchylný ke "slovníkovým útokům". Protože je TPM implementován v jednoúčelovém hardwarovém modulu, tak byl vytvořen mechanismus zabraňující slovníkovým útokům, který efektivně zabraňuje hádání hesla a automatizovaným slovníkovým útokům, zatímco umožňuje uživateli dostatečně vysoký počet pokusů. S touto hardwarově založenou ochranou před slovníkovým útokem může uživatel volit kratší nebo slabší hesla, která se lépe pamatují. Bez této úrovně ochrany nabízí dostatečnou ochranu pouze hesla s velkou složitostí.

Další použití

Prakticky každá aplikace povolující šifrování může teoreticky využít TPM. Například:

Existují i další použití, z nichž některé dávají vzniknout obavám o soukromí. Vlastnost TPM "fyzická přítomnost" je zacílená na některé z těchto obav tím, že vyžaduje potvrzení na úrovni BIOSu pro operace jako třeba aktivování, deaktivování, mazání nebo měnění vlastnictví TPM někým, kdo je fyzicky přítomen u konzole stroje.

TPM hardware

Od roku 2006 je mnoho nových notebooků prodáno s vestavěným TPM čipem. V budoucnosti může být tento koncept použit na současné čipy na základní desce v počítačích nebo do jakéhokoliv zařízení, které může být vybaveno TPM, jako třeba mobilní telefon. Na PC se používá sběrnice LPC (Low Pin Count). Mikro ovladače TPM jsou v současné době vyráběny těmito spoečnostmi:

  • Atmel
  • Broadcom
  • Infineon
  • Sinosun
  • STMicroelectronics
  • Nuvoton (dříve Winbond)
  • ITE
  • Toshiba
  • Intel

Kritika

Tvůrci tohoto návrhu z Trusted Computing Group naráželi na odpor v některých oblastí implementace této technologie. Obzvlášť na akademické půdě, kde někteří autoři viděli možné použití této technologie, které nebylo zamýšleno a zvedá obavy o soukromí. Mezi obavy patří zneužití dálkového ověření softwaru (kde by výrobce - ne uživatel, který počítačový systém vlastní - rozhodoval, který software bude povolen) a možné cesty jak sledovat akce prováděné uživatelem zaznamenáváním jeho činnosti do databáze.

Verze TPM 2.0 bude od roku 2015 povinná pro počítače, které budou chtít certifikaci na systém Windows. Navíc bude továrně aktivovaná a spolu s UEFI zabrání používání hardware bez povolení od uživatele či výrobce.

Některé TPM ale generují slabé klíče, které lze prolomit.[5] Bruce Schneier uvádí, že otázkou zůstává, zda BitLocker není úmyslně oslaben (zadní vrátka), když se do TPM mohou ukládat klíče v otevřené formě.[6]

Země, kde nelze TPM legálně použít

Reference

V tomto článku byl použit překlad textu z článku Trusted Platform Module na anglické Wikipedii.

  1. Trusted Platform Module (TPM) Specifications [online]. Trusted Computing Group. Dostupné online. 
  2. tspi_data_bind(3) - Encrypts data blob [online]. Trusted Computing Group [cit. 2009-10-27]. Dostupné online. 
  3. TPM Main Specification Level 2 Version 1.2, Revision 116 Part 3 - Commands [online]. Trusted Computing Group [cit. 2011-06-22]. Dostupné online. 
  4. ANDERSON, Ross. Trusted Computing FAQ [online]. Cambridge University, 2003-08 [cit. 2008-06-28]. Dostupné online. 
  5. https://arstechnica.com/information-technology/2017/10/crypto-failure-cripples-millions-of-high-security-keys-750k-estonian-ids/ - Millions of high-security crypto keys crippled by newly discovered flaw
  6. https://www.schneier.com/blog/archives/2015/03/can_the_nsa_bre_1.html - Can the NSA Break Microsoft's BitLocker?

Související články

Externí odkazy