DE10393662T5 - Bereitstellen eines sicheren Ausführungsmodus in einer Preboot-Umgebung - Google Patents
Bereitstellen eines sicheren Ausführungsmodus in einer Preboot-Umgebung Download PDFInfo
- Publication number
- DE10393662T5 DE10393662T5 DE10393662T DE10393662T DE10393662T5 DE 10393662 T5 DE10393662 T5 DE 10393662T5 DE 10393662 T DE10393662 T DE 10393662T DE 10393662 T DE10393662 T DE 10393662T DE 10393662 T5 DE10393662 T5 DE 10393662T5
- Authority
- DE
- Germany
- Prior art keywords
- environment
- secure
- preboot
- secret
- preboot environment
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4406—Loading of operating system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4416—Network booting; Remote initial program loading [RIPL]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
Verfahren,
das umfaßt:
Herstellen einer sicheren Preboot-Umgebung in einem Computersystem; und
Durchführen mindestens einer sicheren Operation in der sicheren Preboot-Umgebung.
Herstellen einer sicheren Preboot-Umgebung in einem Computersystem; und
Durchführen mindestens einer sicheren Operation in der sicheren Preboot-Umgebung.
Description
- Stand der Technik
- Die vorliegende Erfindung betrifft den Betrieb eines Computersystems und im Speziellen den Betrieb eines solchen Systems in einer Preboot-Umgebung.
- Wenn ein Computersystem eingeschaltet wird, kann es die von einem Benutzer gewünschten Funktionen erst ausführen, nachdem es initialisiert wurde und die Fähigkeit zum Kommunizieren mit dem Benutzer erlangt hat. Dieser Initialisierungsvorgang umfaßt im allgemeinen einen Boot-Vorgang, der typischerweise von der Boot-Firmware durchgeführt wird. Bei der Boot-Firmware kann es sich um ein Betriebssystem ("BS"), einen Teil des BS, das BIOS ("Basic Input/Output System") oder andere Software handeln.
- Die Boot-Firmware wird typischerweise in einer Art von nichtflüchtigem Speicher abgelegt und ermöglicht einer zentralen Verarbeitungseinheit ("CPU") die Ausführung von Aufgaben, wie etwa Initialisierung, Diagnose, Laden des Betriebssystemkernels von einem Massenspeicher und Eingabe-/Ausgabe-Routinefunktionen ("E/A"). Die Boot-Firmware kann in löschbarem, programmierbarem Festwertspeicher ("EPROM") oder einem ähnlichen Flash-Halbleiterspeicher abgelegt werden.
- In dieser Preboot-Umgebung stehen typischerweise wenige oder gar keine Sicherheitsmaßnahmen zur Verfügung (der gesamte Code läuft im primitiven, physischen Ring-0-Modus); auch besteht typischerweise keine Möglichkeit zum Speichern eines Geheimnisses in der Preboot-Umgebung. Weiterhin besteht beim Einspringen in die BS-Umgebung von der Preboot-Umgebung aus keine Möglichkeit zur Herstellung einer sogenannten Vertrauenswurzel von der Preboot-Umgebung bis zur BS-Umgebung. Bei einer Trusted Computing Platform (TCP) gemäß der Hauptspezifikation der Trusted Computing Platform Alliance (TCPA), Version 1.16, veröffentlicht am 22. Februar 2002, kann eine derartige Vertrauenswurzel wünschenswert sein, die zuverlässige Informationen über sich selbst und ihre laufenden Softwareprozesse sowie Attestierungen bezüglich des Betriebs ihrer Softwareprozesse liefert.
- Kurze Beschreibung der Zeichnungen
-
1 ist ein Flußdiagramm eines beispielhaften Programmflusses gemäß einer Ausführungsform der vorliegenden Erfindung. -
2 ist ein Flußdiagramm einer beispielhaften Firmwareoperation gemäß einer Ausführungsform der vorliegenden Erfindung. -
3 ist ein Flußdiagramm des Betriebs einer Preboot-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung. -
4 ist ein Blockdiagramm eines Systems gemäß einer Ausführungsform der vorliegenden Erfindung. - Detaillierte Beschreibung
- Bei einer Ausführungsform kann die vorliegende Erfindung dazu benutzt werden, eine sichere Preboot-Ausführungsumgebung eines Computersystems herzustellen. Der Begriff "Computersystem" kann sich hier und im folgenden auf eine beliebige Art von prozessorbasiertem System beziehen, wie etwa auf einen Desktop-Computer, einen Laptop-Computer, einen Server-Computer, eine Appliance, eine Set-Top-Box u. dgl. m. In bestimmten Ausführungsformen kann das Computersystem einen Prozessor in der sogenannten Intel-Architektur (IA) aufweisen, wie etwa einen IA32-Prozessor, erhältlich von der Intel Corporation, Santa Clara, Kalifornien. Es versteht sich jedoch, daß die vorliegende Erfindung in anderen Ausführungsformen in Verbindung mit anderen, derzeit bekannten oder in Zukunft aufkommenden CPU-Mikroarchitekturen benutzt werden kann.
- In einer Ausführungsform kann die sichere Preboot-Ausführungsumgebung in Firmware implementiert werden, die zu der EFI-Spezifikation (engl. "Extensible Firmware Interface", dt. "erweiterbare Firmwareschnittstelle"), Version 1.02, veröffentlicht am 12. Dezember 2000 von der Intel Corporation, Santa Clara, Kalifornien konform ist.
- Eine sichere Preboot-Ausführungsumgebung eines Computersystems gemäß einer Ausführungsform kann benutzt werden, um sichere Operationen durchzuführen, beispielsweise die sichere Speicherung des Geheimnisses und den anschließenden Zugriff auf das Geheimnis; dies ist auch als sichere oder isolierte Speicherung bekannt. Hier und im folgenden ist mit "Geheimnis" jede beliebige Information (Daten, Anweisungen o.a.) gemeint, die vor dem Computersystem und dem Benutzer außerhalb der sicheren Preboot-Umgebung versteckt gehalten wird. Bei solchen Geheimnissen kann es sich beispielsweise um Schlüssel, Paßwörter, Finanzinformationen, Krankenakten u. dgl. m. handeln. Der sichere Preboot-Modus kann zudem für isoliertes Ausführen benutzt werden. So wird ein Mittel bereitgestellt, um nicht vertrauenswürdigen, fehlerhaften oder böswilligen Code (kollektiv als "schädlicher Code" bezeichnet) von anderem vertrauenswürdigem, überprüfbarem Code zu trennen.
-
1 ist ein Flußdiagramm eines beispielhaften Programmflusses gemäß einer Ausführungsform der vorliegenden Erfindung. Wie in1 gezeigt, bestimmt die Firmware beim Neustart eines Computersystems (Block5 ), ob eine CPU dazu in der Lage ist, im Preboot-Modus einen sicheren Betrieb zu gewährleisten, d.h., ob es sich um eine CPU mit Sicherheitsfunktion handelt (Raute10 ). Falls eine solche CPU vorhanden ist, kann Sicherheitsinitialisierungssoftware ausgeführt werden (Block15 ). Als nächstes kann ein BIOS-SVMM (sicherer Virtual-Machine-Monitor) installiert werden (Block20 ), und es kann in eine SVMM-Preboot-Umgebung eingesprungen werden. Hier und im folgenden ist mit dem Begriff "sicherer Virtual-Machine-Monitor" oder "SVMM" eine sichere Umgebung gemeint, in der auf einer einzelnen Plattform eine oder mehrere Betriebsumgebungen existieren. Im SVMM können beliebige gewünschte sichere Operationen durchgeführt werden, wie etwa sicheres Speichern und sicherer Zugriff, Aktualisierungen von Flashspeicher u. dgl. m. - Es versteht sich, daß eine "virtuelle Maschine" nicht zwingend erforderlich ist; statt dessen kann es sich bei der Software um einen sicheren Monitor handeln, wobei der "Monitor"-Gesichtspunkt die Fähigkeit zum Erkennen und Berechtigen von Zugriffen von nicht vertrauenswürdigem Code benennt. In bestimmten Ausführungsformen kann der SVMM eine Trusted-Computing-Basis (TCB) bilden; bei einer TCB handelt es sich um eine kleine, überprüfte Untermenge von Code, die von dem restlichen Code isoliert werden und dessen Verhalten steuern kann. Eine TCB kann klein entworfen werden, um eine formelle Nachprüfung der Sicherheits- und Schutzattribute durch Dritte zu begünstigen.
- Als nächstes oder wenn kein Prozessor mit sicherem Modus verfügbar ist, kann der Selbsttest bei Einschalten (POST, engl. "Power on Self Test") abgeschlossen werden, und die Preboot-Umgebung wird darauf vorbereitet, das BS zu laden (Block
25 ). Es wird bestimmt, ob ein vertrauenswürdiger BS-Ladevorgang möglich ist (Raute30 ). Wenn ein solcher Ladevorgang möglich ist, wird der BIOS-SVMM entladen (Block35 ). In beiden Fällen kann das BS daraufhin die Kontrolle über das Computersystem übernehmen (Block40 ). - Es versteht sich, daß der frühe Aufruf eines sicheren Betriebsmodus der CPU nicht auf einen Entwurf mit einem Virtual-Machine-Monitor (VMM), wie etwa den SVMM, beschränkt ist, sondern auch in Verbindung mit anderen CPU-Sicherheitsmodi benutzt werden kann.
- In einer Ausführungsform kann die Firmware die Preboot-Operationen in einer Abfolge von Phasen durchführen.
2 ist ein Flußdiagramm einer beispielhaften Firmwareoperation gemäß einer Ausführungsform der vorliegenden Erfindung. Wie in2 gezeigt, kann beim Starten oder Neustarten der Maschine eine Sicherheitsphase durchgeführt werden (Block110 ). In der Sicherheitsphase können anfängliche Operationen nach dem Rücksetzen bzw. Einschalten der Plattform durchgeführt werden, um zu gewährleisten, daß die Integrität der Firmware intakt ist. Als nächstes kann eine Prä-EFI-Initialisierungsphase (PEI-Phase) durchgeführt werden (Block120 ). In der PEI-Phase kann der Code eine minimale Konfiguration von Prozessorchipsatz und Plattform durchführen, um so das Auffinden von Speicher zu unterstützen. - Als nächstes kann eine Treiber-Ausführungsphase (DXE-Phase, engl. "driver execution") durchgeführt werden (Block
130 ). Dies ist die Phase, in der eine Mehrheit des Firmwarecodes in der Preboot-Umgebung arbeiten kann. In einer Ausführungsform kann der Code in Form einer Anzahl von Treibern implementiert werden, die die Initialisierung der Plattform und der Bauelemente abschließen. Schließlich kann eine Betriebssystem-Ladephase durchgeführt werden (Block140 ). In dieser Phase wird das Betriebssystem geladen, und bei Abschluß dieser Phase übernimmt das Betriebssystem die Kontrolle über die Plattform. - In einer Ausführungsform kann die Firmware einen Virtual-Machine-Monitor-Treiber (VMM-Treiber) starten. Dieser Treiber kann eine Instanz des VMM-Protokolls veröffentlichen. In bestimmten Ausführungsformen kann der Treiber frühzeitig in der DXE-Phase gestartet werden und zum Zweck des Zugriffs auf den Start einer sicheren Umgebung einen SENTER-Befehl ausführen.
- In einer Ausführungsform kann der VMM-Treiber einen SVMM verwirklichen, der in bestimmten Ausführungsformen skalierbare Merkmale aufweisen kann. Die Skalierbarkeit erwächst daraus, daß der VMM-Treiber befähigt ist, das Laden nachfolgender Treiber in einen sicheren Ausführungsmodus zuzulassen (diese werden hier und im folgenden als "Virtual-Machine-Erweiterungen" oder "VMX" bezeichnet). In bestimmten Ausführungsformen kann der SVMM auf einer Ebene mit höchster Privilegierung (z.B. Ring 0P in einem IA32-Verarbeitungssystem) ausgeführt werden. Alle anschließend geladenen Treiber können auf einer Ebene mit niedrigerer Privilegierung (z.B. Ring 3P in einem IA32-Verarbeitungssystem) ausgeführt werden. Des weiteren kann in Ring 3P auch aller sonstiger Code ausgeführt werden, der dazu ausgelegt ist, in der sicheren Preboot-Umgebung zu laufen, wie etwa gastgehostete Systemverwaltungsmodus-Treiber (SMM-Treiber, engl. "System Management Mode Driver") u. dgl. m.
- In verschiedenen Ausführungsformen können diese nachfolgenden Treiber über einen authentifizierten Treiberlademechanismus gestartet werden, um zu gewährleisten, daß nur vertrauenswürdige Treiber in die von dem SVMM verwaltete sichere Preboot-Umgebung geladen werden. In einer solchen Ausführungsform kann der Authentifizierungsvorgang die Verwendung einer Infrastruktur auf Basis öffentlicher Schlüssel (PKI-Infrastruktur, engl. "Public Key Infrastructure") beinhalten, um zu gewährleisten, daß nur vertrauenswürdige Treiber in die VMX-Umgebung geladen werden. Alternativ hierzu kann zum Starten des SVMM eine Kern-Vertrauenswurzel gepflegt werden, wozu insbesondere eine transitive Vertrauensübergabe von einem Rücksetzvektor über die Sicherheitsphase und die PEI-Phase an die DXE-Phase zählt, wie vorstehend beschrieben.
- Der SVMM-Treiber, der das VMM-Protokoll veröffentlicht, kann in bestimmten Ausführungsformen mehrere Rollen haben. Erstens kann er der erste Agent auf einer Plattform sein, der den SENTER-Befehl absetzt, und er kann somit auch für den Empfang nachfolgender Aktivierungen von Systemverwaltungsinterrupts (SMI) verantwortlich werden. In bestimmten Ausführungsformen, beispielsweise bei älteren Betriebssystemen, kann diese Rolle zur Laufzeit des BS beibehalten werden, wohingegen diese Rolle in anderen Ausführungsformen (z.B. EFI-kompatible BS) auf einen vom Betriebssystem bereitgestellten SVMM übertragen werden kann.
- In bestimmten Ausführungsformen kann der SVMM zusätzliche VMX-Treiber laden. Bei diesen Treibern kann es sich um Codefolgen handeln, die danach trachten, von den VMX-Attributen, d.h. von isolierter Speicherung und Ausführung, zu profitieren; zu diesen Treibern können insbesondere zählen: ein BIOS-Integritätsdiensttreiber, erhältlich von der Intel Corporation; Authentifizierungsdienste, wie etwa Kerberos, erhältlich vom Massachusetts Institute of Technology, Cambridge, Massachusetts, oder anderer Sicherheitscode, wie etwa Preboot-Implementierungen kryptographischer Algorithmen, wie etwa Agenten, die asymmetrische kryptographische Berechnungen durchführen, zum Beispiel Rivest Shamir Adleman (RSA), erhältlich von RSA Security, Bedford, Massachusetts. Der Sinn des Isolierens des vorstehend genannten Codes besteht darin, daß die Integrität des Codes (d.h., daß er nicht unbefugt modifiziert wurde) erwünscht ist, um die Sicherheitsdeklarationen des Treiberverhaltens zu erfüllen.
- Es wird nun auf
3 Bezug genommen, in der ein Flußdiagramm des Betriebs einer Preboot-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung gezeigt wird. Wie in3 gezeigt, wird der Firmware die Kontrolle über das System erlaubt (Block210 ). Eine derartige Steuerung kann beim Einschalten, nach einem Systemzustandsereignis (z.B. S3-Schlafzustand) oder anderweitig auftreten. Als nächstes kann die Plattform initialisiert werden (Block220 ). In bestimmten Ausführungsformen kann zu einer derartigen Initialisierung die minimale Konfiguration von Prozessor, Chipsatz und Speicher zählen. - Als nächstes kann, wie in
3 gezeigt, eine sichere Umgebung initialisiert und erstellt werden Block230 ). Zu einer solchen Initialisierung kann das Auslesen des sicheren Codes aus einem persistenten Speicherbauelement zählen. In einer Ausführungsform kann der sichere Code auf einem Flashspeicher-Bauelement abgelegt werden, das dauerhaft und fest mit einer Hauptplatine des Systems verbunden ist. Da dieser Code in einem persistenten Speicherbauelement gespeichert ist und als sicheres Bauelement bekannt ist, verfügt die Preboot-Umgebung über ein Maß an Integrität. Des weiteren kann zur Initialisierung in einer Ausführungsform das Ausführen von Code im Chipsatz zählen, um zu gewährleisten, daß sich der Chipsatz in einem für den sicheren Preboot-Betrieb zulässigen Zustand befindet. In einer Ausführungsform kann die sichere Initialisierung erreicht werden, indem ein Lade-SINIT-Befehl ausgeführt wird. - Das Erstellen der sicheren Umgebung kann in einer Ausführungsform das Erzeugen einer Zusammenfassung in einem festen Token umfassen (dies wird nachstehend näher erörtert), das Informationen über die Plattform in der sicheren Umgebung bereitstellt. Des weiteren kann das Erstellen der sicheren Umgebung das Einrichten eines Speicherstapels umfassen. In einer Ausführungsform kann die sichere Umgebung erstellt werden, indem ein SVMM geladen wird, wie obenstehend erörtert wurde.
- Als nächstes können in der Preboot-Umgebung sichere Operationen durchgeführt werden (Block
240 ). Wie vorliegend erörtert wird, kann zu derartigen Operationen beispielsweise das Versiegeln und Entsiegeln von Geheimnissen mit Hilfe eines festen Tokens zählen. Eine weitere Verwendung der sicheren Umgebung kann darin bestehen, den Flashspeicher zu aktualisieren. Weiterhin können derartige Operationen das Ausführen sicherer oder vertrauenswürdiger Treiber und die Attestierung von Protokollen/Signaturen umfassen. Eine derartige Attestierung von Signaturen kann beispielsweise an einen Kontrolleur (engl. "Challenger") ausgehändigt werden. - Nachdem die gewünschten Operationen in der Preboot-Umgebung durchgeführt worden sind, kann in die Boot-Umgebung eingesprungen werden (Block
250 ). In einer Ausführungsform kann eine transitive Übergabe von der sicheren Preboot-Umgebung an eine vertrauenswürdige BS-Umgebung bereitgestellt werden. In anderen Ausführungsformen kann die sichere Preboot-Umgebung vor dem Starten des BS niedergerissen werden. Alternativ hierzu kann in anderen Ausführungsformen in eine Boot-Umgebung eingesprungen werden, wobei der sichere Modus im Hintergrund beibehalten wird, um zum Beispiel die Plattformintegrität durchzuführen bzw. aufrechtzuerhalten. Die Erörterung erfolgte unter Bezugnahme auf einen einzelnen Prozessor, jedoch kann in anderen Ausführungsformen eine (logische oder reale) Mehrprozessorumgebung vorliegen. - In einer Ausführungsform kann die sichere Preboot-Umgebung ein Geheimnis bewahren, das dann von der Plattform-Firmware benutzt werden kann. Bei einem ersten Start kann die si chere Preboot-Umgebung ein solches Geheimnis in Form eines Wurzelschlüssels erzeugen, der sich für Algorithmen und Protokolle eignet, die von der sicheren Preboot-Umgebung unterstützt werden. Sobald dieser Wurzelschlüssel erzeugt worden ist, kann er geschützt werden, so daß der geschützte Wurzelschlüssel fortan nur an dieselbe, auf derselben Plattform laufende sichere Preboot-Umgebung freigegeben wird.
- Dieser Schutz kann in bestimmten Ausführungsformen mit Hilfe einer Trusted Computing Platform (TCP) (oder eines gleichwertigen "Hardware-Safes") erzielt werden. In einer Ausführungsform kann der Wurzelschlüssel der sicheren Preboot-Umgebung mit Hilfe von Einrichtungen in Form fester Token versiegelt werden. In einer Ausführungsform kann es sich bei einer Einrichtung in Form eines festen Tokens um einen Chip handeln, der an der Hauptplatine des Computersystems angebracht ist und in Verbindung mit der CPU steht; dies wird nachstehend näher erörtert.
- In einer Ausführungsform kann die Erzeugung eines Geheimnisses unter Verwendung einer Versiegelungsoperation erzielt werden, die mit Hilfe eines Schlüssels, der nur dem festen Token zugänglich ist, sowohl den Wurzelschlüssel als auch die registrierte Identität der sicheren Preboot-Umgebung verschlüsselt. Diese verschlüsselten Daten (das Schlüssel-"„BLOB", engl. "Binary Large Object", dt. "großes Binärobjekt") können daraufhin auf Massenspeicher (z.B. einer Festplatte des Computersystems) abgelegt werden. Beim Starten der sicheren Preboot-Umgebung, beispielsweise während eines späteren Bootens der Plattform, kann das Schlüssel-BLOB an das feste Token zurückgegeben werden, welches das BLOB entschlüsselt und mit der für die laufende sichere Preboot-Umgebung registrierten Identität vergleicht. Falls die Identität der laufenden sicheren Preboot-Umgebung mit der in dem BLOB eingebetteten Identität übereinstimmt, wird der Wurzelschlüssel an die sichere Preboot-Umgebung freigegeben.
- In einer Ausführungsform erlaubt die Versiegelungsoperation der Software, explizit die zukünftige "vertrauenswürdige" Konfiguration anzugeben, in der sich die Plattform befinden muß, damit das Geheimnis offenbart wird. Die Versiegelungsoperation schließt implizit auch die zum Zeitpunkt des Durchführens der Versiegelungsoperation relevante Plattformkonfiguration (d.h., die Werte der Plattformkonfigurationsregister (PCR)) ein. Die Versiegelungsoperation kann einen im voraus ausgewählten Wert benutzen, um das BLOB an eine individuelle TCP zu binden.
- Falls die Entsiegelungsoperation Erfolg hat, können an den Aufrufer ein Beleg über die Plattformkonfiguration, die zu dem Zeitpunkt vorlag, als die Versiegelungsoperation ausgeführt wurde, sowie die geheimen Daten zurückgegeben werden.
- In bestimmten Ausführungsformen kann die sichere Preboot-Umgebung außerdem einen ausskalierenden Entwurf zulassen, wobei zusätzliche Sicherheitsmerkmale und -unterstützung über ladbare Treiber bereitgestellt werden können. In einer Ausführungsform kann es sich bei den Treibern um EFI-Laufzeittreiber handeln. Zu diesen Treibern können insbesondere sichere Speicherschnittstellen sowie Treiber für das Ausführen von sicherem Code zählen. Solche Treiber können, jeweils innerhalb einer gehärteten Umgebung, die Authentifizierung von Benutzern, Kontrolleure (engl. "Challengers") für die Integrität entfernter Images sowie attestierten Booten bereitstellen.
- In einer Ausführungsform kann die sichere Preboot-Umgebung die Systemverwaltungs-Basisadresse (SMBASE) absichern, so daß keine andere Preboot-Komponente den SENTER-Befehl ausführen und dadurch den Systemverwaltungs-Direktzugriffsspeicher (SMRAM) einsehen kann.
- Auf diese Weise kann die sichere Preboot-Umgebung in einer solchen Ausführungsform alle SMI-Aktivierungen nach dem Start empfangen. Mittels des frühzeitigen Starts der sicheren Preboot-Umgebung wird aufgrund der zugehörigen Aktivierung des Systemverwaltungsmodus-Speichers (SMMEM) die Fähigkeit von böswilliger Software, einen SENTER-Befehl auszuführen und den SMRAM einzusehen, verringert.
- In verschiedenen Ausführungsformen kann die sichere Preboot-Umgebung mehrere Entladeoptionen aufweisen. Im Fall des Bootens eines EFI-kompatiblen BS kann die sichere Preboot-Umgebung die sichere Umgebung niederreißen. Alternativ hierzu kann die sichere Preboot-Umgebung bestehen bleiben, bis ein späterer "Entlade"-Service aufgerufen wird.
- Zum Beispiel kann die sichere Preboot-Umgebung eine verwaltete Übergabe an einen BS-SVMM bereitstellen. Dies eröffnet eine Möglichkeit dazu, vom Preboot an eine Vertrauenswurzel herzustellen, die ungebrochen an das Betriebssystem transferiert werden kann, wodurch zusätzliche Gewißheit über die Stabilität der Plattform bereitgestellt wird, die über die Gewißheit hinausgeht, die das BS aus dem Laden seines eigenen SVMM beim Booten ableiten kann, sowie größere Gewißheit über die Herkunft des SMM-Codes der Plattform, der zur Laufzeit des Betriebssystems unter der Kontrolle eines OS-SVMM weiter Bestand hat.
- In verschiedenen Ausführungsformen kann die vorliegende Erfindung eine sichere Betriebsumgebung für Code im Preboot-Raum bereitstellen. Eine solche Umgebung eröffnet Möglichkeiten, die Handhabungsweise von Operationen, die für die Integrität der Plattform kritisch sind, zu verändern und so den Entwurfsrahmen der Plattform zu erweitern und deren Nützlichkeit für den Benutzer zu verbessern.
- Zum Beispiel kann in der sicheren Preboot-Umgebung eine Aktualisierung des Flashspeichers durchgeführt werden, ohne einen "Init"-Befehl zu erzwingen, da der Schreibzugriff auf den Flashspeicher von vertrauenswürdigem Code, der innerhalb der sicheren Preboot-Umgebung abläuft, geöffnet werden kann. Insbesondere können von einem SVMM Sicherheit schaffende Speicherverwaltungseinheits-Operationen eingerichtet werden, wie etwa insbesondere Speicherschutz auf Seitenebene, um ausschließlich vertrauenswürdige Parteien zum Zugriff auf den Flashbereich zu berechtigen. Zu diesen Parteien kann insbesondere der Aktualisierungscode des Plattformeigners zählen.
- In einer weiteren Ausführungsform kann eine Aktualisierung des Flashspeichers von einem vertrauenswürdigen BS in einer Boot-Umgebung durchgeführt werden. In einer solchen Umgebung kann die CPU, solange sie sich in der sicheren Preboot-Umgebung befindet, den Flashspeicherbereich über Speicherschutzmechanismen auf Seitenebene schützen. Wenn eine transitive Übergabe von der sicheren Preboot-Umgebung aus stattfindet, können dem BS dieselben geschützten Speicherbereiche bereitgestellt werden. Folglich können in einer Boot-Umgebung der Zugriff auf und die Aktualisierung des geschützten Speichers (d.h., des Flashspeichers) entsprechend erfolgen.
- In bestimmten Ausführungsformen kann der SVMM zur Laufzeit des Betriebssystems (BS) benutzt werden und neben dem SVMM des Betriebssystems weiterlaufen. Der BIOS-SVMM kann plattformspezifisches Verhalten bereitstellen, wie etwa Verläßlichkeit-Verfügbarkeit-Wartbarkeit (RAS, engl. "Reliability-Availability-Serviceability"). Hierzu kann die Handhabung spezieller Plattformfehler zählen, wie etwa das Schreiben auf eine physikalische Speicherseite mit einem vom Fehlerkorrekturcode (ECC, engl. "Error-Correcting Code") gemeldeten Einzelbitfehler (SBE, engl. "Single-Bit Error"). Ein vom Chipsatz erkannter SBE führt oft dazu, daß zum Aktualisieren der betroffenen Bits durch Lesen und anschließendes Zurückschreiben der Zugriff auf einen Speicherbereich notwendig wird. Es gibt keinen standardisierten Weg, um ein Betriebssystem von einer solchen Fehlfunktion und der nötigen Reaktion in Kenntnis zu setzen, und zur Laufzeit des Betriebssystems kontrolliert das BS den gesamten Speicher. Somit sorgt ein BIOS-SVMM als Partner des BS-SVMM für plattformspezifische Aktivitäten, die vormals im Systemverwaltungsmodus (SMM) vorgenommen wurden; der SMM hatte vor dem Aufkommen von sicheren Betriebssystemen vollen Zugriff auf das System.
- Außerdem nehmen heutige Betriebssysteme eine stillschweigende Vertrauensdeklaration bezüglich der Plattform vor. Zum Beispiel erstellt das BIOS Tabellen, die nicht zählbare Ressourcen beschreiben, wie etwa das gesamte Speicherabbild, feste Ports, die Adresse des lokalen APIC (engl. "Advanced Programmable Interrupt Controller", dt. "erweiterter programmierbarer Interrupt-Controller"), die Wegewahl für Interrupts und andere Ressourcen. Diese Tabellen werden lediglich durch simple Prüfsummen geschützt. Für vertrauenswürdige Plattformen könnten diese Tabellen, die heute in unverschlüsseltem Speicher abgelegt werden, einen Angriffspunkt darstellen. Der Angreifer könnte den Wert, der die Plattform beschreibt, austauschen und das Betriebssystem belügen; im Rahmen dieses Angriffs könnte Speicher versteckt werden; es könnten Ports vorgetäuscht werden u. dgl. m. Eine Preboot-Umgebung kann benutzt werden, um diese Tabellen zu erzeugen, deren Inhalte zu signieren, und sie transitiv an einen OS-SVMM mit einer Vertrauensdeklaration zu übergeben, u. dgl. m.
- Ausführungsformen können in einem Computerprogramm implementiert werden. Somit können diese Ausführungsformen auf einem Speichermedium abgelegt werden, auf dem Anweisungen gespeichert sind, die benutzt werden können, um ein Computersystem dazu zu programmieren, die Ausführungsformen auszuführen. Als Speichermedium können insbesondere dienen: jede Art von Speicherplatte einschließlich Disketten, optischen Speicherplatten, als Festwertspeicher ausgeführten Compact Discs (CD-ROM), wiederbeschreibbaren Compact Discs (CD-RW) und magnetooptischen Platten, Halbleiterbauelemente wie etwa Festwertspeicher (ROM), Speicher mit wahlfreiem Zugriff (RAM), löschbare programmierbare Festwertspeicher (EPROM), elektrisch löschbare und programmierbare Festwertspeicher (EEPROM), Flashspeicher, magnetische oder optische Karten oder jede beliebige, zum Speichern von elektronischen Anweisungen geeignete Medienart. Ebenso können Ausführungsformen als Softwaremodule implementiert werden, die von einem programmierbaren Steuerungsbauelement ausgeführt werden. Bei einem programmierbaren Steuerungsbauelement kann es sich um einen Computerprozessor oder eine aufgabenspezifische Ablaufsteuereinheit handeln. Aufgabenspezifische Ablaufsteuereinheiten können als Hardwarebauelement ausgeführt werden, wie etwa als Platine mit diskreter Logik, als integrierte Schaltungen oder als speziell entworfene anwendungsspezifische integrierte Schaltungen (ASIC, engl. "Application Specific Integrated Circuit").
- Ausführungsbeispiele können in Software implementiert werden, die durch ein geeignetes Datenverarbeitungssystem ausgeführt wird, das mit einer geeigneten Kombination aus Hardwarebauelementen konfiguriert ist.
4 ist ein Blockdiagramm eines repräsentativen Datenverarbeitungssystems, nämlich des Computersystems300 , mit dem Ausführungsformen der Erfindung benutzt werden können. - Es wird nun auf
4 Bezug genommen. In einer Ausführungsform weist das Computersystem300 einen Prozessor310 auf, der einen Allzweckprozessor oder Spezialprozessor, wie etwa einen Mikroprozessor, Mikrocontroller, ASIC, ein programmierbares Gate-Array (PGA) u. dgl. m., aufweisen kann. - Der Prozessor
310 kann in einer Ausführungsform über einen Host-Bus315 an einen Speicherhub320 gekoppelt sein, welcher über einen Speicherbus325 an einen Systemspeicher330 gekoppelt sein kann. Wie in4 gezeigt, kann der Systemspeicher330 in bestimmten Ausführungsformen geschützte Speicherseiten aufweisen. Zu solchen Seiten können beispielsweise Seiten im Zusammenhang mit dem SVMM und anderen vertrauenswürdigen virtuellen Maschinen zählen. In bestimmten Ausführungsformen kann der Speicherhub320 so konfiguriert sein, daß er den Zugriff auf mindestens gewisse Abschnitte der geschützten Speicherseiten des Systemspeichers330 blockiert. Der Speicherhub320 kann außerdem über einen AGP-Bus333 (engl. "Advanced Graphics Port") an einen Videocontroller335 gekoppelt sein, der an eine Anzeige337 gekoppelt sein kann. Der AGP-Bus333 kann der "Accelerated Graphics Port Interface"-Spezifikation in der Revision 2.0 entsprechen, die am 4. Mai 1998 von der Intel Corporation, Santa Clara, Kalifornien veröffentlicht wurde. - Der Speicherhub
320 kann zudem (über eine Hubverbindung338 ) an einen Eingabe/Ausgabe-Hub (E/A-Hub)340 gekoppelt sein, der an einen Eingabe/Ausgabe-Erweiterungsbus (E/A-Erweiterungsbus)342 und einen PCI-Bus344 (engl. "Peripheral Component Interconnect") entsprechend der Festlegung aus der "PCI Local Bus"-Spezifikation, Produktionsversion, Revision 2.1 vom Juni 1995 gekoppelt ist. Der E/A-Erweiterungsbus342 kann an einen E/A-Controller346 gekoppelt sein, der den Zugriff auf ein oder mehrere E/A-Bauelemente kontrolliert. Wie in4 gezeigt, können zu diesen Bauelementen in einer Ausführungsform Speicherbauelemente, wie etwa ein Diskettenlaufwerk350 , und Eingabebauelemente, wie etwa eine Tastatur352 und Maus354 , zählen. An den E/A-Erweiterungsbus342 kann ebenfalls ein Flashspeicher341 gekoppelt sein, der in einer Ausführungsform den sicheren Code für die Preboot-Umgebung dauerhaft speichern kann. Der E/A-Hub340 kann zum Beispiel auch an ein Festplattenlaufwerk356 gekoppelt sein, wie in4 gezeigt. Es versteht sich, daß in das System auch andere Speichermedien aufgenommen werden können. - An den E/A-Erweiterungsbus
342 kann ebenfalls ein festes Token343 gekoppelt sein. In einer Ausführungsform kann das feste Token343 permanent an eine Hauptplatine des Computersystems300 gebunden sein. Das feste Token343 , bei dem es sich um einen Allzweckprozessor, ASIC oder dergleichen handeln kann, kann grundlegende sogenannte "Smartcard"-Merkmale aufweisen. In bestimmten Ausführungsformen können zu diesen Merkmale kryptographische Fähigkeiten, wie etwa Schlüssel, Speicher, Signieren und Verschlüsselung, zählen. In verschiedenen Ausführungsformen kann das feste Token343 zur Attestierung und zum Versiegeln/Entsiegeln von Geheimnissen benutzt werden. Solche Attestierungen können das Attestieren der Konformität der Plattform und des Ladezustands spezifischer Monitore/Applets umfassen. Bezüglich des Versiegelns von Geheimnissen kann das feste Token343 so programmiert sein, daß es Geheimnisse an dieselbe Umgebung oder an eine ausgewählte Umgebung versiegelt/entsiegelt. - In bestimmten Ausführungsformen kann ein portables Token
358 an den E/A-Hub340 gekoppelt sein. Es versteht sich, daß eine solche Kopplung über beliebige Standardverbindungen erfolgen kann, wie beispielsweise etwa über Universal Serial Bus (USB). In einer Ausführungsform kann das portable Token358 Merkmale aufweisen, die denen des festen Tokens343 ähneln. Zum Beispiel kann das portable Token358 benutzt werden, um das System auf einen Benutzer hin zu überprüfen, um portable Benutzergeheimnisse bereitzustellen, um anonyme Identifikationen bereitzustellen u. dgl. m. - In einer alternativen Ausführungsform können der E/A-Controller
346 wie auch andere Kontrollfunktionen in den E/A-Hub340 integriert sein. Der PCI-Bus344 kann außerdem an verschiedene Komponenten gekoppelt sein, insbesondere zum Beispiel an einen Netzwerkcontroller360 , der an einen Netzwerkport (nicht gezeigt) gekoppelt ist. - Zusätzliche Bauelemente können an den E/A-Erweiterungsbus
342 und den PCI-Bus344 gekoppelt sein, wie etwa eine Eingabe/Ausgabe-Steuerschaltung, die an einen parallelen oder seriellen Port gekoppelt ist, ein nichtflüchtiger Speicher u. dgl. m. - Die Beschreibung nimmt zwar auf spezifische Komponenten des Systems
300 Bezug; es wird jedoch in Betracht gezogen, daß zahlreiche Modifikationen und Abwandlungen der beschriebenen und dargestellten Ausführungsformen möglich sein können. Zum Beispiel könnten anstelle der Speicher- und E/A-Hubs ein Hostbrückencontroller und ein Systembrückencontroller gleichwertige Funktionen bereitstellen. Außerdem können beliebige Busprotokolle aus einer Anzahl möglicher Busprotokolle implementiert sein. - Zwar wurde die vorliegende Erfindung unter Bezugnahme auf eine begrenzte Anzahl von Ausführungsformen beschrieben; der Fachmann wird jedoch zahlreiche Modifikationen und Abwandlungen hiervon erkennen. Es ist beabsichtigt, daß die beigefügten Ansprüche alle Modifikationen und Abwandlungen abdecken, die in den Rahmen des Gedankens und des Umfangs der vorliegenden Erfindung fallen.
- ZUSAMMENFASSUNG
- In einer Ausführungsform weist die vorliegende Erfindung ein Verfahren zum Herstellen einer sicheren Preboot-Umgebung in einem Computersystem und zum Durchführen mindestens einer sicheren Operation in der sicheren Umgebung auf. In einer Ausführungsform kann es sich bei der sicheren Operation um das Speichern eines Geheimnisses in der sicheren Preboot-Umgebung handeln.
Claims (28)
- Verfahren, das umfaßt: Herstellen einer sicheren Preboot-Umgebung in einem Computersystem; und Durchführen mindestens einer sicheren Operation in der sicheren Preboot-Umgebung.
- Verfahren nach Anspruch 1, wobei das Durchführen der mindestens einen sicheren Operation das Speichern eines Geheimnisses umfaßt.
- Verfahren nach Anspruch 1, das ferner ein Transferieren des Computersystems von der sicheren Preboot-Umgebung in eine Betriebssystem-Umgebung umfaßt.
- Verfahren nach Anspruch 1, das ferner ein Starten eines sicheren Virtual-Machine-Monitors in der sicheren Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 1, das ferner ein Aktualisieren eines Flashspeichers in der sicheren Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 1, das ferner ein Absetzen eines Systemverwaltungsbefehls in der sicheren Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 1, das ferner ein Empfangen von Systemverwaltungsinterrupts in der sicheren Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 2, das ferner ein Erzeugen des Geheimnisses in der Form eines Wurzelschlüssels, der über ein festes Token versiegelt wird, umfaßt.
- Verfahren nach Anspruch 8, das ferner ein Freigeben des Wurzelschlüssels an das Computersystem ausschließlich in der sicheren Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 1, das ferner ein Isolieren eines schädlichen Codes von überprüfbarem Code umfaßt.
- Verfahren, das umfaßt: Bereitstellen einer Firmware-Steuerung eines Computersystems in einer Preboot-Umgebung, Erstellen einer sicheren Umgebung in der Preboot-Umgebung; und Durchführen mindestens einer sicheren Operation in der sicheren Umgebung.
- Verfahren nach Anspruch 11, das ferner ein Eintreten in eine Boot-Umgebung aus der Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 12, das ferner ein Beibehalten der sicheren Umgebung in einem Hintergrund der Boot-Umgebung umfaßt.
- Verfahren nach Anspruch 12, das ferner ein Niederreißen der sicheren Umgebung umfaßt, falls die Boot-Umgebung eine vertrauenswürdige Boot-Umgebung ist.
- Verfahren nach Anspruch 11, wobei das Durchführen der mindestens einen sicheren Operation in der sicheren Umgebung ein Speichern eines Geheimnisses in der sicheren Umgebung umfaßt.
- Verfahren nach Anspruch 15, das ferner ein Benutzen eines festen Tokens zum Speichern des Geheimnisses umfaßt.
- Verfahren nach Anspruch 15, das ferner ein Zugreifen auf das Geheimnis in einem anderen Eintrittspunkt der sicheren Umgebung in der Preboot-Umgebung umfaßt.
- Verfahren nach Anspruch 13, das ferner ein Benutzen der sicheren Umgebung zum Durchführen von Zuverlässigkeit-Verfügbarkeit-Wartbarkeit umfaßt.
- Verfahren nach Anspruch 12, das ferner das Erzeugen von Tabellen in der Preboot-Umgebung und das Bereitstellen der Tabellen an die Boot-Umgebung mit einer Vertrauensdeklaration umfaßt.
- Erzeugnis, das ein maschinenlesbares Speichermedium umfaßt, das Anweisungen enthält, die bei ihrer Ausführung ein System in die Lage zu folgendem versetzen: Herstellen einer sicheren Preboot-Umgebung in einem Computersystem und Durchführen mindestens einer sicheren Operation in der sicheren Preboot-Umgebung.
- Erzeugnis nach Anspruch 20, das ferner Anweisungen umfaßt, die bei ihrer Ausführung das System in die Lage zum Speichern eines Geheimnisses in der sicheren Preboot-Umgebung versetzen.
- Erzeugnis nach Anspruch 21, das ferner Anweisungen umfaßt, die bei ihrer Ausführung das System in die Lage versetzen, das Geheimnis in Form eines Wurzelschlüssels, der über ein festes Token versiegelt wird, zu erzeugen.
- Erzeugnis nach Anspruch 22, das ferner Anweisungen umfaßt, die bei ihrer Ausführung das System in die Lage versetzen, den Wurzelschlüssel ausschließlich in der sicheren Preboot-Umgebung an das Computersystem freizugeben.
- System, das umfaßt: mindestens ein Speicherelement, das Anweisungen enthält, die bei ihrer Ausführung das System in die Lage versetzen, eine sichere Preboot-Umgebung in einem Computersystem herzustellen und mindestens eine sichere Operation in der sicheren Preboot-Umgebung durchzuführen, und einen Prozessor, der an das mindestens eine Speicherbauelement gekoppelt ist und die Anweisungen ausführt.
- System nach Anspruch 24, das ferner Anweisungen umfaßt, die bei ihrer Ausführung das System in die Lage versetzen, ein Geheimnis in der sicheren Preboot-Umgebung zu speichern.
- System nach Anspruch 24, das ferner einen Flashspeicher umfaßt, der einen sicheren BIOS-Code enthält.
- System nach Anspruch 24, das ferner ein festes Token umfaßt, das an den Prozessor gekoppelt ist.
- System nach Anspruch 27, wobei das feste Token mindestens einen Wurzelschlüssel für eine geheimnisbasierte Sicherheit umfaßt.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/306,570 US7974416B2 (en) | 2002-11-27 | 2002-11-27 | Providing a secure execution mode in a pre-boot environment |
US10/306,570 | 2002-11-27 | ||
PCT/US2003/033225 WO2004051444A2 (en) | 2002-11-27 | 2003-10-20 | Providing a secure execution mode in a pre-boot environment |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10393662T5 true DE10393662T5 (de) | 2005-08-25 |
Family
ID=32325726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10393662T Ceased DE10393662T5 (de) | 2002-11-27 | 2003-10-20 | Bereitstellen eines sicheren Ausführungsmodus in einer Preboot-Umgebung |
Country Status (8)
Country | Link |
---|---|
US (3) | US7974416B2 (de) |
CN (1) | CN100511086C (de) |
AU (1) | AU2003286519A1 (de) |
DE (1) | DE10393662T5 (de) |
GB (2) | GB2411989B (de) |
HK (1) | HK1075509A1 (de) |
TW (1) | TWI238357B (de) |
WO (1) | WO2004051444A2 (de) |
Families Citing this family (83)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040128493A1 (en) * | 2002-12-27 | 2004-07-01 | Zimmer Vincent J. | Methods and apparatus for providing a firmware defined radio |
GB2403820A (en) * | 2003-03-28 | 2005-01-12 | Hewlett Packard Development Co | Security policy in trusted computing systems |
US7380136B2 (en) * | 2003-06-25 | 2008-05-27 | Intel Corp. | Methods and apparatus for secure collection and display of user interface information in a pre-boot environment |
US7913226B2 (en) * | 2003-10-01 | 2011-03-22 | Hewlett-Packard Development Company, L.P. | Interposing a virtual machine monitor and devirtualizing computer hardware at runtime |
US7793287B2 (en) * | 2003-10-01 | 2010-09-07 | Hewlett-Packard Development Company, L.P. | Runtime virtualization and devirtualization of I/O devices by a virtual machine monitor |
US7694121B2 (en) * | 2004-06-30 | 2010-04-06 | Microsoft Corporation | System and method for protected operating system boot using state validation |
JP4447977B2 (ja) | 2004-06-30 | 2010-04-07 | 富士通マイクロエレクトロニクス株式会社 | セキュアプロセッサ、およびセキュアプロセッサ用プログラム。 |
US20060041932A1 (en) * | 2004-08-23 | 2006-02-23 | International Business Machines Corporation | Systems and methods for recovering passwords and password-protected data |
US7568225B2 (en) * | 2004-09-08 | 2009-07-28 | Hewlett-Packard Development Company, L.P. | System and method for remote security enablement |
US7565553B2 (en) * | 2005-01-14 | 2009-07-21 | Microsoft Corporation | Systems and methods for controlling access to data on a computer with a secure boot process |
US7506380B2 (en) * | 2005-01-14 | 2009-03-17 | Microsoft Corporation | Systems and methods for boot recovery in a secure boot process on a computer with a hardware security module |
US8181020B2 (en) * | 2005-02-02 | 2012-05-15 | Insyde Software Corp. | System and method for securely storing firmware |
KR101059668B1 (ko) * | 2005-03-05 | 2011-08-25 | 인텔 코오퍼레이션 | 오퍼레이팅 시스템 독립 환경에서의 비동기식 네트워크 스택 동작 |
US8806224B2 (en) * | 2005-06-28 | 2014-08-12 | Intel Corporation | Low cost trusted platform |
US20070239996A1 (en) * | 2006-03-20 | 2007-10-11 | Cromer Daryl C | Method and apparatus for binding computer memory to motherboard |
WO2008046101A2 (en) | 2006-10-13 | 2008-04-17 | Ariel Silverstone | Client authentication and data management system |
US9280659B2 (en) * | 2006-12-29 | 2016-03-08 | Intel Corporation | Methods and apparatus for remeasuring a virtual machine monitor |
US20080244553A1 (en) | 2007-03-28 | 2008-10-02 | Daryl Carvis Cromer | System and Method for Securely Updating Firmware Devices by Using a Hypervisor |
US8127292B1 (en) * | 2007-06-22 | 2012-02-28 | Parallels Holdings, Ltd. | Virtualization system with hypervisor embedded in bios or using extensible firmware interface |
US7934096B2 (en) * | 2007-07-27 | 2011-04-26 | Microsoft Corporation | Integrity protected smart card transaction |
US7831858B2 (en) * | 2007-08-31 | 2010-11-09 | Intel Corporation | Extended fault resilience for a platform |
US8301907B2 (en) * | 2007-09-28 | 2012-10-30 | Intel Corporation | Supporting advanced RAS features in a secured computing system |
WO2009064083A1 (en) * | 2007-11-12 | 2009-05-22 | Samsung Electronics Co., Ltd. | Method and apparatus for booting host |
US8522236B2 (en) * | 2007-12-28 | 2013-08-27 | Intel Corporation | Method and system for establishing a robust virtualized environment |
US8583908B2 (en) * | 2007-12-31 | 2013-11-12 | Intel Corporation | Enhanced network and local boot of Unified Extensible Firmware Interface images |
US8201161B2 (en) * | 2008-01-07 | 2012-06-12 | Lenovo (Singapore) Pte. Ltd. | System and method to update device driver or firmware using a hypervisor environment without system shutdown |
DE102008011925B4 (de) * | 2008-02-29 | 2018-03-15 | Globalfoundries Inc. | Sicheres Initialisieren von Computersystemen |
US8370641B2 (en) * | 2008-05-24 | 2013-02-05 | Via Technologies, Inc. | Initialization of a microprocessor providing for execution of secure code |
US8327415B2 (en) * | 2008-05-30 | 2012-12-04 | Intel Corporation | Enabling byte-code based image isolation |
US8201163B2 (en) * | 2008-07-16 | 2012-06-12 | Dell Products, Lp | Input/output transaction management during platform initiation |
US20100083002A1 (en) * | 2008-09-30 | 2010-04-01 | Liang Cui | Method and System for Secure Booting Unified Extensible Firmware Interface Executables |
US9559842B2 (en) * | 2008-09-30 | 2017-01-31 | Hewlett Packard Enterprise Development Lp | Trusted key management for virtualized platforms |
US8832256B2 (en) * | 2008-11-28 | 2014-09-09 | Red Hat, Inc. | Providing a rescue Environment in a software provisioning environment |
US9805196B2 (en) | 2009-02-27 | 2017-10-31 | Microsoft Technology Licensing, Llc | Trusted entity based anti-cheating mechanism |
JP4692912B2 (ja) * | 2009-03-18 | 2011-06-01 | 日本電気株式会社 | リソース割り当てシステム、及びリソース割り当て方法 |
US8806620B2 (en) * | 2009-12-26 | 2014-08-12 | Intel Corporation | Method and device for managing security events |
US8479292B1 (en) * | 2010-11-19 | 2013-07-02 | Symantec Corporation | Disabling malware that infects boot drivers |
US9087196B2 (en) * | 2010-12-24 | 2015-07-21 | Intel Corporation | Secure application attestation using dynamic measurement kernels |
US8375221B1 (en) * | 2011-07-29 | 2013-02-12 | Microsoft Corporation | Firmware-based trusted platform module for arm processor architectures and trustzone security extensions |
BR112014003390A2 (pt) * | 2011-08-30 | 2017-02-21 | Hewlett Packard Development Co Lp | sistema de computação, método para lidar com pedidos de gerenciamento de sistema em um sistema de computação e meio lido por computador |
US8949586B2 (en) * | 2011-10-06 | 2015-02-03 | Cisco Technology, Inc. | System and method for authenticating computer system boot instructions during booting by using a public key associated with a processor and a monitoring device |
US10325297B2 (en) | 2011-11-28 | 2019-06-18 | Dell Products, Lp | Method for comparing sales performance of web sites and a system therefor |
CN102726027B (zh) | 2011-12-28 | 2014-05-21 | 华为技术有限公司 | 虚拟机全盘加密下预启动时的密钥传输方法和设备 |
JP5990927B2 (ja) * | 2012-02-17 | 2016-09-14 | 富士電機株式会社 | 制御システム、制御装置及びプログラム実行制御方法 |
WO2014021867A1 (en) * | 2012-07-31 | 2014-02-06 | Hewlett-Packard Development Company, L.P. | Modify executable bits of system management memory page table |
US9218178B2 (en) * | 2012-08-29 | 2015-12-22 | Microsoft Technology Licensing, Llc | Secure firmware updates |
US8898654B2 (en) * | 2012-08-29 | 2014-11-25 | Microsoft Corporation | Secure firmware updates |
TWI564747B (zh) * | 2012-10-19 | 2017-01-01 | 威盛電子股份有限公司 | 電子裝置與安全開機方法 |
US10579405B1 (en) * | 2013-03-13 | 2020-03-03 | Amazon Technologies, Inc. | Parallel virtual machine managers |
US9280687B2 (en) * | 2013-03-15 | 2016-03-08 | Lenovo (Singapore) Pte. Ltd. | Pre-boot authentication using a cryptographic processor |
WO2014204363A1 (en) * | 2013-06-19 | 2014-12-24 | Telefonaktiebolaget L M Ericsson (Publ) | Method and an integrated circuit for executing a trusted application within a trusted runtime environment |
US9349009B2 (en) | 2013-07-15 | 2016-05-24 | Paul A. Rivera | Method and apparatus for firmware based system security, integrity, and restoration |
US20150121054A1 (en) * | 2013-10-31 | 2015-04-30 | Advanced Micro Devices, Inc. | Platform Secure Boot |
TW201535145A (zh) * | 2013-12-04 | 2015-09-16 | Insyde Software Corp | 使用保護讀取儲存器安全地儲存韌體數據之系統及方法 |
US9575791B2 (en) * | 2014-02-12 | 2017-02-21 | Dell Products, Lp | Unified extensible firmware interface system management mode initialization protections with system management interrupt transfer monitor sandboxing |
US9509502B2 (en) | 2014-03-13 | 2016-11-29 | Intel Corporation | Symmetric keying and chain of trust |
US9521125B2 (en) | 2014-03-13 | 2016-12-13 | Intel Corporation | Pseudonymous remote attestation utilizing a chain-of-trust |
US9348997B2 (en) * | 2014-03-13 | 2016-05-24 | Intel Corporation | Symmetric keying and chain of trust |
US9785801B2 (en) * | 2014-06-27 | 2017-10-10 | Intel Corporation | Management of authenticated variables |
US9594927B2 (en) * | 2014-09-10 | 2017-03-14 | Intel Corporation | Providing a trusted execution environment using a processor |
US9984255B2 (en) * | 2014-09-30 | 2018-05-29 | Samsung Electronics Co., Ltd. | Methods and apparatus to enable runtime checksum verification of block device images |
CN107077568B (zh) * | 2014-11-17 | 2020-08-25 | 英特尔公司 | 对称密钥和信任链 |
CN104598841B (zh) * | 2014-12-29 | 2017-11-28 | 东软集团股份有限公司 | 一种面向终端安全的双***引导方法和装置 |
US10430589B2 (en) * | 2015-03-19 | 2019-10-01 | Intel Corporation | Dynamic firmware module loader in a trusted execution environment container |
EP3079093B1 (de) * | 2015-04-10 | 2020-03-04 | Samsung Electronics Co., Ltd. | Verfahren und vorrichtung zur ermöglichung der laufzeitprüfsummenverifizierung von blockvorrichtungsbildern |
US20160378686A1 (en) * | 2015-06-24 | 2016-12-29 | Intel Corporation | Memory encryption exclusion method and apparatus |
US10474596B2 (en) * | 2015-06-25 | 2019-11-12 | Intel Corporation | Providing dedicated resources for a system management mode of a processor |
CN105159707B (zh) * | 2015-08-14 | 2018-06-29 | 飞天诚信科技股份有限公司 | 一种安全的金融终端的固件烧写方法及金融终端 |
US10621336B2 (en) * | 2015-09-26 | 2020-04-14 | Intel Corporation | Technologies for software attack detection using encoded access intent |
US10270596B2 (en) | 2016-09-16 | 2019-04-23 | International Business Machnines Corporation | Generating memory dumps |
US10108800B1 (en) * | 2017-01-10 | 2018-10-23 | Gbs Laboratories, Llc | ARM processor-based hardware enforcement of providing separate operating system environments for mobile devices with capability to employ different switching methods |
US10467416B2 (en) | 2017-06-16 | 2019-11-05 | International Business Machines Corporation | Securing operating system configuration using hardware |
US10769269B2 (en) * | 2017-07-10 | 2020-09-08 | Intel Corporation | Method and apparatus to gather platform configuration profile in a trustworthy manner |
US20190087580A1 (en) * | 2017-09-19 | 2019-03-21 | Microsoft Technology Licensing, Llc | Secure launch for a hypervisor |
US11119947B2 (en) | 2017-10-30 | 2021-09-14 | Hewlett-Packard Development Company, L.P. | Secure hardware initialization |
DE102018120347A1 (de) * | 2018-08-21 | 2020-02-27 | Pilz Gmbh & Co. Kg | Automatisierungssystem zur Überwachung eines sicherheitskritischen Prozesses |
US11385902B2 (en) * | 2019-11-17 | 2022-07-12 | Nuvoton Technology Corporation | Secure firmware management with hierarchical boot sequence using last known good firmware |
US11080039B2 (en) | 2019-11-25 | 2021-08-03 | Micron Technology, Inc. | Resilient software updates in secure storage devices |
WO2021118520A1 (en) | 2019-12-09 | 2021-06-17 | Hewlett-Packard Development Company, L.P. | Secure operating modes for computing devices |
US20210141903A1 (en) * | 2020-11-19 | 2021-05-13 | Sarathy Jayakumar | Seamless smm global driver update base on smm root of trust |
US11977640B2 (en) * | 2021-07-12 | 2024-05-07 | Dell Products, L.P. | Systems and methods for authenticating the identity of an information handling system |
US11836500B2 (en) * | 2022-05-06 | 2023-12-05 | Dell Products L.P. | Systems and methods for basic input/output system driver offline protocol |
WO2024035933A1 (en) * | 2022-08-12 | 2024-02-15 | Cyemptive Technologies, Inc. | Data manipulation detection through a verification operating system |
Family Cites Families (69)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2708608B2 (ja) | 1990-05-25 | 1998-02-04 | 富士通株式会社 | 仮想計算機のipl処理方式 |
US5444850A (en) * | 1993-08-04 | 1995-08-22 | Trend Micro Devices Incorporated | Method and apparatus for controlling network and workstation access prior to workstation boot |
CA2191331C (en) * | 1994-05-26 | 2005-12-20 | Mark Stephen Anderson | Secure computer architecture |
US6763454B2 (en) * | 1994-05-27 | 2004-07-13 | Microsoft Corp. | System for allocating resources in a computer system |
US5537540A (en) * | 1994-09-30 | 1996-07-16 | Compaq Computer Corporation | Transparent, secure computer virus detection method and apparatus |
US5553083B1 (en) * | 1995-01-19 | 2000-05-16 | Starburst Comm Corp | Method for quickly and reliably transmitting frames of data over communications links |
SE504085C2 (sv) * | 1995-02-01 | 1996-11-04 | Greg Benson | Sätt och system för att hantera dataobjekt i enlighet med förutbestämda villkor för användare |
US5555373A (en) * | 1995-02-06 | 1996-09-10 | International Business Machines Corporation | Inactivity monitor for trusted personal computer system |
US6272538B1 (en) * | 1996-07-30 | 2001-08-07 | Micron Technology, Inc. | Method and system for establishing a security perimeter in computer networks |
US5937063A (en) * | 1996-09-30 | 1999-08-10 | Intel Corporation | Secure boot |
US5949882A (en) * | 1996-12-13 | 1999-09-07 | Compaq Computer Corporation | Method and apparatus for allowing access to secured computer resources by utilzing a password and an external encryption algorithm |
US6400823B1 (en) | 1996-12-13 | 2002-06-04 | Compaq Computer Corporation | Securely generating a computer system password by utilizing an external encryption algorithm |
US5960084A (en) * | 1996-12-13 | 1999-09-28 | Compaq Computer Corporation | Secure method for enabling/disabling power to a computer system following two-piece user verification |
US6581162B1 (en) * | 1996-12-31 | 2003-06-17 | Compaq Information Technologies Group, L.P. | Method for securely creating, storing and using encryption keys in a computer system |
US5887131A (en) * | 1996-12-31 | 1999-03-23 | Compaq Computer Corporation | Method for controlling access to a computer system by utilizing an external device containing a hash value representation of a user password |
US6009355A (en) * | 1997-01-28 | 1999-12-28 | American Calcar Inc. | Multimedia information and control system for automobiles |
US5953502A (en) * | 1997-02-13 | 1999-09-14 | Helbig, Sr.; Walter A | Method and apparatus for enhancing computer system security |
US6446153B2 (en) * | 1997-03-14 | 2002-09-03 | Intel Corporation | Shared embedded microcontroller interface |
US6477648B1 (en) * | 1997-03-23 | 2002-11-05 | Novell, Inc. | Trusted workstation in a networked client/server computing system |
US6560702B1 (en) * | 1997-12-10 | 2003-05-06 | Phoenix Technologies Ltd. | Method and apparatus for execution of an application during computer pre-boot operation |
US6564318B1 (en) * | 1997-12-10 | 2003-05-13 | Phoenix Technologies Ltd. | Method and apparatus for execution of an application during computer pre-boot operation and post-boot under normal OS control |
US6378072B1 (en) * | 1998-02-03 | 2002-04-23 | Compaq Computer Corporation | Cryptographic system |
US6141705A (en) * | 1998-06-12 | 2000-10-31 | Microsoft Corporation | System for querying a peripheral device to determine its processing capabilities and then offloading specific processing tasks from a host to the peripheral device when needed |
US6735696B1 (en) * | 1998-08-14 | 2004-05-11 | Intel Corporation | Digital content protection using a secure booting method and apparatus |
US6219420B1 (en) * | 1998-09-02 | 2001-04-17 | Motorola, Inc. | High assurance encryption system and method |
US6327660B1 (en) * | 1998-09-18 | 2001-12-04 | Intel Corporation | Method for securing communications in a pre-boot environment |
EP1001331B1 (de) * | 1998-11-11 | 2004-08-11 | O2 Micro International Limited | Vorurladungssicherheitssteuerungseinheit |
US6272629B1 (en) * | 1998-12-29 | 2001-08-07 | Intel Corporation | Method and apparatus for establishing network connection for a processor without an operating system boot |
JP3453532B2 (ja) * | 1999-01-21 | 2003-10-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | セキュリティ機能付きコンピュータおよび方法 |
US6988250B1 (en) * | 1999-02-15 | 2006-01-17 | Hewlett-Packard Development Company, L.P. | Trusted computing platform using a trusted device assembly |
AU776027C (en) * | 1999-03-08 | 2005-04-07 | Spyrus, Inc. | Method and system for enforcing access to a computing resource using a licensing attribute certificate |
US7117172B1 (en) * | 1999-03-11 | 2006-10-03 | Corecard Software, Inc. | Methods and systems for managing financial accounts |
US6715043B1 (en) * | 1999-03-19 | 2004-03-30 | Phoenix Technologies Ltd. | Method and system for providing memory-based device emulation |
US6430707B1 (en) * | 1999-03-31 | 2002-08-06 | International Business Machines Corporation | Source-level debugging of client dump image in a computer network |
US6401202B1 (en) * | 1999-06-18 | 2002-06-04 | Phoenix Technologies Ltd. | Multitasking during BIOS boot-up |
US6180508B1 (en) * | 1999-09-02 | 2001-01-30 | Micron Technology, Inc. | Methods of fabricating buried digit lines and semiconductor devices including same |
EP1085396A1 (de) | 1999-09-17 | 2001-03-21 | Hewlett-Packard Company | Betrieb von gesicherten Zustand in einer Computerplattform |
US6711688B1 (en) * | 1999-11-30 | 2004-03-23 | International Business Machines Corporation | Pre-execution logon (PEL) |
US7216251B2 (en) * | 2000-02-19 | 2007-05-08 | Powerquest Corporation | Computer imaging recovery without a working partition or a secondary medium |
US7249247B2 (en) * | 2000-04-11 | 2007-07-24 | Microsoft Corporation | Common feature mode for microprocessors in a multiple microprocessor system |
JP3714119B2 (ja) * | 2000-06-13 | 2005-11-09 | 日本電気株式会社 | Biosプリブート環境を利用したユーザ認証型ネットワークosブート方法及びシステム |
US7131137B1 (en) * | 2000-06-29 | 2006-10-31 | Intel Corporation | Communication system including a security system |
GB0020441D0 (en) * | 2000-08-18 | 2000-10-04 | Hewlett Packard Co | Performance of a service on a computing platform |
US20030159047A1 (en) * | 2000-09-26 | 2003-08-21 | Telefonaktiebolaget L M Ericsson (Publ) | Method of securing and exposing a logotype in an electronic device |
US7797729B2 (en) * | 2000-10-26 | 2010-09-14 | O2Micro International Ltd. | Pre-boot authentication system |
US7000249B2 (en) * | 2001-05-18 | 2006-02-14 | 02Micro | Pre-boot authentication system |
US7200761B1 (en) * | 2000-11-09 | 2007-04-03 | International Business Machines Corporation | Method to use secure passwords in an unsecure program environment |
US7210167B2 (en) * | 2001-01-08 | 2007-04-24 | Microsoft Corporation | Credential management |
US6823464B2 (en) * | 2001-02-26 | 2004-11-23 | International Business Machines Corporation | Method of providing enhanced security in a remotely managed computer system |
US20030093702A1 (en) * | 2001-03-30 | 2003-05-15 | Zheng Luo | System on a chip with multiple power planes and associate power management methods |
US6948098B2 (en) * | 2001-03-30 | 2005-09-20 | Cirrus Logic, Inc. | Circuits and methods for debugging an embedded processor and systems using the same |
US6925570B2 (en) * | 2001-05-15 | 2005-08-02 | International Business Machines Corporation | Method and system for setting a secure computer environment |
GB2378013A (en) * | 2001-07-27 | 2003-01-29 | Hewlett Packard Co | Trusted computer platform audit system |
US7779267B2 (en) * | 2001-09-04 | 2010-08-17 | Hewlett-Packard Development Company, L.P. | Method and apparatus for using a secret in a distributed computing system |
US7103529B2 (en) * | 2001-09-27 | 2006-09-05 | Intel Corporation | Method for providing system integrity and legacy environment emulation |
US7174463B2 (en) * | 2001-10-04 | 2007-02-06 | Lenovo (Singapore) Pte. Ltd. | Method and system for preboot user authentication |
US7191464B2 (en) * | 2001-10-16 | 2007-03-13 | Lenovo Pte. Ltd. | Method and system for tracking a secure boot in a trusted computing environment |
US7490250B2 (en) * | 2001-10-26 | 2009-02-10 | Lenovo (Singapore) Pte Ltd. | Method and system for detecting a tamper event in a trusted computing environment |
US6968414B2 (en) * | 2001-12-04 | 2005-11-22 | International Business Machines Corporation | Monitoring insertion/removal of server blades in a data processing system |
US20030115443A1 (en) * | 2001-12-18 | 2003-06-19 | Cepulis Darren J. | Multi-O/S system and pre-O/S boot technique for partitioning resources and loading multiple operating systems thereon |
US20030126454A1 (en) * | 2001-12-28 | 2003-07-03 | Glew Andrew F. | Authenticated code method and apparatus |
US7085921B2 (en) * | 2001-12-31 | 2006-08-01 | Hewlett-Packard Development Company, L.P. | Embedded OS PXE server |
US20030138105A1 (en) * | 2002-01-18 | 2003-07-24 | International Business Machines Corporation | Storing keys in a cryptology device |
US20030191943A1 (en) * | 2002-04-05 | 2003-10-09 | Poisner David I. | Methods and arrangements to register code |
US6715085B2 (en) * | 2002-04-18 | 2004-03-30 | International Business Machines Corporation | Initializing, maintaining, updating and recovering secure operation within an integrated system employing a data access control function |
US7130977B1 (en) * | 2002-04-18 | 2006-10-31 | Advanced Micro Devices, Inc. | Controlling access to a control register of a microprocessor |
US7558958B2 (en) * | 2002-06-13 | 2009-07-07 | Microsoft Corporation | System and method for securely booting from a network |
US20040081104A1 (en) * | 2002-10-29 | 2004-04-29 | Weimin Pan | Method and system for network switch configuration |
US9977674B2 (en) | 2003-10-14 | 2018-05-22 | Intel Corporation | Micro-operation generator for deriving a plurality of single-destination micro-operations from a given predicated instruction |
-
2002
- 2002-11-27 US US10/306,570 patent/US7974416B2/en not_active Expired - Fee Related
-
2003
- 2003-10-15 TW TW092128600A patent/TWI238357B/zh not_active IP Right Cessation
- 2003-10-20 WO PCT/US2003/033225 patent/WO2004051444A2/en not_active Application Discontinuation
- 2003-10-20 CN CNB2003801040383A patent/CN100511086C/zh not_active Expired - Lifetime
- 2003-10-20 AU AU2003286519A patent/AU2003286519A1/en not_active Abandoned
- 2003-10-20 DE DE10393662T patent/DE10393662T5/de not_active Ceased
- 2003-10-20 GB GB0506997A patent/GB2411989B/en not_active Expired - Lifetime
- 2003-10-20 GB GB0604785A patent/GB2421612B/en not_active Expired - Lifetime
-
2005
- 2005-09-28 HK HK05108565A patent/HK1075509A1/xx not_active IP Right Cessation
-
2011
- 2011-07-01 US US13/135,358 patent/US9026773B2/en not_active Expired - Lifetime
-
2015
- 2015-04-06 US US14/679,145 patent/US10275598B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US9026773B2 (en) | 2015-05-05 |
WO2004051444A3 (en) | 2004-07-29 |
CN100511086C (zh) | 2009-07-08 |
TWI238357B (en) | 2005-08-21 |
GB0604785D0 (en) | 2006-04-19 |
GB2411989B (en) | 2006-05-31 |
CN1714331A (zh) | 2005-12-28 |
GB2421612B (en) | 2006-10-18 |
TW200414052A (en) | 2004-08-01 |
GB2421612A (en) | 2006-06-28 |
US10275598B2 (en) | 2019-04-30 |
AU2003286519A1 (en) | 2004-06-23 |
GB0506997D0 (en) | 2005-05-11 |
US20110271090A1 (en) | 2011-11-03 |
US20040103299A1 (en) | 2004-05-27 |
GB2411989A (en) | 2005-09-14 |
US20150213269A1 (en) | 2015-07-30 |
HK1075509A1 (en) | 2005-12-16 |
US7974416B2 (en) | 2011-07-05 |
WO2004051444A2 (en) | 2004-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10393662T5 (de) | Bereitstellen eines sicheren Ausführungsmodus in einer Preboot-Umgebung | |
DE112018002031B4 (de) | Sichern einer betriebssystemkonfiguration unter verwendung von hardware | |
DE102008011925B4 (de) | Sicheres Initialisieren von Computersystemen | |
DE10297273B4 (de) | Verfahren zur Bereitstellung von Systemintegrität und Legacy-Umgebungsemulation | |
DE102008021567B4 (de) | Computersystem mit sicherem Hochlaufmechanismus auf der Grundlage einer Verschlüsselung mit symmetrischem Schlüssel | |
DE10195999B3 (de) | Computersystem mit einer in einem Chipsatz enthaltenen Speichersteuereinrichtung zum Kontrollieren von Zugriffen auf einen isolierten Speicher für eine isolierte Ausführung | |
DE102011103218B4 (de) | Systeme, Verfahren und Vorrichtung zum Virtualisieren von TPM- Zugriffen | |
DE10392320B4 (de) | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems | |
US8806224B2 (en) | Low cost trusted platform | |
DE10392470B4 (de) | System und Verfahren zum Ausführen von Initialisierungsbefehlen einer gesicherten Umgebung | |
DE202019005671U1 (de) | Koexistenz von Vertrauensdomänenarchitektur mitMehrschlüssel-Gesamtspeicherverschlüsselungstechnologieauf Servern | |
EP3259698B1 (de) | Autonom bootendes system mit einem sicherheitsmodul | |
DE112007000363T5 (de) | Verfahren zum Bereitstellen sicherer Firmware | |
DE112020000792T5 (de) | Durch grafikverarbeitungseinheit beschleunigte vertrauenswürdige ausführungsumgebung | |
US20110225428A1 (en) | System and Method for Encryption and Decryption of Data | |
DE10292364T5 (de) | Sichere Maschinenplattform, die mit Betriebssystemen und awendungsspezifischen Steuerprogrammen eine Schnittstelle bildet | |
US20110225407A1 (en) | System and Method for Recovering From an Interrupted Encryption and Decryption Operation Performed on a Volume | |
DE112009004491T5 (de) | System und Verfahren zum sicheren Speichern von Daten in einem elektronischen Gerät | |
DE102010054614A1 (de) | Eindringen in eine gesicherte EDV-Umgebung unter Verwendung mehrerer authentifizierter Codemodule | |
DE112017005005T5 (de) | Systeme, vorrichtungen, und verfahren zur plattformsicherheit | |
DE112015007220T5 (de) | Techniken zum Koordinieren von Vorrichtungshochfahrsicherheit | |
DE102018126136A1 (de) | Technologien zur biometrischen Authentifizierung vor dem Booten | |
DE112021000648T5 (de) | Speichervorrichtung, die gegen cyber-angriffe und fehlfunktionen widerstandsfähig ist | |
DE112011105687T5 (de) | Verwendung eines Option-ROM-Speichers | |
DE112020003881T5 (de) | System und verfahren zur durchführung von trusted computing mit fernbescheinigung und informationsisolierung auf heterogenen prozessoren über eine offene verbindung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law |
Ref document number: 10393662 Country of ref document: DE Date of ref document: 20050825 Kind code of ref document: P |
|
8131 | Rejection |