SGX
Intel SGX, Software Guard Extensions, poskytuje prostředky pro běh enkláv se specifickým modelem hrozeb a softwarovým rozhraním. Podpora ze strany CPU nestačí k prokázání, že enklávní aplikace může na daném systému běžet.
Co potřebujete vědět
Intel SGX, Software Guard Extensions, poskytuje prostředky pro běh enkláv se specifickým modelem hrozeb a softwarovým rozhraním. Podpora ze strany CPU nestačí k prokázání, že enklávní aplikace může na daném systému běžet.
Jak to funguje
SGX definuje paměť enklávy a mechanismy vstupu/výstupu, přičemž mezipaměť stránek enklávy (enclave page cache) je spravována s podporou platformy a operačního systému. Enklávní aplikace odděluje důvěryhodné a nedůvěryhodné komponenty a může využívat atestaci k ověření identity enklávy. Velikost použitelné paměti enklávy a podporovaná pravidla spouštění jsou specifické pro konkrétní platformu.
Kde je funkce užitečná
Aplikace může umístit úzce vymezené výpočty a tajná data do enklávy, zatímco okolního hostitele považuje za prostor mimo hranici své důvěry. Vstup/výstup, nedůvěryhodné vstupy, chování při výjimkách a otázky postranních kanálů stále vyžadují explicitní návrh.
Jak ověřit podporu a aktivaci
Zkontrolujte CPUID.07H.00H:EBX bit 2 a informace ve specifickém listu CPUID 12H pro SGX, poté ověřte konfiguraci firmwaru, podporu ovladače/runtime a požadavky aplikace na atestaci. Dodržujte přesnou podporovanou konfiguraci platformy.
Dostupnost, aktivaci a vynucování je nutné kontrolovat samostatně. Procesor může ochranu podporovat, zatímco operační systém, aplikace nebo zásady virtuálního počítače ji neaktivují. Pole podpory v databázi není atestací běžícího systému.
Co tato funkce nezajišťuje
Označení SGX samo o sobě nedokládá podrobnosti o SGX1/SGX2, flexibilním řízení spouštění (flexible launch control), dostupnosti atestační služby ani konkrétní kapacitě paměti enklávy. Nečiní libovolné neupravené aplikace důvěrnými ani neeliminuje každý postranní kanál.
Kompatibilita a výkon v praxi
Udržujte operační systém, firmware a dotčené běhové prostředí aktuální. Pokud ochrana odhalí problém s kompatibilitou, použijte nejprve diagnostiku výrobce a podporované aktualizace. Plošné přepnutí ochrany může ovlivnit nesouvisející aplikace a mělo by se řídit explicitními pravidly pro nasazení a obnovu.
Praktický kontrolní seznam pro ověření
- Zaznamenejte přesný model procesoru nebo platformy a použité verze aplikace, operačního systému a běhového prostředí. Uchovejte přesné znění chybové zprávy nebo požadavku.
- Zkontrolujte dokumentaci výrobce pro daný konkrétní model a poté prověřte skutečně dostupnou kapacitu a stav aktivace v prostředí, kde program běží.
- Porovnejte veškeré požadavky vybraného binárního souboru nebo backendu. Podobně pojmenovaná funkce, alias nebo obecné technologické označení nestačí.
- Ověřte, že aplikace vybrala zamýšlenou implementaci. Pokud nejsou požadavky splněny, použijte její zdokumentovanou diagnostiku a podporované náhradní řešení.
- Provádějte vždy jen jednu podporovanou změnu a zopakujte identickou zátěž. Původní konfiguraci a postup obnovy mějte neustále k dispozici.
Pokud je funkce uvedena, ale software ji nemůže použít
Začněte u přesné komponenty, u níž dochází k selhání. Databáze hardwaru popisuje zaznamenané schopnosti; operační systém nebo hypervizor však může vystavit odlišné efektivní prostředí. Chyba neplatné instrukce vyžaduje také prozkoumání skutečné chybující instrukce a sestavení binárního souboru, protože poškození dat nebo nesouvisející nepodporovaná instrukce mohou vyvolat podobný projev.
Nainstalujte verzi aplikace, ovladače nebo běhového prostředí podporovanou pro danou platformu a v případě potřeby použijte výrobcem zdokumentované základní nebo náhradní sestavení. Aktualizace softwaru nemůže vytvořit instrukci, kterou procesor fyzicky postrádá. Změny firmwaru a zásad zabezpečení by se měly řídit postupem výrobce systému a plánem obnovy, nikoli obecným návodem na optimalizaci.
Zdroje a rozsah tohoto vysvětlení
Intel 64 and IA-32 Architectures Software Developer's Manual · Referenční vývojářská implementace Intel SGX
Tyto referenční dokumenty stanovují architektonické chování a softwarové požadavky. Neověřují nezávisle každou hodnotu funkce na odkazované stránce hardwarového modelu. Informace o podpoře konkrétního modelu čerpejte z podkladů výrobce na příslušné stránce a zkontrolujte platnou konfiguraci systému. Tento článek neposkytuje benchmark, certifikaci ani datum nezávislého přezkumu.
Zdroje a ověření
Redakční vlastnictví: Feex. Není zaznamenáno žádné datum nezávislého přezkoumání. Jak provádíme výzkum.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Svazky 1 a 2 popisují jmenovité rodiny instrukcí a CPUID; Svazek 3 popisuje stav, stránkování, VMX a řízení ochrany. Architektonická dokumentace nepotvrzuje podporu pro konkrétní model.
- Referenční vývojářská implementace Intel SGX · Oficiální projekt SDK/runtime a reference pro nasazení enkláv. Přesné požadavky na platformu a atestaci zůstávají specifické pro danou aplikaci.
Byl tento článek užitečný?
Stačí ano nebo ne. Pokud chcete, vyberte důvod nebo přidejte krátkou poznámku.
Děkujeme. Pomáhá nám to tuto stránku vylepšovat.