DE10162291A1 - Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium - Google Patents

Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium

Info

Publication number
DE10162291A1
DE10162291A1 DE10162291A DE10162291A DE10162291A1 DE 10162291 A1 DE10162291 A1 DE 10162291A1 DE 10162291 A DE10162291 A DE 10162291A DE 10162291 A DE10162291 A DE 10162291A DE 10162291 A1 DE10162291 A1 DE 10162291A1
Authority
DE
Germany
Prior art keywords
data
execution
computer program
computer
signature
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.)
Withdrawn
Application number
DE10162291A
Other languages
English (en)
Inventor
Detlef Mueller
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.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Intellectual Property and Standards GmbH
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 Philips Intellectual Property and Standards GmbH filed Critical Philips Intellectual Property and Standards GmbH
Priority to DE10162291A priority Critical patent/DE10162291A1/de
Priority to US10/320,271 priority patent/US20030140236A1/en
Publication of DE10162291A1 publication Critical patent/DE10162291A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/10Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means together with a coded signal, e.g. in the form of personal identification information, like personal identification number [PIN] or biometric data
    • G07F7/1008Active credit-cards provided with means to personalise their use, e.g. with PIN-introduction/comparison system
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • 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/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/77Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/34Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
    • G06Q20/341Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07FCOIN-FREED OR LIKE APPARATUS
    • G07F7/00Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus
    • G07F7/08Mechanisms actuated by objects other than coins to free or to actuate vending, hiring, coin or paper currency dispensing or refunding apparatus by coded identity card or credit card or other personal identification means
    • G07F7/0806Details of the card
    • G07F7/0813Specific details related to card security
    • G07F7/082Features insuring the integrity of the data on or in the card

Abstract

Die Erfindung beschreibt ein Verfahren und eine Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium, welches insbesondere zur Sicherung von TestROM-basierten Selbsttests in Smartcards gegen unbefugtes Ausführen dieser Tests genutzt werden kann. Die Auswertung des Testablaufs geschieht mittels eines Signaturregisters, welches alle Code- und Datentransfers aufzeichnet und miteinander verschlüsselt. Die Ausführung des TestROMs wird im Allgemeinen als hoch sicherheitsrelevant angesehen und unterliegt diversen Schutzmaßnahmen, wie z. B. Fuses. Durch die Erfindung werden diese Schutzmaßnahmen erweitert, indem bei Ausführung des TestROMs neue Signaturen im Register erzeugt werden. Während der Programmausführung des TestROMs wird der Inhalt (oder ein einzelnes Bit) des Signaturregisters mit einem über ein I/O-Pad eingespeisten Signal verglichen. Unterscheiden sich das Bit aus dem Signaturregister und das extern eingegebene Signal, so wird ein Reset ausgelöst. Eine Ausführung des TestROMs ist somit nur möglich, wenn die intern erzeugte Signatur bekannt ist. Sicherheitsrelevante Prozesse in der TestROM-Ausführung lassen sich auf diese Weise wirksam schützen.

Description

  • Die Erfindung betrifft ein Verfahren und eine Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium, die insbesondere genutzt werden können zur Sicherung eines TestROM-basierten Selbsttests gegen unbefugtes Ausführen bei der Herstellung von Smartcards.
  • Die Entwicklung der Mikroelektronik in den 1970er Jahren ermöglichte es, kleine Computer im Kreditkartenformat ohne Benutzungsschnittstelle herzustellen. Solche Computer werden als Smartcards bezeichnet. In einer Smartcard sind Datenspeicher und arithmetisch-logische Einheit in einem einzigen Chip von wenigen Quadratmillimetern Größe integriert. Smartcards werden insbesondere als Telefonkarten, GSM-SIM-Karten, im Bankenbereich und im Gesundheitswesen eingesetzt. Die Smartcard ist damit zur allgegenwärtigen Rechenplattform geworden.
  • Smartcards werden derzeit vornehmlich als sicherer Aufbewahrungsort für geheime Daten und als sichere Ausführungsplattform für kryptographische Algorithmen betrachtet. Die Annahme einer relativ hohen Sicherheit der Daten und Algorithmen auf der Karte liegt im Hardwareaufbau der Karte und den nach außen geführten Schnittstellen begründet. Die Karte stellt sich nach außen als "Black Box" dar, deren Funktionalität nur über eine wohldefinierte Hardware- und Softwareschnittstelle in Anspruch genommen werden kann, und die bestimmte Sicherheitspolicies erzwingen kann. Zum einen kann der Zugriff auf Daten an bestimmte Bedingungen geknüpft werden. Kritische Daten, wie z. B. geheime Schlüssel eines Public-Key-Verfahrens, können dem Zugriff von außen sogar völlig entzogen werden. Zum anderen ist eine Smartcard in der Lage, Algorithmen auszuführen, ohne daß die Ausführung der einzelnen Operationen von außen beobachtet werden kann. Die Algorithmen selbst können auf der Karte vor Veränderung und Auslesen geschützt werden. Im objektorientierten Sinn läßt sich die Smartcard als abstrakter Datentyp auffassen, der über eine wohldefinierte Schnittstelle verfügt, ein spezifiziertes Verhalten aufweist und selbst in der Lage ist, die Einhaltung bestimmter Integritätsbedingungen bezüglich seines Zustandes sicherzustellen.
  • Es gibt im Wesentlichen zwei verschiedene Typen von Smartcards. Speicherkarten besitzen lediglich eine serielle Schnittstelle, eine Adressierungs- und Sicherheitslogik und ROM- und EEPROM-Speicher. Diese Karten besitzen nur eingeschränkte Funktionalität und dienen einer spezifischen Anwendung. Dafür sind sie besonders billig herzustellen. Als Mikroprozessorkarten hergestellte Smartcards stellen im Prinzip einen vollständigen Universalrechner dar.
  • Der Herstellungs- und Auslieferungsprozeß für Chipkarten gliedert sich in folgende Phasen:
    • - Herstellen des Halbleiters,
    • - Einbetten des Halbleiters,
    • - Bedrucken der Karte,
    • - Personalisierung der Karte,
    • - Ausgeben der Karte.
  • Im Allgemeinen wird jede Phase von einer auf die jeweilige Arbeit spezialisierten Firma durchgeführt. Beim Herstellen der Halbleiter ist insbesondere bei Karten mit festverdrahteter Sicherheitslogik auf eine gute betriebsinterne Sicherheit zu achten. Damit vom Hersteller ein korrekter Endtest durchgeführt werden kann, muß der komplette Speicher frei zugänglich sein. Erst nach dem Endtest wird der Chip durch einen Transportcode gesichert. Danach ist der Zugriff auf den Kartenspeicher nur für berechtigte Stellen, die den Transportcode kennen, möglich. Ein Diebstahl fabrikneuer Halbleiter bleibt damit ohne Folgen. Berechtigte Stellen können Personalisierer bzw. Kartenausgeber sein. Für das Einbetten und Bedrucken sind keine weiteren Sicherungsfunktionen notwendig. Die betreffenden Firmen brauchen den Transportcode nicht zu kennen.
  • Im Allgemeinen überträgt nicht der Kartenhersteller, sondern die ausgebende Stelle (z. B. Bank, Telefongesellschaft, Krankenkasse etc.) die personenspezifischen Daten in die Karte. Diesen Vorgang nennt man Personalisierung. Für sie ist die Kenntnis des Transportcodes notwendig.
  • Das Ausgeben der Karte, also der Transport von der ausgebenden Stelle zum Karteninhaber, stellt ein weiteres Sicherheitsproblem dar. Genau genommen ist nur die persönliche Ausgabe an den Karteninhaber gegen Unterschrift und Vorlage des Personalausweises sicher. Ein Versand per Post ist zwar oft wirtschaftlicher, aber auch ziemlich unsicher. Ein Problem ist auch das Übermitteln der PIN an den Karteninhaber, hier muß die gleiche Sorgfalt wie für die Karte gelten.
  • Bedingt durch die brisanten, sicherheitsrelevanten Inhalte der auf Smartcard-Controllern befindlichen Speicher ist neben der Beachtung dieser Sicherungsmaßnahmen ein zusätzlicher Schutz gegen mögliche Aktivitäten von Hackern zu gewährleisten, die sich auf alle Phasen des Lebenslaufes einer Smartcard - beginnend von der Herstellung, über Transport, Nutzung der Karte bis zu Manipulationen unbrauchbar gewordener Karten - erstrecken.
  • Eine Möglichkeit, an geheime Informationen zu gelangen, besteht darin, in Smartcard- Controllern einen Selbsttest aus einem TestROM zu veranlassen. In Smartcard-Controllern werden Selbsttests aus einem TestROM zur funktionalen Überprüfung der Schaltung während des Produktionstests ausgeführt. Die Auswertung des Testablaufes geschieht mittels eines Signaturregisters, welches alle Code- und Datentransfers aufzeichnet und miteinander verschlüsselt. Das Ergebnis eines Tests ist dann eine mehrere Bytes umfassende Signatur. Die Ausführung des TestROMs wird im Allgemeinen als hoch sicherheitsrelevant angesehen und unterliegt diversen statischen Schutzmaßnahmen (z. B. Fuses). Das Ausführen des TestROMs wird durch diverse statische z. B. Fuses bzw. gering-dynamische Sicherungen verhindert.
  • Sollten diese implementierten statischen bzw. gering-dynamischen Schutzmaßnahmen gegen unbeabsichtigtes Ausführen des TestROMs umgangen werden können, ist ein Ausführen des TestROMs inklusive evtl. sicherheitsrelevanter Routinen möglich.
  • Der Erfindung liegt deshalb die Aufgabe zugrunde, ein Verfahren, eine Anordnung sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium der gattungsgemäßen Art anzugeben, mittels welchen die Nachteile der herkömmlichen Schutzmaßnamen, insbesondere der statischen bzw. gering-dynamischen Sicherungen, vermieden werden können und in einfacher und effizienter Weise das unbefugte Ausführen von Computerprogrammen verhindert wird.
  • Erfindungsgemäß wird diese Aufgabe gelöst durch die Merkmale im kennzeichnenden Teil der Ansprüche 1, 11, 13 und 14 im Zusammenwirken mit den Merkmalen im Oberbegriff. Zweckmäßige Ausgestaltungen der Erfindung sind in den Unteransprüchen enthalten.
  • Ein besonderer Vorteil des Verfahrens zur Verhinderung unbefugten Ausführens von Computerprogrammen besteht darin, daß während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
  • Eine Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen ist vorteilhafterweise so eingerichtet, daß sie einen Prozessor umfaßt, der derart eingerichtet ist, daß das unbefugte Ausführen von Computerprogrammen verhinderbar ist, indem während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
  • Ein Computerprogrammprodukt zur Verhinderung unbefugten Ausführens von Computerprogrammen umfaßt ein computerlesbares Speichermedium, auf dem ein Programm gespeichert ist, das es einem Computer oder Smartcard-Controller ermöglicht, nachdem es in den Speicher des Computers oder des Smartcard-Controllers geladen worden ist, das unbefugte Ausführen von Computerprogrammen zu verhindern, indem während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
  • Um das unbefugte Ausführen von Computerprogrammen zu verhindern, wird vorteilhafterweise ein computerlesbares Speichermedium eingesetzt, auf dem ein Programm gespeichert ist, das es einem Computer oder Smartcard-Controller ermöglicht, nachdem es in den Speicher des Computers oder des Smartcard-Controllers geladen worden ist, das unbefugte Ausführen von Computerprogrammen zu verhindern, indem während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
  • Ein weiterer Vorteil des erfindungsgemäßen Verfahrens besteht darin, daß die Zeittakte für die Erzeugung der Signaturdaten durch System-Clocks vorgegeben werden.
  • In bevorzugter Ausgestaltung des erfindungsgemäßen Verfahrens ist vorgesehen, daß in jedem vorgegebenem Zeittakt ein Vergleich der Signaturdaten erfolgt.
  • Als vorteilhaft erweist es sich, daß die Signaturdaten erzeugt werden, indem die bei einem Programmablauf ausgeführten Code- und Datentransfers aufgezeichnet und miteinander verschlüsselt werden.
  • Zur weiteren Nutzung können die Signaturdaten in einem Signaturregister abgelegt werden.
  • Darüber hinaus ist in bevorzugter Ausgestaltung der Erfindung vorgesehen, daß pro System-Clock ein einzelnes Bit aus dem Signaturregister mit einem extern zugeführten Signal verglichen wird.
  • Eine vorteilhafte Ausführung des erfindungsgemäßen Verfahrens besteht darin, daß bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird, indem sofort ein Reset ausgelöst wird.
  • In weiterer bevorzugter Ausgestaltung der Erfindung ist vorgesehen, daß die Zuführung der externen Daten über ein I/O-Pad erfolgt.
  • Zur Verhinderung des unbefugten Ausführens von Computerprogrammen kann es sich als vorteilhaft erweisen, daß ein Signaturvergleich nur für einen eingeschränkten Teil des Adreßbereichs im TestROM erfolgt.
  • In bevorzugter Anwendung des erfindungsgemäßen Verfahrens ist vorgesehen, daß durch das zu schützende Computerprogramm ein Selbsttest aus einem TestROM eines Smartcard-Controllers ausgeführt wird.
  • Darüber hinaus ist in bevorzugter Ausgestaltung der erfindungsgemäßen Anordnung vorgesehen, daß der Prozessor Teil eines Smartcard-Controllers und die Anordnung eine Smartcard ist.
  • Der besondere Vorteil der Erfindung besteht insbesondere darin, daß im Allgemeinen nur dem Hersteller die interne Signatur des Selbsttests bekannt ist, wodurch eine wesentliche Verbesserung der sicherheitsrelevanten Prozeßabläufe erreicht wird.
  • Die Erfindung wird nachfolgend im Ausführungsbeispiel eines TestROM-basierten Selbsttests näher erläutert.
  • Im Gegensatz zu den herkömmlichen Verfahren wird bei der Erfindung nicht nur eine Signatur erzeugt und im Signaturregister abgelegt, sondern die Absicherung z. B. eines Test- ROM-basierten Selbsttests gegen unbefugtes Ausführen umfaßt eine vielfache, definierte Änderung der Signatur durch eine externe Einspeisung der Signatur. Damit wird ein dynamischer TestROM-Schutz erreicht. Die Ausführung des TestROMs erzeugt pro System- Clock eine neue Signatur im Signaturregister. Der additionelle Schutz des Ausführens des TestROMs besteht darin, daß während der Programmausführung des TestROMs pro System-Clock ein einzelnes Bit des Signaturregisters mit einem über ein I/O-Pad eingespeisten Signal verglichen wird. Unterscheiden sich das Bit aus dem Signaturregister und das extern eingespeiste Bit, wird unmittelbar ein Reset ausgelöst. Eine Ausführung des Test- ROMs ist damit nur möglich, wenn die intern erzeugte Signatur bekannt ist, was nur beim Hersteller der Fall ist. Zum Abarbeiten asynchroner Vorgänge läßt sich der Signaturvergleich ggf. auf bestimmte Adreßbereiche im TestROM begrenzen. Insbesondere sicherheitsrelevante Prozesse in der TestROM-Ausführung lassen sich auf diese Weise wirksam schützen.
  • Die Erfindung ist nicht beschränkt auf die hier dargestellten Ausführungsbeispiele. Vielmehr ist es möglich, durch Kombination und Modifikation der genannten Mittel und Merkmale weitere Ausführungsvarianten zu realisieren, ohne den Rahmen der Erfindung zu verlassen.

Claims (14)

1. Verfahren zur Verhinderung unbefugten Ausführens von Computerprogrammen, dadurch gekennzeichnet, daß während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Zeittakte für die Erzeugung der Signaturdaten durch System-Clocks vorgegeben werden.
3. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß in jedem vorgegebenen Zeittakt ein Vergleich erfolgt.
4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Signaturdaten erzeugt werden, indem die bei einem Programmablauf ausgeführten Code- und Datentransfers aufgezeichnet und miteinander verschlüsselt werden.
5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Signaturdaten in einem Signaturregister abgelegt werden.
6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß pro System-Clock ein einzelnes Bit aus dem Signaturregister mit einem extern zugeführten Signal verglichen wird.
7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird, indem sofort ein Reset ausgelöst wird.
8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß die Zuführung der externen Daten über ein I/O-Pad erfolgt.
9. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß ein Signaturvergleich nur für einen eingeschränkten Teil des Adreßbereichs im TestROM erfolgt.
10. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, daß durch das Computerprogramm ein Selbsttest aus einem TestROM eines Smartcard-Controllers ausgeführt wird.
11. Anordnung mit einem Prozessor, der derart eingerichtet ist, daß das unbefugte Ausführen von Computerprogrammen verhinderbar ist, indem während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
12. Anordnung mit einem Prozessor nach Anspruch 11, dadurch gekennzeichnet, daß der Prozessor Teil eines Smartcard-Controllers und die Anordnung eine Smartcard ist.
13. Computerprogrammprodukt, das ein computerlesbares Speichermedium umfaßt, auf dem ein Programm gespeichert ist, das es einem Computer oder Smartcard-Controller ermöglicht, nachdem es in den Speicher des Computers oder des Smartcard-Controllers geladen worden ist, das unbefugte Ausführen von Computerprogrammen zu verhindern, indem während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
14. Computerlesbares Speichermedium, auf dem ein Programm gespeichert ist, das es einem Computer oder Smartcard-Controller ermöglicht, nachdem es in den Speicher des Computers oder des Smartcard-Controllers geladen worden ist, das unbefugte Ausführen von Computerprogrammen zu verhindern, indem während der Ausführung eines Computerprogramms in vorgebbaren Zeittakten Signaturdaten erzeugt werden, wenigstens eine Teilmenge dieser Signaturdaten mit dem Computerprogramm extern zugeführten Daten verglichen und bei Nichtübereinstimmung der zu vergleichenden Daten die Ausführung des Computerprogramms abgebrochen wird.
DE10162291A 2001-12-19 2001-12-19 Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium Withdrawn DE10162291A1 (de)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE10162291A DE10162291A1 (de) 2001-12-19 2001-12-19 Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
US10/320,271 US20030140236A1 (en) 2001-12-19 2002-12-16 Method and arrangement for preventing unauthorized execution of computer programs and a corresponding software product and a corresponding computer-legible storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10162291A DE10162291A1 (de) 2001-12-19 2001-12-19 Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium

Publications (1)

Publication Number Publication Date
DE10162291A1 true DE10162291A1 (de) 2003-07-03

Family

ID=7709735

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10162291A Withdrawn DE10162291A1 (de) 2001-12-19 2001-12-19 Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium

Country Status (2)

Country Link
US (1) US20030140236A1 (de)
DE (1) DE10162291A1 (de)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004080550A2 (en) * 2003-03-10 2004-09-23 Cyberscan Technology, Inc. Dynamic configuration of a gaming system
US8996874B2 (en) * 2003-04-03 2015-03-31 Stmicroelectronics Sa Protection of a program waiting to be executed in a memory used by a microprocessor
US8272058B2 (en) 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
US8984636B2 (en) 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US7895651B2 (en) 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US20130055369A1 (en) * 2011-08-24 2013-02-28 Mcafee, Inc. System and method for day-zero authentication of activex controls
DE102012108981A1 (de) 2012-09-24 2014-03-27 Infineon Technologies Ag Ein-/Ausgabe-Modul, Datenverarbeitungsvorrichtung und Verfahren zum Überprüfen der Funktion einer Datenverarbeitungsvorrichtung

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5113518A (en) * 1988-06-03 1992-05-12 Durst Jr Robert T Method and system for preventing unauthorized use of software
US5421006A (en) * 1992-05-07 1995-05-30 Compaq Computer Corp. Method and apparatus for assessing integrity of computer system software
US5493649A (en) * 1994-06-21 1996-02-20 Microsoft Corporation Detecting corruption in a computer program at execution time using a checksum
US5944821A (en) * 1996-07-11 1999-08-31 Compaq Computer Corporation Secure software registration and integrity assessment in a computer system
US6470454B1 (en) * 1998-03-31 2002-10-22 International Business Machines Corporation Method and apparatus for establishing computer configuration protection passwords for protecting computer configurations
US6742119B1 (en) * 1999-12-10 2004-05-25 International Business Machines Corporation Time stamping method using time delta in key certificate

Also Published As

Publication number Publication date
US20030140236A1 (en) 2003-07-24

Similar Documents

Publication Publication Date Title
DE10162306A1 (de) Verfahren und Anordnung zur Verifikation von NV-Fuses sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
EP1326256A2 (de) Verfahren und Anordnung zur Programmierung und Verifizierung von EEPROM-Pages sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
EP0281057B1 (de) Schaltungsanordnung zur Sicherung des Zugangs zu einem Datenverarbeitungssystem mit Hilfe einer Chipkarte
EP0030381B1 (de) Verfahren und Vorrichtung zur Erzeugung und späteren Kontrolle von gegen Nachahmung, Verfälschung und Missbrauch abgesicherten Dokumenten und Dokument zu dessen Durchführung
EP0805607B1 (de) Verfahren zum Zugriff auf zumindest einen Teil der Daten einer Mikroprozessorkarte
DE10164422A1 (de) Verfahren und Anordnung zum Beschreiben von NV-Memories in einer Controller-Architektur sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
DE10319585B4 (de) Manipulationsgeschütztes Datenverarbeitungssystem und zugehöriges Verfahren zum Manipulationsschutz
EP1321888B1 (de) Verfahren zur Erhöhung der Sicherheit von Schaltkreisen gegen unbefugten Zugriff
DE60100363T2 (de) Sequenznummerierungsmechanismus zur sicherung der ausführungsordnungs-integrietät von untereinander abhängigen smart-card anwendungen
EP0280035B1 (de) Verfahren zum Sichern von Programmen und zur Integritätskontrolle gesicherter Programme
DE10162291A1 (de) Verfahren und Anordnung zur Verhinderung unbefugten Ausführens von Computerprogrammen sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
EP1338970B1 (de) Verfahren und Anordnung zur Zugriffssteuerung auf EEPROMs sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
DE602004011965T2 (de) Verfahren und schaltung zum identifizieren und/oder verifizieren von hardware und/oder software eines geräts und eines mit dem gerät arbeitenden datenträgers
EP2350904B1 (de) Verfahren und anordnung zum konfigurieren von elektronischen geräten
DE10164419A1 (de) Verfahren und Anordnung zum Schutz von digitalen Schaltungsteilen
DE10162307A1 (de) Verfahren und Anordnung zur Herstellung von maskenprogrammierten ROMs unter Verwendung einer mehrere Systeme umfassenden Maske sowie ein entsprechendes Computerprogrammprodukt und ein entsprechendes computerlesbares Speichermedium
DE10162310A1 (de) Verfahren und Anordnung zur Übertragung von Signalen von erzeugenden Funktionseinheiten an verarbeitende Funktionseinheiten elektrischer Schaltungen
DE102005020313A1 (de) Vorrichtung und Verfahren zur Erzeugung von Daten für eine Initialisierung von Sicherheitsdatenträgern
EP1634252B1 (de) Verfahren zum laden von tragbaren datenträgern mit daten
DE60216106T2 (de) Geschützte lesung von rechnerbefehlen in einem datenverarbeitungssystem
DE19705620C2 (de) Anordnung und Verfahren zur dezentralen Chipkartenidentifikation
DE3601526A1 (de) Kopierschutzverfahren fuer computerprogramme mit hilfe der smart card
DE102005027709A1 (de) Verfahren zum Betreiben eines tragbaren Datenträgers
WO2000002170A1 (de) Verfahren zum schutz von daten auf einem datenträger sowie dazu ausgestaltete chipkarte, lesegerät und chipsatz
DE19822220B4 (de) Zugriffsgeschützter Datenträger

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee