-
Die vorliegende Erfindung betrifft ein Online-Banking-Verfahren zum sicheren, elektronischen Übertragen von Daten von einer ersten Datenverarbeitungseinrichtung an eine zweite Datenverarbeitungseinrichtung, wobei die Datenübertragung einen Überweisungsvorgang betrifft. Ferner betrifft die Erfindung eine Datenverarbeitungseinrichtung zum sicheren, elektronischen Übertragen von Daten an eine zweite Datenverarbeitungseinrichtung und ein Datenverarbeitungssystem, das diese Datenverarbeitungseinrichtung sowie eine zweite Datenverarbeitungseinrichtung umfasst, wobei die beiden Datenverarbeitungseinrichtungen über ein elektronisches Netzwerk miteinander verbunden sind.
-
Die sichere Datenübertragung ist bei vernetzten Datenverarbeitungseinrichtungen sehr wichtig. Insbesondere wenn vertrauliche Daten über ein weltweites Netzwerk wie das Internet von einer Datenverarbeitungseinrichtung an eine andere Datenverarbeitungseinrichtung übertragen werden, ist das Risiko besonders groß, dass Dritte versuchen, Kenntnis von sicherheitsrelevanten oder vertraulichen Daten zu erlangen oder die Übertragung dieser Daten für eigene Zwecke auszunutzen. Für die Absicherung von sensiblen Daten oder Online-Geschäften mit einem E-Commerce-Anbieter im Internet wird häufig die schlichte Eingabe eines Nutzernamens und eines persönlichen Kennworts verwendet. Nachdem sich der Nutzer durch die Eingabe dieser Daten authentifiziert hat, wird z. B. das Online-Geschäft mit dem E-Commerce-Anbieter abgewickelt. Nachteilhaft an einer solchen Abwicklung ist, dass Dritte im Namen des berechtigen Nutzers Online-Geschäfte abwickeln können, wenn sie sich Zugang zu dem Nutzernamen und dem persönlichen Kennwort des Nutzers verschafft haben.
-
Es sind folgende Techniken bekannt, mit denen sich unberechtigte Dritte widerrechtlich vertrauliche Daten von Nutzern beschaffen:
-
Der Nutzer wird durch einen Link auf eine gefälschte Webseite geleitet, auf der er seinen Nutzernamen und sein Kennwort eingibt (so genanntes „Phishing“). Ferner ist es bekannt, den Nutzer z. B. über eine Manipulation eines DNS (Domain Name System)-Servers zu einer gefälschten Webseite zu lenken, die auch bei korrekter manueller Eingabe der richtigen Adresse (URL) der Webseite auf einen gefälschten Server führt (so genanntes „Pharming“). Des Weiteren ist es bekannt, die Daten, die von dem Nutzer zu einem Server gesandt werden sollen, entweder abzufangen und anstelle der Originaldaten in verändertem Kontext zum Server zu senden oder diese Daten zu kopieren und zu einem späteren Zeitpunkt in verändertem Kontext nochmals zum Server zu senden (so genannte „Replay-Attacke“).
-
Des Weiteren gibt es Programme, welche Tastatureingaben aufzeichnen und an unberechtigte Dritte über das Internet versenden. Es ist auch bekannt, zusätzlich die Aktionen von Auswahleinrichtungen für den Bildschirm, wie z. B. einer elektronischen Maus oder eines Touchpads in Verbindung mit den zugeordneten Bildschirminhalten aufzuzeichnen und unberechtigt an Dritte zu versenden. Diese Verfahren sind unter dem Begriff „Keylogging“ bekannt.
-
Schließlich ist es bekannt, den Datenverkehr zwischen den beiden Datenverarbeitungseinrichtungen, welche die sicherheitsrelevanten Daten austauschen, über einen Computer eines unberechtigten Dritten unbemerkt zu leiten, so dass der Datenverkehr über diesen Computer läuft, was ein Abgreifen oder eine Manipulation des Datenverkehrs ermöglicht. Der zwischengeschaltete Computer kann sich hierbei gegenüber der Datenverarbeitungseinrichtung des Nutzers als Server und gegenüber dem Server als Nutzer ausgeben und leitet die Daten des Einen an den Anderen weiter, wobei er Informationen abgreift und/oder verfälscht. Dieses Verfahren ist unter dem Begriff „Man-in-the-Middle-Attacke“ bekannt.
-
Die vorstehend genannten Verfahren zur unberechtigten Beschaffung von sicherheitsrelevanten bzw. vertraulichen Daten werden häufig auch in Kombination eingesetzt. Um die Datenübertragung besser abzusichern, gibt es insbesondere im Bereich des Online-Bankings oder beim Einloggen in Firmennetzwerke sicherere Übertragungsverfahren, welche die Kenntnis eines bestimmten persönlichen Kennwortes mit dem Besitz eines bestimmten Authentifizierungsmediums kombinieren. Diese Verfahren sind unter dem Begriff „Zwei-Faktor-Authentifizierung“ bekannt.
-
Beim Online-Banking sind Verfahren bekannt, bei denen einem Nutzer eine Liste mit Transaktionsnummern (TAN) übermittelt wird. Um eine Online-Überweisung durchzuführen, stellt der Nutzer über seine Datenverarbeitungseinrichtung eine Internet-Verbindung mit dem Bankserver her und gibt die für die Überweisung erforderlichen Daten in ein Formular ein. Bevor diese Überweisungsdaten (i.d.R. in einem abschließenden Bestätigungsschritt) als verbindlicher Auftrag an den Bankserver übertragen werden, wird der Nutzer aufgefordert, eine Transaktionsnummer seiner Liste einzugeben. Durch Eingabe dieser Transaktionsnummer durch den Nutzer wird diese mit den Überweisungsdaten verknüpft. Eine wesentliche Eigenschaft der Transaktionsnummer ist, dass sie nur für einen Überweisungsvorgang oder einen anderen Datenübertragungsvorgang gültig ist. Sollte ein unberechtigter Dritter daher Kenntnis von einer verwendeten Transaktionsnummer erhalten, kann er diese nicht mehr für eine weitere Transaktion verwenden. Beim Bankserver sind alle gültigen Transaktionsnummern des Nutzers gespeichert. Auf diese Weise kann der Bankserver prüfen, ob die Überweisungsdaten tatsächlich von dem Absender, welcher sich bei der Durchführung der Online-Überweisung eingeloggt hatte, stammen. Nachteilhaft an diesem Verfahren ist, dass es nicht gegen so genannte Phishing- und Pharming-Attacken schützt. Ein unberechtigter Dritter könnte durch eine solche Attacke Kenntnis von einer gültigen Transaktionsnummer erlangen und diese dann für eigene Zwecke verwenden.
-
Um sich gegen solche Phishing- und Pharming-Attacken zu schützen, gleichzeitig aber ein kostengünstiges Online-Überweisungsverfahren bereitzustellen, wurden so genannte indizierte Transaktionsnummern eingeführt. In diesem Fall ist jeder Transaktionsnummer ein Index zugeordnet. Im einfachsten Fall ist die Liste der Transaktionsnummern durchnummeriert. Bei einem Überweisungsvorgang fordert der Bankserver den Nutzer auf, eine bestimmte Transaktionsnummer mit einem bestimmten Index einzugeben, um die Herkunft der Überweisungsdaten sicher nachweisen zu können. Dieses Verfahren schützt im begrenzten Umfang gegen Phishing- und Pharming-Attacken, da ein unberechtigter Dritter, der Kenntnis von einer oder mehreren Transaktionsnummern mit jeweils zugehörigem Index erlangt hat, einen unberechtigten Überweisungsvorgang nur dann ausführen kann, wenn der Bankserver beim unberechtigten Überweisungsvorgang zufällig Transaktionsnummern mit genau diesen Indizes abfragt. Nachteilhaft an dem Verfahren mit indizierten Transaktionsnummern ist jedoch, dass es nicht gegen „Man-in-the-Middle-Attacken“ schützt. Es ist weiterhin möglich, dass sich ein unberechtigter Dritter zwischen die Datenverarbeitungseinrichtung des Nutzers und den Bankserver schaltet und auf diese Weise Daten des Überweisungsvorgangs, wie z. B. die Kontonummer und den Betrag, ändert, ohne dass der Nutzer dies bemerkt.
-
Außerdem ist es bekannt, Daten für die Übertragung mit einer digitalen Signatur zu versehen. Solche Verfahren sind jedoch in der Anwendung aufwändig. Außerdem ist die Implementierung mit hohen Kosten verbunden, wenn separate Hardwarekomponenten, wie z. B. ein Chipkartenterminal, eingesetzt werden. Aus diesem Grund werden digitale Signaturen bei Datenübertragungen, an denen Endverbraucher beteiligt sind, kaum eingesetzt.
-
Aus der
US 6 772 348 B1 ist ein System und Verfahren zum Abrufen von Sicherheitsdaten bekannt, die für die sichere Übertragung von Netzwerkpaketen erforderlich sind. Dabei wird ein Caching-Mechanismus verwendet, um die Geschwindigkeit beim Abrufen der Sicherheitsdaten erheblich zu erhöhen. Das System verfügt über eine Vielzahl von Sicherheitsrichtlinienfiltern, und jeder Filter kann mehrere Sicherheitsdateneinträge aufweisen, die verschiedenen Kommunikationsströmen zugeordnet sind. Um einen schnellen Abruf von Sicherheitsdaten für Netzwerkkommunikationspakete zu ermöglichen, verwaltet das System eine Cache-Tabelle. Jeder Eintrag der Cache-Tabelle enthält Daten, die einen Kommunikationsstrom identifizieren. Wenn ein Paket das System passiert, leitet ein Sicherheitstreiber einen Indexwert aus den Kommunikationsstromdaten des Pakets ab, und der Cache-Tabelleneintrag, der dem abgeleiteten Indexwert entspricht, wird dann abgerufen. Wenn die abgerufenen Sicherheitsdaten im Cache-Tabelleneintrag mit dem Paket übereinstimmen, werden die Sicherheitsdaten für die sichere Zustellung des Pakets verwendet.
-
Aus der
US 2005/0177603 A1 ist ein System und Verfahren zur Durchführung einer Echtzeit-Replikation von Daten über ein Netzwerk bekannt. Eine Spiegelungsmaschine empfängt eine Schreibanforderung von einer Hostanwendung, die auf einem Quellcomputer arbeitet. Die Spiegelungsmaschine vergleicht die Daten in der Schreibanforderung mit den entsprechenden im Speicher gespeicherten Daten. Wenn die Daten in der Schreibanforderung von den gespeicherten Daten abweichen, verarbeitet die Spiegelungsmaschine die Schreibanforderung. Bei der Verarbeitung wird eine Datensignatur über Daten in der Schreibanforderung hinweg berechnet und die Signatur mit einer Transaktionsnummer und einem Statusbyte verknüpft. Die Transaktionsnummer dient der eindeutigen Identifizierung der Datensignatur und kann verwendet werden, um sicherzustellen, dass die Signatur ordnungsgemäß behandelt wird, wenn sie z.B. außer Betrieb genommen wird. Das Statusbyte enthält Informationen zur Behandlung der Datensignatur und der Transaktionsnummer sowie Informationen zur Berechnung der Datensignatur.
-
Es ist die Aufgabe der vorliegenden Erfindung, ein Verfahren der eingangs genannten Art bereitzustellen, mit dem eine sichere, elektronische Übertragung von Daten zwischen zwei Datenverarbeitungseinrichtungen möglich ist. Dabei soll das Verfahren kostengünstig implementiert und betrieben werden können. Ferner ist es eine Aufgabe der vorliegenden Erfindung, eine Datenverarbeitungseinrichtung und ein Datenverarbeitungssystem bereitzustellen, die es ermöglichen, Daten zwischen zwei Datenverarbeitungseinrichtungen sicher elektronisch zu übertragen.
-
Diese Aufgabe wird zum einen durch ein Online-Banking-Verfahren mit den Merkmalen des Anspruchs 1, zum anderen durch eine Datenverarbeitungseinrichtung mit den Merkmalen des Anspruchs 11 bzw. ein Datenverarbeitungssystem mit den Merkmalen des Anspruchs 12 gelöst.
-
Bei dem erfindungsgemäßen Online-Banking-Verfahren werden einem Nutzer oder der ersten Datenverarbeitungseinrichtung für die Datenübertragung an die zweite Datenverarbeitungseinrichtung Mittel zum Gewinnen einer Vielzahl von Transaktionscodes aus einer Vielzahl von Indizes übermittelt und die elektronische Datenübertragung von der ersten Datenverarbeitungseinrichtung an die zweite Datenverarbeitungseinrichtung wird mit einem bestimmten Transaktionscode der Vielzahl von Transaktionscodes verknüpft, wobei der Index dieses einen Transaktionscodes in einem Zusammenhang mit den übertragenen Daten steht, wobei sich der Index des einen Transaktionscodes aus Ziffern der Kontonummer des Empfängers und Ziffern des Betrages für eine Überweisung ableitet.
-
Bei bekannten Datenübertragungsverfahren wird zur Sicherung der Datenübertragung allenfalls ein i.d.R. nach dem Zufallsprinzip ausgewählter Index vorgegeben, der dazu dient, einen bestimmten Transaktionscode auszuwählen, mit dem die zu übertragenden Daten verknüpft werden. Dies ist beispielsweise bei einem Online-Banking-Verfahren mit indizierten Transaktionsnummern der Fall. Bei dem erfindungsgemäßen Verfahren steht der Index aber in einem Zusammenhang mit den übertragenden Daten, d.h. der Index wird anhand der zu übertragenden Daten ausgewählt bzw. ermittelt. Aufgrund dieses Zusammenhangs zwischen dem bei der Datenübertragung verwendeten Transaktionscode, seinem zugeordneten Index und den zu übertragenden Daten, ist es selbst bei einer „Man-in-the-Middle-Attacke“ nicht möglich, unbemerkt die zu übertragenden Daten zu ändern. Eine solche Veränderung hätte nämlich zur Folge, dass nicht mehr der vorgegebene Zusammenhang zwischen den übertragenen Daten und dem Index des verwendeten Transaktionscodes besteht. Eine Veränderung der übertragenen Daten würde bei der Prüfung der Datenübertragung entweder zu keinem gültigen Index oder zu einem anderen Index und somit auch zu einem anderen Transaktionscode führen, was leicht bei der zweiten Datenverarbeitungseinrichtung festgestellt werden kann.
-
Ein weiterer Vorteil des erfindungsgemäßen Verfahrens ist es, dass es mit nur wenigen Änderungen des bekannten Verfahrens mit indizierten Transaktionsnummern ein weitaus höheres Maß an Sicherheit bietet, als dieses bekannte Verfahren. Es ist somit sehr kostengünstig und mit sehr geringem Aufwand implementierbar.
-
Der Zusammenhang zwischen den zu übertragenden Daten und dem Index ist vorzugsweise so einfach, dass er von einem Nutzer hergestellt oder nachvollzogen werden kann.
-
Gemäß einer bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens ist der Transaktionscode nur einmal gültig. Es wird somit bei jeder Datenübertragung ein anderer Transaktionscode verwendet. Ein unberechtigter Dritter kann einen abgefangenen Transaktionscode somit nicht für die Verknüpfung mit Daten einer weiteren Datenübertragung nutzen.
-
Gemäß einer weiteren bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens gibt es eine direkte Abbildung zwischen der Vielzahl von Transaktionscodes und der Vielzahl von Indizes. Diese Abbildung der Menge der Indizes auf die Menge der Transaktionscodes ist vorzugsweise surjektiv, besonders bevorzugt bijektiv. Ein Index verweist in diesem Fall somit auf genau einen Transaktionscode.
-
Gemäß einer weiteren bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens wird der Index des einen Transaktionscodes mittels eines Algorithmus aus den zu übertragenden Daten bestimmt. Dieser Algorithmus kann als Parameter alle zu übertragenden Daten verwenden oder einen Teil der zu übertragenden Daten. Vorzugsweise werden insbesondere die Daten für die Ermittlung des Index des einen Transaktionscodes herangezogen, die gegen Veränderung geschützt werden sollen. Im einfachsten Fall entspricht der Index direkt den zu sichernden Daten oder einem Teil dieser Daten. In einer komplizierten Ausgestaltung ergibt sich der Index aus einem funktionalen Zusammenhang mit den zu sichernden, zu übertragenden Daten. Falls die auf diese Weise gesicherten Daten von einem unberechtigten Dritten verändert werden, ist der vorgegebene funktionale Zusammenhang zwischen dem Index und diesen Daten nicht mehr erfüllt, so dass die Manipulation dieser Daten leicht festgestellt werden kann.
-
Ein weiterer Vorteil des erfindungsgemäßen Verfahrens ist es, dass es an sich nicht erforderlich ist, dem Nutzer vor der Datenübertragung mitzuteilen, welchen Index der Transaktionscode für die Datenübertragung hat. Bei dem erfindungsgemäßen Verfahren reicht es nämlich aus, dass der Index aus dem Zusammenhang mit den zu übertragenden Daten ermittelt wird.
-
Gemäß einer weiteren bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens werden die Mittel zur Gewinnung der Vielzahl von Transaktionscodes aus der Vielzahl von Indizes gespeichert und die erste Datenverarbeitungseinrichtung bestimmt aus den zu übertragenden Daten automatisch den einen Transaktionscode und verknüpft die zu übertragenden Daten mit diesem Transaktionscode. Bei dieser Ausgestaltung ist es vorteilhafterweise nicht mehr nötig, dass der Nutzer den Transaktionscode gewinnt bzw. auswählt und eingibt. Die Gewinnung bzw. Auswahl des Transaktionscodes und die Verknüpfung mit den zu übertragenden Daten erfolgt in diesem Fall automatisch und für den Nutzer unsichtbar. Allerdings sollten in diesem Fall die Mittel zur Gewinnung der Vielzahl von Transaktionscodes aus einer Vielzahl von Indizes vor einem Zugriff durch unberechtigte Dritte geschützt sein.
-
Gemäß einer weiteren bevorzugten Ausgestaltung des erfindungsgemäßen Verfahrens prüft die zweite Datenverarbeitungseinrichtung anhand des bei der Datenübertragung verwendeten Transaktionscodes die Integrität der vom Nutzer oder der ersten Datenverarbeitungseinrichtung übertragenen Daten. Dies kann in einer Ausgestaltung dadurch geschehen, dass der verwendete Transaktionscode zunächst dahingehend geprüft wird, ob er zur Menge gültiger Transaktionscodes gehört und dann der Index bestimmt wird, der diesem Transaktionscode zugeordnet ist. Danach wird geprüft, ob dieser Index in dem vorgegebenen Zusammenhang mit den übertragenen Daten steht. In einer alternativen Ausgestaltung kann die Prüfung auch dadurch durchgeführt werden, dass aus den übertragenen Daten über den vorgegeben Zusammenhang der zu diesen Daten gehörende Index ermittelt wird und dabei geprüft wird, ob der so ermittelte Index ein gültiger Index ist und in einem zweiten Schritt dann geprüft wird, ob der diesem Index zugeordnete Transaktionscode mit dem übermittelten Transaktionscode identisch ist. Wie bei bekannten Verfahren mit Transaktionsnummern ist auch bei dem erfindungsgemäßen Verfahren der Transaktionscode nur für eine Datenübertragung gültig.
-
Bei dem erfindungsgemäßen Online-Banking-Verfahren entspricht die erste Datenverarbeitungseinrichtung einer Datenverarbeitungseinrichtung eines Nutzers und die zweite Datenverarbeitungseinrichtung einem Bankserver. Das erfindungsgemäße Online-Banking-Verfahren ist insbesondere eine Verbesserung der bekannten Online-Banking-Verfahren mit indizierten Transaktionsnummern. Die Datenübertragung kann einer Mitteilung oder einem Auftrag an die Bank entsprechen. Sie betrifft erfindungsgemäß jedoch einen Überweisungsvorgang, der insbesondere sicherheitskritische und nicht sicherheitskritische Daten umfasst. Bei dem erfindungsgemäßen Verfahren steht der Index des einen Transaktionscodes, der mit der Datenübertragung verknüpft ist, in einem Zusammenhang mit sicherheitskritischen Daten der Überweisung. In diesem Fall ist nämlich eine Manipulation der sicherheitskritischen Daten leicht erkennbar. Die sicherheitskritischen Daten umfassen erfindungsgemäß die Kontonummer des Empfängers. Bei dem erfindungsgemäßen Verfahren leitet sich der Index des einen Transaktionscodes aus Ziffern der Kontonummer des Empfängers ab. Durch eine Manipulation der Kontonummer des Empfängers bei einer „Man-in-the-Middle-Attacke“ könnte die Überweisung nämlich besonders einfach auf ein beliebiges anderes Konto umgeleitet werden. Um zu verhindern, dass die Überweisung auf ein Konto mit derselben Kontonummer bei einer anderen Bank umgeleitet werden kann, ist es ferner möglich, die Bankleitzahl zu schützen, indem auch diese Daten in den Zusammenhang zwischen den zu übertragenden Daten und dem Index des einen Transaktionscodes mit einbezogen werden. Es könnten auch alle Empfängerdaten, d. h. ggf. auch der Name des Empfängers, oder ein Verwendungszweck in diesen Zusammenhang mit einbezogen.
-
Außerdem umfassen die sicherheitskritischen Daten erfindungsgemäß auch den Betrag für die Überweisung. Wird auch dieser Betrag in den Zusammenhang zwischen den Überweisungsdaten und dem Index des mit den Überweisungsdaten verknüpften Transaktionscode einbezogen, kann auch eine Manipulation des Betrags leicht festgestellt werden. Der Index des einen Transaktionscodes leitet sich erfindungsgemäß aus Ziffern der Kontonummer des Empfängers und Ziffern des Betrages der Überweisung ab.
-
Gemäß einer bevorzugten Weiterbildung des erfindungsgemäßen Online-Banking-Verfahrens werden die Mittel zur Gewinnung der Vielzahl von Transaktionscodes aus der Vielzahl von Indizes gespeichert und die Datenverarbeitungseinrichtung des Nutzers bestimmt aus den zu übertragenden sicherheitskritischen Daten automatisch den einen Transaktionscode und verknüpft diesen Transaktionscode mit den zu übertragenden Daten. Auf diese Weise kann das Online-Banking-Verfahren im Vergleich zu herkömmlichen Verfahren mit Transaktionsnummern vereinfacht und gleichzeitig sicherer ausgestaltet werden.
-
Gemäß einer weiteren bevorzugten Weiterbildung des erfindungsgemäßen Online-Banking-Verfahrens überträgt der Bankserver vor der eigentlichen Datenübertragung während einer Onlineverbindung mit der Datenverarbeitungseinrichtung des Nutzers einen Code an die Datenverarbeitungseinrichtung, der zeitlich nur während der bestehenden Online-Verbindung gültig ist. Alternativ könnte der Code auch nur für den laufenden Auftrag gültig sein. Der Index des einen Transaktionscodes kann in diesem Fall in einem Zusammenhang mit sowohl diesem Code als auch mit den übertragenen Daten stehen. Diese Ausgestaltung kombiniert ein herkömmliches Online-Banking-Verfahren mit indizierten Transaktionscodes mit dem erfindungsgemäßen Verfahren, bei dem der Index in einem Zusammenhang mit den zu übertragenden Daten steht.
-
Die erfindungsgemäße Datenverarbeitungseinrichtung zum sicheren, elektronischen Übertragen von Daten an eine zweite Datenverarbeitungseinrichtung, wobei die Datenübertragung einen Überweisungsvorgang betrifft, ist gekennzeichnet durch eine Eingabeeinrichtung zur Eingabe zumindest der zu übertragenden Daten, eine erste Daten-Index-Einrichtung zum Ermitteln eines bestimmten Index aus den zu übertragenden Daten, eine erste Index-Transaktionscode-Einrichtung zum Gewinnen eines dem bestimmten Index zugeordneten Transaktionscode aus dem bestimmten Index, eine Verknüpfungseinrichtung zum Verknüpfen der zu übertragenden Daten mit dem gewonnenen Transaktionscode, der dem aus den zu übertragenden Daten ermittelten Index zugeordnet ist, und eine Ausgabeeinrichtung zum Übertragen der mit dem Transaktionscode verknüpften Daten, wobei sich der Index des einen Transaktionscodes aus Ziffern der Kontonummer des Empfängers und Ziffern des Betrages für eine Überweisung ableitet.
-
Mit dieser Datenverarbeitungseinrichtung lässt sich insbesondere von Nutzerseite das erfindungsgemäße Verfahren einfach und automatisch durchführen.
-
Das erfindungsgemäße Datenverarbeitungssystem umfasst die vorstehend beschriebene Datenverarbeitungseinrichtung als erste Datenverarbeitungseinrichtung sowie eine zweite Datenverarbeitungseinrichtung, die mit der ersten Datenverarbeitungseinrichtung über ein elektronisches Netzwerk verbunden ist. Bei diesem Datenverarbeitungssystem weist die zweite Datenverarbeitungseinrichtung auf: eine Empfangseinrichtung zum Empfangen von mit dem Transaktionscode verknüpften Daten von der ersten Datenverarbeitungseinrichtung, eine zweite Daten-Index-Einrichtung zum Ermitteln des Index aus den übertragenen Daten, die der ersten Daten-Index-Einrichtung der ersten Datenverarbeitungseinrichtung entspricht, eine zweite Index-Transaktionscode-Einrichtung zum Gewinnen des dem Index zugeordneten Transaktionscode aus dem Index, die der ersten Index-Transaktionscode-Einrichtung der ersten Datenverarbeitungseinrichtung entspricht, und einer Prüfeinrichtung zum Prüfen von mit dem Transaktionscode verknüpften Daten, die von der ersten Datenverarbeitungseinrichtung empfangen wurden, wobei mit der Prüfeinrichtung prüfbar ist, ob der empfangene Transaktionscode einem Transaktionscode entspricht, der mit der zweiten Index-Transaktionscode-Einrichtung aus dem Index ermittelbar ist, der mittels der zweiten Daten-Index-Einrichtung aus den empfangenen Daten ermittelbar ist.
-
Dieses Datenverarbeitungssystem kann insbesondere als Online-Banking-System für eine Bank mit ihren Nutzern und deren Datenverarbeitungseinrichtungen verwendet werden, wobei das erfindungsgemäße Online-Banking-Verfahren implementiert werden kann.
-
Unter Index im Sinne dieser Erfindung ist jede Art von Information zu verstehen, über die ein zugehöriger Transaktionscode gewinnbar ist. Unter Gewinnung ist jede Art von Abbildung, Ableitung, Berechnung, Ermittlung oder Aufruf einer Funktion zu verstehen, die eine Zuordnung zwischen einem Index und Transaktionscode bewirkt, wobei i.d.R. der Index als gegebene Information vorliegt und der Transaktionscode eine gesuchte, nur dem Nutzer bzw. der Datenverarbeitungseinrichtung des Nutzers bekannte Information darstellt, im Falle eines Funktionsaufrufs der Index also als Eingangsparameter und der Transaktionscode als Rückgabewert fungieren.
-
So sind z.B. folgende Ausgestaltungsvarianten als Mittel zur Gewinnung von Transaktionscodes aus einem Index von der Erfindung umfasst:
-
In der einfachsten Form geschieht die Gewinnung eines Transaktionscodes aus einem Index über eine indizierte TAN-Liste wie vorstehend beschrieben. Die Mittel zur Gewinnung des Transaktionscodes sind in diesem Fall die indizierte TAN-Liste mit der Information, welchem Index welcher Transaktionscode zuzuordnen ist.
-
In einer weiteren Ausgestaltung könnte aber auch eine nicht indizierte TAN-Liste verwendet werden und der Index implizit in den TANs enthalten sein, z.B. als erste zwei Stellen einer sonst sechsstelligen TAN. Die Mittel zur Gewinnung des Transaktionscodes umfassen in diesem Fall die Vorschrift, wie aus einem bekannten Index ein Transaktionscode der TAN-Liste ermittelt wird.
-
Des Weiteren könnte die Gewinnung eines Transaktionscodes aus einem Index auch über eine Tabelle erfolgen, bei der ein Index jeweils über eine Zeilen-Spalten-Koordinate gebildet wird und ein Transaktionscode jeweils durch einen Tabelleneintrag.
-
Die vorgenannten Mittel zur Gewinnung des Transaktionscodes, insbesondere das letztgenannte, könnten auch mit kombinierten Indizes angewendet werden. Z.B. könnte bei der letztgenannten Ausgestaltung über eine Tabelle die Gewinnung eines Transaktionscodes über einen Index dadurch erfolgen, dass mehrere einzelne Zeilen-Spalten-Koordinaten als zusammengesetzter Index fungieren und die jeweils zugehörigen (Teil-)Transaktionscodes als zusammengesetzter Transaktionscode.
-
In einer weiteren Ausgestaltung könnte die Gewinnung eines Transaktionscodes auch über ein spezielles Gerät erfolgen, in das ein Index z.B. über eine Tastatur eingegeben wird und von dem Gerät ein zugehöriger Transaktionscode ermittelt und angezeigt wird.
-
Ein besonderer Vorteil des erfindungsgemäßen Verfahrens, der erfindungsgemäßen Datenverarbeitungseinrichtung und des erfindungsgemäßen Datenverarbeitungssystems ist es, dass die Implementierung sehr einfach und kostengünstig durchgeführt und gleichzeitig eine Manipulation der übertragenen Daten einfach, aber sicher festgestellt werden kann.
-
Die Erfindung wird nun anhand eines Ausführungsbeispiels mit Bezug zu den Zeichnungen erläutert.
- 1 zeigt schematisch ein Ausführungsbeispiel des erfindungsgemäßen Datenverarbeitungssystems,
- 2 zeigt die Transaktionscodes mit den zugeordneten Indizes und
- 3 zeigt ein Beispiel für die bei einer Online-Überweisung zu übertragenden Daten.
-
Das Ausführungsbeispiel betrifft ein Online-Banking-Verfahren sowie die dabei verwendeten Einrichtungen. Es wird jedoch darauf hingewiesen, dass das Verfahren und die Einrichtungen immer dann eingesetzt werden können, wenn Daten von einer Datenverarbeitungseinrichtung an eine andere Datenverarbeitungseinrichtung auf elektronischem Weg sicher übertragen werden sollen.
-
Das Datenverarbeitungssystem zum Durchführung der Online-Überweisung ist schematisch in 1 gezeigt. Es umfasst eine erste Datenverarbeitungseinrichtung 1 eines Nutzers, z. B. eines Bankkunden, und als zweite Datenverarbeitungseinrichtung einen Bankserver 2.
-
Die Datenverarbeitungseinrichtung 1 des Nutzers umfasst eine zentrale Recheneinheit 3, mit der eine Daten-Index-Einrichtung 4, eine Eingabeeinrichtung 5, eine Ausgabeeinrichtung 6 und eine Index-Transaktionscode-Einrichtung 7 verbunden sind. In die Eingabeeinrichtung 5 können zumindest die zu übertragenden Daten eingegeben werden. Mit der Daten-Index-Einrichtung 4 kann aus den zu übertragenden Daten ein Index bestimmt werden, wie es später erläutert wird. Mit der Index-Transaktionscode-Einrichtung 7 kann aus einem bestimmten Index ein Transaktionscode gewonnen werden, wie es auch später erläutert wird. Mit der zentralen Recheneinheit 3 können die zu übertragenden Daten mit einem von der Index-Transaktionscode-Einrichtung 7 gewonnenen Transaktionscode verknüpft werde. Die mit dem Transaktionscode verknüpften Daten können dann mittels der Ausgabeeinrichtung 6 an andere Datenverarbeitungseinrichtungen übertragen werden.
-
Der Bankserver 2 weist eine zentrale Recheneinheit 7 auf, mit der eine Empfangseinrichtung 10, eine weitere Daten-Index-Einrichtung 9 und eine weitere Index-Transaktionscode-Einrichtung 11 verbunden sind. Mit der Empfangseinrichtung 10 können Daten von der Datenverarbeitungseinrichtung 1 des Nutzers empfangen werden. Die Einheiten 6 und 10 können im Übrigen jedoch auch so ausgebildet sein, dass sie Daten sowohl empfangen, als auch senden können. Über die Einheiten 6 und 10 können die Datenverarbeitungseinrichtung 1 des Nutzers und der Bankserver 2 eine Online-Verbindung über ein elektronisches Netzwerk, wie z. B. das Internet 12, oder andere Datenübertragungsmittel herstellen. Auf diese Weise können Daten zwischen der Datenverarbeitungseinrichtung 1 des Nutzers und dem Bankserver 2 ausgetauscht werden. Die Daten-Index-Einrichtung 9 und die Index-Transaktionscode-Einrichtung 11 des Bankservers 2 entsprechen hinsichtlich ihrer Funktion den jeweiligen Einrichtungen 4 und 7 der Datenverarbeitungseinrichtung 1 des Nutzers.
-
Im Folgenden werden das Online-Banking-Verfahren sowie die Ausbildungen der Einrichtungen des Datenverarbeitungssystems erläutert:
-
Zunächst wird dem Nutzer - als Mittel zur Gewinnung einer Vielzahl von Transaktionscodes aus einer Vielzahl von Indizes - auf an sich bekannte Weise eine Vielzahl von nutzerspezifischen Transaktionscodes, insbesondere Transaktionsnummern (TAN), übermittelt. Dabei ist jeder Transaktionsnummer genau ein Index zugeordnet. Es gibt somit eine bijektive Abbildung zwischen der Menge der Transaktionsnummern und der Menge der Indizes. Jede Transaktionsnummer ist nur für eine Datenübertragung gültig. Eine Tabelle 16 mit Transaktionsnummern und den zugeordneten Indizes ist in 2 gezeigt. Eine solche Tabelle könnte den Nutzern für Online-Überweisungen oder für andere Transaktionen mit der Bank vorab auf beliebige Weise übermittelt werden. Anstatt der Tabelle könnte dem Nutzer auch eine Vorrichtung oder ein Algorithmus zur Verfügung gestellt werden, der entsprechende Tabellen erzeugt, wobei die Vorschrift, nach denen die Tabelle 16 für einen bestimmten Nutzer erzeugt wird, bankseitig bekannt sein müssten, damit die entsprechenden Tabellen 16 bei der Bank jeweils bekannt sind. Die Übermittlung der Tabelle 12 entspricht bei dem bekannten Online-Banking-Verfahren der Übermittlung der indizierten Transaktionsnummern.
-
Der Nutzer will nun Daten auf sichere Weise elektronisch an den Bankserver 2 übertragen. Er will beispielsweise eine Online-Überweisung an einen bestimmten Empfänger vornehmen. Hierfür wird zwischen der Datenverarbeitungseinrichtung 1 und dem Bankserver 2 über das Internet 12 eine Online-Verbindung hergestellt. Der Datenverarbeitungseinrichtung 1 wird daraufhin von dem Bankserver 2 ein Formular 13 zur Verfügung gestellt, wie es in 3 dargestellt ist. In dieses Formular kann der Nutzer mittels der Eingabeeinrichtung 5 seiner Datenverarbeitungseinrichtung 1 die Daten für die Online-Überweisung eingeben. Das Formular enthält Felder zum Spezifizieren des Empfängers, wie den Empfängernamen, die Bankleitzahl der Bank des Empfängers und die Kontonummer des Empfängers. Ferner kann der zu überweisende Betrag eingegeben werden. Schließlich enthält das Formular ein Feld für die Eingabe einer Transaktionsnummer, die der Nutzer bzw. seine Datenverarbeitungseinrichtung 1 aus der Liste der Tabelle 12 auswählen kann.
-
Bei der Auswahl der Transaktionsnummer wird bei dem beschriebenen Ausführungsbeispiel das folgende Verfahren angewandt:
-
Der Index der Transaktionsnummer, mit welcher die Überweisungsdaten verknüpft werden sollen, steht in einem Zusammenhang mit den zu übertragenden Daten, d.h. hier mit den Online-Überweisungsdaten. Dies bedeutet, dass eine Veränderung des Teils der übertragenden Daten, der in den Zusammenhang mit dem Index eingeht, zu einem anderen Index führt.
-
Im hier beschriebenen Ausführungsbeispiel entspricht der Index 15 der Transaktionsnummer, die mit den zu übertragenden Daten, d.h. den Online-Überweisungsdaten, verknüpft werden soll, den letzten beiden Ziffern der Kontonummer 14 des Empfängers. In dem in den 2 und 3 gezeigten Beispiel sind diese letzten beiden Ziffern „21“. Der Index 15 kann von dem Nutzer an Hand seiner Überweisungsdaten einfach ermittelt werden. Es ist jedoch auch möglich, dass die Daten-Index-Einrichtung 4 der Datenverarbeitungseinrichtung 1 des Nutzers diesen Index 15 automatisch aus den zu übertragenden Überweisungsdaten ermittelt. Eine solche automatisierte Ermittlung des Index 15 ist insbesondere dann zweckmäßig, wenn die Vorschrift, nach welcher der Index 15 ermittelt wird, komplizierter als in dem hier beschriebenen Ausführungsbeispiel ist und mehrere Daten bei der Ermittlung des Index 15 mit einbezogen werden.
-
Die Transaktionsnummer mit dem Index „21“ ist „85821745“. Dies kann der Nutzer leicht an Hand seiner Tabelle, die ihm vorab übermittelt wurde, ablesen und diese Transaktionsnummer dann über die Eingabeeinrichtung 5 eingeben. Die Tabelle könnte jedoch auch in der Datenverarbeitungseinrichtung 1 des Nutzers gespeichert sein. In diesem Fall könnte die Index-Transaktionscode-Einrichtung 7 die Transaktionsnummer „85821745“ automatisch gewinnen. Der Zusammenhang zwischen der Transaktionsnummer und dem dieser zugeordneten Index könnte jedoch auch komplizierter sein. Beispielsweise könnte in der Index-Transaktionscode-Einrichtung 7 ein Algorithmus gespeichert sein, der aus einem Index als Eingangsgröße eine Transaktionsnummer als Ausgangsgröße erzeugt.
-
Diese Transaktionsnummer „85821745“ wird mit den Online-Überweisungsdaten verknüpft. Dies geschieht durch die zentrale Recheneinheit 3 der Datenverarbeitungseinrichtung 1 des Nutzers. Sobald die Verknüpfung der Transaktionsnummer mit den Online-Überweisungsdaten, hergestellt ist, können die Online-Überweisungsdaten auf an sich bekannte Weise über das Internet 12 an den Bankserver 2 übertragen werden.
-
Gemäß einer anderen Ausgestaltung wird das Formular 13 von einem Programm, welches auf der Datenverarbeitungseinrichtung 1 des Nutzers ausgeführt wird, erzeugt. Die mit der gewonnenen Transaktionsnummer verknüpften Online-Überweisungsdaten können dann auf an sich bekannte Weise an den Bankserver 2 übertragen werden.
-
Beim Herstellen der Online-Verbindung zwischen der Datenverarbeitungseinrichtung 1 des Nutzers und dem Bankserver 2 authentifiziert sich der Nutzer, so dass der Bankserver 2 weiß, von welchem Nutzer die Überweisungsdaten kommen sollten. Alternativ kann diese Information jedoch auch zusammen mit den Online-Überweisungsdaten übertragen werden.
-
Zum Prüfen einer unmanipulierten Übertragung der Überweisungsdaten überprüft die zentrale Recheneinheit 8 des Bankservers 2 die Transaktionsnummer, die mit den Überweisungsdaten verknüpft ist, auf Zugehörigkeit zur Menge gültiger Transaktionsnummern und ermittelt im Falle positiver Prüfung den Index, der dieser Transaktionsnummer zugeordnet ist. Im gezeigten Ausführungsbeispiel ist der Transaktionsnummer „85821745“ der Index „21“ zugeordnet. Dieser Schritt wird in der Index-Transaktionscode-Einrichtung 11 durchgeführt. Daraufhin ermittelt die Daten-Index-Einrichtung 9 des Bankservers 2, ob dieser Index in dem vorgegebenen Zusammenhang mit den Überweisungsdaten steht. Hierbei verwendet die Daten-Index-Einrichtung 9 das gleiche Verfahren, das angewandt wurde, als der Index der Transaktionsnummer bestimmt wurde, die mit den Online-Überweisungsdaten verknüpft wurde. Im vorliegenden Fall wird demnach von der zentralen Recheneinheit 8 des Bankservers 2 geprüft, ob der Index den letzten beiden Ziffern der Kontonummer des Empfängers entspricht. Falls die Überweisungsdaten unmanipuliert übertragen wurden, ist die Kontonummer weiterhin „58204821“, d.h. die letzten beiden Ziffern dieser Kontonummer entsprechen dem Index der Transaktionsnummer „85821745“.
-
Alternativ kann die Prüfung auch dadurch durchgeführt werden, dass aus den übertragenen Daten über den vorgegeben Zusammenhang der zu diesen Daten gehörende Index ermittelt wird und dabei geprüft wird, ob der so ermittelte Index ein gültiger Index ist und in einem zweiten Schritt dann geprüft wird, ob der diesem Index zugeordnete Transaktionscode mit dem übermittelten Transaktionscode identisch ist
-
Jede Manipulation an den letzten beiden Ziffern der Kontonummer, insbesondere während der Datenübertragung, kann somit bankseitig leicht festgestellt werden. Außerdem können auf diese Weise beliebige weitere sicherheitskritische Daten gesichert werden.
-
Falls beispielsweise durch eine „Man-in-the-Middle-Attacke“ die Kontonummer des Empfängers geändert wurde, so dass die letzten beiden Ziffern zum Beispiel „03“ sind, würden die Daten-Index-Einrichtung 9 und die Index-Transaktionscode-Einrichtung 11 des Bankservers 2 aus dieser Kontonummer über den Index „03“ die Transaktionsnummer „43883978“ ermitteln, wie es aus der Tabelle 16 der 2 ersichtlich ist. Diese Transaktionsnummer entspricht nicht der Transaktionsnummer, die mit den Überweisungsdaten verknüpft war, so dass zentrale Recheneinheit 8 des Bankservers 2 die Manipulation der Empfängerdaten leicht erkennen kann.
-
Es wird darauf hingewiesen, dass die soeben beschriebene Vorschrift, nach welcher der Index der Transaktionsnummer, mit welcher die zu übertragenden Daten verknüpft werden, aus den zu übertragenden Daten bestimmt wurde, eine sehr einfache Vorschrift ist. Es können hier jedoch sehr viel komplexere funktionale Zusammenhänge oder Algorithmen verwendet werden, die insbesondere alle Daten einschließen können, die vor einer Manipulation geschützt werden sollen. Dies könnten insbesondere alle Ziffern der Kontonummer des Empfängers sein, wobei der Algorithmus ein üblicher Prüfziffernalgorithmus sein könnte, wie er bei der Überprüfung von Kontonummern auf formatmäßige Korrektheit zum Schutz gegen Tippfehler oder Zahlendreher angewendet wird. Ferner könnten auch alle Ziffern der Bankleitzahl des Empfängers sowie der Name des Empfängers einbezogen werden. Ferner sollte der Betrag vor einer Manipulation geschützt werden und somit bei der Bestimmung des Index 15 berücksichtigt werden. Dabei kann die Bestimmung des Index 15 vom Nutzer selbst oder vollständig automatisch von der Datenverarbeitungseinrichtung 1 des Nutzers durchgeführt werden. Gleichermaßen kann bankseitig die Prüfung der empfangenen Daten vollständig automatisch ausgeführt werden.
-
Vorteilhafterweise wird jedoch eine Vorschrift eingesetzt, die einerseits relativ sicher gegen Manipulationen der zugrunde liegenden Daten schützt, andererseits aber von einem Nutzer einfach nachvollzogen werden kann. Z.B. könnten für jeden Nutzer individuell verschiedene Ziffern aus einer Kontonummer als Index verwendet werden. Bei Nutzer A könnte z.B. die 3. und 5. Ziffer einer eingegebenen Kontonummer den Index bilden, bei Nutzer B hingegen die 2. und 6. Ziffer. Hierdurch wären - gegenüber dem oben dargestellten Verfahren, bei dem die letzten beiden Ziffern einer Kontonummer herangezogen wurden - auch Manipulationsversuche ausgeschlossen, bei denen ein Betrüger versuchen könnte, sich z.B. hundert verschiedene, auf Endziffern von 00 bis 99 endende Kontonummern zuzulegen, um einen Endziffernraum von 00 bis 99 vollständig abzudecken, um in einer Man-in-the-Middle-Attacke eine vom Nutzer eingegeben Kontonummer, die z.B. auf „17“ endet, auf diejenige seiner hundert Kontonummern abzufälschen, die ebenfalls auf „17“ endet.
-
Gemäß einer Weiterbildung dieses Ausführungsbeispiels wird ein herkömmliches Online-Überweisungsverfahren mit indizierten Transaktionsnummern mit dem erfindungsgemäßen Verfahren verknüpft. Dabei überträgt der Bankserver 2 der Datenverarbeitungseinrichtung 1 des Nutzers vor der Datenübertragung einen Code, der bei der Bestimmung des Index 15 berücksichtigt wird. Beispielsweise werden sowohl dieser vorab übertragene Code als auch die Empfängerdaten und der Betrag bei der Bestimmung des Index 15 als Parameter verwendet.