-
Die Erfindung betrifft ein Verfahren
zum Schutz eines tragbaren Datenträgers gemäß dem Oberbegriff des Anspruchs
1.
-
In tragbaren Datenträgern sind
häufig
geheime Daten gespeichert und/oder geheime Algorithmen implementiert.
Diese können
beispielsweise dazu verwendet werden, den Datenträger gegenüber einem
Endgerät
als echt auszuweisen, d. h. eine Authentifizierung des Datenträgers durchzuführen. Weiterhin
werden die geheimen Daten bzw. die geheimen Algorithmen für eine Authentifizierung
des Endgeräts
durch den Datenträger
benötigt.
Schließlich können die
geheimen Daten bzw. Algorithmen zur Prüfung einer Geheimzahl oder
eines biometrischen Merkmals herangezogen werden, um festzustellen, ob
ein Benutzer zur Verwendung des Datenträgers berechtigt ist, d. h.
es wird eine Authentifizierung des Benutzers durchgeführt. Um
ein Ausspähen
der beim Authentifizierungsvorgang eingesetzten geheimen Daten oder
Algorithmen zu verhindern, ist es bereits bekannt, die Anzahl der
Authentifizierungsversuche durch einen Fehlbedienungszähler zu
begrenzen. Der Fehlbedienungszähler
wird bei jedem Authentifizierungsversuch inkrementiert und bei einem
erfolgreichen Authentifizierungsversuch zurückgesetzt. Überschreitet der Fehlbedienungszähler einen Schwellwert,
so wird kein weiterer Authentifizierungsversuch mehr zugelassen.
-
Aus der
DE 43 39 460 C1 ist ein
Challenge-and-Response-Verfahren zur Authentifizierung bekannt,
die im Rahmen einer Aufladung eines Wertespeichers eines tragbaren
Datenträgers
durchgeführt
wird. Dabei wird im Datenträger
eine Sperre eingerichtet, die nur durch Verändern eines Fehlerzählerstandes
aufgehoben werden kann. Danach wird der Fehlerzählerstand geändert und
damit die Sperre aufgehoben. Mittels einer Zufallszahl eines Endgeräts und mittels
geheimer Schlüsseldaten
werden sowohl im Endgerät
als auch im Datenträger
Authentifikationsparameter ermittelt und im Datenträ ger miteinander
verglichen. Bei einer Übereinstimmung
wird die Sperrvorrichtung deaktiviert, so dass der Wertespeicher
wieder aufladbar ist und der Fehlerzähler rücksetzbar ist.
-
Der Erfindung liegt die Aufgabe zugrunde, den
Sicherheitsstandard bei tragbaren Datenträgern weiter zu erhöhen und
insbesondere den unbefugten Aufruf von kryptographischen Funktionen
einzuschränken.
-
Diese Aufgabe wird durch ein Verfahren
mit der Merkmalskombination des Anspruchs 1 gelöst.
-
Die Erfindung geht aus von einem
Verfahren zum Schutz eines tragbaren Datenträgers, wobei ein Fehlbedienungszähler vorgesehen
ist, mit dem die Anzahl der Aufrufe einer Aktion des Datenträgers erfasst
wird und wobei eine Durchführung
der Aktion nur dann zugelassen wird, wenn der Fehlbedienungszähler unterhalb
eines vorgebbaren Schwellwerts liegt.
-
Weiterhin wird bei der Erfindung
von der Erkenntnis Gebrauch gemacht, dass von einem tragbaren Datenträger in der
Regel auch Aktionen durchgeführt
werden, die nicht auf die übliche
Weise direkt mit einem Fehlbedienungszähler abgesichert werden können, bei
deren beliebig häufiger
Ausführung
aber dennoch die Gefahr einer Preisgabe geheimer Daten oder Algorithmen
besteht. Dies rührt
daher, dass für den
Einsatz eines Fehlbedienungszählers
im herkömmlichen
Sinn nur Aktionen in Frage kommen, bei deren Durchführung Daten
auf ihre Korrektheit geprüft
werden. Abhängig
vom Ergebnis der Prüfung wird
der bei jedem Aufruf der Aktion inkrementierte Fehlbedienungszähler zurückgesetzt
oder nicht. Die auf herkömmliche
Weise mit einem Fehlbedienungszähler
abgesicherten Aktionen sind zwar in der Regel besonders kritisch
im Hinblick auf ein potentielles Ausspähen, da von ihnen beispielsweise
die weitere Durchführung
der Anwendung oder der Zugriff auf Daten abhängt. Es sind aber keineswegs
die einzigen Aktionen, bei deren Ausführung geheime Daten oder Algorithmen
potentiell ausgespäht
werden können,
da auch bei anderen Aktionen, die nicht auf herkömmliche Weise mit einem Fehlbedienungszähler abgesichert
werden können,
beispielsweise Zufallszahlen erzeugt oder Verschlüsselungen
von Informationen durchgeführt
werden. Bei einer beliebig häufigen
Wiederholung dieser ungesicherten Aktionen könnte beispielsweise versucht
werden, Rückschlüsse auf
die verwendeten Prozeduren zur Generierung der Zufallszahlen oder
auf die verwendeten Schlüssel
bzw. Verschlüsselungsalgorithmen
zu ziehen. Um dies zu verhindern, wird der Fehlbedienungszähler erfindungsgemäß mehreren
Aktionen des Datenträgers
zugeordnet, indem ein Inkrementieren des Fehlbedienungszählers bei
einem Aufruf einer ersten Aktion und ein Rücksetzen des Fehlbedienungszählers bei
einer erfolgreichen Durchführung
einer zweiten Aktion erfolgt. Dies hat den Vorteil, dass sich beliebige
Aktionen des Datenträgers
mit einem Fehlbedienungszähler
gegen fortwährend
wiederholtes Aufrufen absichern lassen. Dabei ist es insbesondere
vorteilhaft, dass für
den Einsatz der Erfindung bei einem Datenträger keine Veränderung
der Spezifikation erforderlich ist.
-
Beim erfindungsgemäßen Verfahren
können die
erste Aktion und die zweite Aktion in eine Sequenz eingebunden sein,
so dass bei einem ordnungsgemäßen Betrieb
des Datenträgers
bei einer Ausführung
der ersten Aktion stets auch die zweite Aktion ausgeführt wird.
Dadurch wird sichergestellt, dass bei einem ordnungsgemäßen Betrieb
des Datenträgers
nach einem Inkrementieren des Fehlbedienungszählers stets die Möglichkeit
besteht, den Fehlbedienungszähler
zurückzusetzen.
Zwischen der ersten Aktion und der zweiten Aktion kann wenigstens
eine weitere Aktion ausgeführt
werden.
-
Dies hat den Vorteil, dass die weitere
Aktion ebenfalls mit dem Fehlbedienungszähler abgesichert werden kann.
-
In einem bevorzugten Ausführungsbeispiel wird
zu Beginn der ersten Aktion überprüft, ob der Fehlbedienungszähler unterhalb
eines Schwellwerts liegt und eine Durchführung der ersten Aktion nur dann
zugelassen, wenn die Überprüfung ein
positives Ergebnis liefert. Weiterhin wird der Fehlbedienungszähler vorzugsweise
zu Beginn der ersten Aktion inkrementiert. Die Inkrementierung kann
dabei unmittelbar vor oder unmittelbar nach der Überprüfung erfolgen. Die frühzeitige
Ausführung
dieser Sicherheitsmaßnahmen
ermöglicht
einen besonders guten Schutz vor Manipulationen.
-
Mit dem erfindungsgemäßen Verfahren
werden insbesondere erste Aktionen abgesichert, die so ausgebildet
sind, dass bei deren Durchführung
geheime Daten verarbeitet und/oder geheime Algorithmen angewendet
werden. Die erste Aktion kann beispielsweise in einer Erzeugung
einer Zufallszahl, einer Verschlüsselung
einer Zeichenfolge, einer Berechnung einer Prüfsumme oder einer Erzeugung
einer digitalen Signatur bestehen. Dabei ist die erste Aktion in
der Regel so ausgebildet, dass bei deren Durchführung vom Datenträger nicht
geprüft
wird, ob eine autorisierte Benutzung des Datenträgers vorliegt. Die zweite Aktion
ist dagegen in der Regel so ausgebildet, dass bei deren Durchführung eine
dem Datenträger übermittelte
Information geprüft
wird und der Fehlbedienungszähler
zurückgesetzt
wird, wenn die Prüfung
erfolgreich verläuft.
-
Die Erfindung wird im folgenden anhand
der in der Zeichnung dargestellten Ausführungsbeispiele näher erläutert. Die
Ausführungsbeispiele
beziehen sich jeweils auf eine Anwendungssituation, bei der einem
tragbaren Datenträger
von einem Endgerät Kommandos übermittelt
werden. Der Datenträ ger, der
beispielsweise als Chipkarte ausgebildet sein kann, arbeitet die
Kommandos ab und übermittelt
gegebenenfalls ein Ergebnis an das Endgerät. Um ein Ausspähen der
bei der Abarbeitung der Kommandos eingesetzten Daten und/ oder Algorithmen
zu verhindern, wird die Ausführung
von in dieser Hinsicht kritischen Kommandos mittels des erfindungsgemäßen Verfahrens
durch einen Fehlbedienungszähler
abgesichert. Dies wird an Hand einiger typischer Kommandosequenzen
beispielhaft erläutert.
-
Es zeigen
-
1 ein
Flußdiagramm
für eine
Kommandosequenz, die mit dem erfindungsgemäßen Verfahren abgesichert wird,
-
2 ein
Flußdiagramm
für eine
weitere Kommandosequenz, die ebenfalls mit dem erfindungsgemäßen Verfahren
abgesichert wird und
-
3 ein
Flußdiagramm
für eine
nochmals andere Kommandosequenz, die wiederum mit dem erfindungsgemäßen Verfahren
abgesichert wird.
-
In 1 ist
ein Flußdiagramm
dargestellt, anhand dessen die Absicherung eines Kommandos erläutert wird,
das als INTERNAL AUTHENTICATE bezeichnet wird. Bei der Durchführung dieses
Kommandos verschlüsselt
der Datenträger
eine Zufallszahl oder eine Zeichenfolge, die ihm zu diesem Zweck
vom Endgerät
als Klartext übermittelt
wurde, und gibt das Ergebnis der Verschlüsselung an das Endgerät aus. Ein
potentieller Angreifer könnte
dem Datenträger
dieses Kommando ausführen
lassen und dadurch den zu einem vorgegebenen Klartext zugehörigen verschlüsselten
Text ermitteln. Durch eine fortwährende
Ausführung
des Kommandos mit einer systematischen Variation des Klartextes
ließen sich
aus dem jeweils ermittelten ver schlüsselten Text möglicherweise
Rückschlüsse auf
das Verschlüsselungsverfahren
und den verwendeten Schlüssel
ziehen. Wie groß die
Erfolgsaussichten eines derartigen Angriffs sind, hängt unter
anderem von der Stärke des
Verschlüsselungsverfahrens,
von der verwendeten Schlüssellänge und
von der Anzahl der Aufrufe des Kommandos ab. Mit der im folgenden
erläuterten Vorgehensweise
kann die Anzahl der Aufrufe des Kommandos auf einige wenige begrenzt
werden, so dass der geschilderte Angriff auch bei einem relativ schwachen
Verschlüsselungsverfahren
und einem kurzen Schlüssel
nahezu aussichtslos ist.
-
Der Durchlauf des Flußdiagramms
beginnt mit einem Schritt S1, der bei einem Aufruf des Befehls INTERNAL
AUTHENTICATE als erstes ausgeführt
wird und bei dem abgefragt wird, ob der Fehlbedienungszähler FBZ
kleiner als ein vorgebbarer Schwellwert MAX ist. Falls diese Bedingung
nicht erfüllt
ist, ist der Durchlauf des Flußdiagramms
beendet, d. h. es werden weder die beim Befehl INTERNAL AUTHENTICATE
vorgesehene Verschlüsselung noch
irgendwelche anderen Befehle des Flußdiagramms ausgeführt. Falls
die Abfrage im Schritt S1 erfüllt
ist, d. h. der Fehlbedienungszähler
FBZ kleiner als der Schwellwert MAX ist, schließt sich an Schritt S1 ein Schritt
S2 an, bei dem der Fehlbedienungszähler FBZ inkrementiert wird.
Danach folgt ein Schritt S3, bei dem die eigentliche Abarbeitung
des Kommandos INTERNAL AUTHENTICATE durchgeführt wird, d. h. insbesondere
die Verschlüsselung
erfolgt. Die Zugehörigkeit
der Schritte S1, S2 und S3 zu dem Kommando INTERNAL AUTHENTICATE
wird durch eine gestrichelt dargestellte Umrahmung veranschaulicht.
-
An Schritt S3 schließt sich
ein Schritt S4 an, in dem ein mit INITIALISE bezeichnetes Kommando ausgeführt wird.
Bei diesem Kommando werden Initialisierungen durchgeführt, wobei
die Details hierzu für
die Erfindung nicht relevant sind. Auf Schritt S4 folgt mit einem
Schritt S5 die Ausführung
eines Kommandos PURCHASE, bei dem mit dem Datenträger ein
Zahlungsvorgang innerhalb einer Börsenanwendung durchgeführt wird.
Wie durch eine gestrichelte Umrahmung angedeutet ist, schließt die Ausführung des
Kommandos PURCHASE auch einen Schritt S6 und einen Schritt S7 mit
ein. Im Schritt S6, der unmittelbar auf Schritt S5 folgt, wird abgefragt
, ob die Durchführung
des Kommandos PURCHASE gemäß Schritt
S5 erfolgreich verlaufen ist. Falls dies der Fall ist, wird als
nächstes
der Schritt S7 ausgeführt,
bei dem der Fehlbedienungszähler
FBZ zurückgesetzt wird.
Mit der Ausführung
des Schrittes S7 ist der Durchlauf des Flußdiagramms beendet. Ist die
Abfrage des Schrittes S6 nicht erfüllt, so wird der Durchlauf des
Flußdiagramms
ohne Rücksetzung
des Fehlbedienungszählers
FBZ beendet.
-
Insgesamt ergibt sich somit, dass
eine Ausführung
des Kommandos INTERNAL AUTHENTICATE nur dann möglich ist, wenn der Fehlbedienungszähler FBZ
noch nicht den Schwellwert MAX erreicht hat und dass der Fehlbedienungszähler FBZ
bei jeder Ausführung
des Kommandos inkrementiert wird. Ein Rücksetzen des Fehlbedienungszählers FBZ
erfolgt nur dann, wenn das Kommando PURCHASE gemäß Schritt S5 erfolgreich ausgeführt wurde,
so dass ohne eine erfolgreiche Ausführung des Kommandos PURCHASE
die Anzahl der Ausführungen des
Kommandos INTERNAL AUTHENTICATE auf Werte unterhalb des Schwellwerts
MAX begrenzt wird. Alternativ zur Darstellung der 1 ist es auch möglich, das Rücksetzen
des Fehlbedienungszähler FBZ
an eine erfolgreiche Ausführung
des Kommandos INITIALISE zu knüpfen.
-
2 zeigt
ein Flußdiagramm
für eine
weitere Kommandosequenz, bei der wiederum das Kommando INTERNAL
AUTHENTICATE abgesichert wird. Diese Kommandosequenz zeichnet sich
dadurch aus, dass die Rücksetzung des
Fehlbedienungszählers
FBZ im Rahmen einer PIN-Prüfung
erfolgt, bei der ermittelt wird, ob eine Geheimzahl richtig eingegeben
wurde. Die Ausführungen
zu 1 gelten für diese
Kommandosequenz entsprechend und auch der Verfahrensablauf ist analog
ausgebildet. Die Schritte S8, S9 und S10 folgen in dieser Reihenfolge
aufeinander und stimmen identisch mit dem Schritten S1, S2 und S3
der 1 überein.
An Schritt S10 schließt
sich ein Schritt S11 an, in dem die PIN-Prüfung durchgeführt wird.
In einem darauffolgenden Schritt S12 wird abgefragt, ob die PIN-Prüfung erfolgreich
verlief. Wenn dies der Fall ist, wird anschließend in einem Schritt S13 der
Fehlbedienungszähler
FBZ zurückgesetzt
und der Durchlauf des Flußdiagramms
ist beendet. Andernfalls wird der Durchlauf des Flußdiagramms
ohne Zurücksetzen des
Fehlbedingungszählers
FBZ beendet. Bei diesem Ausführungsbeispiel
ist die Zugehörigkeit
der Schritte S8, S9 und S10 zum Kommando INTERNAL AUTHENTICATE sowie
der Schritte S11, S12 und S13 zur PIN-Prüfung jeweils durch eine gestrichelte Umrahmung
dargestellt.
-
3 zeigt
ein Flußdiagramm
für eine
nochmals andere Kommandosequenz, wobei ein Kommando GET CHALLENGE
abgesichert wird. Bei diesem Kommando wird eine Zufallszahl von
Datenträger
beispielsweise mit einem Kryptoalgorithmus erzeugt. Durch die Anwendung
des erfindungsgemäßen Verfahrens
soll die Generierungsprozedur gegen beliebig viele Aufrufe geschützt werden.
Auch für
die Kommandosequenz der 3 haben
die Ausführungen
zu 1 in entsprechender
Weise Gültigkeit. Gemäß dem Flußdiagramm
der 3 wird zunächst ein
Schritt S14 und dann ein Schritt S15 ausgeführt, die den Schritten S1 und
S2 der 1 identisch entsprechen.
Auf Schritt S15 folgt ein Schritt S16, der die eigentliche Durchführung des
Kommandos GET CHALLENGE repräsentiert,
d. h. die Erzeugung der Zufallszahl. Durch eine gestrichelte Umrahmung
ist verdeutlicht, dass die Schritte S14, S15 und S16 dem Kommando
GET CHALLENGE zuzuordnen sind. An Schritt S16 schließt sich
ein Schritt S17 an, in dem ein Kommando ausgeführt wird, für das sich durch den Datenträger nachprüfen lässt, ob
die Ausführung autorisiert
war. Um welches Kommando es sich dabei im einzelnen handelt, ist
zweitrangig. Als nächstes wird
in einem Schritt S18 geprüft,
ob das Kommando erfolgreich ausgeführt wurde, d. h. ob die erforderliche
Autorisierung vorlag. Die Autorisierung wird in der Regel anhand
einer dem Datenträger übermittelten
Information überprüft. Falls
die Prüfung
positiv verläuft,
schließt
sich ein Schritt S19 an, bei dem der Fehlbedienungszähler FBZ
zurückgesetzt
wird. Damit ist der Durchlauf des Flußdiagramms beendet. Ergibt
die Prüfung
in Schritt S18, dass das Kommando nicht erfolgreich durchgeführt wurde,
wird der Durchlauf des Flußdiagramms
ohne Rücksetzung des
Fehlerzählers
FBZ beendet.
-
Mit dem erfindungsgemäßen Verfahren
lassen sich nicht nur die explizit genannten Kommandos gegen ein
beliebiges Aufrufen absichern, sondern beispielsweise auch ein Kommando
CALCULATE MAC, bei dem eine Prüfsumme
berechnet wird oder ein Kommando SIGN, bei dem eine digitale Signatur erstellt
wird usw. Das Prüfen
und Inkrementieren des Fehlbedienungszählers FBZ findet dabei jeweils
bevorzugt vor der eigentlichen Ausführung des Kommandos statt,
um potentielle Manipulationen möglichst
zu erschweren.
-
Seitens des Endgeräts sind
für den
Einsatz des erfindungsgemäßen Verfahrens
keine Änderungen
erforderlich, d. h. es können
unverändert
die üblichen
Kommandos an den Datenträger übermittelt werden.
Beim Einsatz des erfindungsgemäßen Verfahrens ändert sich
lediglich die interne Abarbeitung der Kommandos im Datenträger.