Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND DEVICE FOR SECURELY PROCESSING INPUT DATA
Document Type and Number:
WIPO Patent Application WO/2010/108911
Kind Code:
A1
Abstract:
In a secure transaction module (30), input data are received from an input data apparatus (40) of a user terminal (20) and forwarded to the user terminal (20). Transaction data that the transaction module (30) receives from the user terminal (20) are forwarded, for example, to a transaction apparatus (10) provided that a comparison of the transaction data with the received input data produces a positive comparison result.

Inventors:
FINKENZELLER KLAUS (DE)
Application Number:
PCT/EP2010/053761
Publication Date:
September 30, 2010
Filing Date:
March 23, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
GIESECKE & DEVRIENT GMBH (DE)
FINKENZELLER KLAUS (DE)
International Classes:
G06F21/83; G06F21/85
Domestic Patent References:
WO1999061989A11999-12-02
WO1999061989A11999-12-02
Foreign References:
US20020070920A12002-06-13
DE102005008433A12006-08-31
EP1494103A12005-01-05
US20020070920A12002-06-13
Attorney, Agent or Firm:
KSNH PATENTANWÄLTE KLUNKER.SCHMITT-NILSON.HIRSCH (DE)
Download PDF:
Claims:
P a t e n t a n s p r ü c h e

1. Verfahren zur Absicherung einer Transaktion, die ein Nutzer durch seine Eingaben definiert, umfassend die folgenden Schritte in einem sicheren

Transaktionsmodul (30):

Empfangen (S2) von Eingabedaten von einer Eingabeeinrichtung (40) eines

Nutzerendgeräts (20); transaktionsgemäßes Verarbeiten (S8) von Transaktionsdaten, wenn eine vorgegebene Bedingung erfüllt ist; gekennzeichnet durch

Abgleichen (S5) der angeblich vom Nutzer eingegebenen, zu verarbeitenden Transaktionsdaten mit den empfangenen, tatsächlich vom Nutzer eingegebenen Eingabedaten, wobei ein positives Abgleichsergebnis die vorgegebene Bedingung ist

2. Verfahren nach Anspruch 1, gekennzeichnet durch, Empfangen (S3) der zu verarbeitenden Transaktionsdaten in dem Transaktionsmodul (30).

3. Verfahren nach Anspruch 1 oder 2 dadurch gekennzeichnet, dass der

Schritt des Abgleichens (S5) ein positives Abgleichsergebnis ergibt, wenn die Transaktionsdatenzeichen der Transaktionsdaten als Eingabedatenzeichen in den Eingabedaten enthalten sind, insbesondere auch dann wenn die Abfolge der Zeichen in den Eingabedaten und den Transaktionsdaten nicht identisch ist.

4. Verfahren nach einem der Ansprüche 1 bis 3 dadurch gekennzeichnet, dass geprüft wird, ob die Abfolge der Transaktionsdatenzeichen in den Transaktionsdaten gegenüber einer abweichenden Abfolge der entsprechenden Zeichen in den Eingabedaten ein vorbestimmtes Kriterium erfüllt.

5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch ge- kennzeichnet, dass in mehreren Eingabedatenempfangsschritten Eingabedatenanteile der Eingabedaten empfangen werden und zumindest ein Transaktionsdatenanteil der Transaktionsdaten in zumindest einem Transaktionsda- tenempfangsschritt empfangen wird, wobei die Transaktionsdaten mit den mehrere Eingabedatenanteile umfassenden Eingabedaten abgeglichen wer- den.

6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass die Transaktionsdatenanteile mit jeweils entsprechenden Eingabedatenanteilen abgeglichen werden, wobei vorzugsweise als Eingabedatenanteil zumindest ein Eingabedatenzeichen der Eingabedaten und/ oder als Transaktionsdatenanteil zumindest ein Transaktionsdatenzeichen der Transaktionsdaten empfangen wird.

7. Verfahren nach einem der Ansprüche 1 bis 6, dadurch gekennzeich- net, dass in einem ersten Transaktionsdatenempfangsschritt ein Transaktionsdatenzeichen empfangen wird und in jedem weiteren Transaktionsdaten- empf angsschritt eine Transaktionsdatenzeichenfolge empfangen wird, die die Transaktionsdatenzeichen der im vorhergehenden Transaktionsdaten- empfangsschritt empfangenen Transaktionsdatenzeichenfolge und ein weite- res Transaktionsdatenzeichen umfasst.

8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, dass in einer in einem Transaktionsdatenempf angsschritt empfangenen Transaktionsdatenzeichenfolge das weitere Transaktionsdatenzeichen durch Vergleichen der Transaktionsdatenzeichen der empfangenen Transaktionsdatenzeichenfolge mit den Transaktionsdatenzeichen der im vorherigen Transaktionsdaten- empfangsschritt empfangenen Transaktionsdatenzeichenfolge bestimmt wird, und das bestimmte, weitere Transaktionsdatenzeichen mit einem ent- sprechenden als Eingabedaten empfangenen Eingabedatenzeichen abgeglichen wird.

9. Verfahren nach Anspruch 7 oder 8, dadurch gekennzeichnet, dass die Position eines weiteren Transaktionsdatenzeichens innerhalb einer empf an- genen Transaktionsdatenzeichenfolge durch Vergleichen der empfangenen Transaktionsdatenzeichenfolge mit der im vorherigen Transaktionsdaten- empfangsschritt empfangenen Transaktionsdatenzeichenfolge bestimmt wird.

10. Verfahren nach einem Ansprüche 7 bis 9, dadurch gekennzeichnet, dass ein Positionswechselzähler (34) inkrementiert wird, sofern die in einem Transaktionsdatenempfangsschritt bestimmte Position nicht auf die Position des weiteren Transaktionsdatenzeichens der im vorhergehenden Transakti- onsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge folgt, wobei der Abgleich der Transaktionsdaten mit den empfangenen Eingabedaten mit einem negativen Abgleichsergebnis abgebrochen wird, sofern der Positionswechselzähler (34) einen vorgegebenen Wert überschreitet.

11. Verfahren nach einem der Ansprüche 1 bis 10, dadurch gekennzeich- net, dass die Eingabedaten zur Anzeige auf einer Anzeigeeinrichtung (24) des Nutzerendgeräts (20) weitergeleitet werden und die Transaktionsdaten über ein Webformular empfangen werden, das ein Webserver (37) des Datenträgers (30) zur Anzeige auf einer Anzeigeeinrichtung (24) des Nutzerendgeräts (20) bereitstellt, wobei nur solche Eingabedaten bei einem Ab- gleich der Transaktionsdaten berücksichtigt werden, die in das Webformular eingegeben wurden.

12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass die in das Webformular eingegebenen Eingabedatenanteile daran erkannt werden, dass Eingabedatenzeichen solcher Eingabedatenanteile einem von dem Webformular für die Transaktionsdaten vorgegebenen Transaktionsdatenzei- chenalphabet entsprechen.

13. Verfahren nach Anspruch 12, dadurch gekennzeichnet, dass ein von einer Zeigeeinrichtung des Nutzerendgeräts (20) bewirkter Aktivierungswechsel zwischen dem Webformular oder einem Webbrowser, der das Webformular auf der Anzeigeeinrichtung (24) des Nutzerendgeräts (20) anzeigt, und weiteren auf der Anzeigeeinrichtung (24) angezeigten Applikati- onsfenstern daran erkannt wird, dass die Eingabedatenanteile zwischen dem vorgegebenen Transaktionsdatenzeichenalphabet und einem anderen Zeichenalphabet wechseln.

14. Verfahren nach einem der Ansprüche 11 bis 13, dadurch gekenn- zeichnet, dass die in das Webformular eingegebenen Eingabedatenanteile anhand von der Eingabedateneinrichtung (40) oder von einer mit dem Datenträger (30) verbundenen Zeigeeinrichtung empfangenen Aktivierungs- wechselsteueranweisungen erkannt werden, mit denen ein Aktivierungswechsel zwischen dem Webformular oder einem Webbrowser, der das Web- formular auf der Anzeigeeinrichtung (24) des Nutzerendgeräts (20) anzeigt, und weiteren auf der Anzeigeeinrichtung (24) angezeigten Applikationsfenstern bewirkt wird.

15. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein Aktivierungswechselzähler (35) inkrementiert wird, sofern ein Aktivierungswechsel erkannt wird, wobei der Abgleich der Transaktionsdaten mit den empfangenen Eingabedaten mit einem negativen Ab- gleichsergebnis abgebrochen wird, sofern der Aktivierungswechselzähler (35) einen vorgegebenen Wert überschreitet.

16. Verfahren nach einem der Ansprüche 1 bis 15, dadurch gekennzeichnet, dass über eine Eingabedatenschnittstelle (32) des Datenträgers (30) die Eingabedaten empfangen werden und über eine von der Eingabedatenschnittstelle (32) verschiedene Transaktionsdatenschnittstelle (31) die Eingabedaten weitergeleitet und die Transaktionsdaten empfangen werden, wobei die Transaktionsdaten bei einem positiven Abgleichsergebnis verschlüsselt werden und über die Transaktionsdatenschnittstelle (31) oder über eine zu- sätzliche Datenkommunikationsschnittstelle an die Transaktionseinrichtung weitergeleitet werden.

17. Verfahren nach einem der Ansprüche 1 bis 16, dadurch gekennzeichnet, dass wiederholt Transaktionsdatendanteile/ -zeichen empfangen und abge- glichen werden, bevor der Schritt des transaktionsgemäßen Verarbeitens für die vollständigen Transaktionsdaten ausgeführt wird.

18. Verfahren nach einem der Ansprüche 1 bis 16, dadurch gekennzeichnet, dass das Empfangen, Abgleichen und Verarbeiten einmalig für die vollstän- digen Transaktionsdaten erfolgt.

19. Verfahren nach einem der Ansprüche 1 bis 18, dadurch gekennzeichnet, dass die Eingabedaten auf Einfügeanweisungen (STRG-V) geprüft werden.

20. Verfahren nach einem der Ansprüche 1 bis 19, dadurch gekennzeichnet, dass der Nutzer aufgefordert wird, einen ausgewählten Teil der empfangenen Transaktionsdaten in die Eingabeeinrichtung (40) des Nutzerendgeräts (20) erneut einzugeben.

21. Verfahren nach Anspruch 20, dadurch gekennzeichnet, dass die Aufforderung erfolgt, wenn eine Einfügeanweisung in den Eingabedaten erkannt wurde und/ oder ein Transaktionsdatenanteil der Transaktionsdaten in den Eingabedaten fehlt, wobei vorzugsweise der ausgewählte Anteil dem feh- lenden Transaktionsdatenanteil entspricht oder als Teil desselben aus diesem ausgewählt ist.

22. Sicheres Transaktionsmodul, welches eingerichtet ist, ein Verfahren nach einem der Ansprüche 1 bis 21 auszuführen.

23. Portabler Datenträger (30), zumindest umfassend einen Prozessor, einen Datenspeicher (36) sowie eine Steuereinrichtung (33), die eingerichtet ist, von einer mit dem Datenträger (30) verbundenen Eingabedateneinrichtung (40) empfangene Eingabedaten an ein mit dem Datenträger (30) verbundenes Nutzerendgerät (20) weiterzuleiten, dadurch gekennzeichnet, dass die Steuereinrichtung (33) weiterhin eingerichtet ist, die Eingabedaten in dem Datenspeicher (36) zu speichern und von dem Nutzerendgerät (20) empfangene Transaktionsdaten mit den gespeicherten Eingabedaten abzugleichen und die Transaktionsdaten transaktionsgemäß zu verarbeiten, sofern sich ein po- sitives Abgleichsergebnis ergibt.

Description:
Verfahren und Vorrichtung zur sicheren Ver arbei tu ng von Eingabedaten

Die vorliegende Erfindung betrifft ein Verfahren auf einem sicheren Transak- tionsmodul zum manipulationsfreien Verarbeiten von in ein Nutzerendgerät von einem Nutzer eingegebenen Eingabedaten als Transaktionsdaten sowie einen derartiges sicheres Transaktionsmodul.

Im Zusammenhang mit dem Anweisen von Transaktionen auf einer Trans- aktionseinrichtung, z.B. einem Online-Banking-Server einer Bank oder dergleichen, durch ein mit der Transaktionseinrichtung über ein Datenkommunikationsnetzwerk verbundenes Nutzerendgerät gibt ein Nutzer häufig sicherheitskritische oder vertrauliche Eingabedaten über eine Eingabeeinrichtung, wie z.B. eine Tastatur, in das Nutzerendgerät ein, damit diese anschlie- ßend über das Datenkommunikationsnetzwerk als Transaktionsdaten an die Transaktionseinrichtung weitergeleitet werden. Derartige sicherheitskritische oder vertrauliche Eingabedaten können z.B. persönliche Identifikationsnummern (PIN), Transaktionsnummern (TAN) oder weitere Transaktionsdaten sein, wie z.B. Kreditkartennummern, Bankverbindungen, Überweisungs- betrage oder dergleichen.

Hierbei besteht das prinzipielle Problem, dass sowohl persönliche oder öffentliche, mit Tastatur und Bildschirm ausgestattete Nutzerendgeräte, wie z.B. Personalcomputer, Laptops oder dergleichen, als auch das Datenkom- munikationsnetzwerk in der Regel unsicher und insofern anfällig für Schadsoftware sind, wie z.B. Viren, Würmer, Trojaner, Spyware oder dergleichen, die die vertraulichen Eingabedaten abhören oder gar derart manipulieren können, dass anstelle der von dem Nutzer bezweckten Transaktion eine unerwünschte Transaktion zugunsten eines unberechtigten Dritten ausgeführt wird, ohne dass dies für den Datenträger oder die Transaktionseinrichtung zu erkennen wäre.

Zur Absicherung der Datenkommunikation zwischen dem Nutzerendgerät und der Transaktionseinrichtung sind mit dem Nutzerendgerät verbindbare portable Datenträger bekannt, die eine sichere Datenkommunikationsverbindung zwischen dem Nutzerendgerät und der Transaktionseinrichtung bereitstellen. Hierzu eignet sich z.B. eine so genannte „Internet Smart Card", die über eine USB-Schnittstelle an das Nutzerendgerät anschließbar ist und die gesamte Datenkommunikation zu und von der Transaktionseinrichtung kryptographisch sichert. In der Regel umfasst eine solche Internet Smart Card einen eigenen Webserver, der dem Benutzer über einen Webbrowser des Nutzerendgeräts Webseiten bereitstellt, beispielsweise Eingabeformulare, über die eingegebene Eingabedaten unmittelbar als Transaktionsdaten kryptographisch gesichert an die Transaktionseinrichtung weiter geleitet werden. Allerdings wird eine Manipulation von Eingabedaten durch eine Schadsoftware mit einer solchen Internet Smart Card nicht verhindert oder erkannt.

In diesem Zusammenhang offenbart die WO 2006/089710 einen portablen Datenträger, der zwischen ein Nutzerendgerät und dessen Tastatur geschaltet wird und in einem bestimmten Betriebsmodus über die Tastatur eingegebene, insbesondere sicherheitskritische oder vertrauliche Eingabedaten abfängt und unmittelbar verarbeitet, beispielsweise verschlüsselt an ein exter- nes System weiterleitet und/ oder zur Authentisierung des Benutzers einsetzt. Dies hat jedoch den Nachteil, dass Eingabedaten zumindest teilweise nicht an das Nutzerendgerät weitergeleitet und in der vom Benutzer beabsichtigten Weise in ein Webformular eingetragen werden, so dass insbeson- dere eine Darstellung und visuelle Kontrolle der Eingabedaten über einen Webbrowser nicht möglich ist.

Demzufolge ist es die Aufgabe der vorliegenden Erfindung, dem Benutzer eine komfortable Eingabe von Eingabedaten zu ermöglichen und gleichzeitig eine Manipulation der Eingabedaten auf dem Nutzerendgerät zu verhindern.

Diese Aufgabe wird durch ein Verfahren sowie ein Transaktionsmodul mit den Merkmalen der unabhängigen Patentansprüche gelöst. In den davon abhängigen Ansprüchen sind vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung angegeben.

In einem sicheren Transaktionsmodul werden Eingabedaten von einer Eingabedateneinrichtung eines Nutzerendgeräts empfangen, z.B. von einer Tas- tatur. Erfindungsgemäß werden Transaktionsdaten, die das Transaktionsmodul von dem Nutzerendgerät empfängt, transaktionsgemäß verarbeitet, wenn ein Abgleich der empfangenen, eventuell manipulierten Transaktionsdaten mit den empfangenen, tatsächlichen Eingabedaten des Nutzers ein positives Abgleichsergebnis ergibt.

Eine transaktionsgemäße Verarbeitung kann in der Weiterleitung der Transaktionsdaten an eine Transaktionseinrichtung bestehen. Alternativ oder ergänzend können als transaktionsgemäße Verarbeitung die Transaktionsdaten als transaktionsgemäße Verarbeitung signiert und/ oder verschlüsselt werden. Ebenso kann als transaktionsgemäße Verarbeitung eine der Transaktion zugeordnete Transaktionsnummer, beispielsweise eine Transaktionsfreigabenummer (TAN) oder ein Einmalpasswort (OTP), erzeugt werden. Das Transaktionsmodul kann insbesondere eine Signatur über die Transakti- onsdaten und/ oder die Transaktionsnummern an die Transaktionseinrichtung leiten, ohne die Transaktionsdaten senden zu müssen.

Ein entsprechender erfindungsgemäßer portabler Datenträger (oder ein ent- sprechendes sicheres Hardware-Transaktionsmodul) umfasst zumindest einen Prozessor, einen Datenspeicher sowie eine Steuereinrichtung, die einerseits von einer mit dem Datenträger verbundenen Eingabedateneinrichtung empfangene Eingabedaten in dem Datenspeicher speichert und vorzugesweise an ein mit dem Datenträger verbundenes Nutzerendgerät weiterleitet und andererseits von dem Nutzerendgerät empfangene Transaktionsdaten mit den gespeicherten Eingabedaten abgleicht und nur bei einem positiven Abgleichsergebnis dann an eine Transaktionseinrichtung weiterleitet.

Der Abgleich der Eingabedaten mit den Transaktionsdaten repräsentiert hierbei eine Prüfung, ob die Transaktionsdaten in einer vorgegebenen Beziehung zu den Eingabedaten stehen. Dadurch wird sichergestellt, dass von einer Schadsoftware manipulierte Transaktionsdaten nicht mehr die vorgegebene Beziehung zu den Eingabedaten aufweisen und demzufolge nicht an die Transaktionseinrichtung weitergeleitet, sondern verworfen werden.

Vorzugsweise werden die Eingabedaten bzw. Transaktionsdaten in mehreren Eingabedatenempfangsschritten bzw. Transaktionsdatenempfangsschrit- ten als Eingabedatenanteile bzw. Transaktionsdatenanteile empfangen, wobei jeweils einander zugeordnete Eingabedatenanteile und Transaktionsda- tenanteile miteinander abgeglichen werden. Der einem Eingabedatenanteil entsprechende Transaktionsdatenanteil kann hierbei insbesondere ein mit dem Eingabedatenanteil in einem bestimmten zeitlichen Zusammenhang empfangener Transaktionsdatenanteil sein, beispielsweise der nächste nach dem Eingabedatenanteil empfangene Transaktionsdatenanteil oder derglei- chen. Vorzugsweise entspricht die Reihenfolge, in der Eingabedatenanteile empfangen werden, genau der Reihenfolge, in der Transaktionsdatenanteile empfangen werden, so dass sich allein dadurch eine ausreichend genaue Zuordnung ergibt. Alternativ oder zusätzlich könnten der Eingabedatenanteil und der entsprechende Transaktionsdatenanteil durch eine vorgegebene inhaltliche Beziehung einander zugeordnet sein.

Da die Eingabedaten und Transaktionsdaten in der Regel alphanumerische Zeichenfolgen sind, wird als Eingabedatenanteil vorzugsweise zumindest ein alphanumerisches Eingabedatenzeichen der Eingabedaten, z.B. ein von dem Benutzer über die Eingabeeinrichtung eingegebener Buchstabe oder eine Zahl, und als Transaktionsdatenanteil zumindest ein alphanumerisches Transaktionsdatenzeichen der Transaktionsdaten empfangen. Ebenso kann die Steuereinrichtung des Datenträgers in einem ersten Transaktionsdaten- empfangsschritt ein einzelnes Transaktionsdatenzeichen und in jedem weiteren Transaktionsdatenempfangsschritt eine Transaktionsdatenzeichenfolge empfangen, die alle Transaktionsdatenzeichen der im vorhergehenden Transaktionsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge sowie ein weiteres, neues Transaktionsdatenzeichen umfasst. Dies ist beispielsweise dann der Fall, wenn die Steuereinrichtung jedes empfangene Eingabedatenzeichen einzeln an das Nutzer end gerät weiterleitet und das Nutzerendgerät jedem einzeln empfangenen Eingabedatenzeichen ein Transaktionsdatenzeichen zuordnet, in eine Transaktionsdatenzeichenfolge aus bereits empfangenen Eingabezeichen einfügt und die gesamte Transakti- onsdatenzeichenfolge an den Datenträger zurückleitet.

In diesem Zusammenhang bestimmt die Steuereinrichtung in einer in einem Transaktionsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge das weitere, neue Transaktionsdatenzeichen durch Vergleichen der Transaktionsdatenzeichen der empfangenen Transaktionsdatenzeichenfolge mit den Transaktionsdatenzeichen der im vorherigen Transaktionsdaten- empfangsschritt empfangenen Transaktionsdatenzeichenfolge und gleicht das bestimmte, weitere Transaktionsdatenzeichen mit einem entsprechenden als Eingabedaten empfangenen Eingabedatenzeichen ab.

Weiterhin bestimmt die Steuereinrichtung innerhalb einer empfangenen Transaktionsdatenzeichenfolge die Position eines weiteren, neuen Transaktionsdatenzeichens durch Vergleichen der empfangenen Transaktionsdaten- Zeichenfolge mit der im vorherigen Transaktionsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge. Durch eine Auswertung der Positionen, an denen jeweils neue Transaktionsdatenzeichen in eine Transaktionsdatenzeichenfolge eingefügt werden, wird geprüft, ob diese Positionen in einem vorgegebenen bzw. zu erwartenden, vernünftigen Zusammenhang mit der Transaktionsdatenzeichenfolge stehen. So kann beispielsweise ein auf dem Datenträger eingerichteter Positionswechselzähler bei einem auffälligen Positionswechsel inkrementiert werden, z.B. wenn auf die in einem Transaktionsdatenempfangsschritt bestimmte Position eines weiteren Transaktionsdatenzeichens die im vorhergehenden Transaktionsdatenempfangs- schritt bestimmte Position folgt, d.h. wenn ein weiteres, neues Transaktionsdatenzeichen nicht am Ende einer Transaktionsdatenzeichenfolge angefügt wird.

Auf diese Weise wird protokolliert, wie oft die Steuereinrichtung eine Trans- aktionsdatenzeichenfolge empfängt, die ein nicht am Ende angefügtes sondern in der Mitte eingefügtes neues Transaktionsdatenzeichen umfasst, was bei Annahme einer üblichen sequentiellen Eingabeweise von Eingabe- / Transaktionsdaten durch einen Benutzer auf eine Korrektur in der Mitte der bisher eingegebenen Transaktionsdatenzeichenfolge schließen lässt. Dementsprechend könnte eine einen vorgegebenen Schwellenwert überschreitende Anzahl solcher unüblichen, von einer sequentiellen Eingabeweise abweichenden Positionswechsel auf eine Manipulation der Transaktionsdaten durch eine auf dem Nutzerendgerät vorliegende Schadsoftware hin- deuten, die durch Umsortieren bzw. Permutieren der von einem Benutzer sequentiell eingegebenen Eingabedaten die Transaktionsdaten derart manipuliert, dass nicht die von dem Benutzer gewünschte Transaktion, sondern eine unerwünschte Transaktion zugunsten eines unberechtigten Dritten von der Transaktionseinrichtung ausgeführt werden würde. Dabei ist der Schwellenwert derart eingestellt, dass er eine realistische Anzahl von Korrekturen bei der Dateneingabe wiedergibt, so dass ein Überschreiten dieses Schwellenwerts realistischerweise auf eine Schadsoftware zurückgeführt werden kann. In diesem Fall wird der Abgleich der Transaktionsdaten mit den Eingabedaten mit einem negativen Abgleichsergebnis abgebrochen.

Ein positives Abgleichsergebnis ergibt sich demgegenüber vorzugsweise dann, wenn die Transaktionsdatenanteile mit den jeweils entsprechenden Eingabedatenanteilen übereinstimmen, d.h., wenn jedes weitere, neue Transaktionsdatenzeichen einem identischen Eingabedatenzeichen zugeordnet werden kann. Diese Transaktionsdatenanteile werden von der Steuereinrichtung vorzugsweise nur dann als Transaktionsdaten an die Transaktionseinrichtung weitergeleitet, wenn sie derart vollständig vorliegen, dass sie eine von der Transaktionseinrichtung unmittelbar ausführbare Transaktion definieren. Dies ist vorzugsweise immer dann der Fall, wenn die Transaktions- einrichtung alle zur Ausführung einer Transaktion benötigten Angaben aus den Transaktionsdatenanteilen entnehmen bzw. ableiten kann.

In einer besonders bevorzugten Ausführungsform leitet die Steuereinrichtung des Datenträgers die Eingabedaten zur Anzeige auf einer Anzeigeein- richtung des Nutzerendgeräts an dieses weiter. Die Eingabedaten können hierbei beispielsweise in einem von einem Webbrowser des Nutzerendgeräts dargestellten Webformular angeordnet werden, dass speziell ausgestaltet ist, um Transaktionsdaten entgegenzunehmen und weiterzuleiten. Ein solches Webformular kann beispielsweise von einer Transaktionseinrichtung oder von einem Webserver des Datenträgers auf dem Webbrowser des Nutzerendgeräts bereitgestellt werden, wobei nur solche Eingabedatenanteile bei einem Abgleich der Transaktionsdatenanteile mit jeweils entsprechenden Eingabedatenanteilen berücksichtigt werden, die in das Webformular einge- geben wurden.

Da ein von dem Webserver zur Verfügung gestelltes Webformular bevorzugt wie ein übliches von einer Servereinrichtung im Internet, z.B. einer Transaktionseinrichtung mit Webserver, bereitgestelltes Webformular von einem Webbrowser des Nutzerendgerätes angezeigt wird, kann der Benutzer die gewünschten Eingabedaten unter Verwendung der gewohnten Dateneingabefunktionalitäten des Nutzerendgerätes in das Webformular eingeben. Indem das Webformular von dem Datenträger und nicht einer beliebigen Servereinrichtung im Internet bereitgestellt wird, können einerseits Manipulati- onen an dem Webformular verhindert werden und andererseits können die in das Webformular eingegebenen Eingabedaten nach einem erfolgreichen Abgleich unmittelbar aus dem Webformular heraus als kryptographisch gesicherte Transaktionsdaten an den Transaktionsserver weitergeleitet werden. Dies kann vorzugsweise über das Nutzerendgerät und dessen Datenkom- munikationsschnittstelle zu der Transaktionseinrichtung erfolgen.

Die Steuereinrichtung erkennt in das Webformular eingegebene Eingabedatenanteile vorzugsweise daran, dass deren Eingabedatenzeichen einem von dem Webformular für die Transaktionsdaten vorgegebenen Transaktionsda- tenzeichenalphabet entsprechen, z.B. einem nur aus Ziffern bestehenden Zeichenalphabet oder dergleichen. Auf diese Weise kann die Steuereinrichtung z.B. erkennen, dass innerhalb der Eingabedatenzeichenfolge „RAPUNZEL5" lediglich die Ziffer „5" ein reguläres Transaktionszeichen darstellen kann und als solches in das Webformular eingegeben und von der Steuereinrichtung empfangen werden kann.

Dementsprechend kann ein von einer Zeigeeinrichtung des Nutzerendgeräts, z.B. einer von der Eingabeeinrichtung unabhängigen Maus oder dergleichen, bewirkter Aktivierungswechsel zwischen dem betreffenden Webformular bzw. dem das Webformular anzeigenden Webbrowser und weiteren auf der Anzeigeeinrichtung angezeigten Applikationsfenstern z.B. daran erkannt werden, dass die Eingabedatenanteile zwischen dem vorgegebenen Transak- tionsdatenzeichenalphabet und einem anderen, von einem anderen Applika- tionsfenster erwarteten Zeichenalphabet wechseln.

Gemäß einer bevorzugten Ausführungsform wird zwischen den in das Webformular eingegebenen Eingabedatenanteilen und in ein anderes Applikationsfenster eingegebenen Daten anhand von Steueranweisungen unterschie- den, die die Steuereinrichtung von der Eiήgabedateneinrichtung oder von einer mit dem Datenträger verbundenen Zeigeeinrichtung empfängt und die einen Aktivierungswechsel zwischen dem Webformular (oder dem das Webformular anzeigenden Webbrowser) und weiteren auf der Anzeigeeinrichtung angezeigten Applikationsfenstern bewirken. Im Zusammenhang mit einer Eingabeeinrichtung, wie. z.B. einer Tastatur, können solche einen Aktivierungswechsel angebende Steueranweisungen insbesondere Tastenkombinationen sein die ALT- oder STRG-Steuerzeichen umfassen. Bei einer Zeigeeinrichtung, z.B. einer Maus oder dergleichen, können entsprechend Mausklicks oder Events abgefangen und ausgewertet werden. Vorzugsweise ist auf dem Datenträger ein Aktivierungswechselzähler eingerichtet, der inkrementiert wird, wenn die Steuereinrichtung einen Aktivierungswechsel feststellt. Sofern der Aktivierungswechselzähler einen Schwel- lenwert überschreitet, der eine vernünftige und realistische Anzahl von Aktivierungswechseln durch einen Benutzer während der Eingabe von Transaktionsdaten in ein Webformular wiedergibt, wird der Abgleich der Transaktionsdaten mit den Eingabedaten mit einem negativen Abgleichsergebnis abgebrochen, da dann davon ausgegangen werden kann, dass eine auf dem Nutzerendgerät installierte Schadsoftware die Transaktionsdaten durch Vortäuschen von Aktivierungswechseln manipuliert.

Ein Einfügen von Zeichen in die Transaktionsdaten über die Zwischenablage könnte zu Transaktionsdaten führen, die nicht in den Eingabedaten enthal- ten sind. Deshalb ist das Formular für die Eingabe der Daten durch den Nutzer vorzugsweise dazu angepasst, keine Einfügungen aus der Zwischenablage zuzulassen. Gemäß einer weiteren bevorzugten Ausführungsform werden Einfügungen durch das Transaktionsmodul erkannt und durch eine Eingabeaufforderung zur Eingabe zumindest eines Teils der empfangenen Trans- aktionsdaten als einzelne Zeichen auf der Eingabeeinrichtung beantwortet. Somit wird sichergestellt, dass zumindest dieser Teil der Transaktionsdaten mit Eingabedaten abgeglichen werden kann. Beispielsweise die Steueranwe- sung STRG-V oder auch die entsprechende Klickkombination mit einer Maus kann in den Eingabedaten erkannt werden. Der einzugebende Teil kann be- stimmt werden als der Eingabedatenanteil, der von der Einfügeanweisung betroffen ist. Beispielsweise wenn das Transaktionsmodul nach jedem Zeichen die geänderten Transaktionsdaten empfängt, ist für das Transaktionsmodul sowohl die Einfügung als auch der betroffene Transaktionsdatenan- teil erkennbar. Die Eingabeaufforderung kann ein Anzeigen des empfangenen, aber erneut einzugebenden Teils der Transaktionsdaten umfassen.

Der Datenträger umfasst vorzugsweise eine Eingabedatenschnittstelle, über die die Eingabedaten von der Eingabeeinrichtung empfangen werden, und eine von der Eingabeschnittstelle verschiedene Transaktionsdatenschnittstelle, über die die Transaktionsdaten von dem Nutzerendgerät empfangen werden. Vorzugsweise werden die Transaktionsdaten nach einem positiven Abgleich verschlüsselt auch über die Transaktionsdatenschnittstelle und das Nutzerendgerät an die Transaktionseinrichtung weitergeleitet. Alternativ kann der Datenträger aber auch eine weitere, separate Datenkommunikationsschnittstelle umfassen, über die die verschlüsselten Transaktionsdaten an die Transaktionseinrichtung weitergeleitet werden.

Ein sicheres Transaktionsmodul ist vorzugsweise ein tragbarer Datenträger, der also reversibel mit dem Nutzerendgerät verbindbar ist. Der tragbare Datenträger wird vorzugsweise Daten kontaktbehaftet übertragen, also zumindest eine entsprechende kontaktbehaftete Schnittstelle (z.B. USB oder ISO 7816-3) haben. Er kann alternativ oder ergänzend Daten jedoch auch kontakt- los übertragen. Eine entsprechende kontaktlose Schnittstelle könnte nach dem Protokoll ISO 14443 Daten übertragen, also empfangen und/ oder senden.

Das sichere Transaktionsmodul ist so angeordnet, dass es die unveränderten Eingabedaten des Nutzers empfängt. Der Prozessor des Nutzendgerätes führt potentiell auch böswillige Software aus, somit stellt er einen unsicheren Bereich dar. Besonders sicher ist es, wenn das Transaktionsmodul zwischen der Eingabeeinrichtung des Nutzerendgerätes und dem eigentlichen Nutzendgerät (mit dem unsicheren Bereich) angeordnet ist. Insbesondere kann das Transaktionsmodul, beispielsweise mit Hilfe von 2 USB-Schnittstellen oder mit Hilfe von einer USB-Schnittstelle und einer kontaktlosen Schnittstelle, die Tastatur mit dem Nutzerendgerät verbinden. Vorteilhaft ist aber auch bereits eine Anordnung des Datenträgers in der Eingabeeinrichtung, bei- spielsweise in einem USB-Anschluss oder einem Kartenleser der Tastatur. Die Eingabeeinrichtung ist dabei angepasst, die unveränderten Eingabedaten an den Datenträger und an das unsichere Nutzerendgerät zu übermitteln.

In einem Endgerät mit integrierter Eingabeeinrichtung, wie beispielsweise einem Notebook, ist es theoretisch denkbar, eine Schnittstelleneinheit so zwischen der Eingabeeinheit und dem unsicheren Bereich des Endgerätes anzuordnen, dass ein tragbarer Datenträger (als sicheres Transaktionsmodul) mit der Schnittstelle reversibel verbindbar ist. Die Schnittstelleneinheit sollte so eingerichtet sein, dass insbesondere die Eingabedaten nur an den Datenträ- ger übertragen werden, wenn dieser sich gegenüber authentisiert hat oder als anderweitig dem Endgerät und/ oder dessen Nutzer zugeordnet zu erkennen gegeben hat.

Es gibt weiterhin Nutzerendgeräte, die einen exklusiven oder bevorzugten Zugang zu ihren Komponenten ermöglichen. Beispielsweise ist es ein bekanntes Konzept in dem Nutzerendgerät eine sichere Ausführungsumgebung und eine unsichere Ausführungsumgebung vorzusehen, wobei nur die sichere Ausführungsumgebung den exklusiven oder bevorzugten Zugriff auf die Komponenten Eingabe- und Wiedergabeeinrichtung hat. Anwendungen in der sicheren Ausführungsumgebung sind somit sehr gut gegen Schadsoftware geschützt. Denkbar ist es daher ferner, das sichere Transaktionsmodul als fest in das Nutzerendgerät integriertes Hardware-Modul oder als Software-Modul in einem sicheren Bereich des Nutzerendgerätes vorzusehen. Das Nutzerendgerät ist dabei so ausgestaltet, dass die Eingabedaten unverändert von dem sicheren Transaktionsmodul empfangen werden. Vorteilhaft ist diese Ausgestaltung für eine Transaktionssoftware, die in einem unsicheren Bereich des Nutzerendgerätes (nicht gesicherte Ausführungsumgebung) ausgeführt wird. Das sichere Transaktionsmodul wird beispielswei- se als Applet im sicheren Ausführungsbereich ausgeführt oder als Hardware-Modul aus dem sicheren Ausführungsbereich gesteuert. Es erhält die unveränderten Eingabedaten von der Eingabeeinrichtung und die Transaktionsdaten von der Transaktionssoftware im unsicheren Bereich. Erst nach einem erfolgreichen Datenabgleich werden die Daten transaktionsgemäß verarbeitet, also beispielsweise an die Transaktionssoftware weitergeleitet bzw. diesem bestätigt und dafür gegebenenfalls signiert oder verschlüsselt. Vorzugsweise wird die Bestätigung des Transaktionsmoduls erst in einer Transaktionseinrichtung (Server / Hintergrundsystem) geprüft. Die zuvor teils nur mit Bezug auf Datenträger dargelegten vorteilhaften Ausgestaltun- gen sind hier analog anwendbar.

Das Nutzerendgerät wird vom Nutzer für die Transaktion verwendet. Die Transaktionseinrichtung ist eine weitere an der Transaktion beteiligte Instanz, die vorzugsweise dem Transaktionssystembetreiber (Server / Hinter- grundsystem) oder dem Transaktionspartner (Händlerterminal) zugeordnet ist. Die Eingabeeinrichtung des Nutzerendgerätes ist so ausgestaltet, dass der Nutzer Daten als Folge einzelner Zeichen eingeben kann.

Weiteren Merkmale und Vorteile der Erfindung ergeben sich aus der folgen- den Beschreibung von den erfindungsgemäßen Ausführungsbeispielen sowie weiteren Ausführungsalternativen im Zusammenhang mit den Zeichnungen, die zeigen: Fig. 1 schematisch eine Anordnung aus einem erfindungsgemäßen portablen Datenträger, einem Nutzerendgerät, einer Eingabe Vorrichtung des Nutzerendgeräts und einer Transaktionseinrichtung;

Fig. 2 schematisch die Schritte eines erfindungsgemäßen Verfahrens;

Fig. 3a schematisch eine typische Abfolge in der Eingabedatenzeichen, die Transaktionsdaten ergeben, eingegeben werden;

Fig. 3b schematisch einen Versuch einer Schadsoftware, Eingabedatenzeichen umzusortieren, um manipulierte Transaktionsdaten zu generieren;

Fig. 4 ein Nachrichtenflussdiagramm für eine Ausgestaltung des Trans- aktionsmoduls in einem sicheren Bereich des Nutzerendgerätes.

Fig. 1 zeigt ein Nutzerendgerät 20, das z.B. ein Computer, ein Laptop, ein PDA oder ein Mobilfunkendgerät sein kann. Dieses verfügt über eine Anzeigeeinrichtung 24 und eine Zentraleinheit 23, die diverse Hard- und Soft- warekomponenten (nicht dargestellt), wie insbesondere einen Prozessor, um- fasst. Über eine Schnittstelle 21 kann das Nutzerendgerät 20 über ein Netzwerk 12, im vorliegenden Fall das Internet, mit einer Transaktionseinrichtung 10, im vorliegenden Fall einem Transaktionsserver einer Bank, in Datenkommunikation treten. Außerdem verfügt das Nutzerendgerät 20 über eine weitere Schnittstelle 22, die im vorliegenden Ausführungsbeispiel zur Datenkommunikation mit dem portablen Datenträger 30 dient. Die Zentraleinheit 23 ist über Datenleitungen 29 mit der Anzeigeeinrichtung 24 und den Schnittstellen 21, 22 verbunden, um die Anzeigeeinrichtung 24 und die Schnittstellen 21, 22 anzusteuern. Der portable Datenträger 30 besitzt eine Steuereinrichtung 33, die wiederum einen Prozessor (nicht dargestellt), sowie einen Positionswechselzähler 34 und einen Aktivierungswechselzähler 35 verwaltet. Der Datenträger 30 ist als so genannte „Internet Smart Card" ausgestaltet und besitzt dementsprechend einen Webserver 37, der ein Webformular zur Dateneingabe zur Verfügung stellt, das von der Anzeigeeinrichtung 24 des Nutzerendgeräts angezeigt werden kann, sowie einen Datenspeicher 36, der vorzugsweise einen nicht-flüchtigen Datenspeicher umfasst, wie z.B. einen Flash-Speicher. Auf der Steuereinrichtung 33 des Datenträgers 30 wird vorzugsweise ein sicheres Betriebssystem ausgeführt. Neben der Transaktionsdatenschnittstelle 31, die zur Datenkommunikation mit dem Nutzerendgerät 20 verwendet wird, besitzt der Datenträger 30 eine Eingabedatenschnittstelle 32 zur Datenkommunikation mit der Eingabedateneinrichtung 40.

Die Steuereinrichtung 33 ist über Datenleitungen 39 mit der Transaktionsdatenschnittstelle 31, der Eingabedatenschnittstelle 32, dem Datenspeicher 36 und dem Webserver 37 verbunden, um diese Bestandteile 31, 32, 36, 37 des Datenträgers 30 anzusteuern. Außerdem ist der Webserver 37 über eine Da- tenleitung 39 direkt mit der Transaktionsdatenschnittstelle 31 verbunden, um dem Nutzerendgerät 20 ein Webformular bereitzustellen, das auf der Anzeigeeinrichtung 24 des Nutzerendgeräts 20 angezeigt werden kann.

Die Eingabedateneinrichtung 40 verfügt über eine Schnittstelle 41 zur Daten- kommunikation mit dem Datenträger 30 und ist im vorliegenden Ausführungsbeispiel eine Tastatur. Prinzipiell kann als Eingabedateneinrichtung 40 eine beliebige Einrichtung verwendet werden, die Eingabedaten zeichenweise zur Verfügung stellt. Vorzugsweise ist die Eingabedateneinrichtung 40 sicher, d.h. insbesondere nicht ohne weiteres durch Schadsoftware angreif- bar. Als Eingabedateneinrichtung 40 kommt somit insbesondere auch eine sichere Instanz des Nutzerendgerätes 20 in Frage. Hierbei sind Ausführungsformen möglich, bei denen der Datenträger 30 lediglich die Schnittstelle 31 zur Kommunikation mit dem Nutzerendgerät benötigt und die Schnittstelle 32 entfallen kann.

Die Schnittstellen 22, 31, 32, 41 sind im vorliegenden Ausführungsbeispiel USB-Schnittstellen (Universal Serial Bus), wobei die Schnittstellen 22, 32 USB-Host-Schnittstellen sind und die Schnittstelle 31 eine USB-Hub- Schnittstelle ist.

Fig. 2 zeigt schematisch die Schritte eines erfindungsgemäßen Verfahrens. In einem ersten Verfahrensschritt Sl stellt der Webserver 37 des portablen Datenträgers 30 ein Webformular zur Eingabe von Eingabedaten zur Verf ü- gung, beispielsweise ein HTML-Formular (Hypertext Markup Language) oder dergleichen. Dieses zur Dateneingabe geeignete Webformular wird ü- ber die Transaktionsdatenschnittstelle 31 und die Schnittstelle 22 an das Nutzerendgerät 20 übertragen und dort auf der Anzeigeeinrichtung 24 dargestellt. Das Nutzerendgerät 20 verfügt hierfür über einen geeigneten Web- browser (nicht dargestellt). Die Verbindung zwischen Webserver 37 und Webbrowser kann dabei durch eine SSL- Verbindung (Secure Sockets Layer) zusätzlich geschützt sein.

Alternativ könnte das Webformular auch von dem Nutzerendgerät 20, von der Transaktionseinrichtung 10 oder einer sonstigen Einrichtung zur Verfügung gestellt werden. Auch könnte der Webserver 37 des portablen Datenträgers als Proxy-Server dienen, der das Webformular selbst von einem weiteren Rechner, z.B. einem Transaktionsserver im Internet, zumindest teilweise empfängt und speichert. Ein von dem portablen Datenträger 30 zur Ver- fügung gestelltes Webformular lässt sich besonders gut vor Manipulationsversuchen schützen, da der Datenträger 30 aus vergleichsweise wenigen Komponenten besteht, die gezielt ausgewählt und konfiguriert sind, um den Datenträger 30 vor Angriffsversuchen zu schützen.

Anschließend gibt ein Nutzer mittels der Eingabedateneinrichtung 40, im vorliegenden Ausführungsbeispiel einer Tastatur, ein Eingabedatenzeichen ein. Dieses Eingabedatenzeichen wird von der Eingabedateneinrichtung 40 über die Schnittstelle 41 und die Eingabedatenschnittstelle 32 an den Daten- träger 30 übertragen und im Verfahrensschritt S2 von diesem empfangen. Die Steuereinrichtung 33 des portablen Datenträgers 30 wandelt hierbei die gegebenenfalls in Form von Scan-Codes empfangenen Eingabedatenzeichen nach einer voreingestellten Ländercodetabelle in ASCII-Zeichen um. Diese ASCII-Zeichen repräsentieren die Beschriftung der Tasten der Eingabedaten- einrichtung 40. Ebenso wird im Verfahrensschritt S2 das Eingabedatenzeichen durch die Steuereinrichtung 33 des portablen Datenträgers 30 sowohl in dem Datenspeicher 36 gespeichert als auch über die Transaktionsdatenschnittstelle 31 und die Schnittstelle 22 an das Nutzerendgerät 20 weitergeleitet.

Anschließend empfängt das Nutzerendgerät 20 das Eingabedatenzeichen. Falls auf dem Nutzerendgerät 20 während diesem Empfangen des Eingabedatenzeichens das Webformular (d. h. das Fenster des Webbrowsers, das das Webformular darstellt) aktiv ist, wird das Eingabedatenzeichen, beispiels- weise bei der aktuellen Cursorposition, in das Webformular ggf. zwischen, vor oder hinter bereits angezeigte Transaktionsdaten eingetragen.

Ein zu dem Webformular gehöriges, auf dem Webbrowser ausgeführtes Skript sendet nach jedem Eintragen eines Eingabedatenzeichens in das Web- formular das aktive Eingabefeld oder auch alle Eingabefelder oder das gesamte Formular z.B. per HTTP-Request über die Schnittstelle 22 und die Transaktionsdatenschnittstelle 31 an den Webserver 37 des Datenträgers 30. Eine solche Funktion wird zum Beispiel durch Webtechnologien wie AJAX (Asynchronous Java Script and XML) ermöglicht. Der Webserver 37 des Datenträgers 30 empfängt schließlich diese Daten.

Somit empfängt der Datenträger 30, nachdem er ein Eingabedatenzeichen empfangen, gespeichert und weitergeleitet hat (Schritt S2), ein Transaktions- datenzeichen bzw. beim mehrmaligen Durchlaufen des Schrittes S3 eine Transaktionsdatenzeichenfolge, falls auf dem Nutzer end gerät 20 das Webformular aktiv ist. Diese Transaktionsdatenzeichenfolge wird vom Datenträger 30 in dem Datenspeicher 36 gespeichert.

Falls jedoch auf dem Nutzerendgerät 20 das Webformular während des

Empfangs des Eingabedatenzeichens nicht aktiv ist, sondern ein weiteres auf der Anzeigeeinrichtung angezeigtes Applikationsfenster, wird das Eingabedatenzeichen von dieser weiteren Applikation verarbeitet und nicht in das Webformular eingetragen. In diesem Fall empfängt der Datenträger 30, nachdem er ein Eingabedatenzeichen empfangen, gespeichert und weitergeleitet hat (Schritt S2), zunächst keine entsprechende Transaktionsdatenzeichenfolge. Vielmehr wartet der Datenträger 30 auf weitere Eingabedatenzeichen, die er bei einem wiederholten Ausführen des Schritts S2 empfängt, speichert und weiterleitet. Nachdem der Datenträger 30 ggf. mehrmals den Schritts S2 ausgeführt hat, empfängt er schließlich, nachdem auf dem Nutzerendgerät 10, beispielsweise durch einen Nutzer mittels der Eingabedateneinrichtung 40 oder Zeigeeinrichtung (z.B. Computermaus, nicht dargestellt), das Webformular aktiviert wurde, im Schritt S3 eine Transaktionsdatenzeichenfolge und speichert diese in dem Datenspeicher 36. Diese Möglichkeit, Daten in eine andere Applikation auf dem Nutzerendgerät einzugeben, könnte jedoch auch von einer Schadsoftware genutzt werden, um die Transaktionsdaten zu manipulieren. Insbesondere könnte eine Schadsoftware aus den eingegebenen Eingabedatenzeichen nur einzelne, bestimmte Eingabedatenzeichen auswählen und die restlichen Eingabedatenzeichen durch Vortäuschen eines Aktivierungswechsels zu einer anderen Applikation zu verwerfen. Um dies zu verhindern, detektiert die Steuereinrichtung 33 des Datenträgers 30 die Wechsel zwischen dem Webformular oder einem Webbrowser, der das Webformular auf der Anzeigeeinrichtung 24 des Nutzerendgeräts 20 anzeigt, und weiteren auf der Anzeigeeinrichtung 24 angezeigten Applikationsfenstern und zählt die Anzahl K dieser Aktivierungswechsel mittels des Aktivierungswechselzählers 35. Dementsprechend prüft der Datenträger 30 in dem Verfahrensschritt S4, ob die Anzahl der Ak- tivierungswechsel einen vorgegebenen Wert K max überschreitet. Der Wert K ma χ beschreibt einen in der Praxis realistischen Schwellenwert für vernünftigerweise von einem Nutzer initiierte Aktivierungs Wechsel. Eine höhere Anzahl von Aktivierungswechseln deutet auf einen Manipulationsversuch durch Schadsoftware auf dem Nutzerendgerät 30 hin und führt daher zu einem Abbruch des Prozesses mit negativem Abgleichsergebnis.

Ein Aktivierungswechsel kann beispielsweise daran erkannt werden, dass der Datenträger 30 plötzlich keine Transaktionsdatenzeichenfolgen mehr empfängt, die bereits empfangenen und abgespeicherten Eingabedatenzei- chen entsprechen, da diese nicht in das Webformular sondern in ein anderes Applikationsfenster eingegeben werden. Außerdem kann der Datenträger 30 in das Webformular eingegebene Eingabedatenanteile von in andere Applikationsfenster eingegebenen Eingabedatenanteilen daran unterscheiden, dass die Eingabedatenzeichen von in das Webformular eingegebenen Einga- bedatenanteilen einem von dem Webformular für die Transaktionsdaten vorgegebenen Transaktionsdatenzeichenalphabet entsprechen. Ein von einer Zeigeeinrichtung des Nutzerendgeräts 20 bewirkter Aktivierungswechsel zwischen dem Webformular und einem weiteren Applikationsfenster kann dementsprechend daran erkannt werden, dass die Eingabedatenanteile zwischen dem vorgegebenen Transaktionsdatenzeichenalphabet, z.B. einen Ziffernalphabet oder dergleichen, und einem anderen Zeichenalphabet wechseln.

Auch können von der Eingabedateneinrichtung 40 oder ggf. von einer mit dem Datenträger 30 verbundenen Zeigeeinrichtung (nicht dargestellt) empfangene Aktivierungswechselsteueranweisungen erkannt werden, mit denen ein Aktivierungswechsel zwischen dem Webformular und weiteren auf der Anzeigeeinrichtung angezeigten Applikationsfenstern bewirkt wird, so dass daraus die tatsächlich in das Webformular eingegebenen Eingabedatenanteile abgeleitet werden können. Eine Aktivierungswechselsteueranweisung der Eingabedateneinrichtung kann z.B. eine Tastenkombination, die die ALT o- der die STRG-Taste umfasst, insbesondere die Tastenkombination ALT-TAB sein, wohingegen eine Aktivierungswechselsteueranweisung der Zeigeein- richtung z.B. ein Mausklick sein kann.

Diese verschiedenen Möglichkeiten der Erkennung eines Aktivierungswechsels ermöglichen verschiedene Ausgestaltungen des Datenträgers 30. Im einfachsten Fall werden Aktivierungswechsel bereits daran erkannt, dass der Datenträger 30 nach Weiterleiten eines Eingabedatenzeichens kein entspre- . chendes Transaktionsdatenzeichen empfängt. Jedoch ist es auch möglich, einen zusätzlich anhand einer von der Eingabedateneinrichtung 40 oder von einer mit dem Datenträger 30 verbundenen Zeigeeinrichtung bewirkten aktiven Aktivierungswechsel anders (d.h. als weniger kritisch) zu bewerten als einen Aktivierungswechsel, bei dem der Datenträger 30 nach Weiterleiten eines Eingabedatenzeichens kein entsprechendes Transaktionsdatenzeichen empfängt. Dies kann beispielsweise dadurch erfolgen, dass einem Aktivierungswechsel, je nachdem wie dieser detektiert wurde, eine bestimmte Punktezahl zugeordnet wird, diese Punkte gezählt werden und der Prozess bei Überschreiten einer vorgegebenen Punkteschwelle mit negativem Ab- gleichsergebnis abgebrochen wird.

Falls die Prüfung des Aktivierungswechselzählers (35) in Schritt S4 nicht zu einem Abbruch des erfindungsgemäßen Verfahrens führt, folgt in Schritt S5 der eigentliche Abgleich der empfangenen Eingabedaten mit den empfangenen Transaktionsdaten durch die Steuereinrichtung 33 des portablen Datenträgers 30.

Im vorliegenden Ausführungsbeispiel wird ein Eingabedatenzeichen mit einer Transaktionsdatenzeichenfolge (bzw. beim ersten Durchlaufen des Schritts S5 einem einzelnen Transaktionsdatenzeichen) abgeglichen. Hierbei werden zunächst (außer beim ersten Durchlaufen des Schritts S5) die Transaktionsdatenzeichen der empfangenen Transaktionsdatenzeichenfolge mit den Transaktionsdatenzeichen der im vorherigen Transaktionsdatenemp- fangsschritt empfangenen Transaktionsdatenzeichenfolge verglichen. Da im vorliegenden Ausführungsbeispiel nach dem Schritt S2 in die in dem Webformular dargestellte Transaktionsdatenzeichenfolge ein Eingabedatenzeichen eingefügt wurde, unterscheiden sich die beiden Transaktionsdatenzei- chenfolgen um genau dieses eine Eingabezeichen, das als weiteres Transaktionsdatenzeichen bestimmt wird.

Dann erfolgt der Abgleich dieses bestimmten weiteren Transaktionsdatenzeichens mit dem Eingabedatenzeichen. Da im vorliegenden Ausführungs- beispiel das Eingebedatenzeichen beim Einfügen in die in dem Webformular dargestellte Transaktionsdatenzeichenfolge nicht transformiert, umgesetzt oder verschleiert wurde, besteht dieser Abgleich im vorliegenden Beispiel aus einer Identitätsprüfung. Generell kann bei dem Abgleich jegliche repro- duzierbare Beziehung zwischen den Eingabedaten und den Transaktionsdaten geprüft werden. In jedem Falle wird der Prozess bei einem negativen Ergebnis eines Abgleichs mit negativem Abgleichsergebnis abgebrochen.

Hierdurch wird sichergestellt, dass die Transaktionsdatenzeichen den tat- sächlich eingegebenen Eingabedatenzeichen entsprechen, um eine Manipulation durch eine Schadsoftware auf dem Nutzerendgerät 20, die die eingegebenen Eingabedatenzeichen durch andere Zeichen ersetzt, zu verhindern.

Bei einem positiven Abgleichsergebnis wird anschließend im Verfahrens- schritt S6 durch die Steuereinrichtung 33 des portablen Datenträgers 30 geprüft, ob die Transaktionsdatenzeichenfolge sequentiell geändert wurde. Hierbei wird die Position des weiteren Transaktionsdatenzeichens innerhalb der empfangenen Transaktionsdatenzeichenfolge durch Vergleichen der empfangenen Transaktionsdatenzeichenfolge mit der im vorherigen Trans- aktionsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge bestimmt. Falls die in einem Transaktionsdatenempf angsschritt bestimmte Position nicht auf die Position des weiteren Transaktionsdatenzeichens der im vorhergehenden Transaktionsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge folgt, wird der Wert L eines Positionswechselzäh- lers 34 inkrementiert (S9). Falls dann festgestellt wird (SlO), dass der Positionswechselzähler 34 einen vorgegebenen Wert Lmax überschreitet, wird der Prozess mit einem negativen Abgleichsergebnis abgebrochen, um zu verhindern, dass die Transaktionsdaten durch eine Schadsoftware auf dem Nutzer- endgerät 20 durch Vertauschen mehrerer Transaktionsdatenzeichen manipuliert werden.

Der Wert von L ma χ wird dabei so festgelegt, dass eine realistische Anzahl an Korrekturen möglich bleibt (z.B. 1, 2 oder 3 Korrekturen). Es wird also geprüft, ob die Zahl der nicht aufeinanderfolgend eingefügten Transaktionsdatenzeichen durch eine realistische Anzahl von Korrekturen bei der Dateneingabe bedingt sein kann oder auf eine Datenmanipulation seitens einer Schadsoftware auf dem Nutzerendgerät 20 hindeutet. Für eine für einen An- greifer sinnvolle Datenmanipulation sind in der Regel wesentlich mehr Positionswechsel erforderlich, als bei einer gewöhnlichen Dateneingabe durch Korrektur von Eingabefehlern auftreten. Dies ist beispielhaft in Fig. 3 dargestellt.

Fig. 3a zeigt schematisch eine Abfolge, in der ein Nutzer Transaktionsdaten eingibt. Die für eine Banktransaktion notwendigen Eingabedaten (BLZ: Bankleitzahl, KTO: Kontonummer des Überweisungsempfängers, EUR: zu überweisender Betrag) werden in der Regel sequentiell eingegeben, so wie es durch die Pfeile veranschaulicht wird. Bei der Dateneingabe der Bankleitzahl vergisst der Nutzer jedoch zunächst die Eingabe einer „0", die er dann nach vollständiger Eingabe der Kontonummer eingibt. Somit ergeben sich bei diesem Beispiel zwei zu protokollierende Positionswechsel: Der Wechsel von der letzten Ziffern der Kontonummer zu der fünften Ziffer der Bankleitzahl und der anschließende Wechsel zu der ersten Ziffer des zu überweisenden Betrags.

In Fig. 3b ist hingegen der Versuch einer Schadsoftware skizziert, die Transaktionsdaten von Fig. 3a umzusortieren, um so manipulierte Transaktionsdaten zu erzeugen, die beispielsweise eine unerwünschte Transaktion zuguns- ten des nichtberechtigten Dritten definieren. Um eine für einen Angreifer sinnvolle Transaktion zu bewirken, muss die Schadsoftware, wie durch die Pfeile veranschaulicht, diverse Eingabedatenzeichen vertauschen und Permutationen vornehmen . Es ergibt sich damit eine weitaus höhere Anzahl an Positionswechseln als in Fig. 3a.

Zusätzlich ist es auch möglich, von der Eingabedateneinrichtung 40, z.B. durch Betätigen der Pfeiltasten, bewirkte Positionswechsel zu erkennen und besonders zu behandeln, beispielsweise den Wert L des Positionswechsel- Zählers 34 bei einem durch die Eingabedateneinrichtung bewirkten Positionswechsel nicht zu inkrementieren oder, wie zuvor im Zusammenhang mit Aktivierungswechseln dargestellt, den Positionswechsel durch Zuweisung einer bestimmten Punktezahl als weniger kritisch zu gewichten.

Bei sequentieller Änderung der Transaktionsdatenzeichenfolge oder falls der Positionswechselzähler 34 den vorgegebenen Wert Lmax nicht überschreitet, wird im nächsten Verfahrensschritt S7 durch die Steuereinrichtung 33 des portablen Datenträgers 30 geprüft, ob der empfangene Transaktionsdatenanteil eine von der Transaktionseinrichtung 10 ausführbare Transaktion voll- ständig definiert. Generell kann beliebig festgelegt werden, wann ein Transaktionsdatenanteil eine von der Transaktionseinrichtung 10 ausführbare Transaktion vollständig definiert. Im vorliegenden Ausführungsbeispiel definiert ein Transaktionsdatenanteil eine von der Transaktionseinrichtung 10 ausführbare Transaktion vollständig, wenn er alle zur Ausführung der Transaktion notwendigen Daten umfasst. Im Falle einer Überweisung können die notwendigen Daten beispielsweise die Bankleitzahl und die Kontonummer des Überweisungsempfängers sowie eine PIN (Persönliche Identifikationsnummer) und eine TAN (Transaktionsnummer) sein. Bei einer abge- änderten Ausführungsform kann die Eingabe einer TAN auf Grund der hohen Sicherheit des vorliegenden Verfahrens auch entfallen.

Falls die Vollständigkeitsprüfung in Schritt S7 ergibt, dass der Transaktions- datenanteil noch keine von der Transaktionseinrichtung 10 ausführbare Transaktion vollständig definiert, werden die Verfahrensschritte Sl bis S7 erneut durchlaufen, bis ein Abbruch des Verfahrens bei einem der Schritte S4 bis S6 erfolgt oder die Vollständigkeitsprüfung in Schritt S7 ein positives Ergebnis ergibt.

Falls die Vollständigkeitsprüfung in Schritt S7 ergibt, dass der Transaktionsdatenanteil eine von der Transaktionseinrichtung 10 ausführbare Transaktion vollständig definiert, leitet die Steuereinrichtung 33 den Transaktionsdatenanteil als Transaktionsdaten verschlüsselt an den Transaktionsserver 10, z.B. einen zentralen Server einer Bank, weiter. Im vorliegenden Ausführungsbeispiel werden diese Transaktionsdaten über die Transaktionsdatenschnittstelle 31 und die Schnittstelle 22 verschlüsselt an das Nutzerendgerät 20 weitergeleitet, das diese Transaktionsdaten dann wiederum über die Schnittstelle 21 über ein Netzwerk 12 (im vorliegenden Ausführungsbeispiel das Internet) verschlüsselt an den Transaktionsserver 10 weiterleitet. Hierdurch kann eine bestehende Internetverbindung des Nutzerendgerätes 20 genutzt werden. Alternativ kann der Datenträger 30 auch über eine weitere, separate Schnittstelle verfügen, mittels der die Daten ohne Umweg über das Nutzerendgerät 20, z.B. über einen direkten Internetzugang über eine Kon- taktlosschnittstelle oder dergleichen, an die Transaktionseinrichtung 10 weitergeleitet werden können.

Zum Weiterleiten der Transaktionsdaten kann zusätzlich noch eine Bestätigung des Benutzers notwendig sein, die beispielsweise mittels der Eingabe- dateneinrichtung 40 oder einer mit dem Datenträger 30 oder dem Nutzerendgerät 20 verbundenen Zeigeeinrichtung erfolgen kann.

Das beschriebene Verfahren kann auch durch die Eingabedateneinrichtung 40 ausgegebene Löschanweisungen (z.B. eine Betätigung der Rücktaste) als Löschzeichen verarbeiten. Im Fall eines in das Webformular „eingegebenen" Löschzeichens liefert der Abgleich in Schritt S5 ein positives Abgleichsergeb- nis, wenn der Vergleich der Transaktionsdatenzeichen der empfangenen Transaktionsdatenzeichenfolge mit den Transaktionsdatenzeichen der im vorherigen Transaktionsdatenempfangsschritt empfangenen Transaktionsdatenzeichenfolge ergibt, dass die empfangenen Transaktionsdatenzeichenfolge ein Transaktionsdatenzeichen weniger enthält.

Gemäß einer besonderen Ausgestaltung empfängt der Datenträger 30 im Verfahrensschritt S2 jeweils eine Eingabedatenzeichenfolge oder empfängt mehrere Eingabedatenzeichen und kombiniert diese zu einer Eingabedatenzeichenfolge. Dementsprechend speichert der Datenträger 30 diese Eingabedatenzeichenfolge und leitet sie weiter. Ebenso ist es möglich, dass das auf dem Nutzerendgerät 20 ausgeführte Skript nicht nach jedem empfangenen Eingabedatendatenzeichen eine Transaktionsdatenzeichenfolge an den Datenträger zurücksendet, sondern erst nach mehreren empfangenen Transaktionsdatenzeichen.

Wie bereits im Zusammenhang mit der Überwachung von Aktivierungs- wechseln dargestellt, kann der Datenträger 30 eine Schnittstelle zum An- schluss eines Zeigegerätes, z.B. einer Computermaus, besitzen. Durch Überwachung der von dem Zeigegerät generierten Daten können neben Informationen über Applikationswechsel weitere Informationen gewonnen und zu einer Prüfung der Transaktionsdaten verwendet werden, beispielsweise Informationen über Korrekturen bei der Dateneingabe.

Gemäß einer weiteren Ausführungsform kann zusätzlich vorgesehen sein, dass die Steuereinrichtung 33 des portablen Datenträgers 30 Informationen auf einer Informationsanzeige des Datenträgers 30 ausgibt. Diese Informationen können beispielsweise Statusinformationen des portablen Datenträgers 30, wie Informationen über die Verschlüsselung, über zurückliegende Transaktionen und Transaktionsabbrüche oder über die Konfiguration des Daten- trägers 30 sein. Eine solche Informationsanzeige kann beispielsweise ein Display, insbesondere ein LCD-Display der Eingabedateneinrichtung 40 oder des Datenträgers 30 oder auch eine auf der Anzeigeeinrichtung 24 des Nutzerendgeräts 20 dargestellte Webseite sein. Zudem kann vorgesehen sein, den Datenträger 30 mittels der Informationsanzeige und der Eingabedaten- einrichrung 40 und/ oder einer mit dem Datenträger 30 oder dem Nutzerendgerät 20 verbundenen Zeigeeinrichtung zu konfigurieren.

Fig. 4 zeigt eine weitere Ausführungsform, in welcher das sichere Transaktionsmodul als Trustlet 530 in einem sicheren Bereich (TrustZone) des Nutzer- endgerätes angeordnet ist.

Eine Transaktionssoftware 520 wird in der unsicheren Umgebung des Nutzerendgerätes (NormalZone) ausgeführt. Die Transaktionssoftware 520 fordert das Trustlet 530 auf S41, die folgenden Eingabedaten mit zu protokollie- ren. Danach empfängt und speichert S42 das Trustlet 530 die vom Nutzer auf der Tastatur 40 eingegebenen (unveränderten) Eingabedaten. Die Eingabedaten werden von dem Trustlet 530 oder der sicheren Ausführungsumgebung (laufend oder blockweise) an die Transaktionssoftware 520 weiter geleitet S43. Nach dem Ende der Dateneingabe sendet S44 die Transaktionssoftware 520 die in der NormalZone angekommenen, also gegebenenfalls manipulierten, vorzugsweise vollständigen Transaktionsdaten an das Trustlet 530. Das Trustlet 530 gleicht die empfangenen Transaktionsdaten mit den gespeicherten Eingangsdaten ab S45. Dabei kann wie zu Fig. 2 beschrieben vorgegan- gen werden und optional Kriterien für Abfolgeänderungen, Aktivierungswechsel (Alt-Tab) und/ oder Einfügeanweisungen (Strg-V) berücksichtigt werden. Bei einem positiven Ergebnis des Abgleiche werden die eingegebenen Daten und/ oder eine Bestätigung des erfolgreichen Vergleiches an die Transaktionssoftware 520 übertragen S46. Die Bestätigung kann mit einem privaten (asymmetrischen) Schlüssel verschlüsselt und/ oder signiert sein. Die Transaktionssoftware 520 in der NormalZone gibt die Bestätigung als Beweis der Richtigkeit an ein Hintergrundsystem 10 weiter S47, welches die Daten der Transaktion entschlüsselt und/ oder deren Signatur prüft S48. Bei erfolgreicher Prüfung wird die Transaktion ausgeführt und ansonsten zu- rückgewiesen. Die Transati onssoftware 520 erhält eine entsprechende Rückmeldung in Schritt S49.

Durch dieses Verfahren ist es einem Angreifer in der NormalZone nicht möglich, die eingegebenen Daten zu manipulieren. Bei einer Manipulation während der Eingabe der Transaktionsdaten fällt diese im Schritt S45 des Abgleichens auf. Bei einer Manipulation nach Schritt S45 fällt der Angriff in Schritt S48 auf. Zudem kann das Hintergrundsystem 10 anhand der signierten/verschlüsselten Daten den Absender der Transaktion verifizieren.