-
Die
vorliegende Erfindung betrifft ein Verfahren zum sicheren elektronischen Übertragen
von Daten von einer ersten Datenverarbeitungseinrichtung an eine
zweite Datenverarbeitungseinrichtung sowie ein Online-Banking-Verfahren.
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.
-
Techniken,
mit denen sich unberechtigte Dritte widerrechtlich vertrauliche
Daten von Nutzern beschaffen, sind in der Einleitung der
DE 10 2005 061 999
A1 beschrieben.
-
Das
in der
DE 10 2005
061 999 A1 beschriebene Verfahren kann zwar wirkungsvoll
gegen so genannte „Man-in-the-Middle-Attacken” schützen.
Der Sicherheitsstandard, welcher von dem dort beschriebenen Verfahren
zur Verfügung gestellt wird, kann jedoch nicht flexibel
angepasst werden. In Abhängigkeit davon, wie viele Ziffern
der Index umfasst, ergibt sich, wie viele Ziffern der zu übertragenden
Daten gegen Veränderungen bei einer „Man-in-the- Middle-Attacke” geschützt
werden können. Wählt man bei einem Überweisungsvorgang
beispielsweise einen zweistelligen Index, der sich aus zwei Stellen
der Kontonummer des Empfängers ergibt, könnte
ein unberechtigter Dritter prinzipiell bei einer Bank hundert Konten
mit Kontonummern einrichten, welche an der entsprechenden Stelle
die Ziffernfolgen von „00” bis „99” umfassen.
In diesem Fall könnte ein unberechtigter Dritter bei einer „Man-in-the-Middle-Attacke” die Überweisung
auf eines seiner Konten umleiten, welche die gleichen Ziffern aufweist,
die auch für die Gewinnung des Index verwendet wurden.
Zwar kann man bei dem in der
DE 10 2005 061 999 A1 beschriebenen Verfahren
die Ziffernanzahl des Indexes erhöhen, jedoch führt
dies zu sehr großen Tabellen, welche ggf. die Praktikabilität
des Verfahrens erschweren.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein Verfahren der eingangs
genannten Art bereitzustellen, mit dem eine sichere und flexible
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 und flexibel
elektronisch zu übertragen.
-
Diese
Aufgabe wird zum einen durch ein Verfahren mit den Merkmalen des
Anspruchs 1 bzw. ein Verfahren mit den Merkmalen des Anspruchs 21, zum
anderen durch eine Datenverarbeitungseinrichtung mit den Merkmalen
des Anspruchs 19 bzw. des Anspruchs 31 und ein Datenverarbeitungssystem
mit den Merkmalen des Anspruchs 20 bzw. des Anspruchs 32 gelöst.
-
Bei
dem Verfahren gemäß einem ersten Aspekt der vorliegenden
Erfindung wird für die Datenübertragung von der
ersten Datenverarbeitungseinrichtung an die zweite Datenverarbeitungseinrichtung
ein Transaktionscode aus den zu übertragenden Daten und
aus einer n-dimensionalen Symbolmatrix Si1, i2,
... in gewonnen, wobei die Indices i1, i2, ..., in der Symbolmatrix
Si1, i2, ... in als natürliche
Zahlen darstellbar sind, indem aus den zu übertragenden
Daten mehrere Datenwerte ermittelt werden, die Ziffern sind und/oder
die Ziffern zugeordnet sind, und aufeinander folgende Transaktionssymbole
des Transaktionscodes aus der Symbolmatrix Si1,
i2, ... in dadurch gewonnen werden, dass nacheinander für
die ermittelten Datenwerte zumindest einer der Indices i1, i2, ...,
in der Symbolmatrix Si1, i2, ... in in Abhängigkeit
von dem jeweiligen Ziffernwert der Ziffern der ermittelten Datenwerte
verändert wird. Danach wird die elektronische Datenübertragung
von der ersten Datenverarbeitungseinrichtung an die zweite Datenverarbeitungseinrichtung
mit dem gewonnenen Transaktionscode verknüpft.
-
Falls
ein Datenwert der zu übertragenden Daten, der zur Gewinnung
des Transaktionscodes verwendet werden soll, keine Ziffer, sondern
ein anderes Symbol, wie z. B. ein Buchstabe ist, wird dieser Buchstabe
nach einer im Voraus festgelegten Vorschrift auf die Menge der Ziffern
abgebildet. Beispielsweise kann dem Buchstaben A die Ziffer 1, dem Buchstaben
B die Ziffer 2 usw. zugeordnet sein. Auch die Veränderung
der Indices kann durch eine im Voraus festgelegte Vorschrift erfolgen.
Beispielsweise kann im Voraus die Reihenfolge der Indices festgelegt
werden, die nacheinander verändert werden sollen. Die Art
der Veränderung der Indices durch den Ziffernwert der Ziffern
der ermittelten Datenwerte, kann auch durch einen im Voraus festgelegten
funktionalen Zusammenhang erfolgen. Im einfachsten Fall wird der
entsprechende Index um den Ziffernwert erhöht. Ferner kann
er auch erniedrigt werden oder abwechselnd erhöht und erniedrigt
werden.
-
Der
Algorithmus, der zur Gewinnung des Transaktionscodes angewandt wird,
ist insbesondere so einfach, dass er leicht von einem Nutzer durchgeführt
und/oder nachvollzogen werden kann. Der Nutzer muss nur die Transaktionssymbole
anhand der Symbolmatrix aus den Datenwerten der zu übertragenden
Daten ermitteln. Selbst wenn dieser Vorgang nicht vom Nutzer selbst
durchgeführt wird, sondern anhand z. B. einer elektronischen
Einrichtung, kann der Nutzer Manipulationen sofort feststellen,
da er die Gewinnung des Transaktionscodes einfach nachvollziehen
kann. Diese Eigenschaft des erfindungsgemäßen
Verfahrens ist gegenüber anderen kryptografischen Verfahren
vorteilhaft, welche Hash-Werte oder Signaturen verwenden, die vom
Nutzer nicht ohne weiteres in einen Zusammenhang mit den Daten gebracht
werden können, aus denen der Hash-Wert bzw. die Signatur
gewonnen worden ist. Manipulationen beim Erzeugen des Hash-Wertes oder
der Signatur fallen dem Nutzer somit auch nicht auf.
-
Unter
der Verknüpfung des Transaktionscodes mit den zu übertragenden
Daten wird jeder Art eines Zusammenhangs oder einer Verbindung des Transaktionscodes
und der übertragenden Daten verstanden. Beispielsweise
kann der Transaktionscode vor einer Datenübertragung gewonnen
werde und dann gemeinsam mit den Daten als Zusatzinformation übertragen
werden. Des Weiteren können die Daten vorab übertragen
werden. Danach werden die Daten zur Bestätigung zurück übertragen,
woraufhin der Transaktionscode entweder allein als Bestätigung übertragen
wird oder nochmals zusammen mit den Daten, die schon vorab übertragen
wurden.
-
Gemäß einer
bevorzugten Ausgestaltung des erfindungsgemäßen
Verfahrens ist der Transaktionscode nur einmal gültig.
Es wird somit bei jeder Datenübertragung ein anderer Trans aktionscode
verwendet. Ein unberechtigter Dritter kann einen abgefangenen Transaktionscode
somit nicht für die Verknüpfung mit Daten einer
weiteren Datenübertragung nutzen.
-
Gemäß einer
bevorzugten Ausgestaltung des erfindungsgemäßen
Verfahrens ist die Symbolmatrix eine eindimensionale Symbolfolge
Si, wobei der Transaktionscode aus den zu übertragenden
Daten und aus der Symbolfolge Si gewonnen
wird, indem aus den zu übertragenden Daten mehrere Datenwerte
ermittelt werden, die Ziffern sind und/oder die Ziffern zugeordnet
sind, und aufeinander folgende Transaktionssymbole des Transaktionscodes
aus der Symbolfolge Si dadurch gewonnen
werden, dass der Index i der Symbolfolge Si nacheinander
in Abhängigkeit von dem jeweiligen Ziffernwert der Ziffern der
ermittelten Datenwerte verändert wird. Der Index i der
Symbolfolge Si wird insbesondere nacheinander um
den jeweiligen Ziffernwert der Ziffern der ermittelten Datenwerte
verändert.
-
Gemäß einer
Weiterbildung des erfindungsgemäßen Verfahrens
wird der Transaktionscode gewonnen, indem die Reihenfolge der Datenwerte,
die Ziffern sind und/oder die Ziffern zugeordnet sind, bestimmt
wird, ausgehend von einem Startsymbol Sa mit
dem Index a der Symbolfolge, das erste Transaktionssymbol T1 des Transaktionscodes das Symbol mit dem
Index ist, der sich aus der Addition des Index a des Startsymbols
Sa mit dem Ziffernwert des ersten ermittelten
Datenwerts ergibt, und darauf folgende Transaktionssymbole Tk des Transaktionscodes jeweils das Symbol
mit dem Index sind, der sich aus der Addition des Indices des Symbols,
welches das vorhergehende Transaktionssymbol Tk-1 gebildet
hat, mit dem Ziffernwert des jeweils nächsten Datenwerts ergibt.
-
Die
Reihenfolge der Datenwerte wird insbesondere nach einer im Voraus
festgelegten Vorschrift bestimmt. Beispielsweise kann bei einem
Formular, über welches die Daten übertragen werden,
im Voraus festgelegt werden, welche Formularpositionen in welcher
Reihenfolge für die Bestimmung der Datenwerte, aus denen
der Transaktionscode erzeugt wird, verwendet werden.
-
Der
Index a des Startsymbols Sa für die Gewinnung des ersten
Transaktionssymbols T1 eines Transaktionscodes
entspricht insbesondere dem Index des Symbols, welches das letzte
Transaktionssymbol des vorherigen Transaktionscodes gebildet hat.
Bei dem aufeinander folgenden Gewinnen von Transaktionscodes für
aufeinanderfolgende Datenübertragungsvorgänge
wird somit die Symbolfolge sukzessive durchlaufen. Ferner kann festgelegt
werden, wie das nächste Startsymbol in Abhängigkeit von
dem Index des Symbols, welches das letzte Transaktionssymbol des
vorherigen Transaktionscodes gebildet hat, bestimmt wird. Z. B.
kann dar nächste Startsymbol das erste Symbol der nächsten Zeile
oder Spalte sein. Der Transaktionscode für einen Datenübertragungsvorgang
hängt somit von den Transaktionscodes bzw. von den Indices
der Symbole, aus denen vorhergehende Transaktionssymbole gewonnen
wird sind, ab. Entsprechendes gilt für n-dimensionale Symbolmatrizen.
Hierdurch wird die Sicherheit des erfindungsgemäßen
Verfahrens weiter erhöht.
-
Des
Weiteren kann die Symbolmatrix mehrmals durchlaufen werden, wobei
festgelegt werden kann, das Symbole, die bereits verwendet wurden, nicht
mehr verwendet werden. Sie können z. B. übersprungen
werden.
-
Gemäß einer
Ausgestaltung des erfindungsgemäßen Verfahrens
werden m Transaktionssymbole T
1, T
2, ..., T
m des Transaktionscodes
aus den zu übertragenden Daten, aus den m Ziffern Z
1, Z
2, ..., Z
m, die für die Gewinnung des Transaktionscodes
bestimmt worden sind, aus der Symbolfolge S
i und
aus einem Startindex a wie folgt gewonnen wird:
das Transaktionssymbol
T
k ist das Symbol S
p der Symbolfolge,
wobei der Index p wie folgt berechnet wird:
-
Gemäß einer
anderen Variante des erfindungsgemäßen Verfahrens
ist die Symbolmatrix eine zweidimensionale Symbolmatrix Si1, i2. In diesem Fall kann ein Transaktionscode
aus den zu übertragenden Daten und aus der Symbolmatrix
Si1, i2 gewonnen werden, indem aus den zu überfragenden
Daten mehrere Datenwerte ermittelt werden, die Ziffern sind und/oder
die Ziffern zugeordnet sind und aufeinander folgende Transaktionssymbole
des Transaktionscodes aus der Symbolmatrix Si1,
i2 dadurch gewonnen werden, dass nacheinander für
die ermittelten Datenwerte die Indices i1, i2 der Symbolmatrix Si1, i2 abwechselnd in Abhängigkeit
von dem jeweiligen Ziffernwert der Ziffern der ermittelten Datenwerte
verändert werden. Auch in diesem Fall kann die Veränderung
der Indices eine Erhöhung und/oder Erniedrigung um den
Ziffernwert oder ein sonstiger funktionaler Zusammenhang sein.
-
Gemäß einer
weiteren Ausgestaltung des erfindungsgemäßen Verfahrens
hängt die Anzahl der Datenwerte der zu übertragenden
Daten, die für die Gewinnung des Transaktionscodes verwendet
werden, von dem Inhalt der zu übertragenden Daten ab. Dabei
kann die Anzahl der Datenwerte automatisch anhand der zu übertragenden
Daten gewonnen werden oder flexibel vom Nutzer entsprechend dem
gewünschten Sicherheitsstandard gewählt werden.
-
Gemäß einer
weiteren Ausgestaltung des erfindungsgemäßen Verfahrens
werden einem Nutzer oder der ersten Datenverarbeitungseinrichtung
vor der Datenübertragung an die zweite Datenverarbeitungseinrichtung
Mittel zum Gewinnen des Transaktionscodes aus der Symbolmatrix und
aus den zu übertragenden Daten übermittelt. Diese
Mittel umfassen insbesondere die Symbolmatrix selbst, sowie die Vorschrift,
wie aus beliebigen, zu übertragenden Daten anhand der Symbolmatrix
die Transaktionssymbole des Transaktionscodes gewonnen werden können.
Die Vorschrift kann statisch sein, so dass immer bestimmte Positionen
der zu übertragenen Daten für die Gewinnung des
Transaktionscodes verwendet werden. Die Vorschrift kann aber auch
wechselnde Positionen festlegen, z. B. an einem bestimmten Wochentag
die ersten vier Ziffern eines Formularfeldes und an einem anderen
Wochentag die letzten vier Felder des Formularfeldes. Die Vorschrift
kann öffentlich sein, ohne die Sicherheit des erfindungsgemäßen
Verfahrens zu beeinträchtigen. Das Geheimnis bei der Codierung
der zu übertragenden Daten liegt in der Symbolmatrix. Der
Inhalt der Symbolmatrix darf unberechtigten Dritten nicht bekannt
sein.
-
Die
Mittel zum Gewinnen des Transaktionscodes können beispielsweise
in der ersten Datenverarbeitungseinrichtung gespeichert werden.
In diesem Fall bestimmt die erste Datenverarbeitungseinrichtung
den Transaktionscode automatisch und verknüpft die zu übertragenden
Daten mit diesem Transaktionscode. Bei der Datenübertragung
werden die Daten beispielsweise zusammen mit dem Transaktionscode übertragen.
-
Ferner
können die Mittel zum Gewinnen des Transaktionscodes in
einer weiteren Einrichtung, insbesondere einer mobilen Einrichtung
wie einem Mobiltelefon gespeichert sein. Ggf. kann diese Einrichtung
auch den Transaktionscode aus den zu übertragenden Daten
erzeugen.
-
Die
Symbolmatrix bzw. die Symbolfolge besteht aus einer zufälligen
Abfolge von Symbolen. Die Symbole werden dabei so gewählt,
dass sie ohne weiteres mit den zu übertragenden Daten verknüpft werden
können. Da sich der Transaktionscode aus Transaktionssymbolen
zusammensetzt, die bestimmten Symbolen der Symbolmatrix bzw. der
Symbolfolge entsprechen, werden insbesondere solche Symbole verwendet,
die entsprechend den zu übertragenden Daten eingegeben
werden können. Als Symbole können insbesondere
alphanumerische Zeichen, d. h. Buchstaben und/oder Ziffern, verwendet
werden.
-
Die
Integrität der vom Nutzer oder von der ersten Datenverarbeitungseinrichtung übertragenden
Daten kann dann dadurch geprüft werden, dass aus den übertragenen
Daten und aus der Symbolmatrix über die vorgegebene Vorschrift
von der Empfängerseite der Transak tionscode ermittelt wird
und geprüft wird, ob dieser Transaktionscode mit dem übertragenen
Transaktionscode identisch ist.
-
Das
erfindungsgemäße Verfahren weist grundsätzlich
dieselben Vorteile auf, wie das in der
DE 10 2005 061 999 A1 beschriebene
Verfahren. Es bietet insbesondere einen sicheren Schutz gegen so genannte „Man-in-the-Middle-Attacken”.
Darüber hinaus bietet das erfindungsgemäße
Verfahren noch folgende Vorteile:
Der Sicherheitsstandard,
der für die Datenübertragung gewählt
wird, kann für jede Datenübertragung flexibel
vom Nutzer oder von Empfängerseite gewählt werden.
Wichtige Daten können mit einem hohen Sicherheitsstandard übertragen
werden, bei dem viele Datenwerte aus den zu übertragenden
Daten zum Gewinnen des Transaktionscodes verwendet werden. Um einen
besonders hohen Sicherheitsstandard zu erhalten, können
insbesondere alle zu übertragenden Daten beim Gewinnen
des Transaktionscodes verwendet werden. Normalerweise wird jedoch
nur ein Teil der zu übertragenden Daten für die Gewinnung
des Transaktionscodes verwendet. Üblicherweise reicht eine
sehr geringe Anzahl von Datenwerten, um einen sicheren Schutz zu
erhalten. Vorzugsweise werden insbesondere die Datenwerte für die
Gewinnung des Transaktionscodes herangezogen, die gegen Veränderung
geschützt werden sollen. Falls die auf diese Weise gesicherten
Datenwerte von einem unberechtigten Dritten verändert werden,
ist nämlich der vorgegebene Zusammenhang zwischen den übertragenen
Daten, dem Transaktionscode und der Symbolmatrix nicht mehr erfüllt,
so dass die Manipulation der Daten leicht festgestellt werden kann.
-
Es
wird darauf hingewiesen, dass die Sicherheit durch die Verwendung
einer höheren Anzahl von Datenwerten bei der Gewinnung
des Transaktionscodes nicht zu einer Veränderung der Symbolmatrix führen
muss. Mit derselben Symbolmatrix können Transaktionscodes
mit einer verschieden großen Anzahl an Transaktionssymbolen
gewonnen werden. In diesem Merkmal unterscheidet sich das Verfahren der
vorliegenden Erfindung wesentlich von dem in der
DE 10 2005 061 999 A1 beschriebenen
Verfahren.
-
Die
Erfindung betrifft ferner ein Online-Banking-Verfahren zum sicheren,
elektronischen Übertragen von Daten, welches das vorstehend
beschriebene Verfahren verwendet. Hierbei entsprechen 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 jedoch insbesonde re einen Überweisungsvorgang.
Ein solcher Überweisungsvorgang kann üblicherweise
sicherheitskritische und nicht sicherheitskritische Daten umfassen.
Bei dem erfindungsgemäßen Verfahren betreffen
die Datenwerte, die für die Gewinnung des Transaktionscodes
verwendet werden, sicherheitskritischen Daten.
-
Die
Datenwerte, die für die Gewinnung des Transaktionscodes
verwendet werden, umfassen insbesondere zumindest die Kontonummer
oder einen Teil der Kontonummer des Empfängers. Des Weiteren
können sich die Datenwerte aus Ziffern der Kontonummer
des Empfängers ableiten. Ferner können die Datenwerte
den Betrag oder einen Teil der Ziffern des Betrags für
die Überweisung umfassen. Schließlich können
sich die Datenwerte aus Ziffern der Kontonummer des Empfängers
und Ziffern des Betrags der Überweisung an den Empfänger
ableiten. Die Datenwerte setzen sich insbesondere aus einem Teil
der Ziffern der Kontonummer und einem Teil der Ziffern des Betrags
der Überweisung zusammen. Auf diese Weise können
bei dem Online-Banking-Verfahren die besonders sicherheitskritischen Daten
vor einer Manipulation geschützt werden.
-
Gemäß einer
bevorzugten Weiterbildung des Online-Banking-Verfahrens hängt
die Anzahl der Datenwerte der zu übertragenden Daten, die
für die Gewinnung des Transaktionscodes verwendet werden, von
dem Betrag der Überweisung an den Empfänger ab.
Auf diese Weise kann der Sicherheitsstandard bei der Datenübertragung
vom Nutzer oder automatisch in Abhängigkeit vom Überweisungsbetrag
eingestellt werden. Beispielsweise können bei einem zweistelligen Überweisungsbetrag
zwei Datenwerte, z. B. zwei Ziffern der Kontonummer des Empfängers, bei
einem dreistelligen Überweisungsbetrag drei Datenwerte,
z. B. zwei Ziffern der Kontonummer des Empfängers und die
höchste Ziffer des Betrags, und bei einem vierstelligen Überweisungsbetrag
entsprechend vier Datenwerte für die Gewinnung des Transaktionscodes
verwendet werden.
-
Gemäß einer
weiteren Ausgestaltung des erfindungsgemäßen Online-Banking-Verfahrens überträgt
der Bankserver vor der Datenübertragung während
einer Online-Verbindung mit der Datenverarbeitungseinrichtung des
Nutzers eine Vorschrift an die Datenverarbeitungseinrichtung des
Nutzers, die zeitlich nur während der bestehenden Online-Verbindung
gültig ist und die angibt, aus welcher Teilmenge der zu übertragenden
Daten des Überweisungsvorgangs die Datenwerte zum Gewinnen
der Transaktionscodes für die anschließende Datenübertragung ermittelt
werden sollen. Werden die Überweisungsdaten beispielsweise
anhand eines Formulars übertragen, welches mehrere Felder
umfasst, kann bestimmt werden, aus welchen Feldern bei welchen Felderpositionen
die Datenwerte der zu übertragenden Daten genommen werden
sollen, um daraus in Verbindung mit der Symbolmatrix den Trans aktionscode
zu gewinnen. Der Bankserver kann insbesondere die Teilmenge hinsichtlich
der Anzahl der Datenwerte und/oder hinsichtlich der Positionen,
bei denen die Datenwerte genommen werden sollen, für jeden Überweisungsvorgang
zufällig variieren.
-
Die
erfindungsgemäße Datenverarbeitungseinrichtung
zum sicheren elektronischen Übertragen von Daten an eine
zweite Datenverarbeitungseinrichtung ist gekennzeichnet durch eine
Eingabeeinrichtung zur Eingabe zumindest der zu übertragenden Daten,
einen Speicher, in dem eine n-dimensionale Symbolmatrix gespeichert
ist, eine erste Transaktionscode-Einrichtung, mit welcher ein Transaktionscode
gewinnbar ist, indem aus den zu übertragenden Daten mehrere
Datenwerte ermittelt werden, die Ziffern sind und/oder die Ziffern
zugeordnet sind, und aufeinander folgende Transaktionssymbole des Transaktionscodes
aus der Symbolmatrix Si1, i2 ..., in dadurch
gewonnen werden, dass nacheinander für die ermittelten
Datenwerte zumindest einer der Indices i1, 12, ..., in der Symbolmatrix
Si1, i2 ..., in in Abhängigkeit
von dem Ziffernwert der Ziffern der ermittelten Datenwerte verändert
wird. Ferner umfasst die Datenverarbeitungseinrichtung eine Verknüpfungseinrichtung
zum Verknüpfen der zu übertragenden Daten mit
dem gewonnenen Transaktionscode, und eine Ausgabeeinrichtung zum Überfragen
der mit dem Transaktionscode verknüpften Daten.
-
Mit
dieser Datenverarbeitungseinrichtung lässt sich insbesondere
von Nutzerseite das erfindungsgemäße Verfahren
einfach, flexibel 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
Transaktionscode-Einrichtung, welche der ersten Transaktionscode-Einrichtung
entspricht und mit welcher ein Transaktionscode aus den von der
ersten Datenverarbeitungseinrichtung übertragenen Daten und
aus derselben Symbolmatrix auf die gleiche Weise wie die erste Transaktionscode-Einrichtung
gewinnbar ist, und einer Prüfeinrichtung zum Prüfen,
ob der Transaktionscode, der mit den von der ersten Datenverarbeitungseinrichtung übertragenen
Daten verknüpft ist, mit dem von der zweiten Transaktionscode-Einrichtung
gewonnenen Transaktionscode übereinstimmt.
-
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.
-
Bei
dem Verfahren gemäß einem zweiten Aspekt der vorliegenden
Erfindung wird für die Datenübertragung von der
ersten Datenverarbeitungseinrichtung an die zweite Datenverarbeitungseinrichtung
ein Transaktionscode aus den zu übertragenden Daten und
aus zumindest einer Liste mit Zufallszahlen R1,
R2, ..., Rn, die
der Größe nach geordnet sind, gewonnen, indem
aus den zu übertragenden Daten eine Transaktionszahl gewonnen
wird, die in einem Zusammenhang mit den zu übertragenden
Daten steht, bestimmt wird, in welches Intervall zwischen zwei benachbarten
Zufallszahlen Rx und Rx+1 die Transaktionszahl
fällt, und der Transaktionscode aus der Zufallszahl Rx und/oder der Zufallszahl Rx+1 gewonnen
wird, und die elektronische Datenübertragung von der ersten
Datenverarbeitungseinrichtung an die zweite Datenverarbeitungseinrichtung
wird mit dem gewonnenen Transaktionscode verknüpft.
-
In
einem besonders einfachen Fall stellt die Transaktionszahl eine
Zahl dar, die in den zu übertragenden Daten vorkommt. Enthalten
die zu übertragenden Daten, aus denen die Transaktionszahl
gewonnen werden soll, keine Ziffern, sondern andere Symbole, wie
z. B. Buchstaben, können, wie bei dem ersten Aspekt der
Erfindung, aus den Buchstaben nach einer im voraus festgelegten
Vorschrift Ziffern gewonnen werden, aus welchen die Transaktionszahl
gebildet wird.
-
Ferner
kann zwischen dem Transaktionscode und der Transaktionszahl oder
den Transaktionszahlen ein funktionaler Zusammenhang bestehen. In
diesem Fall gewinnt man den Transaktionscode durch Anwendung der
Funktion auf die Transaktionszahl oder die Transaktionszahlen. Beispielsweise
kann die Summer oder der arithmetische Mittelwert aus den Transaktionszahlen
gebildet werden. Des Weiteren kann eine Funktion auf den Index der Transaktionszahl
oder auf die Indices der Transaktionszahlen angewandt werden, um
einen neuen Index oder neue Indices zu erhalten. Der Transaktionscode
wird dann aus der Zufallszahl oder den Zufallszahlen mit diesem
neuen Index bzw. mit diesen neuen Indices gewonnen.
-
Wie
beim ersten Aspekt der Erfindung, ist der Algorithmus, der zur Gewinnung
des Transaktionscodes angewandt wird, insbesondere so einfach, dass
er leicht von einem Nutzer durchgeführt und/oder nachvollzogen
werden kann. Der Nutzer muss nur die Transaktionszahl aus den zu übertragenden
Daten ablesen, danach bestimmen, in welches Intervall die Transaktionszahl
in der Liste mit Zufallszahlen fällt und daraus den Transaktionscode bestimmen.
Beispielsweise kann der Transaktionscode die untere und/oder obere
Zufallszahl des Intervalls sein. Ferner kann der Transaktionscode
dadurch gebildet werden, dass die obere Zufallszahl des Intervalls
an die untere Zufallszahl angefügt oder auf andere Weise
kombiniert wird. Der Transaktionscode ist somit insbesondere die
Zufallszahl Rx oder die Zufallszahl Rx+1 oder eine Kombination der Zufallszahlen
Rx und Rx+1.
-
Die
Die Verknüpfung des Transaktionscodes mit den zu übertragenden
Daten kann wie bei dem ersten Aspekt der Erfindung erfolgen. Ferner
ist, wie bei dem ersten Aspekt der Erfindung, der Transaktionscode
bevorzugt nur einmal gültig.
-
Gemäß einer
bevorzugten Weiterbildung des erfindungsgemäßen
Verfahrens werden aufeinanderfolgende Transaktionscodes für
aufeinanderfolgende Datenübertragungen dadurch gewonnen,
dass der Transaktionscode für eine Datenübertragung
aus den zu übertragenden Daten und aus der Liste mit Zufallszahlen
R1, R2, ..., Rn gewonnen wird und die Zufallszahl bzw.
die Zufallszahlen, aus der bzw. aus denen der Transaktionscode gewonnen
wurde, von der Liste gestrichen wird bzw. werden, so dass diese Zufallszahl
bzw. diese Zufallszahlen nicht mehr für nachfolgende Datenübertragungen
zur Verfügung steht bzw. stehen. Die Zufallszahlen der
Liste werden somit nur einmal zur Gewinnung des Transaktionscodes
verwendet. Hierdurch wird die Sicherheit des Verfahrens gesteigert.
-
Gemäß einer
Ausgestaltung des erfindungsgemäßen Verfahrens
werden einem Nutzer oder der ersten Datenverarbeitungseinrichtung
vor der Datenübertragung an die zweite Datenverarbeitungseinrichtung
Mittel zum Gewinnen des Transaktionscodes aus der Liste mit Zufallszahlen
R1, R2, ..., Rn und aus den zu übertragenden Daten übermitteln. Wie
bei dem vorstehend beschriebenen ersten Aspekt der Erfindung, umfassen
diese Mittel insbesondere die Liste selbst, sowie die Vorschrift,
wie aus beliebigen, zu übertragenden Daten die Transaktionszahl
und aus der Transaktionszahl der Transaktionscode gewonnen werden
können. Die Vorschrift, wie die Transaktionszahl aus den
zu übertragenden Daten gewonnen wird, kann statisch sein,
so dass immer bestimmte Positionen der zu übertragenden
Daten für die Gewinnung des Transaktionscodes verwendet
werden. Die Vorschrift kann aber auch wechselnde Positionen festlegen,
z. B. an einem bestimmten Wochentag die ersten vier Ziffern eines
Formularfeldes und an einem anderen Wochentag die letzten vier Felder
des Formularfeldes.
-
Die
Mittel zum Gewinnen des Transaktionscodes können in der
ersten Datenverarbeitungseinrichtung gespeichert werden. In diesem
Fall bestimmt die erste Datenverarbeitungsein richtung den Transaktionscode
automatisch und verknüpft die zu übertragenden
Daten mit diesem Transaktionscode. Bei der Datenübertragung
werden die Daten beispielsweise zusammen mit dem Transaktionscode übertragen.
Ferner können die Mittel zum Gewinnen des Transaktionscodes
in einer weiteren Einrichtung, insbesondere einer mobilen Einrichtung,
wie einem Mobiltelefon, gespeichert sein. Ggf. kann diese Einrichtung
auch den Transaktionscode aus den zu übertragenden Daten
erzeugen.
-
Das
erfindungsgemäße Verfahren gemäß dem
zweiten Aspekt weist grundsätzlich dieselben Vorteile auf,
wie das Verfahren nach dem ersten Aspekt bzw. das in der
DE 10 2005 061 999
A1 beschriebene Verfahren.
-
Ferner
hat das erfindungsgemäße Verfahren gemäß dem
zweiten Ausführungsbeispiel den Vorteil, dass die Überweisungsbeträge
einfach als Eingangsinformation bei der Ermittlung des Transaktionscodes herangezogen
werden können. Das Ermitteln des Transaktionscodes aus
einer sortierten Liste mit Zufallszahlen, die Überweisungsbeträgen
entsprechen, ist auch bei einer manuellen Ausführung sehr
einfach für den Nutzer durchzuführen. Zusätzliche
Sicherheit wird dadurch erreicht, dass dem Nutzer bei der Eingabe
des aus dem Überweisungsbetrag gewonnenen Transaktionscodes,
der einen Zufallsbetrag darstellt, aufgrund des Betragsformats und
der Betragshöhe verdeutlicht wird, dass eine geldwerte
Transaktion über einen Gegenwert in etwa des eingegebenen Transaktionscodes
autorisiert wird. Dies erschwert „Man-in-the-Middle-Attacken” erheblich.
-
Die
Erfindung betrifft ferner ein Online-Banking-Verfahren zum sicheren,
elektronischen Übertragen von Daten, welches das vorstehend
beschriebene Verfahren des zweiten Aspektes der Erfindung verwendet.
Hierbei entsprechen die erste Datenverarbeitungseinrichtung einer
Datenverarbeitungseinrichtung eines Nutzers und die zweite Datenverarbeitungseinrichtung
einem Bankserver. Die Datenübertragung betrifft insbesondere
einen Überweisungsvorgang. Ein solcher Überweisungsvorgang
kann üblicherweise sicherheitskritische und nicht sicherheitskritische
Daten umfassen. Bei dem erfindungsgemäßen Verfahren
wird insbesondere die Transaktionszahl aus sicherheitskritischen
Daten gewonnen.
-
Gemäß einer
bevorzugten Ausgestaltung des Online-Banking-Verfahrens ist die
Transaktionszahl die Kontonummer oder ein Teil der Kontonummer des
Empfängers. Alternativ oder zusätzlich kann die
Transaktionszahl der Betrag der Überweisung oder ein Teil
des Betrags der Überweisung sein. Falls sowohl die Kontonummer
bzw. ein Teil der Kontonummer und der Betrag bzw. ein Teil des Betrags
für die Gewinnung des Transaktionscodes verwendet werden,
werden bevorzugt zwei Listen mit Zufallszahlen verwendet, z. B.
eine Liste für die Kontonummer bzw. einen Teil der Kontonummer
und eine separate Liste für den Betrag bzw. einen Teil
des Betrags. Aus den beiden Listen können dann die jeweiligen Teile
des Transaktionscodes gewonnen werden. Der Transaktionscode kann
sich beispielsweise aus einem ersten Teil und einem zweiten Teil
zusammensetzen, wobei der erste Teil aus der Liste für
den Betrag und der zweite Teil aus der Liste für die Kontonummer
gewonnen wird.
-
Gemäß einer
Weiterbildung des Online-Banking-Verfahrens überträgt
vor der Datenübertragung der Bankserver während
einer Online-Verbindung mit der Datenverarbeitungseinrichtung des
Nutzers eine Vorschrift an die Datenverarbeitungseinrichtung des Nutzers,
die zeitlich nur während der bestehenden Online-Verbindung
gültig ist und die angibt, aus welcher Teilmenge der zu übertragenden
Daten des Überweisungsvorgangs die Transaktionszahl zum Gewinnen
des Transaktionscodes für die anschließende Datenübertragung
ermittelt werden soll.
-
Die
erfindungsgemäße Datenverarbeitungseinrichtung
gemäß einem zweiten Aspekt der Erfindung ist gekennzeichnet
durch eine Eingabeeinrichtung zur Eingabe zumindest der zu übertragenden Daten,
einen Speicher, in dem zumindest eine Liste mit Zufallszahlen R1, R2, ..., Rn gespeichert ist, eine erste Transaktionscode-Einrichtung,
mit welcher ein Transaktionscode gewinnbar ist, indem aus den zu übertragenden
Daten eine Transaktionszahl gewonnen wird, die in einem Zusammenhang
mit den zu übertragenden Daten steht, bestimmt wird, in
welches Intervall zwischen zwei benachbarten Zufallszahlen Rx und Rx+1 die Transaktionszahl
fällt, und der Transaktionscode aus der Zufallszahl Rx und/oder der Zufallszahl Rx+1 gewonnen
gewonnen wird, und durch eine Verknüpfungseinrichtung zum
Verknüpfen der zu übertragenden Daten mit dem
gewonnenen Transaktionscode, sowie durch eine Ausgabeeinrichtung
zum Übertragen der mit dem Transaktionscode verknüpften
Daten.
-
Das
erfindungsgemäße Datenverarbeitungssystem gemäß dem
zweiten Aspekt der Erfindung 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 eine Empfangseinrichtung zum Empfangen
von mit dem Transaktionscode verknüpften Daten von der
ersten Datenverarbeitungseinrichtung auf, sowie eine zweite Transaktionscode-Einrichtung,
welche der ersten Transaktionscode-Einrichtung entspricht und mit
welcher ein Transaktionscode aus den von der ersten Datenverarbeitungseinrichtung übertragenden
Daten und aus derselben Liste mit Zufallszahlen R1,
R2, ..., Rn auf
die gleiche Weise wie die erste Transaktionscode-Einrichtung gewinnbar
ist, und eine Prüfeinrichtung zum Prüfen, ob der Transaktionscode
der mit den von der ersten Datenverarbeitungseinrichtung übertragenden
Daten verknüpft ist, mit dem von der zweiten Transaktionscode-Einrichtung
gewonnenen Transaktionscode übereinstimmt.
-
Die
Erfindung wird nun anhand von Ausführungsbeispielen mit
Bezug zu den Zeichnungen erläutert.
-
1 zeigt
schematisch ein erstes Ausführungsbeispiel des erfindungsgemäßen
Datenverarbeitungssystems,
-
2 zeigt
ein Beispiel für die bei einer Online-Überweisung
zu übertragenden Daten,
-
3 zeigt
ein Beispiel für eine eindimensionale Symbolfolge gemäß dem
ersten Ausführungsbeispiel,
-
die 4 bis 7 veranschaulichen
die Gewinnung des Transaktionscodes aus der in 3 gezeigten
Symbolfolge gemäß dem ersten Ausführungsbeispiel,
-
8 zeigt
die Verknüpfung der bei der Online-Überweisung
zu übertragenden Daten mit dem Transaktionscode gemäß dem
ersten Ausführungsbeispiel,
-
9 zeigt
ein Beispiel für eine zweidimensionale Symbolmatrix gemäß dem
ersten Ausführungsbeispiel,
-
10 zeigt
ein Beispiel für eine Liste mit Zufallszahlen für
eine aus dem Betrag gewonnene Transaktionszahl gemäß dem
zweiten Ausführungsbeispiel,
-
11 zeigt
ein Beispiel für eine Liste mit Zufallszahlen für
eine aus einem Teil der Kontonummer des Empfängers gewonnene
Transaktionszahl gemäß dem zweiten Ausführungsbeispiel
und
-
12 zeigt
die Verknüpfung der bei der Online-Überweisung
zu übertragenden Daten mit dem Transaktionscode gemäß dem
zweiten Ausführungsbeispiel,
-
Im
Folgenden wird das erste Ausführungsbeispiel der Erfindung
mit Bezug zu den 1 bis 9 erläutert:
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ühren 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 Transaktionscode-Einrichtung 4,
eine Eingabeeinrichtung 5, eine Ausgabeeinrichtung 6 und
ein Speicher 7, in dem eine Symbolmatrix gespeichert ist,
verbunden sind. In die Eingabeeinrichtung 5 können
zumindest die zu übertragenden Daten eingegeben werden.
Mit der Transaktionscode-Einrichtung 4 kann aus den zu übertragenden
Daten und aus der in dem Speicher 7 gespeicherten Symbolmatrix
ein Transaktionscode gewonnen werden, wie es später erläutert
wird. Mit der zentralen Recheneinheit 3 können
die zu übertragenden Daten mit einem von der Transaktionscode-Einrichtung 4 gewonnenen
Transaktionscode verknüpft werden. Sie wird daher als Verknüpfungseinrichtung
bezeichnet. 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 8 auf,
mit der eine Empfangseinrichtung 10, eine weitere Transaktionscode-Einrichtung 9 und ein
weiterer Speicher 11, in dem dieselbe Symbolmatrix wie
in dem Speicher 7 gespeichert ist, 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 Transaktionscode-Einrichtung 9 des
Bankservers 2 entspricht hinsichtlich ihrer Funktion der
Transaktionscode-Einrichtung 4 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 von Transaktionscodes auf
an sich bekannte Weise eine nutzerspezifische Symbolmatrix 16 bzw. 17 übermittelt.
Der Aufbau der Symbolmatrix 16 bzw. 17 wird später
im Detail erläutert. Ferner wird dem Nutzer eine Vorschrift
gegeben, wie er aus den zu übertragenden Daten und der
Symbolmatrix 16 bzw. 17 einen Transaktionscode
gewinnen kann.
-
Der
Nutzer kann die Symbolmatrix in dem Speicher 7 seiner Datenverarbeitungseinrichtung 1 abspeichern,
so dass die Recheneinheit 3 den Transaktionscode automatisch
gewinnen kann. Es ist jedoch auch möglich, dass der Nutzer
die Symbolmatrix in schriftlicher Form auf einem Blatt Papier erhält und
den Transaktionscode selbst anhand der Symbolmatrix 16 bzw. 17 gewinnt.
Letztere Vorgehensweise hat den Vorteil, dass sie gegenüber
elektronischen Manipulationen bei der Datenverarbeitungseinrichtung 1 des
Nutzers sicher ist.
-
Anstatt
der Symbolmatrix selbst, könnte dem Nutzer auch eine Vorrichtung
oder ein Algorithmus zur Verfügung gestellt werden, der
die Symbolmatrix 16 bzw. 17 erzeugen kann, wobei
die Vorschrift, nach denen die Symbolmatrix 16 bzw. 17 für
einen bestimmten Nutzer erzeugt wird, bankseitig bekannt sein müsste,
damit die entsprechende Symbolmatrix 16 bzw. 17 bei
der Bank auch bekannt ist. Die Übermittlung der Symbolmatrix 16 bzw. 17 entspricht
bei dem bekannten Online-Banking-Verfahren der Übermittlung
der 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 2 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 eines Transaktionscodes,
den der Nutzer eingeben kann, sofern er nicht automatisch erzeugt
und mit den zu überweisenden Daten verknüpft wird.
-
Den
Transaktionscode kann der Nutzer gemäß einem ersten
Ausführungsbeispiel wie folgt gewinnen:
Zunächst
ermittelt der Nutzer bzw. die Recheneinheit 3 aus den zu überfragenden
Daten mehrere Datenwerte die Ziffern sind und/oder die Ziffern zugeordnet sind.
Im vorliegenden Fall wurde im Voraus festgelegt, dass der Transaktionscode
aus den letzten vier Ziffern der Kontonummer des Empfängers
in der Reihenfolge von rechts nach links gewonnen werden soll. Des
Weiteren ist ein Startindex für den ersten Überweisungsvorgang
festgelegt, der mit der Symbolfolge 16 codiert werden soll.
Im vorliegenden Fall ist dieser Startindex 0, d. h. man beginnt
die Symbolfolge 16 ausgehend von dem Symbol S0 zu
durchlaufen. Im vorliegenden Fall ergeben sich somit als Datenwerte
die Ziffern 4821. Die Vorschrift, wie aus den zu übertragenden
Daten mehrere Datenwerte ermittelt werden, kann auch anders festgelegt
werden oder variabel von Überweisungsvorgang zu Überweisungsvorgang
variieren. Es ist auch möglich, dass der Bankserver 2 der
Datenverarbeitungseinrichtung 1 des Nutzers nach dem Herstellen
einer Online-Verbindung, jedoch vor der Übertragung der Überweisungsdaten
mitteilt, welche Datenwerte für die Gewinnung des Transaktionscodes
verwendet werden sollen. Dabei werden insbesondere sicherheitskritische
Datenwerte verwendet, wie Ziffern der Kontonummer des Empfängers
und des Überweisungsbetrags. Des Weiteren können
die Daten vorab an den Bankserver 2 übertragen
werden. Danach werden die Daten zur Bestätigung vom Bankserver 2 zurück an
die Datenverarbeitungseinrichtung 1 übertragen, wobei
festgelegt wird, welche Datenwerte für die Gewinnung des
Transaktionscodes verwendet werden sollen. Der Transaktionscode
wird dann entweder alleine als Bestätigung an den Bankserver 2 übertragen
oder nochmals zusammen mit den Daten, die schon vorab übertragen
wurden.
-
3 zeigt
ein Beispiel einer Symbolmatrix, die als eindimensionale Symbolfolge 16 ausgebildet ist,
welche die Symbole S0, S1,
S2... enthält. Die Symbole Si sind dabei nicht in einer Reihe angeordnet,
da dies bei einem Ausdruck auf einem Blatt Papier unpraktikabel
wäre. Sie sind vielmehr in Feldern 15-1, 15-2,
..., 15-12 angeordnet, die nacheinander durchlaufen werden.
Innerhalb eines Feldes 15 ist das erste Symbol in der oberen
linken Ecke dargestellt. Nachfolgende Symbole ergeben sich, indem
man die Felder 15-1, 15-2, ..., 15-12 nacheinander
Zeile für Zeile durchläuft, bis man bei dem Symbol
des letzten Feldes 15-12 in der rechten unteren Ecke angekommen
ist.
-
Die
Symbolfolge besteht aus einer zufälligen Abfolge von Symbolen.
Die Symbole werden dabei so gewählt, dass sie ohne weiteres
mit den zu übertragenden Daten verknüpft werden
können. Im vorliegenden Fall werden als Symbole Buchstaben
verwendet.
-
Aufeinander
folgende Transaktionssymbole werden nun wie folgt gewonnen: Man
nimmt den ersten Datenwert, der aus den zu übertragenden
Daten ermittelt wurde, d. h. im vorliegenden Fall die Ziffer 4. Ausgehend
von dem Startsymbol S0 der Symbolfolge 16 geht
man entlang der Symbolfolge 16 so viele Symbole weiter,
wie es dem Ziffernwert der Ziffer des Datenwerts entspricht, d.
h. im vorliegenden Fall geht man um vier Positionen weiter. Mit
anderen Worten, man erhöht den Index des Startsymbols S0 um vier, so dass man zu dem Symbol S4 gelangt. Dieses Symbol kann man markieren,
wie es in 4 gezeigt ist. Bei dem Symbol
S4 handelt es sich um ein „S”. Das
erste Transaktionssymbol ist somit ein „S”.
-
Das
nächste Transaktionssymbol gewinnt man dadurch, dass man
erneut auf der Symbolfolge 16 so viele Schritte weitergeht,
wie es dem Ziffernwert des nächsten Datenwerts entspricht,
d. h. im vorliegenden Fall geht man acht Schritte weiter, d. h. man
erhöht den Index des Symbols, welches das vorhergehende
Transaktionssymbol gebildet hat, mit dem Ziffernwert, des jeweils
nächsten Datenwerts. Im vorliegenden Fall gelangt man auf
diese Weise zu dem Symbol S12. Das Symbol S12 ist ein „H”.
Das zweite Transaktionssymbol ist somit ein „H”.
Das „H” kann man, wie in 5 gezeigt,
kennzeichnen und gewinnt auf gleiche Weise darauf folgend, wie in
den 6 und 7 veranschaulicht, anhand der
Datenwerte 2 und 1 die Transaktionssymbole X und U. Der vollständige
Transaktionscode setzt sich aus den gewonnen Transaktionssymbolen
zusammen, d. h. im vorliegenden Fall ist der Transaktionscode SHXU.
-
Allgemein
können aus m Transaktionssymbolen T
1,
T
2, ..., T
m des
Transaktionscodes aus den zu übertragenden Daten aus den
m Ziffern Z
1, Z
2,
..., Z
m, die für die Gewinnung
des Transaktionscodes bestimmt worden sind, aus der Symbolfolge
S
i und aus einem Startindex a wie folgt
gewonnen werden:
das Transaktionssymbol T
k ist
das Symbol S
p der Symbolfolge, wobei der
Index p wie folgt berechnet wird:
-
Das
letzte Symbol S15 ist das Startsymbol für die
Gewinnung des Transaktionscodes des nächsten Überweisungsvorgangs.
Auf diese Weise wird die Symbolfolge 16 durchlaufen.
-
Der
Transaktionscode wird, wie in 8 gezeigt,
mit den zu übertragenden Überweisungsdaten verknüpft.
Hierfür kann entweder der Nutzer den Transaktionscode mittels
der Eingabeeinheit 5 eingeben oder die Transaktionscode-Einrichtung 4 übermittelt
den Transaktionscode an die Recheneinheit 3. Die Verknüpfung
des Transaktionscodes SHXU mit den Online-Überweisungsdaten
erfolgt durch die zentrale Recheneinheit 3 der Datenverarbeitungseinrichtung 1 des
Nutzers.
-
Sobald
die Verknüpfung des Transaktionscodes 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.
-
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 den
Transaktionscode, der mit den Überweisungsdaten verknüpft ist.
Diese Prüfung wird durch die Transaktionscode-Einrichtung 9 des
Bankservers 2 durchgeführt. Dabei wird das gleiche
Verfahren angewandt, mit dem auch die Transaktionscode-Einrichtung 4 der Datenverarbeitungseinrichtung 1 des
Nutzers oder der Nutzer selbst den Transaktionscode gewonnen hat.
Hierfür ist in dem Speicher 11 dieselbe Symbolmatrix 16 gespeichert,
die entweder in dem Speicher 7 der Datenverarbeitungseinrichtung 1 des
Nutzers gespeichert ist oder die von dem Nutzer beim Gewinnen des
Transaktionscodes verwendet wurde. Falls die Überweisungsdaten
unmanipuliert übertragen wurden, entspricht der von der
Recheneinheit 8 des Bankservers 2 gewonnene Transaktionscode
dem mit den Überweisungsdaten übertragenen Transaktionscode.
Jede Manipulation an den letzten vier 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.
-
Mit
Bezug zu 9 wird eine weitere Ausgestaltung
des ersten Ausführungsbeispiels beschrieben, wie aus der
Symbolmatrix 17 ein Transaktionscode gewonnen werden kann:
Die
Symbolmatrix 17 ist ein zweidimensionales Feld mit den
Symbolen Si1, i2, wobei der erste Index
i1 die Zeile bezeichnet und der zweite Index i2 die Spalte bezeichnet.
Wie bei der Symbolfolge 16, enthält auch die Symbolmatrix 17 eine
zufällige Anordnung von Symbolen, die nur dem Nutzer, welcher
die Daten an die zweite Datenverarbeitungseinrichtung 2 übertragen
will, und der empfängerseitigen Datenverarbeitungseinrichtung 2 bekannt
sind. Wie bei dem ersten Ausführungsbeispiel, werden die
letzten vier Ziffern der Kontonummer als Datenwerte verwendet, um den
Transaktionscode aus der Symbolmatrix 17 zu gewinnen. Als
Startwert wird das Symbol S14, 12 festgelegt.
Ferner wird festgelegt, dass die Indices anhand der Ziffernwerte
der Ziffern der ermittelten Datenwerte wie folgt verändert
werden: Zunächst wird der Index i1 um den Ziffernwert erhöht,
danach wird die Index i2 um den Ziffern wert der Ziffer des nächsten
Datenwerts erhöht, danach wird der Index i1 um den Ziffernwert
der Ziffer des nächsten Datenwerts erniedrigt und schließlich
wird der Index i2 um den Ziffernwert der Ziffer des letzten Datenwerts
erniedrigt. Diese Vorschrift kann ohne weiteres auf eine höhere
Anzahl von Datenwerten ausgeweitet werden. Im vorliegenden Fall
gewinnt man auf diese Weise den Transaktionscode ULHA.
-
Das
letzte Symbol, welches für das letzte Transaktionssymbol
des Transaktionscodes verändert wurde, ist das Symbol S16, 19. Dieses Symbol ist der Startwert für
die Gewinnung des nächsten Transaktionscodes für
den nächsten Überweisungsvorgang.
-
Auf
diese Weise kann die zweidimensionale Symbolmatrix 17 für
die Gewinnung einer Vielzahl von Transaktionscodes verwendet werden.
Ggf. kann auch eine Vorschrift ergänzt werden, wie zu verfahren
ist, wenn man zum Rand der Matrix gelangt. Beispielsweise könnte
auf der gegenüberliegenden Zeilen- bzw. Spaltenseite weitergezählt
werden.
-
Im
Folgenden wird das zweite Ausführungsbeispiel der Erfindung
mit Bezug zu den 10 bis 14 erläutert:
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
nach dem zweiten Ausführungsbeispiel entspricht im Wesentlichen
dem in 1 gezeigten Datenverarbeitungssystem des ersten
Ausführungsbeispiels. Allerdings ist in dem Speicher 7 bei
dem zweiten Ausführungsbeispiel nicht eine Symbolmatrix
gespeichert, sondern eine oder mehrere Listen mit Zufallszahlen,
die der Größe nach geordnet sind. Die Transaktionscode-Einrichtung 4 gewinnt
somit den Transaktionscode nicht aus einer Symbolmatrix, sondern
aus der in dem Speicher 7 gespeicherten Liste bzw. den
dort gespeicherten Listen, wie es später erläutert
wird.
-
Gleichermaßen
ist auf Seiten des Bankservers 2 in dem Speicher 11 keine
Symbolmatrix gespeichert, sondern dieselbe Liste bzw. dieselben
Listen mit Zufallszahlen, wie in dem Speicher 7. Gleichermaßen
entspricht die Transaktionscode-Einrichtung 9 des Bankservers 2 hinsichtlich
ihrer Funktion der Transaktionscode-Einrichtung 4 der Datenverarbeitungseinrichtung 1 des
Nutzers.
-
Im
Folgenden werden das Online-Banking-Verfahren sowie die Ausbildungen
der Einrichtungen des Datenverarbeitungssystems erläutert:
Wie
bei dem ersten Ausführungsbeispiel wird zunächst
dem Nutzer als Mittel zur Gewinnung von Transaktionscodes auf an
sich bekannte Weise eine Liste R1, R2, ..., Rn übermittelt.
Diese Liste ist nutzerspezifisch. Beispielsweise kann dem Nutzer
die in 10 wiedergegebene Liste 18 übermittelt
werden. Ergänzend oder alternativ kann dem Nutzer die in 11 gezeigte
Liste 19 übermittelt werden.
-
Wie
bei dem ersten Ausführungsbeispiel kann der Nutzer die
Listen 18 und 19 in dem Speicher 7 abspeichern.
Es ist jedoch auch möglich, dass der Nutzer die Listen 18 und 19 in
schriftlicher Form auf einem Blatt Papier erhält und den
Transaktionscode selbst anhand der Listen 18 bzw. 19 gewinnt.
Wie bei dem ersten Ausführungsbeispiel könnte
dem Nutzer auch eine Vorrichtung oder ein Algorithmus zur Verfügung
gestellt werden, der die Listen 18 bzw. 19 erzeugen
kann.
-
Für
eine Online-Überweisung wird dem Nutzer nun wie bei dem
ersten Ausführungsbeispiel von dem Bankserver 2 das
Formular 13 zur Verfügung gestellt, wie es in 2 dargestellt
ist. Der Nutzer kann den Transaktionscode gemäß dem
zweiten Ausführungsbeispiel nun wie folgt gewinnen:
Zunächst
ermittelt der Nutzer bzw. die Recheneinheit 3 aus den zu übertragenden
Daten eine Transaktionszahl. Im vorliegenden Fall wurde im Voraus
festgelegt, dass die Transaktionszahl dem Betrag der Überweisung
entsprechen soll.
-
Der
Transaktionscode kann nun anhand der in 10 wiedergegebenen
Liste 18 mit Zufallszahlen gewonnen werden. Die Liste mit
Zufallszahlen R1 bis R200 enthält
insgesamt 200 Zufallszahlen, die dasselbe Format haben, wie der
Betrag einer Online-Überweisung, d. h. es ist eine Zahl
mit zwei Nachkommastellen wiedergegeben. Diese Zufallszahlen sind
in der Liste 18 der Größe nach sortiert.
Die Dichte der Verteilung der Zahlen Ri der
Liste 18 orientiert sich bevorzugt an einer empirisch ermittelten
Betragsverteilung bei Überweisungen. Ferner kann die Dichte
auch empirisch aus der Betragsverteilung vergangener Überweisungen
des Nutzers gewonnen werden, der die Liste 18 erhält.
-
Der
Nutzer bzw. die Recheneinheit 3 bestimmt nun, in welches
Intervall zwischen zwei benachbarten Zufallszahlen Rx und
Rx+1 die Transaktionszahl, d. h. der Betrag
der Online-Überweisung fällt. in dem in 2 gezeigten
Fall einer Online-Überweisung ist der Überweisungsbetrag
578,50. Aus der Liste 18 ergibt sich, dass dieser Betrag
zwischen den Zufallszahlen 558,01 und 597,89 liegt. Aus einer dieser
Zufallszahlen oder aus beiden Zufallszahlen wird nach einer im Voraus
festgelegten Vorschrift der Transaktionscode gewonnen. Beispielsweise
ist der Transaktionscode die obere Zufallszahl des Intervalls, d.
h. im vorliegenden Fall die Zahl 597,89. Anhand des Transaktionscodes
kann der Nutzer somit sofort ablesen, wie die Obergrenze der durch
den Transaktionscode gesicherten Online-Überweisung ist.
-
Die
Transaktionszahl, aus welcher der Transaktionscode gewonnen worden
ist, wird in der Liste 18 gestrichen, so dass sie für
einen weiteren Überweisungsvorgang nicht mehr zur Verfügung steht.
Wenn beispielsweise bei einer nachfolgenden Überweisung
erneut der Betrag 578,50 überwiesen werden soll, entspräche
der Transaktionscode der nächsten Zufallszahl der Liste 18,
d. h. der Zahl 612,61.
-
Durch
diese Verknüpfung des Betrags der Online-Überweisung
mit dem Transaktionscode können Manipulationen des Betrags
der Online-Überweisung bei eine „Man-in-the-Middle-Attacke” verhindert werden.
-
Falls
zusätzlich auch die Kontonummer des Empfängers
gegen solche Angriffe geschützt werden soll, kann der Transaktionscode
zusätzlich einen Teil enthalten, welcher aus der Kontonummer
gewonnen wird. Hierfür wird dem Nutzer, wie vorstehend
beschrieben, die in 11 wiedergegebene Liste 19 mit weiteren
Zufallszahlen zur Verfügung gestellt, die auch der Größe
nach geordnet sind. Bei den Zufallszahlen der Liste 19 handelt
es sich um vierstellige Zahlen. Der Teil des Transaktionscodes,
welcher sich aus der Kontonummer des Empfängers ergibt,
wird wie folgt gewonnen:
Es wird im Voraus festgelegt, dass
als Transaktionszahl die letzten vier Ziffern der Kontonummer des Empfängers
verwendet werden. In dem in 2 gezeigten
Fall, ist die Transaktionszahl somit 4812. Der Nutzer bzw. die Recheneinheit 3 bestimmt
nun, in welches Intervall zwischen zwei benachbarten Zufallszahlen
der Liste 19 diese aus der Kontonummer gewonnene Transaktionszahl
fällt. Im vorliegenden Fall sind dies die Zahlen 4798 und
5083. Wie bei dem ersten Teil des Transaktionscodes kann festgelegt werden,
dass die obere Zahl des Intervalls für den Transaktionscode
verwendet wird, d. h. die Zahl 5083. Der Transaktionscode kann sich
nun aus einem ersten Teil zusammensetzen, welcher aus dem Betrag gewonnen
wurde und einem Teil, der aus der Kontonummer, wie vorstehend beschrieben,
gewonnen wurde. Die beiden Teile können beispielsweise durch
ein Leerzeichen getrennt sein, so dass insgesamt der folgende Transaktionscode,
wie in 12 gezeigt, mit der Überweisung
verknüpft wird: 597,89 5083.
-
Wie
bei dem ersten Ausführungsbeispiel wird der Transaktionscode
mit den zu übertragenden Daten verknüpft und an
den Bankserver 2 übertragen. Gleichermaßen
wird die unmanipulierte Übertragung der Überweisungsdaten
von der zentralen Recheneinheit 8 des Bankservers 2 wie
beim ersten Ausführungsbeispiel geprüft.
-
Im
Folgenden werden weitere Ausgestaltungen beschrieben, die in Verbindung
mit den vorstehend beschriebenen Ausführungsbeispielen
genutzt werden können:
Die möglichen Datenübertragungen
können in verschiedene Übertragungsklassen eingeteilt
werden. Die Klassen unterscheiden sich insbesondere hinsichtlich
des Sicherheitsstandards, der für die Datenübertragung
gewünscht ist. Handelt es sich bei der Datenübertragung
beispielsweise um die Kommunikation des Nutzers mit seiner Bank,
kann man zwischen einfachen, sicherheitsunkritischen Mitteilungen
an die Bank, Online-Überweisungsvorgängen und
sehr sicherheitskritischen Vorgängen, wie eine Adressänderung
in Verbindung mit der Anforderungen von Transaktionscodes bzw. der
Symbolmatrix des ersten Ausführungsbeispiels oder der Liste
bzw. den Listen mit Zufallszahlen des zweiten Ausführungsbeispiels,
unterscheiden. Die Online-Überweisungen können
auch in Abhängigkeit von dem Überweisungsbetrag
in weitere Klassen unterteilt werden. Für die verschiedenen Übertragungsklassen
werden nun verschiedene Mittel zur Gewinnung des Transaktionscodes
bereitgestellt. Beispielsweise kann der Nutzer für eine
einfache sicherheitsunkritische Mitteilung an die Bank eine herkömmliche
Liste mit indizierten Transaktionsnummern erhalten. Für
eine Online-Überweisung erhält der Nutzer, wie
mit Bezug zu den ersten beiden Ausführungsbeispielen beschrieben,
die Symbolmatrix bzw. die Liste oder die Listen mit Zufallszahlen.
Für eine weitere sicherheitskritische Übertragungsklasse
enthält der Nutzer eine andere zusätzliche Symbolmatrix
bzw. Liste oder Listen mit Zufallszahlen. Auf der Symbolmatrix bzw.
auf den Listen ist klar gekennzeichnet, für welche Übertragungsklasse
sie verwendet werden sollen.
-
Um
die Transaktionscodes für die verschiedenen Übertragungsklassen
einfach unterscheiden zu können, könnte gemäß einer
Weiterbildung das Format der zu gewinnenden Transaktionscodes je nach Übertragungsklasse
variieren.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste
der vom Anmelder aufgeführten Dokumente wurde automatisiert
erzeugt und ist ausschließlich zur besseren Information
des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen
Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt
keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- - DE 102005061999
A1 [0003, 0004, 0004, 0025, 0026, 0043]