DE10394383B4 - Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems - Google Patents
Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems Download PDFInfo
- Publication number
- DE10394383B4 DE10394383B4 DE10394383.8A DE10394383A DE10394383B4 DE 10394383 B4 DE10394383 B4 DE 10394383B4 DE 10394383 A DE10394383 A DE 10394383A DE 10394383 B4 DE10394383 B4 DE 10394383B4
- Authority
- DE
- Germany
- Prior art keywords
- computer
- memory
- area
- operating system
- units
- 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.)
- Expired - Lifetime
Links
Images
Classifications
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
-
- 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/445—Program loading or initiating
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45583—Memory management, e.g. access or allocation
-
- 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/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
Abstract
Description
- Gebiet der Erfindung
- Diese Erfindung betrifft ein Verfahren und eine Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems für ein virtuelles Maschinen-System. Die Erfindung bezieht sich auf Mikroprozessoren und insbesondere auf die Prozessorsicherheit.
- Hintergrund
- Fortschritte der Mikroprozessor- und Kommunikationstechnologie haben viele Möglichkeiten für Anwendungen eröffnet, die über die traditionellen Art, Geschäfte zu tätigen, hinausgehen. Elektronischer Geschäftsverkehr und Business to Business-Transaktionen werden nun populär und erreichen die globalen Märkte mit hoher Geschwindigkeit. Während moderne Mikroprozessorsysteme den Benutzern bequeme und effiziente Verfahren zur Verfügung stellen, um Geschäfte zu tätigen, zu kommunizieren und Transaktionen zu tätigen, sind sie leider auch für skrupellose Angriffe verletzbar. Beispiele dieser Angriffe umfassen Viren, unerlaubtes Eindringen, Verletzung der Sicherheit und Manipulation, um nur einige zu nennen. Computersicherheit wird daher mehr und mehr wichtig, um die Integrität der Computersysteme zu schützen und das Vertrauen der Benutzer zu vergrößern.
- Im Zusammenhang mit Betriebssystemen wird die Computersicherheit am Anfang dadurch bestimmt, daß man ein vertrauenswürdiges Betriebssystem lädt (oder geladen hat). Ein vertrauenswürdiges Betriebssystem ist dann gegeben, wenn der Benutzer oder ein Dritter später das System inspizieren und feststellen kann, ob ein gegebenes Systems geladen wurde und, wenn dies der Fall ist, ob das System in einer sicheren Umgebung geladen wurde oder nicht.
- Wenn man jedoch ein normales Betriebssystem bootet, ist es nötig, eine große Vielzahl von Codekomponenten zu booten. Selbst wenn man auswählen könnte, welche Codekomponenten geladen werden sollen, enthält das Betriebssystem eine derart große Menge an Code, daß es schwierig ist, die spezifische Identität des Betriebssystems festzustellen und festzustellen, ob man sich dafür entscheiden sollte, ihm zu trauen, d. h. ob es in einer sicheren Umgebung geladen worden ist.
- In einer Multiprozessorumgebung kann es besonders schwierig sein, festzustellen, ob man dem Betriebssystem vertrauen kann. Dies liegt daran, daß jede der zentralen Verarbeitungseinheiten (CPUs) oder manchmal sogar eine Systemkomponente, einen Codestrom ausführen kann, der potentiell die Integrität des geladenen Codes verändern oder beeinträchtigen kann. Dementsprechend ist es, zumindest auf dem Niveau des Betriebssystems, häufig nötig, anzunehmen, daß das Betriebssystem vertrauenswürdig ist. Solche Annahmen können sich als falsch herausstellen und zu katastrophalen Pannen bei der Computersicherheit führen.
-
WO 98/36517 A1 - Karger, P.A. und andere: „A Retroperspective an the VAX VMM Security Kernel” in: IEEE Transactions an Software Engineering, Band 17, 1991, Nr. 11, Seiten 1147–1165 offenbart die Entwicklung eines Virtual Machine Monitor (VMM) Security Kernel für eine VAX-Architektur. Der VAX Security Kernel unterstützt mehrere virtuelle Maschinen auf einem einzelnen VAX-System und ermöglicht die Isolierung und Steuerung von sensitiven Daten.
- Um die Prozessorsicherheit zu erhöhen, stellt die Erfindung ein Verfahren nach Anspruch 1 und eine Vorrichtung nach Anspruch 19 bereit.
- Kurze Beschreibung der Zeichnungen
- Die vorliegende Erfindung wird anhand von beispielhaften Ausführungsformen, jedoch keinen Beschränkungen, beschrieben, die in den beigefügten Zeichnungen illustriert sind und in denen gleiche Bezugszeichen ähnliche Elemente bezeichnen und in denen:
-
1 ein Diagramm ist, welches einen verallgemeinerten Überblick der Organisation von typischen Betriebssystemkomponenten und entsprechenden Privilegstufen illustriert, -
2 ein Blockdiagramm ist, welches eine verallgemeinerte Ausführungsform eines Computersystems illustriert, in welchem die Erfindung verkörpert ist und bei dem bestimmte Aspekte der Erfindung praktiziert werden können, -
3 ein Flußdiagramm ist, welches bestimmte Aspekte eines Verfahrens illustriert, das von einer Rechenvorrichtung auszuführen ist, welche eine Ausführungsform der illustrierten Erfindung ausführt, die in2 gezeigt ist, -
4 ein Flußdiagramm ist, welches bestimmte andere Aspekte eines Verfahrens illustriert, das von einer Rechenvorrichtung auszuführen ist, welche eine Ausführungsform der illustrierten Erfindung, die in2 gezeigt ist, ausführt, -
5 ein Flußdiagramm ist, welches bestimmte Aspekte eines Verfahrens illustriert, das von einer Rechenvorrichtung auszuführen ist, welche eine weitere Ausführungsform der illustrierten Erfindung ausführt, die in2 gezeigt ist, und -
6 ein Blockdiagramm ist, welches eine verallgemeinerte Ausführungsform eines Computersystems illustriert, in dem bestimmte Aspekte der Erfindung praktiziert werden können, die in2 bis5 illustriert ist. - Detaillierte Beschreibung
- In der folgenden Beschreibung werden verschiedene Aspekte der vorliegenden Erfindung, ein Verfahren und eine Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems, beschrieben.
- Ein Prinzip für die Gewährleistung von Sicherheit in einem Computersystem oder einer Plattform besteht in dem Konzept der Durchsetzung von Privilegien. Privilegstufen (privilege levels) beschränken die Systemressourcen (beispielsweise privilegierte Anweisungen, Speicher, Eingabe-/Ausgabegeräte und dergleichen), auf welche eine bestimmte Softwarekomponente zugreifen kann.
1 ist ein Diagramm, welches einen verallgemeinerten Überblick der Organisation von typischen Betriebssystemkomponenten und zugehörigen Privilegstufen illustriert. In einem System ohne Virtuellrechner(VM)-Technologie (virtual machine technology)100 , umfaßt das Betriebssystem120 eine kleine residente Programmkomponente, welche privilegierter Softwarenukleus125 genannt wird und mit der höchsten Privilegstufe170 arbeitet, d. h. der privilegierte Softwarenukleus125 kann sowohl privilegierte als auch nicht privilegierte Anweisungen ausführen und auf Speicher- und Eingabe/Ausgabe-Geräte zugreifen. Eine andere Art von Systemkomponenten, die Gerätetreiber130 , arbeiten ebenfalls mit einer hohen Privilegstufe170 , insbesondere wenn das System Transaktionen mit direktem Speicherzugriff (DMA (direct memory access)) unterstützt, bei denen ein Gerätetreiber130 den Inhalt seines Geräts direkt in den Speicher schreiben kann, ohne einen Prozessor zu involvieren (d. h. ohne den privilegierten Softwarenukleus125 zum Zugreifen auf den Speicher zu benutzen). Weitere Arten von Systemkomponenten, wie die Anwendungen140 , arbeiten mit einer geringeren Privilegstufe180 und sind nur in der Lage, nicht privilegierte oder weniger privilegierte Anweisungen auszuführen oder Überwachungsaufrufe (SVC (supervisory calls)) bei dem privilegierten Softwarenukleus125 in dem Betriebssystem120 auszuführen, um die privilegierten Instruktionen auszuführen oder, allgemeiner gesprochen, auf privilegierte Systemressourcen für die Anwendung140 zuzugreifen. - In einem System mit VM-Technologie
110 arbeitet eine weitere Art von Systemkomponenten mit dem höchsten Privileg: der Virtuellrechnermonitor (VMM (virtual-machine monitor))150 . In einen VM-System110 arbeitet das Betriebssystem120 tatsächlich mit einem geringeren Privileg als der VMM150 . Bei einigen VMM-Implementierungen kann der VMM150 in eine VMM-Kernkomponente150 und eine oder mehrere VMM-Erweiterungen160 aufgeteilt sein, welche mit einem geringeren Privileg als die VMM-Kernkomponente150 , aber mit einem höheren Privileg als das Betriebssystem120 arbeiten. Auf diese Weise wahrt die VMM-Kernkomponente150 ihre Integrität bei der Anwesenheit von fehlerhaften VMM-Erweiterungen160 . -
2 ist ein Blockdiagramm, welches eine verallgemeinerte Ausführungsform eines Computersystems200 illustriert, in welcher die Erfindung inkorporiert ist und bei dem bestimmte Aspekte der Erfindung praktiziert werden können. Klarstellend wird darauf hingewiesen, daß die Unterscheidung zwischen den verschiedenen Komponenten des Computersystems200 nur eine logische Unterscheidung ist. In der Praxis können alle Komponenten auf demselben Siliciumchip integriert sein, auf mehrere Chips aufgeteilt sein oder in einer Kombination von beidem implementiert sein, ohne den Bereich der Erfindung zu verlassen. Bei dem dargestellten Computersystem200 haben entweder die zentralen Verarbeitungseinheiten (CPU)210 /220 /230 oder die Geräte240 /245 /250 die erforderlichen hohen Privilegstufen170 , welche sie dazu befähigen, Transaktionen in dem Speicher270 einzuleiten. Der Speichercontroller260 ist dafür verantwortlich, die Speichertransaktion von dem Speicher270 zu dem geeigneten Ziel weiterzuleiten. - Das Computersystem
200 umfaßt weiterhin einen Hash-Digest280 von kryptographischen Hash-Werten, welche den Inhalt von einer oder mehreren Betriebssystemkomponenten identifizieren, die in Bereiche in dem Speicher270 geladen worden sind. Es wird angemerkt, daß es auf diesem Gebiet bekannt ist, daß ein kryptographischer Hash-Wert durch eine mathematische oder sonstige Einwegfunktion generiert wird, welche eine Eingabekette variabler Länge, Urbild (”pre-image”) genannt, annimmt und diese in eine in der Regel kürzere Ausgabekette fester Länge konvertiert, welche Hash-Wert genannt wird. Die Hash-Funktion ist unidirektional insoweit, als es schwierig ist, ein Urbild zu generieren, welches mit dem Hash-Wert eines anderen Urbilds übereinstimmt. Eine Hash-Digest-Signiermaschine290 besitzt einen sicheren Kanal, um auf den Hash-Digest280 zuzugreifen, und signiert den Inhalt des Hash-Digest280 , wenn sie eine Anforderung erhält, dies zu tun. Das Signieren des Inhalts eines Hash-Digests280 ist auf diesem Gebiet bekannt und wird verwendet, um eine digitale Signatur zu erzeugen, die später dazu verwendet werden kann, die Identität des Signierers zu authentifizieren und zu gewährleisten, daß der Inhalt der Hash-Digest280 nicht manipuliert worden ist. Durch das Fordern einer solchen Signierung kann eine außenstehende Entität den Zustand der Systemkomponenten, über die der Hash berichtet, beobachten und entscheiden, ob sie dem Computersystem200 traut oder nicht, traut, d. h. ob der signierte Inhalt des Hash-Digests280 der erwarteten Signatur der Systemkomponenten entspricht oder nicht. - Um zu gewährleisten, daß der Zustand der Komponenten, der durch den Hash berichtet wird, derart ist, daß dem Computersystem
200 vertraut werden kann, ist in jeder der CPUs210 /220 /230 des Computersystems eine Ausführungsform des Verfahrens und der Vorrichtung der vorliegenden Erfindung inkorporiert oder sie ist in der Lage, eine solche Ausführungsform zu inkorporieren, um die Installation (oder das Laden) eines vertrauenswürdigen Betriebssystems zu erleichtern. - In einer Ausführungsform umfassen die Vorrichtung und das Verfahren der vorliegenden Erfindung eine Start-Sichern-Operation (SSO (start secure operation))
206 und eine Verknüpfe-Sichern-Operation (JSO (join secure operation))204 , welche jeweils in der Lage sind, auf eine der CPUs des Computersystems210 /220 /230 zu operieren. Die SSO206 und die JSO204 sind logische Operationen, die in atomischer Weise ausgeführt werden, um die Integrität des Computersystems200 zu gewährleisten. Die SSO206 und JSO204 können als eine Reihe von privilegierten Anweisungen implementiert sein, die in Software, Hardware oder einer Kombination hiervon ausgeführt werden, ohne den Bereich der Erfindung zu verlassen. - In einer Ausführungsform nimmt die SSO
206 einen Bereich (oder Bereiche) des Speichers270 , der in einem Speicherbereichparameter202 spezifiziert wurde, und veranlaßt das Computersystem200 , eine Anzahl von Operationen auszuführen, welche eine der CPUs210 /220 /230 veranlassen, eine oder mehrere Komponenten des Betriebssystemcodes in dem spezifizierten Bereich des Speichers270 zu laden und zu registrieren, während die JSO204 die anderen CPUs daran hindert, zu stören. Auf das Laden einer oder mehrerer Betriebssystemkomponenten zwingen die JSO204 und die SSO206 weiterhin die CPUs210 /220 /230 dazu, zu einem bekannten Eintrittspunkt in dem nun gesicherten spezifizierten Bereich des Speichers270 , der auch als Sicherheitskern275 bezeichnet wird, in einen bekannten, privilegierten Zustand zu springen, d. h. einen bekannten Zustand, welcher den Zugriff auf die Ressourcen des Computersystems200 gemäß der entsprechenden hohen Privilegstufe der CPU gestattet. - In einer Ausführungsform setzt die SSO
206 , sobald der Bereich oder die Bereiche in dem Speicher270 , die gesichert werden sollen, über einen Speicherbereichparameter202 oder auf andere Weise identifiziert worden sind, den Code, der gesichert werden soll, in den identifizierten Bereich in dem Speicher270 , d. h. sie setzt den Betriebssystemcode (oder einen Teil davon) in den Sicherheitskern275 . Der Code kann irgendein Code sein, dem man vertrauen möchte, wie der privilegierte Softwarenukleus125 des Betriebssystems120 oder, in einem System mit VM110 , der VMM-Kern150 , der VM-Monitorkerncode. - In einer Ausführungsform startet die SSO
206 , sobald der Code in den Sicherheitskern275 gesetzt worden ist, das Betriebssystem in sicherer Weise, indem die Identität des Betriebssystemcodes, zum Beispiels des privilegierten Softwarenukleus125 oder des VMM-Kerns150 , registriert wird. Die SSO206 registriert die Identität des Codes, in dem ein Hash-Digest280 des Codes berechnet und registriert wird und der Hash-Digest280 kryptographisch mit der Hash-Digest-Signiermaschine290 signiert wird. Wenn das Betriebssystem einmal registriert ist, wird es ein vertrauenswürdiges Betriebssystem, das durch eine außenstehende Entität verifiziert werden kann. - In einem Computersystem
200 mit mehr als einer CPU, wie in2 illustriert, muß das Computersystem200 auch in der Lage sein, die CPUs220 /230 außer der CPU210 , welche die SSO206 ausführt, daran zu hindern, das gesicherte Starten des vertrauenswürdigen Betriebssystems zu stören. Dementsprechend ist jede CPU210 /220 /230 weiterhin mit einer JSO204 versehen. Wenn eine SSO206 auf der CPU210 initiiert wird, signalisiert die SSO206 den anderen CPUs220 /230 , eine JSO204 auszuführen. - In einer Ausführungsform zwingt die JSO
204 die entsprechenden CPUs220 /230 , in einen besonderen angehaltenen Zustand einzutreten und ihren Eintritt in den angehaltenen Zustand der initiierenden SSO CPU210 anzuzeigen. Wenn die initiierende SSO CPU210 Anhaltesignale von allen anderen CPUs220 /230 erhält, beginnt die SSO206 damit, ein vertrauenswürdiges Betriebssystem zu laden, indem sie den gewünschten Code in den Sicherheitskern275 setzt und ihn registriert. Wenn die CPU210 , welche die SSO206 initiiert hat, das Laden des vertrauenswürdigen Betriebssystems abgeschlossen hat, d. h. wenn die Identität des Codes in dem Sicherheitskern275 registriert worden ist, zwingt die SSO206 die CPU210 dazu, zu einem bekannten Eintrittspunkt in dem Sicherheitskern275 zu springen, der nun einen bekannten, privilegierten Zustand als Ergebnis der Operation der SSO206 besitzt. Zusätzlich signalisiert die SSO206 den anderen CPUs220 /230 , ihren jeweiligen speziellen angehaltenen Zustand zu verlassen. Auf das Verlassen des angehaltenen Zustands zwingt die JSO204 die CPUs220 /230 dazu, ebenfalls zu einem bestimmten Eintrittspunkt in dem Sicherheitskern275 zu springen. - In einer Ausführungsform wird der Speicherbereichparameter
202 als ein Bereich von Adressen in dem Speicher270 spezifiziert und enthält ein oder mehrere Paare von Start- und Stoppadressen. Andere Arten der Spezifizierung, welcher Bereich oder welche Bereiche in dem Speicher270 gesichert werden sollen, können verwendet werden, ohne den Bereich der Erfindung zu verlassen. Zum Beispiel kann eine alternative Ausführungsform des Speicherbereichparameters202 als eine Startadresse und eine Bereichslänge spezifiziert werden. -
3 ist ein Flußdiagramm, welches bestimmte Aspekte eines Verfahrens illustriert, das von einer Rechenvorrichtung ausgeführt werden soll, welche eine Ausführungsform der illustrierten Erfindung ausführt, die in2 gezeigt ist. Insbesondere illustriert3 einige der Maßnahmen, die von einem Computer, der eine SSO206 , welche eine Ausführungsform der Erfindung verkörpert, ausgeführt werden. Die Verarbeitung beginnt bei Prozeß305 , wo eine der CPUs des Computersystems200 , zum Beispiel die CPU210 , sich vorbereitet, eine SSO206 auszuführen, indem sie bei dem Prozeß310 gewährleistet, daß alle anderen CPUs220 /230 des Computersystems200 eine JSO204 ausgeführt haben. Die JSO204 veranlaßt die anderen CPUs220 /230 des Computersystems200 , in einen angehaltenen Zustand einzutreten, so daß sie die SSO206 und die CPU210 während des Ladens des vertrauenswürdigen Betriebssystems nicht stören können. In einer Ausführungsform fährt die SSO206 , nachdem alle anderen CPUs220 /230 angehalten worden sind, bei dem Prozeß315 fort, die CPU210 oder, in manchen Fällen, den Speichercontroller260 , zu veranlassen, die Geräte240 /245 /250 des Computersystems daran zu hindern, auf Bereiche in dem Speicher270 zuzugreifen, die in Speicherbereichparametern202 spezifiziert sind, d. h. auf den Sicherheitskern275 . Das Hindern von Geräten für die Dauer der SSO206 daran, auf den Sicherheitskern275 zuzugreifen, ist typischerweise nur bei einem Computersystem200 erforderlich, welches einen direkten Speicherzugriff (DMA (direct memory access)) unterstützt. In einer Ausführungsform kann ein Hindern von Geräten daran, auf den Sicherheitskern275 zuzugreifen, auch durch einen Standardchipset bewirkt werden. - In einer Ausführungsform löscht die SSO
206 bei dem Prozeß320 den aktuellen Inhalt des Hash-Digests280 als Vorbereitung für das Aufzeichnen von aktueller Plattform- und Hash-Digest-Information. Bei dem Prozeß325 zeichnet die SSO206 die Plattforminformation in dem Hash-Digest280 auf. Das Aufzeichnen der Plattforminformation kann notwendig sein, oder auch nicht, je nach der Architektur des Computersystems200 , und kann die Versionsnummer der CPU210 , welche die SSO206 ausführt, und dergleichen enthalten. Bei dem Prozeß330 berechnet die SSO206 weiterhin einen kryptographischen Hash-Digest des Codes, der sich nun in dem Sicherheitskern275 befindet, d. h. des privilegierten Softwarenukleus125 oder des VMM-Kerns150 . Die SSO206 zeichnet weiterhin die Information, ebenfalls in dem Hash-Digest280 , auf. Bei dem Prozeß335 setzt die SSO206 , nachdem sie die notwendige Information in dem Hash-Digest280 aufgezeichnet hat, die CPU210 in einen bekannten privilegierten Zustand. Wenn sich die CPU210 in dem bekannten privilegierten Zustand befindet, kann die SSO206 weiterhin die CPU210 zwingen, zu einem bekannten Eintrittspunkt in dem Sicherheitskern275 zu springen. Der bekannte Eintrittspunkt kann jeder adressierbare Bereich des Sicherheitskerns275 sein. Sobald die CPU210 zu dem bekannten Eintrittspunkt gesprungen ist, ist die SSO vollständig und signalisiert den anderen CPUs220 /230 , ihre Aktivität wieder aufzunehmen, und gibt die Kontrolle an die CPU210 zurück. - Auf den Abschluß der SSO
206 kann eine außenstehende Entität eine Anforderung an die Hash-Digest-Signiermaschine290 senden, um einen sicheren Kanal zu aktivieren, um auf den Hash-Digest280 zuzugreifen und die Digest-Signiermaschine290 zu veranlassen, den Inhalt des Digests280 , der von der SSO206 aufgezeichnet worden ist, zu lesen und kryptographisch zu signieren. Wie bereits früher angemerkt wurde, kann durch die Anforderung einer solchen Signierung die außenstehende Entität den Zustand von Komponenten, die durch den Hash berichtet werden, beobachten und entscheiden, ob sie dem Computersystem200 vertraut oder nicht, d. h. ob ein vertrauenswürdiges Betriebssystem geladen worden ist oder nicht. -
4 ist ein Flußdiagramm, welches bestimmte Aspekte eines Verfahrens illustriert, das von einer Rechenvorrichtung ausgeführt werden soll, die eine Ausführungsform der illustrierten Erfindung ausführt, die in2 gezeigt ist. Insbesondere illustriert4 einige der Maßnahmen, die durch einen Computer ausgeführt werden sollen, der eine JSO204 ausführt, welche eine Ausführungsform der Erfindung verwirklicht. Die Verarbeitung beginnt bei Prozeß405 , wo jede der Nicht-SSO-CPUs des Computersystems, zum Beispiel die CPUs220 /230 , in einen besonderen angehaltenen Zustand in Reaktion auf die Aktionen der SSO206 auf der CPU210 eintritt. Der angehaltene Zustand hindert die CPUs220 /230 daran, die SSO206 und die CPU210 während des Ladens des vertrauenswürdigen Betriebssystems zu stören. Die CPUs220 /230 signalisieren es jeweils der SSO206 auf der CPU210 , wenn sie in den angehaltenen Zustand treten. Die JSO204 setzt sich bei dem Entscheidungsprozeß415 fort, welcher wartet, bis er ein Signal erhält, daß die SSO206 auf der CPU210 die Initialisierung eines vertrauenswürdigen Betriebssystems abgeschlossen. hat. Sobald die Initialisierung vollständig ist, fährt die JSO204 bei dem Prozeß420 fort und veranlaßt die CPUs220 /230 , den speziellen angehaltenen Zustand zu verlassen. Bei dem Prozeß425 veranlaßt die JSO204 die CPUs220 /230 , zu einem bekannten Eintrittspunkt in dem Sicherheitskern275 zu springen, wonach die JSO204 die Verarbeitung bei dem Abschluß430 abschließt und die Kontrolle an die entsprechenden CPUs220 /230 zurückgibt. - Während die
3 –4 eine verallgemeinerte Ausführungsform der SSO206 - und JSO204 -Prozesse beschreiben, beschreibt5 eine beispielhafte Implementierung der SSO206 und JSO204 auf einem Computersystem200 mit VM110 , einschließlich VM-Systemen mit 32-Bit-CPUs und VMM-Erweiterungen160 . Die Verarbeitung beginnt bei Prozeß505 , wo die SSO206 auf einer der CPUs des Computersystems200 , zum Beispiel der CPU210 , Speicherbereichparameter202 in der Form einer physikalischen Startadresse als Parameter EAX bezeichnet, und eine physikalische Endadresse, bezeichnet als Parameter ECX empfängt. Zusammen spezifizieren die Adressen, die in den Parametern EAX und ECX spezifiziert sind, den Bereich in dem Speicher270 , der gesichert werden soll. Die SSO206 ergreift vorbereitende Maßnahmen bei dem Prozeß510 , um die erforderliche Umgebung zu schaffen, in welcher die SSO206 arbeiten wird. Die vorbereitenden Maßnahmen hängen von der Architektur des Computersystems200 ab und können, ohne hierauf beschränkt zu sein, umfassen, daß gewährleistet wird, daß die physikalische Startadresse EAX einen Wert besitzt, der geringer als die physikalische Endadresse ECX ist. Zusätzlich kann die SSO206 gewährleisten, daß der geschützte Modus der CPU210 aktiviert wird, während die Seitenspeicher (paging)-Funktion, physikalische Adresserweiterungen und VM-Erweiterungsmoden deaktiviert sind und daß die Privilegstufe der CPU210 vorübergehend auf Null gesetzt wird. Andere mögliche vorbereitende Maßnahmen können umfassen, den direkten Speicherzugriff (DMA) zu dem Bereich oder den Bereichen in dem Speicher270 , die gesichert werden sollen, d. h. dem Sicherheitskern275 , zu deaktivieren und Hardware-Unterbrechungen zu der CPU210 zu deaktivieren. Die Deaktivierung von Hardware-Unterbrechungen hilft dabei, zu gewährleisten, daß die SSO206 und die JSO204 atomisch ausgeführt werden. Es ist sehr wichtig, daß die SSO206 die erforderliche Umgebung für das Laden eines vertrauenswürdigen Betriebssystems schafft, indem sie jede der anderen CPUs220 /230 veranlaßt, eine JSO204 zu beginnen, um zu gewährleisten, daß alle Nicht-SSO-CPUs angehalten werden und dadurch daran gehindert werden, den Betrieb der SSO206 zu stören. - Nach dem Abschluß der vorbereitenden Maßnahmen setzt sich die SSO
206 bei dem Prozeß515 fort, um einen kryptographischen Hash280 für den spezifizierten Bereich in dem Speicher270 zu schaffen, der bei der Adresse EAX beginnt und bei der Adresse ECX endet. Wenn mehrere Bereiche in dem Speicher270 gesichert werden, wird der Prozeß515 wiederholt, bis alle gesicherten Bereiche, d. h. der gesamte Sicherheitskern275 , in dem kryptographischen Hash280 enthalten sind. Bei dem Prozeß520 zeichnet die SSO206 den kryptographischen Hash280 in einen Chipsetregister auf, welcher als Hash-Digest280 fungiert. Die SSO206 setzt sich bei dem Prozeß525 fort, indem sie die CPU210 veranlaßt, in einen bekannten Zustand einzutreten, und dann weiter bei dem Prozeß530 , indem sie die CPU210 veranlaßt, zu dem gehashten Bereich (d. h. dem gesicherten Bereich) in dem Speicher270 zu springen, d. h. in den Sicherheitskern275 . Die SSO206 endet bei dem Prozeß535 , wo die CPU in dem veranlaßten bekannten Zustand ist, wobei alle Unterbrechungen deaktiviert sind, und der Sicherheitskern275 ist gesichert. -
6 illustriert eine Ausführungsform eines Universalrechners (general purpose-computer system)600 , bei dem eine Ausführungsform der Erfindung, die in den2 –5 illustriert ist, praktiziert werden kann. Eine Ausführungsform der vorliegenden Erfindung kann auf einer Personal Computer(PC)-Architektur implementiert werden. Es ist jedoch für Fachleute mit gewöhnlichem Können klar, daß alternative Computersystemarchitekturen oder andere Prozessorvorrichtungen, programmierbar oder auf Elektronikbasis, ebenfalls verwendet werden können. - Im allgemeinen umfassen Computersysteme, wie sie in
6 illustriert sind, einen oder mehrere Prozessoren602 , die über einen Bus601 mit einem Direktzugriffspeicher (RAM)603 , einem Festspeicher (ROM)604 und einer Massenspeichervorrichtung607 gekoppelt sind. Die Massenspeichervorrichtung607 stellt eine beständige Datenspeichervorrichtung dar, wie ein Floppydisc-Laufwerk, ein Festplattenlaufwerk (zum Beispiel magnetisch, optisch, magnetooptisch oder dergleichen) oder ein Streamer-Bandlaufwerk, dar. Der Prozessor602 repräsentiert eine zentrale Verarbeitungseinheit eines beliebigen Architekturtyps, wie CISC (Complex Instruction Set Computer), eines RISC (Reduced Instruction Set Computer), VLIW (Very Long Instruction Word) oder einer Hybridarchitektur. In einer Ausführungsform sind die Prozessoren602 mit einem Intel-Architektur(IA)-Prozessor kompatibel, wie der PentiumTM-Serie, dem IA-32TM und dem IA-64TM. In einer Ausführungsform umfaßt das Computersystem600 eine beliebige Anzahl von Prozessoren, wie die in2 illustrierten CPUs210 /220 /230 . - Ein Anzeigegerät
605 ist mit dem oder den Prozessoren602 über den Bus601 gekoppelt und liefert eine graphische Ausgabe für das Computersystem600 . Eingabegeräte606 , wie eine Tastatur oder eine Maus, sind mit dem Bus601 zum Kommunizieren von Informationen und ausgewählten Befehlen für den Prozessor602 gekoppelt. Ebenfalls mit dem Prozessor602 über den Bus601 gekoppelt ist eine Eingabe/Ausgabe-Schnittstelle610 , welche verwendet werden kann, um Daten zu kontrollieren und zu elektronischen Geräten (Druckern, andere Computer usw.) zu übertragen, die mit dem Computersystem600 verbunden sind. Das Computersystem600 umfaßt Netzwerkgeräte608 zum Verbinden des Computersystems600 mit einem Netzwerk614 , über welches Daten empfangen werden können, zum Beispiel von einem entfernten Gerät612 . Die Netzwerkgeräte608 können Ethernet-Geräte, TAE-Einheiten (Telekommunikations-Anschluß-Einheiten) und Satellitenverbindungen umfassen. Es ist für jemanden mit gewöhnlichen Können auf diesem Gebiet klar, daß andere Netzwerkgeräte ebenso verwendet werden können. - Eine Ausführungsform der Erfindung kann vollständig als Softwareprodukt auf einem Massenspeicher
607 gespeichert sein. Eine andere Ausführungsform der Erfindung kann in einem Hardwareprodukt, zum Beispiel in einer gedruckten Leiterplatte, in einem Spezialrechner oder in einer speziell programmierten Logikvorrichtung eingebettet sein, die in einer Kommunikationsverbindung mit dem Bus601 steht. Noch weitere Ausführungsformen der Erfindung können teilweise als Softwareprodukt und teilweise als Hardwareprodukt implementiert werden. - Wenn Ausführungsformen der Erfindung als Softwareprodukt dargestellt werden, das auf einem Medium für einen Maschinenzugriff (auch als Medium für Computerzugriff oder Medium für Prozessorzugriff bezeichnet) gespeichert ist, wie der Massenspeichervorrichtung
607 , kann das Medium für einen Maschinenzugriff eine beliebige Art eines magnetischen, optischen oder elektrischen Speichermediums sein, was eine Diskette, eine CD-Rom, eine Speichervorrichtung (flüchtig oder nichtflüchtig) oder ähnliche Speichermechanismen einschließt. Das Medium für einen Maschinenzugriff kann verschiedene Sätze von Anweisungen, Codesequenzen, Konfigurationsinformationen oder andere Daten enthalten. Personen mit gewöhnlichem Können auf diesem Gebiet ist klar, daß andere Anweisungen und Operationen, die nötig sind, um die beschriebene Erfindung zu implementieren, ebenfalls auf dem Medium für Maschinenzugriffe gespeichert werden können. In einer Ausführungsform der vorliegenden Erfindung umfaßt das Medium für Maschinenzugriff Anweisungen, die, wenn sie durch eine Maschine ausgeführt werden, die Maschine veranlassen, Operationen auszuführen, welche die SSO206 und JSO204 umfassen. - Dementsprechend wird eine neues Verfahren zum Laden eines vertrauenswürdigen Betriebssystems beschrieben. Aus der vorangehenden Beschreibung erkennen Fachleute auf dem Gebiet, daß viele andere Variationen der vorliegenden Erfindung möglich sind. Zum Beispiel kann es, wenn die Erfindung auf einem Großrechner (Mainframe) oder einer vergleichbaren Maschinenklasse implementiert wird, nicht erforderlich sein, den direkten Speicherzugriff (DMA) auf den Bereich oder die Bereiche in dem Speicher
270 zu deaktivieren, die gesichert werden sollen, d. h. den Sicherheitskern275 , oder Hardware-Unterbrechungen zu der CPU210 zu deaktivieren. Andererseits können, wenn die Erfindung auf einer Maschine mit einer PC-Architektur implementiert wird, solche zusätzlichen Schutzmechanismen erforderlich sein, um eine Betriebsumgebung zu schaffen, in der die Erfindung praktiziert werden kann. Daher ist die vorliegende Erfindung nicht durch die beschriebenen Details begrenzt.
Claims (27)
- Verfahren zum Laden eines vertrauenswürdigen Betriebssystems für ein VM(virtuelle Maschine)-System in einem Rechnersystem mit mehreren Rechnereinheiten, wobei das Verfahren Folgendes umfasst: Anhalten aller außer einer der mehreren Rechnereinheiten in dem Rechnersystem, wobei die angehaltenen Rechnereinheiten in einem speziellen angehaltenen Zustand eintreten; Identifizieren eines Bereichs zum Laden einer Betriebssystemkomponente für das VM-System in einem Speicher des Rechnersystems, der von den mehreren Rechnereinheiten gemeinsam nutzbar ist; Laden der Betriebssystemkomponente in den identifizierten Bereich erst nach dem Anhalten aller außer einer der Rechnereinheiten; Schützen des identifizierten Bereichs vor Zugriffen durch die angehaltenen Rechnereinheiten; Verwenden eines signierten kryptografischen Hashs des identifizierten Bereichs zum Verifizieren, ob der Betriebssystemkomponente vertraut werden kann, wobei der signierte kryptografische Hash einer außenstehenden Entität ermöglicht, zu entscheiden, ob der signierte kryptografische Hash einer erwarteten Signatur der Betriebssystemkomponente entspricht; Setzen der nicht angehaltenen Rechnereinheit in einen bekannten privilegierten Zustand; und Veranlassen, dass die angehaltenen Rechnereinheiten den angehaltenen Zustand verlassen, nachdem die nicht angehaltene Rechnereinheit in bekannten privilegierten Zustand gesetzt wurde.
- Verfahren nach Anspruch 1, das ferner Folgendes umfasst: Veranlassen, dass die nicht angehaltene Rechnereinheit zu einem bekannten Anfangspunkt in dem identifizierten Bereich in dem Speicher springt.
- Verfahren nach Anspruch 1, das ferner Folgendes umfasst: Veranlassen, dass die angehaltenen Rechnereinheiten zu einem bekannten Eintrittspunkt in dem identifizierten Bereich in dem Speicher nach dem Verlassen des angehaltenen Zustandes springen.
- Verfahren nach Anspruch 1, wobei das Identifizieren des Bereichs des Speichers ein Empfangen eines Bereichsparameters umfasst, wobei der Bereichsparameter einen Ort in dem Bereich spezifiziert.
- Verfahren nach Anspruch 4, wobei der Ort einen Adressbereich in einem Speicher des Rechnersystems umfasst, innerhalb dessen sich der identifizierte Bereich befindet.
- Verfahren nach Anspruch 4, wobei der Ort eine Startadresse und eine Länge des Speichers des Rechnersystems umfasst, innerhalb dessen sich der identifizierte Bereich befindet.
- Verfahren nach Anspruch 1, wobei die Betriebssystemkomponente ein virtueller Maschinenmonitor oder ein privilegierter Softwarekern ist.
- Verfahren nach Anspruch 1, das ferner Folgendes umfasst: Blockieren des Zugriffs zu dem Bereich des Speichers für einen Zeitraum sogar nachdem die angehaltenen Rechnereinheiten in den angehaltenen Zustand eingetreten sind, wenn die mehreren Rechnereinheiten in einem Rechnersystem implementiert sind, das direkten Speicherzugriff (DMA) unterstützt.
- Verfahren nach Anspruch 1, wobei das Identifizieren, Laden und Verwenden des signierten kryptografischen Hashs des identifizierten Bereichs zum Verifizieren, ob der Betriebssystemkomponente vertraut werden kann, nicht unterbrechbar sind.
- Hergestellter Gegenstand, welcher ein maschinenlesbares Speichermedium umfasst, das Anweisungen aufweist, die, wenn sie durch eine Maschine ausgeführt werden, die Maschine zu veranlassen, das Verfahren nach Anspruch 1 durchzuführen.
- Hergestellter Gegenstand nach Anspruch 10, der ferner Folgendes umfasst: Veranlassen, dass die nicht angehaltene Rechnereinheit zu einem bekannten Anfangspunkt in dem identifizierten Bereich in dem Speicher springt.
- Hergestellter Gegenstand nach Anspruch 10, der ferner Folgendes umfasst: Veranlassen, dass die angehaltenen Rechnereinheiten zu einem bekannten Eintrittspunkt in dem identifizierten Bereich in dem Speicher nach dem Verlassen des angehaltenen Zustandes springen.
- Hergestellter Gegenstand nach Anspruch 10, wobei das Identifizieren des Bereichs des Speichers ein Empfangen eines Bereichsparameters umfasst, wobei der Bereichsparameter den Ort in dem Bereich spezifiziert.
- Hergestellter Gegenstand nach Anspruch 13, wobei der Ort einen Adressbereich in einem Speicher des Rechnersystems umfasst, innerhalb dessen sich der identifizierte Bereich befindet.
- Hergestellter Gegenstand nach Anspruch 13, wobei der Ort eine Startadresse und eine Länge des Speichers des Rechnersystems umfasst, innerhalb dessen sich der identifizierte Bereich befindet.
- Hergestellter Gegenstand nach Anspruch 10, wobei die Betriebssystemkomponente ein virtueller Maschinenmonitor oder ein privilegierter Softwarekern ist.
- Hergestellter Gegenstand nach Anspruch 10, der ferner Folgendes umfasst: Blockieren des Zugriffs zu dem Bereich des Speichers für einen Zeitraum sogar nachdem die angehaltenen Rechnereinheiten in den angehaltenen Zustand eingetreten sind, wenn die mehreren Rechnereinheiten in einem Rechnersystem implementiert sind, das direkten Speicherzugriff (DMA) unterstützt.
- Hergestellter Gegenstand nach Anspruch 10, wobei das Identifizieren, Laden und Verwenden des signierten kryptografischen Hashs des identifizierten Bereichs zum Verifizieren, ob der Betriebssystemkomponente vertraut werden kann, nicht unterbrechbar sind.
- Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems für ein VM(Virtuelles Maschinen)-System, die Folgendes umfasst: mehrere Rechnereinheiten; und einen Speicher, der von den mehreren Rechnereinheiten gemeinsam nutzbar ist, wobei der Speicher Anweisungen umfasst, um auf den mehreren Rechnereinheiten ausgeführt zu werden, wobei die Anweisungen, wenn sie ausgeführt werden, die mehreren Rechnereinheiten veranlassen, Vorgänge auszuführen, die Folgendes umfassen: Anhalten aller außer einer der mehreren Rechnereinheiten in dem Rechnersystem, wobei die angehaltenen Rechnereinheiten in einem speziellen angehaltenen Zustand eintreten; Identifizieren eines Bereichs zum Laden einer Betriebssystemkomponente für ein VM(virtuelle Maschine)-System in einem Speicher des Rechnersystems, der von den mehreren Rechnereinheiten gemeinsam nutzbar ist; Laden der Betriebssystemkomponente in den identifizierten Bereich erst nach dem Anhalten aller außer einer der Rechnereinheiten; Schützen des identifizierten Bereichs vor Zugriffen durch die angehaltenen Rechnereinheiten; Verwenden eines signierten kryptografischen Hashs des identifizierten Bereichs zum Verifizieren, ob der Betriebssystemkomponente vertraut werden kann, wobei der signierte kryptografische Hash einer außenstehenden Entität ermöglicht, zu entscheiden, ob der signierte kryptografische Hash einer erwarteten Signatur der Betriebssystemkomponente entspricht; Setzen der nicht angehaltenen Rechnereinheit in einen bekannten privilegierten Zustand; und Veranlassen, dass die angehaltenen Rechnereinheiten den angehaltenen Zustand verlassen, nachdem die nicht angehaltene Rechnereinheit in bekannten privilegierten Zustand gesetzt wurde.
- Vorrichtung nach Anspruch 19, wobei die Anweisungen, wenn sie ausgeführt werden, weiterhin die mehreren Rechnereinheiten veranlassen, Vorgänge auszuführen, die Folgendes umfassen: Veranlassen, dass die nicht angehaltene Rechnereinheit zu einem bekannten Anfangspunkt in dem identifizierten Bereich in dem Speicher springt.
- Vorrichtung nach Anspruch 19, wobei die Instruktionen, wenn sie ausgeführt werden, ferner die mehreren Rechnereinheiten veranlassen, Vorgänge auszuführen, die Folgendes umfassen: Veranlassen, dass die angehaltenen Rechnereinheiten zu einem bekannten Eintrittspunkt in dem identifizierten Bereich in dem Speicher nach dem Verlassen des angehaltenen Zustandes springen.
- Vorrichtung nach Anspruch 19, wobei das Identifizieren des Bereichs des Speichers ein Empfangen eines Bereichsparameters umfasst, wobei der Bereichsparameter einen Ort in dem Bereich spezifiziert.
- Vorrichtung nach Anspruch 22, wobei der Ort einen Adressbereich in einem Speicher des Rechnersystems umfasst, innerhalb dessen sich der identifizierte Bereich befindet.
- Vorrichtung nach Anspruch 22, wobei der Ort eine Startadresse und eine Länge des Speichers des Rechnersystems umfasst, innerhalb dessen sich der identifizierte Bereich befindet.
- Vorrichtung nach Anspruch 19, wobei die Betriebssystemkomponente ein virtueller Maschinenmonitor oder ein privilegierter Softwarekern ist.
- Vorrichtung nach Anspruch 19, wobei die Anweisungen, wenn sie ausgeführt werden, die mehreren Rechnereinheiten veranlassen, Vorgänge auszuführen, die Folgendes umfassen: Blockieren des Zugriffs zu dem Bereich des Speichers für einen Zeitraum sogar nachdem die angehaltenen Rechnereinheiten in den angehaltenen Zustand eingetreten sind, wenn die mehreren Rechnereinheiten in einem Rechnersystem implementiert sind, das direkten Speicherzugriff (DMA) unterstützt.
- Vorrichtung nach Anspruch 19, wobei das Identifizieren, Laden und Verwenden des signierten kryptografischen Hashs des identifizierten Bereichs zum Verifizieren, ob der Betriebssystemkomponente vertraut werden kann, nicht unterbrechbar sind.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/085,839 | 2002-02-25 | ||
US10/085,839 US7631196B2 (en) | 2002-02-25 | 2002-02-25 | Method and apparatus for loading a trustable operating system |
Publications (1)
Publication Number | Publication Date |
---|---|
DE10394383B4 true DE10394383B4 (de) | 2014-01-16 |
Family
ID=27753730
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10397004.5T Granted DE10397004A5 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
DE10394383.8A Expired - Lifetime DE10394383B4 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
DE10397004.5A Expired - Lifetime DE10397004B4 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
DE10392320T Expired - Lifetime DE10392320B4 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10397004.5T Granted DE10397004A5 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10397004.5A Expired - Lifetime DE10397004B4 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
DE10392320T Expired - Lifetime DE10392320B4 (de) | 2002-02-25 | 2003-02-13 | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems |
Country Status (7)
Country | Link |
---|---|
US (3) | US7631196B2 (de) |
CN (1) | CN100423013C (de) |
AU (1) | AU2003213080A1 (de) |
DE (4) | DE10397004A5 (de) |
GB (1) | GB2402521B (de) |
HK (1) | HK1068178A1 (de) |
WO (1) | WO2003073269A2 (de) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7653710B2 (en) | 2002-06-25 | 2010-01-26 | Qst Holdings, Llc. | Hardware task manager |
US7962716B2 (en) | 2001-03-22 | 2011-06-14 | Qst Holdings, Inc. | Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements |
US7752419B1 (en) | 2001-03-22 | 2010-07-06 | Qst Holdings, Llc | Method and system for managing hardware resources to implement system functions using an adaptive computing architecture |
US7249242B2 (en) | 2002-10-28 | 2007-07-24 | Nvidia Corporation | Input pipeline registers for a node in an adaptive computing engine |
US6836839B2 (en) | 2001-03-22 | 2004-12-28 | Quicksilver Technology, Inc. | Adaptive integrated circuitry with heterogeneous and reconfigurable matrices of diverse and adaptive computational units having fixed, application specific computational elements |
US6577678B2 (en) | 2001-05-08 | 2003-06-10 | Quicksilver Technology | Method and system for reconfigurable channel coding |
US7046635B2 (en) | 2001-11-28 | 2006-05-16 | Quicksilver Technology, Inc. | System for authorizing functionality in adaptable hardware devices |
US6986021B2 (en) | 2001-11-30 | 2006-01-10 | Quick Silver Technology, Inc. | Apparatus, method, system and executable module for configuration and operation of adaptive integrated circuitry having fixed, application specific computational elements |
US8412915B2 (en) | 2001-11-30 | 2013-04-02 | Altera Corporation | Apparatus, system and method for configuration of adaptive integrated circuitry having heterogeneous computational elements |
US7215701B2 (en) | 2001-12-12 | 2007-05-08 | Sharad Sambhwani | Low I/O bandwidth method and system for implementing detection and identification of scrambling codes |
US7403981B2 (en) | 2002-01-04 | 2008-07-22 | Quicksilver Technology, Inc. | Apparatus and method for adaptive multimedia reception and transmission in communication environments |
US7631196B2 (en) | 2002-02-25 | 2009-12-08 | Intel Corporation | Method and apparatus for loading a trustable operating system |
US7069442B2 (en) | 2002-03-29 | 2006-06-27 | Intel Corporation | System and method for execution of a secured environment initialization instruction |
US7660984B1 (en) * | 2003-05-13 | 2010-02-09 | Quicksilver Technology | Method and system for achieving individualized protected space in an operating system |
US7328414B1 (en) | 2003-05-13 | 2008-02-05 | Qst Holdings, Llc | Method and system for creating and programming an adaptive computing engine |
US8108656B2 (en) | 2002-08-29 | 2012-01-31 | Qst Holdings, Llc | Task definition for specifying resource requirements |
US7937591B1 (en) | 2002-10-25 | 2011-05-03 | Qst Holdings, Llc | Method and system for providing a device which can be adapted on an ongoing basis |
US8276135B2 (en) | 2002-11-07 | 2012-09-25 | Qst Holdings Llc | Profiling of software and circuit designs utilizing data operation analyses |
US7225301B2 (en) | 2002-11-22 | 2007-05-29 | Quicksilver Technologies | External memory controller node |
US20050044408A1 (en) * | 2003-08-18 | 2005-02-24 | Bajikar Sundeep M. | Low pin count docking architecture for a trusted platform |
US7496961B2 (en) * | 2003-10-15 | 2009-02-24 | Intel Corporation | Methods and apparatus to provide network traffic support and physical security support |
US8239673B2 (en) * | 2004-04-08 | 2012-08-07 | Texas Instruments Incorporated | Methods, apparatus and systems with loadable kernel architecture for processors |
GB0411654D0 (en) * | 2004-05-25 | 2004-06-30 | Hewlett Packard Development Co | A generic trusted platform architecture |
US7698552B2 (en) * | 2004-06-03 | 2010-04-13 | Intel Corporation | Launching a secure kernel in a multiprocessor system |
US7694121B2 (en) * | 2004-06-30 | 2010-04-06 | Microsoft Corporation | System and method for protected operating system boot using state validation |
US7886293B2 (en) * | 2004-07-07 | 2011-02-08 | Intel Corporation | Optimizing system behavior in a virtual machine environment |
US7370189B2 (en) | 2004-09-30 | 2008-05-06 | Intel Corporation | Method and apparatus for establishing safe processor operating points in connection with a secure boot |
US7647589B1 (en) * | 2005-02-07 | 2010-01-12 | Parallels Software International, Inc. | Methods and systems for safe execution of guest code in virtual machine context |
JP4606339B2 (ja) * | 2005-02-07 | 2011-01-05 | 株式会社ソニー・コンピュータエンタテインメント | セキュアなプロセッサの処理の移行を実施する方法および装置 |
JP4522372B2 (ja) * | 2005-02-07 | 2010-08-11 | 株式会社ソニー・コンピュータエンタテインメント | プロセッサと外部のデバイスとの間にセキュアセッションを実現する方法および装置 |
JP4489030B2 (ja) * | 2005-02-07 | 2010-06-23 | 株式会社ソニー・コンピュータエンタテインメント | プロセッサ内にセキュアな起動シーケンスを提供する方法および装置 |
US7895651B2 (en) | 2005-07-29 | 2011-02-22 | Bit 9, Inc. | Content tracking in a network security system |
US8984636B2 (en) | 2005-07-29 | 2015-03-17 | Bit9, Inc. | Content extractor and analysis system |
US8272058B2 (en) | 2005-07-29 | 2012-09-18 | Bit 9, Inc. | Centralized timed analysis in a network security system |
CN100345112C (zh) * | 2005-11-25 | 2007-10-24 | 中国科学院软件研究所 | 操作系统的构件化扩充方法 |
DE102006008248A1 (de) * | 2006-02-22 | 2007-08-23 | Giesecke & Devrient Gmbh | Betriebssystem für eine Chipkarte mit einem Multi-Tasking Kernel |
US7840795B2 (en) * | 2006-10-17 | 2010-11-23 | Zachary Nathaniel Joseph Peterson | Method and apparatus for limiting access to sensitive data |
JP5990466B2 (ja) | 2010-01-21 | 2016-09-14 | スビラル・インコーポレーテッド | ストリームに基づく演算を実装するための汎用複数コアシステムのための方法および装置 |
US20120047580A1 (en) * | 2010-08-18 | 2012-02-23 | Smith Ned M | Method and apparatus for enforcing a mandatory security policy on an operating system (os) independent anti-virus (av) scanner |
US9830163B2 (en) * | 2012-06-08 | 2017-11-28 | Advanced Micro Devices, Inc. | Control flow in a heterogeneous computer system |
US8938796B2 (en) | 2012-09-20 | 2015-01-20 | Paul Case, SR. | Case secure computer architecture |
US9854841B2 (en) | 2012-10-08 | 2018-01-02 | Rai Strategic Holdings, Inc. | Electronic smoking article and associated method |
US9275248B1 (en) * | 2013-02-13 | 2016-03-01 | Amazon Technologies, Inc. | Updating processor microcode |
US9563457B2 (en) | 2013-11-18 | 2017-02-07 | Bitdefender IPR Management Ltd. | Enabling a secure environment through operating system switching |
US9117081B2 (en) | 2013-12-20 | 2015-08-25 | Bitdefender IPR Management Ltd. | Strongly isolated malware scanning using secure virtual containers |
US9652631B2 (en) * | 2014-05-05 | 2017-05-16 | Microsoft Technology Licensing, Llc | Secure transport of encrypted virtual machines with continuous owner access |
US9519787B2 (en) | 2014-11-14 | 2016-12-13 | Microsoft Technology Licensing, Llc | Secure creation of encrypted virtual machines from encrypted templates |
US10395039B2 (en) * | 2016-09-12 | 2019-08-27 | Dell Products, L.P. | Customer-owned trust of device firmware |
CN108595981B (zh) * | 2018-05-09 | 2021-07-20 | 深圳市桑格尔科技股份有限公司 | 加密安卓系统的方法 |
US11537421B1 (en) * | 2019-06-07 | 2022-12-27 | Amazon Technologies, Inc. | Virtual machine monitor providing secure cryptographic operations |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998036517A1 (en) * | 1997-02-13 | 1998-08-20 | Jpc, Inc. | Security coprocessor for enhancing computer system security |
Family Cites Families (287)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3699532A (en) * | 1970-04-21 | 1972-10-17 | Singer Co | Multiprogramming control for a data handling system |
US3996449A (en) | 1975-08-25 | 1976-12-07 | International Business Machines Corporation | Operating system authenticator |
US4162536A (en) | 1976-01-02 | 1979-07-24 | Gould Inc., Modicon Div. | Digital input/output system and method |
US4037214A (en) | 1976-04-30 | 1977-07-19 | International Business Machines Corporation | Key register controlled accessing system |
US4247905A (en) | 1977-08-26 | 1981-01-27 | Sharp Kabushiki Kaisha | Memory clear system |
US4278837A (en) | 1977-10-31 | 1981-07-14 | Best Robert M | Crypto microprocessor for executing enciphered programs |
US4276594A (en) | 1978-01-27 | 1981-06-30 | Gould Inc. Modicon Division | Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same |
US4207609A (en) * | 1978-05-08 | 1980-06-10 | International Business Machines Corporation | Method and means for path independent device reservation and reconnection in a multi-CPU and shared device access system |
JPS5823570B2 (ja) * | 1978-11-30 | 1983-05-16 | 国産電機株式会社 | 液面検出装置 |
JPS5576447A (en) | 1978-12-01 | 1980-06-09 | Fujitsu Ltd | Address control system for software simulation |
US4307447A (en) | 1979-06-19 | 1981-12-22 | Gould Inc. | Programmable controller |
US4529870A (en) * | 1980-03-10 | 1985-07-16 | David Chaum | Cryptographic identification, financial transaction, and credential device |
US4319323A (en) | 1980-04-04 | 1982-03-09 | Digital Equipment Corporation | Communications device for data processing system |
US4419724A (en) * | 1980-04-14 | 1983-12-06 | Sperry Corporation | Main bus interface package |
US4366537A (en) | 1980-05-23 | 1982-12-28 | International Business Machines Corp. | Authorization mechanism for transfer of program control or data between different address spaces having different storage protect keys |
US4403283A (en) * | 1980-07-28 | 1983-09-06 | Ncr Corporation | Extended memory system and method |
DE3034581A1 (de) | 1980-09-13 | 1982-04-22 | Robert Bosch Gmbh, 7000 Stuttgart | Auslesesicherung bei einchip-mikroprozessoren |
JPS58140862A (ja) * | 1982-02-16 | 1983-08-20 | Toshiba Corp | 相互排他方式 |
US4521852A (en) | 1982-06-30 | 1985-06-04 | Texas Instruments Incorporated | Data processing device formed on a single semiconductor substrate having secure memory |
JPS59111561A (ja) | 1982-12-17 | 1984-06-27 | Hitachi Ltd | 複合プロセツサ・システムのアクセス制御方式 |
US4759064A (en) | 1985-10-07 | 1988-07-19 | Chaum David L | Blind unanticipated signature systems |
US4571972A (en) * | 1984-02-27 | 1986-02-25 | Kinefac Corp. | Skewed-axis cylindrical die rolling |
US4975836A (en) | 1984-12-19 | 1990-12-04 | Hitachi, Ltd. | Virtual computer system |
JPS61206057A (ja) | 1985-03-11 | 1986-09-12 | Hitachi Ltd | アドレス変換装置 |
FR2592510B1 (fr) * | 1985-12-31 | 1988-02-12 | Bull Cp8 | Procede et appareil pour certifier des services obtenus a l'aide d'un support portatif tel qu'une carte a memoire |
FR2601476B1 (fr) * | 1986-07-11 | 1988-10-21 | Bull Cp8 | Procede pour authentifier une donnee d'habilitation externe par un objet portatif tel qu'une carte a memoire |
FR2601525B1 (fr) | 1986-07-11 | 1988-10-21 | Bull Cp8 | Dispositif de securite interdisant le fonctionnement d'un ensemble electronique apres une premiere coupure de son alimentation electrique |
FR2601535B1 (fr) * | 1986-07-11 | 1988-10-21 | Bull Cp8 | Procede pour certifier l'authenticite d'une donnee echangee entre deux dispositifs connectes en local ou a distance par une ligne de transmission |
FR2618002B1 (fr) * | 1987-07-10 | 1991-07-05 | Schlumberger Ind Sa | Procede et systeme d'authentification de cartes a memoire electronique |
US4843541A (en) * | 1987-07-29 | 1989-06-27 | International Business Machines Corporation | Logical resource partitioning of a data processing system |
FR2620248B1 (fr) | 1987-09-07 | 1989-11-24 | France Etat | Procedes d'authentification d'accreditations ou de messages a apport nul de connaissance et de signature de messages |
US5007082A (en) | 1988-08-03 | 1991-04-09 | Kelly Services, Inc. | Computer software encryption apparatus |
US4974159A (en) * | 1988-09-13 | 1990-11-27 | Microsoft Corporation | Method of transferring control in a multitasking computer system |
US5079737A (en) | 1988-10-25 | 1992-01-07 | United Technologies Corporation | Memory management unit for the MIL-STD 1750 bus |
US5434999A (en) | 1988-11-09 | 1995-07-18 | Bull Cp8 | Safeguarded remote loading of service programs by authorizing loading in protected memory zones in a terminal |
FR2640798B1 (fr) | 1988-12-20 | 1993-01-08 | Bull Cp8 | Dispositif de traitement de donnees comportant une memoire non volatile electriquement effacable et reprogrammable |
JPH02171934A (ja) | 1988-12-26 | 1990-07-03 | Hitachi Ltd | 仮想計算機システム |
JPH02208740A (ja) | 1989-02-09 | 1990-08-20 | Fujitsu Ltd | 仮想計算機制御方式 |
US5781753A (en) | 1989-02-24 | 1998-07-14 | Advanced Micro Devices, Inc. | Semi-autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for speculative and out-of-order execution of complex instructions |
US5442645A (en) | 1989-06-06 | 1995-08-15 | Bull Cp8 | Method for checking the integrity of a program or data, and apparatus for implementing this method |
JP2590267B2 (ja) | 1989-06-30 | 1997-03-12 | 株式会社日立製作所 | 仮想計算機における表示制御方式 |
US5022077A (en) | 1989-08-25 | 1991-06-04 | International Business Machines Corp. | Apparatus and method for preventing unauthorized access to BIOS in a personal computer system |
JP2825550B2 (ja) | 1989-09-21 | 1998-11-18 | 株式会社日立製作所 | 多重仮想空間アドレス制御方法および計算機システム |
CA2010591C (en) | 1989-10-20 | 1999-01-26 | Phillip M. Adams | Kernels, description tables and device drivers |
CA2027799A1 (en) | 1989-11-03 | 1991-05-04 | David A. Miller | Method and apparatus for independently resetting processors and cache controllers in multiple processor systems |
US5075842A (en) | 1989-12-22 | 1991-12-24 | Intel Corporation | Disabling tag bit recognition and allowing privileged operations to occur in an object-oriented memory protection mechanism |
EP0473913A3 (en) | 1990-09-04 | 1992-12-16 | International Business Machines Corporation | Method and apparatus for providing a service pool of virtual machines for a plurality of vm users |
US5108590A (en) | 1990-09-12 | 1992-04-28 | Disanto Dennis | Water dispenser |
US5230069A (en) | 1990-10-02 | 1993-07-20 | International Business Machines Corporation | Apparatus and method for providing private and shared access to host address and data spaces by guest programs in a virtual machine computer system |
US5317705A (en) | 1990-10-24 | 1994-05-31 | International Business Machines Corporation | Apparatus and method for TLB purge reduction in a multi-level machine system |
US5287363A (en) * | 1991-07-01 | 1994-02-15 | Disk Technician Corporation | System for locating and anticipating data storage media failures |
US5437033A (en) | 1990-11-16 | 1995-07-25 | Hitachi, Ltd. | System for recovery from a virtual machine monitor failure with a continuous guest dispatched to a nonguest mode |
US5255379A (en) | 1990-12-28 | 1993-10-19 | Sun Microsystems, Inc. | Method for automatically transitioning from V86 mode to protected mode in a computer system using an Intel 80386 or 80486 processor |
US5453003A (en) * | 1991-01-09 | 1995-09-26 | Pfefferle; William C. | Catalytic method |
US5446904A (en) * | 1991-05-17 | 1995-08-29 | Zenith Data Systems Corporation | Suspend/resume capability for a protected mode microprocessor |
JPH04348434A (ja) | 1991-05-27 | 1992-12-03 | Hitachi Ltd | 仮想計算機システム |
US5276863A (en) * | 1991-06-28 | 1994-01-04 | Digital Equipment Corporation | Computer system console |
US5522075A (en) | 1991-06-28 | 1996-05-28 | Digital Equipment Corporation | Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces |
US5319760A (en) | 1991-06-28 | 1994-06-07 | Digital Equipment Corporation | Translation buffer for virtual machines with address space match |
US5455909A (en) * | 1991-07-05 | 1995-10-03 | Chips And Technologies Inc. | Microprocessor with operation capture facility |
JPH06236284A (ja) | 1991-10-21 | 1994-08-23 | Intel Corp | コンピュータシステム処理状態を保存及び復元する方法及びコンピュータシステム |
WO1993009494A1 (en) * | 1991-10-28 | 1993-05-13 | Digital Equipment Corporation | Fault-tolerant computer processing using a shadow virtual processor |
US5627987A (en) | 1991-11-29 | 1997-05-06 | Kabushiki Kaisha Toshiba | Memory management and protection system for virtual memory in computer system |
US5574936A (en) | 1992-01-02 | 1996-11-12 | Amdahl Corporation | Access control mechanism controlling access to and logical purging of access register translation lookaside buffer (ALB) in a computer system |
US5486529A (en) * | 1992-04-16 | 1996-01-23 | Zeneca Limited | Certain pyridyl ketones for treating diseases involving leukocyte elastase |
US5421006A (en) | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5237616A (en) * | 1992-09-21 | 1993-08-17 | International Business Machines Corporation | Secure computer system having privileged and unprivileged memories |
US5293424A (en) | 1992-10-14 | 1994-03-08 | Bull Hn Information Systems Inc. | Secure memory card |
US5796835A (en) | 1992-10-27 | 1998-08-18 | Bull Cp8 | Method and system for writing information in a data carrier making it possible to later certify the originality of this information |
JP2765411B2 (ja) | 1992-11-30 | 1998-06-18 | 株式会社日立製作所 | 仮想計算機方式 |
EP0600112A1 (de) | 1992-11-30 | 1994-06-08 | Siemens Nixdorf Informationssysteme Aktiengesellschaft | Datenverarbeitungsanlage mit virtueller Speicheradressierung und schlüsselgesteuertem Speicherzugriff |
US5668971A (en) * | 1992-12-01 | 1997-09-16 | Compaq Computer Corporation | Posted disk read operations performed by signalling a disk read complete to the system prior to completion of data transfer |
EP0602867A1 (de) | 1992-12-17 | 1994-06-22 | NCR International, Inc. | Vorrichtung zur Sicherheit einer Systemplattform |
JPH06187178A (ja) | 1992-12-18 | 1994-07-08 | Hitachi Ltd | 仮想計算機システムの入出力割込み制御方法 |
FR2700430B1 (fr) | 1992-12-30 | 1995-02-10 | Jacques Stern | Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification et dispositif pour sa mise en Óoeuvre. |
US5483656A (en) * | 1993-01-14 | 1996-01-09 | Apple Computer, Inc. | System for managing power consumption of devices coupled to a common bus |
US5469557A (en) | 1993-03-05 | 1995-11-21 | Microchip Technology Incorporated | Code protection in microcontroller with EEPROM fuses |
FR2703800B1 (fr) | 1993-04-06 | 1995-05-24 | Bull Cp8 | Procédé de signature d'un fichier informatique, et dispositif pour la mise en Óoeuvre. |
US5628023A (en) * | 1993-04-19 | 1997-05-06 | International Business Machines Corporation | Virtual storage computer system having methods and apparatus for providing token-controlled access to protected pages of memory via a token-accessible view |
FR2704341B1 (fr) | 1993-04-22 | 1995-06-02 | Bull Cp8 | Dispositif de protection des clés d'une carte à puce. |
JPH06348867A (ja) | 1993-06-04 | 1994-12-22 | Hitachi Ltd | マイクロコンピュータ |
FR2706210B1 (fr) | 1993-06-08 | 1995-07-21 | Bull Cp8 | Procédé d'authentification d'un objet portatif par un terminal hors ligne, objet portatif et terminal correspondants. |
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 |
US5555385A (en) | 1993-10-27 | 1996-09-10 | International Business Machines Corporation | Allocation of address spaces within virtual machine compute system |
FR2714780B1 (fr) | 1993-12-30 | 1996-01-26 | Stern Jacques | Procédé d'authentification d'au moins un dispositif d'identification par un dispositif de vérification. |
US5825880A (en) * | 1994-01-13 | 1998-10-20 | Sudia; Frank W. | Multi-step digital signature method and system |
US5459869A (en) | 1994-02-17 | 1995-10-17 | Spilo; Michael L. | Method for providing protected mode services for device drivers and other resident software |
US5604805A (en) * | 1994-02-28 | 1997-02-18 | Brands; Stefanus A. | Privacy-protected transfer of electronic information |
FR2717286B1 (fr) * | 1994-03-09 | 1996-04-05 | Bull Cp8 | Procédé et dispositif pour authentifier un support de données destiné à permettre une transaction ou l'accès à un service ou à un lieu, et support correspondant. |
US5684881A (en) | 1994-05-23 | 1997-11-04 | Matsushita Electric Industrial Co., Ltd. | Sound field and sound image control apparatus and method |
US5539828A (en) | 1994-05-31 | 1996-07-23 | Intel Corporation | Apparatus and method for providing secured communications |
US5473692A (en) | 1994-09-07 | 1995-12-05 | Intel Corporation | Roving software license for a hardware agent |
US5533123A (en) | 1994-06-28 | 1996-07-02 | National Semiconductor Corporation | Programmable distributed personal security |
FR2752122B1 (fr) | 1994-07-28 | 1998-11-27 | France Telecom | Procede d'authentification a nombre reduit de bits transmis |
US5978481A (en) | 1994-08-16 | 1999-11-02 | Intel Corporation | Modem compatible method and apparatus for encrypting data that is transparent to software applications |
JPH0883211A (ja) * | 1994-09-12 | 1996-03-26 | Mitsubishi Electric Corp | データ処理装置 |
DE69534757T2 (de) | 1994-09-15 | 2006-08-31 | International Business Machines Corp. | System und Verfahren zur sicheren Speicherung und Verteilung von Daten unter Verwendung digitaler Unterschriften |
US6058478A (en) * | 1994-09-30 | 2000-05-02 | Intel Corporation | Apparatus and method for a vetted field upgrade |
FR2725537B1 (fr) | 1994-10-11 | 1996-11-22 | Bull Cp8 | Procede de chargement d'une zone memoire protegee d'un dispositif de traitement de l'information et dispositif associe |
US5903752A (en) * | 1994-10-13 | 1999-05-11 | Intel Corporation | Method and apparatus for embedding a real-time multi-tasking kernel in a non-real-time operating system |
US5606617A (en) | 1994-10-14 | 1997-02-25 | Brands; Stefanus A. | Secret-key certificates |
US5564040A (en) | 1994-11-08 | 1996-10-08 | International Business Machines Corporation | Method and apparatus for providing a server function in a logically partitioned hardware machine |
US6269392B1 (en) | 1994-11-15 | 2001-07-31 | Christian Cotichini | Method and apparatus to monitor and locate an electronic device using a secured intelligent agent |
US5560013A (en) * | 1994-12-06 | 1996-09-24 | International Business Machines Corporation | Method of using a target processor to execute programs of a source architecture that uses multiple address spaces |
US5555414A (en) | 1994-12-14 | 1996-09-10 | International Business Machines Corporation | Multiprocessing system including gating of host I/O and external enablement to guest enablement at polling intervals |
US5615263A (en) | 1995-01-06 | 1997-03-25 | Vlsi Technology, Inc. | Dual purpose security architecture with protected internal operating system |
US5764969A (en) | 1995-02-10 | 1998-06-09 | International Business Machines Corporation | Method and system for enhanced management operation utilizing intermixed user level and supervisory level instructions with partial concept synchronization |
FR2731536B1 (fr) * | 1995-03-10 | 1997-04-18 | Schlumberger Ind Sa | Procede d'inscription securisee d'informations dans un support portable |
US5717903A (en) | 1995-05-15 | 1998-02-10 | Compaq Computer Corporation | Method and appartus for emulating a peripheral device to allow device driver development before availability of the peripheral device |
KR0146438B1 (ko) | 1995-05-17 | 1998-09-15 | 조백제 | 인증교환 방법과 복원형 전자서명 방법 및 부가형 전자서명 방법 |
JP3451595B2 (ja) | 1995-06-07 | 2003-09-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ |
US5684948A (en) * | 1995-09-01 | 1997-11-04 | National Semiconductor Corporation | Memory management circuit which provides simulated privilege levels |
US5633929A (en) * | 1995-09-15 | 1997-05-27 | Rsa Data Security, Inc | Cryptographic key escrow system having reduced vulnerability to harvesting attacks |
US5737760A (en) | 1995-10-06 | 1998-04-07 | Motorola Inc. | Microcontroller with security logic circuit which prevents reading of internal memory by external program |
US6093213A (en) * | 1995-10-06 | 2000-07-25 | Advanced Micro Devices, Inc. | Flexible implementation of a system management mode (SMM) in a processor |
JP3693721B2 (ja) | 1995-11-10 | 2005-09-07 | Necエレクトロニクス株式会社 | フラッシュメモリ内蔵マイクロコンピュータ及びそのテスト方法 |
IL116708A (en) | 1996-01-08 | 2000-12-06 | Smart Link Ltd | Real-time task manager for a personal computer |
WO1997025798A1 (en) | 1996-01-11 | 1997-07-17 | Mrj, Inc. | System for controlling access and distribution of digital property |
US5657445A (en) | 1996-01-26 | 1997-08-12 | Dell Usa, L.P. | Apparatus and method for limiting access to mass storage devices in a computer system |
US5835594A (en) | 1996-02-09 | 1998-11-10 | Intel Corporation | Methods and apparatus for preventing unauthorized write access to a protected non-volatile storage |
US5815665A (en) * | 1996-04-03 | 1998-09-29 | Microsoft Corporation | System and method for providing trusted brokering services over a distributed network |
US5978484A (en) | 1996-04-25 | 1999-11-02 | Microsoft Corporation | System and method for safety distributing executable objects |
US5978892A (en) | 1996-05-03 | 1999-11-02 | Digital Equipment Corporation | Virtual memory allocation in a virtual address space having an inaccessible gap |
US5809546A (en) * | 1996-05-23 | 1998-09-15 | International Business Machines Corporation | Method for managing I/O buffers in shared storage by structuring buffer table having entries including storage keys for controlling accesses to the buffers |
US6205550B1 (en) * | 1996-06-13 | 2001-03-20 | Intel Corporation | Tamper resistant methods and apparatus |
US6178509B1 (en) * | 1996-06-13 | 2001-01-23 | Intel Corporation | Tamper resistant methods and apparatus |
US6175925B1 (en) * | 1996-06-13 | 2001-01-16 | Intel Corporation | Tamper resistant player for scrambled contents |
US5729760A (en) | 1996-06-21 | 1998-03-17 | Intel Corporation | System for providing first type access to register if processor in first mode and second type access to register if processor not in first mode |
US5944821A (en) * | 1996-07-11 | 1999-08-31 | Compaq Computer Corporation | Secure software registration and integrity assessment in a computer system |
US6199152B1 (en) * | 1996-08-22 | 2001-03-06 | Transmeta Corporation | Translated memory protection apparatus for an advanced microprocessor |
US5740178A (en) * | 1996-08-29 | 1998-04-14 | Lucent Technologies Inc. | Software for controlling a reliable backup memory |
US6055637A (en) * | 1996-09-27 | 2000-04-25 | Electronic Data Systems Corporation | System and method for accessing enterprise-wide resources by presenting to the resource a temporary credential |
US5844986A (en) | 1996-09-30 | 1998-12-01 | Intel Corporation | Secure BIOS |
US5937063A (en) | 1996-09-30 | 1999-08-10 | Intel Corporation | Secure boot |
US5935242A (en) * | 1996-10-28 | 1999-08-10 | Sun Microsystems, Inc. | Method and apparatus for initializing a device |
JPH10134008A (ja) * | 1996-11-05 | 1998-05-22 | Mitsubishi Electric Corp | 半導体装置およびコンピュータシステム |
US5852717A (en) * | 1996-11-20 | 1998-12-22 | Shiva Corporation | Performance optimizations for computer networks utilizing HTTP |
DE19649292A1 (de) * | 1996-11-28 | 1998-06-04 | Deutsche Telekom Ag | Verfahren zum Sichern eines durch eine Schlüsselhierarchie geschützten Systems |
US5901225A (en) | 1996-12-05 | 1999-05-04 | Advanced Micro Devices, Inc. | System and method for performing software patches in embedded systems |
US5757919A (en) | 1996-12-12 | 1998-05-26 | Intel Corporation | Cryptographically protected paging subsystem |
US5818939A (en) | 1996-12-18 | 1998-10-06 | Intel Corporation | Optimized security functionality in an electronic system |
GB9626241D0 (en) * | 1996-12-18 | 1997-02-05 | Ncr Int Inc | Secure data processing method and system |
US5953422A (en) * | 1996-12-31 | 1999-09-14 | Compaq Computer Corporation | Secure two-piece user authentication in a computer network |
US6412035B1 (en) | 1997-02-03 | 2002-06-25 | Real Time, Inc. | Apparatus and method for decreasing the response times of interrupt service routines |
US5953502A (en) * | 1997-02-13 | 1999-09-14 | Helbig, Sr.; Walter A | Method and apparatus for enhancing computer system security |
JP4000654B2 (ja) | 1997-02-27 | 2007-10-31 | セイコーエプソン株式会社 | 半導体装置及び電子機器 |
US5867658A (en) * | 1997-04-04 | 1999-02-02 | International Business Machines Corporation | Method and apparatus for implementing a stop state for a processor in a multiprocessor system |
US6272637B1 (en) | 1997-04-14 | 2001-08-07 | Dallas Semiconductor Corporation | Systems and methods for protecting access to encrypted information |
US6557104B2 (en) * | 1997-05-02 | 2003-04-29 | Phoenix Technologies Ltd. | Method and apparatus for secure processing of cryptographic keys |
FR2763452B1 (fr) | 1997-05-13 | 1999-06-18 | France Telecom | Procede d'identification a cle publique |
US6044478A (en) * | 1997-05-30 | 2000-03-28 | National Semiconductor Corporation | Cache with finely granular locked-down regions |
US6307214B1 (en) | 1997-06-06 | 2001-10-23 | Semiconductor Energy Laboratory Co., Ltd. | Semiconductor thin film and semiconductor device |
US6075938A (en) | 1997-06-10 | 2000-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Virtual machine monitors for scalable multiprocessors |
US5987557A (en) | 1997-06-19 | 1999-11-16 | Sun Microsystems, Inc. | Method and apparatus for implementing hardware protection domains in a system with no memory management unit (MMU) |
US6175924B1 (en) * | 1997-06-20 | 2001-01-16 | International Business Machines Corp. | Method and apparatus for protecting application data in secure storage areas |
US6035374A (en) * | 1997-06-25 | 2000-03-07 | Sun Microsystems, Inc. | Method of executing coded instructions in a multiprocessor having shared execution resources including active, nap, and sleep states in accordance with cache miss latency |
US6584565B1 (en) | 1997-07-15 | 2003-06-24 | Hewlett-Packard Development Company, L.P. | Method and apparatus for long term verification of digital signatures |
US6014745A (en) * | 1997-07-17 | 2000-01-11 | Silicon Systems Design Ltd. | Protection for customer programs (EPROM) |
US6212635B1 (en) * | 1997-07-18 | 2001-04-03 | David C. Reardon | Network security system allowing access and modification to a security subsystem after initial installation when a master token is in place |
US5978475A (en) | 1997-07-18 | 1999-11-02 | Counterpane Internet Security, Inc. | Event auditing system |
US5919257A (en) * | 1997-08-08 | 1999-07-06 | Novell, Inc. | Networked workstation intrusion detection system |
DE19735948C1 (de) * | 1997-08-19 | 1998-10-01 | Siemens Nixdorf Inf Syst | Verfahren zur Verbesserung der Steuerungsmöglichkeit in Datenverarbeitungsanlagen mit Adreßübersetzung |
US6282657B1 (en) | 1997-09-16 | 2001-08-28 | Safenet, Inc. | Kernel mode protection |
US5935247A (en) * | 1997-09-18 | 1999-08-10 | Geneticware Co., Ltd. | Computer system having a genetic code that cannot be directly accessed and a method of maintaining the same |
US6148379A (en) | 1997-09-19 | 2000-11-14 | Silicon Graphics, Inc. | System, method and computer program product for page sharing between fault-isolated cells in a distributed shared memory system |
US6182089B1 (en) * | 1997-09-23 | 2001-01-30 | Silicon Graphics, Inc. | Method, system and computer program product for dynamically allocating large memory pages of different sizes |
US6357004B1 (en) * | 1997-09-30 | 2002-03-12 | Intel Corporation | System and method for ensuring integrity throughout post-processing |
US6061794A (en) * | 1997-09-30 | 2000-05-09 | Compaq Computer Corp. | System and method for performing secure device communications in a peer-to-peer bus architecture |
US5970147A (en) | 1997-09-30 | 1999-10-19 | Intel Corporation | System and method for configuring and registering a cryptographic device |
US6085296A (en) | 1997-11-12 | 2000-07-04 | Digital Equipment Corporation | Sharing memory pages and page tables among computer processes |
US6219787B1 (en) | 1997-12-22 | 2001-04-17 | Texas Instruments Incorporated | Method and apparatus for extending security model to native code |
US6378072B1 (en) * | 1998-02-03 | 2002-04-23 | Compaq Computer Corporation | Cryptographic system |
US6308270B1 (en) | 1998-02-13 | 2001-10-23 | Schlumberger Technologies, Inc. | Validating and certifying execution of a software program with a smart card |
US6108644A (en) * | 1998-02-19 | 2000-08-22 | At&T Corp. | System and method for electronic transactions |
US6131166A (en) * | 1998-03-13 | 2000-10-10 | Sun Microsystems, Inc. | System and method for cross-platform application level power management |
US6192455B1 (en) * | 1998-03-30 | 2001-02-20 | Intel Corporation | Apparatus and method for preventing access to SMRAM space through AGP addressing |
US6374286B1 (en) * | 1998-04-06 | 2002-04-16 | Rockwell Collins, Inc. | Real time processor capable of concurrently running multiple independent JAVA machines |
US6298443B1 (en) | 1998-04-24 | 2001-10-02 | Dell Usa, L.P. | Method and system for supplying a custom software image to a computer system |
US6173417B1 (en) * | 1998-04-30 | 2001-01-09 | Intel Corporation | Initializing and restarting operating systems |
US6795966B1 (en) * | 1998-05-15 | 2004-09-21 | Vmware, Inc. | Mechanism for restoring, porting, replicating and checkpointing computer systems using state extraction |
US6496847B1 (en) * | 1998-05-15 | 2002-12-17 | Vmware, Inc. | System and method for virtualizing computer systems |
US6397242B1 (en) | 1998-05-15 | 2002-05-28 | Vmware, Inc. | Virtualization system including a virtual machine monitor for a computer with a segmented architecture |
FR2778998B1 (fr) | 1998-05-20 | 2000-06-30 | Schlumberger Ind Sa | Procede d'authentification d'un code personnel d'un utilisateur d'une carte a circuit integre |
EP0961193B1 (de) | 1998-05-29 | 2010-09-01 | Texas Instruments Incorporated | Sichere Rechnervorrichtung |
US6421702B1 (en) | 1998-06-09 | 2002-07-16 | Advanced Micro Devices, Inc. | Interrupt driven isochronous task scheduler system |
US6473800B1 (en) * | 1998-07-15 | 2002-10-29 | Microsoft Corporation | Declarative permission requests in a computer system |
US6735696B1 (en) * | 1998-08-14 | 2004-05-11 | Intel Corporation | Digital content protection using a secure booting method and apparatus |
US6339815B1 (en) * | 1998-08-14 | 2002-01-15 | Silicon Storage Technology, Inc. | Microcontroller system having allocation circuitry to selectively allocate and/or hide portions of a program memory address space |
US6505279B1 (en) * | 1998-08-14 | 2003-01-07 | Silicon Storage Technology, Inc. | Microcontroller system having security circuitry to selectively lock portions of a program memory address space |
JP2000076139A (ja) | 1998-08-28 | 2000-03-14 | Nippon Telegr & Teleph Corp <Ntt> | 携帯型情報記憶媒体 |
US20020004900A1 (en) * | 1998-09-04 | 2002-01-10 | Baiju V. Patel | Method for secure anonymous communication |
US6363485B1 (en) * | 1998-09-09 | 2002-03-26 | Entrust Technologies Limited | Multi-factor biometric authenticating device and method |
US6463535B1 (en) | 1998-10-05 | 2002-10-08 | Intel Corporation | System and method for verifying the integrity and authorization of software before execution in a local platform |
US6230248B1 (en) | 1998-10-12 | 2001-05-08 | Institute For The Development Of Emerging Architectures, L.L.C. | Method and apparatus for pre-validating regions in a virtual addressing scheme |
US6609199B1 (en) * | 1998-10-26 | 2003-08-19 | Microsoft Corporation | Method and apparatus for authenticating an open system application to a portable IC device |
US6327652B1 (en) * | 1998-10-26 | 2001-12-04 | Microsoft Corporation | Loading and identifying a digital rights management operating system |
US7194092B1 (en) * | 1998-10-26 | 2007-03-20 | Microsoft Corporation | Key-based secure storage |
US6330670B1 (en) * | 1998-10-26 | 2001-12-11 | Microsoft Corporation | Digital rights management operating system |
US6138239A (en) * | 1998-11-13 | 2000-10-24 | N★Able Technologies, Inc. | Method and system for authenticating and utilizing secure resources in a computer system |
US6445797B1 (en) | 1998-12-16 | 2002-09-03 | Secure Choice Llc | Method and system for performing secure electronic digital streaming |
US6473508B1 (en) * | 1998-12-22 | 2002-10-29 | Adam Lucas Young | Auto-recoverable auto-certifiable cryptosystems with unescrowed signature-only keys |
US6463537B1 (en) | 1999-01-04 | 2002-10-08 | Codex Technologies, Inc. | Modified computer motherboard security and identification system |
US6671808B1 (en) | 1999-01-15 | 2003-12-30 | Rainbow Technologies, Inc. | USB-compliant personal key |
US6282650B1 (en) | 1999-01-25 | 2001-08-28 | Intel Corporation | Secure public digital watermark |
US6560627B1 (en) * | 1999-01-28 | 2003-05-06 | Cisco Technology, Inc. | Mutual exclusion at the record level with priority inheritance for embedded systems using one semaphore |
US7111290B1 (en) * | 1999-01-28 | 2006-09-19 | Ati International Srl | Profiling program execution to identify frequently-executed portions and to assist binary translation |
US6188257B1 (en) * | 1999-02-01 | 2001-02-13 | Vlsi Technology, Inc. | Power-on-reset logic with secure power down capability |
EP1030237A1 (de) | 1999-02-15 | 2000-08-23 | Hewlett-Packard Company | Vertrautes Hardware-Gerät in einem Rechner |
EP1161716B1 (de) * | 1999-02-15 | 2013-11-27 | Hewlett-Packard Development Company, L.P. | Gesicherte computerplattform |
US6272533B1 (en) | 1999-02-16 | 2001-08-07 | Hendrik A. Browne | Secure computer system and method of providing secure access to a computer system including a stand alone switch operable to inhibit data corruption on a storage device |
US7225333B2 (en) * | 1999-03-27 | 2007-05-29 | Microsoft Corporation | Secure processor architecture for use with a digital rights management (DRM) system on a computing device |
US6615278B1 (en) * | 1999-03-29 | 2003-09-02 | International Business Machines Corporation | Cross-platform program, system, and method having a global registry object for mapping registry equivalent functions in an OS/2 operating system environment |
US6684326B1 (en) * | 1999-03-31 | 2004-01-27 | International Business Machines Corporation | Method and system for authenticated boot operations in a computer system of a networked computing environment |
US6651171B1 (en) * | 1999-04-06 | 2003-11-18 | Microsoft Corporation | Secure execution of program code |
US6389537B1 (en) * | 1999-04-23 | 2002-05-14 | Intel Corporation | Platform and method for assuring integrity of trusted agent communications |
US6275933B1 (en) | 1999-04-30 | 2001-08-14 | 3Com Corporation | Security system for a computerized apparatus |
EP1055989A1 (de) | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System zum digitalen Unterschreiben von einem Dokument |
EP1056014A1 (de) | 1999-05-28 | 2000-11-29 | Hewlett-Packard Company | System und Verfahren zur Versorgung einer vertrauenswürdigen Benutzerschnittstelle |
US6321314B1 (en) | 1999-06-09 | 2001-11-20 | Ati International S.R.L. | Method and apparatus for restricting memory access |
US6633981B1 (en) | 1999-06-18 | 2003-10-14 | Intel Corporation | Electronic system and method for controlling access through user authentication |
US6158546A (en) | 1999-06-25 | 2000-12-12 | Tenneco Automotive Inc. | Straight through muffler with conically-ended output passage |
US6301646B1 (en) | 1999-07-30 | 2001-10-09 | Curl Corporation | Pointer verification system and method |
US6529909B1 (en) * | 1999-08-31 | 2003-03-04 | Accenture Llp | Method for translating an object attribute converter in an information services patterns environment |
JP2001148344A (ja) | 1999-09-09 | 2001-05-29 | Nikon Corp | 露光装置、エネルギ源の出力制御方法、該方法を用いるレーザ装置、及びデバイス製造方法 |
EP1085396A1 (de) | 1999-09-17 | 2001-03-21 | Hewlett-Packard Company | Betrieb von gesicherten Zustand in einer Computerplattform |
US6535988B1 (en) * | 1999-09-29 | 2003-03-18 | Intel Corporation | System for detecting over-clocking uses a reference signal thereafter preventing over-clocking by reducing clock rate |
US6374317B1 (en) * | 1999-10-07 | 2002-04-16 | Intel Corporation | Method and apparatus for initializing a computer interface |
US6292874B1 (en) | 1999-10-19 | 2001-09-18 | Advanced Technology Materials, Inc. | Memory management method and apparatus for partitioning homogeneous memory and restricting access of installed applications to predetermined memory ranges |
EP1269425A2 (de) | 2000-02-25 | 2003-01-02 | Identix Incorporated | Sicheres transaktionssystem |
AU2001243365A1 (en) | 2000-03-02 | 2001-09-12 | Alarity Corporation | System and method for process protection |
JP3710671B2 (ja) * | 2000-03-14 | 2005-10-26 | シャープ株式会社 | 1チップマイクロコンピュータ及びそれを用いたicカード、並びに1チップマイクロコンピュータのアクセス制御方法 |
CA2341931C (en) | 2000-03-24 | 2006-05-30 | Contentguard Holdings, Inc. | System and method for protection of digital works |
US6507904B1 (en) * | 2000-03-31 | 2003-01-14 | Intel Corporation | Executing isolated mode instructions in a secure system running in privilege rings |
US6678825B1 (en) * | 2000-03-31 | 2004-01-13 | Intel Corporation | Controlling access to multiple isolated memories in an isolated execution environment |
US6996710B1 (en) * | 2000-03-31 | 2006-02-07 | Intel Corporation | Platform and method for issuing and certifying a hardware-protected attestation key |
US6633963B1 (en) | 2000-03-31 | 2003-10-14 | Intel Corporation | Controlling access to multiple memory zones in an isolated execution environment |
US7013481B1 (en) * | 2000-03-31 | 2006-03-14 | Intel Corporation | Attestation key memory device and bus |
US6990579B1 (en) * | 2000-03-31 | 2006-01-24 | Intel Corporation | Platform and method for remote attestation of a platform |
US20010056533A1 (en) | 2000-06-23 | 2001-12-27 | Peter Yianilos | Secure and open computer platform |
US6678833B1 (en) * | 2000-06-30 | 2004-01-13 | Intel Corporation | Protection of boot block data and accurate reporting of boot block contents |
US6889378B2 (en) * | 2000-07-24 | 2005-05-03 | Sony Corporation | Information processing method, inter-task communication method, and computer-executable program for the same |
US6594736B1 (en) * | 2000-08-15 | 2003-07-15 | Src Computers, Inc. | System and method for semaphore and atomic operation management in a multiprocessor |
GB0020416D0 (en) * | 2000-08-18 | 2000-10-04 | Hewlett Packard Co | Trusted system |
GB0020441D0 (en) | 2000-08-18 | 2000-10-04 | Hewlett Packard Co | Performance of a service on a computing platform |
KR100613201B1 (ko) * | 2000-08-28 | 2006-08-18 | 마이크로코넥트 엘엘씨 | 씨피유 사용량 측정 방법 |
ATE479930T1 (de) * | 2000-09-21 | 2010-09-15 | Research In Motion Ltd | System und verfahren zum unterschreiben eines software-kodes |
US6938164B1 (en) * | 2000-11-22 | 2005-08-30 | Microsoft Corporation | Method and system for allowing code to be securely initialized in a computer |
US7036023B2 (en) * | 2001-01-19 | 2006-04-25 | Microsoft Corporation | Systems and methods for detecting tampering of a computer system by calculating a boot signature |
DE10296460T5 (de) * | 2001-03-27 | 2004-04-22 | Danfoss A/S | Motoraktuator mit Momentregelung |
US7272831B2 (en) * | 2001-03-30 | 2007-09-18 | Intel Corporation | Method and apparatus for constructing host processor soft devices independent of the host processor operating system |
FR2822971A1 (fr) * | 2001-04-03 | 2002-10-04 | St Microelectronics Sa | Systeme et procede de controle d'acces a des donnees protegees stockees dans une memoire |
US7631160B2 (en) * | 2001-04-04 | 2009-12-08 | Advanced Micro Devices, Inc. | Method and apparatus for securing portions of memory |
US6976136B2 (en) * | 2001-05-07 | 2005-12-13 | National Semiconductor Corporation | Flash memory protection scheme for secured shared BIOS implementation in personal computers with an embedded controller |
US7676430B2 (en) * | 2001-05-09 | 2010-03-09 | Lenovo (Singapore) Ptd. Ltd. | System and method for installing a remote credit card authorization on a system with a TCPA complaint chipset |
EP1271277A3 (de) | 2001-06-26 | 2003-02-05 | Redstrike B.V. | Sicherheitssystem und Verfahren zur Verhinderung der unbefugten Benutzung eines Rechners |
US20030002668A1 (en) * | 2001-06-30 | 2003-01-02 | Gary Graunke | Multi-level, multi-dimensional content protections |
US20030018892A1 (en) * | 2001-07-19 | 2003-01-23 | Jose Tello | Computer with a modified north bridge, security engine and smart card having a secure boot capability and method for secure booting a computer |
US7191440B2 (en) * | 2001-08-15 | 2007-03-13 | Intel Corporation | Tracking operating system process and thread execution and virtual machine execution in hardware or in a virtual machine monitor |
US7484105B2 (en) * | 2001-08-16 | 2009-01-27 | Lenovo (Singapore) Ptd. Ltd. | Flash update using a trusted platform module |
FR2830147B1 (fr) | 2001-09-24 | 2003-10-31 | Gemplus Card Int | Procede et dispositif de la verification de la detention d'une donnee confidentielle sans communication de celle-ci, selon un processus dit de "a divulgation nulle" |
US7103529B2 (en) * | 2001-09-27 | 2006-09-05 | Intel Corporation | Method for providing system integrity and legacy environment emulation |
US7191464B2 (en) * | 2001-10-16 | 2007-03-13 | Lenovo Pte. Ltd. | Method and system for tracking a secure boot in a trusted computing environment |
JP4019266B2 (ja) * | 2001-10-25 | 2007-12-12 | 日本電気株式会社 | データ送信方法 |
DE10158531B4 (de) * | 2001-11-29 | 2006-09-28 | Universitätsklinikum Freiburg | Verfahren zur Messung der Magnetresonanz (NMR) mittels Spin-Echos |
US7103771B2 (en) * | 2001-12-17 | 2006-09-05 | Intel Corporation | Connecting a virtual token to a physical token |
US20030126453A1 (en) * | 2001-12-31 | 2003-07-03 | Glew Andrew F. | Processor supporting execution of an authenticated code instruction |
US7308576B2 (en) * | 2001-12-31 | 2007-12-11 | Intel Corporation | Authenticated code module |
US7107460B2 (en) * | 2002-02-15 | 2006-09-12 | International Business Machines Corporation | Method and system for securing enablement access to a data security device |
US7631196B2 (en) | 2002-02-25 | 2009-12-08 | Intel Corporation | Method and apparatus for loading a trustable operating system |
US7130999B2 (en) * | 2002-03-27 | 2006-10-31 | Intel Corporation | Using authentication certificates for authorization |
US7343493B2 (en) | 2002-03-28 | 2008-03-11 | Lenovo (Singapore) Pte. Ltd. | Encrypted file system using TCPA |
US7028149B2 (en) * | 2002-03-29 | 2006-04-11 | Intel Corporation | System and method for resetting a platform configuration register |
US20030226040A1 (en) * | 2002-06-03 | 2003-12-04 | International Business Machines Corporation | Controlling access to data stored on a storage device of a trusted computing platform system |
US20030231328A1 (en) * | 2002-06-07 | 2003-12-18 | Xerox Corporation | Multiple printer driver |
US6879574B2 (en) | 2002-06-24 | 2005-04-12 | Nokia Corporation | Mobile mesh Ad-Hoc networking |
US6996748B2 (en) | 2002-06-29 | 2006-02-07 | Intel Corporation | Handling faults associated with operation of guest software in the virtual-machine architecture |
US7165181B2 (en) * | 2002-11-27 | 2007-01-16 | Intel Corporation | System and method for establishing trust without revealing identity |
US7318141B2 (en) | 2002-12-17 | 2008-01-08 | Intel Corporation | Methods and systems to control virtual machines |
US20040128345A1 (en) * | 2002-12-27 | 2004-07-01 | Robinson Scott H. | Dynamic service registry |
US7962545B2 (en) * | 2002-12-27 | 2011-06-14 | Intel Corporation | Dynamic service registry for virtual machines |
US7624272B2 (en) * | 2003-03-31 | 2009-11-24 | Intel Corporation | Platform information for digital signatures |
US20050021968A1 (en) * | 2003-06-25 | 2005-01-27 | Zimmer Vincent J. | Method for performing a trusted firmware/bios update |
US7299354B2 (en) * | 2003-09-30 | 2007-11-20 | Intel Corporation | Method to authenticate clients and hosts to provide secure network boot |
US7366305B2 (en) * | 2003-09-30 | 2008-04-29 | Intel Corporation | Platform and method for establishing trust without revealing identity |
US7797544B2 (en) * | 2003-12-11 | 2010-09-14 | Microsoft Corporation | Attesting to establish trust between computer entities |
US20050137889A1 (en) * | 2003-12-18 | 2005-06-23 | Wheeler David M. | Remotely binding data to a user device |
EP1737108A1 (de) * | 2005-06-20 | 2006-12-27 | Yi-Yin Lin | Fahrradlichtmaschine mit einer Mehrzahl an gewickelten Polen |
-
2002
- 2002-02-25 US US10/085,839 patent/US7631196B2/en active Active
-
2003
- 2003-02-13 DE DE10397004.5T patent/DE10397004A5/de active Granted
- 2003-02-13 DE DE10394383.8A patent/DE10394383B4/de not_active Expired - Lifetime
- 2003-02-13 GB GB0419314A patent/GB2402521B/en not_active Expired - Lifetime
- 2003-02-13 DE DE10397004.5A patent/DE10397004B4/de not_active Expired - Lifetime
- 2003-02-13 DE DE10392320T patent/DE10392320B4/de not_active Expired - Lifetime
- 2003-02-13 CN CNB03804546XA patent/CN100423013C/zh not_active Expired - Lifetime
- 2003-02-13 WO PCT/US2003/004612 patent/WO2003073269A2/en not_active Application Discontinuation
- 2003-02-13 AU AU2003213080A patent/AU2003213080A1/en not_active Abandoned
-
2004
- 2004-12-14 HK HK04109921A patent/HK1068178A1/xx not_active IP Right Cessation
-
2009
- 2009-11-10 US US12/615,475 patent/US8386788B2/en not_active Expired - Lifetime
- 2009-11-10 US US12/615,519 patent/US8407476B2/en not_active Expired - Lifetime
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1998036517A1 (en) * | 1997-02-13 | 1998-08-20 | Jpc, Inc. | Security coprocessor for enhancing computer system security |
Non-Patent Citations (1)
Title |
---|
KARGER, P. A. [u.a.]: A Retrospective on the VAX VMM Security Kernel. In: IEEE Transactions on Software Engineering, Vol. 17, 1991, No. 11, S. 1147-1165. - ISSN 0098-5589 * |
Also Published As
Publication number | Publication date |
---|---|
HK1068178A1 (en) | 2005-04-22 |
DE10397004A5 (de) | 2014-01-30 |
US7631196B2 (en) | 2009-12-08 |
US20030163723A1 (en) | 2003-08-28 |
CN1723465A (zh) | 2006-01-18 |
AU2003213080A8 (en) | 2003-09-09 |
US8386788B2 (en) | 2013-02-26 |
DE10392320T5 (de) | 2005-02-17 |
GB2402521A (en) | 2004-12-08 |
CN100423013C (zh) | 2008-10-01 |
AU2003213080A1 (en) | 2003-09-09 |
WO2003073269A2 (en) | 2003-09-04 |
GB0419314D0 (en) | 2004-09-29 |
DE10397004B4 (de) | 2024-01-11 |
WO2003073269A3 (en) | 2004-09-23 |
US20100058076A1 (en) | 2010-03-04 |
DE10392320B4 (de) | 2011-02-24 |
US20100058075A1 (en) | 2010-03-04 |
US8407476B2 (en) | 2013-03-26 |
GB2402521B (en) | 2005-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE10394383B4 (de) | Verfahren und Vorrichtung zum Laden eines vertrauenswürdigen Betriebssystems | |
DE10196005B4 (de) | Einrichtung und Verfahren zur isolierten Ausführung von Isoliert-Befehlen | |
DE10195999B3 (de) | Computersystem mit einer in einem Chipsatz enthaltenen Speichersteuereinrichtung zum Kontrollieren von Zugriffen auf einen isolierten Speicher für eine isolierte Ausführung | |
DE10297273B4 (de) | Verfahren zur Bereitstellung von Systemintegrität und Legacy-Umgebungsemulation | |
DE112005003340B4 (de) | Mechanismus zum Bestimmen der Vertrauenswürdigkeit von Außerbandverwaltungsagenten | |
DE10392470B4 (de) | System und Verfahren zum Ausführen von Initialisierungsbefehlen einer gesicherten Umgebung | |
DE69531112T2 (de) | Mechanismus zum verknüpfen von dateien auf einem emulierten system mit dem zentralsystem für den zugriff durch emulierte systembenutzer | |
DE112015004555B4 (de) | Verarbeiten eines Gast-Ereignisses in einem von einem Hypervisor gesteuerten System | |
DE112004003066B4 (de) | Verwendung mehrerer Monitore virtueller Maschinen zur Abwicklung priviligierter Ereignisse | |
DE60006217T2 (de) | Techniken zum gewähren des zugriffs durch eine kontextsperre in einem gerät mit kleinem platzbedarf unter verwendung von einem eingangspunktobjekt | |
DE10197121B4 (de) | Neuer Prozessormodus zum Begrenzen des Betriebes von auf einer virtuellen Maschine laufender Gast-Software mit Unterstützung eines Virtuelle-Maschine-Monitors | |
DE102006061939B4 (de) | Verfahren und Vorrichtung zum Zugriff auf eine speicherabgebildete Vorrichtung durch einen Gast | |
DE10196440B4 (de) | Steuern des Zugriffs auf mehrere isolierte Speicher in einer isolierten Ausführungsumgebung | |
DE10393662T5 (de) | Bereitstellen eines sicheren Ausführungsmodus in einer Preboot-Umgebung | |
DE112007001714T5 (de) | Virtualisieren von Leistungszählern | |
DE102013022405B3 (de) | Schutz globaler Register in einem Multithreaded-Prozessor | |
DE102009049078B4 (de) | Verwendung von Ausführer-Wissen über Speicherregion-Ordnungsanforderungen zum Modifizieren von Transaktionsattributen | |
DE102014003690A1 (de) | Prozessoren, Verfahren und Systeme zur Befehlsemulation | |
DE102018115670A1 (de) | Technologien für die Ausführung von nicht vertrauenswürdigem Code mit Prozessor-Sandbox-Unterstützung | |
DE102014003705A1 (de) | Prozessoren, Verfahren und Systeme zur Befehlsemulation | |
DE112011102876T5 (de) | Ressourcenverwaltungs- und Sicherheitssystem | |
DE102007046475A1 (de) | Überwachen eines Ausführungsmusters eines Target-Agents auf einem VT-fähigen System | |
DE112020000280B4 (de) | Transparente interpretation von gastbefehlen in einer sicheren virtuellen maschinenumgebung | |
DE60002687T2 (de) | Techniken zum gewähren des zugriffs durch eine kontextsperre in einem gerät mit kleinem platzbedarf unter verwendung von laufzeitumgebungsprivilegien | |
DE102010054614A1 (de) | Eindringen in eine gesicherte EDV-Umgebung unter Verwendung mehrerer authentifizierter Codemodule |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
Q172 | Divided out of (supplement): |
Ref document number: 10392320 Country of ref document: DE Kind code of ref document: P |
|
8110 | Request for examination paragraph 44 | ||
R016 | Response to examination communication | ||
R018 | Grant decision by examination section/examining division | ||
R130 | Divisional application to |
Ref document number: 10397004 Country of ref document: DE Effective date: 20131021 |
|
R020 | Patent grant now final | ||
R020 | Patent grant now final |
Effective date: 20141017 |
|
R081 | Change of applicant/patentee |
Owner name: TAHOE RESEARCH, LTD., IE Free format text: FORMER OWNER: INTEL CORPORATION, SANTA CLARA, CALIF., US |
|
R082 | Change of representative |
Representative=s name: DENNEMEYER & ASSOCIATES S.A., DE |
|
R071 | Expiry of right |