Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
EXECUTION OF APPLICATION PROCESSES
Document Type and Number:
WIPO Patent Application WO/2007/020039
Kind Code:
A1
Abstract:
According to the invention, an application process (15) on a portable data carrier (1) can be protected by security processes (13, 14) that are carried out at least twice and that verify a prerequisite for executing the application process (15). To prevent the sequential execution of all security processes (13, 14) and the subsequent execution of the application process (15), at least two of the processes (13, 14,15) are executed in parallel in a processor (2) by a control unit (8) of the data carrier (1). The execution of the application process (15) is only begun if at least one security process (14, 15) has verified the prerequisite for the execution. The invention thus permits the early execution of the application process (15) and a parallel execution to one of the security processes (13, 14). Early results (16) for the application process (15) can thus be created and can optionally be transmitted to a remote terminal (20), to which the data carrier (1) is connected.

Inventors:
MARTINI ULLRICH (DE)
SPITZ STEPHAN (DE)
Application Number:
PCT/EP2006/008027
Publication Date:
February 22, 2007
Filing Date:
August 14, 2006
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
GIESECKE & DEVRIENT GMBH (DE)
MARTINI ULLRICH (DE)
SPITZ STEPHAN (DE)
International Classes:
G06F21/51; G07F7/10
Foreign References:
US20010049785A12001-12-06
US20030163739A12003-08-28
US20040148526A12004-07-29
EP1085415A22001-03-21
US20010049785A12001-12-06
US20030163739A12003-08-28
Attorney, Agent or Firm:
KLUNKER.SCHMITT-NILSON.HIRSCH (München, DE)
Download PDF:
Claims:

P a t e n t a n s p r ü c h e

1. Verfahren zum Ausführen eines Anwendungsprozesses (15) auf einem portablen Datenträger (1) mit einem Prozessor (2), wobei zumindest zwei eine Voraussetzung für eine Ausführung des Anwendungsprozesses (15) prüfende Sicherheitsprozesse (13, 14) durch den Prozessor (2) ausgeführt werden, dadurch gekennzeichnet, dass von den zumindest zwei Sicherheitsprozessen (13, 14) und dem Anwendungsprozess (15) zumindest zwei Prozesse mittels des Prozessors (2) zumindest teilweise nebenläufig ausgeführt werden und das Ausführen des Anwendungsprozesses (15) begonnen wird, wenn zumindest einer der zumindest zwei Sicherheitsprozesse (13, 14) die Voraussetzung festgestellt hat.

2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das Ausführen des Anwendungsprozesses (15) begonnen wird, wenn zumindest einer der zumindest zwei Sicherheitsprozesse (13, 14) noch nicht beendet ist.

3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass die zumindest zwei Sicherheitsprozesse (13, 14) die gleiche Voraussetzung prüfen.

4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die zumindest zwei Sicherheitsprozesse (13, 14) als Voraussetzung eine Berechtigung zur Ausführung des Anwendungsprozesses prüfen.

5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass bei der Ausführung der zumindest zwei Sicherheitsprozesse (13, 14) Authentisierungs- daten (24) eines Benutzers des Datenträgers (1) mit in einem Speicher (5) des

Datenträgers (1) vorliegenden Referenzdaten (12) verglichen werden, wobei die Authentisierungsdaten (24) biometrische Merkmale und/ oder eine alphanumerische Kennung umfassen.

6. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die zumindest zwei Sicherheitsprozesse (13, 14) nebenläufig ausgeführt werden.

7. Verfahren nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass, nachdem die Voraussetzung von zumindest einem der zumindest zwei Sicherheitsprozesse (13, 14) festgestellt wurde, zumindest ein weiterer Si- cherheitsprozess (14) und der Anwendungsprozess (15) nebenläufig ausgeführt werden.

8. Verfahren nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass beim nebenläufigen Ausführen ein Sicherheitsprozess (13) oder der Anwendungsprozess (15) eine höhere Ausführungspriorität hat als der nebenläufig ausgeführte zumindest eine weitere Sicherheitsprozess (14).

9. Verfahren nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass Ergebnisse (16) des Anwendungsprozesses (15) erst dann weiterverarbeitet werden, wenn die zumindest zwei Sicherheitsprozesse (13, 14) die Voraussetzung übereinstimmend festgestellt haben.

10. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass die Ergebnisse (16) des Anwendungsprozesses (15) das Ausgeben von Daten und/ oder das Erteilen einer Anweisung umfassen.

H-. Verfahren nach Anspruch 9, dadurch gekennzeichnet, dass als Ergebnisse (16) des Anwendungsprozesses (15) eine Reaktion einer mit dem Datenträger (1) verbundenen Gegenstelle (20) veranlasst wird.

12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass die Ergebnisse (16) des Anwendungsprozesses (15) weiterverarbeitet werden, indem die Ergebnisse (16) an die Gegenstelle (20) übermittelt werden, nachdem die Voraussetzung übereinstimmend festgestellt wurde.

13. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass die Ergebnisse (16) des Anwendungsprozesses (15) weiterverarbeitet werden, indem die Ergebnisse (16) an die Gegenstelle (20) übermittelt und von der Gegenstelle (20) weiterverarbeitet werden, wobei Weiterverarbeitungsergebnisse der Gegenstelle (20) erst umgesetzt werden, nachdem übereinstimmend die Voraussetzung festgestellt wurde.

14. Verfahren nach einem der Ansprüche 1 bis 13, dadurch gekennzeichnet, dass die Ausführung des Anwendungsprozesses (15) abgebrochen und/ oder Ergebnisse (16) des Anwendungsprozesses (15) verworfen werden, wenn zumindest einer der zumindest zwei Sicherheitsprozesse (13, 14) eine Voraussetzung abschließend nicht festgestellt hat.

15. Portabler Datenträger (1) mit einem Prozessor (2), umfassend eine Steuereinrichtung (8), zumindest eine Sicherheitsapplikation (9, 10) und eine Anwendungsapplikation (11), die von dem Prozessor (2) ausführbar sind, wobei die zumindest eine Sicherheitsapplikation (9, 10) eingerichtet ist, eine ' Voraussetzung zur Ausführung der Anwendungsapplikation (15) zu prüfen; und

- - die Steuereinrichtung (8) eingerichtet ist, die zumindest eine Sicherheitsapplikation (9, 10) als zumindest zwei Sicherheitsprozesse (13, 14) sowie die Anwendungsapplikation (11) als Anwendungsprozess (15) auf dem Prozessor (2) auszuführen; dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, von den zumindest zwei Sicherheitsprozessen (13, 14) und dem Anwendungsprozess (15) zumindest zwei Prozesse mittels des Prozessors (2) zumindest teilweise nebenläufig auszuführen und die Ausführung der Anwendungsapplikation (11) als Anwendungsprozess (15) zu veranlassen, wenn die Vor- aussetzung von zumindest einem Sicherheitsprozess (13, 14) festgestellt wird.

16. Datenträger (1) nach Anspruch 15, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, die Ausführung der Anwendungsap- plikation (11) als Anwendungsprozess (15) zu veranlassen, wenn zumindest einer der zumindest zwei Sicherheitsprozesse (13, 14) noch nicht beendet ist.

17. Datenträger (1) nach Anspruch 15 oder 16, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, eine der zumindest einen Si- cherheitsapplikation (9, 10) zumindest zweimal als identische Sicherheitsprozesse (13, 14) auf dem Prozessor (2) auszuführen.

18. Datenträger (1) nach Anspruch 15 oder 16, dadurch gekennzeichnet, dass der Datenträger (1) mehr als eine von dem Prozessor (2) ausführbare, eine Voraussetzung des Anwendungsprozesses (15) prüfende Sicherheitsapplikation (9, 10) umfasst, wobei die Steuereinrichtung (8) eingerichtet ist, jede Sicherheitsapplikation (9, 10) als separaten Sicherheitsprozess (13, 14) auf dem Prozessor (2) auszuführen.

19-. Datenträger (1) nach einem der Ansprüche 15 bis 18, dadurch gekennzeichnet, dass die zumindest eine Sicherheitsapplikation (9, 10) eingerichtet ist, als Voraussetzung eine Berechtigung zur Ausführung der Anwendungsapplikation (15) zu prüfen.

20. Datenträger (1) nach Anspruch 19, dadurch gekennzeichnet, dass der Datenträger (1) einen Speicher (5) umfasst, wobei die zumindest eine Sicherheitsapplikation (9, 10) eingerichtet ist, zur Prüfung der Ausführungsberechtigung Authentisierungsdaten (24) eines Benutzers des Datenträgers mit in einem Speicher (5) des Datenträgers (1) vorliegenden Referenzdaten (12) zu vergleichen, wobei die Authentisierungsdaten (24) biometrische Merkmale und/ oder eine alphanumerische Kennung umfassen.

21. Datenträger (1) nach einem der Ansprüche 15 bis 20, dadurch gekenn- zeichnet, dass die Steuereinrichtung eingerichtet ist, die zumindest zwei Sicherheitsprozesse (14, 15) nebenläufig auszuführen.

22. Datenträger (1) nach einem der Ansprüche 15 bis 20, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, nachdem die Vor- aussetzung von zumindest einem der zumindest zwei Sicherheitsprozesse (13, 14) festgestellt wurde, eine der zumindest einen Sicherheitsapplikation (9, 10) als zumindest einen weiteren Sicherheitsprozess (14) und die Anwendungsapplikation (11) als Anwendungsprozess (15) nebenläufig auszuführen.

23. Datenträger (1) nach Anspruch 21 oder 22, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, beim nebenläufigen Ausführen einem Sicherheitsprozess (13) oder dem Anwendungsprozess (15) eine höhe-

re-Ausführungspriorität zuzuteilen als dem nebenläufig ausgeführten zumindest einen weiteren Sicherheitsprozess (14).

24. Datenträger (1) nach einem der Ansprüche 15 bis 23, dadurch gekenn- zeichnet, dass die zumindest eine Sicherheitsapplikation (9, 10) eingerichtet ist, Ergebnisse (16) des Anwendungsprozesses (15) erst dann weiterzuverar- beiten, wenn die zumindest zwei Sicherheitsprozesse (13, 14) die Voraussetzung übereinstimmend festgestellt haben.

25. Datenträger (1) nach Anspruch 24, dadurch gekennzeichnet, dass die Anwendungsapplikation (11) eingerichtet ist, bei ihrer Ausführung als An- wendungsprozess (15) als Ergebnisse (16) Daten auszugeben und/ oder Anweisungen zu erteilen.

26. Datenträger (1) nach Anspruch 24, dadurch gekennzeichnet, dass der Datenträger (1) eine Schnittstelle (3) zur Datenkommunikation mit einer Gegenstelle (20) umfasst, mit welcher der Datenträger (1) verbindbar ist, und die Anwendungsapplikation (11) eingerichtet ist, bei ihrer Ausführung als Anwendungsprozess (15) eine Reaktion der Gegenstelle (20) zu veranlassen, wenn der Datenträger (1) mit der Gegenstelle (20) verbunden ist.

27. Datenträger (1) nach Anspruch 26, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, eine Weiterverarbeitung von von der Anwendungsapplikation (11) bei ihrer Ausführung als Anwendungsprozess (15) erzeugten Ergebnissen (16) zu veranlassen, indem die Ergebnisse (16) über die Schnittstelle (3) an die Gegenstelle (20) übermittelt werden, nachdem die Voraussetzung übereinstimmend festgestellt ist, wenn der Datenträger (1) mit der Gegenstelle (20) verbunden ist.

28, Datenträger (1) nach Anspruch 26, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, eine Weiterverarbeitung von von der Anwendungsapplikation (11) bei ihrer Ausführung als Anwendungsprozess (15) erzeugten Ergebnissen (16) zu veranlassen, indem Ergebnisse (16) an die Gegenstelle (20) zur dortigen Weiterverarbeitung zusammen mit einer Vorbehaltsanweisung (17) übermittelt werden, wonach bei der Weiterverarbeitung erzielte Weiterverarbeitungsergebnisse erst umzusetzen sind, nachdem die Voraussetzung übereinstimmend der Gegenstelle (20) mitgeteilt wurde.

29. Datenträger (1) nach Anspruch 28, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, über die Schnittstelle (3) eine Umsetzungsanweisung (18) an die Gegenstelle (20) zu übermitteln, nachdem die Voraussetzung von den zumindest zwei Sicherheitsprozessen (13, 14) übereinstimmend festgestellt wurde.

30. Datenträger (1) nach einem der Ansprüche 15 bis 29, dadurch gekennzeichnet, dass die Steuereinrichtung (8) eingerichtet ist, die Ausführung des Anwendungsprozesses (15) abzubrechen und/ oder Ergebnisse (16) des Anwendungsprozesses (15) zu verwerfen, wenn eine Ausführungsvorausset- zung von wenigstens einem Sicherheitsprozess (13, 14) abschließend als nicht vorliegend festgestellt wird.

31. Datenträger (1) nach einem der Ansprüche 15 bis 30, dadurch gekennzeichnet, dass die Anwendungsapplikation (11) eingerichtet ist, eine Konto- transaktion bei der Gegenstelle (20) zu veranlassen oder eine Zugangsberechtigung für einen Benutzer des Datenträgers (1) bei der Gegenstelle (20) anzufordern oder eine Datenbankoperation an die Gegenstelle (20) zu richten.

32. Datenträger (1) nach einem der Ansprüche 15 bis 31, dadurch gekennzeichnet, dass der Datenträger (1) ein multitaskingfähiges Betriebsystem um- fasst und die Steuereinrichtung (8) ein Disponent des Betriebsystems ist.

33. Datenträger (1) nach einem der Ansprüche 15 bis 32, dadurch gekennzeichnet, dass der Datenträger (1) eine Chipkarte, eine sichere Multimediakarte, oder ein USB-Speichermedium ist.

Description:

A u s f ü h r e n v o n A n w e n d u n g s p r o z e s s e n

Die Erfindung betrifft ein Verfahren zum Ausführen von Anwendungsprozessen auf einem portablen Datenträger sowie einen solchen portablen Datenträger, insbesondere eine Chipkarte, sichere Multimediakarte, Mobilfunkkarte, USB-Speichermedium oder dergleichen.

Portable Datenträger, die mit einem Prozessor zum Ausführen von Prozessen ausgestattet sind, unterliegen im allgemeinen der Gefahr einer Manipulation von außen. Ziel derartiger Angriffe ist es zumeist, sensible oder geheime Daten eines solchen Datenträgers oder seines Mikrocontrollerchips auszuspähen oder zu manipulieren. Zum Beispiel kann versucht werden, kryp- tographische Schlüssel oder eine auf dem Datenträger gespeicherte Zu- gangskennung eines Benutzers unerlaubt zu ermitteln.

Eine Möglichkeit, derartige geheime Daten auszuspähen, ist die Störung der Ausführung von Prozessen, die solche geheimen Daten verarbeiten mittels physikalischen Einwirkungen von außen, für die der Datenträger normalerweise nicht ausgelegt ist, z.B. Wärme- oder Strahlungseinwirkung (z.B. ionisierende Strahlung, Mikrowellen, etc.), Schwankungen der Versorgungsspannung, Taktfrequenz-Störungen und dergleichen. Ausgehend von den Ergebnissen eines solcherart gestörten Prozesses kann mit algorithmischen Mitteln auf die von dem Prozess verarbeiteten geheimen Daten rückgeschlossen werden. Derartige physikalische Angriffe auf einen Datenträger sind insbesondere Lichtangriffe oder Bellcore- Angriffe.

Eine weitere Möglichkeit des Ausspähens geheimer Daten ist die Auswer- tung von physikalischen Messwerten des Datenträgers während der Ausführung eines geheime Daten verarbeitenden Prozesses, wie z.B. elektromagne-

tiache Emissionen oder des Verlaufs des Stromverbrauchs oder der Rechenzeit.

Als einfache Gegenmaßnahme gegen manipulatorische Angriffe auf einen Datenträger ist die zwei- oder mehrfache (eventuell redundante) Ausführung sicherheitsrelevanter Prozesse, um die Manipulation durch einen Ergebnisvergleich zumindest festzustellen. Hierbei wird ein Prozessergebnis nur dann akzeptiert, wenn es übereinstimmend von allen redundanten Prozessen errechnet wurde. So wird beispielsweise eine bestimmte Transaktion (z.B. eine Kontoanweisung oder eine Zugangsgewährung) von dem Datenträger in Form eines Anwendungsprozesses nur dann eingeleitet oder ausgeführt, wenn zuvor das Vorliegen der Voraussetzungen zur Ausführung des Anwendungsprozesses von zumindest zwei Prüfprozessen oder sicherheitsrelevante Prüfungen durchführenden Sicherheitsprozessen übereinstimmend festgestellt wurde.

Bei der mehrfachen Ausführung einer derartigen Prüf- oder Sicherheitsapplikation ergibt sich jedoch bei portablen Datenträgern oft das Problem des inakzeptablen Performanceverlusts und/ oder Rechenzeitbedarfs, da solche Datenträger über vergleichsweise geringe Rechenkapazität verfügen und tendenziell in einem Umfeld eingesetzt werden, welches ein zügiges Abwickeln von Transaktionen erforderlich macht, wie z.B. bei Identitätskontrollen an Grenzübergängen oder Flughäfen, Banktransaktionen an einem Bankterminal oder überprüfen einer Zugangsberechtigung zu einem Gebäude. Dies gilt insbesondere für rechenaufwendige Sicherheitsprozesse, wie z.B. dem Erheben und Vergleichen von biometrischen Daten eines Benutzer des Datenträgers, die zwar besondere Sicherheit bieten, aber bei mehrfacher redundanter Ausführung zu einer erheblichen Rechen- und Wartezeit führen und deshalb bei vielen Anwendungen nicht einsetzbar sind.

Der Erfindung liegt daher die Aufgabe zugrunde, eine zeiteffiziente Möglichkeit bereitzustellen, Angriffe auf einen portablen Datenträger zu erkennen.

Diese Aufgabe wird erfindungsgemäß mittels eines Verfahrens und einer Vorrichtung mit den Merkmalen der nebengeordneten Ansprüche gelöst. In davon abhängigen Ansprüchen sind vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung angegeben.

Bei dem erfindungsgemäßen Verfahren wird auf einem portablen Datenträger mit Prozessor von zumindest einem Sicherheitsprozess mittels einer sicherheitsrelevanten Prüfung eine Voraussetzung zur Ausführung eines Anwendungsprozesses geprüft. Das Prinzip der vorliegenden Erfindung be- steht nun darin, dass von den zumindest zwei Sicherheitsprozessen und dem Anwendungsprozess zumindest zwei Prozesse auf dem Prozessor zumindest teilweise nebenläufig ausgeführt werden und die Ausführung des Anwendungsprozesses bereits begonnen wird, wenn zumindest ein Sicherheitsprozess ein Vorliegen der Voraussetzung zur Ausführung des Anwendungspro- zesses festgestellt hat.

Der Prozessor führt dann zumindest zwei Prozesse durch alternierendes Zuweisen von Rechenzeit scheinbar gleichzeitig aus, so dass der Eindruck der parallelen Ausführung der beiden Prozesse entsteht. Bei der vorliegen- den Erfindung braucht der Anwendungsprozess nicht erst dann gestartet werden, wenn die Voraussetzung zur Ausführung des Anwendungsprozesses von den zumindest zwei Sicherheitsprozessen übereinstimmend festgestellt wurde, d.h. wenn alle Sicherheitsprozesse beendet sind, sondern kann bereits nach Beendigung eines Sicherheitsprozesses begonnen werden. Es

kann also insbesondere vorkommen, dass mit der Ausführung des Anwendungsprozesses bereits begonnen wird, wenn zumindest einer der Sicherheitsprozesse noch nicht beendet ist.

Der Vorteil dieser Erfindung liegt in einer effizienzsteigernd wirkenden zeitlichen Optimierung der Ausführung des von den Sicherheitsprozessen abhängigen Anwendungsprozesses durch die nebenläufige Prozessabarbeitung und die vorzeitige Ausführung des Anwendungsprozesses, so dass der An- wendungsprozess früher ausgeführt werden kann als bei einer streng se- quentiellen Abarbeitung. Das erfindungsgemäße Vorgehen minimiert die Wahrscheinlichkeit, dass die Ausführungsvoraussetzung des Anwendungsprozesses nicht vorliegt, da der Anwendungsprozess erst nach Feststellen der Ausführungsvoraussetzung durch zumindest einen der Sicherheitsprozesse gestartet wird und die erstmalige Feststellung des Vorliegens der Vor- aussetzung in dem meisten Fällen von weiteren Sicherheitsprozessen bestätigt wird. Es können somit bereits Zwischen- oder Teilergebnisse des Anwendungsprozesses vorbehaltlich einer übereinstimmenden Feststellung der Voraussetzung vorzeitig erstellt werden oder auch Endergebnisse an eine Gegenstelle weitergegeben werden, mit welcher der Datenträger in Verbin- düng steht.

Da der Anwendungsprozess bereits nach Beendigung eines der Sicherheitsprozesse möglicherweise nebenläufig mit einem weiteren der Sicherheitsprozesse ausgeführt wird, ist es möglich, dass der Anwendungsprozess vor zu- mindest einem der Sicherheitsprozesse beendet wird und das Vorliegen der Voraussetzung zur Ausführung des Anwendungsprozesses somit erst übereinstimmend festgestellt werden kann, wenn Ergebnisse des Anwendungsprozesses bereits vorliegen. Um die Sicherheitsfunktion der Sicherheitsprozesse dennoch zu gewährleisten, werden die Ergebnisse des Anwendungs-

prozesses vorzugsweise erst weiterverarbeitet, nachdem die zumindest zwei Sicherheitsprozesse das Vorliegen der Voraussetzung zur Ausführung des Anwendungsprozesses übereinstimmend festgestellt haben.

Hierbei bezeichnet der Begriff „ Anwendungsprozess" im Kontext der vorliegenden Erfindung nicht nur die Ausführung eines einzelnen Prozesses, sondern kann auch eine Folge von Anwendungsprozessen bezeichnen, die eine logische Einheit bilden oder eine gewünschte Anwendung durch ihre zusammenhängende Abfolge realisieren. In diesem Sinne umf asst der Begriff „ Anwendungsprozess" jede Folge von Prozessen, die keine unwiderrufliche und/ oder unumkehrbare Außenwirkung entfalten. Solche Einzelprozesse oder Prozesssequenzen können insofern vorbehaltlich einer späteren Feststellung des Vorliegens ihrer Ausführungsvoraussetzung vorzeitig ausgeführt werden, da ihre Ergebnisse und Wirkungen falls nötig rückgängig ge- macht werden können.

Durch diesen Vorbehalt des von allen Sicherheitsprozessen übereinstimmend festgestellten Vorliegens der Voraussetzung zur Ausführung des Anwendungsprozesses wird sichergestellt, dass die gewünschte Wirkung des An- Wendungsprozesses erst dann endgültig und mit Wirkung nach Außen unwiderruflich umgesetzt wird, wenn die Ausführung des Anwendungsprozesses durch die Sicherheitsprozesse tatsächlich übereinstimmend autorisiert wurde. So ist es beispielsweise möglich, dass der Anwendungsprozess bereits Daten bei einer Gegenstelle anfordert oder an diese weitergibt und die Gegenstelle dann parallel zur Ausführung eines Sicherheitsprozesses durch den Datenträger bereits Berechnungsschritte unternimmt, die andernfalls erst nach vollständigem Beenden aller Sicherheitsprozesse durchgeführt werden könnten. Im Ergebnis tritt die erwünschte Wirkung des Anwen-

dungsprozesses durch die zeitliche Optimierung der Ausführung der Sicherheitsprozesse sowie des Anwendungsprozesses früher ein.

Ein erfindungsgemäßer portabler Datenträger umfasst dementsprechend einen Prozessor, auf dem zumindest eine Sicherheitsapplikation und eine Anwendungsapplikation installiert sind, die jeweils von dem Prozessor als Prozesse ausführbar sind. Hierbei wird als Applikation ein auf dem Datenträger vorliegendes ausführbares Anwendungsprogramm bezeichnet, während eine von dem Prozessor ausgeführte Applikation als Prozess bezeichnet wird. Der Begriff „Anwendungsapplikation" ist insofern in gleicher Weise zu verstehen wie der oben erläuterte Begriff „ Anwendungsprozess".

Der Datenträger umfasst ferner eine Datenkommunikationsschnittstelle zur Kommunikation des Datenträgers mit einer Gegenstelle, an die der Daten- träger angeschlossen ist, und eine Steuereinrichtung, die als vom Prozessor ausführbares Programm, z.B. als Teil der Systemsoftware des Datenträgers, ausgestaltet sein kann. Die Steuereinrichtung übernimmt beim Ausführen von Prozessen auf dem Prozessor die alternierende Zuteilung von Prozessorzeit an die einzelnen Prozesse gemäß des oben beschriebenen Prinzips der nebenläufigen Ausführung von zumindest zwei der Sicherheitsprozesse und des Anwendungsprozesses. Die Steuereinrichtung kann ferner die von dem Anwendungsprozess bereits vor Vorliegen der übereinstimmend festgestellten Ausführungsvoraussetzung erzielten Ergebnisse erst dann umsetzen, wenn die übereinstimmende Ausführungsvoraussetzung vorliegt, so dass die Wirkung des Anwendungsprozesses nach außen erst eintritt, wenn die Voraussetzung tatsächlich mehrfach geprüft ist.

Als sicherheitsrelevante Voraussetzung zur Ausführung des Anwendungsprozesses wird vorzugsweise eine Berechtigung des Anwendungsprozesses

zur Ausführung geprüft. Eine solche Ausführungsberechtigung kann z.B. eine biometrische oder sonstige Authentisierung oder Identifizierung eines Benutzers des Datenträgers sein.

Die zumindest zwei auszuführenden Sicherheitsprozesse können entweder durch Ausführen einer einzigen im Speicher des portablen Datenträgers vorliegenden Sicherheitsapplikation entstehen, so dass die Sicherheitsprozesse eine Sicherheitsoperation redundant durchführen. Andererseits ist es auch möglich, dass unterschiedliche Sicherheitsapplikationen auf dem Datenträ- ger vorliegen und als verschiedene Sicherheitsprozesse ausgeführt werden, so dass eine Ausführungsvoraussetzung oder -berechtigung des Anwendungsprozesses auf jeweils unterschiedliche Weise geprüft wird. Dies ist z.B. der Fall, wenn verschiedene biometrische Merkmale eines Benutzers zur Authentisierung geprüft werden, z.B. ein Fingerabdruck und ein Irismuster. üblicherweise werden dann biometrische Merkmale des Benutzers mittels einer adäquaten Sensoreinrichtung an der Gegenstelle erhoben und mit auf dem Datenträger vorliegenden biometrischen Referenzdaten verglichen. Auch der Abgleich einer vom Benutzer bereitgestellten Zugangskennung mit einer auf dem Datenträger vorliegenden Referenzkennung kann als Sicher- heitsprozess durchgeführt werden. Die Ausführungsberechtigung wird dem Anwendungsprozess dann erteilt, wenn Benutzer- und Referenzdaten jeweils (innerhalb bestimmter datenabhängigen Toleranzgrenzen) übereinstimmen.

Da der portable Datenträger bei seinem Einsatz in der Regel mit einer Gegenstelle verbunden ist, beispielsweise einem Lese-/ Schreibterminal, wird der Anwendungsprozess oder seine Ergebnisse eine gewünschte Reaktion der Gegenstelle veranlassen, falls der portable Datenträger mit der Gegenstelle verbunden ist. Falls der portable Datenträger beispielsweise eine Kon-

to* oder Bankchipkarte und die Gegenstelle ein Bank- oder Geldautomat sind, kann die Reaktion der Gegenstelle das Ausführen einer Kontotransaktion oder das Auszahlen eines Bargeldbetrags sein.

In Kontext der vorliegenden Erfindung können Ergebnisse eines Anwendungsprozesses beispielsweise Daten sein, die der Prozess in einen prozessabhängigen oder temporären Speicherbereich schreibt, oder vom Prozessor des Datenträgers auszuführende oder an die Gegenstelle zu übertragende Anweisungen des Anwendungsprozesses, wie z.B. das Starten anderer Ap- plikationen. Die Steuereinrichtung kann dann so eingerichtet sein, dass die Weiterverarbeitung von Ergebnissen des Anwendungsprozesses darin besteht, die Ergebnisse über die Schnittstelle des Datenträgers an die Gegenstelle zu übermitteln. Gemäß dem obigen Beispiel der Bankchipkarte kann ein Ergebnis des Anwendungsprozesses z.B. in dem Zusammenstellen und übertragen von kontobezogenen Daten an die Gegenstelle bestehen. Der Anwendungsprozess kann also bereits vor einer übereinstimmenden Feststellung der Ausführungsvoraussetzung sämtliche Ergebnisse erzeugen - d.h. die Kontodaten zusammenstellen und/ oder formatieren -, während die Wirkung des Anwendungsprozesses nach außen - also die übertragung der Daten an die Gegenstelle - erst erfolgt, wenn die Voraussetzung von allen Sicherheitsprozessen übereinstimmend festgestellt wurde.

Ebenso ist es im Sinne der vorliegenden Erfindung möglich, dass die Steuereinrichtung des Datenträgers die von dem Anwendungsprozess ermittelten Ergebnisse bereits zur Weiterverarbeitung durch die Gegenstelle an diese überträgt und der Gegenstelle im wesentlichen gleichzeitig eine für die Gegenstelle verständliche Vorbehaltsanweisung übermittelt wird, welche die Gegenstelle veranlasst, die bei der Weiterverarbeitung der Ergebnisse des Anwendungsprozesses erzielten Weiterverarbeitungsergebnisse erst dann

umzusetzen, wenn der Gegenstelle die übereinstimmende Feststellung der Berechtigung mitgeteilt wurde. Auf diese Weise kann die Gegenstelle zwar vorbehaltlich einer später zu empfangenden übereinstimmenden Feststellung der Ausführungsvoraussetzung Ergebnisse des Anmeldungsprozesses weiterverarbeiten und insofern parallel zu den verbleibenden Sicherheitsprozessen arbeiten, die Verarbeitungsergebnisse können jedoch erst dann mit Außenwirkung umgesetzt werden, wenn der Gegenstelle die übereinstimmend festgestellte Voraussetzung vorliegt.

Nachdem alle Sicherheitsprozesse auf dem Datenträger beendet wurden und die Ausführungsberechtigung des Anwendungsprozesses übereinstimmend festgestellt haben, übermittelt der portable Datenträger eine Umsetzungsanweisung an die Gegenstelle, welche der Gegenstelle signalisiert, dass die Voraussetzung übereinstimmend festgestellt wurde und die bisher unter Vorbehalt erzielten Weiterverarbeitungsergebnisse weitergenutzt, ausgewertet oder anderweitig umgesetzt werden können.

übertragen auf das obige Beispiel einer Bankchipkarte bedeutet das, dass zwar die von dem Anwendungsprozess zusammengestellten kontobezoge- nen Daten an den Geldautomat übertragen werden können und der Geldautomat auch bereits die beabsichtigte Transaktion vorbereiten kann, die Transaktion allerdings erst wirksam ausgeführt wird, wenn bei dem Geldautomat eine Umsetzungsanweisung des Datenträgers eintrifft, welche eine übereinstimmende Feststellung der Voraussetzung bestätigt. Die Transaktion wird dann wirksam ausgeführt, indem z.B. ein Geldbetrag ausgezahlt wird oder eine überweisung angewiesen wird.

Beim nebenläufigen Ausführen der beiden Sicherheitsprozesse ist es vorteilhaft, einem der Sicherheitsprozess eine höheren Ausführungspriorität zuzu-

weisen. Dieser Sicherheitsprozess wird dann aufgrund der ihm zugewiesenen erhöhten Prozessorzeit schneller beendet und der Anwendungsprozess kann früher gestartet werden. Ebenso ist es beim nebenläufigen Ausführen des Anwendungsprozesses und eines Sicherheitsprozesses vorteilhaft, wenn die Steuereinrichtung dem Anwendungsprozess eine höhere Ausführungspriorität und dem nebenläufigen Sicherheitsprozess eine niedrigere Ausführungspriorität gewährt.

Bei einer Ausführungsalternative der vorliegenden Erfindung ist es möglich, dass zumindest zwei Sicherheitsprozesse von der Steuereinrichtung nebenläufig gestartet werden und das Ausführen der Anwendungsapplikation als nebenläufiger Anwendungsprozess begonnen wird, sobald von zumindest einem Sicherheitsprozess die Ausführungsvoraussetzung des Anwendungsprozesses festgestellt wurde. Dabei ist es auch möglich, den Beginn der Aus- führung der Sicherheitsprozesse auf dem Prozessor von der Steuereinrichtung im wesentlichen gleichzeitig zu veranlassen, wobei es wiederum möglich ist, den Sicherheitsprozessen entweder gleiche oder zumindest ähnliche Ausführungsprioritäten zuzuweisen oder unterschiedliche Ausführungsprioritäten zuzuweisen, um bestimmte Sicherheitsprozesse bevorzugt auszu- führen. Zum Beispiel kann derjenige Sicherheitsprozess mit hoher Ausführungspriorität ausgeführt werden, der die geringste Fehlerwahrscheinlichkeit besitzt, so dass für den danach startenden Anwendungsprozess eine hohe Wahrscheinlichkeit für das tatsächliche Vorliegen der Voraussetzung angenommen werden kann.

Für den Fall, dass von einem der Sicherheitsprozesse die Ausführungsvoraussetzung des Anwendungsprozesses nicht festgestellt werden kann und der Anwendungsprozess zu diesem Zeitpunkt bereits Ergebnisse erzeugt hat, bricht die Steuereinrichtung die Ausführung des Anwendungsprozesses

ah, da dessen Ausführungsberechtigung bereits dann zweifelhaft ist oder eine Manipulation des Datenträgers vorliegen kann, wenn nur ein Sicher- heitsprozess die Ausführungsberechtigung verweigert. In diesem Fall werden bereits erzielte Zwischen-, Teil- oder Endergebnisse des Anwendungs- prozesses verworfen und alle Ergebnisse einer Weiterverarbeitung rückgängig bemacht. Bei einer zusammenhängenden oder eine logische Einheit bildenden Sequenz von Anwendungsprozessen wird der aktuell ausgeführte Anwendungsprozess mit einer Fehlermeldung beendet, so dass Zwischenergebnisse ohnehin rückgängig gemacht und nachfolgende Prozesse fehlerbe- dingt beendet werden.

Falls bereits Ergebnisse an eine Gegenstelle übertragen wurden und diese von der Gegenstelle bereits weiterverarbeitet wurden, werden die Weiterverarbeitungsergebnisse der Gegenstelle entweder aufgrund einer entspre- chenden Anweisung des Datenträgers oder aufgrund des Ausbleibens der Umsetzungsanweisung ebenfalls verworfen.

Wie bereits erwähnt, kommen als Anwendungsapplikationen des portablen Datenträgers unter anderem Konto- oder Geldtransaktionsapplikationen in Frage, die auf der Gegenstelle eine Kontotransaktion veranlassen. Ebenso kann eine Anwendungsapplikation bei der Gegenstelle eine Zugangsberechtigung zu einem zugangsbeschränkten Bereich oder Gebäude für einen Benutzer des portablen Datenträgers anfordern oder eine Datenbankoperation bzw. -anfrage an die Gegenstelle richten.

Der portable Datenträger ist vorzugsweise mit einem Multitasking- und/oder Multithreading-fähigen Betriebssystem ausgestattet, das eine Mehrläufigkeit von Prozessen explizit unterstützt. Die Steuereinrichtung kann hierbei als Disponent („Scheduler") des Betriebssystems ausgestaltet

sein, der den von dem Prozessor auszuführenden Prozessen nach vorgegebenen Kriterien Prozessorzeit zuweist.

Besonders bevorzugt handelt es sich bei dem portablen Datenträger um eine Chipkarte mit Prozessor (d.h. eine sogenannte „Smart Card"), eine sichere Multimediakarte, ein USB-Speichermedium, eine Mobilfunkkarte oder dergleichen.

Weitere Merkmale und Vorteile der Erfindung ergeben sich aus der folgen- den Beschreibung verschiedener erfindungsgemäßer Ausführungsbeispiele und Ausführungsalternativen im Zusammenhang mit den begleitenden Zeichnungen. Darin zeigen:

Figur 1 eine erfindungsgemäß eingerichtete Chipkarte;

Figur 2 Beispiele für Strategien zur Prozessabarbeitung gemäß der vorliegenden Erfindung; und

Figur 3 eine erfindungsgemäß eingerichtete Chipkarte in Interaktion mit einer Gegenstelle.

Figur 1 zeigt eine Chipkarte 1 als erfindungsgemäßen portablen Datenträger. Die Chipkarte 1 ist mit einem Prozessor 2 zur Ausführung von Systemroutinen und Applikationen und einer Schnittstelle 3 zur Datenkommunikation mit externen Geräten ausgestattet, wie z.B. einer Kartenieseeinrichtung oder einem Transaktionsterminal. Ebenso kann es sich bei einem erfindungsgemäßen portablen Datenträger um eine Mobilfunkkarte, ein USB-Speichermedium, eine sichere Multimediakarte oder dergleichen handeln.

Die Chipkarte 1 der Figur 1 umfasst ferner eine Speicheranordnung 4, 5, 6 bestehend aus einem permanenten ROM-Speicher 4, einem wiederbeschreib- baren EEPROM-Speicher 5 und einem flüchtigen RAM- Arbeitsspeicher 6. Im ROM-Speicher 4 ist ein Betriebssystem 7 der Chipkarte 1 implementiert, wel- ches eine Steuereinrichtung 8 zur Prozesssteuerung umfasst. Zur Realisierung der vorliegenden Erfindung unterstützt das Betriebssystem 7 ein „Multitasking", also das scheinbar gleichzeitige ausführen mehrere Aufgaben („tasks") bzw. Prozesse. Dabei werden den verschiedenen Prozessen gemäß ihrer Ausführungsprioritäten in so kurzen Abständen alternierend Prozes- sorszeit zugewiesen, dass der Eindruck der Gleichzeitigkeit/ Parallelität entsteht. Diese Quasi-Parallelität wird allgemein als „Nebenläufigkeit" bezeichnet. Ebenso ist eine „ MuI tithreading" -Fähigkeit des Betriebssystems 7 vorteilhaft, also der Fähigkeit eines Prozesses, mehrere Bearbeitungsstränge („threads", Subprozesse) nebenläufig abzuarbeiten.

Neben den im Betriebssystem 7 zusammengefassten Systemroutinen sind im EEPROM-Speicher 5 der Chipkarte 1 verschiedene Applikationen 9, 10, 11 und Daten 12 abgelegt. Die Sicherheitsapplikationen 9, 10 führen sicherheitsrelevante Prüfungen durch, wie zum Beispiel ein überprüfen einer Authenti- sierung oder Identifizierung eines Benutzers der Chipkarte 1, während die Anwendungsapplikation 11 ein beliebiges Anwendungsprogramm ist, welches beispielsweise Daten oder Anweisungen an eine Gegenstelle überträgt, mit der die Chipkarte 1 über ihre Schnittstelle 3 in einer Datenkommunikationsverbindung steht. Hierbei kann die Anwendungsapplikation 15 auch eine Folge von Applikationen, Routinen, Programmen oder Funktionen repräsentieren, die eine logische oder funktionale Einheit bilden oder zusammenhängend ausgeführt werden um eine bestimmte Anwendung zu realisieren.

Falls es sich bei der Chipkarte 1 um eine Geld- oder Kontokarte handelt, kann die Anwendungsapplikation 11 beispielsweise kontobezogene Daten an die Gegenstelle, z.B. einen Geld- oder Kontoautomaten, übertragen. Falls es sich um eine Identifikationskarte oder eine Zugangskarte handelt, kann die Anwendungsapplikation 11 persönliche Daten des Benutzers an die Gegenstelle übertragen, damit sie dort zum Beispiel für eine Ausweiskontrolle oder die überprüfung einer Zugangsberechtigung des Benutzers zu einem geschützten Bereich oder Gebäude verwendet werden.

Bei portablen Datenträgern wie der in Figur 1 abgebildeten Chipkarte 1 ist der eigentliche Mikrochip bzw. der Mikrocontroller für Dritte relativ leicht zugänglich in den Kunststoffrahmen der Chipkarte 1 eingebettet. Dasselbe gilt für andere portable Datenträger, wie sichere Multimediakarten, Mobilfunkkarten oder mit einem Prozessor ausgestattete USB-Speichermedien. Aufgrund des vergleichsweise einfachen Zugangs zu den funktionalen

Komponenten derartiger Datenträger werden vielfältige Angriffs- und Manipulationsmöglichkeiten eröffnet, die eine besondere Absicherung geheimer Daten und sicherheitsrelevanter Prozesse von portablen Datenträgern erfordern. Diese Gefährdung besteht insbesondere bei portablen Datenträgern, die besondere Sicherungsinformationen bereitstellen, wie zum Beispiel Zugangskarten, Konto- oder Kreditkarten und dergleichen.

Die Zielrichtungen derartiger Angriffe sind vielfältig. Zum Beispiel kann es ein Ziel sein, durch Manipulation einem prinzipiell nicht berechtigten Benut- zer der Chipkarte 1 einen Zugang zu einem ihm normalerweise unzugänglichen Bereich zu eröffnen oder bestimmte sicherheitsrelevante Informationen der Chipkarte 1 auszuspähen, wie zum Beispiel eine Zugangskennung/PIN oder einen kryptographischen Schlüssel. Hierbei zielen physikalische Angriffsmöglichkeiten wie zum Beispiel Lichtangriffe oder Bellcore- Angriffe

darauf ab, eine Manipulation der Chipkarte während des Betriebes durch physikalische Einwirkungen wie Strahlungseinwirkung, hohe Betriebsspannungen oder übertaktungen herbeizuführen, um dadurch Rechenfehler zu provozieren. Solche Störungen im Programmablauf können teilweise sogar so gezielt eingesetzt werden, dass bestimmte Wirkungen hervorgerufen werden, z.B. die Veränderung von Datenpufferadressen bei Leseoperationen, um normalerweise unzugängliche Daten der Chipkarte auszulesen. Ebenso ist es durch gezielte Manipulation im Ablauf von kryptographischen Algorithmen möglich, aus den Ergebnissen manipulierter Algorithmen im Ver- gleich mit den Ergebnissen unmanipulierter Algorithmen Rückschlüsse auf verwendete Schlüssel zu gewinnen.

Ein möglicher, relativ leicht zu realisierender Schutz gegen derartige externe Manipulationen ist die doppelte oder mehrfache Ausführung von Sicher- heitsapplikationen 9, 10, die mittels einer sicherheitsrelevanten Prüfung eine Voraussetzung zur Ausführung einer Anwendungsapplikation 11 prüfen, wie z.B. eine durch Authentisierung oder Identifikation eines Benutzers nachzuweisende Ausführungsberechtigung der Anwendungsapplikation 11. Falls eine Sicherheitsapplikation 9, 10 bei ihrer Ausführung als Sicher heits- prozess 13, 14 manipuliert wird, kann das durch einen Vergleich mit den Ergebnissen der Ausführung der gleichen oder anderer Sicherheitsapplikationen 9, 10 festgestellt werden. Die Steuereinrichtung 8 der Chipkarte 1 lässt dann die weitere Ausführung einer Anwendungsapplikation 11 als Anwen- dungsprozess 15 nur zu, wenn die Ergebnisse der Sicherheitsapplikationen 9, 10 übereinstimmen, da nicht übereinstimmende Ergebnisse unmittelbar auf Manipulationen hindeuten.

So ist es beispielsweise möglich, eine Sicherheitsapplikation 9 der Chipkarte 1 durch das Betriebssystem 7 oder dessen Steuereinrichtung 8 als zwei re-

dundante Sicherheitsprozesse 13 und 14 durchzuführen und deren Ergebnisse anschließend zu vergleichen. Ein solcher Sicherheitsprozess 13, 14 kann beispielsweise die überprüfung von vom Benutzer bereitgestellten Authenti- sierungsdaten mit im EEPROM-Speicher 5 der Chipkarte 1 hinterlegten Refe- renzdaten 12 umfassen. Falls eine solche Authentisierung durch zwei identische Sicherheitsprozesse 13 und 14 übereinstimmende positive Ergebnisse erbringt, ist die Voraussetzung zur Ausführung der Anwendungsapplikation 11 gegeben, welche anschließend von der Steuereinrichtung 8 als Anwen- dungsprozess 15 auf dem Prozessor 2 der Chipkarte 1 ausgeführt wird. E- benso ist es möglich, dass zwei verschiedene Sicherheitsapplikationen 9, 10 ausgeführt werden, indem beispielsweise die Sicherheitsapplikation 9 ein biometrisches Merkmal des Benutzers mit biometrischen Referenzdaten 12 vergleicht und eine Sicherheitsapplikation 10 eine vom Benutzer bereitgestellte Zugangskennung oder PIN-Nummer mit einer auf der Chipkarte 1 hinterlegten Referenznummer 12 vergleicht.

Da es sich bei portablen Datenträgern wie zum Beispiel der Chipkarte 1 um in ihren Rechenkapazitäten relativ eingeschränkte Systeme handelt, kann das sequentielle zwei- oder mehrfache Ausführen eines mitunter relativ rechen- aufwendigen Authentisierungsverfahrens durch zwei separate Sicherheitsprozesse 13, 14 zu inakzeptablen Rechenzeiten bei der Ausführung der Anwendungsapplikation 15 führen. Dies ist insbesondere dann relevant, wenn solche Sicherheitsüberprüfungen von portablen Datenträgern im Rahmen von Massenabfertigungen auf Flughäfen, Bahnhöfen oder Großveranstaltun- gen durchgeführt werden müssen. Es ist insofern sinnvoll, eine Möglichkeit zu schaffen, eine in Form eines Anwendungsprozesses 15 von dem Prozessor 2 ausgeführte Anwendungsapplikation 11 bereits zu starten, bevor die Ausführungsvoraussetzung der Anwendungsapplikation 11 durch sämtliche Sicherheitsprozesse 13, 14 bestätigt wird.

Figur 2 zeigt verschiedene Ausführungsalternativen der vorliegenden Erfindung, welche dieses Ziel mit Hilfe von zeitlicher Prozessoptimierung erreichen. Das gemeinsame Prinzip der drei in Figur 2 illustrierten Prozessaus- führungsstrategien ist, eine vorzeitige Ausführung eines Anwendungsprozesses 15 bereits zu ermöglichen, d.h. bevor die Sicherheitsprozesse 13, 14 übereinstimmend das Vorliegen der Voraussetzung zur Ausführung des Anwendungsprozesses 15 festgestellt haben. Dieses Prinzip ist nicht nur auf den Fall eines von einem Authentisierungsprozess abgesicherten Anwen- dungsprozesses anwendbar, sondern prinzipiell auf jeden Prozess, der in seiner Ausführung von Ergebnissen anderer Prozesse abhängig ist.

Bei der in Figur 2a skizzierten Ausführungsalternative wird zunächst ein Sicherheitsprozess 13 von der Steuereinrichtung 8 gestartet. Wenn der Si- cherheitsprozess 13 zum Zeitpunkt a das Vorliegen einer Ausführungsvoraussetzung des Anwendungsprozesses 15 feststellt, werden im Anschluss der zweite Sicherheitsprozess 14 und der Anwendungsprozess 15 von der Steuereinrichtung 8 im wesentlichen gleichzeitig zum Zeitpunkt a nebenläufig gestartet. Der Anwendungsprozess 15 wird also gestartet, bevor auch die Feststellung der Voraussetzung durch den zweiten Sicherheitsprozess 14 vorliegt.

Bei dem nebenläufigen quasi-parallelen Ausführen der Prozesse 14, 15 weist die Steuereinrichtung 8 den jeweils nebenläufig auszuführenden Prozessen 14, 15 abhängig von vorgegebenen oder einstellbaren Ausführungsprioritäten Rechenzeit des Prozessors zu und steuert dadurch die Abarbeitungsgeschwindigkeit der beiden Prozesse 14, 15. Falls dem Anwendungsprozess 15 eine hohe Priorität eingeräumt wird und dem Sicherheitsprozess 14 eine niedrige Priorität, erhält der Anwendungsprozess 15 entsprechend mehr Re-

chenzeit des Prozessors zugewiesen als der Sicherheitsprozess 14. Durch diese Bevorzugung kann der Anwendungsprozess schneller ausgeführt werden als der nebenläufig ausgeführte Sicherheitsprozess 14.

Die diesem Vorgehen zugrunde liegende überlegung ist, dass durch das Feststellen des Vorliegens der Ausführungsvoraussetzung eines Anwendungsprozesses 15 von zumindest einem Sicherheitsprozess 13 bereits ein starkes Indiz einer tatsächlichen Ausführungsberechtigung des Anwendungsprozesses 15 vorliegt, welches durch die weiter auszuführenden Si- cherheitsprozesse 14 wahrscheinlich bestätigt wird. Falls also eine erste Ausführungsberechtigung vorliegt, ist die Wahrscheinlichkeit, dass Ergebnisse eines unberechtigt ausgeführten Anwendungsprozesses 15 revidiert werden müssen, relativ gering.

Im den Beispielen der Figur 2 repräsentiert der Zeitpunkt a den Zeitpunkt, zu dem der Anwendungsprozess 15 gestartet werden kann, weil der Sicherheitsprozess 13 eine erste Voraussetzung festgestellt hat. Der Zeitpunkt b repräsentiert die Beendigung des Anwendungsprozesses 15 und das vollständige Vorliegen der Ergebnisse des Anwendungsprozesses 15, die bei- spielsweise in Form von ermittelten und an eine Gegenstelle zu übertragenden Daten oder bestimmten Anweisungen zur Ausführung anderer Applikationen der Chipkarte 1 oder einer Gegenstelle bestehen können.

Da der Sicherheitsprozess 14 zum Zeitpunkt b noch nicht beendet ist und insofern die Ausführungs Voraussetzung noch nicht von allen Sicherheitsprozessen 13, 14 übereinstimmend festgestellt wurde, können diese Ergebnisse zum Zeitpunkt b jedoch zumindest dann nicht ungesetzt und/ oder weiterverarbeitet werden, wenn diese Weiterverarbeitung eine unwiderrufliche und unumkehrbare Außenwirkung entfalten würde, z.B. das Abschließen

einer Kontotransaktion. In dem schraffiert dargestellten Zeitintervall zwischen den Zeitpunkten b und c hat der Anwendungsprozess 15 bereits Ergebnisse vorgelegt, die jedoch aus Sicherheitsgründen noch nicht weiterverarbeitet und umgesetzt werden können. Dies geschieht erst wenn auch der zweite Sicherheitsprozess 14 die Ausführungsberechtigung des Anwendungsprozesses 15 festgestellt hat und die Ergebnisse des Anwendungsprozesses 15 insofern verifiziert sind.

Die in Figur 2b skizzierte Ausführungsalternative zeigt ein Szenario, bei dem die beiden Sicherheitsprozesse 13, 14 im wesentlichen gleichzeitig von der Steuereinrichtung 8 auf dem Prozessor 2 gestartet und nebenläufig ausgeführt werden. Hierbei ist es einerseits möglich, nahezu gleiche Ausführungsprioritäten einzurichten. Es kann jedoch sinnvoller sein, die Ausführungsprioritäten der Sicherheitsprozesse 13, 14 unterschiedlich zu gestalten, damit zumindest einer der Sicherheitsprozesse 13, 14 schnell beendet wird, um den Anwendungsprozess 15 anschließend möglichst frühzeitig starten zu können. Sinnvoll ist dies beispielsweise bei Sicherheitsprozessen 13, 14, die verschiedene Sicherheitsprüfungen realisieren, z.B. eine Fingerabdruckprüfung und die überprüfung einer PIN. Es kann dann nämlich von der Steuerein- richtung demjenigen Prozess eine höhere Priorität zugeteilt werden, dessen Ergebnis verlässlicher ist, im genannten Beispiel also dem die biometrische überprüfung durchführenden Sicherheitsprozess.

Bei der Ausführungsalternative der Figur 2b wird der Sicherheitsprozess 13 zum Zeitpunkt a mit der Feststellung eines Vorliegens der Ausführungsvoraussetzung beendet, so dass der Anwendungsprozess 15 zum Zeitpunkt a nebenläufig mit dem noch bearbeiteten Sicherheitsprozess 13 gestartet werden kann. Während der Abarbeitung des Anwendungsprozesses 15 wird auch der Sicherheitsprozess 14 beendet und es liegt bei Beendigung des An-

wendungsprozesses 15 zum Zeitpunkt c eine übereinstimmend festgestellte Berechtigung vor, so dass die Ergebnisse des Anwendungsprozesses 15 sofort weiterverarbeitet werden können.

Da der Anwendungsprozess 15 wie in dem Beispiel der Figur 2a bereits vor Vorliegen einer übereinstimmend festgestellten Berechtigung (Zeitpunkt c) beendet wird (Zeitpunkt b), ist es möglich, dass ein noch nicht beendeter Si- cherheitsprozess 14 später zu dem Ergebnis kommt, dass die Ausführungsvoraussetzung des Anwendungsprozesses 15 nicht vorliegt, so dass bereits Ergebnisse des Anwendungsprozesses 15 vorliegen. Diese Ergebnisse dürfen nur dann vor Beendigung des zweiten Sicherheitsprozesses 14 weiterverarbeite werden, wenn sie keine unwiderrufliche Wirkung nach Außen haben, die im Falle eines negativen Ergebnisses des zweiten Sicherheitsprozesses 14 dann nicht mehr rückgängig gemacht werden könnte. In diesem Fall werden alle Ergebnisse des Anwendungsprozesses 15 (z.B. geschriebenen Daten) e- liminiert und sämtliche vorbehaltlich einer späteren übereinstimmend festgestellten Voraussetzung ausgeführten Schritte des Anwendungsprozesses 15 werden derart rückgängig gemacht, dass der Zustand der Chipkarte 1 vor Beginn des Anwendungsprozesses 15 (Zeitpunkt a) wieder hergestellt wird.

Falls der Anwendungsprozess 15 eine Prozesssequenz ist, die eine logische/funktionale Einheit bildet, wird bei einem negativen Ergebnis des zweiten Sicherheitsprozesses 14 eine Fehlermeldung an den aktuell ausgeführten Prozess der Sequenz gemeldet, der dadurch zusammen mit allen Subrouti- nen und Unterprogrammen beendet wird. Gleichzeitig werden die Ergebnisse der bisher ausgeführten Prozesse rückgängig gemacht, was praktischerweise durch eine Betriebsystemroutine der Chipkarte 1 erledigt werden kann.

Figur 3 illustriert eine Interaktion zwischen einer Chipkarte 1 und einer Gegenstelle 20, beispielsweise einem Geldkartenterminal oder einer sonstigen Chipkartenleseeinrichtung zur Identifikation eines Benutzers der Chipkarte 1. Die Steuereinrichtung 8 nimmt hierbei diejenige Prozesssteuerung vor, die in dem oberen Beispiel der Figur 2 illustriert ist.

Ein Benutzer, der mit seiner Chipkarte 1 eine Dienstleistung der Gegenstelle 20 in Anspruch nehmen möchte oder sich gegenüber der Gegenstelle 20 zur Vornahme der Dienstleistung identifiziert, beginnt den Vorgang mit dem Anschließen der Chipkarte 1 an die Gegenstelle 20. Dies wird in der Regel durch Einführen der Chipkarte 1 in eine Kartenieseeinrichtung der Gegenstelle 20 durchgeführt, wodurch eine Datenkommunikationsverbindung zwischen korrespondierenden Schnittstellen 3, 21 der Chipkarte 1 und der Gegenstelle 20 hergestellt wird.

In Schritt Sl wird zunächst ein bestimmtes Signal von der Chipkarte 1 oder ihrer Steuereinrichtung 8 an die Gegenstelle 20 gesendet, um dort den gesamten Vorgang des Inanspruchnehmens einer Dienstleistung oder Identifi- zierens des Benutzers zu initiieren. Die Dienstleistung wird von der Chipkar- te 1 durch Ausführen der Anwendungsapplikation 11 vorbereitet, um die Dienstleistung anschließend bei der Gegenstelle 20 zu bewirken. Falls die Chipkarte 1 beispielsweise eine Konto- oder Bankkarte und die Gegenstelle 20 ein Bank- oder Geldautomat sind, kann die bewirkte Dienstleistung eine Geldüberweisung oder das Auszahlen eines Bargeldbetrags sein. Die An- wendungsapplikation 11 bereitet die Dienstleistung dann vor, indem Kontodaten des Benutzers an die Gegenstelle 20 übertragen werden. Falls die Chipkarte 1 eine reine Identifikationskarte ist und die Gegenstelle 20 eine Zugangseinrichtung, die autorisierten Personen einen Zugang zu einem Raum oder Gebäude gewährt, oder eine Identifikationseinrichtung ist, die im

Rahmen z.B. einer Grenzabfertigung oder polizeilichen überprüfung eine Personalienüberprüfung durchführt, besteht die Dienstleistung darin, den Zugang freizuschalten oder die Grenzabfertigung durchzuführen. Die Anwendungsapplikation 11 überträgt dann zum Einleiten der Dienstleistung persönliche Identifikationsdaten an die Gegenstelle 20. Im Rahmen der

Durchführung der vom Benutzer der Chipkarte gewünschten Dienstleistung kann die Gegenstelle 20 auch Daten an die Chipkarte 1 übertragen, z.B. wenn die Gegenstelle 20 eine zugangsbeschränkte Datenbank ist, die mittels der Chipkarte 1 abgefragt werden kann.

Im Beispiel der Figur 3 werden in Reaktion auf das initiale Signal der Chipkarte 1 in Schritt Sl Authentisierungsdaten 24 des Benutzers der Chipkarte 1 erhoben, die von den Sicherheitsprozessen 13, 14 benötigt werden, um die Ausführungsberechtigung der Anwendungsapplikation 14 festzustellen. Dies kann beispielsweise dadurch geschehen, dass biometrische Daten des Benutzers, beispielsweise ein Irismuster, ein Fingerabdruck, ein Gesichts- portrait oder ein Stimmprofil, mittels geeigneten optischen, akustischen oder sonstigen Sensoren 23 erhoben werden und mittels eines Mustererkennungsund/ oder Merkmalsextraktionsprozesses in ein verarbeitbares digitales Da- tenf ormat transformiert werden.

Die von der Gegenstelle 20 erhobenen Authentisierungsdaten 24 werden in Schritt S2 an die Chipkarte 1 übertragen, um sie dort mittels der Sicherheitsprozesse 13, 14 mit auf der Chipkarte 1 hinterlegten Referenzdaten 12 zu vergleichen. Ein derartiges „On-Card-Matching", also das Abgleichen von Authentisierungs- und Referenzdaten 24, 12 auf der Chipkarte 1, wird mittels spezialisierter Authentisierungs- und/ oder Vergleichsalgorithmen durchgeführt, die in Form einer Sicherheitsapplikation 9, 10 im EEPROM- Speicher 5 der Chipkarte 1 hinterlegt sind. Beispielsweise implementiert die

Sicherheitsapplikation 9 eine algorithmisch aufwändige Fingerabdrucksprüfung durch einen Vergleich von Vergleichsminutien 24 und Ref erenzminu- tien 12, während die Sicherheitsapplikation 10 eingerichtet ist, eine manuell eingegebene Kennzahl oder PIN mit einer Referenzkennzahl zu vergleichen.

Sobald die Authentisierungsdaten 24 vollständig auf der Chipkarte 1 vorliegen, startet die Steuereinrichtung 8 die Sicherheitsapplikation 9 als Sicher- heitsprozess 13 auf dem Prozessor I 1 um den Vergleich zwischen den Authentisierungsdaten 24 und den hinterlegten Referenzdaten 12 tatsächlich vorzunehmen. Die Prozesse 13, 14, 15 sind als Zeitdiagramme im RAM- Arbeitspeicher 6 illustriert, da der Prozessor für alle von ihm ausgeführten Prozesse 13, 14, 15 einen Arbeitsspeicherbereich belegt, in dem Verwaltungsund Nutzdaten temporär abgelegt werden, die während der Ausführung anfallen.

Der Sicherheitsprozess 13 wird im Beispiel der Figur 3 von der Steuereinrichtung 8 mit der höchsten Priorität ausgeführt, um ihn durch Zuweisung der maximalen Prozessorzeit möglichst schnell abzuarbeiten. Falls der Sicherheitsprozess 13 die Ausführungsberechtigung feststellt, kann mit ausrei- chend hoher Wahrscheinlichkeit angenommen werden, dass die Ausführungsberechtigung auch tatsächlich gegeben ist und von dem zweiten (und gegebenenfalls weiteren) Sicherheitsprozess(en) 14 wahrscheinlich bestätigt wird. Die nebenläufige Ausführung des Anwendungsprozesses 15 bereits vor Vorliegen der von allen Sicherheitsprozessen 13, 14 übereinstimmend festgestellten Ausführungsvoraussetzung birgt somit nur ein vergleichsweise geringes Fehlerrisiko. Diese Variante der nebenläufigen Prozessabarbeitung (Fig. 2a) ist gegenüber den alternativen Varianten der Figur 2b insofern prozessökonomischer, da dort die zügige Ausführung des ersten Sicherheitspro-

zesses 13 durch die gleichzeitige nebenläufige Ausführung des zweiten Sicherheitsprozesses 14 verhindert wird.

Zum Zeitpunkt a liegt das Ergebnis des ersten Sicherheitsprozesses 13 in Form der Feststellung der Berechtigung zur Ausführung der Applikation 11 vor. Es werden nun der zweite Sicherheitsprozess 14 und der Anwendungs- prozess 15 im Wesentlichen gleichzeitig von der Steuereinrichtung 8 gestartet und nebenläufig auf dem Prozessor 2 ausgeführt.

Die Wirkung des Anwendungsprozesses 15 umfasst ein Einleiten einer Kontotransaktion bei der Gegenstelle 20, indem im EEPROM-Speicher 5 vorliegende, persönliche und kontobezogene Daten des Benutzers zusammengetragen und gegebenenfalls in ein von der Gegenstelle 20 verarbeitbares Format formatiert werden, um sie als Transaktionsdaten an die Gegenstelle 20 zu übertragen. Zum Zeitpunkt b liegen schließlich die Ergebnisse 16 des

Anwendungsprozesses 15 im EEPROM-Speicher 5 vor. Eine Weiterverarbeitung der Ergebnisse 16 sowohl von der Chipkarte 1 als auch von der Gegenstelle 20 - sofern sie keine unmittelbare Außenwirkung z.B. in Form einer Bargeldauszahlung entfaltet - kann nur vorbehaltlich der Feststellung der Ausführungsberechtigung auch durch den zweiten Sicherheitsprozess 14 durchgeführt werden. Falls der zweite Sicherheitsprozess 14 die Berechtigung abschließend verweigert, werden die Ergebnisse 16 gelöscht und sämtliche Schritte des Anwendungsprozesses 15 annulliert.

Im Beispiel der Figur 3 entfalten die Ergebnisse 16 des Anwendungsprozesses keine unmittelbare Außenwirkung, da diese lediglich zur Vorbereitung einer Transaktion durch die Gegenstelle 20 an diese übertragen werden. Da jedoch die Außenwirkung entfaltende Transaktion auf der Gegenstelle 20 nicht unwiderruflich umgesetzt werden darf, werden die Ergebnisse 16 zum

Zeitpunkt b in Schritt S3 an die Gegenstelle 20 zusammen mit einer Vorbehaltsanweisung 17 übermittelt, die der Gegenstelle 20 signalisiert, dass bei der Weiterverarbeitung der Ergebnisse 16 erzielte Weiterverarbeitungsergebnisse noch nicht mit Außenwirkung umgesetzt werden dürfen, sondern zunächst der Empfang einer Umsetzungsanweisung 18 von der Chipkarte 1 abzuwarten ist.

Als Reaktion auf den Empfang der Ergebnisse 16 bzw. der Transaktionsdaten der Chipkarte 1 wird auf der Gegenstelle 20 eine im Speicher 25 liegende Applikation 27 als von dem Prozessor 22 auszuführender Prozess 28 gestartet. Der Prozess 28 bewirkte die gewünschte Transaktion mit Hilfe der empfangenen Transaktionsdaten 16 und möglicherweise weiterer Daten, die der Benutzer beispielsweise über ein Tastenfeld an der Gegenstelle 20 eingegeben hat, z.B. ein überweisungsbetrag. Die Weiterverarbeitung der empfan- genen Ergebnisse 16 durch den Prozess 28 kann von der Gegenstelle 20 bereits vorbereitet werden, z.B. indem die in Form von Transaktionsdaten vorliegenden Ergebnisse 16 bereits bestimmten Manipulationen unterzogen werden. Eine etwaiges Feststellen des Fehlens der Voraussetzung durch den Sicherheitsprozess 14 kann entweder durch eine explizite Verweigerungs- anweisung der Chipkarte 1 gegenüber der Gegenstelle 20 ausgesprochen werden, woraufhin die Ergebnisse 16 und eventuelle Weiterverarbeitungsergebnisse der Gegenstelle 20 von dieser zu löschen sind, oder allein dadurch erfolgen, dass eine Umsetzungsanweisung 18 der Chipkarte 1 nicht bei der Gegenstelle 20 eintrifft oder nach einer vorgegebenen Wartezeit noch nicht eingetroffen ist.

Zum Zeitpunkt c wird die Ausführung des zweiten Sicherheitsprozesses 14 von dem Prozessor 2 der Chipkarte 1 mit der Feststellung der Ausführungsvoraussetzung beendet. Daraufhin veranlasst die Steuereinrichtung 8 die

übertragung der Umsetzungsan Weisung 18 an die Gegenstelle 20, um zu signalisieren, dass nunmehr die Voraussetzung zur Ausführung der Anwendungsprozesse 15, 28 übereinstimmend festgestellt wurden etwaige Weiterverarbeitungsergebnisse von der Gegenstelle 20 unwiderruflich umgesetzt werden können.

Eine im Speicher 25 der Gegenstelle 20 vorliegende Applikation 27 kann also insofern bereits zum Zeitpunkt b, also zu dem Zeitpunkt, zu dem die Ergebnisse 16 der Anwendungsapplikation 15 vorliegen, als Prozess 28 gestartet werden, eine endgültige Umsetzung der Weiterverarbeitungsergebnisse des Prozesses 28 erfolgt allerdings erst zum Zeitpunkt c.