SGX
Intel SGX, Software Guard Extensions, pruža mogućnosti za izvršavanje enklava sa specifičnim modelom prijetnji i softverskim interfejsom. Podrška procesora nije dovoljna da bi se utvrdilo da enklavna aplikacija može raditi na određenom sistemu.
Šta treba da znate
Intel SGX, Software Guard Extensions, pruža mogućnosti za izvršavanje enklava sa specifičnim modelom prijetnji i softverskim interfejsom. Podrška procesora nije dovoljna da bi se utvrdilo da enklavna aplikacija može raditi na određenom sistemu.
Kako funkcioniše
SGX definiše memoriju enklave i mehanizme ulaska/izlaska, pri čemu se keš stranica enklave upravlja kroz podršku platforme i operativnog sistema. Enklavna aplikacija razdvaja pouzdane i nepouzdane komponente i može koristiti atestaciju za utvrđivanje identiteta enklave. Količina upotrebljive memorije enklave i podržana polisa pokretanja zavise od platforme.
Đe je korisno
Aplikacija može smjestiti računanje uskog opsega i tajne unutar enklave, dok okolni host tretira kao entitet izvan svojih granica povjerenja. U/I, nepouzdani ulazi, ponašanje pri izuzecima i razmatranja bočnih kanala i dalje zahtijevaju eksplicitan dizajn.
Kako provjeriti podršku i omogućenost
Provjerite CPUID.07H.00H:EBX bit 2 i informacije za SGX-specifični CPUID leaf 12H, zatim verifikujte obezbjeđivanje firmvera, podršku za drajvere/runtime i zahtjeve atestacije za aplikaciju. Pridržavajte se tačno podržane konfiguracije platforme.
Sposobnost, omogućenost i primjena moraju se provjeriti odvojeno. Procesor može podržavati zaštitu dok je OS, aplikacija ili politika virtuelne mašine ne aktiviraju. Polje podrške u bazi podataka nije atestacija sistema koji radi.
Šta ova funkcija ne utvrđuje
SGX oznaka ne utvrđuje detalje o SGX1/SGX2, fleksibilnoj kontroli pokretanja, dostupnosti usluge atestacije ili određenom kapacitetu memorije enklave. Ona ne čini proizvoljne nemodifikovane aplikacije povjerljivim niti eliminiše svaki bočni kanal.
Kompatibilnost i performanse u praksi
Održavajte OS, firmver i pogođeni runtime aktuelnim. Ako zaštita izloži problem sa kompatibilnošću, prvo upotrijebite dijagnostiku proizvođača i podržana ažuriranja. Široki prekidač zaštite može uticati na nepovezane aplikacije i treba da prati eksplicitnu politiku implementacije i oporavka.
Praktična lista za provjeru verifikacije
- Zabilježite tačan model procesora ili platforme, kao i verzije aplikacije, OS-a i runtime-a koji se koriste. Sačuvajte formulaciju stvarne greške ili zahtjeva.
- Provjerite referencu proizvođača za taj tačan model, a zatim pregledajte efektivnu sposobnost i omogućeno stanje u okruženju đe se program izvršava.
- Uporedite svaki zahtjev odabranog binarnog koda ili backend-a. Funkcija sličnog naziva, alias ili široka tehnološka oznaka nijesu dovoljni.
- Potvrdite da je aplikacija odabrala predviđenu implementaciju. Koristite njenu dokumentovanu dijagnostiku i podržanu rezervnu varijantu kada zahtjevi nijesu ispunjeni.
- Napravite po jednu podržanu promjenu u isto vrijeme i ponovite isto radno opterećenje. Držite originalnu konfiguraciju i putanju oporavka dostupnima.
Ako je funkcija navedena, ali je softver ne može koristiti
Počnite sa tačnom komponentom koja otkazuje. Baza podataka hardvera opisuje zabilježenu sposobnost; operativni sistem ili hipervizor mogu izložiti drugačije efektivno okruženje. Greška nelegalne instrukcije takođe zahtijeva istragu stvarne instrukcije koja je izazvala kvar i binarne verzije, jer oštećenje ili nepovezana nepodržana instrukcija mogu proizvesti sličan simptom.
Instalirajte verziju aplikacije, drajvera ili runtime-a podržanu za tačnu platformu i koristite dokumentovanu osnovnu ili rezervnu verziju proizvođača ako je potrebno. Ažuriranje softvera ne može stvoriti instrukciju koja procesoru nedostaje. Promjene firmvera i bezbjednosnih politika treba da prate proceduru proizvođača sistema i plan oporavka, a ne generički recept za optimizaciju.
Izvori i obim ovog objašnjenja
Intel 64 and IA-32 Architectures Software Developer's Manual · Referentna implementacija za programere za Intel SGX
Ove reference utvrđuju arhitekturno ponašanje i softverske zahtjeve. One ne verifikuju nezavisno svaku vrijednost funkcije na povezanoj stranici hardverskog modela. Za podršku modela, koristite dokaze proizvođača sa te stranice i provjerite efektivnu konfiguraciju sistema. Ovaj članak ne pruža benčmark, sertifikaciju niti datum nezavisnog pregleda.
Izvori i verifikacija
Uredničko vlasništvo: Feex. Nije zabilježen datum nezavisne recenzije. Kako istražujemo.
- Intel 64 and IA-32 Architectures Software Developer's Manual · Tomovi 1 i 2 opisuju imenovane familije instrukcija i CPUID; Tom 3 opisuje stanje, straničenje, VMX i kontrole zaštite. Dokumentacija o arhitekturi ne utvrđuje podršku za određeni model.
- Referentna implementacija za programere za Intel SGX · Zvanični SDK/runtime projekat i reference za implementaciju enklava. Tačni zahtjevi za platformu i atestaciju ostaju specifični za aplikaciju.
Da li je ovaj članak bio koristan?
Dovoljno je da označite sa da ili ne. Izaberite razlog ako želite, ili dodajte kratku napomenu.
Hvala. To nam pomaže da poboljšamo ovu stranicu.