Freigeben über


Open-Source-Lösungen zum Erstellen von Enklavenanwendungen

In diesem Artikel werden Open-Source-Lösungen zum Erstellen von Anwendungen behandelt, die Anwendungsenklaven verwenden. Lesen Sie vor dem Artikel unbedingt die Konzeptseite für Enklavenanwendungen durch.

Intel SGX-kompatible Tools

Azure bietet Anwendungsenklaven über vertrauliche virtuelle Computer mit aktivierter SGX (Intel Software Guard Extensions) an. Nachdem Sie einen virtuellen Intel SGX-Computer bereitgestellt haben, benötigen Sie spezielle Tools, um Ihre Anwendung enklavefähig (Enclave aware) zu machen. Auf diese Weise können Sie Anwendungen erstellen, die sowohl vertrauenswürdige als auch nicht vertrauenswürdige Codeteile enthalten.

Beispielsweise können Sie die folgenden Open-Source-Frameworks verwenden:

Wenn Sie keinen neuen Anwendungscode schreiben möchten, können Sie eine containerisierte Anwendung mithilfe von Grundvoraussetzungen für vertrauliche Container umschließen.

Open Enclave Software Development Kit (OE SDK)

Verwenden Sie eine Bibliothek oder ein Framework, die bzw. das von Ihrem Anbieter unterstützt wird, falls Sie Code für die Ausführung in einer Enklave schreiben möchten. Das Open Enclave SDK (OE SDK) ist ein Open-Source-SDK, das die Abstraktion über unterschiedliche Confidential Computing-fähige Hardware ermöglicht.

Das OE SDK ist so konzipiert, dass es als einzelne Abstraktionsschicht für beliebige Hardware und CSPs genutzt wird. Das OE SDK kann zusätzlich zu virtuellen Azure Confidential Computing-Computern verwendet werden, um Anwendungen basierend auf Enklaven zu erstellen und auszuführen. Das Open Enclave-Repository wird von Microsoft verwaltet.

EGo Software Development Kit

EGo ist ein Open-Source-SDK, mit dem Sie in der Programmiersprache Go geschriebene Anwendungen innerhalb von Enclaves ausführen können. EGo baut auf dem OE SDK auf und verfügt über eine In-Enclave-Go-Bibliothek für Nachweis und Versiegelung. Viele vorhandene Go-Anwendungen werden ohne Änderungen in EGo ausgeführt.

Intel SGX Software Development Kit

Das Intel SGX SDK wird vom SGX-Team bei Intel entwickelt und verwaltet. Das SDK ist ein Sammlungstool, mit dem Softwareentwickler Intel SGX-fähige Anwendungen in C/C++ erstellen und debuggen können.

Confidential Consortium Framework (CCF)

Das Confidential Consortium Framework (CCF) ist ein Beispiel für ein verteiltes Blockchain-Framework. Das CCF basiert auf Azure Confidential Computing. Dieses Framework wurde von Microsoft Research eingeführt und nutzt vertrauenswürdige Ausführungsumgebungen (Trusted Execution Environments, TEEs), um ein Netzwerk mit Remoteenklaven für Nachweise zu erstellen. Knoten können auf virtuellen Azure Intel SGX Computern ausgeführt werden und die Enklaveninfrastruktur nutzen. Über Nachweisprotokolle können Benutzer der Blockchain die Integrität eines einzelnen CCF-Knotens verifizieren und effektiv das gesamte Netzwerk überprüfen.

Im CCF besteht der dezentralisierte Ledger aus erfassten Änderungen an einem Schlüssel-Wert-Speicher, der auf allen Netzwerkknoten repliziert wird. Auf jedem dieser Knoten wird eine Transaktionsengine ausgeführt, die von Benutzern der Blockchain über TLS ausgelöst werden kann. Wenn Sie einen Endpunkt auslösen, wird der Schlüssel-Wert-Speicher mutiert. Damit die verschlüsselte Änderung im dezentralisierten Ledger erfasst wird, ist die Zustimmung von mehr als einem Knoten erforderlich, um eine Vereinbarung zu erreichen.

Intel® Cloud Optimization Modules für Kubeflow

Die Intel® Cloud Optimization Modules für Kubeflow bieten eine optimierte Machine Learning Kubeflow Pipeline mit XGBoost, um die Wahrscheinlichkeit eines Kreditausfalls vorherzusagen. Die Referenzarchitektur nutzt die sicheren und vertraulichen virtuellen Intel® Software Guard-Erweiterungen-Computer auf einem Azure Kubernetes Services (AKS)-Cluster. Es ermöglicht auch die Verwendung von Intel-Optimierungen® für XGBoost und Intel® daal4py , um Modellschulungen und -rückschlüsse in einer vollständigen End-to-End-Machine Learning-Pipeline zu beschleunigen.

Nächste Schritte