DE102021123288A1 - Regelbasiertes filtern zum sichern von kennwortanmeldungen - Google Patents

Regelbasiertes filtern zum sichern von kennwortanmeldungen Download PDF

Info

Publication number
DE102021123288A1
DE102021123288A1 DE102021123288.0A DE102021123288A DE102021123288A1 DE 102021123288 A1 DE102021123288 A1 DE 102021123288A1 DE 102021123288 A DE102021123288 A DE 102021123288A DE 102021123288 A1 DE102021123288 A1 DE 102021123288A1
Authority
DE
Germany
Prior art keywords
password
computer
filtered
filtering
user
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.)
Pending
Application number
DE102021123288.0A
Other languages
English (en)
Inventor
Nir Rozenbaum
Nili Guy
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE102021123288A1 publication Critical patent/DE102021123288A1/de
Pending legal-status Critical Current

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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • 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/45Structures or tools for the administration of authentication
    • G06F21/46Structures or tools for the administration of authentication by designing passwords or checking the strength of passwords
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24564Applying rules; Deductive queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • G06F16/90344Query processing by using string matching techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

In einem Lösungsansatz für ein regelbasiertes Filtersystem zum Sichern von Kennwortanmeldungen empfängt ein Prozessor ein auf einer Nutzereinheit eingegebenes Kennwort. Ein Prozessor ermittelt, ob das Kennwort gefiltert werden muss. Als Reaktion auf ein Feststellen, dass das Kennwort gefiltert werden muss, filtert ein Prozessor auf der Grundlage eines Satzes von Filterregeln Zeichen aus dem Kennwort, um ein gefiltertes Kennwort zu erzeugen. Ein Prozessor ermittelt, ob das gefilterte Kennwort mit einem gespeicherten Kennwort übereinstimmt.

Description

  • HINTERGRUND DER ERFINDUNG
  • Die vorliegende Erfindung betrifft allgemein das Gebiet der Authentifizierung mittels Kennwort und insbesondere ein regelbasiertes Filtern zum Sichern von Kennwortanmeldungen.
  • Wenn es um ein Schützen von Informationen geht, sind Kennwörter die am häufigsten verwendete Form einer Authentifizierung für Websites und Anwendungen gleichermaßen. Bei der Registrierung erstellen die Nutzer eine eindeutige Kennung (ID) und einen Schlüssel (in der Regel einen Nutzernamen und ein Kennwort), die dann sicher lokal auf dem Gerät, z.B. einem Mobiltelefon, oder auf dem Server der Website gespeichert werden. Im Idealfall ist der Nutzer die einzige Person, die sein Kennwort kennt, so dass er der Einzige ist, der auf das Konto zugreifen kann. Wenn der Nutzer seine Anmeldedaten erneut eingibt, werden sie mit den gespeicherten Daten verglichen, und wenn sie übereinstimmen, wird der Nutzer bestätigt.
  • KURZDARSTELLUNG
  • Aspekte einer Ausführungsform der vorliegenden Erfindung offenbaren ein Verfahren, ein Computerprogrammprodukt und ein Computersystem zum regelbasierten Filtern zum Sichern von Kennwortanmeldungen. Ein Prozessor empfängt ein auf einer Nutzereinheit eingegebenes Kennwort. Ein Prozessor ermittelt, ob das Kennwort gefiltert werden muss. Als Reaktion auf ein Feststellen, dass das Kennwort gefiltert werden muss, filtert ein Prozessor auf der Grundlage eines Satzes von Filterregeln Zeichen aus dem Kennwort, um ein gefiltertes Kennwort zu erstellen. Ein Prozessor ermittelt, ob das gefilterte Kennwort mit einem gespeicherten Kennwort übereinstimmt.
  • Unter einigen Aspekten einer Ausführungsform der vorliegenden Erfindung ermittelt ein Prozessor, ob das Kennwort gefiltert werden muss, indem er eine Anzahl von Zeichen in dem Kennwort zählt; die Anzahl von Zeichen in dem Kennwort mit einer zweiten Anzahl von Zeichen in dem gespeicherten Kennwort vergleicht; und als Reaktion auf ein Feststellen, dass das Kennwort mehr Zeichen als das gespeicherte Kennwort hat, festlegt, dass das Kennwort gefiltert werden muss.
  • Unter einigen Aspekten einer Ausführungsform der vorliegenden Erfindung umfasst der Satz von Filterregeln mindestens eine Regel in Form eines regulären Ausdrucks.
  • Unter einigen Aspekten einer Ausführungsform der vorliegenden Erfindung ermöglicht ein Prozessor als Reaktion auf ein Feststellen, dass das gefilterte Kennwort mit dem gespeicherten Kennwort übereinstimmt, einem Nutzer der Nutzereinheit, sich anzumelden.
  • Unter einigen Aspekten einer Ausführungsform der vorliegenden Erfindung fordert ein Prozessor als Reaktion darauf, dass ein Nutzer der Nutzereinheit dem regelbasierten Filtersystem zustimmt, den Nutzer auf, den Satz von Filterregeln einzugeben.
  • Unter einigen Aspekten einer Ausführungsform der vorliegenden Erfindung handelt es sich bei einer Regel des Satzes von Filterregeln um einen regulären Ausdruck, der ein bestimmtes Zeichen definiert, das aus dem Kennwort herausgefiltert werden soll.
  • Unter einigen Aspekten einer Ausführungsform der vorliegenden Erfindung handelt es sich bei einer Regel des Satzes von Filterregeln um einen regulären Ausdruck, der eine mathematische Regel definiert, die besagt, dass ein sequenzieller Satz von Zeichen aus dem Kennwort herausgefiltert wird, wenn die Summe des sequenziellen Satzes von Zeichen eine vordefinierte Summe ergibt.
  • Figurenliste
    • 1 ist ein funktionelles Blockschaltbild, das eine verteilte Datenverarbeitungsumgebung gemäß einer Ausführungsform der vorliegenden Erfindung veranschaulicht;
    • 2 ist ein Ablaufplan, der Prozessschritte einer Konfigurationskomponente eines Programms zum Filtern von Kennwörtern darstellt, um einen Satz von Filterregeln für das Programm zum Filtern von Kennwörtern gemäß einer Ausführungsform der vorliegenden Erfindung zu konfigurieren;
    • 3 ist ein Ablaufplan, der Prozessschritte einer Anmeldekomponente des Programms zum Filtern von Kennwörtern darstellt, um ein regelbasiertes Filtern zum Sichern von Kennwortanmeldungen gemäß einer Ausführungsform der vorliegenden Erfindung auszuführen; und
    • 4 zeigt ein Blockschaltbild von Komponenten einer Datenverarbeitungseinheit der verteilten Datenverarbeitungsumgebung von 1 gemäß einer Ausführungsform der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der vorliegenden Erfindung erkennen, dass viele Menschen sich in verschiedenen Situationen unter Verwenden eines Kennworts authentifizieren müssen, z B. beim Entsperren eines Telefons, einer Tür, eines Laptops, einer Anwendung auf einem Smartphone, beim Nutzen eines Geldautomaten usw. Eine Kennwortauthentifizierung gilt als eine der schwächeren Verfahren zur Authentifizierung, wobei Angriffe durch Schulter-Surfen eines der vielen bekannten Probleme darstellen. Zu einem Schulter-Surf-Angriff kann es kommen, wenn eine Kennwortanmeldung an einem öffentlichen Ort erfolgt und eine fremde Person dem Nutzer buchstäblich über die Schulter schaut, um das Kennwort des Nutzers zu erlangen und sich Zugang zu dessen vertraulichen Daten zu verschaffen. Da die meisten Nutzer kurze und einfache Kennwörter verwenden, kann sich die fremde Person das Kennwort leicht merken. Es ist allgemein bekannt, dass ein Kennwort umso stärker ist, je länger es ist. Genauer gesagt, je länger das Kennwort ist, desto schwieriger ist es, das Kennwort zu reproduzieren, selbst wenn eine fremde Person einen Nutzer beim Eingeben seines Kennworts beobachtet.
  • Ausführungsformen der vorliegenden Erfindung erkennen die Notwendigkeit, dieses allgemeine Wissen zu nutzen, gehen aber mit zusätzlichen Parametern einen Schritt weiter, um das Risiko zu verringern, dass sich eine fremde Person nach dem Schulter-Surfen an das Kennwort eines Nutzers erinnern kann, und erhöhen so die Sicherheit einer Kennwortauthentifizierung im Allgemeinen. Ausführungsformen der vorliegenden Erfindung stellen einen regelbasierten Filtermechanismus bereit, der es ermöglicht, beim Eingeben eines Kennworts durch einen Nutzer Pseudozeichen hinzuzufügen, die beim Authentifizierungsprozess nicht berücksichtigt werden. Auf der Grundlage von Konfigurationsregeln könnte der Nutzer so viele Pseudozeichen hinzufügen, wie er möchte, und so das eigentliche Kennwort verbergen. Ausführungsformen der vorliegenden Erfindung stellen ein Programm bereit, das auf der Grundlage von vorkonfigurierten Filterregeln Pseudozeichen aus einem empfangenen Kennwort herausfiltert.
  • Wie hier verwendet, bezieht sich der Begriff „echtes Kennwort“ auf das Kennwort, das der Nutzer beim Einrichten in verschiedenen Situationen als sein Kennwort festgelegt hat, z.B. Einrichten eines Kennworts zum Entsperren eines Smartphones, einer Smart-Door-Tastaturkombination, eines Kennworts zum Entsperren eines Laptops, eines Kennworts für eine Anwendung auf einem Smartphone, eines Geldautomaten-Pins usw. Der hier verwendete Begriff „Pseudo-Kennwort“ bezieht sich auf das vom Nutzer während der Anmeldekomponente eingegebene Kennwort, wobei das Pseudo-Kennwort „Pseudo“-Zeichen umfasst, die in das eigentliche Kennwort gemischt sind und nur als Ersatz dienen, um etwaige Schulter-Surfer abzuschrecken. Wie hier verwendet, bezieht sich der Begriff „gefiltertes Kennwort“ auf das Kennwort, nachdem ein Programm zum Filtern von Kennwörtern einen Satz von Filterregeln auf das vom Nutzer während einer Anmeldekomponente eingegebene Kennwort angewandt hat, bei dem Zeichen aus dem ursprünglich während des Anmeldens eingegebenen Kennworts entfernt wurden, um ein gefiltertes Kennwort zu hinterlassen, das mit dem echten Kennwort verglichen werden kann und ein Anmelden ermöglicht.
  • Eine Implementierung von Ausführungsformen der Erfindung kann vielfältige Formen annehmen, und beispielhafte Implementierungsdetails werden nachfolgend unter Bezugnahme auf die Figuren erläutert.
  • 1 ist ein funktionelles Blockschaltbild, das eine verteilte Datenverarbeitungsumgebung, allgemein als 100 bezeichnet, gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. Wie hier verwendet, beschreibt der Begriff „verteilt“ ein Computersystem, das mehrere physisch getrennte Einheiten umfasst, die zusammen als ein einziges Computersystem arbeiten. 1 stellt nur eine Veranschaulichung einer Ausführungsform dar und deutet keine Einschränkungen in Bezug auf die Umgebungen an, in denen verschiedene Ausführungsformen implementiert werden können. Von Fachleuten können viele Modifikationen an der gezeigten Umgebung vorgenommen werden, ohne vom Schutzumfang der Erfindung, wie er in den Ansprüchen angegeben ist, abzuweichen.
  • Die verteilte Datenverarbeitungsumgebung 100 umfasst einen Server 110 und eine Nutzer-Datenverarbeitungseinheit 120, die über ein Netzwerk 105 miteinander verbunden sind. In einigen Ausführungsformen (nicht gezeigt) werden die Komponenten des Servers 110 und der Nutzer-Datenverarbeitungseinheit 120 auf dem gleichen Gerät ausgeführt, so dass es in diesen Ausführungsformen z.B. nur eine Nutzer-Datenverarbeitungseinheit 120 gibt. Beim Netzwerk 105 kann es sich beispielsweise um ein Telekommunikationsnetz, ein lokales Netz (LAN), ein Weitverkehrsnetz (WAN) wie etwa das Internet oder eine Kombination der drei handeln, und es kann drahtgebundene, drahtlose oder Lichtwellenleiterverbindungen umfassen. Das Netzwerk 105 kann ein oder mehrere drahtgebundene und/oder drahtlose Netzwerke umfassen, die in der Lage sind, Daten, Sprache und/oder Videosignale zu empfangen und zu übertragen, darunter Multimediasignale, die Sprach-, Daten- und Videoinformationen umfassen. Im Allgemeinen kann es sich beim Netzwerk 105 um eine beliebige Kombination von Verbindungen und Protokollen handeln, die Datenübertragungsvorgänge zwischen dem Server 110, der Nutzer-Datenverarbeitungseinheit 120 und anderen Datenverarbeitungseinheiten (nicht gezeigt) innerhalb der verteilten Datenverarbeitungsumgebung 100 unterstützen.
  • Beim Server 110 kann es sich um eine eigenständige Datenverarbeitungseinheit, einen Verwaltungs-Server, einen Web-Server, eine mobile Datenverarbeitungseinheit oder eine andere elektronische Einheit oder ein Computersystem handeln, das Daten empfangen, übertragen und verarbeiten kann. In anderen Ausführungsformen kann der Server 110 ein Server-Datenverarbeitungssystem darstellen, das mehrere Computer als ein Server-System nutzt, beispielsweise in einer Cloud-Computing-Umgebung. In einer anderen Ausführungsform kann es sich beim Server 110 um einen Laptop-Computer, einen Tablet-Computer, einen Netbook-Computer, einen Personal Computer (PC), einen Tischcomputer, einen Personal Digital Assistant (PDA), ein Smart Phone oder eine beliebige programmierbare elektronische Einheit handeln, die in der Lage ist, mit der Nutzer-Datenverarbeitungseinheit 120 und anderen Datenverarbeitungseinheiten (nicht gezeigt) innerhalb der verteilten Datenverarbeitungsumgebung 100 über das Netzwerk 105 Daten auszutauschen. In einer anderen Ausführungsform stellt der Server 110 ein Datenverarbeitungssystem dar, das Cluster-Computer und -Komponenten verwendet (z.B. Datenbankserver-Computer, Anwendungsserver-Computer usw.), die als ein einziger Pool nahtloser Ressourcen fungieren, wenn innerhalb der verteilten Datenverarbeitungsumgebung 100 auf sie zugegriffen wird. Der Server 110 umfasst ein Programm 112 zum Filtern von Kennwörtern und eine Datenbank 114. Der Server 110 kann interne und externe Hardware-Komponenten umfassen, wie in Bezug auf 4 dargestellt und näher beschrieben wird.
  • Das Programm 112 zum Filtern von Kennwörtern führt ein regelbasiertes Filtern zum Sichern von Kennwortanmeldungen aus. In der dargestellten Ausführungsform ist das Programm 112 zum Filtern von Kennwörtern ein eigenständiges Programm. In einer anderen Ausführungsform kann das Programm 112 zum Filtern von Kennwörtern in ein anderes Softwareprodukt integriert werden, beispielsweise in eine Einrichtung zur Kennwortauthentifizierung. In einer Ausführungsform stimmen die Nutzer einem Verwenden des Programms 112 zum Filtern von Kennwörtern zu und führen eine Konfigurationskomponente mit dem Programm 112 zum Filtern von Kennwörtern aus, um einen Satz von Filterregeln einzurichten und/oder ein echtes Kennwort festzulegen. Die Konfigurationskomponente des Programms 112 zum Filtern von Kennwörtern ist unter Bezugnahme auf 2 dargestellt und näher beschrieben. Die Hauptanmeldekomponente des Programm 112 zum Filtern von Kennwörtern, die ein regelbasiertes Filtern auf der Grundlage des Satzes von Filterregeln ausführt, die während der Konfigurationsfunktion zum Sichern von Kennwortanmeldungen festgelegt wurden, ist unter Bezugnahme auf 3 dargestellt und näher beschrieben.
  • Die Datenbank 114 dient als Speicher für Daten, die vom Programm 112 zum Filtern von Kennwörtern empfangen, verwendet und/oder ausgegeben werden. Zu den empfangenen, verwendeten und/oder erzeugten Daten können gehören, jedoch ohne darauf beschränkt zu sein: von einem Nutzer gespeicherte echte Kennwörter; von einem Nutzer eingegebene Pseudo-Kennwörter; ein Satz von Filterregeln, die während der Anmeldefunktion anzuwenden sind; gefilterte Kennwörter, die erzeugt werden, nachdem ein Satz von Filterregeln auf das Pseudo-Kennwort angewandt wurde; und alle anderen Daten, die vom Programm 112 zum Filtern von Kennwörtern empfangen, verwendet und/oder ausgegeben werden. Die Datenbank 114 kann mit jeder Art von Speichereinheit implementiert werden, die in der Lage ist, Daten und Konfigurationsdateien zu speichern, auf die der Server 110 zugreifen und die er nutzen kann, beispielsweise mit einem Festplattenlaufwerk, einem Datenbankserver oder einem Flash-Speicher. In einer Ausführungsform wird durch das Programm 112 zum Filtern von Kennwörtern auf die Datenbank 114 zugegriffen, um die Daten zu speichern und/oder auf sie zuzugreifen. In der dargestellten Ausführungsform befindet sich die Datenbank 114 auf dem Server 110. In einer anderen Ausführungsform kann sich die Datenbank 114 auf einer anderen Datenverarbeitungseinheit, einem Server oder einem Cloud-Server befinden oder über mehrere Einheiten an anderer Stelle (nicht gezeigt) innerhalb der verteilten Datenverarbeitungsumgebung 100 verteilt sein, vorausgesetzt, das Programm 112 zum Filtern von Kennwörtern hat Zugriff auf die Datenbank 114.
  • Die vorliegende Erfindung kann verschiedene Datenquellen enthalten, auf die zugegriffen werden kann, beispielsweise die Datenbank 114, die persönliche und/oder vertrauliche Unternehmensdaten, Inhalte oder Informationen enthalten kann, deren Verarbeiten der Nutzer nicht wünscht. Ein Verarbeiten bezieht sich auf jeden automatisierten oder nichtautomatisierten Vorgang oder eine Reihe von Vorgängen wie etwa Sammeln, Aufzeichnen, Organisieren, Strukturieren, Speichern, Anpassen, Ändern, Abrufen, Abfragen, Verwenden, Offenlegen durch Übertragen, Veröffentlichen oder anderweitiges Verfügbarmachen, Kombinieren, Einschränken, Löschen oder Vernichten von personenbezogenen und/oder vertraulichen Unternehmensdaten. Das Programm 112 zum Filtern von Kennwörtern ermöglicht ein autorisiertes und sicheres Verarbeiten von personenbezogenen Daten.
  • Das Programm 112 zum Filtern von Kennwörtern stellt eine Einverständniserklärung mit einem Hinweis auf das Erheben personenbezogener und/oder vertraulicher Unternehmensdaten bereit, so dass der Nutzer die Möglichkeit hat, dem Verarbeiten personenbezogener und/oder vertraulicher Unternehmensdaten zuzustimmen oder dies abzulehnen. Eine Zustimmung kann verschiedene Formen annehmen. Eine Opt-in-Zustimmung kann den Nutzer dazu verpflichten, eine bejahende Handlung vorzunehmen, bevor personenbezogene und/oder vertrauliche Unternehmensdaten verarbeitet werden. Alternativ kann der Nutzer durch eine Opt-out-Zustimmung verpflichtet werden, eine bejahende Handlung vorzunehmen, um das Verarbeiten personenbezogener und/oder vertraulicher Unternehmensdaten zu verhindern, bevor die personenbezogenen und/oder vertraulichen Unternehmensdaten verarbeitet werden. Das Programm 112 zum Filtern von Kennwörtern stellt Informationen über personenbezogene und/oder vertrauliche Unternehmensdaten und die Art (z.B. Typ, Umfang, Zweck, Dauer usw.) der Verarbeitung bereit. Das Programm 112 zum Filtern von Kennwörtern stellt dem Nutzer Kopien von gespeicherten personenbezogenen und/oder vertraulichen Unternehmensdaten zur Verfügung. Das Programm 112 zum Filtern von Kennwörtern ermöglicht eine Korrektur oder Vervollständigung falscher oder unvollständiger personenbezogener und/oder vertraulicher Unternehmensdaten. Das Programm 112 zum Filtern von Kennwörtern ermöglicht ein sofortiges Löschen von personenbezogenen und/oder vertraulichen Unternehmensdaten.
  • Die Nutzer-Datenverarbeitungseinheit 120 arbeitet als eine Datenverarbeitungseinheit, die einem Nutzer zugehörig ist, der über eine Nutzerschnittstelle, z.B. eine Nutzerschnittstelle 122, dem Programm 112 zum Filtern von Kennwörtern zustimmen kann. Es versteht sich von selbst, dass die Nutzer-Datenverarbeitungseinheit 120 repräsentativ für Nutzer ist, die dem Programm 112 zum Filtern von Kennwörtern zugestimmt haben, und in anderen Ausführungsformen kann die verteilte Datenverarbeitungsumgebung 100 eine beliebige Anzahl von Nutzer-Datenverarbeitungseinheiten umfassen, die dem Programm zugestimmt haben. In der dargestellten Ausführungsform umfasst die Nutzer-Datenverarbeitungseinheit 120 eine Instanz der Nutzeroberfläche 122. In einer Ausführungsform kann es sich bei der Nutzer-Datenverarbeitungseinheit 120 um einen Laptop, einen Tablet-Computer, ein Smartphone, eine intelligente Uhr, einen intelligenten Lautsprecher, eine intelligente Brille, einen tragbaren Computer oder eine beliebige programmierbare elektronische Einheit handeln, die in der Lage ist, über das Netzwerk 105 mit verschiedenen Komponenten und Einheiten in der verteilten Datenverarbeitungsumgebung 100 Daten auszutauschen. Im Allgemeinen stellt die Nutzer-Datenverarbeitungseinheit 120 ein oder mehrere programmierbare elektronische Einheiten oder eine Kombination programmierbarer elektronischer Einheiten dar, die in der Lage sind, maschinenlesbare Programmanweisungen auszuführen und mit anderen Datenverarbeitungseinheiten (nicht gezeigt) innerhalb der verteilten Datenverarbeitungsumgebung 100 über ein Netzwerk wie etwa das Netzwerk 105 Daten auszutauschen. Die Nutzer-Datenverarbeitungseinheit 120 kann interne und externe Hardware-Komponenten umfassen, wie unter Bezugnahme auf 4 dargestellt und näher beschrieben wird.
  • Die Nutzerschnittstelle 122 stellt eine Schnittstelle zwischen dem Programm 112 zum Filtern von Kennwörtern auf dem Server 110 und einem Nutzer der Nutzer-Datenverarbeitungseinheit 120 bereit. In einer Ausführungsform handelt es sich bei der Nutzerschnittstelle 122 um eine mobile Anwendungs-Software. Eine mobile Anwendungs-Software oder eine „App“ ist ein Computerprogramm, das für ein Ausführen auf Smartphones, Tablet-Computern und anderen mobilen Geräten entwickelt wurde. In einer Ausführungsform kann es sich bei der Nutzerschnittstelle 122 um eine grafische Nutzerschnittstelle (GUI) oder eine Web-Nutzerschnittstelle (WUI) handeln, und sie kann Text, Dokumente, Webbrowser-Fenster, Nutzeroptionen, Anwendungsschnittstellen und Betriebsanweisungen anzeigen und die Informationen (z.B. Grafik, Text und Ton), die ein Programm einem Nutzer präsentiert, sowie die Steuersequenzen umfassen, die der Nutzer zum Steuern des Programms verwendet. Die Nutzerschnittstelle 122 ermöglicht es einem Nutzer der Nutzer-Datenverarbeitungseinheit 120, ein echtes Kennwort festzulegen, einen Satz von Filterregeln einzurichten und ein Pseudo-Kennwort einzugeben, das auf der Grundlage des Satzes von Filterregeln gefiltert werden soll. Darüber hinaus ermöglicht die Nutzerschnittstelle 122 dem Nutzer der Nutzer-Datenverarbeitungseinheit 120, sich für oder gegen das Programm 112 zum Filtern von Kennwörtern zu entscheiden.
  • 2 ist ein Ablaufplan 200, der Prozessschritte einer Konfigurationskomponente des Programms 112 zum Filtern von Kennwörtern auf dem Server 110 in der verteilten Datenverarbeitungsumgebung 100 von 1 gemäß einer Ausführungsform der vorliegenden Erfindung zeigt. In einer Ausführungsform empfängt das Programm 112 zum Filtern von Kennwörtern eine Anforderung zum Zustimmen von einem Nutzer, fordert den Nutzer auf, einen Satz von Filterregeln einzugeben, empfängt den Satz von Filterregeln und erstellt ein Nutzerprofil für den Nutzer mit dem Satz von Filterregeln. Es sollte klar sein, dass der in 2 dargestellte Prozess eine mögliche Wiederholung des Programms 112 zum Filtern von Kennwörtern darstellt, die für jeden Nutzer, der dem Programm 112 zum Filtern von Kennwörtern zustimmt, wiederholt werden kann.
  • Im Schritt 210 empfängt das Programm 112 zum Filtern von Kennwörtern eine Anforderung von einem Nutzer zum Zustimmen. In einer Ausführungsform empfängt das Programm 112 zum Filtern von Kennwörtern eine Anforderung von einem Nutzer, dem Programm 112 zum Filtern von Kennwörtern zuzustimmen. Beispielsweise überträgt ein Nutzer der Nutzer-Datenverarbeitungseinheit 120 über die Nutzerschnittstelle 122 der Nutzer-Datenverarbeitungseinheit 120 eine Anforderung, dem Programm 112 zum Filtern von Kennwörtern zuzustimmen.
  • Im Schritt 220 fordert das Programm 112 zum Filtern von Kennwörtern einen Satz von Filterregeln vom Nutzer an. In einer Ausführungsform fordert das Programm 112 zum Filtern von Kennwörtern Informationen vom Nutzer an. In einer Ausführungsform fordert das Programm 112 zum Filtern von Kennwörtern als Reaktion auf ein Empfangen der Anforderung vom Nutzer zum Zustimmen einen Satz von Filterregeln vom Nutzer an. Wenn eine Filterregel mit dem echten Kennwort übereinstimmt oder es unvorschriftsmäßig verändern würde, ist diese Filterregel im Allgemeinen ungültig und wird vom Programm 112 zum Filtern von Kennwörtern zurückgewiesen.
  • Der vom Nutzer angeforderte Satz von Filterregeln kann verallgemeinerte Regeln in Form eines regulären Ausdrucks umfassen. Ein regulärer Ausdruck ist eine Folge von Zeichen, die ein Suchmuster mit einer bestimmten Syntax definieren. Das Suchmuster wird dann von Algorithmen zum „Suchen“ oder „Suchen und Ersetzen“ von Zeichenketten verwendet. Mit anderen Worten, bei regulären Ausdrücken handelt es sich um die spezifische, standardmäßige Textsyntax zum Darstellen von Mustern für ein Abgleichen von Text. Der Satz von Filterregeln in Form von regulären Ausdrücken kann auf Wunsch des Nutzers angepasst und verallgemeinert werden, da reguläre Ausdrücke jedes mögliche Übereinstimmungsmuster ausdrücken können. Beispielsweise empfängt das Programm 112 zum Filtern von Kennwörtern vom Nutzer eine Regel für den regulären Ausdruck (?=^ABC)(?=EFG$), der mit Zeichenketten übereinstimmt, die mit ABC beginnen und mit EFG enden. In einem anderen Beispiel empfängt das Programm 112 zum Filtern von Kennwörtern vom Nutzer eine Regel für den regulären Ausdruck a(bc){2,5}, der mit Zeichenketten übereinstimmt, die „a“ gefolgt von zwei bis fünf Kopien der Sequenz „bc“ enthalten.
  • Der vom Nutzer angeforderte Satz von Filterregeln kann außerdem eine Regel für reguläre Ausdrücke umfassen, die einen sequenziellen Satz von zu entfernenden Zeichen definiert, wobei der sequenzielle Satz von Zeichen ein oder mehrere Male in einem empfangenen Kennwort vorkommen kann und wobei diese Regel ein definiertes Startzeichen, das sich von allen Zeichen im echten Kennwort unterscheidet, und ein definiertes Endzeichen hat. Wenn das echte Kennwort beispielsweise „HelloWorld“ lautet und die Regel einen sequenziellen Satz von Zeichen herausfiltert, die mit „t“ beginnen und mit „z“ enden, wird beim Eingeben des Pseudo-Kennworts „HeltenfkcozIoWtqwezorld“ durch den Nutzer der sequenzielle Satz „tenfkoz“ und „tqwez“ herausgefiltert.
  • Der vom Nutzer angeforderte Satz von Filterregeln kann außerdem eine Regel für reguläre Ausdrücke umfassen, die ein bestimmtes Zeichen definiert, das immer herausgefiltert werden soll. Beispielsweise kann ein Nutzer festlegen, dass das Zeichen „z“ immer aus einem vom Nutzer eingegebenen Pseudo-Kennwort herausgefiltert wird.
  • Der vom Nutzer angeforderte Satz von Filterregeln kann außerdem eine mathematische Regel für reguläre Ausdrücke umfassen, die auf eine Folge von Zeichen angewendet wird, d. h., ein Nutzer kann eine mathematische Regel definieren, die besagt, dass, wenn ein sequenzieller Satz von Zeichen eine bestimmte Summe ergibt, dieser sequenzielle Satz von Zeichen aus dem Pseudo-Kennwort herausgefiltert werden kann. Beispielsweise empfängt das Programm 112 zum Filtern von Kennwörtern vom Nutzer eine Regel, die besagt, dass, wenn eine Folge von drei Zahlen eine Summe von 20 ergibt, diese Folge von drei Zahlen aus jedem eingegebenen Pseudo-Kennwort herausgefiltert wird.
  • Im Schritt 230 empfängt das Programm 112 zum Filtern von Kennwörtern den Satz von Filterregeln. In einer Ausführungsform empfängt das Programm 112 zum Filtern von Kennwörtern vom Nutzer den Satz von Filterregeln, der eine oder mehrere der oben beschriebenen Regeln umfasst. In einer Ausführungsform empfängt das Programm 112 zum Filtern von Kennwörtern als Reaktion darauf, dass das Programm 112 zum Filtern von Kennwörtern den Satz von Filterregeln vom Nutzer anfordert, den Satz von Filterregeln vom Nutzer.
  • Im Schritt 240 erzeugt das Programm 112 zum Filtern von Kennwörtern ein Nutzerprofil auf der Grundlage des Satzes von Filterregeln. In einer Ausführungsform erzeugt das Programm 112 zum Filtern von Kennwörtern ein Nutzerprofil für den Nutzer und fügt den vom Nutzer empfangenen Satz von Filterregeln ein. In einer Ausführungsform speichert das Programm 112 zum Filtern von Kennwörtern das Nutzerprofil und/oder den Satz von Filterregeln in einer Datenbank, z.B. der Datenbank 114. In einer Ausführungsform erzeugt das Programm 112 zum Filtern von Kennwörtern als Reaktion darauf, dass das Programm 112 zum Filtern von Kennwörtern den Satz von Filterregeln vom Nutzer empfängt, das Nutzerprofil für den Nutzer und fügt den vom Nutzer empfangenen Satz von Filterregeln ein. Dieses Nutzerprofil wird vom Programm 112 zum Filtern von Kennwörtern verwendet, um den Satz von Filterregeln abzurufen und auf ein vom Nutzer auf einer Datenverarbeitungseinheit, z.B. der Nutzer-Datenverarbeitungseinheit 120, eingegebenes Kennwort anzuwenden.
  • 3 ist ein Ablaufplan 300, der Prozessschritte einer Anmeldekomponente des Programms 112 zum Filtern von Kennwörtern auf einem Server 110 in der verteilten Datenverarbeitungsumgebung 100 von 1 gemäß einer Ausführungsform der vorliegenden Erfindung darstellt. In einer Ausführungsform empfängt das Programm 112 zum Filtern von Kennwörtern ein von einem Nutzer eingegebenes Kennwort ermittelt, ob das Kennwort gefiltert werden muss, filtert als Reaktion auf ein Feststellen, dass das Kennwort gefiltert werden muss, auf der Grundlage des Satzes von Filterregeln aus dem Nutzerprofil Zeichen aus dem Kennwort und ermittelt, ob das gefilterte Kennwort mit einem echten Kennwort übereinstimmt. Es sollte klar sein, dass der in 3 dargestellte Prozess eine mögliche Wiederholung des Programms 112 zum Filtern von Kennwörtern veranschaulicht, die für jedes eingegebene Kennwort durch den Nutzer, der dem Programm 112 zum Filtern von Kennwörtern zugestimmt hat, wiederholt werden kann.
  • Im Schritt 310 empfängt das Programm 112 zum Filtern von Kennwörtern ein von einem Nutzer eingegebenes Kennwort. In einer Ausführungsform empfängt das Programm 112 zum Filtern von Kennwörtern ein von einem Nutzer eingegebenes Pseudo-Kennwort als Kennwort für eine Anmeldung. Beispielsweise empfängt das Programm 112 zum Filtern von Kennwörtern das Kennwort „CliftngfdgzonPanozrk“, das von einem Nutzer über die Nutzerschnittstelle 122 der Nutzer-Datenverarbeitungseinheit 120 eingegeben wurde.
  • In der Entscheidung 320 ermittelt das Programm 112 zum Filtern von Kennwörtern, ob das Kennwort gefiltert werden muss. Im Wesentlichen ermittelt das Programm 112 zum Filtern von Kennwörtern, ob der Nutzer ein Pseudo-Kennwort, das echte Kennwort oder ein falsches Kennwort eingegeben hat. In einer Ausführungsform stellt das Programm 112 zum Filtern von Kennwörtern fest, dass das Kennwort gefiltert werden muss, weil es mehr Zeichen als das echte Kennwort hat. In einer Ausführungsform ermittelt das Programm 112 zum Filtern von Kennwörtern als Reaktion auf ein Empfangen des vom Nutzer eingegebenen Kennworts, ob das Kennwort gefiltert werden muss. In einer Ausführungsform stellt das Programm 112 zum Filtern von Kennwörtern fest, dass das Kennwort nicht gefiltert werden muss, wenn das Kennwort mit dem echten Kennwort übereinstimmt, wenn das Kennwort weniger Zeichen als das echte Kennwort hat, oder wenn das Kennwort eine gleiche Anzahl von Zeichen wie das echte Kennwort hat, aber nicht mit dem echten Kennwort übereinstimmt.
  • Wenn das Programm 112 zum Filtern von Kennwörtern feststellt, dass das Kennwort nicht gefiltert werden muss, weil das Kennwort mit dem echten Kennwort übereinstimmt (Entscheidung 320, Zweig „NEIN, STIMMT MIT ECHTEM KENNWORT ÜBEREIN“), geht das Programm 112 zum Filtern von Kennwörtern weiter zum Schritt 350, wodurch ein Anmelden ermöglicht wird. Wenn das Programm 112 zum Filtern von Kennwörtern feststellt, dass das Kennwort nicht gefiltert werden muss, weil das Kennwort weniger Zeichen als das echte Kennwort hat oder eine gleiche Anzahl von Zeichen wie das echte Kennwort hat, jedoch nicht mit dem echten Kennwort übereinstimmt (Entscheidung 320, Zweig „NEIN, WENIGER ZEICHEN ALS ECHTES KENNWORT ODER GLEICHE ANZAHL VON ZEICHEN WIE ECHTES KENNWORT, STIMMT JEDOCH NICHT MIT ECHTEM KENNWORT ÜBEREIN), geht das Programm 112 zum Filtern von Kennwörtern weiter zum Schritt 360, wodurch ein Anmelden untersagt wird. Wenn das Programm 112 zum Filtern von Kennwörtern feststellt, dass das Kennwort nicht gefiltert werden muss, weil das Kennwort mehr Zeichen als das echte Kennwort hat (Entscheidung 320, ,,JA“-Zweig), geht das Programm 112 zum Filtern von Kennwörtern weiter zum Schritt 330, um auf der Grundlage eines Satzes von Filterregeln Zeichen herauszufiltern.
  • Im Schritt 330 filtert das Programm 112 zum Filtern von Kennwörtern auf der Grundlage eines Satzes von Filterregeln Zeichen des Kennworts heraus. In einer Ausführungsform filtert das Programm 112 zum Filtern von Kennwörtern auf der Grundlage des im Nutzerprofil des Nutzers gespeicherten Satzes von Filterregeln Zeichen des Pseudo-Kennworts heraus. Beispielsweise ruft das Programm 112 zum Filtern von Kennwörtern den Satz von Filterregeln aus dem Nutzerprofil für den in der Datenbank 114 gespeicherten Nutzer ab und wendet jede Regel des Satzes von Filterregeln auf das Kennwort an und filtert auf der Grundlage des Satzes von Filterregeln Zeichen heraus. In einer Ausführungsform filtert das Programm 112 zum Filtern von Kennwörtern als Reaktion darauf, dass das Programm 112 zum Filtern von Kennwörtern feststellt, dass das Kennwort gefiltert werden muss, auf der Grundlage des Satzes von Filterregeln Zeichen des Kennworts heraus.
  • In der Entscheidung 340 ermittelt das Programm 112 zum Filtern von Kennwörtern, ob das gefilterte Kennwort mit dem echten Kennwort übereinstimmt. In einer Ausführungsform vergleicht das Programm 112 zum Filtern von Kennwörtern das gefilterte Kennwort mit dem echten Kennwort, um zu ermitteln, ob das gefilterte Kennwort mit dem echten Kennwort übereinstimmt. Wenn das Programm 112 zum Filtern von Kennwörtern feststellt, dass das gefilterte Kennwort nicht mit dem echten Kennwort übereinstimmt (Entscheidung 340, NEIN-Zweig), geht das Programm 112 zum Filtern von Kennwörtern weiter zum Schritt 360, wodurch ein Anmelden untersagt wird. Im Schritt 360 verweigert das Programm 112 zum Filtern von Kennwörtern ein Anmelden. In einigen Ausführungsformen benachrichtigt das Programm 112 zum Filtern von Kennwörtern den Nutzer, dass das Kennwort falsch ist, und fordert ihn auf, erneut ein Kennwort einzugeben. Wenn das Programm 112 zum Filtern von Kennwörtern feststellt, dass das gefilterte Kennwort mit dem echten Kennwort übereinstimmt (Entscheidung 340, JA-Zweig), geht das Programm 112 zum Filtern von Kennwörtern weiter zum Schritt 350, wodurch ein Anmelden ermöglicht wird. In Schritt 350 ermöglicht das Programm 112 zum Filtern von Kennwörtern dem Nutzer, sich anzumelden.
  • 4 zeigt ein Blockschaltbild von Komponenten einer Datenverarbeitungseinheit 400, die geeignet für den Server 110 und/oder die Nutzer-Datenverarbeitungseinheit 120 in der verteilten Datenverarbeitungseinheit 100 von 1 gemäß einer Ausführungsform der vorliegenden Erfindung ist. Es sollte klar sein, dass 4 lediglich eine Veranschaulichung einer Implementierung bereitstellt und keine Einschränkungen bezüglich der Umgebungen andeutet, in denen verschiedenen Ausführungsformen implementiert werden können. An den gezeigten Ausführungsformen können viele Modifikationen vorgenommen werden.
  • Die Datenverarbeitungseinheit 400 umfasst eine Kommunikationsstruktur 402, die Datenübertragungsvorgänge zwischen einem Cache 416, einem Speicher 406, einem permanenten Speicher 408, einer Kommunikationseinheit 410 und einer oder mehreren Ein/Ausgabe- (E/A-) Schnittstelle(n) 412 ermöglicht. Die Kommunikationsstruktur 402 kann mit jeder Architektur implementiert werden, die zum Weiterleiten von Daten und/oder Steuerinformationen zwischen Prozessoren (beispielsweise Mikroprozessoren, Kommunikations- und Netzwerkprozessoren usw.), Systemspeicher, peripheren Einheiten und anderen Hardware-Komponenten innerhalb eines Systems ausgelegt ist. Beispielsweise kann die Kommunikationsstruktur 402 mit einem oder mehreren Bussen oder einem Kreuzschienenverteiler (crossbar switch) implementiert werden.
  • Bei dem Speicher 406 und dem permanenten Speicher 408 handelt es sich um durch einen Computer lesbare Speichermedien. In dieser Ausführungsform umfasst der Speicher 406 einen Direktzugriffsspeicher (RAM). Im Allgemeinen kann der Speicher 406 jedes geeignete flüchtige oder nichtflüchtige durch einen Computer lesbare Speichermedium umfassen. Beim Cache 416 handelt es sich um einen schnellen Speicher, der die Leistung des/der Computerprozessor(en) 404 erhöht, indem er Daten, auf die kürzlich zugegriffen wurde, und Daten in der Nähe von Daten, auf die zugegriffen wurde, aus dem Speicher 406 zwischenspeichert.
  • Im permanenten Speicher 408 und im Speicher 406 können Programme zum Ausführen und/oder zum Zugreifen durch einen oder mehrere der jeweiligen Computerprozessoren 404 über den Cache 416 gespeichert werden. In einer Ausführungsform umfasst der permanente Speicher 408 ein magnetisches Festplattenlaufwerk. Alternativ oder zusätzlich zu einem magnetischen Festplattenlaufwerk kann der permanente Speicher 408 ein Halbleiterdatenträger, eine Halbleiterspeichereinheit, einen Nur-Lese-Speicher (ROM), einen löschbaren programmierbaren Nur-Lese-Speicher (EPROM), einen Flash-Speicher oder jedes andere durch einen Computer lesbare Speichermedium umfassen, das in der Lage ist, Programmanweisungen oder digitale Informationen zu speichern.
  • Die vom permanenten Speicher 408 verwendeten Medien können auch austauschbar sein. Beispielsweise kann eine austauschbare Festplatte für den permanenten Speicher 408 verwendet werden. Zu anderen Beispielen gehören optische und magnetische Festplatten, Speichersticks und Chipkarten, die in ein Laufwerk eingelegt werden, um auf ein anderes durch einen Computer lesbares Speichermedium übertragen zu werden, das ebenfalls Teil des permanenten Speichers 408 ist.
  • Die Kommunikationseinheit 410 schafft in diesen Beispielen die Voraussetzungen für einen Datenaustausch mit anderen Datenverarbeitungssystemen oder -einheiten. In diesen Beispielen umfasst die Kommunikationseinheit 410 eine oder mehrere Netzwerkschnittstellenkarten. Die Kommunikationseinheit 410 kann einen Datenaustausch durch Verwenden von physischen oder drahtlosen Kommunikationsverbindungen ermöglichen. Programme können über die Kommunikationseinheit 410 in den permanenten Speicher 408 heruntergeladen werden.
  • Die E/A-Schnittstelle(n) 412 ermöglicht (ermöglichen) ein Eingeben und Ausgeben von Daten mit anderen Einheiten, die mit dem Server 110 und der Nutzer-Datenverarbeitungseinheit 120 verbunden sein können. Beispielsweise kann die E/A-Schnittstelle 412 eine Verbindung zu externen Einheiten 418 wie etwa einer Tastatur, einem Tastenfeld, einem berührungsempfindlichen Bildschirm und/oder einer anderen geeigneten Eingabeeinheit herstellen. Zu den externen Einheiten 418 können auch tragbare durch einen Computer lesbare Speichermedien gehören, beispielsweise Speichersticks, tragbare optische oder magnetische Festplatten und Speicherkarten. Software und Daten, die zum Umsetzen von Ausführungsformen der vorliegenden Erfindung verwendet werden, können auf solchen tragbaren durch einen Computer lesbaren Speichermedien gespeichert und über die E/A-Schnittstelle(n) 412 in den permanenten Speicher 408 geladen werden. Die E/A-Schnittstelle(n) 412 ist (sind) auch mit einer Anzeige 420 verbunden.
  • Die Anzeige 420 stellt einen Mechanismus zum Anzeigen von Daten für einen Nutzer bereit und kann zum Beispiel ein Computermonitor sein.
  • Hierin beschriebene Programme werden auf der Grundlage der Anwendung bezeichnet, für die sie in einer bestimmten Ausführungsform der Erfindung implementiert sind. Es sollte jedoch klar sein, dass eine bestimmte Programm-Nomenklatur hier nur der Einfachheit halber verwendet wird, und somit sollte die Erfindung nicht auf die ausschließliche Verwendung in einer bestimmten Anwendung beschränkt werden, die durch eine solche Nomenklatur bezeichnet und/oder angedeutet wird.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt handeln. Das Computerprogrammprodukt kann (ein) durch einen Computer lesbare(s) Speichermedium (oder -medien) enthalten, auf dem/denen durch einen Computer lesbare Programmanweisungen gespeichert sind, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch eine Einheit zum Ausführen von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die Folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM oder Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch codierte Einheit wie zum Beispiel Lochkarten oder gehobene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. ein Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übertragene elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs/Verarbeitungs-Einheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs/Verarbeitungs-Einheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zum Speichern in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs/Verarbeitungs-Einheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmware-Anweisungen, zustandssetzende Daten oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter eine objektorientierte Programmiersprache wie Smalltalk, C++ o.ä. sowie herkömmliche prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Nutzers, teilweise auf dem Computer des Nutzers, als eigenständiges Software-Paket, teilweise auf dem Computer des Nutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Nutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwenden eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu individualisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich von selbst, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern mittels durch einen Computer lesbaren Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zum Umsetzen der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Ausführen der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Erfindung dienen der Veranschaulichung, sollen jedoch nicht erschöpfend oder auf die offenbarten Ausführungsformen beschränkt sein. Viele Modifikationen und Änderungen werden für Fachleute offensichtlich sein, ohne vom Schutzumfang und Gedanken der Erfindung abzuweichen. Die hier verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsform, die praktische Anwendung oder die technische Verbesserung gegenüber auf dem Markt befindlichen Technologien bestmöglich zu erläutern oder um es anderen Fachleuten zu ermöglichen, die hier offenbarten Ausführungsformen zu verstehen.

Claims (9)

  1. Durch einen Computer implementiertes Verfahren für ein regelbasiertes Filtersystem zum Sichern von Kennwortanmeldungen, wobei das durch einen Computer implementierte Verfahren aufweist: Empfangen eines auf einer Nutzereinheit eingegebenen Kennwortes durch einen oder mehrere Prozessoren; Ermitteln durch den einen oder mehrere Prozessoren, ob das Kennwort gefiltert werden muss; als Reaktion auf ein Feststellen, dass das Kennwort gefiltert werden muss, Filtern von Zeichen aus dem Kennwort durch den einen oder mehrere Prozessoren auf der Grundlage eines Satzes von Filterregeln, um ein gefiltertes Kennwort zu erzeugen; und Ermitteln durch den einen oder mehrere Prozessoren, ob das gefilterte Kennwort mit einem gespeicherten Kennwort übereinstimmt.
  2. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei das Ermitteln, ob das Kennwort gefiltert werden muss, außerdem aufweist: Zählen einer Anzahl von Zeichen im Kennwort durch den einen oder mehrere Prozessoren; Vergleichen der Anzahl von Zeichen im Kennwort mit einer zweiten Anzahl von Zeichen im gespeicherten Kennwort durch den einen oder mehrere Prozessoren; und als Reaktion auf ein Feststellen, dass das Kennwort mehr Zeichen enthält als das gespeicherte Kennwort, Feststellen durch den einen oder die mehreren Prozessoren, dass das Kennwort gefiltert werden muss.
  3. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei der Satz von Filterregeln mindestens einen regulären Ausdruck umfasst.
  4. Durch einen Computer implementiertes Verfahren nach Anspruch 1, das außerdem aufweist: als Reaktion auf ein Feststellen, dass das gefilterte Kennwort mit dem gespeicherten Kennwort übereinstimmt, Ermöglichen eines Anmeldens eines Nutzers der Nutzereinheit durch den einen oder mehrere Prozessoren.
  5. Durch einen Computer implementiertes Verfahren nach Anspruch 1, das außerdem aufweist: als Reaktion darauf, dass ein Nutzer der Nutzereinheit dem regelbasierten Filtersystem zustimmt, Auffordern des Nutzers zum Eingeben des Satzes von Filterregeln durch den einen oder mehrere Prozessoren; Empfangen des Satzes von Filterregeln von der Nutzereinheit durch den einen oder mehrere Prozessoren; und Speichern des Satzes von Filterregeln durch den einen oder mehrere Prozessoren in einem Nutzerprofil für den Nutzer.
  6. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei eine Regel des Satzes von Filterregeln ein bestimmtes Zeichen definiert, das aus dem Kennwort herausgefiltert werden soll.
  7. Durch einen Computer implementiertes Verfahren nach Anspruch 1, wobei eine Regel des Satzes von Filterregeln eine mathematische Regel definiert, dass, wenn ein sequenzieller Satz von Zeichen eine vordefinierte Summe ergibt, der sequenzielle Satz von Zeichen aus dem Kennwort herausgefiltert wird.
  8. Computerprogrammprodukt für ein regelbasiertes Filtersystem zum Sichern von Kennwortanmeldungen, wobei das Computerprogrammprodukt aufweist: ein oder mehrere durch einen Computer lesbares Speichermedien und Programmanweisungen, die gemeinsam auf dem einen oder mehrere durch einen Computer lesbaren Speichermedien gespeichert sind, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen zum Empfangen eines auf einer Nutzereinheit eingegebenen Kennwortes; Programmanweisungen zum Ermitteln, ob das Kennwort gefiltert werden muss; als Reaktion auf ein Feststellen, dass das Kennwort gefiltert werden muss, Programmanweisungen zum Filtern von Zeichen aus dem Kennwort auf der Grundlage eines Satzes von Filterregeln, um ein gefiltertes Kennwort zu erzeugen; und Programmanweisungen zum Ermitteln, ob das gefilterte Kennwort mit einem gespeicherten Kennwort übereinstimmt.
  9. Computersystem für ein regelbasiertes Filtersystem zum Sichern von Kennwortanmeldungen, wobei das Computersystem aufweist: einen oder mehrere Computerprozessoren; ein oder mehrere durch einen Computer lesbare Speichermedien; Programmanweisungen, die zum Ausführen durch den einen oder mehrere Computerprozessoren gemeinsam auf dem einen oder mehrere durch einen Computer lesbaren Speichermedien gespeichert sind, wobei die gespeicherten Programmanweisungen aufweisen: Programmanweisungen zum Empfangen eines auf einer Nutzereinheit eingegebenen Kennwortes; Programmanweisungen zum Ermitteln, ob das Kennwort gefiltert werden muss; als Reaktion auf ein Feststellen, dass das Kennwort gefiltert werden muss, Programmanweisungen zum Filtern von Zeichen aus dem Kennwort auf der Grundlage eines Satzes von Filterregeln, um ein gefiltertes Kennwort zu erzeugen; und Programmanweisungen zum Ermitteln, ob das gefilterte Kennwort mit einem gespeicherten Kennwort übereinstimmt.
DE102021123288.0A 2020-10-23 2021-09-08 Regelbasiertes filtern zum sichern von kennwortanmeldungen Pending DE102021123288A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/078,149 2020-10-23
US17/078,149 US11757865B2 (en) 2020-10-23 2020-10-23 Rule-based filtering for securing password login

Publications (1)

Publication Number Publication Date
DE102021123288A1 true DE102021123288A1 (de) 2022-04-28

Family

ID=78497883

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102021123288.0A Pending DE102021123288A1 (de) 2020-10-23 2021-09-08 Regelbasiertes filtern zum sichern von kennwortanmeldungen

Country Status (5)

Country Link
US (1) US11757865B2 (de)
JP (1) JP2022069400A (de)
CN (1) CN114491501A (de)
DE (1) DE102021123288A1 (de)
GB (1) GB2600555B (de)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200389443A1 (en) * 2019-06-10 2020-12-10 Microsoft Technology Licensing, Llc Authentication with random noise symbols and pattern recognition
US11645381B2 (en) * 2020-12-11 2023-05-09 International Business Machines Corporation User configured one-time password

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002229959A (ja) 2001-02-06 2002-08-16 Nippon Signal Co Ltd:The パスワード入力装置
CN100345078C (zh) * 2004-07-09 2007-10-24 中国民生银行股份有限公司 计算机键盘信息干扰实现密码保护的方法
CA2574983A1 (en) 2007-01-05 2008-07-05 Paul W. Simmons A method and device for password pattern randomization
EP2184696A1 (de) 2008-10-31 2010-05-12 Kirill Kretov Verfahren und Modul zum Schutz eines Passworts für eine Berechtigung eines Benutzerzugriffs auf eine Computeranwendung
US8539247B2 (en) * 2010-06-22 2013-09-17 Cisco Technology, Inc. Password checking
JP2012133717A (ja) 2010-12-24 2012-07-12 Panasonic Corp パスワード入力認証装置及びこれを用いた携帯端末装置
US9030293B1 (en) 2012-05-04 2015-05-12 Google Inc. Secure passcode entry
US8863260B2 (en) 2012-06-07 2014-10-14 International Business Machines Corporation Enhancing password protection
US9684898B2 (en) 2012-09-25 2017-06-20 Google Inc. Securing personal identification numbers for mobile payment applications by combining with random components
JP5651742B1 (ja) 2013-06-26 2015-01-14 株式会社三井住友銀行 パスワードの入力方法、入力端末、及び入力システム
CN104038344B (zh) * 2014-06-19 2017-03-22 电子科技大学 一种基于正则表达式的身份验证方法
EP2966585B1 (de) 2014-07-11 2019-09-11 Unify GmbH & Co. KG Verfahren und System zur Initiierung der Anmeldung eines Benutzers
CN105184132A (zh) * 2015-10-22 2015-12-23 上海斐讯数据通信技术有限公司 一种电子设备隐私权限管理方法及管理系统
US10395065B2 (en) * 2015-12-28 2019-08-27 International Business Machines Corporation Password protection under close input observation based on dynamic multi-value keyboard mapping
KR101769119B1 (ko) 2016-02-16 2017-08-17 주식회사 프로젝트사공구 정크 데이터 일치여부를 이용한 사용자 인증 시스템 및 방법
JP6551350B2 (ja) * 2016-09-26 2019-07-31 京セラドキュメントソリューションズ株式会社 認証装置
US10956558B2 (en) 2018-10-31 2021-03-23 Microsoft Technology Licensing, Llc Methods for increasing authentication security
CN109933973B (zh) * 2019-01-24 2024-01-19 平安科技(深圳)有限公司 密码校验方法、装置、计算机设备及存储介质
US11361068B2 (en) * 2019-11-27 2022-06-14 Dell Products L.P. Securing passwords by using dummy characters

Also Published As

Publication number Publication date
JP2022069400A (ja) 2022-05-11
GB202114078D0 (en) 2021-11-17
GB2600555B (en) 2023-01-25
US11757865B2 (en) 2023-09-12
US20220131849A1 (en) 2022-04-28
GB2600555A (en) 2022-05-04
CN114491501A (zh) 2022-05-13

Similar Documents

Publication Publication Date Title
DE112018004411T5 (de) Zugriffssteuerung in mikrodienst-architekturen
DE112018002031T5 (de) Sichern einer betriebssystemkonfiguration unter verwendung von hardware
DE102016222034A1 (de) Dynamische Kennworterzeugung
DE112012004935B4 (de) Netzwerkeinheiten-Konfigurationsverwaltung
DE112020000538T5 (de) Feinkörnige zugriffskontrolle auf token-grundlage
DE112011105696T5 (de) Bios-Zugangsverwaltung
DE112012005033B4 (de) Systemübergreifende sichere Anmeldung
DE102011077218B4 (de) Zugriff auf in einer Cloud gespeicherte Daten
DE102021123288A1 (de) Regelbasiertes filtern zum sichern von kennwortanmeldungen
DE112013002539B4 (de) Validierung mobiler Einheiten
DE112011101357T5 (de) Dynamisches Token für den vorübergehenden Datenzugriff
DE112020000927T5 (de) Verwalten sensibler daten
DE102016105062A1 (de) Nähengestützte Berechtigungsprüfung für einheitenübergreifend verteilte Daten
DE112017000633T5 (de) Sichere archivierung und wiederherstellung von multifaktor-authentifizierungsschablonen
DE112017004160T5 (de) Schützen eines Webservers vor einer nicht autorisierten Client-Anwendung
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE112016002392T5 (de) Autorisierung in einem verteilten System unter Verwendung von Zugriffssteuerungslisten und Gruppen
DE112018002954T5 (de) Bereitstellen eines konfigurationsabhängigen arbeitsablaufs
DE112022004486T5 (de) Schrittweises überprüfen von zugriffs-token
DE112021004945T5 (de) Techniken der kompositionellen verifikation für rollenerreichbarkeitsanalysen in identitätssystemen
DE102017107147A1 (de) Betrugssichere Autorisierung und Authentifizierung für sichere Interaktionen mit Smartphones
DE102021128519A1 (de) Dokumentzugangskontrolle auf grundlage von dokumentkomponenten-layouts
DE112021005026T5 (de) Persistente quellwerte für angenommene alternative identitäten
DE102010060758A1 (de) Datenträgervorrichtung mit eigenem Prozessor zur Ausführung eines Netzzugriffprogramms
DE112021005656T5 (de) Analyse der rollenerreichbarkeit mit transitiven tags

Legal Events

Date Code Title Description
R012 Request for examination validly filed