Heim > häufiges Problem > Hauptteil

Was ist SGX im BIOS?

青灯夜游
Freigeben: 2023-01-13 00:39:13
Original
36525 Leute haben es durchsucht

Der vollständige Name von SGX im BIOS lautet „Intel Software Guard Extensions“, eine Erweiterung der Intel-Architektur (IA). Sie zielt darauf ab, Hardware-Sicherheit als obligatorische Garantie zu verwenden und verlässt sich nicht auf den Sicherheitsstatus von Firmware und Software Um Benutzerraum bereitzustellen, kann eine vertrauenswürdige Ausführungsumgebung die Softwaresicherheit verbessern.

Was ist SGX im BIOS?

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Dell G3-Computer.

Technische Definition von SGX

SGX steht für Intel Software Guard Extensions. Wie der Name schon sagt, handelt es sich um eine Erweiterung der Intel Architecture (IA) zur Verbesserung der Softwaresicherheit.

SGX-Befehlssatzerweiterung zielt darauf ab, Hardware-Sicherheit unabhängig vom Sicherheitsstatus von Firmware und Software als obligatorische Garantie zu betrachten und eine vertrauenswürdige Ausführungsumgebung für den Benutzerbereich bereitzustellen. Sie wird durch einen neuen Satz von Befehlssatzerweiterungen und Zugriffskontrolle implementiert Der isolierte Betrieb zwischen verschiedenen Programmen gewährleistet die Vertraulichkeit und Integrität der Schlüsselcodes und Daten der Benutzer vor der Zerstörung durch Malware.

Diese Methode identifiziert und isoliert nicht alle Malware auf der Plattform, sondern kapselt die Sicherheitsvorgänge legitimer Software in einer Enklave, um sie vor Malware-Angriffen zu schützen, das heißt, Sobald sich die Software und Daten in der Enklave befinden, kann nicht einmal das Betriebssystem oder VMM (Hypervisor) den Code und die Daten in der Enklave beeinflussen.

Die Sicherheitsgrenze der Enklave umfasst nur die CPU und sich selbst. Die von SGX erstellte Enklave kann auch als Trusted Execution Environment TEE (Trusted Execution Environment) verstanden werden.

Es unterscheidet sich jedoch geringfügig von ARM TrustZone (TZ), das über die CPU in zwei Isolationsumgebungen unterteilt ist (sichere Welt und normale Welt), und die beiden kommunizieren über SMC-Anweisungen, während in SGX eine CPU mehrere ausführen kann Sicherheitsenklaven und können gleichzeitig ausgeführt werden.

Natürlich kann der gleiche Effekt durch die Implementierung mehrerer voneinander isolierter Sicherheitsdienste innerhalb der TZ-Sicherheitswelt erzielt werden.

Erstellung einer SGX-Enklave

Was ist SGX im BIOS?

Mit der SGX-Technologie des Intel-Prozessors wechselt das System durch die Hardwaremodusumschaltung der CPU in den vertrauenswürdigen Modus und verwendet nur die erforderliche Hardware, um einen vollständig isolierten privilegierten Modus zu bilden , Laden Ein minimales Mikrokernel-Betriebssystem unterstützt die Aufgabenplanung, führt die Identitätsauthentifizierung durch und basiert auf der authentifizierten Benutzeridentität

Durch die Verwendung der Intel SGX-Technologie lautet der spezifische Implementierungsplan für den Aufbau einer Enklave als vollständig isolierter privilegierter Modus:
(1) Laden Sie das Image der virtuellen Maschine, das ausgeführt werden muss, auf die Festplatte.
(2) Generieren Sie geheime Schlüsselzertifikate zum Verschlüsseln von Anwendungscode und Daten. Die SGX-Technologie bietet eine fortschrittlichere geheime Schlüsselverschlüsselungsmethode. Der geheime Schlüssel besteht aus dem geheimen Schlüssel der SGX-Version, dem geheimen Schlüssel der CPU und dem offiziellen Verteilungsschlüssel von Intel Der geheime Schlüssel ist ein brandneuer Schlüssel, der mit dem Schlüsselgenerierungsalgorithmus generiert wird. Verwenden Sie diesen Schlüssel, um den Code und die Daten der Anwendung zu verschlüsseln, die geladen werden müssen.
(3) Laden Sie zunächst den Code und die Daten der Anwendung oder des Bildes, die geladen werden müssen, in den SGX Loader, um das Laden in die Enklave vorzubereiten.
(4) Dynamisch anwenden, um eine Enklave im vertrauenswürdigen Intel SGX-Modus zu erstellen.
(5) Entschlüsseln Sie zunächst die Programme und Daten, die geladen werden müssen, über das geheime Schlüsselzertifikat in Form von EPC (Enclave Page Cache).
(6) Verwenden Sie SGX-Anweisungen, um zu beweisen, dass das entschlüsselte Programm und die Daten vertrauenswürdig sind, laden Sie sie in die Enklave und kopieren Sie dann jeden in die Enklave geladenen EPC-Inhalt.
(7) Durch die Verwendung von Hardware-Isolation werden die Vertraulichkeit und Integrität der Enklave weiter gewährleistet, wodurch sichergestellt wird, dass verschiedene Enklaven nicht miteinander in Konflikt geraten und ihnen keinen Zugriff aufeinander ermöglichen.
(8) Starten Sie das Enclave-Initialisierungsprogramm, verhindern Sie das weitere Laden und Überprüfen des EPC, generieren Sie das Enclave-Identitätszertifikat, verschlüsseln Sie das Zertifikat und speichern Sie es als Enclave-Identifikation im TCS (Thread Control Structure) der Enclave, um es wiederherzustellen und zu überprüfen . Identität.
(9) Die Isolation von SGX ist abgeschlossen, das Spiegelprogramm in der Enklave durch Hardware-Isolation beginnt mit der Ausführung und der Aufbau der Hardware-Isolation basierend auf der SGX-Technologie ist abgeschlossen.

Starten und Zerstören der SGX-Enklave

Nach Abschluss des Baus der Enklave, um zu verhindern, dass die Informationen in der Enklave nach außen dringen, nachdem die Enklave beendet oder hängen geblieben ist, und die Anwendungen in der Enklave möglicherweise unterbrochen werden Systemunterbrechung, Exit unter anormalen Umständen wie Ausnahmen. Um solche Probleme zu lösen, wird die SGX-Technologie verwendet, um verschiedene Verarbeitungsmethoden für einen möglichen synchronen Exit und einen asynchronen Exit festzulegen. Die in der Enklave ausgeführten Daten und Codes werden angepasst laut EEE(Enclave Beendende Ereignisse) Verarbeitet mit der eingestellten Verarbeitungsmethode. Im Falle eines asynchronen Exits werden die Daten und Betriebsstatusinformationen in der Enklave mit dem geheimen Schlüssel verschlüsselt und außerhalb der Enklave gespeichert. Die unterbrochene Enklave kann beim nächsten Systemstart selektiv wiederhergestellt werden.

SGX erstellt einen vertrauenswürdigen Enclave-Kommunikationskanal

Für SGX Enclave-Zugriffsanforderungen: Erstellen Sie einen Erkennungsmechanismus zur Begrenzung. Bestimmen Sie zunächst, ob der Enclave-Modus gestartet wurde, und ermitteln Sie dann, ob die Zugriffsanforderung von innerhalb der Enclave stammt. Wenn ja, ermitteln Sie weiterhin. Wenn nicht, wird ein Zugriffsfehler zurückgegeben und dann generiert Die Identität, bevor die Enklave vergeben wird, wird verwendet, um zu überprüfen, ob die Zugriffsanforderung von derselben Enklave stammt. Wenn dies der Fall ist, wird die Zugriffserkennung bestanden. Wenn nicht, wird die nächste Enklave-Identitätsanmeldeinformation gemäß der Identitätsanmeldeinformationsdatensatztabelle der Enklave ersetzt für den Abgleich, bis alle laufenden Enklaven abgeglichen sind. Wenn der Abgleich nicht erfolgreich ist, wird ein Zugriffsfehler zurückgegeben.

Weitere Informationen zu diesem Thema finden Sie in der Spalte „FAQ“!

Das obige ist der detaillierte Inhalt vonWas ist SGX im BIOS?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!