Übersicht über das Azure Managed Confidential Consortium Framework
Azure Managed Confidential Consortium Framework (Managed CCF) ist ein neuer und hochsicherer Dienst für die Bereitstellung vertraulicher Anwendungen. Es ermöglicht Entwicklern das Erstellen vertraulicher Anwendungen, die eine programmierbare Vertraulichkeit von Daten und Informationen erfordern, die zwischen mehreren Parteien benötigt werden können. In der Regel stimmen die Mitglieder der Verfassung (Regeln, die die Mitglieder eingerichtet haben) des Netzwerks zu, legen Governance- und Geschäftstransaktionsregeln fest, und die Geschäftstransaktionen erfolgen basierend auf dem, was definiert wurde. Wenn Änderungen an der Governance vorliegen, die sich auf die Geschäftsregeln auswirken, muss das Konsortium diese Änderungen genehmigen.
Das Framework kann sogar ausschließlich auf hardwaregestützten Secure Enclaves ausgeführt werden. Diese stark überwachte und isolierte Runtimeumgebung verhindert potenzielle Angriffe. Es läuft auch auf einer minimalistischen Trusted Computing Base (TCB) und begrenzt die Rolle des Betreibers.
Wie der Name schon sagt, verwendet Azure Managed CCF die Azure Confidential Computing-Plattform und das Open-Source-Confidential Consortium Framework als zugrunde liegende Technologie, um eine Plattform mit hoher Integrität bereitzustellen, die manipulationsgeschützt und offensichtlich ist. Eine Managed CCF-Instanz erstreckt sich über drei oder mehr identische Computer, von denen jeder in einer dedizierten, vollständig bestätigten hardwaregestützten Enklave ausgeführt wird. Die Integrität der Daten wird durch eine konsensbasierte Blockchain aufrechterhalten.
Das folgende Diagramm zeigt eine allgemeine Übersicht über die verschiedenen Ebenen der managed CCF-Plattform und wo der Anwendungscode darin passt.
Schlüsselfunktionen
Einige wichtige Features von Managed CCF sind Vertraulichkeit, anpassbare Governance, hohe Verfügbarkeit, Auditierbarkeit und Transparenz.
Vertraulichkeit
Die Knoten werden in einer hardwarebasierten vertrauenswürdigen Ausführungsumgebung (Trusted Execution Environment, TEE) ausgeführt, die sicherstellt, dass die verwendeten Daten während sie sich im RAM befinden und während Berechnungen geschützt und verschlüsselt sind. Das folgende Diagramm zeigt, wie der Code und die Daten während der Verwendung geschützt sind.
Anpassbare Governance
Die Teilnehmer, die Mitglieder genannt werden, teilen die Verantwortung für die durch eine Verfassung festgelegte Netzbetriebsfähigkeit. Das Modell der gemeinsamen Governance schafft Vertrauen und Transparenz zwischen den Mitgliedern durch einen Abstimmungsprozess, der öffentlich und auditierbar ist. Die Verfassung wird als eine Reihe von JavaScript-Skripts implementiert, die während der Netzwerkerstellung und später angepasst werden können. Das folgende Diagramm zeigt, wie die Mitglieder an einem Governance-Vorgang teilnehmen, um eine vorgeschlagene Aktion zu akzeptieren oder abzulehnen, was durch die Verfassung erzwungen wird.
Hohe Verfügbarkeit und Resilienz
Eine Managed CCF-Ressource basiert auf einem Netzwerk verteilter Knoten, das ein identisches Replikat der Transaktionen pflegt. Die Plattform ist von Grund auf so konzipiert und aufgebaut, dass sie tolerant und resilient gegenüber Netzwerk- und Infrastrukturunterbrechungen ist. Die Plattform garantiert hohe Verfügbarkeit und schnelle Dienstheilung, indem die Knoten über Azure-Verfügbarkeitszonen verteilt werden. Wenn ein unerwarteter Notfall auftritt, werden schnelle Wiederherstellbarkeit und Geschäftskontinuität durch automatische Sicherung und Wiederherstellung der Ledger-Dateien aktiviert.
Auditierbarkeit und Transparenz
Der Status des Netzwerks kann über Belege überprüft werden. Ein Beleg ist ein signierter Nachweis, der einer Transaktion zugeordnet ist. Die Belege sind offline und von Dritten überprüfbar, das bedeutet in etwa „diese Transaktion hat dieses Ergebnis an dieser Position im Netzwerk erzeugt“. Zusammen mit einer Kopie des Ledgers oder anderer Belege können sie verwendet werden, um den Dienst zu überprüfen und das Konsortium verantwortlich zu halten.
Die Governance-Vorgänge und die zugehörigen Zuordnungen für öffentliche Schlüssel werden im Ledger als Nur-Text gespeichert. Kunden werden ermutigt, das Ledger herunterzuladen und seine Integrität mithilfe von Open-Source-Skripts zu überprüfen, die mit CCF ausgeliefert werden.
Entwicklerfreundlich
Entwickler können vertraute Entwicklungstools wie Visual Studio Code und Programmiersprachen wie TypeScript, JavaScript und C++ in Kombination mit Node.js verwenden, um vertrauliche Anwendungen für die Managed CCF-Plattform zu entwickeln. Open-Source-Beispielanwendungen werden als Referenz veröffentlicht und auf Grundlage von Rückmeldungen ständig aktualisiert.
Open-Source-CCF (IaaS) vs. Azure Managed CCF (PaaS)
Kunden können Anwendungen erstellen, die auf das Confidential Consortium Framework (CCF) abzielen und es selbst hosten. Wie bei anderen selbst gehosteten Anwendungen erfordert dies jedoch regelmäßige Wartung und Patching (sowohl Hardware als auch Software), die Zeit und Ressourcen verbraucht. Azure Managed CCF abstrahiert den täglichen Betrieb, sodass Teams sich auf die wichtigsten Geschäftsprioritäten konzentrieren können. Das folgende Diagramm vergleicht und kontrastiert die Unterschiede zwischen einem selbst gehosteten CCF-Netzwerk und Azure Managed CCF.