Udostępnij za pośrednictwem


Rozwiązania typu open source do tworzenia aplikacji enklawy

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.

Narzędzia zgodne z technologią Intel SGX

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 potrzebne są wyspecjalizowane narzędzia do "rozpoznawania 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.

Zestaw OE SDK jest tworzony jako pojedyncza warstwa abstrakcji na dowolnym sprzęcie w dowolnym programie CSP. Zestaw OE SDK może być używany na maszynach wirtualnych do przetwarzania poufnego platformy Azure w celu tworzenia i uruchamiania aplikacji na podstawie enklaw. 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ę języka Go w enklawie na potrzeby zaświadczania i uszczelniania. 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 klucz-wartość, który jest replikowany 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 zmutujesz magazyn Klucz-Wartość. 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 uczenia maszynowego przy użyciu biblioteki XGBoost w celu przewidywania prawdopodobieństwa niewykonania pożyczki. Architektura referencyjna korzysta z bezpiecznych i poufnych maszyn wirtualnych funkcji Intel® Software Guard Extensions w klastrze usługi 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