DE69713268T2 - Rechnerperipheriegeräteverwaltung - Google Patents
RechnerperipheriegeräteverwaltungInfo
- Publication number
- DE69713268T2 DE69713268T2 DE69713268T DE69713268T DE69713268T2 DE 69713268 T2 DE69713268 T2 DE 69713268T2 DE 69713268 T DE69713268 T DE 69713268T DE 69713268 T DE69713268 T DE 69713268T DE 69713268 T2 DE69713268 T2 DE 69713268T2
- Authority
- DE
- Germany
- Prior art keywords
- computer
- peripheral device
- response
- command
- word
- 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
Links
- 230000002093 peripheral effect Effects 0.000 title claims description 54
- 230000004044 response Effects 0.000 claims description 44
- 230000006870 function Effects 0.000 claims description 19
- 238000010200 validation analysis Methods 0.000 claims description 16
- 230000001419 dependent effect Effects 0.000 claims description 4
- 238000000034 method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000003466 anti-cipated effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/28—Error detection; Error correction; Monitoring by checking the correct order of processing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
- Diese Erfindung bezieht sich auf Computersysteme und Verfahren zum Betrieb derselben.
- Ein erster Aspekt der Erfindung bezieht sich speziell auf ein Computersystem, das einen Computer (wie z. B. einen Allzweck-Mikrocomputer) und ein Peripheriegerät aufweist, wobei der Computer betreibbar ist, um einen Vorrichtungstreiber für das Peripheriegerät und eine Anwendung zu betreiben, und der Computer betreibbar ist, um einen Befehl oder Daten abhängig von der Anwendung und dem Vorrichtungstreiber zu erzeugen und um den Befehl oder die Daten für das Peripheriegerät zur Verwendung durch dasselbe herzustellen, z. B. durch Plazieren des Befehls oder der Daten in eines oder mehrere Register oder Speicherplätze des Computers, auf die das Peripheriegerät Zugriff hat. Ein solches System ist hinreichend bekannt.
- Eine bekannte Form eines Computerperipheriegerätes ist ein Funksender. Ein Problem bei Funkperipheriegeräten besteht darin, zu verhindern, daß sie auf unautorisierten Frequenzbändern oder zu unautorisierten Zeitpunkten senden. Um dieses Problem zu lösen, wird bekanntermaßen ein solches Peripheriegerät geschaffen, das seinen eigenen zweckgebundenen Mikroprozessor umfaßt, der nur autorisierte Frequenzbandeinstellungen erzeugt oder der unautorisierte Frequenzbandeinstellungen ignoriert, die durch den Hauptcomputer angefordert werden, und der den Sender nur zu einem autorisierten Zeitpunkt einschaltet. Dies trägt zu den Kosten des Peripheriegerätes bei, jedoch konnten solche Funkperipheriegeräte die Genehmigung durch die Regulierungsbehörde erhalten.
- Zur Verringerung der Kosten besteht ein Wunsch, Funkperipheriegeräte zu erzeugen, die keinen eigenen zweckgebundenen Mikrocomputer umfassen müssen, jedoch ist dabei das Problem, daß der korrekte Betrieb von (a) dem richtigen Betrieb des Peripheriegerätes, (b) dem richtigen Betrieb seines Vorrichtungstreibers und (c) vom Hauptcomputer oder seiner Software, die keine anderen Daten in die Register oder Speicherplätze schreiben, die durch das Peripheriegerät verwendet werden, abhängt. Folglich wird auf Seiten der Regulierungsbehörden gezögert, eine Genehmigung für eine solche Anordnung zu erteilen.
- Obwohl die Probleme, mit denen sich die Erfindung befaßt, oben im Hinblick auf Funkperipheriegeräte beschrieben worden sind, rechnet man damit, daß in Verbindung mit anderen Typen von Peripheriegeräten, wie z. B. einer Telephonieausrüstung oder medizinischen Apparaten, ähnliche Probleme entstehen können.
- Der erste Aspekt der vorliegenden Erfindung ist dadurch gekennzeichnet, daß das Peripheriegerät ansprechend auf einem Empfang eines Befehls, ein Herausforderungswort zu berechnen und dem Computer das Herausforderungswort zur Verfügung zu stellen, betreibbar ist, der Computer abhängig vom Vorrichtungstreiber zum Berechnen einer Antwort, die, zumindest teilweise, eine zuerst vorbestimmte Funktion des Herausforderungswortes ist, und zum Verfügbarmachen der Antwort an das Peripheriegerät betreibbar ist und das Peripheriegerät zum Vergleichen der Anwort mit einem Validierungswort und zum Ausführen oder Nichtausführen des Befehls abhängig vom Ergebnis des Vergleichs betreibbar ist. Folglich kann die Erfindung im wesentlichen die Wahrscheinlichkeit eliminieren, daß ein falsches Programm eine ernsthafte Fehlfunktion des Peripheriegerätes bewirkt.
- (Bei dieser Spezifikation umfaßt der Begriff "Computer" jede Art von Allzweck- oder Sonder-Rechen- oder Informationsverarbeitungsvorrichtung, deren Funktionalität durch programmierte Anweisungen, z. B. in Form von Software oder Firmware, definiert ist. In ähnlicher Weise umfaßt der Begriff "Peripheriegerät" eine beliebige Zusatzvorrichtung, die permanent oder lösbar und intern oder extern mit einem Computer verbunden werden kann, und der Begriff "Vorrichtungstreiber" umfaßt beliebige programmierte Anweisungen zum Ermöglichen, daß ein Computer mit einem Peripheriegerät zusammenwirkt.)
- Das Herausforderungswort kann willkürlich sein, jedoch ist es zur verbesserten Sicherheit vorzugsweise, zumindest teilweise, eine zweite vorbestimmte Funktion des Befehls.
- In dem Fall, wo der Computer betreibbar ist, um eine Serie solcher Befehle zu erzeugen, und das Peripheriegerät betreibbar ist, um eine Serie solcher Herausforderungswörter zu berechnen, von denen jedes einem jeweiligen Befehl entspricht, ist jedes Herausforderungswort für eine erhöhte Sicherheit vorzugsweise die zweite vorbestimmte Funktion von nicht nur dem jeweiligen Befehl, sondern auch von zumindest einem vorherigen solchen Befehl und/oder Herausforderungswort.
- In dem Fall, wo der Computer auch betreibbar ist, um eine Serie von solchen Antworten zu berechnen, von denen jede einem jeweiligen der Herausforderungswörter entspricht, ist jede Antwort für eine erhöhte Sicherheit vorzugsweise die erste vorbestimmte Funktion von nicht nur dem jeweiligen Herausforderungswort, sondern auch von dem jeweiligen Befehl und/oder zumindest einem vorherigen Befehl und/oder vorherigen Herausforderungswort und /oder einer vorherigen Antwort.
- Bei einem Ausführungsbeispiel ist das Peripheriegerät betreibbar, um die oder jede Antwort zu vergleichen, indem ein Validierungswort, das zumindest teilweise die erste Funktion des jeweiligen Herausforderungswortes oder das jeweilige Herausforderungswort ist, berechnet wird und indem die Gleichwertigkeit des Validierungswortes und der Antwort geprüft wird. In diesem Fall erstellt das Peripheriegerät vorzugsweise nicht das Validierungswort, das dem Computer zur Verfügung steht, da ansonsten ein falsches Programm die Validierung lesen und die Antwort einstellen könnte, um derselbe zu sein.
- Gemäß einem zweiten Aspekt der vorliegenden Erfindung ist ein Verfahren zum Betrieb eines Computers und eines Peripheriegerätes vorgesehen, wofür ein Vorrichtungstreiber für das Peripheriegerät verwendet wird, bei dem der Computer dem Peripheriegerät einen Befehl abhängig vom Vorrichtungstreiber zur Verfügung stellt und das Peripheriegerät betreibbar ist, um den Befehl auszuführen, dadurch gekennzeichnet, daß das Peripheriegerät ansprechend auf einen Empfang eines solchen Befehls ein Herausforderungswort berechnet und dem Computer das Herausforderungswort zur Verfügung stellt, der Computer abhängig vom Vorrichtungstreiber eine Antwort berechnet, die, zumindest teilweise, eine erste vorbestimmte Funktion des Herausforderungsworts ist und dem Peripheriegerät die Antwort zur Verfügung stellt, und das Peripheriegerät die Antwort mit einem Validierungswort vergleicht und bestimmt, ob der Befehl abhängig vom Ergebnis des Vergleichs auszuführen ist oder nicht auszuführen ist.
- Ein spezifisches Ausführungsbeispiel der vorliegenden Erfindung wird nun mittels eines Beispiels unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. Es zeigen:
- Fig. 1 ein Blockdiagramm eines bekannten Computersystems mit einer Funkkarte;
- Fig. 2 ein Blockdiagramm eines Ausführungsbeispiels des Computersystems gemäß der Erfindung; und
- Fig. 3 ein Diagramm, um eine Wechselwirkung zwischen der Software und der Hardware des Systems von Fig. 2 darzustellen.
- Bei dem Computersystem von Fig. 1 weist ein Computer 10, wie z. B. ein PC, einen Haupt-Mikroprozessoreinheit 12 und einen Erweiterungsbus 14 auf einer Hauptplatine 16 auf. Eine Anzahl von Erweiterungskarten ist mit dem Erweiterungsbus 14 einschließlich einer Funkkarte 18 verbunden. Bei dem bekannten System umfaßt die Funkkarte 18 ein Funk-Sende- Empfangsgerät 20 und eine Mikroprozessoreinheit 22. Die Befehle werden an die Funkkarte 18 ausgegeben, und die Intelligenz der Mikroprozessoreinheit 22 der Funkkarte 18 wird verwendet, um sicherzustellen, daß unangemessene Befehle nicht ausgeführt werden und daß das Funk-Sende- Empfangsgerät 20 korrekt in der Weise, für die die Genehmigung der Regulierungsbehörde erteilt worden ist, arbeitet.
- Wie in Fig. 2 gezeigt ist, hat die Funkkarte 18 bei dem Ausführungsbeispiel der Erfindung keine eigene Mikroprozessoreinheit, sondern verwendet statt dessen eine festverdrahtete Logik 24.
- Unter spezieller Bezugnahme auf Fig. 3 weist der Computer 10 eine Reihe von Registern 26 auf, von denen 6 als 26a bis 26f gezeigt sind, und der Inhalt dieser Register der festverdrahteten Logik 24 der Funkkarte 18 zum Lesen oder Schreiben zur Verfügung steht. Ein beliebiges Programm, das auf dem Computer 10 läuft, kann an ein beliebiges der Register, vorsätzlich oder unabsichtlich, schreiben, jedoch lautet die Übereinkunft, daß nur autorisierte Vorrichtungstreiber an die Register schreiben. Ein Computer würde typischerweise viele Vorrichtungstreiber geladen haben, und Fig. 3 zeigt zwei Vorrichtungstreiber 28a, 28b, von denen einer der Vorrichtungstreiber 28a für die Funkkarte 18 ist. Fig. 3 zeigt auch zwei Anwendungen 30a, 30b, die auf dem Computer 10 betrieben werden, und eine der Anwendungen 30a nutzt die Funkkarte 18 und kommuniziert mit derselben über den Vorrichtungstreiber 28a und die Register 26a bis 26f.
- Ein Beispiel des Betriebs des Ausführungsbeispiels, das oben beschrieben wurde und das die relevanten Teile der Programmierung des Computers 10 durch die Anwendung 30a und die Treibervorrichtung 28a und der festverdrahteten Programmierung der Funkkarte 18 durch die Logik 24 umfaßt, wird nun beschrieben. Bei dem Beispiel werden die Register 26 wie folgt verwendet:
- Register 26a ist ein Ausgaberegister für "Befehls"-Worte aus dem Vorrichtungstreiber 28a an die festverdrahtete Logik 24;
- Register 26b ist ein Eingaberegister für "Herausforderungs"-Worte von der festverdrahteten Logik 24 an den Vorrichtungstreiber 28a;
- Register 26c ist ein Eingaberegister für "Antwort"-Worte aus dem Vorrichtungstreiber 28a an die festverdrahtete Logik 24;
- Register 26d ist ein Ausgaberegister für Datenworte aus dem Vorrichtungstreiber 28a an die festverdrahtete Logik 24;
- Register 26e ist ein Eingaberegister für Datenworte aus der festverdrahteten Logik 24 an den Vorrichtungstreiber 28a; und
- Register 26f ist ein Eingaberegister für "Status"-Worte aus der festverdrahteten Logik 24 an den Vorrichtungstreiber 28a.
- Wenn die Anwendung 30a einen speziellen Befehl ausgibt, z. B. zum Einstellen der Übertragungsträgerfrequenz für das Sende-Empfangsgerät 20, bewirkt der Vorrichtungstreiber 28a ein entsprechendes Befehlswort (CON), das in dem Befehlsregister 26a plaziert werden soll. Die festverdrahtete Logik 24 liest den Inhalt des Befehlsregisters 26a und berechnet ein Herausforderungswort, CHIN, das eine vorbestimmte Funktion F2 des aktuellen Befehlswortes CON und aller vorhergehenden Befehlswörter CO&sub1; bis CO(N-1) und Herausforderungswörter CH bis CHC(N-1) ist, da das Computersystem urgeladen wurde oder da der Vorrichtungstreiber 28a geladen wurde oder da die Anwendung 30a geöffnet wurde. In anderen Worten gilt:
- CHN = F&sub2;(CON,CO(N-1),...,CO&sub1;,CH(N-1),CH(N-2),...,CH&sub1;)
- Das Wort CHN wird in das Herausforderungsregister 26b plaziert, weshalb bewirkt wird, daß es durch den Vorrichtungstreiber 28a gelesen wird. Der Vorrichtungstreiber bewirkt dann, daß ein Antwortwort RN berechnet wird, das eine vorbestimmte Funktion F&sub1; des aktuellen Herausforderungswortes CHN, des aktuellen Befehlswortes CON und aller vorhergehenden Befehlswörter CO&sub1; bis CO(N-1), der Herausforderungswörter CH&sub1; bis CH(N-1), und der Antwortwörter R&sub1; bis R(N-1) ist, da das Computersystem urgeladen wurde, oder da der Vorrichtungstreiber 28a geladen wurde oder da die Anwendung 30a geöffnet wurde. In anderen Worten gilt:
- RN = F&sub1;(CHN,CH(N-1),...,CH&sub1;,CON,CO(N-1),....CO&sub1;,R(N-1),R(N-2),...,R&sub1;)
- Der Vorrichtungstreiber 28a bewirkt, daß das berechnete Antwortwort RN in das Antwortregister 26c plaziert wird, weshalb es durch die festverdrahtete Logik 24 gelesen wird. Die festverdrahtete Logik berechnet auch ein Validierungswort VN, das die gleiche vorbestimmte Funktion F&sub1; des aktuellen Herausforderungswortes CHN, des aktuellen Befehlswortes CON und aller vorhergehenden Befehlswörter CO&sub1; bis CO(N -1), der Herausforderungswörter CH&sub1; bis CH(N-1) und der Validierungswörter V&sub1; bis V(N-1) ist, das das Computersystem urgeladen wurde oder da der Vorrichtungstreiber 28a geladen wurde oder da die Anwendung 30a geöffnet wurde. In anderen Worten gilt:
- VN = F&sub1;(CHN,CH(N-1),...,CH&sub1;,CON,CO(N-1),....CO&sub1;,V(N-1),V(N-2),...,V&sub1;)
- Die festverdrahtete Logik 24 vergleicht dann die aktuellen Validierungs- und Antwortwörter VN und RN. Es wird darauf hingewiesen, daß, wenn das System korrekt arbeitet, die aktuellen Validierungs- und Antwortwörter VN und RN einander entsprechen sollten. Wenn sie einander entsprechen, führt die festverdrahtete Logik 24 den Befehl, der durch das aktuelle Befehlswort CON spezifiziert wurde, aus. Wenn sie einander nicht entsprechen, führt die festverdrahtete Logik 24 den Befehl jedoch nicht aus, sondern sperrt statt dessen das Sende-Empfangsgerät 20 und plaziert ein Fehlerwort in das Statusregister 26f. Diese Ungleichheit kann entstehen weil die Funkkarte 18 eine Fehlfunktion aufweist, der Vorrichtungstreiber 28a eine Fehlfunktion aufweist, der Vorrichtungstreiber 28a mit der Funkkarte 18 inkompatibel ist oder ein anderer Vorrichtungstreiber (z. B. der Vorrichtungstreiber 28b) oder eine andere Software mit dem Betrieb der Funkkarte 18 und ihrem Vorrichtungstreiber 28a interferiert. Durch den Vorrichtungstreiber 28a wird bewirkt, daß das Fehlerwort gelesen und zur Anwendung 30a weitergeleitet wird, die wiederum bewirkt, daß dem Anwender der Fehler mitgeteilt wird.
- Die Funktionen F&sub1;, F&sub2; sollten so kompliziert wie nur möglich gemacht werden, obgleich dies im Hinblick auf die resultierende Komplexität, die für die festverdrahtete Logik 24 erforderlich ist, ausgeglichen wird. In einem einfachen Beispiel und in dem Fall, wo die M-Bitwörter verwendet werden, gilt:
- CHN = F&sub2;(CON,CO(N-1),...,CO&sub1;,CH(N-1),CH(N-2),...,CH&sub1;) = CON + Σ(CO&sub1; + CH&sub1;),Modulo 2M, für I = 1 bis (N-1); und VN = F&sub1;(CHN,CH(N-1),...,CH&sub1;,CON,CO(N-1),....CO&sub1;,V(N-1),V(N-2),...,V&sub1;) = CHN + CON + Σ(CO&sub1; + CH&sub1; + V&sub1;),Modulo 2M, für I = 1 bis (N-1)
- In diesem Fall erfordert die fest verdrahtete Logik 24 nur zwei Register für die langfristige Speicherung der Historie der Transaktionen, wobei Σ(CO&sub1; + CH&sub1;) und Σ(CO&sub1; + CH&sub1; + V&sub1;) gespeichert werden. Um die Funktionen komplexer zu gestalten, können Merkmale, wie z. B. ein Bitrotation und Inversion verwendet werden.
- Das vorstehend beschriebene Thema macht es äußerst unwahrscheinlich, daß die korrekte Antwort RN in das Antwortregister 26c plaziert wird, es sei denn, die Funkkarte 18 und der Vorrichtungstreiber 28a stimmen richtig überein, und der Computer 10 interferiert nicht den zweckmäßigen Betrieb. In einem böswilligen Versuch, das Validierungsschema, das oben beschrieben wurde, zu umgehen, könnte ein Beobachter den Computerbus überwachen, um zu versuchen, die Sequenz der I/O-Operationen, die aus einem Befehl resultieren, aufzuzeichnen. Dies ist schwierig, aber sogar wenn man es schaffen würde, wäre es nicht möglich, eine vorhergehende Transaktion erneut abzuspielen, weil sich die Antwortworte mit jeder Transaktion verändern. Der Code des Vorrichtungstreibers 28a könnte zerlegt werden. Dies erfordert jedoch einen sehr ernsthaften Versuch an Reverse- Engineering, kein gewöhnliches Computer-Hacken. Um dies willkürlich aufwendiger zu gestalten, könnte der Code des Vorrichtungstreibers 28a im Computer 10 in zerhackter Form gespeichert werden, wobei der Code jedesmal, wenn er in den Speicher geladen wird, zusammengesetzt wird.
- Es wird darauf hingewiesen, daß viele Modifizierungen und Entwicklungen an dem oben beschriebenen Ausführungsbeispiel vorgenommen werden können. Zum Beispiel könnte das Herausforderungswort CH ein Zufallswert sein oder die Funktion F&sub2; könnte nur vom aktuellen Befehlswort CON abhängig sein und die Funktion F&sub1; könnte nur vom aktuellen Herausforderungswort CHN abhängig sein.
- Bei dem oben beschriebenen Ausführungsbeispiel werden die Befehls-, Herausforderungs- und Antwortwörter in die jeweiligen Register 26a bis 26c plaziert. Alternativ könnte ein speicherabgebildeter I/O (I/O = input/output = Eingang/Ausgang) verwendet werden. Die Funkkarte 18 ist auch als interne Karte für den Computer 10 gezeigt worden, jedoch kann alternativ auch ein externes Radio verwendet werden, das mit dem Computer 10 durch einen parallelen Port, einen seriellen Port, eine SCSI-Schnittstelle oder eine andere Schnittstelle verbunden ist.
- Das Ausführungsbeispiel der Erfindung ist oben im Zusammenhang mit einem Computer mit der Architektur eines PCs beschrieben worden, es wird jedoch darauf hingewiesen, daß die Erfindung auf andere Formen eines Computersystems anwendbar ist.
Claims (12)
1. Ein Computersystem, das einen Computer (10) und ein
Peripheriegerät (18) aufweist, wobei der Computer
betreibbar ist, um einen Vorrichtungstreiber (28a) für
das Peripheriegerät und eine Anwendung (30a) zu
betreiben, und bei dem der Computer betreibbar ist, um
einen Befehl (CON) abhängig von der Anwendung und dem
Vorrichtungstreiber zu erzeugen und um den Befehl dem
Peripheriegerät zur Verfügung zu stellen, um das
Peripheriegerät zu steuern;
dadurch gekennzeichnet, daß:
das Peripheriegerät betreibbar ist ansprechend auf den
Empfang eines solchen Befehls, um ein
Herausforderungswort (CHN) zu berechnen und das
Herausforderungswort dem Computer zur Verfügung zu stellen;
der Computer betreibbar ist abhängig von dem
Vorrichtungstreiber, um eine Antwort (RN) zu berechnen, die,
zumindest teilweise, eine erste vorbestimmte Funktion
des Herausforderungswortes ist, und um dem
Peripheriegerät die Antwort zur Verfügung zu stellen; und
das Peripheriegerät betreibbar ist, um die Antwort mit
einem Validierungswort (VN) zu vergleichen und den
Befehl abhängig vom Ergebnis des Vergleichs auszuführen
oder nicht auszuführen.
2. Ein System gemäß Anspruch 1, bei dem das
Herausforderungswort, zumindest teilweise, eine zweite
vorbestimmte Funktion des Befehls ist.
3. Ein System gemäß Anspruch 2, und in dem Fall, wo der
Computer betreibbar ist, um eine Reihe solcher Befehle
zu erzeugen, und das Peripheriegerät betreibbar ist,
um eine Reihe solcher Herausforderungswörter zu
erzeugen, die jeweils einem jeweiligen der Befehle
entsprechen, wobei jedes Herausforderungswort die zweite
vorbestimmte Funktion von nicht nur dem jeweiligen Befehl
ist, sondern auch von zumindest einem vorherigen
solchen Befehl und/oder Herausforderungswort.
4. Ein System gemäß einem der vorhergehenden Ansprüche,
und in dem Fall, wo der Computer betreibbar ist, um
eine Reihe solcher Befehle zu erzeugen, wobei das
Peripheriegerät betreibbar ist, um eine Reihe solcher
Herausforderungswörter zu berechnen, die jeweils einem
jeweiligen der Befehle entsprechen,
und der Computer betreibbar ist, um eine Reihe solcher
Antworten zu berechnen, die jeweils einem jeweiligen
der Herausforderungswörter entsprechen, wobei jede
Antwort die erste vorbestimmte Funktion von nicht nur
dem jeweiligen Herausforderungswort, sondern auch des
jeweiligen Befehls und/oder zumindest eines
vorhergehenden Befehls und/oder vorhergehenden
Herausforderungswortes und/oder einer vorhergehenden Antwort ist.
5. Ein System gemäß einem der vorhergehenden Ansprüche,
bei dem das Peripheriegerät betreibbar ist, um die
oder jede Antwort durch Berechnen eines
Validierungswortes zu vergleichen, das, zumindest teilweise, die
erste Funktion des jeweiligen Herausforderungswortes
oder das jeweilige Herausforderungswort ist, und durch
Testen der Gleichheit des Validierungswortes und der
Antwort.
6. Ein System gemäß Anspruch 5, bei dem das
Peripheriegerät dem Computer das Validierungswort nicht zur
Verfügung stellt.
7. Ein System gemäß einem der vorhergehenden Ansprüche,
bei dem dem Peripheriegerät der Befehl und die Antwort
zur Verfügung gestellt werden und dem Computer das
Herausforderungswort zur Verfügung gestellt wird,
indem es in eines oder mehrere Register (26a bis 26c)
und/oder eine oder mehrere Speicherstellen des
Computers plaziert wird.
8. Ein System gemäß einem der vorhergehenden Ansprüche,
bei dem das Peripheriegerät einen Funksender (20)
umfaßt und bei dem zumindest einer der Befehle
betreibbar ist, um die Trägersequenz des Senders
einzustellen.
9. Ein System gemäß Anspruch 8, wenn dieser von Anspruch
7 abhängig ist, bei dem der Computer betreibbar ist,
um gewünschte Frequenzdaten entweder in die Register
oder die Speicherplätze des Computers, auf die das
Peripheriegerät Zugriff hat, zu plazieren.
10. Ein System gemäß einem der vorhergehenden Ansprüche,
bei dem das Peripheriegerät keinen eigenen
zweckgebundenen Mikrocomputer aufweist.
11. Ein System gemäß einem der vorhergehenden Ansprüche,
bei dem der Computer ein Allzweck-Mikrocomputer (10)
ist.
12. Ein Verfahren zum Betreiben eines Computers (10) und
eines Peripheriegerätes (18) für denselben unter
Verwendung eines Vorrichtungstreibers (28a) für das
Peripheriegerät, bei dem:
der Computer dem Peripheriegerät einen Befehl (CON) in
Abhängigkeit von der Treibervorrichtung zur Verfügung
stellt; und
das Peripheriegerät betreibbar ist, um den Befehl
auszuführen;
dadurch gekennzeichnet, daß:
ansprechend auf den Empfang eines solchen Befehls, das
Peripheriegerät ein Herausforderungswort (CHN)
berechnet und dem Computer das Herausforderungswort zur
Verfügung stellt;
der Computer abhängig vom Vorrichtungstreiber eine
Antwort (RN) berechnet, die, zumindest teilweise, eine
erste vorbestimmte Funktion des Herausforderungswortes
ist und dem Peripheriegerät die Antwort zur Verfügung
stellt; und
das Peripheriegerät die Antwort mit einem
Validierungswort (VN) vergleicht und bestimmt, ob der Befehl
abhängig vom Ergebnis des Vergleichs ausgeführt werden
soll oder nicht ausgeführt werden soll.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP97300798A EP0858034B1 (de) | 1997-02-07 | 1997-02-07 | Rechnerperipheriegeräteverwaltung |
Publications (2)
Publication Number | Publication Date |
---|---|
DE69713268D1 DE69713268D1 (de) | 2002-07-18 |
DE69713268T2 true DE69713268T2 (de) | 2002-09-26 |
Family
ID=8229208
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE69713268T Expired - Fee Related DE69713268T2 (de) | 1997-02-07 | 1997-02-07 | Rechnerperipheriegeräteverwaltung |
Country Status (5)
Country | Link |
---|---|
US (1) | US6412084B1 (de) |
EP (1) | EP0858034B1 (de) |
JP (1) | JP2000512789A (de) |
DE (1) | DE69713268T2 (de) |
WO (1) | WO1998035292A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10303720A1 (de) * | 2003-01-30 | 2004-08-19 | Siemens Ag | Testsystem für medizinische Anlagen |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102004007994B4 (de) * | 2004-02-18 | 2007-07-12 | Infineon Technologies Ag | Verfahren zum Zuweisen von Zugriffsrechten an ein Peripheriegerät |
JP5393199B2 (ja) * | 2009-03-02 | 2014-01-22 | キヤノン株式会社 | 起動制御方法及び装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4251885A (en) * | 1979-03-09 | 1981-02-17 | International Business Machines Corporation | Checking programmed controller operation |
FR2702577B1 (fr) * | 1993-03-11 | 1995-04-28 | Gec Alsthom Transport Sa | Procédé pour contrôler l'exécution correcte d'un programme d'ordinateur multitâche. |
FI94993C (fi) * | 1993-11-30 | 1995-11-27 | Nokia Telecommunciations Oy | Menetelmä radioyksikön ohjaamiseksi |
US5414731A (en) * | 1994-03-18 | 1995-05-09 | International Business Machines Corporation | Command set and procedure for synchronization of frequency hopping control clocks |
US5911077A (en) * | 1996-05-31 | 1999-06-08 | Micron Electronics, Inc. | System for multithreaded disk drive operation in a computer system |
US6148346A (en) * | 1996-06-20 | 2000-11-14 | Peerless Systems Imaging Products, Inc. | Dynamic device driver |
US5893031A (en) * | 1996-06-27 | 1999-04-06 | Cellular Technical Services Company, Inc. | System and method for collection of transmission characteristics |
-
1997
- 1997-02-07 DE DE69713268T patent/DE69713268T2/de not_active Expired - Fee Related
- 1997-02-07 EP EP97300798A patent/EP0858034B1/de not_active Expired - Lifetime
-
1998
- 1998-02-05 JP JP10533994A patent/JP2000512789A/ja not_active Ceased
- 1998-02-05 WO PCT/GB1998/000357 patent/WO1998035292A1/en active Application Filing
- 1998-02-05 US US09/155,845 patent/US6412084B1/en not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10303720A1 (de) * | 2003-01-30 | 2004-08-19 | Siemens Ag | Testsystem für medizinische Anlagen |
DE10303720B4 (de) * | 2003-01-30 | 2004-12-09 | Siemens Ag | Testsystem für medizinische Anlagen |
Also Published As
Publication number | Publication date |
---|---|
EP0858034A1 (de) | 1998-08-12 |
WO1998035292A1 (en) | 1998-08-13 |
DE69713268D1 (de) | 2002-07-18 |
EP0858034B1 (de) | 2002-06-12 |
US6412084B1 (en) | 2002-06-25 |
JP2000512789A (ja) | 2000-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3689569T2 (de) | Verfahren zur Systemdateiensicherung und Datenverarbeitungseinheit zu dessen Durchführung. | |
DE69316232T2 (de) | System zum betrieb von anwendungs-software in einer sicherheitskritischen umgebung | |
DE68926176T2 (de) | Verwaltungssystem für lizenzierte Programme | |
WO2000017826A1 (de) | Vorrichtung zum liefern von ausgangsdaten als reaktion auf eingangsdaten und verfahren zum überprüfen der authentizität und verfahren zum verschlüsselten übertragen von informationen | |
DE10023820A1 (de) | Software-Schutzmechanismus | |
DE2810421C2 (de) | Speicherschutzeinrichtung | |
EP2673731B1 (de) | Verfahren zur programmierung eines mobilendgeräte-chips | |
EP2181370A1 (de) | VERFAHREN ZUR KOMPATIBILITÄTSPRÜFUNG EINES MEßSYSTEMS BESTEHEND AUS EINEM MESSUMFORMER UND EINEM SENSOR | |
DE69713268T2 (de) | Rechnerperipheriegeräteverwaltung | |
DE69028449T2 (de) | System zur Prüfung der Vergleichsprüfungsfunktion einer Datenverarbeitungsanlage | |
DE10340411B4 (de) | Vorrichtung und Verfahren zur sicheren Ausführung eines Programms | |
WO2001088669A1 (de) | Lizenzmanager | |
DE112020003107T5 (de) | Sicherheit eingebetteter vorrichtungen durch einen vorrichtungs-lebenszyklus mit einer vorrichtungsidentifikation | |
DE69915788T2 (de) | Mikrokontrollgerät mit Fehlerbeseitigungsunterstützung | |
DE60114416T2 (de) | Vorrichtung und verfahren zur bewertung von algorithmen | |
EP0977160B1 (de) | Verfahren und Datenverarbeitungsanordnung zum gesicherten Ausführen von Befehlen | |
DE4332144A1 (de) | Verfahren zur Funktionsprüfung signaltechnisch nicht sicherer Speicher für mindestens zweikanalig abgespeicherte Nutzdaten und Einrichtung zur Durchführung des Verfahrens | |
DE69705734T2 (de) | Verfahren und system zur sicherstellung, dass mit einem elektronischen gerät verbundene module von einem bestimmten typ sind, und ein modul und ein speichermedium dafür | |
DE102015119140A1 (de) | Verfahren zum Steuern des Zugriffs auf verschlüsselte Dateien und Computersystem | |
EP4421622A1 (de) | Verfahren und system zur durchführung eines installationsvorgangs für eine anwendung auf einer laufzeitumgebung während des betriebs eines systems unter überprüfung von während des installationsvorgangs durchzuführenden modifikationen auf der systemlaufzeitumgebung | |
DE10303452B4 (de) | Verfahren zur Steuerung der Unterbrechung und/oder der Aufzeichnung von Ausführungsdaten eines Programms in einem Mikrocontroller und Mikrocontroller mit einer Anordnung zur Durchführung des Verfahrens | |
EP4187846A1 (de) | Steuerung eines zugriffs auf ein gerät | |
DE102007027935A1 (de) | Tragbarer Datenträger und Verfahren zur Personalisierung eines tragbaren Datenträgers | |
EP1460510B1 (de) | Verfahren zur sicheren Kommunikation zwischen einer Datenverarbeitungsanlage und einer Sicherheitseinrichtung | |
DE102017005971A1 (de) | Vorrichtung und Verfahren zur gerätetechnischen Erkennung von Wertebereichsverletzungen von Datenwerten in Datenverarbeitungseinheiten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition | ||
8327 | Change in the person/name/address of the patent owner |
Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE |
|
8339 | Ceased/non-payment of the annual fee |