DE102014115109B4 - Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen - Google Patents

Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen Download PDF

Info

Publication number
DE102014115109B4
DE102014115109B4 DE102014115109.7A DE102014115109A DE102014115109B4 DE 102014115109 B4 DE102014115109 B4 DE 102014115109B4 DE 102014115109 A DE102014115109 A DE 102014115109A DE 102014115109 B4 DE102014115109 B4 DE 102014115109B4
Authority
DE
Germany
Prior art keywords
key
key identifiers
arrangement
identifiers
keys
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE102014115109.7A
Other languages
English (en)
Other versions
DE102014115109A1 (de
Inventor
Ismet Koyun
Marcus Vetter
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kobil GmbH
Original Assignee
Kobil GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kobil GmbH filed Critical Kobil GmbH
Priority to DE102014115109.7A priority Critical patent/DE102014115109B4/de
Publication of DE102014115109A1 publication Critical patent/DE102014115109A1/de
Application granted granted Critical
Publication of DE102014115109B4 publication Critical patent/DE102014115109B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/02Input arrangements using manually operated switches, e.g. using keyboards or dials
    • G06F3/023Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
    • G06F3/0233Character input methods
    • G06F3/0236Character input methods using selection techniques to select from displayed items
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Input From Keyboards Or The Like (AREA)

Abstract

Verfahren, ausgeführt von zumindest einer Vorrichtung (2), umfassend die Schritte:- Bestimmen (101) einer Anordnung (3a, 3b, 3c, 3d, 4a, 4b, 5a, 5b, 6a, 6b, 7a, 7b, 8, 8a, 8b, 9a, 9b, 10c) von Tastenkennungen (12, 30, 31, 39, 40, 41, 49, 50, 51, 59, 70, 80, 90), die mit einer Gruppe von Tasten (12`, 30', 31', 39', 40', 41', 49', 50', 51', 59', 70', 81, 90') einer Eingabeschnittstelle, über die ein Benutzer eine Folge von Informationselementen eingeben kann, assoziiert sind oder durch die Anordnung assoziiert werden, wobei die Tastenkennungen festlegen, welche Informationselemente den Tasten der Gruppe von Tasten jeweils zugeordnet sind und eine Eingabe eines Informationselements der Folge von Informationselementen eine Betätigung der dem Informationselement zugeordneten Taste durch den Benutzer umfasst,- Anzeigen (102) oder Bewirken (102) des Anzeigens der Anordnung von Tastenkennungen, wobei zumindest zwei unterschiedliche Anordnungen von Tastenkennungen bestimmt werden (101, 111) und deren jeweilige Anzeige durchgeführt oder bewirkt wird, wobei die zwei unterschiedlichen Anordnungen die gleichen Tastenkennungen umfassen, wobei zumindest eine jeweilige Position einer Tastenkennung der Tastenkennungen in beiden Anordnungen unterschiedlich ist, aber für jede Tastenkennung der Tastenkennungen gilt, dass zumindest zwei ihrer direkten Nachbarn in der ersten Anordnung auch in der zweiten Anordnung zu ihren direkten Nachbarn gehören, und wobei eine erste der beiden unterschiedlichen Anordnungen von Tastenkennungen für die Eingabe eines Informationselements der Folge von Informationselementen und eine zweite der beiden unterschiedlichen Anordnungen von Tastenkennungen für die Eingabe eines weiteren Informationselements der Folge von Informationselementen bestimmt und deren jeweilige Anzeige durchgeführt oder bewirkt wird, das Verfahren ferner umfassend:- Ausblenden oder Unkenntlichmachen der Tastenkennungen oder Bewirken des Ausblendens oder des Unkenntlichmachens der Tastenkennungen, wenn eine Betätigung (104) einer Taste der Gruppe von Tasten erkannt wird und/oder wenn eine Annährung eines Fingers eines Benutzers oder eines von einem Benutzer gehaltenen Stylus an eine Taste der Gruppe von Tasten erkannt wird.

Description

  • Gebiet der Erfindung
  • Die vorliegende Erfindung betrifft unter anderem ein Verfahren, eine Vorrichtung, ein System und ein Programm zur Eingabe von Folgen von Informationselementen mit verbesserter Sicherheit, insbesondere zur Eingabe von Authentisierungsinformation wie beispielsweise persönlichen Identifikationsnummern (PINs), Passwörtern oder Transaktionsnummern (TANs).
  • Hintergrund der Erfindung
  • Die Eingabe von Authentisierungsinformation spielt in einer Vielzahl von Anwendungen eine Rolle. So ist beispielsweise zur Freischaltung von elektronischen Geräten oder zur Nutzung von sicherheitsrelevanten oder zahlungspflichtigen Diensten oftmals eine Authentifizierung des Benutzers erforderlich, die basierend auf von dem Benutzer eingegebener Authentisierungsinformation vorgenommen wird. Die Eingabe der Authentisierungsinformation erfolgt beispielsweise über Tasten, deren Betätigung durch einen Benutzer bei der Eingabe der Authentisierungsinformation von in der Nähe befindlichen Personen beobachtet oder gefilmt und daraus auf die Authentisierungsinformation geschlossen werden kann. Eine Ausspähung der Authentisierungsinformation ist allerdings auch durch auf einem elektronischen Gerät, an dem Eingabe der Authentisierungsinformation erfolgt, vorhandene Schadsoftware möglich, insbesondere durch sog. Keylogger (Tastenrekorder), die Tastenbetätigungen protokollieren und im Gerät speichern und/oder an eine entfernte Auswerteeinheit übertragen, beispielsweise über das Internet Ein Keylogger kann beispielsweise als Software zwischen Tastatur und Betriebssystem geschaltet sein und die von der Tastatur oder vom Tastaturtreiber zum Betriebssystem übertragenen Informationen über betätigte Tasten abfangen. Ein Keylogger kann - insbesondere im Falle von virtuellen Tastaturen, die auf einem Bildschirm angezeigt werden und mit einem Zeigegerät (z.B. einer Maus) bedient werden - auch bei jeder Betätigung einer Taste einen Screenshot (also ein Bildschirmfoto) erzeugen, auf dem dann sowohl die Position des dem Zeigegerät zugeordneten Zeigersymbols (z.B. ein Mauszeiger) als auch die virtuelle Taste abgebildet ist Dies gilt auch für den Fall, dass Tasten auf Touchscreens (berührungsempfindlichen Anzeigen) angezeigt und mit dem Finger eines Benutzers oder einem Stylus, also einem zur Bedienung des Touchscreens geeigneten Zeigegeräts, betätigt werden. Hier ist in den bei Betätigung einer Taste erzeugten Screenshots zwar kein Zeigersymbol vorhanden, allerdings wird bei Touchscreens dem Benutzer bei Betätigung einer Taste üblicherweise eine optische Bestätigung für die Tastenbetätigung angezeigt, beispielsweise durch Änderung des Aussehens (z.B. Farbe oder Helligkeit) der betätigten Taste. Diese optische Bestätigung ist dann auch auf dem Screenshot vorhanden und verrät, welche Taste betätigt wurde. Durch manuelle oder automatische Auswertung der aufgenommenen Screenshots kann dann die eingegebene Authentisierungsinformation ermittelt werden. Eine automatische Auswertung ist beispielsweise durch Optische Zeichenerkennung (Optical Charakter Recognition, OCR) möglich, wobei die den betätigten Tasten zugeordneten Tastaturbeschriftungen automatisch erkannt werden.
  • Die japanische Patentanmeldung JP 2003 - 330 888 A und das US-Patent US 6,549,194 B1 beschreiben Möglichkeiten zum Schutz vor Ausspähversuchen z.B. bei Geldautomaten. Aus der online-Enzyklopädie Wikipedia sind CAPTCHAs, Side-channel attacks und Passwords bekannt.
  • Allgemeine Beschreibung einiger beispielhafter Ausführungsformen der Erfindung
  • Die vorliegende Erfindung hat sich daher unter anderem die Aufgabe gestellt, die oben genannten Nachteile zu überwinden und eine Eingabe von Folgen von Informationselementen mit verbesserter Sicherheit insbesondere gegen Ausspähung zu ermöglichen.
  • Ein beispielhaftes erfindungsgemäßes Verfahren wird von zumindest einer Vorrichtung ausgeführt und umfasst die folgenden Schritte: Bestimmen einer Anordnung von Tastenkennungen, die mit einer Gruppe von Tasten einer Eingabeschnittstelle, über die ein Benutzer eine Folge von Informationselementen eingeben kann, assoziiert sind oder durch die Anordnung assoziiert werden; und Anzeigen oder Bewirken des Anzeigens der Anordnung von Tastenkennungen. Die Tastenkennungen legen dabei beispielsweise fest, welche Informationselemente den Tasten der Gruppe von Tasten jeweils zugeordnet sind. Eine Eingabe eines Informationselements der Folge von Informationselementen umfasst beispielsweise eine Betätigung der dem Informationselement zugeordneten Taste durch den Benutzer. Beispielsweise werden zumindest zwei unterschiedliche Anordnungen von Tastenkennungen bestimmt und deren jeweilige Anzeige durchgeführt oder bewirkt. Dabei umfassen die zwei unterschiedlichen Anordnungen beispielsweise die gleichen Tastenkennungen. Beispielsweise ist zumindest eine jeweilige Position einer Tastenkennung der Tastenkennungen in beiden Anordnungen unterschiedlich ist, aber für jede Tastenkennung der Tastenkennungen gilt, dass zumindest zwei ihrer direkten Nachbarn in der ersten Anordnung auch in der zweiten Anordnung zu ihren direkten Nachbarn gehören.
  • Eine beispielhafte erfindungsgemäße Vorrichtung umfasst Mittel zur Ausführung des beispielhaften erfindungsgemäßen Verfahrens oder ist zu dessen Ausführung eingerichtet.
  • Eine weitere beispielhafte erfindungsgemäße Vorrichtung umfasst zumindest einen Prozessor und zumindest einen Speicher, wobei in dem Speicher ein Programm umfassend Programmanweisungen gespeichert ist, wobei der Speicher und das Programm eingerichtet sind, um, mit dem Prozessor, die Vorrichtung zumindest zu veranlassen, das beispielhafte erfindungsgemäße Verfahren auszuführen, wenn das Programm auf dem Prozessor ausgeführt wird.
  • Ein beispielhaftes erfindungsgemäßes System umfasst eine oder mehrere Vorrichtungen eingerichtet zur Ausführung oder umfassend Mittel zur Ausführung des beispielhaften erfindungsgemäßen Verfahrens.
  • Ein beispielhaftes erfindungsgemäßes Programm umfasst Programmanweisungen, um das beispielhafte erfindungsgemäße Verfahren zumindest teilweise auszuführen, wenn das Programm auf einem Prozessor ausgeführt wird.
  • Ein beispielhaftes erfindungsgemäßes Speichermedium umfasst das beispielhafte erfindungsgemäße Programm.
  • Weitere vorteilhafte beispielhafte Ausgestaltungen der Erfindung sind der folgenden detaillierten Beschreibung einiger beispielhafter Ausführungsformen der vorliegenden Erfindung, insbesondere in Verbindung mit den Figuren, zu entnehmen. Die Figuren sollen jedoch nur dem Zwecke der Verdeutlichung, nicht aber zur Bestimmung des Schutzbereiches der Erfindung dienen. Die Figuren sind nicht maßstabsgetreu und sollen lediglich das allgemeine Konzept der vorliegenden Erfindung beispielhaft widerspiegeln. Insbesondere sollen Merkmale, die in den Figuren enthalten sind, keineswegs als notwendiger Bestandteil der vorliegenden Erfindung erachtet werden.
  • Kurze Beschreibung der Zeichnungen
  • In den Figuren zeigen:
    • 1: ein Ablaufdiagramm eines Ausführungsbeispiels eines erfindungsgemäßen Verfahrens;
    • 2: ein Blockdiagramm eines Ausführungsbeispiels einer erfindungsgemäßen Vorrichtung;
    • 3a-3d: schematische Darstellungen von kreisförmigen Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, gemäß einem Ausführungsbeispiel der Erfindung;
    • 4a-4b: schematische Darstellungen von rechteckigen Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, gemäß einem Ausführungsbeispiel der Erfindung;
    • 5a-5b: schematische Darstellungen von linienförmigen Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, gemäß einem Ausführungsbeispiel der Erfindung;
    • 6a-6b: schematische Darstellungen von kreisförmig perspektivischen Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, gemäß einem Ausführungsbeispiel der Erfindung;
    • 7a-7c: schematische Darstellungen von kreisförmigen, auf der Oberfläche eines Würfels liegenden Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, gemäß einem Ausführungsbeispiel der Erfindung;
    • 8: eine schematische Darstellung einer kreisförmigen Anordnung von Tastenkennungen, bei deren Anzeige jeweils auf den Tasten und im Hintergrund ein von oben nach unten verlaufender Helligkeitsgradient zum Einsatz kommt, gemäß einem Ausführungsbeispiel der Erfindung;
    • 9a-9d: schematische Darstellungen von zwei kreisförmigen Anordnungen von Tastenkennungen (9a und 9d), die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, und einem aus zwei Zwischenbildern bestehenden angezeigten Übergang (9b und 9c) zwischen der Anzeige der beiden Anordnungen, gemäß einem Ausführungsbeispiel der Erfindung;
    • 10a-10d: schematische Darstellungen von zwei kreisförmigen Anordnungen von Tastenkennungen (10a und 10d), die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, und einem aus zwei Zwischenbildern bestehenden angezeigten Übergang (10b und 10c) mit jeweils wackelnden Tastenkennungen zwischen der Anzeige der beiden Anordnungen, gemäß einem Ausführungsbeispiel der Erfindung;
    • 11a-11c: schematische Darstellungen von kreisförmigen Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, mit zwei unterschiedlichen Arten der optischen Bestätigung einer Tastenbetätigung (11b und 11c), gemäß Ausführungsbeispielen der Erfindung; und
    • 12: Darstellungen von verschiedenen Ausführungsbeispielen erfindungsgemäßer Speichermedien.
  • Detaillierte Beschreibung einiger beispielhafter Ausführungsformen der Erfindung Die vorliegende Erfindung wird im Folgenden anhand von Ausführungsbeispielen beschrieben.
  • Ein erstes Ausführungsbeispiel eines erfindungsgemäßen Verfahrens umfasst die Schritte:
    • - Bestimmen einer Anordnung von Tastenkennungen, die mit einer Gruppe von Tasten einer Eingabeschnittstelle, über die ein Benutzer eine Folge von Informationselementen eingeben kann, assoziiert sind oder durch die Anordnung assoziiert werden, wobei die Tastenkennungen festlegen, welche Informationselemente den Tasten der Gruppe von Tasten jeweils zugeordnet sind und eine Eingabe eines Informationselements der Folge von Informationselementen eine Betätigung der dem Informationselement zugeordneten Taste durch den Benutzer umfasst, und
    • - Anzeigen oder Bewirken des Anzeigens der Anordnung von Tastenkennungen, wobei zumindest zwei unterschiedliche Anordnungen von Tastenkennungen bestimmt werden und deren jeweilige Anzeige durchgeführt oder bewirkt wird, wobei die zwei unterschiedlichen Anordnungen die gleichen Tastenkennungen umfassen, wobei zumindest eine jeweilige Position einer Tastenkennung der Tastenkennungen in beiden Anordnungen unterschiedlich ist, aber für jede Tastenkennung der Tastenkennungen gilt, dass zumindest zwei ihrer direkten Nachbarn in der ersten Anordnung auch in der zweiten Anordnung zu ihren direkten Nachbarn gehören.
  • Das erste Ausführungsbeispiel kann beispielweise zur Eingabe einer Folge von Informationselementen mit erhöhter Sicherheit, insbesondere gegen Ausspähung der Folge von Informationselementen, eingesetzt werden. Die Folge von Informationselementen kann beispielsweise zumindest einen Teil einer Authentisierungsinformation (oder auch die gesamte Authentisierungsinformation) darstellen, zur Freischaltung einer Authentisierungsinformation erforderlich sein oder bei der Bestimmung einer Authentisierungsinformation (gegebenenfalls zusammen mit weiteren Informationen) genutzt werden. Die Authentisierungsinformation ist beispielsweise zur Authentifizierung eines Benutzers gegenüber einer Vorrichtung oder einem Dienst erforderlich, bevor die Vorrichtung oder der Dienst durch den Benutzer genutzt werden kann. Beispiele für Authentisierungsinformation sind eine persönliche Identifikationsnummer (PIN), ein Passwort, ein Schlüssel oder eine Transaktionsnummer (TAN). Bei der Vorrichtung kann es sich um ein elektronisches Gerät, beispielsweise einen Computer (z.B. Desktop, Laptop, Tablet), ein mobiles Telefon (z.B in Form eines Smartphones), einen Geld- oder Warenausgabeautomaten oder eine Zugangskontrollvorrichtung (z.B. ein Schloss) handeln. Bei dem Dienst kann es sich beispielsweise um einen kostenpflichtigen Dienst (z.B. eine kostenpflichtige Datenbank mit Informationen, insbesondere Multimedia-Inhalten) oder sicherheitsrelevanten Dienst (z.B. Online-Banking) handeln. Die Informationselemente können beispielsweise numerisch oder alphanumerisch sein. Die Folge von Informationselementen wird beispielsweise sequentiell eingegeben. Sie kann ein oder mehrere Informationselemente umfassen. Die Eingabe der Folge von Informationselementen wird beispielsweise automatisch abgebrochen, wenn innerhalb einer vordefinierten Zeitspanne keine korrekte Folge von Informationselementen eingegeben wurde. Wenn es sich bei der Folge von Informationselementen um Authentisierungsinformation handelt, muss diese beispielsweise jedes Mal, wenn ein Benutzer die Vorrichtung oder den Dienst nutzen möchte, eingegeben werden.
  • Die Eingabe von Informationselementen durch den Benutzer erfolgt durch Betätigung von Tasten einer Gruppe von Tasten. Die Gruppe kann beispielsweise zwei oder mehr Tasten umfassen. Es muss sich bei der Gruppe von Tasten allerdings nicht notwendigerweise um alle Tasten der Eingabeschnittstelle handeln. Es können also auch Tasten der Eingabeschnittstelle vorhanden sein, für die die Bestimmung der Anordnung von Tastenkennungen und der Anzeige/Bewirkung der Anzeige nicht vorgenommen wird.
  • Jeder Taste der Gruppe von Tasten ist beispielsweise zumindest ein Informationselement zugeordnet (beispielsweise können durch Unterscheidung von Mehrfachbetätigungen einer Taste auch mehrere Informationselemente einer Taste zugeordnet sein). Durch den Tasten jeweils zugeordnete Tastenkennungen wird beispielsweise festgelegt, welches Informationselement einer jeweiligen Taste zugeordnet ist. Eine Tastenkennung kann beispielsweise eine Tastenbeschriftung darstellen. Wenn einer Taste mehrere Informationselemente zugeordnet sind, kann entsprechend auch die Tastenkennung der Taste diese mehreren Informationselemente zuordnen.
  • Bei den Tasten kann es sich beispielsweise um virtuelle Tasten (z.B. Schaltflächen) handeln, die auf einer Anzeigeeinheit, insbesondere einem Bildschirm, angezeigt werden. Wenn es sich um eine berührungsempfindliche Anzeigeeinheit (z.B. einen Touchscreen) handelt, kann die virtuelle Taste beispielsweise durch Berührung (oder auch bereits durch Annäherung) eines Fingers des Benutzers oder eines Stylus betätigt werden. Im Falle einer nicht berührungsempfindlichen Anzeigeeinheit kann die virtuelle Taste beispielsweise mittels eines Zeigegeräts (z.B. einer Maus, eines Trackballs, Trackpoints, Touchpads oder eines Geräts mit Gyro-Sensoren) betätigt werden, indem mit dem Zeigegerät ein auf der Anzeigeeinheit angezeigtes Zeigersymbol auf die virtuelle Taste bewegt und durch Aktivierung eines Interaktionselements des Zeigegeräts (z.B. durch einen Mausklick auf eine Taste der Maus, eine Taste des Trackballs, eine Taste des Trackpoints oder den Trackpoint selbst, durch beispielsweise schnelles Antippen des Touchpads oder durch eine vordefinierte Bewegung eines Geräts mit Gyro-Sensoren) betätigt werden. Die virtuellen Tasten definieren beispielsweise jeweils einen abgegrenzten Bereich auf der Anzeigeeinheit, dessen Betätigung als Tastendruck aufgefasst wird. Der Bereich kann eine Position umgeben, an der die zugehörige Tastenkennung angezeigt wird (so dass die Anzeige der Tastenkennung beispielsweise als Tastenbeschriftung wirkt). Der Bereich kann beispielsweise jeweils die Form eines Kreises, einer Ellipse oder eines Vielecks (z.B. Rechtecks oder Quadrats) aufweisen, um nur ein Paar Beispiele zu nennen. Der Bereich kann aber auch jeweils auf die Form des Zeichens beschränkt sein, das die Tastenkennung darstellt, also z.B. durch den Umriss des jeweiligen Zeichens begrenzt sein. In diesem Fall stimmt eine Taste mit der angezeigten Tastenkennung überein. Bei den Tasten kann es sich auch um sog. Softkeys handeln, die als reale (z.B. ein physikalisches Kontaktelement wie einen Schalter umfassende) Taste außerhalb eines Anzeigebereichs einer Anzeigeeinheit angeordnet sind und denen über im Anzeigebereich angezeigte Tastenkennungen ein oder mehrere Informationselemente zugeordnet werden.
  • Über die Eingabeschnittstelle kann der Benutzer Informationselemente eingeben. Wenn es sich bei den Tasten um virtuelle Tasten handelt, kann die Eingabeschnittstelle beispielsweise die Anzeigeeinheit, auf der die virtuellen Tasten dargestellt werden, das Zeigegerät und Komponenten zur Steuerung des Zeigegeräts (im Falle einer nicht berührungsempfindlichen Anzeigeeinheit) oder die Komponenten zur Erfassung einer Berührung oder annähernden Berührung der Anzeigeeinheit (im Falle einer berührungsempfindlichen Anzeigeeinheit, beispielsweise Komponenten zur resistiven, induktiven oder kapazitiven Erfassung einer Berührung und deren Position) umfassen.
  • Eine Anordnung von Tastenkennungen legt zumindest die Positionen der Tastenkennungen fest, beispielsweise zumindest relativ zueinander (z.B. hinsichtlich eines Bezugspunkts), oder auch absolut (z.B. hinsichtlich einer Anordnung auf einer Anzeigefläche einer Anzeigeeinheit). Es kann sich beispielsweise um eine kreisförmige, rechteckförmige oder linienförmige Anordnung der Tastenkennungen handeln. Die Anordnungen können zweidimensional oder dreidimensional (z.B. in Form eines Polyeders (z.B. eines Würfels) oder einer Kugel. Die Anordnung von Tastenkennungen kann die Positionen beispielsweise als Information, insbesondere als Koordinaten, enthalten. Diese kann beispielsweise von einer Anzeigeeinheit dann bei der Anzeige der Anordnung von Tastenkennungen verwendet werden. Alternativ kann die Anordnung von Tastenkennungen bereits eine grafische Repräsentation der Tastenkennungen sein, also beispielsweise in einem Grafikformat (z.B. GIF, JPEG, etc.) vorliegen. Die Anordnung von Tastenkennungen kann zusätzlich auch eine Darstellung der Tastenkennungen festlegen, beispielsweise eine perspektivische, gestreckte, gestauchte oder rotierte Darstellung, eine Darstellung unter Verwendung eines Farb- und/oder Helligkeitsgradienten, oder eine bewegte Darstellung. Wenn die Anordnung von Tastenkennungen eine grafische Repräsentation der Tastenkennungen darstellt, kann die Darstellung der Tastenkennungen in dieser grafischen Repräsentation beispielsweise bereits enthalten sein.
  • Zusätzlich kann eine Anordnung von Tastenkennungen auch Information über Tasten umfassen, die mit den jeweiligen Tastenkennungen assoziiert und beispielsweise zusammen mit den Tastenkennungen auf einer Anzeigeeinheit anzuzeigen sind. Beispielsweise kann die Information über die Tasten festlegen, welche Form, Farbe (z.B. auch als Gradient), Helligkeit (z.B. auch als Gradient), Textur etc. die Tasten jeweils oder insgesamt aufweisen sollen und/oder ob die Tasten jeweils oder insgesamt perspektivisch, gestreckt, gestaucht oder rotiert dargestellt werden sollen. Wenn die Anordnung von Tastenkennungen eine grafische Repräsentation der Tastenkennungen ist, können in dieser grafischen Repräsentation beispielsweise auch die Tasten enthalten sein.
  • Eine Anordnung von Tastenkennungen wird beispielsweise dadurch bestimmt, dass zumindest die Positionen der Tastenkennungen bestimmt werden. Bei einer kreisförmigen Anordnung wird beispielsweise jeder Tastenkennung eine Position auf dem Kreis zugewiesen. Wenn die Tastenkennungen mit Tasten assoziiert sind, legt die Position einer Tastenkennung auch die Position einer Taste fest Tastenkennungen können allerdings auch erst durch die Anordnung der Tastenkennungen mit Tasten assoziiert werden, beispielsweise wenn es sich bei den Tasten um Softkeys handelt, die ortsfest an einer Anzeigeeinheit (z.B. außerhalb des Anzeigebereichs der Anzeigeeinheit, insbesondere in der Nähe des Randes der Anzeigeeinheit) angebracht sind und denen durch die Anordnung der Tastenkennungen innerhalb des Anzeigebereichs der Anzeigeeinheit dann jeweilige Tastenkennungen zugewiesen werden (beispielsweise wird eine Tastenkennung jeweils neben der ihr zugeordneten Taste angeordnet).
  • Die bestimmte Anordnung von Tastenkennungen wird dann entweder angezeigt (beispielsweise von derselben Vorrichtung, die die Anordnung von Tastenkennungen bestimmt hat), oder die Anzeige der Tastenkennungen wird bewirkt (beispielsweise bewirkt eine Vorrichtung, die die Anordnung der Tastenkennungen bestimmt hat, dass eine andere Vorrichtung die Anzeige der Anordnung der Tastenkennungen vornimmt, beispielsweise durch Absetzen eines Steuerbefehls und von die bestimmte Anordnung von Tastenkennungen repräsentierenden Informationen an die andere Vorrichtung.
  • Gemäß dem ersten Ausführungsbeispiel eines erfindungsgemäßen Verfahrens werden zumindest zwei unterschiedliche Anordnungen von Tastenkennungen bestimmt, und deren jeweilige Anzeige wird durchgeführt oder bewirkt Es können ebenso gut mehr als zwei unterschiedliche Anordnungen von Tastenkennungen bestimmt und deren Anzeige durchgeführt oder bewirkt werden. Beispielsweise wird bei der Eingabe eines Informationselements einer Folge von Informationselementen jeweils eine unterschiedliche Anordnung von Informationselementen angezeigt, also beispielsweise vier unterschiedliche Anordnungen von Informationselementen bei einer Folge von vier Informationselementen (z.B. einem vierstelligen Code).
  • Die zwei unterschiedlichen Anordnungen umfassen die gleichen Tastenkennungen (beispielsweise die Ziffern von 0-9). Allerdings ist zumindest eine jeweilige Position einer Tastenkennung der Tastenkennungen in beiden Anordnungen unterschiedlich (beispielsweise ist also die Ziffer „0“ in der ersten Anordnung von Tastenkennungen an einer anderen Position als die Ziffer „0“ in einer zweiten Anordnung von Tastenkennungen). Dadurch wird sichergestellt, dass die Anordnung der Tastenkennungen während der Eingabe der Folge von Informationselementen nicht konstant bleibt damit beispielsweise für eine Person, die die Eingabe beobachtet, schwieriger auszuspähen ist Der Unterschied zwischen den zwei Anordnungen kann beispielsweise nicht oder nicht nur in einer gleichen translatorischen Verschiebung alle Tastenkennungen einer ersten der beiden Anordnungen zum Erhalten der entsprechenden Positionen der Tastenkennungen einer zweiten der beiden Anordnungen bestehen und/oder in einer Streckung oder Stauchung eines Objekts, das durch die Positionen der Tastenkennungen einer ersten der beiden Anordnungen definiert ist, um die Positionen einer zweiten der beiden Anordnungen zu erhalten. Um dem Benutzer, der die Folge von Informationselementen eingibt, das Auffinden der jeweiligen Tastenkennungen (und damit den damit assoziierten Tasten) zu erleichtern, werden die Tastenkennungen in den unterschiedlichen Anordnungen nicht jedes Mal zufällig angeordnet, sondern gehorchen einem Ordnungsprinzip. Insbesondere wird dazu gefordert, dass für jede Tastenkennung der Tastenkennungen (der ersten und zweiten Anordnung von Tastenkennungen) gilt, dass zumindest zwei ihrer direkten Nachbarn in der ersten Anordnung auch in der zweiten Anordnung zu ihren direkten Nachbarn gehören (bei mehr als zwei unterschiedlichen Anordnungen von Tastenkennungen gilt dies entsprechend für alle Anordnungen von Tastenkennungen). Die Nachbarschaftsbeziehungen bleiben also in den unterschiedlichen Anordnungen von Tastenkennungen erhalten, was dem Benutzer die Orientierung und damit das Auffinden einer Tastenkennung und damit der mit der Tastenkennung assoziierten Taste erleichtert Beispielsweise kann das Beibehalten der Nachbarschaftsbeziehungen darin resultieren, dass eine Aufeinanderfolge der Tastenkennungen in den unterschiedlichen Anordnungen von Tastenkennungen erhalten bleibt Wenn es sich beispielsweise um kreisförmige Anordnungen von Tastenkennungen handelt, kann eine zweite Anordnung von Tastenkennungen sich von einer ersten Anordnung von Tastenkennungen dadurch unterscheiden, dass alle Tastenkennungen der zweiten Anordnung um einen Winkel (z.B. zwischen -180° und + 180°) gegenüber den entsprechenden Tastenkennungen der ersten Anordnung verschoben sind. Wenn sich ein Benutzer eine Aufeinanderfolge von Tastenkennungen in der ersten Anordnung gemerkt hat (oder diese intuitiv, beispielsweise auf- oder absteigend nach Tastenkennung sortiert ist, wie es beispielsweise bei einer Wählscheibe eines Wählscheibentelefons der Fall ist), fällt dem Benutzer das Auffinden von Tastenkennungen in der zweiten Anordnung, in der die gleiche Aufeinanderfolge von Tastenkennungen herrscht, wesentlich leichter als wenn die Tastenkennungen in der zweiten Anordnung zufällig gewählt sind.
  • 1 ist ein Ablaufdiagramm 100 eines Ausführungsbeispiels eines erfindungsgemäßen Verfahrens, in dem auch das erste Ausführungsbeispiel eines erfindungsgemäßen Verfahrens in den Schritten 101, 102 und 111 enthalten ist. Das erste Ausführungsbeispiel und weitere Ausführungsbeispiele des erfindungsgemäßen Verfahrens werden nachfolgend anhand der 1 beschrieben, wobei optionale Schritte im Ablaufdiagramm 100 der 1 gestrichelt gekennzeichnet sind.
  • Gemäß dem ersten Ausführungsbeispiel des erfindungsgemäßen Verfahrens wird in Schritt 101 eine Anordnung von Tastenkennungen bestimmt und in Schritt 102 die Anzeige der Anordnung von Tastenkennungen durchgeführt oder bewirkt Eine weitere Anordnung von Tastenkennungen wird dann in Schritt 111 bestimmt und abermals in Schritt 102 die Anzeige der Anordnung von Tastenkennungen durchgeführt oder bewirkt Die Schritte 101 und 111 können beispielsweise von einem Prozessor oder einer funktionalen Einheit davon ausgeführt werden. Auch der Schritt 102 kann von einem Prozessor (insbesondere dem Prozessor, der die Schritte 101 und 111 ausführt) ausgeführt werden, insbesondere wenn das Anzeigen der Anordnung von Tastenkennungen nur bewirkt werden soll (z.B. durch einen Steuerbefehl). Wenn der Schritt 102 das Anzeigen selbst umfasst, kann dies beispielsweise von einer Anzeigeeinheit durchgeführt werden, beispielsweise unter der Kontrolle eines Prozessors (insbesondere des Prozessors, der die Schritte 101 und 111 ausführt). Vor dem Schritt 101 kann optional bestimmt werden, für welche Tastenkennungen aus einer Vielzahl von Tastenkennungen eine Anordnung von Tastenkennungen bestimmt werden soll. Beispielsweise kann dabei bestimmt werden, aus welchem Zeichensatz die Tastenkennungen stammen sollen und/oder ob es sich bei den Tastenkennungen um Ziffern, Buchstaben oder Sonderzeichen handeln soll. Dieses Bestimmen kann beispielsweise auf Vorgaben eines Programms beruhen, dass die Funktion der Eingabe einer Folge von Informationselementen erfordert und dazu das erste Ausführungsbeispiel eines erfindungsgemäßen Verfahrens aufruft (z.B. wenn dieses als gesonderte Anwendung verkörpert ist). Bei diesem Aufruf des Programms kann beispielsweise als Argument an das Programm übergeben werden, dass die Folge von Informationselementen nur aus Ziffern bestehen soll, und dementsprechend werden dann nur Anordnungen von Ziffern als Tastenkennungen bestimmt und angezeigt oder deren Anzeige bewirkt
  • Ein zweites Ausführungsbeispiel des erfindungsgemäßen Verfahrens umfasst neben den Merkmalen des ersten Ausführungsbeispiels des erfindungsgemäßen Verfahrens ferner folgendes: Erfassen einer Interaktion des Benutzer mit der Eingabeschnittstelle, oder Erhalten einer Information über eine Interaktion des Benutzers mit der Eingabeschnittstelle (vgl. Schritt 103 der 1); Bestimmen, zumindest anhand der erfassten Interaktion oder der erhaltenen Information über die Interaktion, welche Taste der Gruppe von Tasten der Eingabeschnittstelle der Benutzer im Rahmen der Interaktion betätigt hat (vgl. Schritt 104 der 1); und Bestimmen des durch den Benutzer eingegebenen Informationselements anhand der mit der betätigten Taste assoziierten Tastenkennung (vgl. Schritt 106 der 1).
  • Die Interaktion des Benutzers mit der Eingabeschnittstelle kann beispielsweise das Auswählen und Anklicken einer als virtuelle Taste ausgebildeten, auf einer Anzeigeeinheit angezeigten Taste mittels eines Zeigegeräts oder das Berühren (oder annähernde Berühren) einer auf einer berührungsempfindlichen Anzeigeeinheit dargestellten virtuellen Taste umfassen. Diese Interaktion kann gemäß Schritt 103 entweder von der Vorrichtung, die das zweite Ausführungsbeispiel des erfindungsgemäßen Verfahrens ausführt, erfasst werden, oder Information über derartige Information kann durch diese Vorrichtung erhalten (z.B. von einer anderen Vorrichtung empfangen) werden. Bei der Information über die Interaktion kann es sich beispielsweise um die Koordinaten eines Punktes, den ein Benutzer angeklickt oder berührt (oder annähernd berührt) hat, handeln. Bei der Information über die Interaktion kann es sich im Falle einer als Softkey ausgeführten Taste auch direkt um eine Information über die betätigte Taste handeln, so dass gleichzeitig auch die durch die Interaktion betätigte Taste bestimmt ist (Schritte 103 und 104 fallen hier zusammen).
  • Im Schritt 104 wird dann anhand der erfassen Interaktion oder der erhaltenen Information über die Interaktion die durch den Benutzer aktivierte Taste bestimmt. Wenn beispielsweise die Koordinaten einer durch den Benutzer angeklickten oder berührten (oder nahezu berührten) Position auf einer Anzeigeeinheit, auf der die Anordnung von Tastenkennungen angezeigt wird, bekannt ist, kann durch Abgleich mit den Bereichen der Anzeigeeinheit, die jeweils durch Tasten vereinnahmt werden, festgestellt werden, welche Taste betätigt wurde. Unter Heranziehung der Tastenkennung kann dann im Schritt 106 bestimmt werden, welches Informationselement der betätigten Taste zugeordnet ist
  • Das zweite Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann zusätzlich beispielsweise die Schritte 107, 109 und/oder 115 aufweisen. Im Schritt 107 wird das als vom Benutzer eingegeben identifizierte Informationselement gespeichert Dies kann beispielsweise in einem Arbeitsspeicher einer Vorrichtung, die das zweite Ausführungsbeispiel des erfindungsgemäßen Verfahrens ausführt, erfolgen. Die Speicherung kann beispielsweise kurzfristig sein, beispielsweise nur bis zu einem Zeitpunkt, in dem die Verarbeitung der gesamten Folge von eingegebenen Informationselementen abgeschlossen ist (vgl. Schritt 115), also beispielsweise eine zur Authentifizierung des Benutzers erforderliche Authentisierungsinformation vollständig eingegeben wurde (z.B. als Code, Passwort, TAN oder PIN). Im Schritt 109 wird geprüft, ob die Eingabe der Folge von Informationselementen abgeschlossen ist. Dies kann beispielsweise dadurch erfolgen, dass geprüft wird, ob alle Informationselemente einer Folge von Informationselementen, der Länge bekannt ist, eingegeben wurden. Alternativ kann auch ein Interaktionselement vorgesehen sein (z.B. eine spezielle Taste), durch das der Benutzer explizit angeben kann, dass die Eingabe beendet ist Wenn die Eingabe beendet ist, erfolgt gemäß Schritt 115 eine Ausgabe der Folge von gespeicherten Informationselementen (z.B. an eine andere Vorrichtung, z.B. zur Authentifizierung) und/oder eine Verarbeitung der Folge von gespeicherten Informationselementen (z.B. eine Authentifizierung, beispielsweise durch Vergleich der gespeicherten Folge von Informationselementen mit einer gespeicherten Folge von Informationselementen, wobei bei Übereinstimmung beider Folgen von einer erfolgreichen Authentisierung ausgegangen wird). Wenn die Eingabe nicht beendet ist, schreitet das Ablaufdiagramm 100 zum Schritt 111 voran und bestimmt erneut eine Anordnung von Tastenkennungen, die dann im Schritt 102 angezeigt oder deren Anzeige bewirkt wird.
  • Bei dem ersten und zweiten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann eine erste der beiden unterschiedlichen Anordnungen von Tastenkennungen (z.B. die in Schritt 101 bestimmte Anordnung) für die Eingabe eines Informationselements der Folge von Informationselementen (Schritte 103, 104, 106) und eine zweite der beiden unterschiedlichen Anordnungen von Tastenkennungen (z.B. die in Schritt 111 bestimmte Anordnung) für die Eingabe eines weiteren Informationselements der Folge von Informationselementen (Schritte 103, 104, 106) bestimmt und deren jeweilige Anzeige durchgeführt oder bewirkt werden (Schritt 102).
  • Die Bestimmung (Schritt 111) und Anzeige bzw. Bewirkung der Anzeige (Schritt 102) wird beispielsweise durch die jeweils vorhergehende Eingabe eines Informationselements (Schritte 103, 104, 106) ausgelöst.
  • Bei dem ersten und zweiten Ausführungsbeispiel des erfindungsgemäßen Verfahrens wird für die Eingabe jedes Informationselements der Folge von Informationselementen eine jeweilige Anordnung von Tastenkennungen bestimmt und deren Anzeige durchgeführt oder bewirkt, und für alle diese Anordnungen gilt, dass sich die für die Eingabe von zwei in der Folge von Informationselementen unmittelbar aufeinander folgenden Informationselementen bestimmten Anordnungen jeweils voneinander unterscheiden.
  • Es findet dann also nach jeder Eingabe eines Informationselements ein Wechsel der Anordnung der Tastenkennungen statt, der eine Ausspähung der eingegebenen Informationselemente erheblich erschwert Wenn die Anordnungen jeweils auf einem Zufallsprinzip beruhen (also beispielsweise jede Anordnung in Abhängigkeit einer jeweils für die Anwendung bestimmten Zufallszahl bestimmt wird), kann beispielsweise durch Überwachung des Ergebnisses eines Zufallsgenerators oder durch entsprechende Konfiguration des Zufallsgenerators sichergestellt werden, dass zwei aufeinanderfolgend bestimmte Anordnungen von Tastenkennungen nicht identisch sind. Wenn die Anordnungen beispielsweise kreisförmig sind und von Anordnung zu Anordnung um einen zufällig bestimmten Drehwinkel um den Mittelpunkt der Anordnung gedreht werden, kann beispielsweise geprüft werden, ob der Drehwinkel 0 oder ein Vielfaches von 360° beträgt, und in diesen Fällen jeweils ein neuer Drehwinkel zufällig bestimmt werden. Zusätzlich oder alternativ kann geprüft werden, dass der Betrag des Drehwinkels einen vordefinierten Mindestwert überschreiten muss, beispielsweise mehr als 360°/(N-1) betragen muss, wobei N die Anzahl von Tastenkennungen der Anordnung von Tastenkennungen ist. Dies führt bei einer beispielhaften gleichverteilten Anordnung von N Tastenkennungen auf einem Kreis dazu, dass die Tastenkennungen um mindestens eine Tastenkennungsposition weiter rotiert werden. Anstelle der Prüfung und gfs. Neubestimmung eines Drehwinkels kann der Zufallsgenerator beispielsweise unmittelbar so konfiguriert werden, dass der Betrag der Drehwinkel in einem Bereich von 360°/(N-1) bis (360°-360°/(N-1)) liegt
  • Bei dem ersten und zweiten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann anstelle der bisher diskutierten Bestimmung der Anordnung von Tastenkennungen nach jeder Eingabe eines Informationselements nach einem Zufallsprinzip bestimmt werden, ob nach der Eingabe eines Informationselements eine neue Anordnung von Tastenkennungen bestimmt und angezeigt oder deren Anzeige bewirkt werden soll, oder ob die vorhandene Anordnung von Tastenkennungen noch einmal verwendet werden soll. Dies hat für den Benutzer den Vorteil, dass er für zwei oder mehr aufeinanderfolgende Eingaben von Informationselementen die gleiche Anordnung von Tastenkennungen angezeigt bekommt und sich bei der Eingabe nicht umorientieren muss. Zudem entfällt der Rechenaufwand für die erneute Bestimmung einer Anordnung von Tastenkennungen. Allerdings wird das Ausspähen der eingegebenen Folge von Informationselementen durch diese Maßnahme erleichtert In 1 kann dies beispielsweise dadurch realisiert werden, dass in einem Schritt 110 geprüft wird, ob eine neue Anordnung von Tastenkennungen bestimmt werden soll (beispielsweise anhand der Generierung einer im Intervall von 0 bis 1 gleichverteilten Zufallszahl, wobei bestimmt wird, dass eine neue Anordnung bestimmt werden soll, wenn die Zufallszahl größer als 0.5 ist). Wenn dies der Fall ist, wird Schritt 111 (und dann Schritt 102) ausgeführt Anderenfalls wird Schritt 103 ausgeführt (hierbei wird angenommen, dass die Anzeige der zuvor bestimmten Anordnung von Tastenkennungen gemäß Schritt 102 fortbesteht).
  • Bei einem dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens, das zumindest die Merkmale des ersten oder zweiten Ausführungsbeispiels des erfindungsgemäßen Verfahrens umfasst, sind bei den zumindest zwei unterschiedlichen Anordnungen von Tastenkennungen die Tastenkennungen jeweils entlang einer angezeigten oder nicht angezeigten Linie angeordnet, die Tastenkennungen einer zweiten Anordnung der beiden Anordnungen sind gegenüber den Tastenkennungen einer ersten Anordnung der beiden Anordnungen zumindest entlang der Linie verschoben, die Linie ist entweder geschlossen oder offen, und im Fall der offenen Linie werden Tastenkennungen, die beim Verschieben über ein Ende der Linie hinausgelangen würden, am entgegengesetzten Ende der Linie eingefügt Die Linie muss dabei beispielsweise keine gerade Linie sein, es kann sich beispielsweise um eine Kurve handeln. Im Falle einer offenen Kurve werden jeweils an entgegen gesetzten Enden der Linie angeordnete Feldkennungen beispielsweise als direkte Nachbarn verstanden.
  • Die Linie kann beispielsweise zumindest einen Teil einer Begrenzungslinie eines angezeigten oder nicht angezeigten Objekts, insbesondere einer geometrischen Figur, darstellen. Es kann sich dabei beispielsweise auch um die gesamte (also geschlossene) Begrenzungslinie des geometrischen Objekts handeln. Das geometrische Objekt kann beispielsweise perspektivisch dargestellt, verkippt, gestaucht oder gestreckt sein, und in dieser Form der Anordnung der Tastenkennungen zu Grunde liegen. Bei der geometrischen Figur kann es sich beispielsweise um einen Kreis, eine Ellipse oder ein Polygon (z.B. ein Dreieck, Viereck (auch ein Quadrat), Sechseck etc. handeln). Die Feldkennungen können beispielsweise gleichmäßig entlang der gesamten Länge der Linie verteilt sein, insbesondere äquidistant
  • Die 3a-3d sind schematische Darstellungen von kreisförmigen Anordnungen 3a-3d von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden. Die Tastenkennungen sind hier also entlang der (nicht angezeigten) Begrenzungslinie eines Kreises angeordnet Die Anordnungen 3a-3d werden jeweils auf einer Anzeigeeinheit dargestellt (vgl. Schritt 102 der 1), deren Anzeigebereich in den 3a-3d rechteckförmig angenommen und durch den Rand der 3a-3d repräsentiert ist. In 3a umfasst die Anordnung von Tastenkennungen 3a zehn Tastenkennungen (Ziffern „0“ bis „9“), von denen die Ziffern „0“, „1“ und „9" mit den Bezugszeichen 30, 31 und 39 versehen sind. Die Tastenkennungen 30, 31 und 39 sind jeweils mit Tasten 30', 31' und 39' assoziiert, auf denen die Tastenkennungen 30, 31 und 39 gleichsam einer Tastenbeschriftung zu liegen kommen. Hinsichtlich der beispielhaft herausgegriffenen Tastenkennung 30 stellen die Tastenkennungen 39 und 31 jeweils direkte Nachbarn dar. Ferner gezeigt ist in 3a ein vierstelliges Eingabefeld 301 für Informationselemente, die mittels der angezeigten Anordnung von Feldkennungen 3a und den zugehörigen Tasten eingegeben werden sollen. Bei den Tasten der 3a handelt es sich um virtuelle Tasten, die beispielsweise auf einer berührungsempfindlichen oder nicht berührungsempfindlichen Anzeigeeinheit angezeigt werden. Ein Benutzer kann nun durch Betätigung einer Taste ein Informationselement eingeben (vgl. die Schritte 103-106 der 1).
  • Die Eingabe des Informationselements führt zur Bestimmung (Schritt 111 von 1) und Anzeige (Schritt 102 der 1) einer neuen Anordnung von Tastenkennungen 3b, wie in 3b dargestellt ist. Zudem ist in dem vierstelligen Eingabefeld 301 nun durch ein Sternsymbol „*“ versinnbildlicht, dass bereits ein Informationselement der vierstelligen Folge von Informationselementen eingegeben wurde. Wie aus 3b ersichtlich ist, wurde die Anordnung von Tastenkennungen 3a hinsichtlich des Mittelpunkts der Anordnung 3a um einen Drehwinkel von 90° gedreht, um die Anordnung von Tastenkennungen 3b zu erhalten. Die Aufeinanderfolge der Tastenkennungen ist dabei unverändert geblieben, ebenso wie die Nachbarschaftsbeziehungen der Tastenkennungen (beispielsweise sind die Tastenkennungen 39 und 31 immer noch direkte Nachbarn der Tastenkennung 30. Wie man sich leicht überzeugt, ist aufgrund der Beibehaltung der Nachbarschaftsbeziehungen eine Tastenkennung in der Anordnung 3b immer noch schnell aufzufinden, im Gegensatz zu einem denkbaren Szenario, in dem die Tastenkennungen in der Anordnung 3b vollkommen zufällig auf dem Kreis angeordnet wären.
  • Die 3c-3d zeigen, wie die Anordnungen 3c und 3d zur Eingabe des dritten und vierten Informationselements der Folge von Informationselementen aussehen können, auch sie gehen durch jeweilige Drehungen der kreisförmigen Anordnung von Tastenkennungen um zufällig gewählte Drehwinkel hervor.
  • Die 4a-4b sind schematische Darstellungen von rechteckförmigen Anordnungen 4a-4b von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden. Die Tastenkennungen sind hier entlang der (nicht gesondert angezeigten) Begrenzungslinie eines Rechtecks angeordnet. Die Anzeige der Anordnungen 4a-4b wird wie bei den 3a-3d wieder auf einer Anzeigeeinheit mit rechteckförmigem Anzeigebereich angenommen. Die Anordnung von Tastenkennungen 4a umfasst zehn Tastenkennungen (Ziffern „0“ bis „9“), von denen die Ziffern „0“, „1“ und „9“ mit den Bezugszeichen 40, 41 und 49 versehen sind. Die Tastenkennungen 40, 41 und 49 sind jeweils mit Tasten 40', 41' und 49' assoziiert Hinsichtlich der beispielhaft herausgegriffenen Tastenkennung 40 stellen die Tastenkennungen 49 und 41 jeweils direkte Nachbarn dar. Ebenfalls dargestellt ist wiederum das vierstellige Eingabefeld 301. Die 4b verdeutlicht, wie nach der Eingabe eines ersten Informationselements mittels der Anordnung 4a der 4a eine neu bestimmte Anordnung 4b angezeigt wird, in der jeweils alle Tastenkennungen (mit ihren zugehörigen Tasten) um drei Positionen im Uhrzeigersinn verschoben wurden.
  • Die 5a-5b sind schematische Darstellungen von Anordnungen 5a-5b von Tastenkennungen entlang einer Geraden. Die Anordnungen 5a-5b werden bei der Eingabe einer Folge von Informationselementen jeweils angezeigt. Die Tastenkennungen sind hier entlang einer vertikal verlaufenden, geraden Linie (nicht gesondert angezeigt) angeordnet Die Anzeige der Anordnungen 5a-5b wird wie bei den 3a-3d wieder auf einer Anzeigeeinheit mit rechteckförmigem Anzeigebereich angenommen. Die Anordnung von Tastenkennungen 5a umfasst zehn Tastenkennungen (Ziffern „0“ bis „9“), von denen die Ziffern „0“, „1“ und „9“ mit den Bezugszeichen 50, 51 und 59 versehen sind. Die Tastenkennungen 50, 51 und 59 sind jeweils mit Tasten 50', 51' und 59' assoziiert. Hinsichtlich der beispielhaft herausgegriffenen Tastenkennung 50 stellen die Tastenkennungen 59 (am anderen Ende der geraden Linie) und 51 jeweils direkte Nachbarn dar. Die 5b verdeutlicht, wie nach der Eingabe eines ersten Informationselements mittels der Anordnung 5a der 5a eine neu bestimmte Anordnung 5b angezeigt wird, in der jeweils alle Tastenkennungen (mit ihren zugehörigen Tasten) um fünf Positionen nach unten verschoben wurden. Tastenkennungen, die bei dieser Verschiebung am unteren Ende der geraden Linie herausfallen würden, wurden jeweils am oberen Ende der geraden Linie wieder eingefügt, so dass die Aufeinanderfolge der Tastenkennungen durch den Verschiebungsprozess unverändert bleibt
  • Bei dem dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann eine Entfernung, um die die Tastenkennungen der zweiten Anordnung gegenüber den Tastenkennungen der ersten Anordnung entlang der Linie verschoben worden sind, von einer Zufallszahl abhängen. Die Zufallszahl kann beispielsweise angeben, um welchen Winkel die Tastenkennungen einer kreisförmigen Anordnung weitergedreht werden sollen, wie oben bereits erläutert wurde. Bei der Zufallszahl kann es sich beispielsweise nicht um eine beispielsweise gleichverteilte Pseudozufallszahl handeln, sondern um eine Zufallszahl, die unter Berücksichtigung von beispielsweise zum Zeitpunkt der Bestimmung der Anordnung von Tastenkennungen aktuellen Parametern, wie beispielsweise dem Ort, an dem sich eine Vorrichtung, die die Bestimmung vornimmt befindet, und der Zeit, zu der die Bestimmung stattfindet Dies erschwert die Vorhersage der generierten Zufallszahl und damit die Ausspähung der Folge von Informationselementen.
  • Bei dem dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann die zweite Anordnung aus der ersten Anordnung beispielsweise dadurch erhalten werden, dass die Tastenkennungen der ersten Anordnung entlang der Linie verschoben werden und zusätzlich die verschobenen Tastenkennungen einer oder mehreren der folgenden Maßnahmen unterzogen werden:
    • - gleichmäßige oder ungleichmäßige Skalierung in mehreren Dimensionen, Verschiebung, Verkippung und/oder Perspektiveänderung eines zumindest die verschobenen Tastenkennungen enthaltenden Objekts, und/oder
    • - gleichmäßige oder ungleichmäßige Skalierung in mehreren Dimensionen, Rotation, Verkippung und/oder Perspektiveänderung ein oder mehrerer der verschobenen Tastenkennungen jeweils für sich.
  • Ein die verschobenen Tastenkennungen enthaltenes Objekt kann beispielsweise ein Objekt sein, dass sämtliche Tastenkennungen zusammengruppiert Die Maßnahmen wie Skalierung, Verschiebung (z.B. Translation), Perspektiveänderung und/oder Verkippung können dann beispielsweise mit diesem Objekt statt mit den einzelnen Tastenkennungen durchgeführt werden. Die aufgezählten Maßnahmen und auch weitere mögliche Maßnahmen können beispielsweise durch affine Transformationen ausgedrückt werden und von gängigen Grafikprozessoren effizient durchgeführt werden.
  • Zusätzlich oder alternativ können allerdings auch die Tastenkennungen selbst derartigen Maßnahmen unterzogen werden.
  • Unter einer ungleichmäßigen Skalierung eine Skalierung verstanden, die in unterschiedlichen Dimensionen unterschiedliche Skalierungsfaktoren einsetzt, also beispielsweise einen größeren Skalierungsfaktor in der vertikalen Dimension als in der horizontalen Dimension.
  • Information betreffend diese Maßnahmen kann beispielsweise entweder als Information in der Anordnung von Tastenkennungen enthalten sein (z.B. als Steuerinformation) und dann von einer Anzeigeeinheit umgesetzt werden, oder - in dem bereits geschilderten Fall, dass die Anordnung von Tastenkennungen bereits eine grafische Repräsentation der Tastenkennungen darstellt, bereits in dieser grafischen Repräsentation berücksichtigt sein.
  • Diese Maßnahmen erschweren zusätzlich eine Ausspähung durch einen menschlichen Beobachter und erschweren darüber hinaus die automatische Erkennung der Tastenkennungen anhand von Screenshots durch OCR-Verfahren.
  • Die 6a-6b sind schematische Darstellungen von Anordnungen 6a-6b von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden. Die Tastenkennungen (Ziffern „0“ bis „9“) der Anordnung von Tastenkennungen 6a sind hier entlang einer (nicht angezeigten) Begrenzungslinie eines Kreises angeordnet, der in der Anordnung 6a allerdings eine andere Perspektive aufweist als in der Anordnung 6b. Die 6a-6b stellen damit ein Beispiel für die zuvor beschriebenen Maßnahmen bei der Bestimmung einer zweiten Anordnung von Tastenkennungen ausgehend von einer ersten Anordnung von Tastenkennungen dar.
  • Bei dem ersten, zweiten und dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens können mehrere Anordnungen von Tastenkennungen für die Eingabe eines Informationselements bestimmt und deren Anzeige durchgeführt oder bewirkt werden. Die mehreren Anordnungen von Tastenkennungen können beispielsweise zumindest teilweise gleichzeitig angezeigt werden, beispielsweise dergestalt, dass mindestens zwei der Anordnungen von Tastenkennungen gleichzeitig sichtbar sind. Die mehreren Anordnungen von Tastenkennungen können beispielsweise auf unterschiedlichen Flächen eines geometrischen dreidimensionalen Objekts dargestellt sein, beispielsweise eines (z.B. konvexen) Polyeders, insbesondere eines Würfels. Der Würfel kann durch den Benutzer beispielsweise um zumindest eine (oder zumindest zwei zueinander orthogonale) Achsen rotiert werden, um eine Anordnung von Tastenkennungen der Anordnungen von Tastenkennungen in eine Position zu bringen, in der sie von dem Benutzer gut gesehen und die mit den Tastenkennungen assoziierten Tasten gut bedient werden können. Die mehreren Anordnungen von Tastenkennungen können dabei beispielsweise jeweils unterschiedliche Tastenkennungen aufweisen. Durch das Vorhandensein von mehreren Anordnungen von Tastenkennungen wird damit die Anzahl von Tastenkennungen bei der Eingabe eines Informationselements erhöht Beispielsweise enthalten die Anordnungen von Tastenkennungen dann zusammen alle Ziffern von „0“-„9“ und die Buchstaben von „A“-„Z“. Wenn es sich bei dem dreidimensionalen Objekt beispielsweise um einen Würfel handelt, und jede Anordnung von Tastenkennungen zehn Tastenkennungen umfasst, können die Ziffern 0-9 und die Buchstaben von A-Z auf insgesamt vier Seiten des Würfels untergebracht werden.
  • Ein Beispiel für ein dreidimensionales Objekt mit darauf befindlichen Anordnungen von Tastenkennungen ist in den 7a-7c dargestellt. Das dreidimensionale Objekt ist hier ein Würfel, auf dessen Seiten jeweils eine Anordnung 7a, 8a, 9a von Tastenkennungen enthalten ist Der Würfel ist durch den Benutzer um seine horizontale, zur Anzeigeeinheit parallel verlaufende Achse und seine vertikale Achse rotierbar, um den Würfel so positionieren zu können, dass eine gewünschte Seite des Würfels dem Benutzer zugewandt ist. In 7a ist dies die Anordnung von Tastenkennungen 7a, die wiederum eine Vielzahl von Tastenkennungen umfasst, hier die Ziffern „0“„9“, von denen beispielhaft nur die Ziffer „0“ mit dem Bezugszeichen 70 versehen ist. Die Tastenkennung 70 ist wiederum mit einer Taste 70' assoziiert, bei deren Betätigung das der Taste über die Tastenkennung zugeordnete Informationselement als eingegeben angesehen wird. Wenn der Benutzer in der in 7a gezeigten Ansicht eine Taste betätigt, erfolgt analog wie zu den 3a und 3b beschrieben eine Bestimmung einer neuen Anordnung von Tastenkennungen, die in 7b mit 7b bezeichnet ist und in der die Tastenkennungen gegenüber der Anordnung von Tastenkennungen 7a um einen zufällig gewählten (aber beispielsweise in seiner vollkommenen Zufälligkeit beschränkten) Winkel verschoben wurden, wie anhand der neuen Position der Ziffer „0“ mit dem Bezugszeichen 70 in 7b erkennbar ist Wenn der Benutzer nun statt einer Ziffer einen Buchstaben eingeben will, kann er dies über die Anordnung von Tastenkennungen 8a (und gegebenenfalls über weiteren Anordnungen von Tastenkennungen auf weiteren in der 7b nicht sichtbaren Seiten des Würfels) tun. Sonderzeichen sind über die Anordnung von Tastenkennungen 9a eingebbar. Wenn das einzugebende Informationselement beispielsweise einer Tastenkennung entspricht, die in 7b in der Anordnung 8a von Tastenkennungen enthalten ist, kann der Benutzer diese Anordnung von Tastenkennungen durch Rotation des Würfels um seine horizontale, parallel zur Anzeigeebene verlaufende Achse in eine Position bewegen, in der diese Anordnung dem Benutzer zugewandt ist Die Anordnung von Tastenkennungen kann bei diesem Rotationsvorgang neu bestimmt werden (da sie ja gegebenenfalls bei der Eingabe des vorherigen Informationselements sichtbar war) oder gleich bleiben. In 7c ist der erstgenannte Fall dargestellt, aus der Anordnung von Tastenkennungen 8a der 7b wird also bei Rotation des Würfels die Anordnung von Tastenkennungen 8b, die gegenüber der Anordnung 8a beispielsweise wieder durch Verschiebung der auf einem Kreis angeordneten Tastenkennungen erhalten wird. Durch den Rotationsvorgang des Würfels erscheint auf der oberen Seite des Würfels wie in der 7c dargestellt gegebenenfalls eine weitere Anordnung 10c von Tastenkennungen, die in der 7b nicht sichtbar war. Dafür ist die Anordnung 7b in der 7c nicht mehr sichtbar.
  • Bei dem ersten, zweiten und dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens können ein oder mehrere der Tastenkennungen und/oder ein oder mehrere der Tasten der Gruppe von Tasten, falls diese angezeigt werden, und/oder ein oder mehrere Teile eines angezeigten Hintergrunds (beispielsweise eines Hintergrunds, der um die Tastenkennungen herum angezeigt wird, z.B. einer Seitenfläche eines angezeigten Polyeders (z.B. eines Würfels), auf dem eine Anordnung von Tastenkennungen dargestellt sein kann) jeweils mit konstanten oder sich zeitlich (beispielsweise während der Anzeige einer Anordnung von Tastenkennungen) verändernden Helligkeits-, Farb- und/oder Texturunterschieden angezeigt werden. Eine Tastenkennung, Taste und/oder ein Teil des Hintergrunds weisen also jeweils zumindest zwei verschiedene Helligkeiten und/oder Farben und/oder Texturen auf. Diese Unterschiede können bei der Anzeige konstant sein, oder sich während der Anzeige ändern. Die Änderung während der Anzeige kann beispielsweise zufällig erfolgen. Auch wenn die Unterschiede bei einer Anzeige einer Anordnung von Tastenkennungen konstant sind, können sich die Unterschiede bei aufeinanderfolgenden Anzeigen von Anordnungen von Tastenkennungen unterschieden, was beispielsweise zufällig bestimmt werden kann. Die Helligkeits-, Farb- und/oder Texturunterschiede können beispielsweise als Helligkeits-, Farb- und/oder Texturgradienten realisiert sein (also beispielsweise als von einem Ort zu einem anderen Ort zunehmende oder abnehmende Helligkeit und/oder als sich von einem Ort zu einem anderen Ort monoton ändernder Farbton und/oder als sich von einem Ort zu einem anderen Ort monoton ändernde Textur (z.B.in Form von monoton zunehmender Strukturierung)). Die Helligkeits-, Farb- und/oder Texturunterschiede (und beispielsweise auch deren jeweilige Änderungen während der Anzeige und/oder zwischen aufeinanderfolgenden Anzeigen) können für jede Tastenkennung, für jede Taste und/oder für jeden Teil des Hintergrunds unterschiedlich oder unterschiedlich stark ausgeprägt (und im Falle von Gradienten auch unterschiedlich gerichtet) sein. Die Anzeige der Tastenkennungen, Tasten und/oder Teile des Hintergrunds mit konstanten und/oder sich zeitlich verändernden Helligkeits-, Farb- und/oder Texturunterschieden erschwert es OCR-Verfahren erheblich, aus einem Screenshot, der eine angezeigte Tastenkennung enthält, die Tastenkennung zu bestimmen. Die unterschiedlichen Helligkeiten, Farben und/oder Texturen einer Tastenkennung führen dazu, dass für OCR-Verfahren die Klassifizierung dessen, was noch zur Tastenkennung gehört, und was Hintergrund darstellt, schwieriger gestaltet wird als im Falle einer einheitlichen Helligkeit, Farbe und/oder Textur der Tastenkennung. Insbesondere kann eine statische Schwellwertsetzung zur Bild- oder Schriftsegmentierung hinsichtlich der Tastenkennung keine oder nur sehr aufwändige Ergebnisse liefern. Dieser Effekt wird bereits durch unterschiedliche Helligkeits- und/oder Farbunterschiede bei den Tastenkennungen erzeugt, wird aber durch Helligkeits-, Farb- und/oder Texturunterschiede von Tasten, auf denen die Tastenkennungen beispielsweise dargestellt sind, verstärkt Dies gilt auch für Helligkeits-, Farb- und/oder Texturunterschiede von zumindest Teilen des Hintergrunds, die beispielsweise die Tastenkennungen umgeben. Wenn Helligkeits-, Farb- und/oder Texturunterschiede auf den Tasten oder Teilen des Hintergrunds vorhanden sind, kann das Vorsehen eines Helligkeits-, Farb- und/oder Texturunterschieds bei den Tastenkennungen zur Erschwerung von OCR-Verfahren entbehrlich sein, da auch dann die Festlegung der Grenzen der Tastenkennung durch die Helligkeits-, Farb- und/oder Texturunterschiede der die Tastenkennungen umgebenden Bereiche erschwert wird. Bei der Auswahl der Helligkeits-, Farb- und/oder Texturunterschiede wird in den Ausführungsbeispielen des erfindungsgemäßen Verfahrens allerdings beachtet, dass die Lesbarkeit der Tastenkennungen durch den Benutzer gewährleistet sein muss, obwohl die Falscherkennungsschwelle eines Benutzers, also die Schwelle, ab der ein Benutzer eine Tastenkennung nicht mehr korrekt erkennen kann, wesentlich höher liegt als bei automatischen OCR-Verfahren.
  • Ein wichtiger Schritt bei der Zeichen- bzw. Schrifterkennung von OCR-Verfahren ist die Segmentierung, also das Extrahieren der zum Zeichen (z.B. Ziffern oder Buchstaben) gehörenden Pixel. Alternative Verfahren sind beispielsweise neuronale Netze oder direkte Korrelationsverfahren. Diese Verfahren gehen von einer meinst linearen Beziehung der Helligkeits-, Farb- und/oder Texturwerte zwischen Vordergrund (Zeichen) und Hintergrund aus. Die beschrieben Maßnahmen zielen insbesondere darauf ab, dass Standardverfahren zur Zeichen- bzw. Schrifterkennung aufgrund der Helligkeits-, Farb- und/oder Texturunterschiede oder -verläufe des Hintergrunds und/oder des Vordergrundes scheitern. Zusätzlich kann die die Erkennung beispielsweise durch zusätzliche Verfremdungen der Tastenkennungen erschwert werden.
  • Als Beispiel für die zuvor beschriebenen Maßnahmen zeigt 8 eine schematische Darstellung einer kreisförmigen Anordnung von Tastenkennungen (Ziffern „0“ bis „9“ mit jeweils assoziierten Tasten, lediglich die Ziffer „0“ ist mit dem Bezugszeichen 80 und die zugehörige Taste mit dem Bezugszeichen 81 versehen), bei deren Anzeige jeweils auf den Tasten und im Hintergrund ein von oben nach unten verlaufender Helligkeitsgradient (von hell nach dunkel) zum Einsatz kommt, um die automatische Erkennung der Tastenkennungen anhand von OCR-Verfahren aus Screenshots zu erschweren.
  • Das erste, zweite und dritte Ausführungsbeispiel des erfindungsgemäßen Verfahrens können das Anzeigen oder das Bewirken des Anzeigens der Tasten der Gruppe von Tasten umfassen.
  • Bei dem ersten, zweiten und dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann das Anzeigen der Tastenkennungen und/oder ein Anzeigen der Tasten der Gruppe von Tasten rein graphisch, insbesondere anhand der Programmierschnittstelle OpenGL (Open Graphics Library, siehe www.opengl.org) oder anhand der Programmierschnittstelle DirectX der Microsoft Corp., durch einen Graphikprozessor einer Vorrichtung, in der das Verfahren ausgeführt wird, erfolgen. Dabei können insbesondere keine nativen, für die Anzeige von Schaltflächen (z.B. Tasten mit Tastenkennungen) vorgesehenen Steuerelemente (z.B. die Klasse „Button“ der Programmierschnittstelle „android.widget“ des Android-Betriebssystems) eines Betriebssystems der Vorrichtung verwendet werden. Bei der Vorrichtung, in der das Verfahren ausgeführt wird, kann es sich beispielsweise um die Vorrichtung (z.B. um einen Prozessor) handeln, die das Verfahren durchführt Diese Vorrichtung kann dann auch den Grafikprozessor umfassen. Die Vorrichtung, in der das Verfahren ausgeführt wird, kann alternativ sowohl eine Vorrichtung, die das Verfahren ausführt, z.B. einen Prozessor, als auch, als separate Komponente, den Grafikprozessor umfassen. Ein Abhören, Austauschen oder Debuggen der Komponenten der Steuerelemente des Betriebssystems (z.B. der Desktop-spezifischen Standardsteuerelemente) führt so zu keinem Erkenntnisgewinn über eine vom Benutzer jeweils betätigte Taste. Für derartige Steuerelemente eines Betriebssystems existieren oftmals Standardangriffsmethoden, z.B. indem ein Steuerelement überblendet wird oder eine dynamische Bibliothek, die das Verhalten des Steuerelements realisiert, durch Schadsoftware ersetzt wird. Bei dem beschrieben Vorgehen werden wesentliche (oder alle) Teile der Darstellung des Steuerelements auf dem Grafikprozessor realisiert Der Rest der Logik des Verfahrens kann beispielsweise in nativem, z.B. in C++ geschriebenem Code realisiert sein und durch einen Hauptprozessor der Vorrichtung (der beispielsweise auch das Betriebssystem ausführt) ausgeführt werden. Ein Ausspähungsangriff würde daher stets die aufwändige Analyse der Software, die das Verfahren implementiert, erfordern. Standardangriffsverfahren auf Steuerelemente des Betriebssystems führen dann nicht zum Ziel.
  • Bei dem ersten, zweiten und dritten Ausführungsbeispiel des erfindungsgemäßen Verfahrens erfolgt bei Betätigung einer Taste der Gruppe von Tasten keine hinsichtlich der betätigten Taste oder hinsichtlich der mit der Taste assoziierten Tastenkennung individuelle grafische Rückmeldung oder Bestätigung. Dadurch wird insbesondere vermieden, dass bei Anfertigung eines Screenshots im Zeitpunkt der Betätigung einer Taste durch eine grafische Rückmeldung der Tasten und/oder Tastenkennung, beispielsweise durch Änderung der Darstellung nur der Tastenkennung und/oder der Taste (aber keine Änderung der Darstellung der anderen Tastenkennungen und/oder Tasten), im Screenshot erkennbar ist, welche Taste betätigt wurde.
  • Das erste, zweite und dritte Ausführungsbeispiel des erfindungsgemäßen Verfahrens können ferner das Anzeigen oder das Bewirken einer Anzeige einer Bestätigung für eine erfasste Betätigung einer Taste durch den Benutzer umfassen, wobei die Bestätigung durch zeitlich begrenzte Veränderung des Aussehens aller Tasten der Gruppe von Tasten und/oder durch zeitlich begrenzte Veränderung des Aussehens aller den Tasten der Gruppe von Tasten zugeordneten Tastenkennungen und/oder durch zeitlich begrenzte Veränderung des Aussehens zumindest eines Teils eines angezeigten Hintergrunds angezeigt wird. Dies ist in der 1 als Schritt 105 aufgeführt. Die Veränderung des Aussehens kann beispielsweise eine Veränderung eines oder mehrerer der folgenden Eigenschaften umfassen: Helligkeit, Farbe, Textur und Schriftart
  • Dadurch, dass das Aussehen aller Tasten der Gruppe von Tasten und/oder aller den Tasten der Gruppe von Tasten zugeordneten Tastenkennungen und/oder des Teil eines angezeigten Hintergrunds verändert wird, kann selbst bei Erzeugung eines Screenshots zum Zeitpunkt der Betätigung einer Taste kein Rückschluss auf die einzelne betätigte Taste gezogen werden. Dennoch erhält der Benutzer zumindest eine optische Bestätigung (ein optisches Feedback), dass er überhaupt eine Taste betätigt hat (welche Taste dies war, ist dem Benutzer selbst ja bekannt).
  • Die 11a-11c zeigen schematische Darstellungen von kreisförmigen Anordnungen von Tastenkennungen, die bei der Eingabe einer Folge von Informationselementen jeweils angezeigt werden, mit zwei unterschiedlichen Arten der optischen Bestätigung einer Tastenbetätigung (11b und 11c). 11a zeigt zunächst beispielhaft eine kreisförmige Anordnung von Tastenkennungen 11a mit Tastenkennungen „0“-„9“, von denen nur die Taste „2“ mit einer Bezugsziffer versehen ist (Bezugsziffer 12). Der Tastenkennung 12 ist die kreisförmige Taste 12` zugeordnet Wenn der Benutzer nun die Taste 12` betätigt (oder sich dieser Taste mit dem Finger oder einem Stylus annähert), werden im Beispiel der 11b alle Tasten, also nicht nur die Taste 12', in einer anderen Farbe als bei der Anzeige der Tasten in 11a dargestellt, um dem Benutzer eine optische Bestätigung für seine Tastenbetätigung zu geben. Alternativ kann auch nur der Hintergrund in einer anderen Farbe dargestellt werden, wie es in 11 c der Fall ist Das Anzeigen der Tasten oder des Hintergrunds in einer anderen Farbe kann beispielsweise nur für eine vorbestimmte Zeitdauer anhalten. Anschließend kann insbesondere eine neue Anordnung von Tastenkennungen bestimmt und angezeigt werden, wie zuvor schon beschrieben wurde (vgl. die Beschreibung zu den 3a-3d).
  • Das erste, zweite und dritte Ausführungsbeispiel des erfindungsgemäßen Verfahrens können ferner das Ausblenden oder das Anzeigen einer veränderten Repräsentation der Tastenkennungen oder das Bewirken des Ausblendens oder Unkenntlichmachens der Tastenkennungen umfassen, wenn eine Betätigung einer Taste der Gruppe von Tasten erkannt wird und/oder wenn eine Annährung eines Fingers eines Benutzers oder eines von einem Benutzer gehaltenen Stylus an eine Taste der Gruppe von Tasten erkannt wird.
  • Das Ausblenden (z.B. Nicht-Anzeigen) oder Unkenntlichmachen der Tastenkennungen bei Betätigung einer Taste oder bereits bei Erkennung einer Annäherung an eine Taste dient ebenfalls zum Schutz vor Angriffen, die auf Screenshots, die bei Betätigung einer Taste oder bei Annäherung an eine Taste erstellt werden, beruhen. Wenn die Tastenkennungen auf den Screenshots nicht enthalten oder unkenntlich sind, ist der Screenshot wertlos, selbst wenn beispielsweise durch Abhören von Betriebssystemereignissen bekannt ist, an welcher Position auf der Anzeige der Nutzer eine Tastenbetätigung vorgenommen hat Wenn die Tastenkennungen zumindest bei Betätigung einer Taste ausgeblendet oder unkenntlich dargestellt werden, kann dem Benutzer vorteilhaft dennoch ein optisches Feedback für seine Tastenbetätigung gegeben werden (allerdings ohne zugehörige Tastenkennung). Wenn der Benutzer aber weiß, dass die Taste mit der Tastenkennung, die er betätigen wollte, oben rechts in einem Ziffernblock angeordnet ist, ist für ihn ein optisches Feedback auf diese obere rechte Taste dennoch hilfreich, auch wenn die Tastenkennung im Zeitpunkt der Betätigung (und zum Zeitpunkt der Erstellung des Screenshots) nicht mehr vorhanden ist Die Tastenkennungen können beispielsweise dadurch unkenntlich gemacht werden, dass sie optisch stark verzerrt werden oder ihnen ein Objekt (z.B. ein überdeckender Balken) überlagert wird.
  • Um sicherzustellen, dass das Ausblenden oder Unkenntlichmachen der Tastenkennungen erfolgt, bevor ein Screenshot (bei Betätigung der Taste oder Annäherung eines Fingers oder Stylus an die Taste) erfolgt, muss ein Prozess, der für das Ausblenden/Unkenntlichmachen verantwortlich ist, beispielsweise als Bestandteil eines Prozesses, der das erste, zweite oder dritte Ausführungsbeispiel des erfindungsgemäßen Verfahrens durchführt, unter den Prozessen einer Vorrichtung, in der das erste, zweite oder dritte Ausführungsbeispiel des erfindungsgemäßen Verfahrens ausgeführt wird, die höchste Priorität erhalten. Dies kann softwaretechnisch sichergestellt werden, indem beispielsweise für den Prozess (oder sein zugehöriges Programm) eine absolute (z.B. Priorität=24, bei einem Bereich von Prioritäten von 0-24) oder relative Priorität (z.B. Priorität=„am höchsten“) vorgeschrieben wird. Es kann durch diesen Prozess (bzw. durch sein zugehöriges Programm) auch überwacht werden, ob es noch weitere parallele Prozesse gibt, die die gleiche Priorität aufweisen. Wenn dies festgestellt wird, kann beispielsweise eine Sicherheitswarnung ausgegeben werden und/oder das erste, zweite oder dritte Ausführungsbeispiel eines erfindungsgemäßen Verfahrens beendet werden.
  • Das erste, zweite und dritte Ausführungsbeispiel des erfindungsgemäßen Verfahrens können ferner das Anzeigen oder Bewirken des Anzeigens eines Übergangs von einer ersten der beiden unterschiedlichen Anordnungen zu einer zweiten der beiden unterschiedlichen Anordnungen umfassen. Durch das Anzeigen des Übergangs hat ein Benutzer beispielsweise die Möglichkeit zu verfolgen, wie sich die erste Anordnung in die zweite Anordnung ändert. Dies kann dem Benutzer die Orientierung in der zweiten Anordnung deutlich erleichtern, da er sich in der ersten Anordnung bereits orientiert hat und anhand des Übergangs verfolgen kann, welche Änderungen (z.B. Verschiebungen von Tastenkennungen) hin zur zweiten Anordnung stattfinden. In der 1 ist dies in den Schritten 112 und 113 dargestellt. Dies wird nachfolgend anhand eines vierten Ausführungsbeispiels des erfindungsgemäßen Verfahrens genauer erläutert.
  • Ein viertes Ausführungsbeispiel des erfindungsgemäßen Verfahrens, das zumindest die Merkmale des dritten Ausführungsbeispiels des erfindungsgemäßen Verfahrens umfasst, umfasst ferner das Anzeigen oder Bewirken des Anzeigens eines Übergangs von einer ersten der beiden unterschiedlichen Anordnungen zu einer zweiten der beiden unterschiedlichen Anordnungen, wobei die Anzeige des Übergangs es erlaubt, zumindest das Verschieben der Tastenkennungen entlang der Linie zu verfolgen (vgl. die Schritte 112 und 113 der 1). Der Übergang kann beispielsweise aus ein oder mehreren Zwischenbildern bestehen, die in jeweiligen Schritten darstellen, wie die Tastenkennungen entlang der Linie verschoben werden. Wenn eine Tastenkennung von einer Startposition in der ersten Anordnung von Tastenkennungen beispielsweise auf einer Kreisbahn um D Grad (z.B. D=40°) im Uhrzeigersinn verschoben wird, kann der Übergang beispielsweise mit N Zwischenbildern dargestellt werden, wobei in jedem Zwischenbilder die Tastenkennung gegenüber dem vorherigen Zwischenbild (oder im Falle des ersten Zwischenbildes: gegenüber der Darstellung der ersten Anordnung von Tastenkennungen) um D/(N+1) Grad (z.B. 40°/(N+1)) weiterverschoben ist. Die Zwischenbilder können beispielsweise von der gleichen Vorrichtung bestimmt werden, die die Anordnungen von Tastenkennungen bestimmt, und/oder die Anzeige der Zwischenbilder kann von der gleichen Vorrichtung durchgeführt oder bewirkt werden, die auch die Anzeige der Anordnungen von Tastenkennungen durchführt oder bewirkt. Die Zwischenbilder können einen entsprechenden Informationsgehalt aufweisen wie die Anordnungen von Tastenkennungen, wie oben ausführlich erläutert wurde, also beispielsweise auch Information über anzuzeigende Tasten aufweisen oder als grafische Repräsentation von Tastenkennungen (und gfs. Tasten) vorliegen.
  • Eine Dauer der Anzeige des Übergangs kann beispielsweise unabhängig von einer Entfernung, um die die Tastenkennungen der zweiten Anordnung gegenüber den Tastenkennungen der ersten Anordnung entlang der Linie verschoben worden sind, sein. Dadurch kann insbesondere vermieden werden, dass aus einer Beobachtung der Dauer des Übergangs und/oder aus einer Beobachtung, mit welcher Zeitdifferenz Tasten betätigt werden (da eine Taste beispielsweise erst nach Beendigung der Anzeige des Übergangs betätigt werden kann), auf die Entfernung geschlossen werden kann, um die die Tastenkennungen verschoben werden. Beispielsweise kann, z.B. durch eine externe Kamera eines Beobachters oder eine interne Kamera einer mit Schadsoftware infizierten Vorrichtung, auf der die Folge von Informationselementen eingegeben werden soll, ein jeweiliger Übergang zwischen zwei Anordnungen von Tastenkennungen gefilmt und aus diesem Film anhand von Bildverarbeitungsverfahren extrahiert werden, wie lange eine Bewegung in diesem Film stattgefunden hat Wenn eine Beziehung zwischen der Dauer des Übergangs und der Entfernung, um die die Tastenkennungen verschoben werden, bestünde, könnte aus der Dauer des Übergangs auf die Entfernung geschlossen werden und gfs. die Anordnung von Tastenkennungen bestimmt oder zumindest die Anzahl der möglichen Realisierungen eingeschränkt werden. Eine Unabhängigkeit der Entfernung von der Dauer der Anzeige kann beispielsweise dadurch erzielt werden, dass bei jedem Übergang die gleiche z.B. vorbestimmte Anzahl von Zwischenbildern erzeugt wird und jedes Zwischenbild für die gleiche Zeitdauer angezeigt wird. Bei einem Unterschied von 40° zwischen einer Position einer Tastenkennung in einer ersten Anordnung von Tastenkennungen zu der entsprechenden Position der Tastenkennung in der zweiten Anordnung von Tastenkennungen können beispielsweise zehn Zwischenbilder für jeweils 100 ms angezeigt werden, von denen jedes das Weiterverschieben der Tastenkennung um 40°/11=3,63° zeigt. Bei einem Unterschied von 200° zwischen einer Position einer Tastenkennung in einer zweiten Anordnung von Tastenkennungen zu der entsprechenden Position der Tastenkennung in einer dritten Anordnung von Tastenkennungen können dann beispielsweise wieder zehn Zwischenbilder für jeweils 50 ms angezeigt werden, von denen jedes das Weiterverschieben der Tastenkennung um 200°/11=18,18° zeigt. Alternativ kann beispielsweise vorgesehen sein, dass jeder Übergang eine variable Anzahl von Zwischenbildern umfassen kann, aber das Produkt der Anzahl von Zwischenbilder und der Anzeigedauer pro Zwischenbild konstant ist Dies kann insbesondere bei großen Entfernungen zu einer feineren (als kontinuierlicher empfundenen) Darstellung der Zwischenschritte führen.
  • Die 9a-9d zeigen schematisch die Anzeige einer ersten Anordnung von Tastenkennungen 9a (siehe 9a), einer zweiten Anordnung von Tastenkennungen 9b (siehe 9d) und von zwei Zwischenbildern (siehe 9b und 9c). In der ersten Anordnung von Tastenkennungen 9a ist lediglich die Ziffer „0“ mit einem Bezugszeichen versehen (Bezugszeichen 90). Die Tastenkennung 90 ist mit einer Taste 90` assoziiert Wie aus 9d ersichtlich, unterscheidet sich die Anordnung von Tastenkennungen 9b von der Anordnung von Tastenkennungen 9a dadurch, dass alle Tastenkennungen um 40° im Uhrzeigersinn um den Mittelpunkt der Anordnung von Tastenkennungen 9a rotiert wurden. Um dem Benutzer dies zu verdeutlichen und ihm in der Anordnung 9b das Auffinden von Tastenkennungen zu erleichtern, werden daher zusätzlich für eine vorbestimmte Zeit (hier beispielsweise jeweils 100 ms) die Zwischenbilder gemäß den 9b und 9c angezeigt. Im Zwischenbild der 9b ist ersichtlich, dass die Tastenkennung 90 (und auch alle anderen Tastenkennungen) um 13,3° gegenüber der Position der Tastenkennung 90 in der 9a weitergedreht wurde (ergibt die Anordnung 9a`), und im Zwischenbild der 9c ist ersichtlich, dass die Tastenkennung 90 (und auch alle anderen Tastenkennungen) nochmals um 13,3° gegenüber der Position der Tastenkennung 90 in der 9b weitergedreht wurde (ergibt die Anordnung 9a''). Die Position der Tastenkennung 90 in der zweiten Anordnung von Tastenkennungen 9b in 9d würde sich dann durch nochmaliges Weiterdrehen um 13,3° ergeben.
  • Bei dem vierten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann ferner vorgesehen sein, dass die Tastenkennungen während der Anzeige des Übergangs zusätzlich zu ihrer Verschiebung entlang der Linie einer oder mehreren Transformationen, insbesondere einer oder mehreren affinen Transformationen, unterworfen werden. Eine affine Transformation eines Vektors x (der Beispielsweise eine Position einer Tastenkennung in einer ersten Anordnung von Tastenkennungen beschreibt) zum Erhalt eines Vektors y (der beispielsweise die Position der Tastenkennung in einer zweiten Anordnung von Tastenkennungen beschreibt) kann beispielsweise durch die folgende Vorschrift beschrieben werden: y = A x + b ,
    Figure DE102014115109B4_0001
    wobei A eine Transformationsmatrix darstellt und b ebenfalls ein Vektor ist. Wenn A gleich der Einheitsmatrix ist, gibt b das Ausmaß einer translatorischen Verschiebung an.
  • Durch die affinen Transformationen wird das automatisierte Erkennen der Tastenkennungen während der Anzeige des Übergangs anhand von Screenshots oder Screenmovies (also Filmen, die den Übergang zeigen) zusätzlich erschwert Ein während des Übergangs gezeigtes Zwischenbild wird also beispielsweise nicht lediglich durch Verschieben von Tastenkennungen gegenüber der vorherigen Anordnung von Tastenkennungen oder dem vorherigen Zwischenbild erhalten, sondern zusätzlich durch Anwendung einer affinen Transformation auf die verschobene Tastenkennung. Die Tastenkennungen werden also beispielsweise in jedem Zwischenbild statisch angezeigt, aber durch die Anzeige ihrer Abfolge erscheinen diese beweglich. Die Verwendung von affinen Transformationen ist insbesondere deshalb vorteilhaft, da derartige affine Transformationen von handelsüblichen Grafikprozessoren effizient durchgeführt werden können, also insbesondere hardwarebeschleunigt
  • Bei dem vierten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann zusätzlich oder alternativ vorgesehen sein, dass die Tastenkennungen während der Anzeige des Übergangs zusätzlich zu ihrer Verschiebung entlang der Linie jeweils größenveränderlich und/oder bezüglich ihrer durch die Verschiebung bedingten Position beweglich dargestellt werden, insbesondere durch Wackeln, Zittern, Kippen und/oder Rotieren. Auch hier ergibt sich der Vorteil, dass eine automatische Erkennung von Tastenkennungen während der Anzeige des Übergangs erheblich erschwert wird. Die Tastenkennungen werden beispielsweise auch hier in jedem Zwischenbild statisch angezeigt, erscheinen aber durch die Anzeige ihrer Abfolge beweglich. Einige oder alle der Maßnahmen wie Größenänderung, Wackeln, Zittern, Kippen und/oder Rotieren können beispielsweise durch affine Transformationen realisiert und beispielsweise durch einen Grafikprozessor (also insbesondere hardwarebeschleunigt) ausgeführt werden.
  • Die 10a-10d zeigen ein aus dem Beispiel der 9a-9d abgeleitetes Beispiel, das sich nur hinsichtlich den Zwischenbildern der 10b und 10c von den Zwischenbildern der 9b und 9c unterscheidet. In den Zwischenbildern der 10b und 10c sind die Tastenkennungen zusätzlich zu ihrer Verschiebung entlang einer Kreislinie affinen Transformationen unterworfen, so dass sie bei aufeinanderfolgender Abfolge der Zwischenbilder der 10b und 10c als wackelnd erscheinen.
  • Bei dem ersten, zweiten, dritten und vierten Ausführungsbeispiel des erfindungsgemäßen Verfahrens kann ferner folgendes umfasst sein: die Überwachung, ob während der Ausführung des Verfahrens eine in einen Arbeitsspeicher der Vorrichtung, in der das Verfahren ausgeführt wird, einlaufende Datenmenge eine Datenrate aufweist, die einen vordefinierten Schwellwert überschreitet, und der Abbruch des Verfahrens und/oder das Ausgeben einer Sicherheitswarnung an den Benutzer, wenn die Überwachung ergibt, dass die Datenrate den vordefinierten Schwellwert überschreitet Dies ist in der 1 in den Schritten 108 und 114 dargestellt Dieser Maßnahme liegt die Erkenntnis zugrunde, dass ein - beispielsweise durch Schadsoftware auf einer Vorrichtung, auf der die Eingabe der Folge von Informationselementen erfolgen soll erzeugter - Screenmovie in den Arbeitsspeicher der Vorrichtung zumindest zwischengespeichert werden muss. Screenmovies können auf Android-Geräten (Version 4.4 KitKat) beispielsweise mit dem „screen recording utility“ erzeugt werden. Da ein derartiger Screenmovie mit einer nicht unerheblichen Datenrate in den Arbeitsspeicher geschrieben werden muss, ist es daher vorteilhaft, den Arbeitsspeicher diesbezüglich zu überwachen und bei Detektion des Auftretens einer Speicherung mit einer derartigen Datenrate eine Sicherheitswarnung an den Benutzer auszugeben (beispielsweise über die Anzeigeeinheit, auf der auch die Anordnungen von Tastenanordnungen dargestellt werden) und/oder die Eingabe der Folge von Informationselementen zu beenden. Nicht abschließende Beispiele für den vordefinierten Schwellwert der Datenrate sind 0.5, 1, 2, 4 oder 8 Mbit/s.
  • Bei dem ersten, zweiten, dritten und vierten Ausführungsbeispiel des erfindungsgemäßen Verfahrens ist beispielsweise vorgesehen, dass das Verfahren durch eine erste Software implementiert ist, die mit einem Hashwert versehen und/oder signiert ist und/oder aus nativ kompiliertem Maschinencode besteht.
  • Die Signatur der ersten Software kann beispielsweise ein unter Verwendung eines Schlüssels verschlüsselter Hashwert (z.B. ein Secure Hash Algorithm (SHA)-2, SHA-224, SHA-256, SHA-384, SHA-512 Hashwert) sein, der mit dem gleichen (im Falle eines symmetrischen Schlüssels) oder einem entsprechenden Schlüssel (im Falle der Verwendung eines asymmetrischen Schlüsselpaars) auf Integrität und Authentizität geprüft werden kann. Die Prüfung der Authentizität kann dabei beispielsweise auf einem Schlüssel beruhen, der (beispielsweise in Form eines Zertifikats) in eine zweite Software eingebettet ist und/oder den die zweite Software als vertrauenswürdig einstuft. Bei der zweiten Software handelt es sich beispielsweise um eine Software, die die Funktionalität der Eingabe einer Folge von Informationselementen benötigt und dazu die Funktionalität der ersten Software nutzt. Zusätzlich oder alternativ zu der Signatur kann die erste Software mit einem Hashwert (gebildet über die erste Software oder zumindest einen Teil davon) versehen sein, beispielsweise um die Integrität der ersten Software überprüfbar zu machen. Der Hashwert kann beispielsweise auch unverschlüsselt die Integrität der ersten Software sicherstellen, beispielsweise wenn seine Berechnungsvorschrift nur einer Entität, die die erste Software mit dem Hashwert versieht und Programmen, die den Hashwert überprüfen (wie beispielsweise die zweite Software), bekannt ist, und/oder wenn bei seiner Berechnung ein Geheimnis miteinbezogen wird, das nur der Entität, die die erste Software mit dem Hashwert versieht und Programmen, die den Hashwert überprüfen (wie z.B. die zweite Software), bekannt ist. Beispielsweise kann der Hashwert nach einem Standardverfahren (wie z.B. SHA-2, SHA-224, SHA-256, SHA-384, SHA-512) berechnet werden, aber der ersten Software vor der Bildung des Hashwerts darüber noch ein Geheimnis hinzugefügt worden sein.
  • Zusätzlich oder alternativ kann die zweite Software, die die Funktionalität benötigt, mit einem Hashwert (z.B. über die zweite Software oder einen Teil davon) versehen und/oder signiert sein. Dies kann es der ersten Software ermöglichen, die Integrität und ggfs. auch der Authentizität der zweiten Software zu ermöglichen. Die erste Software und/oder die zweite Software können jeweils als App ausgebildet sein, insbesondere als mobile App für Smartphones. Die erste Software und die zweite Software können beispielsweise autark von auf einer Vorrichtung, in der sie ausgeführt werden, installierten anderen Softwarekomponenten ihre Aufgaben erfüllen.
  • Die Prüfung der Signatur(en) (und/oder der Hashwerte) erlaubt es, eine potentielle Manipulation der ersten Software bzw. der zweiten Software zu erkennen und in einem solchen Fall das Verfahren zur Eingabe der Folge von Informationselementen nicht durchzuführen.
  • Die erste Software (und beispielsweise auch die zweite Software, die die Funktionalität der ersten Software nutzt) kann aus nativ kompiliertem Maschinencode bestehen, also beispielsweise in einer Programmiersprache wie C, C++ oder Objective-C geschrieben und dann für die Zielplattform der ersten Software in Maschinencode kompiliert worden sein. Dies schränkt die Manipulationsmöglichkeiten an der ersten Software ein und erschwert die Analyse der Funktionsweise der ersten Software. Eine Kompilierung durch einen Prozessor einer Vorrichtung, auf der das Verfahren ausgeführt wird, findet beispielsweise nicht statt. Der nativ kompilierte Maschinencode stellt beispielsweise eine angepasste Anwendung dar, die für eine jeweilige Plattform der Vorrichtung kompiliert wurde und auch nur für diese funktioniert Sie hat beispielsweise über APIs (Application Programming Interfaces, Programmierschnittstellen) und Bibliotheken direkten Zugriff auf die Hardware der Vorrichtung. Derartiger Maschinencode kann beispielsweise als App in plattformabhängigen Marktplätzen für Anwendungssoftware zur Verfügung gestellt werden und kann beispielsweise direkt aus dem Marktplatz geladen und auf der Vorrichtung installiert werden. Kompilierter Maschinencode hat den Vorteil, dass er direkt auf betriebssystemnahe APIs zugreifen kann. Im Gegensatz dazu werden interpretierte Hochsprachen (wie beispielsweise Java oder Objective-C) von einem Interpreter ausgeführt, der fest vorgegeben und in der Regel (insbesondere aus Sicht der ersten und zweiten Software) unveränderbar ist. Somit wird es einem Angreifer leichter gemacht, auf einer höheren Abstraktions-Ebene anzugreifen, wenn die Software nicht als kompilierter Maschinencode, sondern in einer Hochsprache vorliegt.
  • Sicherungsmaßnahmen (z.B. eine Härtung der Software oder von Komponenten davon, wie beispielsweise Komponenten zur Ver-/Entschlüsselung und/oder zur Prüfung der Authentizität von Komponenten, mit denen die Software kommuniziert) der ersten (und ggf. auch der zweiten) Software gegen Angriffe, die beispielsweise der Ausspähung der von dem Benutzer eingegebenen Folge von Informationselementen dienen, geschehen betriebssystemnah und müssen im jeweiligen Kontext direkt greifen, z.B. beim Öffnen eines Secure Socket Layer (SSL) Sockets, also eines Verbindungsendpunkts einer verschlüsselten Verbindung (z.B. nach Request for Comments (RFC) 5246). Wenn zwischen der eigentlichen Funktion des Betriebssystems und deren Aufruf aus der (Anwendungs-)Software (z.B. der ersten oder zweiten Software) ein oder mehrere Abstraktionsschichten liegen, die beispielsweise einem Anwendungsprogrammierer den Zugriff auf die Betriebssystemfunktionen erleichtern und die Systemprogrammierung abnehmen sollen, können diese Abstraktionsschichten Sicherheitsprobleme aufweisen und/oder leicht durch entsprechende APIs manipuliert werden, beispielsweise durch Maßnahmen wie „Code Injection“ oder „API Reflection“ (wobei beispielsweise bei Interpretern API Aufrufe einer Anwendung in vom eigentlichen Ziel abweichenden - insbesondere manipulierten - Code umgeleitet werden können). Derartige Manipulationen sind bei kompiliertem Maschinencode nicht möglich.
  • Bei dem ersten, zweiten, dritten und vierten Ausführungsbeispiel des erfindungsgemäßen Verfahrens ist beispielsweise vorgesehen, dass das Verfahren durch eine erste Software (beispielsweise die oben beschriebene erste Software) implementiert ist, wobei eine Funktionalität der ersten Software durch eine zweite Software (beispielsweise die zuvor beschriebene zweite Software) genutzt wird, und wobei eine Kommunikation der zweiten Software mit der ersten Software zumindest teilweise verschlüsselt erfolgt (z.B. anhand eins Sitzungsschlüssels, beispielsweise zur Sicherstellung der Vertraulichkeit und/oder Integrität der ausgetauschten Information). Im Rahmen der Kommunikation können sich die erste Software und die zweite Software beispielsweise gegenseitig authentisieren. Das Verfahren bzw. die erste Software kann also beispielsweise das Authentisieren der ersten Software gegenüber der zweiten Software und das Authentifizieren der zweiten Software umfassen. Eine erfolgreiche gegenseitige Authentisierung kann beispielsweise notwendige Voraussetzung für die weitere Kommunikation sein. Die Kommunikation der ersten Software und der zweiten Software kann beispielsweise über SSL Sockets erfolgen.
  • Für die Ver-/Entschlüsselung und/oder die (insbesondere gegenseitige) Authentisierung werden dabei beispielsweise keine Standard-Software-Komponenten eines Betriebssystems der Vorrichtung, auf der die zweite Software und die erste Software ausgeführt werden, verwendet, sondern die zweite Software und die erste Software setzen diesbezüglich eigene, insbesondere gehärtete Ver-/Entschlüsselungs- und/oder Authentisierungssoftware (beispielsweise in Form einer oder mehrerer Ver-/Entschlüsselungs- und/oder Authentisierungsbibliotheken) ein, die insbesondere in die erste Software und die zweite Software eingebunden sein kann/können (die jeweils in der ersten und zweiten Software eingebundenen Bibliotheksbestandteile müssen dabei nicht gleich sein, beispielsweise kann je nach erforderlicher Funktion die Bibliothek der ersten Software zumindest teilweise andere Bestandteile aufweisen als die Bibliothek der zweiten Software). Das Einbinden kann beispielsweise durch Kompilation oder Binden (Linken) geschehen. Wenn die erste und/oder zweite Software beispielsweise als nativ kompilierter Maschinencode vorliegt, kann die Ver/-Entschlüsselungs- und/oder Authentisierungssoftware jeweils darin enthalten sein. Insbesondere eine unter Nutzung der ersten Software durch den Benutzer eingegebene Folge von Informationselementen kann beispielsweise nur verschlüsselt und/oder nur nach erfolgreicher gegenseitiger Authentisierung von der ersten Software an die zweite Software übertragen werden.
  • Unter gehärteter Software wird hier beispielsweise Software verstanden, die insbesondere ausschließlich auf die geforderte Funktionalität (Ver-/Entschlüsselung und/oder Authentisierung) ausgerichtet ist. Beispielsweise können aus der Software alle Softwarebestandteile und Funktionen, die zur Erfüllung der vorgesehenen Aufgabe nicht zwingend notwendig sind, entfernt worden sein, um die Verwundbarkeit der Software zu reduzieren.
  • Es kann dann beispielsweise an den Betriebssystem-(Krypto-)-Programmierschnittstellen (APIs) keinerlei Klartext der eingegebenen Folge von Informationselementen (z.B. einer eingegebenen PIN) zu sehen sein. Somit ist die eingegebene Folge von Informationselementen nur innerhalb der jeweils mit der ersten Software und der zweiten Software verknüpften Prozesse im Klartext vorhanden und wird auch nicht dem Betriebssystem zur Ver-/Entschlüsselung über Programmierschnittstellen (z.B. Krypto-Programmierschnittstellen) übergeben. Die beteiligten Ver-/Entschlüsselungs- und/oder Authentisierungsfunktionen sind also beispielsweise jeweils Bestandteil der jeweiligen ersten/zweiten Software selbst und stehen damit insbesondere vollständig unter der Kontrolle der jeweiligen ersten/zweiten Software, werden also nicht etwa als API-Aufrufe in das Betriebssystem ausgelagert
  • Bei dem ersten, zweiten, dritten und vierten Ausführungsbeispiel des erfindungsgemäßen Verfahrens ist beispielsweise vorgesehen, dass das Verfahren in einem eigenen Betriebssystem-Prozess eines Betriebssystems einer Vorrichtung, ausgeführt wird. Beispielsweise kann vorgesehen sein, dass das Verfahren in einem eigenen Prozess abläuft, also beispielsweise als gesonderte App automatisch gestartet wird.
  • 2 zeigt ein Blockdiagramm eines Ausführungsbeispiels einer erfindungsgemäßen Vorrichtung 2. Bei der Vorrichtung 2 kann es sich beispielsweise um einen Computer (z.B. einen Desktop-, Laptop- oder Tablet-Computer), ein mobiles Telefon (insbesondere ein Smartphone), einen Geld- oder Warenausgabeautomaten oder eine Zugangskontrollvorrichtung (z.B. ein Schloss) handeln.
  • Die Vorrichtung 2 umfasst einen Prozessor 20, der optional einen Grafikprozessor 26 umfasst Der Prozessor 20 stellt ein Beispiel eines Mittels zur Ausführung des erfindungsgemäßen Verfahrens dar, für das oben Ausführungsbeispiele präsentiert wurden. Der Prozessor 20 kann auch alleine als Ausführungsbeispiel einer erfindungsgemäßen Vorrichtung angesehen werden.
  • Der Prozessor 20 interagiert mit einem Programmspeicher 21 und einem Arbeitsspeicher 22.
  • Der Prozessor 20 führt beispielsweise Programmanweisungen aus, die im Programmspeicher 21 gespeichert sind. Die Programmanweisungen führen beispielsweise ein oder mehrere der oben beschriebenen Ausführungsbeispiele des erfindungsgemäßen Verfahrens aus und/oder steuern diese. Die Programmanweisungen stellen damit Ausführungsbeispiele des erfindungsgemäßen Programms dar. Das Programm kann beispielsweise als App ausgebildet sein (beispielsweise auf einem Smartphone oder Tablet-Computer), oder als Anwendungsprogramm, z.B. auf einem Desktop- oder Laptop-Computer. Die App kann beispielsweise auf die Vorrichtung heruntergeladen worden sein, beispielsweise von einem öffentlichen AppStore oder von einem nur einem beschränkten Benutzerkreis - beispielsweise den Mitarbeitern eines Unternehmens - zugänglichen Server (beispielsweise einem „Enterprise-Store“). Der Programmspeicher 21 stellt damit ein Ausführungsbeispiel eines erfindungsgemäßen Speichermediums dar. Der Programmspeicher 21 kann beispielsweise ein persistenter Speicher, wie beispielsweise ein Read-Only-Memory (ROM)-Speicher sein. Er kann beispielsweise als Flash-Speicher ausgebildet sein. Der Programmspeicher kann beispielsweise fest mit dem Prozessor 20 verbunden sein, kann aber alternativ auch lösbar mit dem Prozessor 20 verbunden sein, beispielsweise als Speicherkarte, Diskette oder optisches Datenträgermedium (z.B. eine CD oder DVD). Der Programmspeicher 21 und das darin gespeicherte Programm können eingerichtet sein, um, mit dem Prozessor 20, die Vorrichtung 2 zumindest zu veranlassen, die oben beschriebenen Ausführungsbeispiele des erfindungsgemäßen Verfahrens auszuführen, wenn das Programm auf dem Prozessor 20 ausgeführt wird.
  • Der Arbeitsspeicher 22 wird beispielsweise zur Speicherung temporärer Ergebnisse während der Abarbeitung der Programmanweisungen genutzt, es handelt sich hierbei beispielsweise um einen flüchtigen Speicher, wie beispielsweise einen Random-Access-Memory (RAM)-Speicher.
  • Der Prozessor 20 interagiert ferner mit einer Kommunikationseinheit 23, die beispielsweise eine drahtgebundene und/oder drahtlose Kommunikation mit anderen Vorrichtungen ermöglicht, beispielsweise zur Übertragung einer Folge von Informationselementen, die gemäß den Ausführungsbeispielen des erfindungsgemäßen Verfahrens eingegeben wurden.
  • Der Prozessor 20 interagiert ferner mit einer Eingabeeinheit 24, über die beispielsweise Eingaben eines Benutzers empfangen werden können. Bei der Eingabeeinheit kann es sich beispielsweise um eine Tastatur oder ein Zeigegerät handeln. Die Eingabeeinheit kann insbesondere auch eine Positionserfassungseinheit einer berührungsempfindlichen Anzeigeeinheit sein, die Positionen, an denen eine Benutzer die berührungsempfindliche Anzeige mit einem Finger oder einem Stylus berührt (oder den Finger/Stylus annähert), erfasst.
  • Der Prozessor 20 interagiert ferner mit einer Ausgabeeinheit 25, über die Informationen an den Benutzer ausgegeben werden können. Zu den ausgegebenen Informationen zählen beispielsweise die in den 3a-3d, 4a-4b, 5a-5b, 6a-6b, 7a-7c, 8, 9a-9d, 10a-10d und 11a-11c angezeigten Informationen, also insbesondere Anordnungen von Tastenkennungen, Tasten, Übergänge zwischen Anordnungen von Tastenkennungen, etc. Im Falle einer berührungsempfindlichen Anzeigeeinheit umfasst die Ausgabeeinheit 25 beispielsweise die für die Anzeige von Information der berührungsempfindlichen Anzeige verantwortlichen Komponenten. Bei dem Bewirken der Anzeige von Informationen (beispielsweise der Anordnungen von Tastenkennungen) kann sich der Prozessor 20 der Funktionalität des Grafikprozessors 26 bedienen, wie oben bereits beschrieben wurde, so dass die Anzeige beispielsweise hardwarebeschleunigt erfolgen kann.
  • Der Prozessor 20 der Vorrichtung 2 kann beispielsweise als Kontrolleinheit, Mikroprozessor, Mikrokontrolleinheit wie z.B. ein Mikrocontroller, digitaler Signalprozessor (DSP), Anwendungsspezifischer Integrierter Schaltkreis (ASIC) oder Field Programmable Gate Array (FPGA) realisiert sein. Der Prozessor 20 kann ein oder mehrere Prozessorkerne umfassen. Er kann auch durch mehrere Prozessoren gebildet sein. Der Prozessor 20 kann als System-on-a-Chip-Prozessor ausgeführt sein. Beispielsweise können der Arbeitsspeicher und/oder die Kommunikationseinheit mit dem Prozessor 20 auf einem Chip integriert sein.
  • Der Prozessor 20 kann beispielsweise ein erstes Programm ausführen (z.B. eine App), dass die Anordnungen von Tastenanordnungen (und gfs. auch die Übergänge zwischen verschiedenen Anordnungen) bestimmt, deren Anzeige auf der Ausgabeeinheit 25 bewirkt, Informationen über Interaktionen des Benutzers von der Eingabeeinheit 24 erhält und bestimmt, welches Informationselement der Benutzer eingegeben hat. Das erste Programm kann beispielsweise einige oder alle der Schritte des Ablaufdiagramms 100 der 1 ausführen. Ein Beispiel eines solchen ersten Programms wurde in der obigen Beschreibung als erste Software bezeichnet. Das erste Programm kann beispielsweise als eigenständige Anwendung auf dem Prozessor 20 laufen und die sichere Eingabe einer Folge von Informationselementen, insbesondere von Authentisierungsinformation, erlauben. Diese Folge von Informationselementen kann beispielsweise von einem zweiten Programm (beispielsweise einer App), das ebenfalls auf dem Prozessor 20 läuft, benötigt werden, das dazu die Funktionalität des ersten Programms heranzieht. Bei dem zweiten Programm kann es sich beispielsweise um eine sicherheitsrelevante Anwendung oder eine Anwendung handeln, die die Nutzung eines sicherheitsrelevanten oder kostenpflichtigen Diensts ermöglicht, beispielsweise eine Online-Banking-Anwendung oder eine Anwendung, die die Freischaltung oder die Nutzung einer Vorrichtung (z.B. der Vorrichtung 2, z.B. eines Smartphones oder Computers) ermöglicht. Ein solches zweites Programm wurde in der obigen Beschreibung als zweite Software bezeichnet. Das erste und zweite Programm können beispielsweise wie beschrieben verschlüsselt miteinander kommunizieren und/oder sich einseitig oder gegenseitig anhand von Signaturen und/oder Hashwerten überprüfen.
  • Die beschriebene Funktionalität des ersten Programms und des zweiten Programms können alternativ auch in einem Programm (z.B. einer App oder einem Anwendungsprogramm) kombiniert sein. Es ist auch denkbar, dass die beschriebene Funktionalität des ersten Programms als Bibliothek in das zweite Programm eingebunden wird, beispielsweise als dynamische Bibliothek (Dynamic Link Library, DLL) oder als statisch gebundene („gelinkte“) Bibliothek.
  • Der Prozessor 20 kann beispielsweise auch ein Betriebssystem der Vorrichtung 2 ausführen.
  • Die Ausführungsbeispiele des erfindungsgemäßen Verfahrens können anstelle von nur einer Vorrichtung (wie es in der 2 der Fall ist), auch von einem System ausgeführt werden, das mehr als eine Vorrichtung umfasst. Die Vorrichtungen können dann beispielsweise über eine drahtgebundene oder drahtlose Verbindung kommunizieren, z.B. über einen Bus. Beispielsweise kann eine der Vorrichtung die Mittel zur Bestimmung der Anordnungen von Tastenkennungen umfassen, und eine andere der Vorrichtungen kann Mittel zur Anzeige der Anordnungen von Tastenkennungen umfassen.
  • 12 zeigt Ausführungsbeispiele erfindungsgemäßer Speichermedien, auf denen ein erfindungsgemäßes Programm jeweils gespeichert sein kann. Das Speichermedium kann beispielsweise ein magnetisches, elektrisches, optisches und/oder andersartiges Speichermedium sein. Das Speichermedium kann beispielsweise Teil eines Prozessors (z.B. des Prozessor 20 der 2) sein, beispielsweise ein (nicht-flüchtiger oder flüchtiger) Programmspeicher des Prozessors oder ein Teil davon (wie Programmspeicher 21 in 2). Ausführungsbeispiele eines erfindungsgemäßen Speichermediums sind eine Diskette 120, eine CD-ROM oder DVD 121, ein Memory Stick 122 (z.B. ein USB-Stick), oder eine Speicherkarte 123. Ein weiteres Ausführungsbeispiel eines erfindungsgemäßen Speichermediums ist ein Flash-Speicher.
  • Die in dieser Spezifikation beschriebenen Ausführungsbeispiele der vorliegenden Erfindung und die diesbezüglich jeweils angeführten optionalen Merkmale und Eigenschaften sollen auch in allen Kombinationen miteinander offenbart verstanden werden. Insbesondere soll auch die Beschreibung eines von einer Ausführungsform umfassten Merkmals - sofern nicht explizit gegenteilig erklärt - vorliegend nicht so verstanden werden, dass das Merkmal für die Funktion des Ausführungsbeispiels unerlässlich oder wesentlich ist Die Abfolge der in dieser Spezifikation geschilderten Verfahrensschritte in den einzelnen Ablaufdiagrammen ist nicht zwingend, alternative Abfolgen der Verfahrensschritte sind denkbar. Die Verfahrensschritte können auf verschiedene Art und Weise implementiert werden, so ist eine Implementierung in Software (durch Programmanweisungen), Hardware oder eine Kombination von beidem zur Implementierung der Verfahrensschritte denkbar. In den Patentansprüchen verwendete Begriffe wie „umfassen“, „aufweisen“, „beinhalten“, „enthalten“ und dergleichen schließen weitere Elemente oder Schritte nicht aus. Unter die Formulierung „zumindest teilweise“ fallen sowohl der Fall „teilweise“ als auch der Fall „vollständig“. Die Formulierung „und/oder“ soll dahingehend verstanden werden, dass sowohl die Alternative als auch die Kombination offenbart sein soll, also „A und/oder B“ bedeutet „(A) oder (B) oder (A und B)“. Die Verwendung des unbestimmten Artikels schließt eine Mehrzahl nicht aus. Eine einzelne Vorrichtung kann die Funktionen mehrerer in den Patentansprüchen genannten Einheiten bzw. Vorrichtungen ausführen. In den Patentansprüchen angegebene Bezugszeichen sind nicht als Beschränkungen der eingesetzten Mittel und Schritte anzusehen.

Claims (24)

  1. Verfahren, ausgeführt von zumindest einer Vorrichtung (2), umfassend die Schritte: - Bestimmen (101) einer Anordnung (3a, 3b, 3c, 3d, 4a, 4b, 5a, 5b, 6a, 6b, 7a, 7b, 8, 8a, 8b, 9a, 9b, 10c) von Tastenkennungen (12, 30, 31, 39, 40, 41, 49, 50, 51, 59, 70, 80, 90), die mit einer Gruppe von Tasten (12`, 30', 31', 39', 40', 41', 49', 50', 51', 59', 70', 81, 90') einer Eingabeschnittstelle, über die ein Benutzer eine Folge von Informationselementen eingeben kann, assoziiert sind oder durch die Anordnung assoziiert werden, wobei die Tastenkennungen festlegen, welche Informationselemente den Tasten der Gruppe von Tasten jeweils zugeordnet sind und eine Eingabe eines Informationselements der Folge von Informationselementen eine Betätigung der dem Informationselement zugeordneten Taste durch den Benutzer umfasst, - Anzeigen (102) oder Bewirken (102) des Anzeigens der Anordnung von Tastenkennungen, wobei zumindest zwei unterschiedliche Anordnungen von Tastenkennungen bestimmt werden (101, 111) und deren jeweilige Anzeige durchgeführt oder bewirkt wird, wobei die zwei unterschiedlichen Anordnungen die gleichen Tastenkennungen umfassen, wobei zumindest eine jeweilige Position einer Tastenkennung der Tastenkennungen in beiden Anordnungen unterschiedlich ist, aber für jede Tastenkennung der Tastenkennungen gilt, dass zumindest zwei ihrer direkten Nachbarn in der ersten Anordnung auch in der zweiten Anordnung zu ihren direkten Nachbarn gehören, und wobei eine erste der beiden unterschiedlichen Anordnungen von Tastenkennungen für die Eingabe eines Informationselements der Folge von Informationselementen und eine zweite der beiden unterschiedlichen Anordnungen von Tastenkennungen für die Eingabe eines weiteren Informationselements der Folge von Informationselementen bestimmt und deren jeweilige Anzeige durchgeführt oder bewirkt wird, das Verfahren ferner umfassend: - Ausblenden oder Unkenntlichmachen der Tastenkennungen oder Bewirken des Ausblendens oder des Unkenntlichmachens der Tastenkennungen, wenn eine Betätigung (104) einer Taste der Gruppe von Tasten erkannt wird und/oder wenn eine Annährung eines Fingers eines Benutzers oder eines von einem Benutzer gehaltenen Stylus an eine Taste der Gruppe von Tasten erkannt wird.
  2. Verfahren nach Anspruch 1, wobei für die Eingabe jedes Informationselements der Folge von Informationselementen eine jeweilige Anordnung von Tastenkennungen bestimmt und deren Anzeige durchgeführt oder bewirkt wird, und wobei für alle diese Anordnungen gilt, dass sich die für die Eingabe von zwei in der Folge von Informationselementen unmittelbar aufeinander folgenden Informationselementen bestimmten Anordnungen jeweils voneinander unterscheiden.
  3. Verfahren nach einem der Ansprüche 1-2, wobei bei den zumindest zwei unterschiedlichen Anordnungen von Tastenkennungen die Tastenkennungen jeweils entlang einer angezeigten oder nicht angezeigten Linie angeordnet sind, wobei die Tastenkennungen einer zweiten Anordnung der beiden Anordnungen gegenüber den Tastenkennungen einer ersten Anordnung der beiden Anordnungen zumindest entlang der Linie verschoben sind, wobei die Linie entweder geschlossen oder offen ist, und wobei im Fall der offenen Linie Tastenkennungen, die beim Verschieben über ein Ende der Linie hinausgelangen würden, am entgegengesetzten Ende der Linie eingefügt werden.
  4. Verfahren nach Anspruch 3, wobei die Linie zumindest einen Teil einer Begrenzungslinie eines angezeigten oder nicht angezeigten Objekts, insbesondere einer geometrischen Figur, darstellt.
  5. Verfahren nach einem der Ansprüche 3-4, wobei die zweite Anordnung aus der ersten Anordnung erhalten werden kann, indem die Tastenkennungen der ersten Anordnung entlang der Linie verschoben werden und zusätzlich die verschobenen Tastenkennungen einer oder mehreren der folgenden Maßnahmen unterzogen werden: - gleichmäßige oder ungleichmäßige Skalierung in mehreren Dimensionen, Verschiebung, Perspektiveänderung und/oder Verkippung eines zumindest die verschobenen Tastenkennungen enthaltenden Objekts, und/oder - gleichmäßige oder ungleichmäßige Skalierung in mehreren Dimensionen, Rotation, Verkippung und/oder Perspektiveänderung ein oder mehrerer der verschobenen Tastenkennungen jeweils für sich.
  6. Verfahren nach einem der Ansprüche 3-5, wobei eine Entfernung, um die die Tastenkennungen der zweiten Anordnung gegenüber den Tastenkennungen der ersten Anordnung entlang der Linie verschoben worden sind, von einer Zufallszahl abhängt
  7. Verfahren nach einem der Ansprüche 1-6, ferner umfassend: - Anzeigen (113) oder Bewirken (113) des Anzeigens eines Übergangs von einer ersten der beiden unterschiedlichen Anordnungen zu einer zweiten der beiden unterschiedlichen Anordnungen.
  8. Verfahren nach einem der Ansprüche 3-6, ferner umfassend: - Anzeigen oder Bewirken des Anzeigens eines Übergangs von einer ersten der beiden unterschiedlichen Anordnungen zu einer zweiten der beiden unterschiedlichen Anordnungen, wobei die Anzeige des Übergangs es erlaubt, zumindest das Verschieben der Tastenkennungen entlang der Linie zu verfolgen.
  9. Verfahren nach Anspruch 8, wobei eine Dauer der Anzeige des Übergangs unabhängig von einer Entfernung, um die die Tastenkennungen der zweiten Anordnung gegenüber den Tastenkennungen der ersten Anordnung entlang der Linie verschoben worden sind, ist.
  10. Verfahren nach einem der Ansprüche 8-9, wobei die Tastenkennungen während der Anzeige des Übergangs zusätzlich zu ihrer Verschiebung entlang der Linie einer oder mehreren Transformationen, insbesondere einer oder mehreren affinen Transformationen, unterworfen werden.
  11. Verfahren nach einem der Ansprüche 8-10, wobei die Tastenkennungen während der Anzeige des Übergangs zusätzlich zu ihrer Verschiebung entlang der Linie jeweils grö-ßenveränderlich und/oder bezüglich ihrer durch die Verschiebung bedingten Position beweglich dargestellt werden, insbesondere durch Wackeln, Zittern, Kippen und/oder Rotieren.
  12. Verfahren nach einem der Ansprüche 1-11, ferner umfassend: - Anzeigen oder Bewirken des Anzeigens der Tasten der Gruppe von Tasten.
  13. Verfahren nach einem der Ansprüche 1-12, wobei das Anzeigen der Tastenkennungen und/oder ein Anzeigen der Tasten der Gruppe von Tasten rein graphisch, insbesondere anhand der Programmierschnittstelle OpenGL oder anhand der Programmierschnittstelle DirectX, durch einem Graphikprozessor einer Vorrichtung, in der das Verfahren ausgeführt wird, erfolgt und insbesondere keine nativen, für die Anzeige von Schaltflächen vorgesehenen Steuerelemente eines Betriebssystems der Vorrichtung verwendet werden.
  14. Verfahren nach einem der Ansprüche 12-13, wobei bei Betätigung einer Taste der Gruppe von Tasten keine hinsichtlich der betätigten Taste individuelle graphische Rückmeldung oder Bestätigung erfolgt
  15. Verfahren nach einem der Ansprüche 12-14, ferner umfassend: - Anzeigen (105) oder Bewirken (105) einer Anzeige einer Bestätigung für eine erfasste Betätigung einer Taste durch den Benutzer, wobei die Bestätigung durch zeitlich begrenzte Veränderung des Aussehens aller Tasten der Gruppe von Tasten und/oder durch zeitlich begrenzte Veränderung des Aussehens aller den Tasten der Gruppe von Tasten zugeordneten Tastenkennungen und/oder durch zeitlich begrenzte Veränderung des Aussehens zumindest eines Teils eines angezeigten Hintergrunds angezeigt wird.
  16. Verfahren nach einem der Ansprüche 1-15, wobei ein oder mehrere der Tastenkennungen und/oder ein oder mehrere der Tasten der Gruppe von Tasten, falls diese angezeigt werden, und/oder ein oder mehrere Teile eines angezeigten Hintergrunds jeweils mit konstanten oder sich zeitlich verändernden Helligkeits-, Farb- und/oder Texturunterschieden angezeigt werden.
  17. Verfahren nach einem der Ansprüche 1-16, ferner umfassend: - Erfassen (103) einer Interaktion des Benutzers mit der Eingabeschnittstelle, oder Erhalten einer Information über eine Interaktion des Benutzers mit der Eingabeschnittstelle, - Bestimmen, zumindest anhand der erhaltenen Information, welche Taste der Gruppe von Tasten der Eingabeschnittstelle der Benutzer im Rahmen der Interaktion betätigt hat, - Bestimmen (106) des durch den Benutzer eingegebenen Informationselements anhand der mit der betätigten Taste assoziierten Tastenkennung
  18. Verfahren nach einem der Ansprüche 1-17, wobei das Verfahren durch eine Software implementiert ist, die mit einem Hashwert versehen und/oder signiert ist und/oder aus nativ kompiliertem Maschinencode besteht.
  19. Verfahren nach einem der Ansprüche 1-18, wobei das Verfahren durch eine erste Software implementiert ist, wobei eine Funktionalität der ersten Software durch eine zweite Software genutzt wird, und wobei eine Kommunikation der zweiten Software mit der ersten Software zumindest teilweise verschlüsselt erfolgt
  20. Verfahren nach einem der Ansprüche 1-19, ferner umfassend: - Überwachung (108), ob während der Ausführung des Verfahrens eine in einen Arbeitsspeicher (22) der Vorrichtung (2), in der das Verfahren ausgeführt wird, einlaufende Datenmenge eine Datenrate aufweist, die einen vordefinierten Schwellwert überschreitet, und - Abbruch des Verfahrens und/oder Ausgeben (114) einer Sicherheitswarnung an den Benutzer, wenn die Überwachung ergibt, dass die Datenrate den vordefinierten Schwellwert überschreitet
  21. Verfahren nach einem der Ansprüche 1-20, wobei die Folge von Informationselementen zumindest einen Teil einer Authentisierungsinformation darstellt, zur Freischaltung einer Authentisierungsinformation erforderlich ist oder bei der Bestimmung einer Authentisierungsinformation genutzt wird.
  22. Vorrichtung (2), eingerichtet zur Ausführung oder umfassend Mittel zur Ausführung des Verfahrens nach einem der Ansprüche 1-21.
  23. System, umfassend: - eine oder mehrere Vorrichtungen eingerichtet zur Ausführung oder umfassend Mittel zur Ausführung des Verfahrens nach einem der Ansprüche 1-21.
  24. Programm, umfassend: - Programmanweisungen, um das Verfahren nach einem der Ansprüche 1-21 auszuführen, wenn das Programm auf einem Prozessor (20) ausgeführt wird.
DE102014115109.7A 2014-10-17 2014-10-17 Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen Active DE102014115109B4 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102014115109.7A DE102014115109B4 (de) 2014-10-17 2014-10-17 Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102014115109.7A DE102014115109B4 (de) 2014-10-17 2014-10-17 Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen

Publications (2)

Publication Number Publication Date
DE102014115109A1 DE102014115109A1 (de) 2016-04-21
DE102014115109B4 true DE102014115109B4 (de) 2023-09-14

Family

ID=55637713

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014115109.7A Active DE102014115109B4 (de) 2014-10-17 2014-10-17 Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen

Country Status (1)

Country Link
DE (1) DE102014115109B4 (de)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549194B1 (en) 1999-10-01 2003-04-15 Hewlett-Packard Development Company, L.P. Method for secure pin entry on touch screen display
JP2003330888A (ja) 2002-05-10 2003-11-21 Oki Electric Ind Co Ltd 暗証入力装置及び暗証入力方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6549194B1 (en) 1999-10-01 2003-04-15 Hewlett-Packard Development Company, L.P. Method for secure pin entry on touch screen display
JP2003330888A (ja) 2002-05-10 2003-11-21 Oki Electric Ind Co Ltd 暗証入力装置及び暗証入力方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CAPTCHA. In: Wikipedia, the free encyclopedia. Bearbeitungsstand: 15.10.2014. URL: https://en.wikipedia.org/w/index.php?title=CAPTCHA&oldid=629715942 [abgerufen am 15.02.2023]
Password. In: Wikipedia, the free encyclopedia. Bearbeitungsstand: 20.09.2014. URL: https://en.wikipedia.org/w/index.php?title=Password&oldid=626341309 [abgerufen am 15.02.2023]
Side-channel attack. In: Wikipedia, the free encyclopedia. Bearbeitungsstand: 15.10.2014. URL: https://en.wikipedia.org/w/index.php?title=Side-channel_attack&oldid=629735882 [abgerufen am 16.02.2023]

Also Published As

Publication number Publication date
DE102014115109A1 (de) 2016-04-21

Similar Documents

Publication Publication Date Title
DE602004003478T2 (de) Virtuelle tastatur
EP2786280A1 (de) Sichere autorisierung
DE102015112910A1 (de) Sichere Handschrifteingabe in Passwortfelder
WO2015132596A1 (en) Access control for a resource
CN113486377A (zh) 图像加密方法、装置、电子设备和可读存储介质
Bilgi et al. A shoulder-surfing resistant graphical authentication method
DE102014115109B4 (de) Sichere Eingabe einer Folge von Informationselementen durch unterschiedliche Anordnungen von Tastenkennungen
Kawamura et al. Eyedi: Graphical authentication scheme of estimating your encodable distorted images to prevent screenshot attacks
DE102015208665A1 (de) Verfahren und System zum Implementieren eines sicheren Sperrbildschirms
DE102012214130B4 (de) Verfahren zur Bereitstellung eines Tastenfelds auf einem Touchscreen
US20200184052A1 (en) System and method for user recognition based on cognitive interactions
DE112016002436T5 (de) Steuern des Zugriffs auf Ressourcenfunktionen an einem Steuerpunkt der Ressource über ein Benutzergerät
CZ309308B6 (cs) Způsob zadávání tajné informace do elektronických digitálních zařízení
DE102013102092B4 (de) Verfahren und Vorrichtung zum Authentifizieren von Personen
Tiller et al. Graphical authentication schemes: balancing amount of image distortion
Wolf et al. Perceptions of mobile device authentication mechanisms by individuals who are blind
CN110364237B (zh) 一种电子处方防篡改方法及装置
DE102005053848B4 (de) Verfahren zur bildbasierten Authentifizierung von Online-Transaktionen
Cherdmuangpak et al. Two factor image-based password authentication for junior high school students
EP2866486B1 (de) Verfahren zur Erzeugung einer elektronischen Signatur
CN111797383A (zh) 密码验证方法、装置及电子设备
EP3306516A1 (de) Eingabevorrichtung und -verfahren
WO2018011437A1 (de) Automatisierte authentifizierung und identifizierung eines benutzers einer datenverarbeitungsanlage mit hilfe dynamischer tippbiometrischer erkennungsmerkmale
Sugumar et al. Cursor masquerade: Masking of authentic cursor using random numeric keypad and spurious cursors
Biswas et al. Comparative study of graphical user authentication approaches

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R016 Response to examination communication
R081 Change of applicant/patentee

Owner name: KOBIL GMBH, DE

Free format text: FORMER OWNER: KOBIL SYSTEMS GMBH, 67547 WORMS, DE

R082 Change of representative

Representative=s name: COHAUSZ & FLORACK PATENT- UND RECHTSANWAELTE P, DE

R016 Response to examination communication
R018 Grant decision by examination section/examining division