Udostępnij przez


Rozwiązania open source do tworzenia aplikacji enklawowych

W tym artykule omówiono rozwiązania typu open source do tworzenia aplikacji korzystających z enklaw aplikacji. Przed przeczytaniem upewnij się, że przeczytasz stronę koncepcyjną aplikacji enklawy .

Intel SGX-Compatible Narzędzia

Platforma Azure oferuje enklawy aplikacji za pośrednictwem poufnych maszyn wirtualnych z włączonymi rozszerzeniami Intel Software Guard (SGX). Po wdrożeniu maszyny wirtualnej Intel SGX będziesz potrzebować wyspecjalizowanych narzędzi, aby umożliwić aplikacji świadomość enklawy. W ten sposób można tworzyć aplikacje, które mają zarówno zaufane, jak i niezaufane fragmenty kodu.

Można na przykład użyć tych struktur typu open source:

Jeśli nie chcesz pisać nowego kodu aplikacji, możesz opakowować konteneryzowaną aplikację przy użyciu poufnych usług obsługujących kontenery

Open Enlave Software Development Kit (OE SDK)

Użyj biblioteki lub struktury obsługiwanej przez dostawcę, jeśli chcesz napisać kod uruchamiany w enklawie. Open Enclave SDK (OE SDK) to zestaw SDK typu open source, który umożliwia abstrakcję na innym sprzęcie z obsługą poufnego przetwarzania.

OE SDK został zaprojektowany jako pojedyncza warstwa abstrakcji dla dowolnego sprzętu u dowolnego dostawcy usług w chmurze. Zestaw OE SDK może być używany na maszynach wirtualnych Azure do przetwarzania poufnego, aby tworzyć i uruchamiać aplikacje w enklawach. Repozytorium Open Enlave jest obsługiwane przez firmę Microsoft.

EGo Software Development Kit

EGo to zestaw SDK typu open source, który umożliwia uruchamianie aplikacji napisanych w języku programowania Go wewnątrz enklaw. Rozwiązanie EGo opiera się na zestawie OE SDK i jest wyposażone w bibliotekę Go działającą wewnątrz enklawy, przeznaczoną do zaświadczania i ochrony danych. Wiele istniejących aplikacji języka Go działa na platformie EGo bez modyfikacji.

Intel SGX Software Development Kit

Zestaw SDK Intel SGX jest opracowywany i obsługiwany przez zespół SGX firmy Intel. Zestaw SDK to narzędzia kolekcji umożliwiające deweloperom oprogramowania tworzenie i debugowanie aplikacji z obsługą technologii Intel SGX w języku C/C++.

Confidential Consortium Framework (CCF)

Struktura Poufne Konsorcjum (CCF) to przykład rozproszonej struktury łańcucha bloków. Program CCF jest oparty na poufnym przetwarzaniu na platformie Azure. W ramach badań firmy Microsoft ta struktura wykorzystuje możliwości zaufanych środowisk wykonywania (TEE) do tworzenia sieci zdalnych enklaw na potrzeby zaświadczania. Węzły mogą działać na maszynach wirtualnych Intel SGX platformy Azure i korzystać z infrastruktury enklawy. Za pomocą protokołów zaświadczania użytkownicy łańcucha bloków mogą weryfikować integralność jednego węzła CCF i skutecznie weryfikować całą sieć.

W programie CCF zdecentralizowany rejestr składa się z zarejestrowanych zmian w magazynie Key-Value replikowanym we wszystkich węzłach sieciowych. Każdy z tych węzłów uruchamia aparat transakcji, który może zostać wyzwolony przez użytkowników łańcucha bloków za pośrednictwem protokołu TLS. Po wyzwoleniu punktu końcowego modyfikujesz magazyn Key-Value. Zanim zaszyfrowana zmiana zostanie zarejestrowana w zdecentralizowanym rejestrze, musi zostać uzgodniona przez więcej niż jeden węzeł, aby osiągnąć porozumienie.

Moduły optymalizacji chmury Intel® dla platformy Kubeflow

Moduły optymalizacji chmury Intel® dla platformy Kubeflow zapewniają zoptymalizowany potok Kubeflow do uczenia maszynowego, korzystający z biblioteki XGBoost do przewidywania prawdopodobieństwa niewypłacalności pożyczki. Architektura referencyjna wykorzystuje bezpieczne i poufne wirtualne maszyny Intel® Software Guard Extensions na klastrze Azure Kubernetes Services (AKS). Umożliwia również korzystanie z optymalizacji intel® dla bibliotek XGBoost i Intel® daal4py w celu przyspieszenia trenowania i wnioskowania modelu w pełnym potoku uczenia maszynowego.

Następne kroki