Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD FOR ENABLING A CHIP CARD
Document Type and Number:
WIPO Patent Application WO/2008/046733
Kind Code:
A1
Abstract:
The invention relates to a method for enabling a first chip card (116) for use with a data processing system (100) with the aid of a second chip card (126), wherein the data processing system has means (110) for generating an integrity assessment code from predetermined data which are stored in the data processing system, said method having the following steps: - the first chip card requests (162) an enable signal (152) from the second chip card, - the integrity assessment code is requested (164) from the means (110) for generating an integrity assessment code, - the second chip card decrypts (156) a signature (118) which is associated with the data processing system, - the second chip card compares (158) the decrypted signature with the integrity assessment code, - the enable signal is generated if the decrypted signature and the integrity assessment code match, - the first chip card is enabled after the first chip card has received the enable signal.

Inventors:
BYSZIO FRANK (DE)
Application Number:
PCT/EP2007/060435
Publication Date:
April 24, 2008
Filing Date:
October 02, 2007
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
BUNDESDRUCKEREI GMBH (DE)
BYSZIO FRANK (DE)
International Classes:
G06F21/72; G07F7/10
Foreign References:
US20020144117A12002-10-03
US20050279826A12005-12-22
Attorney, Agent or Firm:
RICHARDT, Markus (Eltville am Rhein, DE)
Download PDF:
Claims:

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

1. Verfahren zum Freischalten einer ersten Chipkarte (116) zur Verwendung mit ei- nem Datenverarbeitungssystem (100) mit Hilfe einer zweiten Chipkarte (126), wobei das Datenverarbeitungssystem Mittel (110) zur Erzeugung eines Integritäts- Bewertungscodes aus vorbestimmten, in dem Datenverarbeitungssystem gespeicherten Daten aufweist, mit folgenden Schritten:

- Anforderung (162) eines Freigabesignals (152) von der ersten Chipkarte an die zweiten Chipkarte,

- Anforderung (164) des Integritäts-Bewertungscodes von den Mittel (110) zur Erzeugung eines Integritäts-Bewertungscodes,

- Entschlüsselung (156) einer dem Datenverarbeitungssystem zugeordneten Signatur (118) durch die zweite Chipkarte,

- Vergleich (158) der entschlüsselten Signatur mit dem Integritäts- Bewertungscode durch die zweite Chipkarte,

- Erzeugung des Freigabesignals, wenn die entschlüsselte Signatur und der In- tegritäts-Bewertungscode übereinstimmen,

- Freischalten der ersten Chipkarte nach Empfang des Freigabesignals durch die erste Chipkarte.

2. Verfahren nach Anspruch 1 , wobei es sich bei den Daten um ein oder mehrere Dateien (102, 104, 106, 108,...), insbesondere Betriebssystemdateien, Pro- grammdateien und/oder Registry-Dateien handelt.

3. Verfahren nach Anspruch 1 oder 2, wobei die Mittel (110) zur Erzeugung eines Integritäts-Bewertungscodes zur Durchführung einer Hash-Funktion zur Erzeugung eines Hash-Wertes mit Hilfe eines Hash-Baumes ausgebildet sind.

4. Verfahren nach Anspruch 1 , 2 oder 3, wobei die Signatur in dem Datenverarbei- tungssystem gespeichert ist und zur Entschlüsselung an die zweite Chipkarte ü- bertragen wird.

5. Verfahren nach einem der vorhergehenden Ansprüche, wobei die dem Datenverarbeitungssystem zugeordnete Signatur mit einem privaten Schlüssel eines Herausgebers der ersten Chipkarte erzeugt worden ist und wobei in dem Datenverarbeitungssystem und/oder in der zweiten Chipkarte ein Zertifikat (120) gespeichert ist, welches den dem privaten Schlüssel zugeordneten öffentlichen Schlüssel be- inhaltet.

6. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Mittel (110) zur Erzeugung eines Integritäts-Bewertungscodes als separates Hardware-Modul ausgebildet sind.

7. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Freigabesignal über eine gesicherte Kommunikationsverbindung von der zweiten Chipkarte an die erste Chipkarte übertragen wird.

8. Verfahren nach einem der vorhergehenden Ansprüche, wobei das Freigabesignal von der zweiten Chipkarte an die erste Chipkarte mittels Secure Messaging übertragen wird.

9. Verfahren nach einem der vorhergehenden Ansprüche, mit einseitiger oder ge- genseitiger Card-to-Card (C2C) Authentisierung der ersten und zweiten Chipkarten.

10. Verfahren nach einem der vorhergehenden Ansprüche, wobei die erste Chipkarte eine erste und eine zweite Chipkarten-Funktion hat, und wobei die erste Chipkarte Mittel (148) zur Authentifizierung eines Nutzers hat, wobei eine Freischaltung der ersten Chipkarten-Funktion die Authentifizierung des Nutzers voraussetzt, und eine Freischaltung der zweiten Chipkarten-Funktion die Authentifizierung des Nutzers und den Empfang des Freigabesignals voraussetzt.

11. Verfahren nach Anspruch 10, wobei es sich bei der ersten Chipkarten-Funktion um eine Signaturfunktion und bei der zweiten Chipkarten-Funktion um eine Mas- sensignaturfunktion handelt.

12. Verfahren nach Anspruch 11 , wobei das Datenverarbeitungssystem ein Anwendungsprogramm zur Eingabe und/oder Erzeugung von Patientendaten aufweist, wobei die Patientendaten mit Hilfe der ersten Chipkarten-Funktion oder der zweiten Chipkarten-Funktion signiert werden.

13. Verfahren nach Anspruch 12, wobei das Anwendungsprogramm zur Erzeugung eines elektronischen Rezepts (166) ausgebildet ist, wobei das elektronische Rezept mit Hilfe der ersten Chipkarten-Funktion oder der zweiten Chipkarten- Funktion signiert wird, und das signierte elektronische Rezept auf einer elektronischen Gesundheitskarte gespeichert wird.

14. Verfahren nach einem der vorhergehenden Ansprüche, wobei es sich bei der ersten Chipkarte um einen Heilberufsausweis (HBA) und bei der zweiten Chipkarte um eine Security Module Card (SMC) handelt.

15. Chipkarte mit

- ersten und zweiten Chipkarten-Funktionen,

- Mitteln (148) zur Authentifizierung eines Nutzers,

- Mitteln zum Empfang eines Freigabesignals (152) von einer anderen Chipkarte über eine gesicherte Kommunikationsverbindung,

- Mitteln (146, 148, 150) zur Freischaltung der ersten Chipkarten-Funktion nach einer Authentifizierung des Nutzers und zur Freischaltung der zweiten Chipkarten-Funktion, wenn nach der Authentifizierung des Nutzers das Freigabesignal empfangen wird.

16. Chipkarte nach Anspruch 15, wobei es sich bei der ersten Chipkarten-Funktion um eine Signaturfunktion und bei der zweiten Chipkarten-Funktion um eine Massen- signaturfunktion handelt.

17. Chipkarte nach Anspruch 16, wobei die zweite Chipkarten-Funktion zur Massensignatur von elektronischen Rezepten (166) ausgebildet ist.

18. Chipkarte nach Anspruch 15, 16 oder 17, wobei es sich um einen Heilberufsausweis (HBA) handelt.

19. Chipkarte mit

- Mitteln (156) zur Entschlüsselung einer Signatur (118), die einem Datenverarbeitungssystem zugeordnet ist,

- Mitteln (158) zum Vergleich eines von der Datenverarbeitungsanlage gelieferten Integritäts-Bewertungscodes mit der entschlüsselten Signatur,

- Mitteln (154) zur Erzeugung eines Freigabesignals (152) für eine andere Chipkarte (116), die zur Verwendung mit dem Datenverarbeitungssystem vorgesehen ist.

20. Chipkarte nach Anspruch 19, mit Mitteln (128) zur übertragung des Freigabesignals an die andere Chipkarte über eine gesicherte Kommunikationsverbindung.

21. Chipkarte nach Anspruch 19 oder 20, wobei es sich um eine Security Module Card (SMC) handelt.

22. Datenverarbeitungssystem mit

- Mitteln (110) zur Erzeugung eines Integritäts-Bewertungscodes (160) aus vorbestimmten, in dem Datenverarbeitungssystem gespeicherten Daten,

- Mitteln (122) zum Empfang einer Anforderung (162) einer ersten Chipkarte (116),

- Mitteln (124) zur übertragung des Integritäts-Bewertungscodes (160) und einer dem Datenverarbeitungssystem zugeordneten Signatur (118) an eine zweite Chipkarte (126),

- Mitteln (128) zur übertragung eines von der zweiten Chipkarte erzeugten Freigabesignals (152) an die erste Chipkarte zur Freischaltung einer Chipkartenfunktion der ersten Chipkarte.

23. Datenverarbeitungssystem nach Anspruch 22, wobei die Mittel (110) zur Erzeugung eines Integritäts-Bewertungscodes (160) als separates Hardware-Modul ausgebildet sind.

24. Datenverarbeitungssystem nach Anspruch 22 oder 23, mit Mitteln zum Aufbau einer Secure Messaging Kommunikationsverbindung zwischen den ersten und zweiten Chipkarten.

Description:

Verfahren zum Freischalten einer Chipkarte

B e s c h r e i b u n g

Die Erfindung betrifft ein Verfahren zum Freischalten einer Chipkarte, Chipkarten und ein Datenverarbeitungssystem.

Die Freischaltung einer Chipkarte erfolgt im Stand der Technik üblicherweise durch Au- thentifizierung des Benutzers gegenüber der Chipkarte, beispielsweise indem der Nutzer seine Personal Identification Number (PIN) oder ein biometrisches Merkmal über einen Fingerabdrucksensor eingibt. Beim Einsatz einer Chipkarte zur Erzeugung von elektronischen Signaturen ist es aus Sicherheitsgründen im Allgemeinen erforderlich, dass sich der Nutzer vor jeder Signatur erneut gegenüber der Chipkarte authentifiziert.

Aus dem Stand der Technik sind auch Chipkarten für die Durchführung von so genannten Massensignaturverfahren bekannt. Bei einem Massensignaturverfahren kann die Chipkarte nach dem Freischalten eine beliebige Anzahl von elektronischen Signaturen erzeugen. Um die erforderliche Sicherheit für die Durchführung von Massensignaturver- fahren zu gewährleisten, dürfen solche Verfahren nur in einer sicheren Umgebung, insbesondere einem so genannten Trust-Center oder einer trusted Computing platform, ablaufen. Die Einhaltung der Anforderungen an die sichere Umgebung obliegt dabei dem Betreiber, da die Erfüllung dieser Anforderungen nicht durch die Chipkarte überprüft werden kann.

Aus dem Stand der Technik sind Verfahren zur Prüfung der Integrität eines Datenverarbeitungssystems bekannt, insbesondere aus US 5,421 ,006; US 5,537,540 und US 5,944,821. Dabei wird nach der Installation des Datenverarbeitungssystems aus verschiedenen Dateien, insbesondere Betriebssystemdateien und Programmdateien, ein Integritäts-Bewertungscode generiert. Dieser Code wird in dem Datenverarbeitungssystem abgespeichert.

Vor einer Benutzung des Datenverarbeitungssystems wird der Code erneut generiert und mit dem abgespeicherten Code verglichen. Wenn beide Codes übereinstimmen, gilt die Integrität des Datenverarbeitungssystems als erwiesen. Als Integritäts-

Bewertungscodes eignen sich beispielsweise so genannte Prüfsummen („Check Sums") und Hash-Werte, die auch als Modification Detection Codes (MDCs), kryp- tographische Prüfsummen („Cryptographic Check Sums"), kryptographische Hash- Werte („Cryptographic Hashes"), „Message Digests" oder „Secure Hash Values" be- zeichnet werden.

Der Erfindung liegt demgegenüber die Aufgabe zugrunde, ein verbessertes Verfahren zum Freischalten einer Chipkarte zur Verwendung mit einem Datenverarbeitungssystem zu schaffen sowie entsprechende Chipkarten und ein Datenverarbeitungssystem.

Durch die Erfindung wird ein Verfahren zum Freischalten einer ersten Chipkarte zur Verwendung mit einem Datenverarbeitungssystem mit Hilfe einer zweiten Chipkarte, wobei das Datenverarbeitungssystem Mittel zur Erzeugung eines Integritäts- Bewertungscodes aus vorbestimmten, in dem Datenverarbeitungssystem gespeicherten Daten aufweist, geschaffen. Das Verfahren hat die folgenden Schritte: Anforderung ei-

nes Freigabesignals von der ersten Chipkarte an die zweiten Chipkarte, Anforderung des Integritäts-Bewertungscodes von den Mitteln zur Erzeugung eines Integritäts- Bewertungscodes, Entschlüsselung einer dem Datenverarbeitungssystem zugeordneten Signatur durch die zweite Chipkarte, Vergleich der entschlüsselten Signatur mit dem Integritäts-Bewertungscode durch die zweite Chipkarte, Erzeugung des Freigabesignals, wenn die entschlüsselte Signatur und der Integritäts-Bewertungscode übereinstimmen, und Freischalten der ersten Chipkarte nach Empfang des Freigabesignals durch die erste Chipkarte

Die Erfindung ermöglicht es also, die Prüfung der Sicherheit und Integrität eines Datenverarbeitungssystems mit in die Freischaltprozedur für eine Chipkarte einzubeziehen, wobei diese Prüfung durch eine weitere Chipkarte durchgeführt wird. Dadurch kann sichergestellt werden, dass die Freischaltung der Chipkarte für eine sicherheitskritische Funktion nur dann erfüllt ist, wenn das Datenverarbeitungssystem auf dessen Sicherheit überprüft worden ist.

Nach einer Ausführungsform der Erfindung handelt es sich bei dem Integritäts- Bewertungscode um einen Hash-Wert, der mit Hilfe einer Hash-Funktion aus mehreren Dateien des Datenverarbeitungssystems gewonnen wird, insbesondere aus ein oder mehreren vorbestimmten Betriebssystemdateien, Programmdateien und/oder Registry- Dateien.

Nach einer Ausführungsform der Erfindung wird der Hash-Wert mit Hilfe eines so genannten Hash-Baumes ermittelt. Dies hat den Vorteil, dass die Erzeugung des Hash- Wertes innerhalb kurzer Zeit erfolgen kann, auch wenn eine relativ große Anzahl von Dateien die Grundlage für die Erzeugung des Hash-Wertes bildet.

Nach einer Ausführungsform der Erfindung ist in dem Datenverarbeitungssystem die Signatur des nach der Systeminstallation oder einem Systemupdate initial ermittelten Integritäts-Bewertungscodes gespeichert. Diese Signatur ist mit dem privaten Schlüssel, zum Beispiel des Herstellers oder Betreibers des Datenverarbeitungssystems, und/oder des Herausgebers der ersten Chipkarte erzeugt worden. Ferner kann in dem Datenverarbeitungssystem der zu dem privaten Schlüssel gehörende öffentliche Schlüssel als Teil eines Zertifikats gespeichert sein.

Nach einer Ausführungsform der Erfindung hat das Datenverarbeitungssystem ein separates Hardware-Modul, welches zur Ermittlung des Integhtäts-Bewertungscodes für die Freischaltung der Chipkarte dient. Bei dem Hardware-Modul kann es sich zum Beispiel um ein EPROM handeln, auf dem ein Programm für die Generierung des Integri- täts-Bewertungscodes gespeichert ist. Das EPROM kann als separates diskretes Bauelement auf einer Platine des Datenverarbeitungssystems angeordnet sein. Dies hat den Vorteil, dass das Datenverarbeitungssystem auch gegen Manipulationen hinsichtlich der Erzeugung des Integritäts-Bewertungscodes geschützt ist.

Nach einer Ausführungsform der Erfindung erfolgt die übertragung des Freigabesignals über eine gesicherte Kommunikationsverbindung. Beispielsweise wird hierzu ein Secure Messaging Verfahren eingesetzt. Dadurch ist ein weiterer Schutz gegen Manipulationen gegeben.

Nach einer Ausführungsform der Erfindung erfolgt zwischen den Chipkarten eine so genannte Card-to-Card Authentisierung, die auch als C2C-Authentisierung bezeichnet wird. Die C2C-Authentisierung kann als einseitige oder gegenseitige Authentisierung mittels eines kryptographischen Verfahrens zwischen den beiden Chipkarten ausgebildet sein. Das Authentisierungsprotokoll bei gegenseitiger C2C-Authentisierung kann auch die Schlüsselvereinbarung für die Unterstützung eines vertrauenswürdigen Kanals (Trusted Channel - TC) mittels Secure Messaging (SM) beinhalten. C2C- Authentisierungsverfahren sind an sich aus dem Stand der Technik bekannt (vgl. Projektgruppe FuE-Projekt „Lösungsarchitektur" zur „elektronischen Gesundheitskarte", „Entscheidungsvorlage: Card-to-Card-Authentisierung", Version 1.2.5 vom 07.02.2005, Bundesministerium für Bildung und Forschung).

Nach einer Ausführungsform der Erfindung hat die Chipkarte zumindest erste und zweite Chipkarten-Funktionen, wobei beispielsweise die erste Chipkarten-Funktion weniger sicherheitskritisch als die zweite Chipkarten-Funktion ist. Zur Freischaltung der ersten Chipkarten-Funktion genügt eine übliche Authentifizierung des Nutzers, beispielsweise durch Eingabe von dessen PIN oder der Erfassung und überprüfung seiner biometrischen Informationen, wie zum Beispiel seines Fingerabdrucks.

Für die Freischaltung der zweiten Chipkarten-Funktion ist zusätzlich der Empfang des Freigabesignals von der anderen Chipkarte erforderlich. Beispielsweise handelt es sich

bei der ersten Chipkarten-Funktion um eine Signaturfunktion zum einmaligen elektronischen Signieren einer Datei. Dagegen handelt es sich beispielsweise bei der zweiten Chipkarten-Funktion um eine Massensignaturfunktion, nach deren Freischaltung eine große oder beliebige Anzahl von elektronischen Signaturen erzeugt werden kann.

Nach einer Ausführungsform der Erfindung hat das Datenverarbeitungssystem ein Anwendungsprogramm zur Eingabe und/oder Erzeugung von Patientendaten. Bei dem Anwendungsprogramm kann es sich zum Beispiel um ein so genanntes Praxisprogramm eines Arztes oder die elektronische Datenverarbeitung eines Krankenhauses oder einer anderen medizinischen Einrichtung handeln. Die Chipkarte kann nach deren Freischaltung für die Zwecke dieses Anwendungsprogramms benutzt werden, wie zum Beispiel zur elektronischen Signatur von Patientendaten, wie zum Beispiel Arztbriefen, elektronischen Rezepten und dergleichen. Ein signiertes elektronisches Rezept kann durch das Anwendungsprogramm beispielsweise über ein Netzwerk an eine Online- Apotheke übertragen werden oder auf einer elektronischen Gesundheitskarte eines Patienten gespeichert werden.

Nach einer Ausführungsform der Erfindung handelt es sich bei der ersten Chipkarte um einen so genannten Heilberufsausweis (HBA) und bei der zweiten Chipkarte um eine so genannte Security Module Card (SMC). Der HBA ist einer bestimmten Person zugeordnet, im Allgemeinen dem behandelnden Arzt, wohingegen die SMC der Institution zugeordnet ist, welche das Datenverarbeitungssystem betreibt, also beispielsweise der Arztpraxis oder dem Krankenhaus.

In einem weiteren Aspekt betrifft die Erfindung eine Chipkarte mit zumindest ersten und zweiten Chipkarten-Funktionen. Zur Freischaltung der ersten Chipkarten-Funktion ist eine Authentifizierung des Benutzers erforderlich. Zur Freischaltung der zweiten Chipkarten-Funktion ist zusätzlich der Empfang eines Freigabesignals von einer anderen Chipkarte erforderlich. Dies ermöglicht es einem Benutzer, die Chipkarte soweit deren erste Chipkarten-Funktion betroffen ist, auch außerhalb des Datenverarbeitungssystems zu verwenden. Beispielsweise handelt es sich bei der ersten Chipkarten-Funktion um eine Signaturfunktion und bei der zweiten Chipkarten-Funktion um eine Massensignaturfunktion.

Wenn es sich bei der Chipkarte um den HBA eines Arztes handelt, so kann der Arzt die Chipkarte in seiner Arztpraxis beispielsweise zum Signieren von elektronischen Rezepten mit Hilfe der Massensignaturfunktion signieren. Wenn der Arzt beispielsweise zu Hause an seinem Privat-PC einen Arztbrief erstellt, so kann er diesen ebenfalls mit Hilfe derselben Chipkarte signieren, und zwar unter Nutzung von deren ersten Chipkarten- Funktion, die ja nur eine Authentifizierung erfordert, die auch mit Hilfe des Heim-PCs erfolgen kann.

In einem weiteren Aspekt betrifft die Erfindung eine Chipkarte zur Erzeugung eines Freigabesignals für eine andere Chipkarte. Die Chipkarte entschlüsselt hierzu eine Signatur, die dem Datenverarbeitungssystem zugeordnet ist. Hierbei handelt es sich um die Signatur eines zum Beispiel initial nach der Systeminstallation des Datenverarbeitungssystems ermittelten Integritäts-Bewertungscodes. Der Integhtäts-Bewertungscode wird von dem Datenverarbeitungssystem auf der Grundlage des aktuellen Systemzu- Standes erneut ermittelt.

Der erneut ermittelte Integritäts-Bewertungscode und der durch Entschlüsselung der Signatur zurückerhaltene initiale Integritäts-Bewertungscode werden von der Chipkarte miteinander verglichen. Wenn beide Codes übereinstimmen, hat das Datenverarbei- tungssystem die Integritätsprüfung bestanden, sodass die Sicherheitsanforderungen als erfüllt gelten. Daraufhin erzeugt die Chipkarte ein Freigabesignal, welches vorzugsweise mittels Secure Messaging über das Datenverarbeitungssystem zu der anderen Chipkarte übertragen wird.

In einem weiteren Aspekt betrifft die Erfindung ein Datenverarbeitungssystem Mitteln zur Erzeugung eines Integritäts-Bewertungscodes aus vorbestimmten, in dem Datenverarbeitungssystem gespeicherten Daten, Mitteln zum Empfang einer Anforderung einer ersten Chipkarte, Mitteln zur übertragung des Integritäts-Bewertungscodes und einer dem Datenverarbeitungssystem zugeordneten Signatur an eine zweite Chipkarte und Mitteln zur übertragung eines von der zweiten Chipkarte erzeugten Freigabesignals an die erste Chipkarte zur Freischaltung einer Chipkartenfunktion der ersten Chipkarte.

Nach einer Ausführungsform der Erfindung handelt es sich bei dem Datenverarbeitungssystem um ein Praxis-EDV-System einer Arztpraxis oder einer anderen medizini- sehen Einrichtung oder die elektronische Datenverarbeitung eines Krankenhauses.

Im Weiteren werden Ausführungsformen der Erfindung mit Bezugnahme auf die Zeichnungen näher erläutert. Es zeigen:

Figur 1 ein Blockdiagramm einer Ausführungsform eines erfindungsgemäßen

Datenverarbeitungssystems und erfindungsgemäßer Chipkarten,

Figur 2 ein Flussdiagramm einer Ausführungsform eines erfindungsgemäßen

Verfahrens.

Die Figur 1 zeigt ein Datenverarbeitungssystem 100. In dem Datenverarbeitungssystem 100 sind verschiedene Dateien 102, 104, 106, ... gespeichert. Darunter befinden sich auch solche Dateien, die für den Betrieb des Datenverarbeitungssystems wesentlich sind, wie zum Beispiel Betriebssystemdateien, Programmdateien und/oder Registry- Dateien, und insbesondere zumindest ein Anwendungsprogramm 108.

Das Datenverarbeitungssystem hat ein Hardware-Modul 110, das zum Beispiel als EPROM realisiert sein kann. Das Hardware-Modul 110 ist zur Generierung eines In- tegritäts-Bewertungscodes aus den aktuell in dem Datenverarbeitungssystem 100 ge- speicherten Dateien oder einer vorbestimmten Teilmenge dieser Dateien ausgebildet. Im Weiteren wird ohne Beschränkung der Allgemeinheit davon ausgegangen, dass es sich bei dem Integritäts-Bewertungscode um einen Hash-Wert handelt.

In dem Hardware-Modul 110 kann ein Hash-Baum 112 spezifiziert sein. Die Ermittlung der einzelnen Hash-Werte erfolgt in dem Hardware-Modul 110 durch Ausführung einer Hash-Funktion 114. Zur Generierung eines Hash-Werts zur Prüfung der Integrität des Datenverarbeitungssystems 100 mittels des Hardware-Moduls 110 wird beispielsweise so vorgegangen, dass für bestimmte, in dem Hardware-Modul 110 spezifizierte Dateien des Datenverarbeitungssystems jeweils ein Hash-Wert berechnet wird und die einzel- nen Hash-Werte dann über den Hash-Baum 112 zusammengeführt werden, um so einen einzigen Hash-Wert zu erhalten.

Nach der Installation des Datenverarbeitungssystems 100 oder nach einem Update des

Datenverarbeitungssystems 100 durch einen hierzu autorisierten Benutzer, wird ein ini- tialer Hash-Wert auf dieselbe Art und Weise erzeugt. Dies kann mit Hilfe des Hardware-

Moduls 110 oder durch eine weitere separate Komponente erfolgen. Der initiale Hash- Wert wird digital signiert, und zwar mit einem geheimen öffentlichen Schlüssel des autorisierten Benutzers, des Betreibers des Datenverarbeitungssystems 100 und/oder des Herausgebers einer freizuschaltenden Chipkarte 116. Die Signatur 118 des initialen Hash-Wertes wird in dem Datenverarbeitungssystem 100 gespeichert. Ferner kann in dem Datenverarbeitungssystem 100 auch ein Zertifikat 120 gespeichert werden, welches den zu dem privaten Schlüssel, mit dem die Signatur 118 erzeugt worden ist, gehörenden öffentlichen Schlüssel beinhaltet.

Das Datenverarbeitungssystem hat eine Chipkarten-Schnittstelle, wie zum Beispiel ein Chipkarten-Lesegerät 122 für die Chipkarte 116 sowie eine weitere Chipkarten- Schnittstelle, wie zum Beispiel ein Chipkarten-Lesegerät 124 für eine weitere Chipkarte 126.

Das Datenverarbeitungssystem 100 hat ferner eine Secure Messaging Komponente

128 zum Aufbau eines vertrauenswürdigen Kanals für die Kommunikation zwischen den Chipkarten 126 und 116 über die Chipkarten-Lesegeräte 124 und 122 und das Datenverarbeitungssystem 100. Beispielsweise wird durch die Secure Messaging Komponente 128 zunächst eine gegenseitige C2C-Authentisierung der Chipkarten 116 und 126 vorgenommen, über die eine Schlüsselvereinbarung zwischen den Chipkarten 116 und 126 erfolgt. Auf der Basis dieser Schlüsselvereinbarung wird dann der vertrauenswürdige Kanal (TC) aufgebaut.

Das Datenverarbeitungssystem 100 kann weitere Chipkarten-Schnittstellen, wie zum Beispiel Chipkarten-Lesegeräte 130, für weitere Chipkarten 132 aufweisen.

Bei dem Datenverarbeitungssystem 100 kann es sich um einen Einzelplatzrechner, einen Servercomputer oder ein mehr oder weniger verteiltes Computersystem handeln, wobei dann die einzelnen Systemkomponenten über ein Netzwerk 134 miteinander kommunizieren können.

Die Chipkarte 116 dient zur Verwendung mit dem Anwendungsprogramm 108. Beispielsweise handelt es sich bei der Chipkarte 116, um einen so genannten Heilberufsausweis (HBA) eines Arztes.

Die Chipkarte 116 hat einen Mikroprozessor zur Ausführung von Programminstruktio- nen 136. Dazu gehören Programminstruktionen 138 zur Erzeugung einer digitalen Signatur mit Hilfe eines in einem geschützten Speicherbereich der Chipkarte 116 gespeicherten geheimen Schlüssels 140. Die Chipkarte 116 hat ferner einen elektronischen Speicher 142 zur Speicherung von ein oder mehreren signierten Dateien 144, wie z.B. einem signierten Arztbrief.

Die Chipkarte 116 hat ein Freischalt-Modul 146 zur Freischaltung von Chipkarten- Funktionen der Chipkarte 116. Hierzu beinhaltet das Freischalt-Modul 146 eine erste Prüffunktion 148 und eine zweite Prüffunktion 150.

Die erste Prüffunktion 148 des Freischalt-Moduls 146 dient zur überprüfung der Berechtigung des Benutzers, d.h. zur überprüfung von dessen Authentizität. Hierzu muss der Benutzer beispielsweise in das Chipkarten-Lesegerät 122 oder in das Datenverar- beitungssystem 100 seine PIN eingeben, die dann mit Hilfe der ersten Prüffunktion 148 auf übereinstimmung mit der gültigen PIN, die in der Chipkarte 116 gespeichert ist, verglichen wird. Wenn die eingegebene PIN zutreffend ist, wird durch die erste Prüffunktion die erste Chipkarten-Funktion freigeschaltet.

Bei der ersten Chipkarten-Funktion kann es sich um den einmaligen Aufruf der Programminstruktionen 138 für die Generierung einer einzelnen digitalen Signatur handeln. Sollen mehrere digitale Signaturen erzeugt werden, so ist in diesem Betriebsmodus jedes Mal die Eingabe und überprüfung der PIN erforderlich.

Die zweite Prüffunktion 150 dient zur überprüfung, ob die erste Prüffunktion 148 erfüllt worden ist, d.h. eine gültige PIN eingegeben worden ist, und ob zusätzlich ein Freigabesignal 152 von der Chipkarte 126 empfangen worden ist. Wenn diese beiden Bedingungen erfüllt sind, schaltet die zweite Prüffunktion 150 die zweite Chipkarten-Funktion frei. Bei der zweiten Chipkarten-Funktion kann es sich um einen Massensignaturverfah- ren handeln, bei dessen Durchführung die Programminstruktionen 138 mehrfach hintereinander aufgerufen werden können, um mehrere digitale Signaturen zu erzeugen, ohne dass vor jeder digitalen Signatur die PIN eingegeben werden muss.

Die Chipkarte 126 hat einen Mikroprozessor zur Ausführung von Programminstruktio- nen 154. Diese beinhalten Programminstruktionen 156 zur Entschlüsselung der digita-

len Signatur 118 mit Hilfe des öffentlichen Schlüssels, der in dem Zertifikat 120 gespeichert ist.

Die Programminstruktionen 158 dienen zum Vergleich des Resultats der Entschlüsse- lung der Signatur 118 mit einem von dem Datenverarbeitungssystem 100 gelieferten Hash-Wert 160. Wenn das Resultat der Entschlüsselung der Signatur 118 mit dem Hash-Wert 160 übereinstimmt, generieren die Programminstruktionen 154 das Freigabesignal 152. Die Chipkarte 126 hat ferner einen elektronischen Speicher 161 zur Speicherung des Zertifikats 120.

Bei der Chipkarte 126 kann es sich beispielsweise um eine so genannte Secure Module Card (SMC) handeln. Eine solche SMC ist nicht einem bestimmten Benutzer, sondern der Institution zugeordnet, die für das Datenverarbeitungssystem 100 verantwortlich ist und/oder dieses betreibt, beispielsweise eine Arztpraxis oder ein Krankenhaus. Das Vorhandensein der Chipkarte 126 in dem Chipkarten-Lesegerät 124 ist eine notwendige, nicht aber eine hinreichende Voraussetzung, zur Nutzung des Datenverarbeitungssystems 100, wenn die Chipkarte 126 als SMC ausgebildet ist (zu SMC vgl. TüVIT, „Anforderungen an Kartenleser für Gesundheitskarten", Jürgen Atrott, TL)V Informationstechnik GmbH).

Nachdem das Datenverarbeitungssystem 100 installiert worden ist oder nachdem ein Update in dem Datenverarbeitungssystem 100 installiert worden ist, wird ein initialer Hash-Wert aus den vorbestimmten Dateien 102, 104, 106, 108, ... des Datenverarbeitungssystems 100 generiert und mit dem privaten Schlüssel des hierzu autorisierten Benutzers signiert, sodass man die Signatur 118 erhält.

Die Chipkarte 126 wird dann in das Chipkarten-Lesegerät 124 eingeführt, um eine Kopie des Zertifikats 120 in deren Speicher 161 abzuspeichern, sodass der Chipkarte 126 der öffentliche Schlüssel zur Entschlüsselung der Signatur 118 zur Verfügung steht.

Der Arzt steckt dann seine Chipkarte 116 in das Chipkarten-Lesegerät 122 ein. Daraufhin erfolgt eine Authentisierung des Arztes, und zwar in der hier betrachteten Ausführungsform durch Eingabe einer PIN. Die erste Prüffunktion 148 prüft die Gültigkeit der PIN und schaltet gegebenenfalls die erste Chipkarten-Funktion der Chipkarte 116 frei.

Die zweite Prüffunktion 150 generiert daraufhin eine Anforderung 162, die über das Chipkarten-Lesegerät 122 an das Datenverarbeitungssystem 100 übertragen wird. Das Datenverarbeitungssystem 100 baut daraufhin mit Hilfe seiner Secure Messaging Komponente 128 einen vertrauenswürdigen Kanal zwischen der Chipkarte 116 und der Chipkarte 126 auf.

Die Anforderung 122 wird von dem Datenverarbeitungssystem 100 an die Chipkarte 126 weitergeleitet. Die Programminstruktionen 154 generieren daraufhin eine Anforderung 164 an das Datenverarbeitungssystem 100. Aufgrund der Anforderung 164 spricht das Datenverarbeitungssystem dessen Hardware-Modul 110 an, sodass dieses einen aktuellen Hash-Wert 160 aus den vorgegebenen Dateien des Datenverarbeitungssystems 100 generiert.

Dieser Hash-Wert 160 und die Signatur 180 des initial ermittelten Hash-Werts werden von dem Datenverarbeitungssystem 100 an die Chipkarte 126 übergeben. Daraufhin wird die Signatur 118 mit Hilfe der Programminstruktionen 156 entschlüsselt, und zwar unter Zuhilfenahme des in dem Zertifikat 120 gespeicherten öffentlichen Schlüssels.

Das Ergebnis der Entschlüsselung, das aufgrund der Ausführung der Programminstruk- tionen 156 ermittelt wird, wird durch Ausführung der Programminstruktionen 158 ausgewertet, indem das Ergebnis der Entschlüsselung mit dem aktuellen Hash-Wert 160 verglichen wird. Wenn das Ergebnis der Entschlüsselung der Signatur 118 mit dem Hash-Wert 160 übereinstimmt, generiert das Programm 154 das Freigabesignal 152, welches von dem Datenverarbeitungssystem 100 an die Chipkarte 116 weitergeleitet wird.

Die zweite Prüffunktion 150 schaltet dann die zweite Chipkarten-Funktion frei. Der Arzt kann dann beispielsweise mit Hilfe des Anwendungsprogramms 108 elektronische Rezepte für einen Patienten generieren. Jedes elektronische Rezept 166 (so genanntes „eRezept") wird dabei einzeln digital durch die Chipkarte 116 signiert, und zwar mit dem Massensignaturverfahren, sodass der Arzt nicht für jede digitale Signatur seine PIN erneut eingeben muss. Die signierten elektronischen Rezepte 166 werden dann über das Chipkarten-Lesegerät 130 in einem elektronischen Speicher 168 der Chipkarte 132 gespeichert. Bei der Chipkarte 132 handelt es sich beispielsweise um die elektronische Gesundheitskarte (eGK) eines Patienten.

Durch die Chipkarte 116 können auch andere Patientendaten elektronisch signiert werden, wie zum Beispiel diagnostische Daten, Befunde, Ergebnisse von Blutanalysen und/oder radiologische Daten.

Der Arzt kann die Chipkarte 116 auch außerhalb des Datenverarbeitungssystems 100 verwenden, beispielsweise mit seinem Heim-PC. Da der Heim-PC des Arztes nicht die Voraussetzungen einer Trusted Computing Platform erfüllen muss, wie es für die Verwendung des Datenverarbeitungssystem 100 mit der Chipkarte 116 der Fall ist, kann dort nur die erste Chipkarten-Funktion freigeschaltet werden, nicht aber die zweite

Chipkarten-Funktion. Der Arzt kann also beispielsweise zu Hause einen einzelnen Patientenbrief erstellen und diesen nach Eingabe seiner PIN digital signieren.

Die Figur 2 zeigt ein entsprechendes Flussdiagramm. Im Schritt 200 wird eine Sicher- heitskarte, wie zum Beispiel eine SMC (vgl. Chipkarte 126 der Figur 1 ), und eine Anwendungskarte zur Nutzung eines Anwendungsprogramms, insbesondere ein HBA (vgl. Chipkarte 116 und Anwendungsprogramm 108 der Figur 1 ) in entsprechende Chipkarten-Lesegeräte eingeführt (vgl. die Chipkarten-Lesegeräte 124 bzw. 122 der Figur 1 ).

In dem Schritt 202 erfolgt eine Authentisierung gegenüber der Anwendungskarte, beispielsweise durch Eingabe einer PIN. In dem Schritt 204 wird durch die Anwendungskarte geprüft, ob die PIN zutreffend ist. Falls dies nicht der Fall ist, erfolgt in dem Schritt 206 eine Fehlermeldung. Wenn die PIN hingegen gültig ist, wird in dem Schritt 204 durch die Anwendungskarte eine erste Chipkarten-Funktion freigeschaltet, wie zum Beispiel eine Signaturfunktion.

In dem Schritt 210 wird eine sichere Kommunikationsverbindung mittels eines Secure Messaging Verfahrens zwischen der Anwendungskarte und der Sicherheitskarte aufgebaut, insbesondere nach einer C2C-Authentisierung. In dem Schritt 212 fordert die An- wendungskarte eine Sicherheitsprüfung von der Sicherheitskarte an, um sicherzustellen, dass das Datenverarbeitungssystem vertrauenswürdig und integer ist, d.h. zum Beispiel nicht von Viren oder anderen Schad-Programmen befallen ist.

Neben dem aktuellen Hash-Wert erhält die Sicherheitskarte.

Die Sicherheitskarte fordert daraufhin die Signatur eines initial nach der Installation des Datenverarbeitungssystems oder nach einem Update erzeugten Hash-Werts (Schritt 214) und einen aktuellen Integritäts-Bewertungscode (Schritt 216), d.h. einen Hash- Wert, von dem Datenverarbeitungssystem an (vgl. Hash-Wert 160 der Figur 1 ). Dieser wird vorzugsweise von einem Hardware-Modul des Datenverarbeitungssystems generiert.

Die Signatur des Hash-Wertes wird in dem Schritt 218 mit Hilfe des entsprechenden öffentlichen Schlüssels entschlüsselt. Der öffentliche Schlüssel kann beispielsweise einem Zertifikat entnommen werden, welches in der Sicherheits-Chipkarte gespeichert ist. Alternativ kann der öffentliche Schlüssel bzw. das entsprechende Zertifikat von einem externen Server abgefragt werden.

In dem Schritt 220 wird geprüft, ob der durch Entschlüsselung gewonnene Hash-Wert mit dem aktuellen Hash-Wert, der von dem Hardware-Modul geliefert worden ist, übereinstimmt. Falls dies nicht der Fall ist, erfolgt in dem Schritt 222 eine Fehlermeldung. Liegt hingegen eine übereinstimmung vor, wird in dem Schritt 224 durch die Sicherheitskarte ein Freigabesignal generiert, welches über den vertrauenswürdigen Kanal an die Anwendungskarte übertragen wird, sodass diese in dem Schritt 226 ihre zweite Chipkarten-Funktion freischaltet, beispielsweise also eine Massensignaturfunktion.

Bezugszeichenliste

100 Datenverarbeitungssystem

102 Datei

104 Datei

106 Datei

108 Anwendungsprogramm

10 110 Hardware-Modul

112 Hash-Baum

114 Hash-Funktion

116 Chipkarte

118 Signatur

15 120 Zertifikat

122 Chipkarten-Lesegerät

124 Chipkarten-Lesegerät

126 Chipkarte

128 Secure Messaging Komponente

20 130 Chipkarten-Lesegerät

132 Chipkarte

134 Netzwerk

136 Programminstruktionen

138 Programminstruktionen

25 140 geheimer Schlüssel

142 Speicher

144 signierte Datei

146 Freischalt-Modul

148 erste Prüffunktion

30 150 zweite Prüffunktion

152 Freigabesignal

154 Programminstruktionen

156 Programminstruktionen

158 Programminstruktionen

35 160 Hash-Wert

161 elektronische Speicher

162 Anforderung

164 Anforderung

166 Rezept

168 elektronischer Speicher