DE69533587T2 - Gesicherte rechnerarchitektur - Google Patents

Gesicherte rechnerarchitektur Download PDF

Info

Publication number
DE69533587T2
DE69533587T2 DE69533587T DE69533587T DE69533587T2 DE 69533587 T2 DE69533587 T2 DE 69533587T2 DE 69533587 T DE69533587 T DE 69533587T DE 69533587 T DE69533587 T DE 69533587T DE 69533587 T2 DE69533587 T2 DE 69533587T2
Authority
DE
Germany
Prior art keywords
access
input
central processing
output
secure computer
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 - Fee Related
Application number
DE69533587T
Other languages
English (en)
Other versions
DE69533587D1 (de
Inventor
Mark S. Anderson
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
COMMW OF AUSTRALIA CANBERRA
Commonwealth of Australia
Original Assignee
COMMW OF AUSTRALIA CANBERRA
Commonwealth of Australia
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by COMMW OF AUSTRALIA CANBERRA, Commonwealth of Australia filed Critical COMMW OF AUSTRALIA CANBERRA
Application granted granted Critical
Publication of DE69533587D1 publication Critical patent/DE69533587D1/de
Publication of DE69533587T2 publication Critical patent/DE69533587T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/009Trust
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2149Restricted operating environment

Description

  • Diese Erfindung bezieht sich auf vertrauenswürdige Hardware-Einrichtungen, die in einer allgemeinen Computersystem-Architektur genutzt werden können, um Mittel bereitzustellen, damit gewährleistet ist, dass Datenübertragungen innerhalb der Systemarchitektur sicher sind. Wird eine vertrauenswürde Hardware-Einrichtung als eine Peripherieeinrichtung eines Computersystems konfiguriert, kann der Computer für vorgegebene vertrauenswürde Funktionen genutzt werden.
  • HINTERGRUND
  • Die weit verbreitete Benutzung von Computern zur Informationsspeicherung und Informationsverarbeitung hat zur Notwendigkeit von Systemen geführt, mit denen Informationen geschützt werden können, welche von nationalem Sicherheitsinteresse, wirtschaftlich sensibel oder persönlich sind. Es werden Sicherheitsmethoden benötigt, welche die Benutzersicherheit von Computersystemen auf unautorisierten Zugriff auf und Veränderungen von Informationen prüft, die von Computersystemen gespeichert und verarbeitet werden.
  • Als Antwort auf die Notwendigkeit von sicheren Computern und Computersystemen zur Arbeit in geheimen Umgebungen hat das Verteidigungsministerium der Vereinigten Staaten die "Department of Defense Trusted Computer System Evaluation Criteria" (Referenz Nr. DOD 5200.28-STD) veröffentlicht. Diese Veröffentlichung, welche meist als das "Orange Book" genannt wird, beschreibt Sicherheitsmaßstäbe mit messbaren Zielen und Bewertungskriterien zur Bewertung von Design und Realisierungen von sicheren Computern und Computersystemen.
  • Das Orange Book betont das Konzept der Trusted Computing Base (TCB) und der Zuständigkeitsüberwachung. Die TCB ist die Gesamtheit aller Resourcen in einem System, die zusammen die Sicherheitsfunktionen des Systems vorsehen. Die Zuständigkeitsüberwachung ist der Teil der TCB, welcher alle Datenzugriffe in dem System überwacht und nur die Zugriffe erlauben wird, wozu der Benutzer des Systems die Rechte hat sie auszuführen.
  • Wegen der enormen Höhe der Kapitalinvestition in bestehende Computer-Hardware wurde von Systementwicklern ein Ansatz gewählt, die TCBs nach den Sicherheitskriterien des Orange Books eher in bestehende Hardware-Plattformen zu implementieren als total neue Hardware zu entwickeln. Dieser Ansatz bedeutete, dass die TCB in Software implementiert werden musste und wegen der funktionalen Anforderungen der TCH und der Zuständigkeitsüberwachung wurden große und komplizierte Software-Systeme von Grund auf neu entwickelt. Dies bedeutete, dass die Entwickler Betriebssysteme und Kernel mit eingebauter Sicherheit entwickeln mussten, um Systeme zu schaffen, die die Kriterien des Orange Books erfüllten.
  • Anstrengungen TCBs in einer solchen Art und Weise zu bauen haben aber gezeigt, dass es eine Menge von Problemen bei diesem Ansatz gibt, nämlich:
    • (i) Erhöhte Entwicklungsanstrengungen. Dadurch, dass die TCB in Software implementiert ist, bedeutet es, dass zusätzlicher Aufwand darauf gerichtet werden muss, dass Gewissheit besteht, dass die TCB korrekt funktioniert. Das Überprüfen der korrekten Funktion der TCB hat sich als extrem zeitaufwändige Anwendung herausgestellt und kann als undurchführbar angesehen werden, wenn die TCB zu groß ist.
    • (ii) Verringerte Leistung. Anwendungen, die auf einer in Software implementierten TCB laufen, werden langsamer sein, da die TCB Prozessorleistung dazu benutzt, um Sicherheitsfunktionen auszuführen. Zusätzlich beim Bemühen, die Überprüfungsvoraussetzungen des TCBs zu reduzieren, kann die Größe der TCB dadurch reduziert werden, dass einige der Funktionalitäten gestrichen werden, was wiederum die Leistung des gesamten Systems reduziert.
    • (iii) Verringerte Benutzbarkeit. Das Redesign von Betriebssystemen und Kernels, um eine TCB zu implementieren, war in vielen Fällen sehr umfassend. Daraus resultieren Inkompatibilitäten zwischen bestehender Software und dem neuen sicheren Betriebssystem, was wiederum die Verwendbarkeit der TCB verringert. Die von der TCB auferlegten Sicherheitsfunktionen werden oft als zu restriktiv von den Benutzern angesehen, da sie die Benutzer sogar daran hindern können, Routine-Aufgaben auszuführen.
    • (iv) Verringerte Pflegbarkeit. Jede Änderung, die an einer Software implementierten TCB gemacht wird, verlangt, dass die TCB neu evaluiert wird und dies macht es schwierig, Funktionalität zu der TCB schrittweise hinzuzufügen.
  • Es wurden verschiedene Ansätze versucht, um vertrauenswürdige Systeme zu entwickeln, einschließlich der Implementierung der Zuständigkeitsüberwachung in Hardware, um so viele der Probleme, die bei der Software-Implementierung auftreten, zu vermeiden. Ein Entwurf im Stand der Technik ist der US National Computer Security Center's Logical Coprocessing Kernel, welcher allgemein als LOCK bekannt ist. Das LOCK-Projekt hatte die Entwicklung eines wiederbenutzbaren Hardware-Moduls zur Folge, welches SIDEARM (System-Independent Domain-Enforcing Assured Reference Monitor) genannt wird, welches an eine Vielzahl von Systemen angepasst werden konnte und eine Hardware-Version der Zuständigkeitsüberwachungsfunktion implementierte. Das Projekt erforderte außerdem die Portierung eines bestehenden Betriebssystems (UNIX) auf eine LOCK-Hardware-Plattform.
  • Während das LOCK-Projekt gezeigt hat, dass eine Hardware-Implementierung der Zuständigkeitsüberwachung viele Probleme der Software TCB-Entwicklung verhindert, ist die Entwicklung eines LOCK ähnlichen Systems immer noch sehr zeitaufwändig und teuer. Zusätzlich ist die SIDEARM sehr eng mit speziellen Resourcen des Hardware-Systems verbunden, auf dem sie läuft und es bleibt abzuwarten, ob das LOCK-Design auf einer Mehrzahl von verschiedenen Hardware-Systemen genutzt werden kann.
  • Abrams schlug eine verallgemeinerte TCB-Software-Architektur zur Implementierung von vertrauenswürdigen Systemen vor. Abrams schlug vor, dass die TCB aus einer Mehrzahl von TCB-Untereinheiten zusammengesetzt sein soll, wobei jede für das zur Verfügungstellen einiger sicherheitsrelevanter Funktionalitäten verantwortlich ist. Dies ist grundsätzlich ein "divide and conquer"-Ansatz, wo die TCB in eine Mehr zahl von Schutzbereiche aufgeteilt wird und das Design eine Struktur zur Implementierung von Kommunikation zwischen Bereichen beinhaltet und zum Fällen von Zugriffssteuerungsentscheiden, welche eine Reihe von Bereichen betrifft.
  • Die von Abrams verallgemeinerte TCB-Architektur bietet einen Rahmen, um vertrauenswürdige Systeme auf Software-Basis zu entwickeln. Abrams behauptet, dass wenn einmal die Rahmenbedingungen verfeinert und perfektioniert sind, dass es dann möglich wäre, Hardware-Module zu schaffen, die eine verallgemeinerte TCB-Architektur implementieren und in existierende Systeme passen, in weitgehend derselben Weise wie LOCK-Einrichtungen. Es ist nicht sofort offenkundig, wie dies implementiert werden soll und sogar, ob es eintreten wird.
  • Während die Entwickler von vertrauenswürdigen Computer-Plattformen bis jetzt noch keine entsprechenden Technologien zur allgemeinen Nutzung von Computern geliefert haben, haben andere vertrauenswürdige Funktionalität in existierende allgemeine Benutzungssysteme integriert.
  • Zum Beispiel gibt es nichtvertrauenswürdige allgemeine Computersysteme, welche mit vertrauenswürdiger Peripherie-Hardware nachgerüstet werden können. Diese Peripheriegeräte sind so eingerichtet, um Dienste anzubieten, welche das Vertrauen in bestimmte Funktionen des nichtvertrauenswürdigen Computers unterstützen.
  • Ein solches Gerät ist speziell zur Benutzung mit einem elektrisch und physikalisch sicheren Netzwerk zur Behandlung von klassifizierten Daten ausgelegt worden. Wenn Benutzer in dem sicheren Netzwerk Daten aus dem Netzwerk hinaussenden wollen, z. B. bei der Benutzung von E-Mail, nutzen sie eine sichere Peripherieeinheit, welche an ihre normale, nichtvertrauenswürdige Workstation angebracht ist, um ein gegen unbefugte Zugriffe gesichertes Siegel an den Daten anzubringen. Die Daten und das Siegel werden dann über das sichere Netzwerk zu einer weiteren vertrauenswürdigen Peripherieeinheit gesendet, welche als Gateway fungiert. Diese Gateway-Einrichtung wird untersuchen, ob das Siegel gültig ist, beispielsweise wird überprüft, ob die Daten, die aus dem sicheren Netzwerk gesendet werden sollen, die sind, die versiegelt wurden und wenn dies der Fall ist, werden die Daten in das externe Netzwerk weitergeleitet.
  • Die koordinierte Aktion der vertrauenswürdigen Peripherieeinheiten bietet eine einfache Integritätsfilterfunktion an, die auf alle, das sichere Netzwerk verlassende Daten, angewendet wird. Das Benutzen von einem Integritätsfilter sichert, dass nur Daten das sichere Netzwerk verlassen, welche von den Nutzern des Netzwerks genehmigt wurden. So hat das Nachrüsten von vertrauenswürdigen Peripherieeinheiten in das sichere Netzwerk Vertrauen in einen bestimmten Teil des Betriebes des sicheren Netzwerkes gebracht.
  • Die AU, 46726/93, A1, (SECURE COMPUTING CORPORATION), vom 20. Januar 1994, beschreibt eine Methode und eine Vorrichtung, um sichere Kommunikation über ein unsicheres Kommunkationsmedium zwischen einem Nutzer, der an einer ungesicherten Workstation oder Computer arbeitet, zu einem Host-Computer sicherzustellen. Eine sichere Benutzerschnittstelle wird dadurch geschaffen, indem ein vertrauenswürdiges Wege-Subsystem zwischen Eingabe/Ausgabeeinrichtungen der Workstation und der Workstation selbst eingesetzt wird. Im normalen Modus ist das vertrauenswürdige Wege-Subsystem transparent für die Workstation. Logische Schalter verbinden den Prozessor der Workstation direkt mit der Tastatur und dem Bildschirm.
  • Im vertrauenswürdigen Wegemodus ist der Workstation-Prozessor aber durch logische Schalter von der Tastatur und dem Bildschirm getrennt.
  • Die oben beschriebenen Probleme sind normalerweise mit der Schwierigkeit und Komplexität der Entwicklung von vertrauenswürdiger Computer-Hardware und Software verbunden. Die Erfinder haben einen Ansatz entwickelt, um Computer-Hardware mit eingebauter vertrauenswürdiger Funktionalität zu entwickeln. Der selbe Ansatz kann genutzt werden, um eine Hardware-Einrichtung zu entwickeln, welche nicht unähnlich wie ein Peripheriegerät an einem nichtvertrauenswürdigen Computer genutzt wird, welche vorbestimmte Sicherheitsfunktionen diesem nichtvertrauenswürdigen Computer anbieten kann. Es ist möglich, die Peripherieversion einer solchen Einrichtung von einem Computer zu trennen, wenn es notwendig ist, und sie mit einem anderen Computer zu nutzen. Die Peripherieversion einer solchen Einrichtung kann rekonfiguriert werden, um andere sicherheitsrelevante Funktionen oder vorbestimmte Sicherheitsfunktionen auszuführen.
  • KURZE BESCHREIBUNG DER ERFINDUNG
  • Die Erfindung sieht eine sichere Computervorrichtung, wie in Anspruch 1 definiert, vor.
  • Gemäß einem bevorzugten Aspekt der Erfindung kontrolliert besagte Zugriffsüberwachung besagte zentrale Verarbeitungseinheit.
  • In einem bevorzugten Aspekt der Erfindung besitzt die sichere Computervorrichtung weiter mindestens ein Speichermittel und weiter eine vertrauenswürdige Gate-Einrichtung, welche zwischen dem besagten mindestens einem Speicher mittel und dem besagten BUS-Mittel positioniert ist und mindestens einen Speicherplatz in der oder den besagten Speichermitteln, und jedes der besagten mindestens einen Eingabe- und Ausgabemittel ist mit einem jeweiligen TAG assoziiert, welcher für ein sicherheitsrelevantes Attribut repräsentativ ist, das von den besagten zentralen Verarbeitungseinheitenmittel verarbeitet werden kann, so dass, wenn die zentralen Verarbeitungseinheitenmittel versuchen, auf einen mit einem TAG versehenen Speicherplatz zuzugreifen oder besagtes Eingabe- oder Ausgabemittel zu benutzen, kontrolliert besagte Zugriffsüberwachung die Ein- oder Zweiwegrichtung des besagten Signales durch eine entsprechende Gate-Einrichtung gemäß den jeweiligen TAGs.
  • In einem weiteren bevorzugten Aspekt der Erfindung sind die vertrauenswürdigen Zugriffsüberwachungsvorrichtungs-TAGs änderbar.
  • Gemäß einer weiteren bevorzugten Aspekt der Erfindung ist die sichere Computervorrichtung in einem tragbaren Modul vorgesehen, welches für eine Verbindung an einem peripheren Eingangs/Ausgangsport einer Computereinrichtung angepasst ist.
  • Diese und andere Aspekt der Erfindung werden durch die folgende Beschreibung eines bevorzugten Ausführungsbeispiels verdeutlicht, wobei darauf hingewiesen wird, dass es nur zur Illustration dient und die Erfindung nicht auf eines oder eine Kombination der folgenden Elemente oder Funktionen beschränkt.
  • KURZE BESCHREIBUNG DER FIGUR
  • Um die Erfindung besser zu verstehen, wird ein Beispiel mit einer beigefügten Zeichnung erklärt, in der:
  • 1 ein Funktionsblockdiagramm einer Computersystem-Architektur zeigt, welche einen kontrollierten und beschränkten Signaltransfer zwischen Elementen des Computersystems aufweist und die auch ein separates Computerperipheriegerät beschreiben kann.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Diese Spezifikation beschreibt ausführlich drei separate, aber miteinander in Verbindung stehende Aspekte der Erfindung, nämlich:
    • (i) ein entfernbares oder fixiertes Hardware-Modul, welches Zugriffsüberwachung genannt wird, welches eine Schnittstelle mit einer Computereinrichtung bildet und den Betrieb von Sicherheits-Gates steuert, welche den Datentransfer innerhalb der Computereinrichtung regulieren, wobei TAGs genutzt oder nicht genutzt werden können, da spezielle hartverdrahtete Speicherplätze die Funktion von TAGs in manchen Fällen ersetzen können;
    • (ii) die Integration der Zugriffsüberwachung und Sicherheits-Gates in einer mit TAGs versehene Speicherarchitektur, wobei die Informationen der TAGs von der Zugriffsüberwachung dazu genutzt werden, die Steuerung der Sicherheits-Gates festzulegen;
    • (iii) ein vertrauenswürdiges allgemeines Computer-Hardware-Peripheriegerät, welches die Zugriffsüberwachung, Sicherheits-Gates und mit TAGs versehene Speicherelemente aufweist und konfigurierbar ist, um eine Sicherheitspolitik zu implementieren, die für die Anwendung peripherer Einheiten geeignet ist.
  • Um die Erfindung besser zu verstehen, wird diese mit der beigefügten Zeichnung 1 erklärt, die ein funktionales Blockdiagramm der Architektur einer peripheren Computereinrichtung aufzeigt, welche im obigem Punkt (iii) beschrieben ist, und welche die Elemente gemäß den Punkten (i) und (ii) mit beinhaltet.
  • Zugriffsüberwachung und Sicherheits-Gates
  • Die Zugriffsüberwachung und die Sicherheits-Gates kontrollieren zusammen durch Einschränkungen den Datentransfer zwischen den verschiedenen Elementen des Computersystems inklusive der zentralen Verarbeitungseinheit, Speicher und E/A-Einrichtungen. Die Zugriffsüberwachung kann ein entfernbares Hardware-Modul sein, das über eine Schnittstelle mit dem Rechnersystem in Verbindung steht und die jeden Datentransfer, der auf dem Systembus stattfindet, überwacht. Die Sicherheits-Gates sind Hardware-Elemente, die zwischen dem Systembus und dem Speicher und den E/A-Vorrichtungen platziert sind, die das System bilden. Jeder Datentransfer von und zu dem Speicher und den E/A-Vorrichtungen in dem System, wird ein Sicherheits-Gate passieren, welches durch die Zugriffsüberwachung kontrolliert ist.
  • In einem Beispiel ist die Zugriffsüberwachung so angepasst, dass sie die zentrale Verarbeitungseinheit kontrolliert und in einem bevorzugten Operationsmodus die zentrale Verarbeitungseinheit in den Anfangszustand oder den Zustand bei der Installation oder zu einem bestimmten definierten Ereignis zurücksetzen kann.
  • Die Zugriffsüberwachung kann in dem gezeichneten Ausführungsbeispiel ein Gate dynamisch kontrollieren, um Datentransfer in beide Richtungen (lesen und schreiben) zu ge statten, in nur eine Richtung oder den kompletten Transfer durch dieses Gate unmöglich zu machen. Die Zugriffsüberwachung ist so konfiguriert, dass sie die Sicherheitsregel in Kraft setzt, die für die Anwendung relevant ist, zu deren Durchführung die Rechnereinheit programmiert wurde. Ein Mittel, um diese Funktion zu implementieren, ist ebenso in dieser Spezifikation offenbart.
  • Durch die Überwachung der Signale auf dem Systembus kann die Zugriffsüberwachung die Einzelheiten jedes Datenzugriffs der stattfindet feststellen, z. B. die Adresse der Daten, auf die zugegriffen wird, und ob der Zugriff ein lesender oder schreibender Zugriff ist. Entscheidet die Zugriffsüberwachung, dass die Transaktion nicht erlaubt ist, kann sie das Gate deaktivieren, durch welches der Datentransfer stattfinden würde. Versucht die CPU (Central processing unit) des Systems einen Datentransfer durch ein deaktiviertes Gate auszuführen, wird ein Speicherzugriffsfehler generiert.
  • Während die Zugriffsüberwachung eine ähnliche Funktion, wie die zuvor beschriebene SIDEARM-Einrichtung ausführt, gibt es eine Menge von deutlich unterschiedlichen Merkmalen.
  • Zum ersten ist die Zugriffsüberwachungseinheit so ausgelegt, dass sie eine entfernbare und ersetzbare Komponente in einer Hardware-Architektur ist. Muss die Sicherheitsregel, die die Zugriffsüberwachung und die Sicherheits-Gates unterstützen, geändert werden, dann kann die Zugriffsüberwachung entfernt werden und eine neue Zugriffsüberwachung, die mit der neuen Sicherheitsregel programmiert ist, kann an deren Stelle treten. Zusätzlich arbeiten die Zugriffsüberwachung und die Sicherheits-Gate zusammen, um die Zuständigkeitsüberwachungsfunktion zu unterstützen. Dass diese zwei Arten von Einrichtungen zusammenarbeiten, ist der erste Punkt der Erfindung, der in dieser Spezifikation offenbart ist.
  • Die erfindungsgemäße Zugriffsüberwachung arbeitet größtenteils unabhängig von den anderen Elementen des Systems. Die SIDEARM in der LOCK-Architektur ist eng mit der CPU und insbesondere mit der MMU (memory management unit) des Systems verbunden, was eindeutig anders ist als in der Erfindung, auch wenn man sagen könnte, dass die Zugriffsüberwachung und die Sicherheits-Gates eine verdrahtete Version des Zuständigkeitsüberwachungskonzeptes des Orange Book sind.
  • 1 zeigt eine typische Architektur einer Computer-Einrichtung, die angepasst wurde, um eine Zugriffsüberwachung 28 und Sicherheitstore 32, 34, 36, 38, 40, 42, 44, 46 und 48 aufzunehmen.
  • Implementierung der Zugriffsüberwachung mit TAG behafteten Speichersystemen.
  • Wie bereits erwähnt kann die Zugriffsüberwachung so konfiguriert werden, dass sie eine Sicherheitsregel unterstützt, die für die anwendungsspezifische Operation der Recheneinheit relevant ist, welche die Zugriffsüberwachung kontrolliert. Eine Möglichkeit zur Implementierung dieses Merkmals ist die Integration der Kombination der Zugriffsüberwachung und der Sicherheits-Gates mit einem TAG behafteten Speichersystem. Es ist aber auch möglich, ein solches System ohne einen TAG behafteten Speicher zu betreiben, wenn z. B. die Adresse der Einheit, auf die zugegriffen werden soll, ihre Sicherheitsattribute impliziert.
  • In einem solchen System würde die Gesamtheit der keinen oder der mehreren Speicherplätze und der E/A-Einheiten, auf die der Systemprozessor zugreifen kann, ein TAG mit sich assoziieren. Ein TAG hat eine digitale Repräsentation, die durch die Zugriffsüberwachung ausgewertet wird, die eines oder mehrere Sicherheitsattribute repräsentiert, die relevant für die Daten oder die E/A-Einheit sind, mit der das TAG assoziiert ist. In diesem Ausführungsbeispiel werden alle TAGs in einem Speicher gespeichert, der TAG-Speicher heisst und auf den nur die Zugriffsüberwachung zugreifen kann.
  • Die Zugriffssteuerung selbst kann einige interne TAG-Register besitzen, die die Sicherheitsattribute des vom Prozessor ausgeführten Programms beinhalten. Versucht der Prozessor einen Datenzugriff, vergleicht die Zugriffsüberwachung den Inhalt ihres internen TAG-Registers mit dem TAG, welcher mit der Adresse des Datenspeichers, auf den zugegriffen wird, assoziiert ist. Dies erlaubt es der Zugriffsüberwachung effektiv zu überprüfen, ob die Sicherheitsattribute des Prozesses passend sind, um den Zugriff auf die Daten zu erlauben, und wenn der Zugriff nicht erlaubt ist, das Gate, durch welches der Zugriff erfolgen würde, geschlossen zu halten.
  • Ein vertrauenswürdiges Computer-Peripheriegerät
  • Die Zugriffsüberwachung und die Sicherheits-Gates, zusammen mit dem TAG behafteten Speichersystem, sind anfänglich gedacht, um in das Hardware-Design eines vertrauenswürdigen Computer-Peripheriegerätes integriert zu werden, aber sie können genauso bei der Architektur von vertrauenswürdigen Computern für allgemeine Zwecke genutzt werden. Der dritte Punkt der Erfindung, der in dieser Spezifikation offenbart ist, ist ein Ausführungsbeispiel eines Designs für eine vertrauenswürdige Computer-Peripherie, die eine Zugriffsüberwachung, Sicherheits-Gates und TAGs aufweisenden Speicher umfasst. Die periphere Einrichtung selbst kann programmiert sein, um eine bestimmte sicherheitsrelevante Funktion zum allgemeinen Nutzen des Computers anzubieten, an dem sie verbunden ist. Z. B. kann die periphere Einrichtung so programmiert sein, dass sie die Integritätsfilterfunktion eines Netzwerks, wie vorher beschrieben, ausführt, um einen sicheren Gateway-Mechanismus zwischen einem sicheren Netzwerk und einem äußeren Netzwerk, welches sicher sein kann oder nicht, vorzusehen.
  • 1 zeigt die Architektur der peripheren Einrichtung.
  • Die physikalischen Elemente der Computereinrichtung weisen auf, eine CPU 10, ein ROM 12, einen Adressbus 52, einen Daten-BUS 54 und Speicher zugeordneten Eingabe/Ausgabeports 14, 16, 18, 20, 22 und 24, inklusive eines Utility-Portes 26, der so ausgelegt ist, um Tastatur, Keypad und Flüssigkristallbildschirmgerät Zugriff und Ausgabe anzubieten (LCD); einen Video-Graphik-Port 50 und eine Zugriffsüberwachungskarte (AM) 28. Zusätzlich zu dem Genannten ist ein Hauptspeicher 30, ein Random Access Memory (RAM) Speicherplätze aufweist, vorhanden.
  • Allgemein ausgedrückt beinhalten die beschriebenen Elemente einen vollfunktionsfähigen Computer mit einem CPU-Speichersystem und Eingabe/Ausgabe-(E/A)Einrichtungen.
  • Einschränkungen beim Austausch oder Transfer von Daten zwischen verschiedenen Elementen des Systems sind von der AM 28 gesteuert, welche die Kontrolle über die Gates 32 bis 48 besitzt, die physikalisch zwischen dem Systembus und verschiedenen E/A-Einrichtungen und dem Systemspeicher platziert sind.
  • Jeder Zugriff der CPU 10 auf den Systemspeicher (z. B. den RAM 30) wird von der Zugriffsüberwachung 28 kontrolliert, indem das Gate 44 geöffnet wird.
  • In einem erfindungsgemäßen Ausführungsbeispiel besitzt jedes der jeweiligen Gates, die mit jedem Speicherplatz und jeder Speicher und E/A-Einrichtung assoziiert ist, eine einmalige Identifizierung, die aus Vereinfachungsgründen "TAG" genannt wird. Möchte die CPU 10 Zugriff auf beispielsweise einen bestimmten Speicherplatz im RAM, gibt sie ein Steuerungssignal auf ihren Steuerbus 58 aus und gibt ein geeignetes Adresssignal auf ihrem Adressbus 52 und ihrem Datenbus 54. Die AM entdeckt diese Signale und schaut im TAG-Speicher 56 den TAG, der mit diesem Platz verbunden ist, nach. Die AM nutzt den Wert des TAGs, um zu entscheiden, ob der angefragte Zugriff der CPU gewährt oder verboten wird. Die AM kann ebenso in einem programmierfähigen Speicherplatz alle zur Zeit gültigen TAG/s halten, welche sie ebenso dazu nutzt, um den TAG, der mit dem gewünschten Speicherplatz assoziiert ist, zu vergleichen, bevor sie der CPU Zugriff auf diesen Speicherplatz erlaubt.
  • Ein TAG kann unter einer Vielzahl von Dingen eine spezielle Sicherheitsstufe für den Zugriff, abhängig von der Art des Kontrollsignals (z. B. lesen oder schreiben) repräsentieren; eine andere Steuerfunktion; und/oder eine bestimmte Sicherheitsstufe, die mit dem Speicherplatz assoziiert ist, auf den zugegriffen werden soll.
  • Abhängig vom Ergebnis des Vergleichs von dem TAG, der aus dem TAG-Speicher 56 erhalten wurde, mit dem TAG, in dem programmierbaren Speicher des AM, kann Zugriff auf diesen Speicherplatz erlaubt oder nicht erlaubt werden. Die AM wird den Zugriff erlauben oder verbieten, indem sie das Gate 44 steuert, um das Lese- oder Schreibkommando hindurch zu lassen oder nicht.
  • Sollte der Zugriff auf einen Speicherplatz während der aktuellen Ausführung nicht erlaubt sein, hat dieser Speicherzugriff keinen Erfolg und die Adress- und/oder Datenbusse zu diesem Speicherplatz werden effektiv getrennt und die Daten in dem Speicher werden ungelesen oder unüberschrieben belassen. In anderen erfindungsgemäßen Ausführungsbeispielen, in denen der Kontrollbus aufgeteilt ist, können einer oder mehrere Busse selektiv durch die Gatebedienung blockiert werden.
  • In einem Beispiel würde das dem CPU passieren, wenn der Speicherplatz oder wenn der Prozess mit einer Eingabe/Ausgabe-Einrichtung verbunden ist, die für diese spezielle CPU-Operation nicht existiert.
  • Die Zugriffsüberwachung ist vorzugsweise so ausgelegt, dass sie eine gewünschte Sicherheitsregel beinhaltet, welche die Zugriffsstufe widerspiegelt in der Zeit, in der diese spezielle AM genutzt wird. Eine entfernbare AM-Einrichtung bedeutet, dass die Computer-Einrichtung deaktiviert oder eine Allgemeinanwendung zurückgeführt werden kann und wechselbare AMs oder viele verschiedene AMs erlauben es, Sicherheitsregeln zu ändern, je nach dem welche AM zur Zeit genutzt wird.
  • Jeder Speicherplatz im RAM besitzt einen TAG und der RAM selbst ist mit einem Gate verbunden. Aber der RAM, der nichts weiter als ein Speichermittel ist, muss nicht in einer sicheren Computer-Vorrichtung vorhanden sein. Z. B. kann eine PCMCIA/PC Karte ausgelegt sein, um als Speichereinrichtung zu fungieren, in welcher beispielsweise jeder Speicherplatz ein TAG besitzt. Auf diese Weise ist die PC Karte mit einem E/A verbunden, welcher mit einem Gate verbunden ist, unter der Kontrolle des AM.
  • Jeder Speicher und E/A-Einrichtung (z. B. PCMCIA/PC Card), der Graphik-Darstellungsport 50 und der Dienstport 26 sind alle mit einem Einwege- oder Zweiwegegate verbunden.
  • Die Gates 32 bis 48 können einwegig oder zweiwegig sein und haben bevorzugt zwei Bedienungsmodi. Der CLOSED-Modus sichert, dass alle ankommenden Signale von dem Adressbus 52 und dem Datenbus 54 nicht an seinen verbundenen Speicher und E/A-Einrichtungen oder Speicherplatz weitergeleitet werden. Weiter ist es bevorzugt, dass das Gate einen normalerweise CLOSED-Modus aufweist, so dass bei jedem Fehler, seine Bedienung auf einer FAIL SAFE-Einstellung beruht, was sicherstellt, dass keine Daten oder Signale das Gate passieren. Daten und Signale sind Ausdrücke, die in dieser Beschreibung gegeneinander ausgetauscht werden können.
  • Ist das Gate im OPEN-Modus, werden Adressen und Daten ohne Transformation durch das Gate zu dem mit ihm physikalisch verbundenen Speicher und E/A-Einrichtung oder Speicherplatz geleitet. Sollte es für die CPU-Operation notwendig sein, Informationen, die in einem Speicherplatz oder Speicher oder einer E/A-Einrichtung vorhanden sind, zu lesen oder zu verändern (beschreiben), dann können nur Daten erfolgreich durch das Gate transferiert werden, wenn das verbundene Gate offen ist.
  • In einer relativ einfachen Konfiguration besitzt der Computer eine CPU 10, eine Zugriffsüberwachung 28 und eine Vielzahl von Speicherplätzen und E/A-Einrichtungen, auf die von der CPU über mit ihr verbundene Gates, die unter der Kontrolle der Zugriffsüberwachung stehen, zugegriffen wird, wie in 1 beschrieben.
  • Das folgende Beispiel beschreibt den damit verbundenen Prozess, wenn die CPU Zugriff auf den Hauptspeicher des Computers erreichen will.
  • In einer bevorzugten Ausführungsform ist das TAG ein 8 bit Wert, welcher eindeutig mit jedem 32 bit Wort in dem RAM-Hauptspeicher verbunden ist. Das bedeutet, dass es eine 1 zu 1 Beziehung der TAGs zu einer 32 bit Partition innerhalb des RAM-Speicherplatzes gibt. Ein TAG kann ebenso repräsentativ für eine einzige Adresse des Speichers oder eine E/A-Einrichtung sein.
  • Zum Beispiel, wenn die CPU 10 auf einen bestimmten Speicherplatz zugreifen muss, ist der erste Schritt, der von der Zugriffsüberwachung gefordert wird, die Signale, die von der CPU auf die Kontroll- und Adresslinien gelegt wurden, zu decodieren, also die von der CPU ausgegebene Adresse zu ermitteln. Der zweite Schritt ist für die AM von ihrem verbundenen TAG-Speicher den einmaligen TAG zu erhalten, welcher mit der Adresse verbunden ist. Der dritte Schritt ist, den einmaligen TAG mit erlaubten TAG oder TAGs zu vergleichen, welche in der AM enthalten sind, so dass, wenn der TAG-Wert erlaubt ist, das Gate, welches mit der Einrichtung assoziiert ist, die die Adresse trägt, von der AM geöffnet werden kann.
  • Mehrere unterschiedliche Vergleichstechniken können genutzt werden und in einem Beispiel wird der einzigartige TAG für diesen Speicherplatz mit minimalen und maximalen TAG-Werten verglichen, die in der Zugriffsüberwachung vorhanden sind. Die minimalen und maximalen TAG-Werte sind repräsentativ für z. B. eine bestimmte Aufteilung der Informationen auf die die CPU zugreifen kann und weiter, ob diese Informationen gelesen oder überschrieben werden können. Liegt der TAG-Wert in dem vorbestimmten Bereich, wird das Gate 44, welches mit dem Hauptspeicher 30 verbunden ist, geöffnet und auf den gewünschten Speicherplatz wird zugegriffen, um entweder zu lesen oder zu schreiben, wie von der CPU gefordert. Das Gate 44 verändert die Informationen in keiner Weise, sondern das Gate erlaubt es, die momentane CPU-Operation zu beenden und bis zur nächsten CPU-Operation wird die Steuerung automatisch zurück an die Zugriffsüberwachung gegeben und das Gate geschlossen, bis es wieder unter der Kontrolle der AM geöffnet wird.
  • In einem zweiten Beispiel, in Bezug auf einen Versuch, dass die CPU auf einen Speicher oder eine E/A-Einrichtung zugreift (z. B. eine PCMCIA-Einrichtung, welche ein Modem sein kann), besteht der erste Schritt wie bereits vorher beschrieben daraus, dass die Zugriffsüberwachung die Kontroll- und Adresslinien überwacht und decodiert, die Signale übertragen, welche von der CPU stammen. Die bestimmte Adresse, die von der CPU angelegt wurde, wird decodiert und der einzigartige TAG wird über eine Look-up-Funktion, die von der Zugriffsüberwachung ausgeführt wird, bestimmt. Der einzigartige TAG wird dann mit den minimalen und den maximalen Werten, die in der Zugriffsüberwachung gehalten werden, verglichen und das Gate, welches mit dem PCMCIA verbunden ist, wird geöffnet oder bleibt geschlossen, je nach dem Ergebnis des Vergleiches. Ob der Zugriff ein Lese- oder Schreibezugriff ist, kann ebenso festlegen, ob das Gate geöffnet wird oder geschlossen bleibt.
  • In einer bevorzugten Ausführung kann die vertrauenswürdige Zugriffsüberwachungseinrichtung selbst in Form einer PCMCIA-Karte verfügbar sein, welche leicht in einen Computer eingesteckt und herausgenommen werden kann. Die einmaligen TAGs sind in ihrem Speicher an die gewünschte Sicherheits regel angepasst, die auf dem Computer und seiner Konfiguration angewendet werden soll. TAG-Bereiche innerhalb der AM können repräsentativ für die Sicherheitsstufe des Zugriffs sein, die der CPU erlaubt wird und deswegen benötigt die AM entsprechende physikalische Sicherheit, da ihre Inhalte die Zugriffssicherheitsregeln des Computers, an den sie angeschlossen ist, festlegen. Wenn jedoch Sicherheitsregeln geändert werden, kann die Zugriffsüberwachung ebenso leicht geändert werden.
  • In einer alternativen Ausführung kann es für bestimmte Operationen der CPU möglich sein, TAGs zu aktualisieren, wenn die CPU z. B. im Supervisor-Modus ist. In diesem bestimmten Ausführungsbeispiel ist es bevorzugt, ein vertrauenswürdiges Gate zwischen der CPU und dem TAG-Speicher zu besitzen.
  • In einem Beispiel der Benutzung der vorgestellten Architekturkonzepte, kann die CPU ein serienmäßiges Gerät sein, welches bevorzugt keinen Cache hat, welches alleine von einem vorprogrammierten ROM 12 konfiguriert wird. Der Haupt-RAM 30 besteht bevorzugterweise aus einer Vielzahl von Speicherplätzen, wovon jeder ein 32 bit-Wort, welches mit einem 8 bit-TAG assoziiert ist, besitzt und wobei jedes 8 bit-TAG in einem TAG-Speicher 56 gespeichert wird, welcher mit der Zugriffsüberwachung verbunden ist. Eine Methode zur Speicherung von TAG-Informationen ist eine statische 1 zu 1 Beziehung der einmaligen TAGs zu jeder Speicherpartition (Speicherplatz) und E/A-Einrichtung zu konzipieren.
  • Jeder PCMCIA Port, der in einem solchen Computer genutzt wird, ist ein eindeutig adressierter einfacher oder in einigen Fällen, zweifacher Kartenport. Jeder Speicher oder E/A-Platz besitzt ein Gate, welches mit jedem Port einmalig verbunden ist. Das Gate kann ein Zweiwege-Gate sein, welches Lese- und Schreiboperationen erlaubt, wenn es OPEN ist. In den Konfigurationen, die in 1 dargestellt sind, ist der Graphik-Darstellungsport 50 eine nur-schreibende Einrichtung. Deshalb muss das Gate nur Einwegtransfer von Daten vom Bus zu diesem Gate ermöglichen. Ein Gate, wie zuvor beschrieben, kann einwegig (unidirektional) oder zweiwegig (bidirektional) sein, abhängig von der Art der Einrichtung von und auf die es den Zugriff kontrolliert. Bevorzugterweise besitzt der Video-Graphik-Darstellungsport eine Graphikkarte mit einer Adresse, um adressierbare Pixel-Graphiken zu ermöglichen, was normalerweise in fortschrittlichen Computer-Einrichtungen benötigt wird, obwohl diese Funktionalität in keinerlei Hinsicht Konsequenzen für die Architektur-Merkmale mit sich bringt, welche in diesem Beispiel beschrieben wurden.
  • Ein Dienst-Port besitzt vorzugsweise eine Tastatur-Schnittstelle, eine LCD-Schnittstelle, eine Keypad-Schnittstelle und eine Echtzeituhr-Schnittstelle, und das Gate, welches damit verbunden ist, soll ein Zweiwege-Gate sein, welches lesen und schreiben der Daten erlaubt, während das Gate geöffnet ist. Diese spezielle Konfiguration wurde gewählt, da alle E/A mit dem Benutzer auf einer Sicherheitsstufe auftreten.
  • Es wird dem Fachmann bewusst werden, dass die Erfindung nicht in ihrer Benutzung auf die spezielle beschriebene Anwendung eingeschränkt ist und ebenso nicht, dass sie in ihrer bevorzugten Ausführungsform eingeschränkt ist, im Hinblick auf spezielle Elemente und/oder Eigenschaften, die hier beschrieben wurden. Es wird darauf hingewiesen, dass eine Vielzahl von Modifikationen ausgeführt werden können, ohne von den Prinzipien der Erfindung abzuweichen, und dass die Erfindung so verstanden werden soll, dass alle derartigen Modifikationen innerhalb des Schutzumfangs der Erfindung liegen.

Claims (10)

  1. Eine gesicherte Rechnereinrichtung umfassend: ein zentrales Verarbeitungsmittel (10), mindestens ein Eingabemittel, mindestens ein Ausgabemittel und Busmittel (59), um Signale zwischen den Mitteln zu übermitteln, die sämtlich unbewährt sind, ein bewährtes Zugriffsmonitorgerät (28), welches mit dem Busmittel verbunden ist, ein bewährtes Gattergerät, welches zwischen jeweils mindestens einem Eingabemittel und dem Busmittel angeordnet ist, ein weiteres bewährtes Gattergerät, welches zwischen jeweils mindestens einem Ausgabemittel und dem Busmittel angeordnet ist, wobei das bewährte Zugriffsmonitorgerät (28) entweder die Einwegrichtung oder die Zweiwegrichtung der Signale über ein entsprechendes bewährtes Gattergerät (32, 34, 36, 38, 40, 42, 44, 46, 48) steuert.
  2. Eine gesicherte Rechnereinrichtung nach Anspruch 1, ferner umfassend mindestens ein Speichermittel, welches mit dem Zentralen Verarbeitungsmittel betrieben werden kann.
  3. Eine gesicherte Rechnereinrichtung nach Anspruch 1, ferner umfassend mindestens ein Speichermittel und ein weiteres bewährtes Gattergerät, welches zwischen dem mindestens einen Speichermittel und dem Busmittel angeordnet ist.
  4. Eine gesicherte Rechnereinrichtung nach Anspruch 1, ferner umfassend mindestens ein Speichermittel, welches auf den Anschluss an das mindestens eine Eingabemittel eingerichtet ist, welches mindestens von dem zentralen Verarbeitungsmittel lesbar ist, wenn das Zugriffsmonitorgerät dieses erlaubt.
  5. Eine gesicherte Rechnereinrichtung nach Anspruch 1, wobei der Zugriffsmonitor den Betrieb des zentralen Verarbeitungsmittels steuert.
  6. Eine gesicherte Rechnereinrichtung nach Anspruch 3 oder 4, wobei mindestens ein Speicherort in jedem der Speichermittel und jedem der mindestens einen Eingabe- und Ausgabemittel mit einem sicherheitsbezogenen Attribut assoziiert ist, welches von dem zentralen Verarbeitungseinheitsmittel verarbeitet werden kann, derart, dass bei einem Versuch des zentralen Verarbeitungseinheitsmittels, auf einen Speicherort zuzugreifen oder das Eingabe- oder Ausgabemittel zu benutzen, der Zugriffsmonitor die Einweg- oder Zweiwegrichtung der Signale über ein entsprechendes Gattergerät gemäß dem sicherheitsbezogenen Attribut steuert.
  7. Eine gesicherte Rechnereinrichtung nach Anspruch 3 oder 4, wobei mindestens ein Speicherort in jedem der Speichermittel und jedem der mindestens einen Eingabe- und Ausgabemittel mit einem entsprechenden Kennzeichen (Tag) assoziiert ist, welches ein sicherheitsbezogenen Attribut darstellt, welches von dem zentralen Verarbeitungseinheitsmittel verarbeitet werden kann, derart, dass bei einem Versuch des zentralen Verarbeitungseinheitsmittels, auf einen gekennzeichneten Speicherort zuzugreifen oder das Eingabe- oder Ausgabemittel zu benutzen, der Zugrifzsmonitor die Einweg- oder Zweiwegrichtung der Signale über ein entsprechendes Gattergerät gemäß den entsprechenden Kennzeichen (Tags) steuert.
  8. Eine gesicherte Rechnereinrichtung nach Anspruch 7, wobei die Kennzeichen (Tags) der bewährten Zugriffsmonitorgeräte veränderbar sind.
  9. Eine gesicherte Rechnereinrichtung nach Anspruch 1, wobei die gesicherte Rechnereinrichtung in einem portablen Modul bereitgestellt wird, welches auf den Anschluss an einen peripheren Eingabe-/Ausgabeport eines Rechnergeräts eingerichtet ist.
  10. Ein Rechnergerät, welches von einer bewährten Rechnereinrichtung nach einem der vorhergehenden Ansprüche gesteuert wird.
DE69533587T 1994-05-26 1995-05-18 Gesicherte rechnerarchitektur Expired - Fee Related DE69533587T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AUPM589594 1994-05-26
AUPM589594 1994-05-26
PCT/AU1995/000296 WO1995033239A1 (en) 1994-05-26 1995-05-18 Secure computer architecture

Publications (2)

Publication Number Publication Date
DE69533587D1 DE69533587D1 (de) 2004-11-04
DE69533587T2 true DE69533587T2 (de) 2006-02-23

Family

ID=3780469

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69533587T Expired - Fee Related DE69533587T2 (de) 1994-05-26 1995-05-18 Gesicherte rechnerarchitektur

Country Status (6)

Country Link
US (1) US6115819A (de)
EP (1) EP0760978B1 (de)
AT (1) ATE278218T1 (de)
CA (1) CA2191331C (de)
DE (1) DE69533587T2 (de)
WO (1) WO1995033239A1 (de)

Families Citing this family (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7506020B2 (en) 1996-11-29 2009-03-17 Frampton E Ellis Global network computers
US7926097B2 (en) 1996-11-29 2011-04-12 Ellis Iii Frampton E Computer or microchip protected from the internet by internal hardware
US6865672B1 (en) 1998-05-18 2005-03-08 Spearhead Technologies, Ltd. System and method for securing a computer communication network
CA2832936C (en) * 1998-10-29 2015-08-11 Medtronic Minimed, Inc. Reservoir connector
EP1056010A1 (de) 1999-05-28 2000-11-29 Hewlett-Packard Company Datenintegritätsüberwachung in einer vertrauten Rechnereinheit
EP1055990A1 (de) 1999-05-28 2000-11-29 Hewlett-Packard Company Registrierung von Ereignissen in einer Computerplattform
EP1076279A1 (de) 1999-08-13 2001-02-14 Hewlett-Packard Company Computerplattformen und deren Betriebsverfahren
GB9922665D0 (en) 1999-09-25 1999-11-24 Hewlett Packard Co A method of enforcing trusted functionality in a full function platform
US6795905B1 (en) * 2000-03-31 2004-09-21 Intel Corporation Controlling accesses to isolated memory using a memory controller for isolated execution
US6718385B1 (en) 2000-05-19 2004-04-06 Galaxy Computer Services, Inc. System for controlling movement of information using an information diode between a source network and a destination network
GB2376763B (en) * 2001-06-19 2004-12-15 Hewlett Packard Co Demonstrating integrity of a compartment of a compartmented operating system
GB2372595A (en) 2001-02-23 2002-08-28 Hewlett Packard Co Method of and apparatus for ascertaining the status of a data processing environment.
GB2372594B (en) * 2001-02-23 2004-10-06 Hewlett Packard Co Trusted computing environment
GB2372592B (en) * 2001-02-23 2005-03-30 Hewlett Packard Co Information system
US8909555B2 (en) 2001-04-24 2014-12-09 Hewlett-Packard Development Company, L.P. Information security system
US8474021B2 (en) * 2001-06-29 2013-06-25 Secure Systems Limited Security system and method for computers
GB2378272A (en) * 2001-07-31 2003-02-05 Hewlett Packard Co Method and apparatus for locking an application within a trusted environment
US7065651B2 (en) * 2002-01-16 2006-06-20 Microsoft Corporation Secure video card methods and systems
US7277972B2 (en) 2002-03-08 2007-10-02 Freescale Semiconductor, Inc. Data processing system with peripheral access protection and method therefor
KR20040101293A (ko) * 2002-03-13 2004-12-02 마츠시타 덴끼 산교 가부시키가이샤 보안장치
US7383584B2 (en) * 2002-03-27 2008-06-03 Advanced Micro Devices, Inc. System and method for controlling device-to-device accesses within a computer system
US8155314B2 (en) * 2002-06-24 2012-04-10 Microsoft Corporation Systems and methods for securing video card output
US7206940B2 (en) 2002-06-24 2007-04-17 Microsoft Corporation Methods and systems providing per pixel security and functionality
GB2392262A (en) 2002-08-23 2004-02-25 Hewlett Packard Co A method of controlling the processing of data
US7974416B2 (en) * 2002-11-27 2011-07-05 Intel Corporation Providing a secure execution mode in a pre-boot environment
US7293178B2 (en) * 2002-12-09 2007-11-06 Microsoft Corporation Methods and systems for maintaining an encrypted video memory subsystem
GB0229759D0 (en) * 2002-12-20 2003-01-29 Becrypt Ltd Security device
US7404019B2 (en) * 2003-03-07 2008-07-22 Freescale Semiconductor, Inc. Method and apparatus for endianness control in a data processing system
US7434264B2 (en) * 2003-03-07 2008-10-07 Freescale Semiconductor, Inc. Data processing system with peripheral access protection and method therefor
US20040255145A1 (en) 2003-05-06 2004-12-16 Jerry Chow Memory protection systems and methods for writable memory
US20040225883A1 (en) * 2003-05-07 2004-11-11 Weller Michael K. Method and apparatus providing multiple single levels of security for distributed processing in communication systems
CA2527668A1 (en) * 2003-06-02 2004-12-16 Liquid Machines, Inc. Managing data objects in dynamic, distributed and collaborative contexts
DE60312159T2 (de) * 2003-09-02 2007-10-31 Sony Ericsson Mobile Communications Ab Übertragung von sicherheitsrelevanten Daten zwischen zwei Speichern
US7865739B2 (en) * 2003-09-02 2011-01-04 Sony Ericsson Mobile Communications Ab Methods and devices for transferring security data between memories
EP1619572A1 (de) * 2004-07-23 2006-01-25 Texas Instruments Incorporated System und Verfahren um Sicherheitseinbrüche innerhalb eines Rechnersystems zu identifizieren und vorzukommen
US8402283B1 (en) * 2004-08-02 2013-03-19 Nvidia Corporation Secure content enabled drive system and method
US8359332B1 (en) 2004-08-02 2013-01-22 Nvidia Corporation Secure content enabled drive digital rights management system and method
US7698731B2 (en) * 2004-10-25 2010-04-13 Panasonic Corporation Security architecture and mechanism to access and use security components in operating system
US7882317B2 (en) * 2004-12-06 2011-02-01 Microsoft Corporation Process isolation using protection domains
US8020141B2 (en) * 2004-12-06 2011-09-13 Microsoft Corporation Operating-system process construction
US8346807B1 (en) 2004-12-15 2013-01-01 Nvidia Corporation Method and system for registering and activating content
US8751825B1 (en) 2004-12-15 2014-06-10 Nvidia Corporation Content server and method of storing content
US8788425B1 (en) 2004-12-15 2014-07-22 Nvidia Corporation Method and system for accessing content on demand
US8875309B1 (en) 2004-12-15 2014-10-28 Nvidia Corporation Content server and method of providing content therefrom
US8539587B2 (en) 2005-03-22 2013-09-17 Hewlett-Packard Development Company, L.P. Methods, devices and data structures for trusted data
US8893299B1 (en) 2005-04-22 2014-11-18 Nvidia Corporation Content keys for authorizing access to content
US7751566B2 (en) * 2005-05-26 2010-07-06 Bae Systems Information And Electronic Systems Integration Inc. Apparatus using a time division multiple access bus for providing multiple levels of security in a communications system
US8849968B2 (en) 2005-06-20 2014-09-30 Microsoft Corporation Secure and stable hosting of third-party extensions to web services
US7822978B2 (en) * 2005-07-22 2010-10-26 Intel Corporation Quiescing a manageability engine
US20070101424A1 (en) * 2005-07-25 2007-05-03 Nec Laboratories America, Inc. Apparatus and Method for Improving Security of a Bus Based System Through Communication Architecture Enhancements
US7953968B2 (en) 2005-08-04 2011-05-31 Gilbarco Inc. System and method for selective encryption of input data during a retail transaction
US8074231B2 (en) * 2005-10-26 2011-12-06 Microsoft Corporation Configuration of isolated extensions and device drivers
US20070094495A1 (en) * 2005-10-26 2007-04-26 Microsoft Corporation Statically Verifiable Inter-Process-Communicative Isolated Processes
US8032898B2 (en) * 2006-06-30 2011-10-04 Microsoft Corporation Kernel interface with categorized kernel objects
US8312509B2 (en) 2006-09-21 2012-11-13 Intel Corporation High integrity firmware
JP4857066B2 (ja) * 2006-10-03 2012-01-18 株式会社日立製作所 ストレージオンデマンドシステムにおけるデータの処理方法およびストレージデマンドシステム
US8009032B2 (en) * 2006-11-21 2011-08-30 Gilbarco Inc. Remote display tamper detection using data integrity operations
US20080244507A1 (en) * 2007-03-30 2008-10-02 Microsoft Corporation Homogeneous Programming For Heterogeneous Multiprocessor Systems
US8789063B2 (en) * 2007-03-30 2014-07-22 Microsoft Corporation Master and subordinate operating system kernels for heterogeneous multiprocessor systems
US20090125977A1 (en) * 2007-10-31 2009-05-14 Docomo Communications Laboratories Usa, Inc. Language framework and infrastructure for safe and composable applications
US9418220B1 (en) 2008-01-28 2016-08-16 Hewlett Packard Enterprise Development Lp Controlling access to memory using a controller that performs cryptographic functions
JP4514066B2 (ja) * 2008-04-28 2010-07-28 ルネサスエレクトロニクス株式会社 データ処理装置及びデータ処理装置におけるアクセス制御方法
US8429735B2 (en) 2010-01-26 2013-04-23 Frampton E. Ellis Method of using one or more secure private networks to actively configure the hardware of a computer or microchip
US8255986B2 (en) * 2010-01-26 2012-08-28 Frampton E. Ellis Methods of securely controlling through one or more separate private networks an internet-connected computer having one or more hardware-based inner firewalls or access barriers
FR2964218B1 (fr) * 2010-08-25 2013-08-09 Oberthur Technologies Securisation d'un element de memorisation d'une donnee binaire, registre de controle et d'une carte a puce
US9237126B2 (en) * 2010-09-09 2016-01-12 Gerald R. McEvoy One-way bus bridge
CN101989242B (zh) * 2010-11-12 2013-06-12 深圳国微技术有限公司 一种提高soc系统安全的总线监视器及其实现方法
US10102401B2 (en) 2011-10-20 2018-10-16 Gilbarco Inc. Fuel dispenser user interface system architecture
US8909930B2 (en) 2011-10-31 2014-12-09 L-3 Communications Corporation External reference monitor
US9268930B2 (en) 2012-11-29 2016-02-23 Gilbarco Inc. Fuel dispenser user interface system architecture
US20150052616A1 (en) 2013-08-14 2015-02-19 L-3 Communications Corporation Protected mode for securing computing devices
CA2929458C (en) 2013-10-30 2021-07-13 Gilbarco Inc. Cryptographic watermarking of content in fuel dispensing environments
US20150161404A1 (en) * 2013-12-06 2015-06-11 Barrett N. Mayes Device initiated auto freeze lock
US10318438B1 (en) 2017-12-07 2019-06-11 Nuvoton Technology Corporation Secure memory access using memory read restriction

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4584639A (en) * 1983-12-23 1986-04-22 Key Logic, Inc. Computer security system
US4791565A (en) * 1984-06-20 1988-12-13 Effective Security Systems, Inc. Apparatus for controlling the use of computer software
GB8524455D0 (en) * 1985-10-03 1985-11-06 Isolation Systems Ltd Monitoring activity of peripheral devices
US4882752A (en) * 1986-06-25 1989-11-21 Lindman Richard S Computer security system
US4962533A (en) * 1989-02-17 1990-10-09 Texas Instrument Incorporated Data protection for computer systems
US5144659A (en) * 1989-04-19 1992-09-01 Richard P. Jones Computer file protection system
US5272754A (en) * 1991-03-28 1993-12-21 Secure Computing Corporation Secure computer interface
US5596718A (en) * 1992-07-10 1997-01-21 Secure Computing Corporation Secure computer network using trusted path subsystem which encrypts/decrypts and communicates with user through local workstation user I/O devices without utilizing workstation processor
CA2091501C (en) * 1993-03-11 2001-04-24 Thomas E. Elliott Hardware protection control for computer storage devices

Also Published As

Publication number Publication date
EP0760978A1 (de) 1997-03-12
ATE278218T1 (de) 2004-10-15
EP0760978A4 (de) 1999-06-02
CA2191331C (en) 2005-12-20
EP0760978B1 (de) 2004-09-29
WO1995033239A1 (en) 1995-12-07
US6115819A (en) 2000-09-05
CA2191331A1 (en) 1995-12-07
DE69533587D1 (de) 2004-11-04

Similar Documents

Publication Publication Date Title
DE69533587T2 (de) Gesicherte rechnerarchitektur
DE69732882T2 (de) Verfahren und Vorrichtung für vertrauenswürdiges Verarbeiten
DE69531112T2 (de) Mechanismus zum verknüpfen von dateien auf einem emulierten system mit dem zentralsystem für den zugriff durch emulierte systembenutzer
DE60311441T2 (de) Initialisierung eines rechnersystems mit einem für einen sicheren ausführungsmodus geeigneten prozessor
DE60206924T2 (de) Prozessor mit geschütztem prüfungs- und fehlerbeseitigungsmodus
DE112005001532T5 (de) Konfigurierbarer Merkmalsauswahlmechanismus
DE112005002672T5 (de) Dynamische Neukonfiguration eines Cache-Speichers
DE112004001605T5 (de) Computersystem, in welchem eine abgesicherte Ausführungsumgebung angewendet wird und in dem eine Speichersteuerung enthalten ist, die zum Löschen des Speichers ausgebildet ist
CH619309A5 (de)
DE102007062745A1 (de) Vorrichtung und Verfahren zum schnellen und sicheren Speicherkontextwechsel
DE102016122375A1 (de) Dynamischer containerisierter Systemspeicherschutz für Niedrigenergie-MCUs
EP2764464A1 (de) Mikroprozessorsystem mit gesicherter laufzeitumgebung
EP1468362A2 (de) Verfahren und anordnung zum beschreiben von nv-memories in einer controller-architektur sowie ein entsprechendes computerprogrammprodukt und ein entsprechendes computerlesbares speichermedium
DE10324337B4 (de) Rechnersystem und zugehöriges Verfahren zum Durchführen eines Sicherheitsprogramms
DE69919560T2 (de) Verfahren und system zur vorbeugung von unerwüschten betätigungen von ausführbaren objekten
DE10297686B4 (de) System und Verfahren zum Steuern der Zugriffe zwischen einzelnen Geräten innerhalb eines Computersystems
EP0276450A1 (de) Datenschutzschaltung zur Sperrung der Uebertragung von Signalen über einen Bus
WO2019081270A1 (de) Ein-chip-system, verfahren zum betrieb eines ein-chip-systems und kraftfahrzeug
DE60317376T2 (de) Zugriffsgeschütztes bussystem
DE3410497A1 (de) Rechneranordnung
DE69932630T2 (de) Verfahren und vorrichtung zur initialisierung eines anwendungsprogrammes einer chipkarte
DE602004003677T2 (de) Bootsteuersystem
WO2003027815A2 (de) Programmgesteuerte einheit
EP3798878B1 (de) Anordnung und verfahren zur sicheren ausführung eines automatisierungsprogramms in einem cloud-computing-umfeld
EP3469778A1 (de) Speichervorrichtung, datenübertragungsvorrichtung und verfahren zum übertragen von daten

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee