Enklawy aplikacji

Ważna

Dla większości nowych obciążeń poufnych obliczeń zacznij od opcji poufnych maszyn wirtualnych platformy Azure oraz kontenerów poufnych. Ten artykuł koncentruje się na specjalistycznym tworzeniu oprogramowania uwzględniającego enklawy.

Enklawy aplikacji, takie jak Intel SGX, są izolowanymi środowiskami, które chronią określony kod i dane. Podczas tworzenia enklaw należy określić, która część aplikacji działa w enklawie. Podczas tworzenia enklaw lub zarządzania nimi należy używać zgodnych zestawów SDK i struktur dla wybranego stosu wdrożenia.

Uwaga

Jeśli jeszcze nie czytałeś wprowadzenia do maszyn wirtualnych i enklaw Intel SGX, przeczytaj go przed kontynuacją.

Microsoft Mechanics

Tworzenie aplikacji

Aplikacja zbudowana przy użyciu enklaw ma dwie partycje.

Host jest składnikiem "niezaufanym". Aplikacja enklawy działa na hoście. Host jest niezaufanym środowiskiem. Podczas wdrażania kodu enklawy na hoście host nie może uzyskać dostępu do tego kodu.

Enklawa jest "zaufanym elementem". Kod aplikacji i jego buforowane dane i pamięć są uruchamiane w enklawie. Środowisko enklawy chroni twoje tajemnice i poufne dane. Upewnij się, że bezpieczne obliczenia są wykonywane w enklawie.

Diagram aplikacji przedstawiający partycje hosta i enklawy. Wewnątrz enklawy znajdują się dane i składniki kodu aplikacji.

Aby korzystać z możliwości enklaw i izolowanych środowisk, wybierz narzędzia obsługujące poufne przetwarzanie. Różne narzędzia wspierają rozwój aplikacji enklaw. Można na przykład użyć tych struktur typu open source:

Podczas projektowania aplikacji zidentyfikuj i określ, która część musi działać w enklawach. Kod w zaufanym składniku jest odizolowany od pozostałej części aplikacji. Po zainicjowaniu enklawy i załadowaniu kodu do pamięci niezaufane składniki nie mogą odczytać ani zmienić tego kodu.

Następne kroki