DE4107019C2 - Verfahren und Vorrichtung zum computergesteuerten Überprüfen der Annehmbarkeit von Kennwörtern - Google Patents
Verfahren und Vorrichtung zum computergesteuerten Überprüfen der Annehmbarkeit von KennwörternInfo
- Publication number
- DE4107019C2 DE4107019C2 DE4107019A DE4107019A DE4107019C2 DE 4107019 C2 DE4107019 C2 DE 4107019C2 DE 4107019 A DE4107019 A DE 4107019A DE 4107019 A DE4107019 A DE 4107019A DE 4107019 C2 DE4107019 C2 DE 4107019C2
- Authority
- DE
- Germany
- Prior art keywords
- password
- passwords
- proposed
- unacceptable
- string
- 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.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C9/00—Individual registration on entry or exit
- G07C9/30—Individual registration on entry or exit not involving the use of a pass
- G07C9/32—Individual registration on entry or exit not involving the use of a pass in combination with an identity check
- G07C9/33—Individual registration on entry or exit not involving the use of a pass in combination with an identity check by means of a password
Description
Die vorliegende Erfindung betrifft Kennwortsicherheitssysteme,
insbesondere ein Verfahren bzw. eine Vorrichtung zum computergesteuerten Überprüfen der Annehmbarkeit
von Kennwörtern.
Viele computergesteuerten Sicherheitssysteme beruhen auf dem Einsatz von Kennwörtern
(passwords), um die Zulässigkeit von Personen (oder
anderen Objekten wie z. B. Berechnungsvorgängen) zu verifizieren
bzw. zu überprüfen, die um Zugriff auf das System
nachfragen. Ein Beispiel für ein solches System ist ein
Vielbenutzercomputersystem.
Bei diesen auf Kennwörtern basierenden Sicherheitssystemen
kann die Sicherheit in Frage gestellt sein, wenn die Kennwörter
einfach zu erraten sind (allgemeine Bezeichnungen
bzw. Namen sind oftmals zutreffende Annahmen für Kennwörter)
oder wenn die Kennwörter niedergeschrieben werden, so
daß sie von nicht befugten Benutzern gefunden werden können.
Kennwörter können vom Systemmanagement oder von den Benutzern
selbst ausgewählt werden. In beiden Fällen gibt es
vielfältige Möglichkeiten für Verstöße bzw. Verletzungen
der Sicherheit.
Das Systemmanagement kann für "sichere" Kennwörter sorgen,
die nicht leicht zu erraten sind (z. B. Zufallssequenzen aus
unsinnigen Silben). Die dabei sich ergebenden Kennwörter
sind jedoch meistens unverständlich bzw. obskur und schwer
in Erinnerung zu behalten. Typischerweise schreiben die Benutzer
dann solche Kennwörter lieber nieder, als daß sie
versuchen, sich diese Wörter einzuprägen. Diese niedergeschriebenen
Aufzeichnungen können von unbefugten Personen
gefunden und mißbraucht werden.
Alternativ dazu kann es Benutzern gestattet werden, ihre
eigenen Kennwörter auszuwählen. Vom Benutzer ausgewählte Kennwörter
sind leichter zu merken. Deshalb sind die Benutzer
im geringeren Maße dazu verleitet, diese aufzuschreiben.
Vom Benutzer ausgewählte Kennwörter sind jedoch oftmals einfach
zu erraten.
Bei einem bekannten Verfahren wählt der Benutzer sein Kennwort
aus, dessen "Sicherheit" (oder Mangel an Offensichtlichkeit)
von dem System verifiziert wird. Auf diese Art
und Weise sind alle Kennwörter, die von dem System benutzt
werden, erinnerbar (zumindest für den Benutzer, der sie
ausgewählt hat) und sind aber auch nicht offensichtlich
bzw. naheliegend. Das Implementieren eines solchen
Verfahrens bzw. Schemas erfordert ein Verfahren zum
Überprüfen der "Gültigkeit" der Kennwörter. Ein solches bekanntes
Verfahren vergleicht das Kennwort mit einer Nachschlagetabelle
ungültiger Kennwörter (z. B.
kann die Nachschlagetabelle beispielhafte Kennwörter enthalten,
die in der Softwaredokumentation benutzt werden).
Wenn ein Kennwort in der Tabelle gefunden wird, wird der
Benutzer aufgefordert, das Kennwort zu ändern.
Beispiele für solche Kennwortsicherheitseinrichtungen und ihre Wirksamkeit
sind in dem Aufsatz von R. Morris und Ken Thompson, Bell
Laboratories: "Password Security: A Case History" in Communications
of the ACM, November 1979, Seiten 594-597 gegeben.
Die Aufgabe der Erfindung besteht darin, ein Verfahren bzw. eine Vorrichtung
anzugeben, die die computergesteuerte Überprüfung der Annehmbarkeit
eines Kennworts, das von einem Benutzer eines computergesteuerten
Sicherheitssystems vorgeschlagen wird, wirkungsvoll durchführt,
ohne daß die Sicherheit des Systems beeinträchtigt wird.
Diese Aufgabe wird durch das Verfahren nach Anspruch 1 bzw. durch die
Vorrichtung gemäß Anspruch 17 gelöst.
Ganz allgemein umfaßt die Erfindung das Verifizieren der Annehmbarkeit
eines Kennworts, das von einem Benutzer eines Sicherheitssystems vorgeschlagen
wird.
Die Erfindung besteht in ihrer allgemeinsten Ausprägung
in einer Vorrichtung bzw. einem Verfahren zum computergesteuerten
Überprüfen der Annehmbarkeit eines von einem Benutzer
eines Sicherheitssystems vorgeschlagenen Kennwortes,
wobei eine in einer Speichereinheit gespeicherten Tabelle
mit Indikatoren vorgesehen ist, eine Gruppe von nicht annehmbaren
in der Speichereinheit gespeicherten Kennwörtern
vorgesehen ist, eine Zuordnungsfunktion vorgesehen ist,
die den Kennwörtern Indikatoren durch Suchen jedes Kennworts
zuordnet, wobei die Funktion von der Art sein kann,
daß mehr als ein Kennwort einem Indikator zugeordnet werden
kann, die Zuordnungsfunktion jedem Kennwort der Gruppe der
nicht annehmbaren Kennwörter zugeordnet wird und die Indikatoren,
die jedem der nicht annehmbaren Kennwörter zugeordnet
sind, gesetzt werden, die Zuordnungsfunktion auf das vorgeschlagene
Kennwort automatisch angewendet wird, um Indikatoren
für das vorgeschlagene Kennwort zu erhalten, und überprüft
wird, ob der Indikator, der dem vorgeschlagenen Kennwort
zugeordnet ist, gesetzt ist, wobei ohne Fehler bestimmt
werden kann, ob das vorgeschlagene Kennwort nicht
in der Gruppe von nicht annehmbaren Kennwörtern ist, und
ihm deshalb Privilegien in dem Sicherheitssystem zugeordnet
werden können.
In der nachfolgenden Beschreibung wird näher erläutert,
daß der Einsatz der erfindungsgemäßen Vorrichtung
die Anzahl der Kennwörter, die unrichtigerweise als nicht annehmbar
betrachtet werden, reduziert wird, und gleichzeitig
die Systemelemente reduziert werden, die für das Abspeichern
der Nachsuchtabelle erforderlich sind.
Bevorzugte Ausführungsformen der vorliegenden Erfindung
enthalten die nachfolgenden Merkmale.
Eine Gruppe aus nicht annehmbaren Kennwörtern ist in einer Indikatorentabelle
mittels des Einsatzes einer Zuordnungsfunktion
(mapping function) gespeichert, die den Kennwörtern Indikatoren
zuordnet. Diese Zuordnungsfunktion kann mehr als
ein Kennwort einem einzelnen Indikator zuordnen. Um die Tabelle
zu initialisieren, wird die Zuordnungsfunktion auf
jedes nicht annehmbare Kennwort angewendet und die Indikatoren,
die jedem der nicht annehmbaren Kennwörter zugeordnet
sind, werden festgelegt bzw. gesetzt. Danach wird die Zuordnungsfunktion
auf das vorgeschlagene Kennwort angewendet
und der Indikator, der dem vorgeschlagenen Kennwort zugeordnet
ist, wird überprüft. Wenn der Indikator nicht gesetzt
worden ist, wird ohne Fehler festgestellt, daß das vorgeschlagene
Kennwort nicht in der Gruppe von nicht annehmbaren
Kennwörtern vorhanden ist.
Die Indikatoren und die Grupe von nicht annehmbaren Kennwörtern
werden in einer Weise vorgesehen bzw. ermittelt, die
es einem Benutzer ermöglicht, weitere unannehmbare Kennwörter
der Gruppe hinzuzufügen und danach zu variieren, welche
Indikatoren gesetzt werden.
Wenn das vorgeschlagene Kennwort als annehmbar ermittelt
wird, wird das vorgeschlagene Kennwort einer Gruppe von nicht
annehmbaren Kennwörtern hinzugefügt und der Indikator, der
dem vorgeschlagenen Kennwort zugeordnet ist, wird gesetzt,
so daß das vorgeschlagene Kennwort kein zweitesmal angenommen
werden wird.
Von Zeit zu Zeit werden die Privilegien eines Benutzerkennwortes
zumindest teilweise außer Funktion gesetzt, und der
Benutzer wird gezwungen, ein neues (annehmbares) Kennwort
vorzuschlagen, um diese Privilegien wiederzugewinnen. Dies
zwingt die Benutzer ihre Kennwörter zu ändern und (da Kennwörter
nicht zweimal angenommen werden) hilft auch, nicht
annehmbare Kennwörter "auszusondern", die anfänglich aus der
Gruppe weggelassen worden sind.
Eine allgemeine bzw. gemeinsame
Indikatorentabelle wird von einem Netzwerk des Sicherheitssystems
verwendet, um die Annehmbarkeit von Kennwörtern
zu verifizieren, so daß jedem einzelnen Kennwort
nur Privilegien in einem der Sicherheitssysteme zugeordnet
ist. Bei dieser Ausführungsform, wenn ein Kennwort von einem
Benutzer einem der Sicherheitssysteme vorgeschlagen
wird, überprüft dieses Sicherheitssystem die Annehmbarkeit
des vorgeschlagenen Kennwortes in der oben beschriebenen
Weise und verwendet dabei die gemeinsame Indikatorentabelle.
Wenn das Sicherheitssystem das vorgeschlagene Kennwort
als akzeptierbar befindet, fügt es das vorgeschlagene
Kennwort der Gruppe von nicht akzeptierbaren Kennwörtern hinzu
und setzt den entsprechenden Indikator in der gemeinsamen
Tabelle. Wenn dieses Kennwort danach erneut einem der Sicherheitssysteme
vorgeschlagen wird, wird es nicht akzeptiert
werden und es werden ihm keine Privilegien zugeordnet
werden.
Die Indikatoren sind Bits in einer Hash-Tabelle
(hash table) und die Zuordnungsfunktion ist eine
Hash-Funktion (hash function).
Die Verarbeitung, die von der Hash-Funktion durchgeführt
wird umfaßt das Normalisieren der Zeichenfolge (text string)
eines Kennwortes auf eine vorgegebene Länge. Die Zeichenfolge
wird normalisiert durch: (1) Anhängen eines Zeichens an die Zeichenfolge,
das sich auf die Länge der Zeichenfolge
bezieht, Aufstellen einer modifizierten Zeichenfolge; (2) Wenn
die Länge der modifizierten Zeichenfolge gerade ist, Hinzufügen
eines Zeichens zu der modifizierten Zeichenfolge, um
zu erzwingen, daß die Zeichenfolge eine ungerade Länge hat; und (3)
Anfügen der ungeradlängigen Zeichenfolge an sich selbst, bis
sie eine gegebene Länge überschreitet, und danach Abschneiden
der Zeichenfolge auf die gegebene Länge.
Die normalisierte Zeichenfolge wird danach in Stücke aufgeteilt.
Eines oder mehrere Stücke werden als Schlüssel zum
Verschlüsseln einer(s) vorgegebenen Eingange(signals) verwendet.
Die(Das) verschlüsselte Ausgabe(signal) wird dann verwendet,
um Bits in der Hash-Tabelle zu adressieren. Damit die
Bits in der Hash-Tabelle nicht verwendet werden können, um
die Kennwörter in der Gruppe der nicht akzeptablen Kennwörter
zu bestimmen, wird die Verschlüsselung in Übereinstimmung
mit einer kryptographischen Technik durchgeführt, wie
z. B. dem Datenverschlüsselungsstandard (Data Encryption
Standard), die sicher gegen einen Klartextangriff (plaintext
attack) ist.
Weitere Vorteile der Erfindung und vorteilhafte Ausgestaltungen
der Erfindung sind aus den Unteransprüchen und der
nachfolgenden Beschreibung von Ausführungsformen in Verbindung
mit den Zeichnungen ersichtlich. Es zeigt
Fig. 1 ein Blockdiagramm einer Vorrichtung gemäß
der vorliegenden Erfindung,
Fig. 2 ein Detail einer Hash-Tabelle gemäß Fig. 1,
Fig. 3 die Bildung der Werte V1-6,
Fig. 4-7 die Normalisierung eines Kennwortes und die
Bildung der Schlüssel K1-6,
Fig. 8 die Bildung der Ausgaben H1-6,
Fig. 9 die Bildung der Ausgaben h1-12,
Fig. 10 die Bildung von Bitadressen und
Fig. 11 Bits, die in der Hash-Tabelle gesetzt sind.
Bekannte Kennwortsicherheitssysteme vergleichen Kennwörter
mit einer Nachsuchetabelle. Dieser Betrieb erfordert das,
was allgemein als Mitgliedschaftstester bekannt ist. Mitgliedschaftstester
fallen unter eine von zwei allgemeinen
Kategorien: exakte oder Näherungs-Tester. Von einem exakten
Tester wird angenommen, daß er ohne Fehler arbeitet. Er
wird bevorzugt, wenn es keine Begrenzungen bezüglich des
Einsatzes von Systemquellen bzw. Systemelementen gibt. Bei
einem Näherungs-Mitgliedschaftstester nimmt man einen gewissen
Grad von "zugelassenen Fehlern" als Nachteil für den
wesentlich verminderten Einsatz von Systemelementen an.
Suchen (hashing) ist eine bekannte Technik, die angewendet
werden kann, um Näherungs-Mitgliedschaftstester aufzubauen.
Bei dieser Technik speichert eine "Hash-Tabelle", im nachfolgenden auch "Suchtabelle" genannt, eine
komprimierte Wiedergabe der Mitglieder des
Satzes, der getestet werden soll. Jeder Eintrag in dem Satz
(wiedergegeben durch einen numerischen Schlüssel, der z. B.
der ASCII-Code für eine Zeichenfolge ist), wird einer arithmetischen
Transformation (bekannt als "Hash-Funktion", im nachfolgenden auch "Suchfunktion" genannt), unterzogen.
Der Funktionsausgang gibt eine Hash-Tabellenadresse
an. Ein Bit wird (z. B. auf eine logische 1 angehoben) in
der Suchtabelle eingeschaltet, wenn es adressiert wird. Zu
beachten ist, daß die Voraussetzung für eine gute Transformationsfunktion
darin besteht, daß sie ihre Ausgaben bzw.
Ausgangswerte so gleichmäßig wie möglich über die gesamte
Tabelle verteilt. Obwohl die Transformationsfunktionsausgangsverteilung
nicht an irgendein Muster gebunden ist, ist
für gewöhnlich wünschenswert, daß eine Zufallsausgabe
auftritt. Wenn alle Mitglieder des Satzes in der Tabelle
untergebracht worden sind, wird ein Kandidateneintrag (d. h.
ein Eintrag der in dem Satz sein kann oder nicht sein kann,
der von dem Mitgliedschaftstest bestimmt werden soll) der
Suchfunktion (arithmetische Transformation) unterzogen. Als
nächstes wird die sich ergebende Tabellenadresse überprüft.
Wenn das Bit bei dieser Adresse gesetzt ist, wird der
Kandidateneintrag als Mitglied des Satzes erachtet,
andernfalls ist er kein Mitglied.
Wenn das Suchen (hashing) eingesetzt wird, um einen
Näherungs-Mitgliedschaftstester zu schaffen, ist die
Zuordnung zwischen Einträgen und Adressen der Suchtabelle
nicht eindeutig. Das heißt, daß die Suchfunktion nicht jeden
möglichen Eintrag einer eindeutig verbundenen
Tabellenadresse zuordnet. Dieses nicht eindeutige Zuordnen
wird eingesetzt, da die Anzahl der möglichen Einträge viel
größer sein kann, als die Anzahl der Einträge in dem Satz,
der getestet werden soll. Man betrachte z. B. einen
Mitgliedschaftstester, der als Buchstabierungsprüfer
eingesetzt wird. Der Mitgliedschaftstester bestimmt, ob ein
Wort, daß buchstabierüberprüft wird, in einem Wörterbuch
mit richtig buchstabierten Wörtern auftritt. Die Anzahl der
möglichen Textstrings bzw. Zeichenfolgen, die eine Länge von
20 Buchstaben bzw. Zeichen oder weniger hat, ist
offensichtlich viel größer als die Anzahl der Wörter, die
in irgendeinem Wörterbuch aufgelistet sind. Bei einem nicht
eindeutigen Zuordnen kann die Anzahl der Bits in der
Suchtabelle signifikant geringer sein, als die Anzahl der
möglichen Einträge, was Speichererfordernisse reduziert. Im
Ergebnis können jedoch zwei oder mehrere unterschiedliche
Einträge die gleiche Tabellenadresse "suchen", d. h., daß
sie den gleichen Suchfunktionsausgang ergeben. Wenn so
etwas auftritt, wird es allgemein als "Kollision"
bezeichnet.
Zum Beispiel wird bei einem Näherungs-Mitgliedschaftstester, eine
Suchfunktion verwendet, welche bezüglich der mittleren vier
Zeichen der Einträge arbeitet, die durch Zeichenfolgen mit
8 Zeichen angegeben werden, wenn also zwei
Zeichenfolgen die gleichen mittleren vier Zeichen aufweisen
(z. B. XXWORDOO und OOWORDXX), wird eine Kollision
auftreten.
Kollisionen in Näherungs-Mitgliedschaftstestern erzeugen
einen gewissen Grad von "bekannten" oder "zulässigen"
Fehlern in dem Mitgliedschaftstest. Man betrachte das oben
angegebene Beispiel eines Buchstabierüberprüfers. In diesem
Fall resultiert eine Kollision zwischen einem falsch
buchstabierten Wort und einem richtig buchstabierten Wort
in einer Anzeige, daß das falsch buchstabierte Wort korrekt
buchstabiert ist, was offensichtlich ein Fehler ist.
Carter und andere beschreiben in "Exact and Approximate
Membership Testers", Proceedings of 10th Annual ACM
Symposium on Theory of Computing (STOC), May, 1978, auf
Seite 62 die Möglichkeit solcher Fehler bei Näherungs-
Mitgliedschaftstestern für einen Wortschatz V. Der Tester
hat einen zugeordneten Vorprozessor, der V verarbeitet und
eine komprimierte Wiedergabe eines Übersatzes W von V
erzeugt. Der Eingang am Tester entspricht der komprimierten
Wiedergabe W und einem möglichen Wort s. Der
Mitgliedschaftstester schätzt ab, ob s in V ist, indem
tatsächlich berechnet wird, ob s in W ist. Unter der
Annahme, daß alle Fehler gleich wahrscheinlich sind,
beträgt die nicht festgestellte Fehlerwahrscheinlichkeit (w-
v)/(u-v), wobei w die Größe bzw. der Wert von W ist, v die
Größe von V und u die Anzahl der möglichen Wörter ist. Bei
diesem Tester versuchten die Autoren, eine nicht
festgestellte Fehlerwahrscheinlichkeit von 2-r auf der
Basis der Zahl v von Wortschatzwörtern und einem
Zuverlässigkeitsexponenten r für eine universelle Größe u
zu erreichen.
Bei der vorliegenden Erfindung wird, um den Betrag von
Systemelementen zu reduzieren, die zum Speichern der
Kennwortnachschlagetabelle erforderlich sind, ein
Näherungs-Mitgliedschaftstester eingesetzt, um zu
bestimmen, ob ein Benutzerkennwort einem der nicht
annehmbaren Kennwörter in der Nachschlagetabelle
entspricht. Normalerweise ist die Verwendung eines
Näherungs-Mitgliedschaftstesters mit "zulässigen Fehlern"
verbunden. Gemäß der vorliegenden Erfindung verschlechtern
die Fehler des Näherungs-Mitgliedschaftstesters nicht die
Sicherheit des Systems, wenn der Näherungs-
Mitgliedschaftstester fehlerhafterweise angibt, daß ein
Benutzerkennwort in der Nachschlagetabelle ist, ist das
Ergebnis einfach eine Unbequemlichkeit für den Benutzer,
der dann ein anderes Kennwort wählen muß. Der Näherungs-
Mitgliedschaftstester wird jedoch niemals fehlerhaft
angeben, daß ein Benutzerkennwort nicht in der
Nachschlagetabelle ist. Deshalb werden unter keinen
Umständen unannehmbare Kennwörter, die in der
Nachschlagetabelle sind, in dem System verwendet werden.
Der Mitgliedschaftstest wird
durch Suchen (hashing) durchgeführt. Dies bringt den
zusätzlichen Vorteil, daß die Nachschlagetabelle
komprimiert ist und in gewisser Weise verschlüsselt ist.
Der Grad der Verschlüsselung
hängt von der eingesetzten Suchfunktion ab.
Ein besonders sicheres Verfahren zum Suchen der Kennwörter
wird nachfolgend beschrieben. Ein Verschlüsseln der Liste
von nicht annehmbaren Kennwörtern ist vorteilhaft, da ohne
einen Zugriff auf die Liste potentiell unberechtigte
Benutzer des Systems nicht wissen, welche Kennwörter als
"unsicher" erachtet worden sind, und somit Zeit damit
verbrauchen, offensichtliche Kennworte, die nicht im
Einsatz sind, zu erraten. Zu beachten ist, daß das
Verschlüsselungserfordernis die Möglichkeit eines einfachen
Wiedergebrauchens des buchstabierten Wörterbuchs (oder
irgendeiner anderen Datei, die schon auf dem System ist)
als Nachschlagetabelle ausschließt. Eine Schwierigkeit, die
das verursachen kann, besteht darin, daß eine ausführliche
Kennwortnachschlagetabelle ungefähr die gleiche Größe haben
würde wie eine buchstabierende Wortschatzdatei und damit
umfangreiche Systemelemente benötigen würde.
Mittels des Suchens wird die Nachschlagetabelle
komprimiert, so daß sie eine vernünftige Größe aufweist.
In einer vereinfachten Ausführungsform
werden dem System ein oder mehrere
ungültige (nicht sichere) Kennwörter (z. B. gemäß dem oben
angegebenen Beispiel das Wort XXWORDOO) eingegeben. Danach
werden numerische Wiedergaben der Kennwörter (z. B.
abgeleitet von ASCII Äquivalenten für die Kennwörter) als
ein Schlüssel von Ki einer einzelnen Suchfunktion h(K)
zugeführt. Die Ausgabe bzw. der Ausgang der Suchfunktion
gibt eine Adresse h(Ki) in einer Suchtabelle an und ein
Bit bei dieser Adresse kann damit eingeschaltet werden.
Wenn einmal ein Bit eingeschaltet worden ist, verbleibt es
im eingeschalteten Zustand. Ein eingeschaltetes Bit zeigt
an, daß ein oder mehrere Kennwörter nicht länger für den
Gebrauch erhältlich sind. Das liegt daran, daß jedes
Kennwort, daß eine Tabellenadresse eines eingeschalteten
Bits (z. B. bezüglich der obenstehenden Diskussion OOWORDXX)
erzeugt, als nicht gültig zurückgewiesen wird. Jedes andere
Kennwort wird als gültig erklärt. Die Suchtabellengröße und
damit die Wahrscheinlichkeit von Kollisionen wird insgesamt
durch das Ermessen des Programmierers ausgewählt.
Eine Ausführungsform der Erfindung ist in
Fig. 1 dargestellt. Bei dieser Ausführungsform treten weniger
Kollisionen auf, was eine größere Anzahl von Kennwörtern
ergibt, die von dem Tester als gültig erachtet werden. Zwei
Probenkennwörter, ein ungültiges Kennwort XXWORDOO und
gültiges Kennwort OOWORDXX werden gezeigt, wobei sie in das
System am Tastatureingang 12 eingegeben werden und von
einem Wandler 14 in eine Zahl umgewandelt werden. Bei
dieser Ausführungsform wird eine ASCII-Zahl entsprechend
den Eingangskennwörtern von dem Wandler 14 an drei
Hash-Funktionseinheiten 16, 18 und 20 ausgegeben. Es wird
angenommen, daß die Suchfunktionen unterschiedlich sind.
Die Anzahl der eingesetzten Suchfunktionseinheiten ist eine
willkürliche Designwahl.
Um die Tabelle mit komprimierten Wiedergaben der ungültigen
Kennwörter zu laden, werden die Ausgaben
der Suchfunktionseinheiten (hash function unit) z. B. einer
26-Bit-Tabelle 22 zugeführt, um jeweilige Bits
zu setzen. In der Fig. 1 werden, wenn das ungültige
Kennwort "XXWORDOO" jeder der drei Suchfunktionen zugeführt
wird, jeweilige Adressen A, J und Z von den jeweiligen
Suchfunktionseinheiten ausgegeben. Als Ergebnis werden die
Bits A, J und Z in der Suchtabelle, die in Fig. 2 gezeigt
wird, gesetzt. Weitere ungültige Kennwörter können
durch Wiederholen dieser Schritte hinzugefügt werden. Zu
beachten ist, daß während dieses Vorgangs zwei ungültige
Kennwörter eine Kollision haben können, d. h., daß es
passieren kann, daß die Ausgaben der Suchfunktionseinheiten
ein oder mehrere gemeinsame Bits in der Tabelle
adressieren. Wenn dies auftritt, ist es nicht notwendig,
daß sie gesetzt werden, um das spätere, ungültige Kennwort
der Tabelle hinzuzufügen, da die gemeinsamen Bits bereits
gesetzt worden sind.
Danach können Kandidatenkennwörter, die von einem Benutzer
vorgeschlagen werden, mittels Vergleich mit der Suchtabelle
überprüft werden. Wenn, und zwar dann, wenn ein
Kandidatenkennwort verarbeitet wird, die Ausgaben der drei
Suchfunktionseinheiten 16, 18 und 20 in der Tabelle
Bits adressieren, die in einer beliebigen Reihenfolge
gesetzt sind (in dem einfachen Beispiel gemäß Fig. 1
die Bits A, J und Z), und auch dann, wenn dies auf einer
oder mehreren Kollisionen beruht, zeigt der Vergleicher 24
(der mit der Suchtabelle und den Suchfunktionseinheiten
verbunden ist) eine "Übereinstimmung" an. Dies teilt dem
Benutzer mit, daß das Kandidatenkennwort nicht gültig ist,
d. h. nicht sicher.
Somit wird jedes Kandidatenkennwort, das dem System
zugeführt wird, als gültiges Kennwort betrachtet, wenn es
zumindest eine Suchfunktionsausgabe aufweist, die eine
andere Adresse als die eingeschalteten Adressen (in dem
einfachen Beispiel gemäß Fig. 1 die Bits A, J und Z)
anzeigt. Anders ausgedrückt, wenn zumindest ein Bit, das
noch nicht in der Tabelle gesetzt worden ist,
adressiert wird, wird das Kennwort als sicher/gültig
angezeigt und der Benutzer kann es für den sicheren
Gebrauch als ein Kennwort verwenden. Wenn jedoch keine
neuen Bits adressiert werden, dann wird eine
"Übereinstimmung" (durch den Vergleicher 24) zwischen dem
Kandidatenkennwort und den Suchtabelleninhalten erklärt.
Wenn eine Übereinstimmung erklärt wird, wird das
Kandidatenkennwort dem Benutzer als ungültig angezeigt, und
ein neues Kandidatenkennwort muß ausgewählt und getestet
werden.
Wenn z. B. ein vorgeschlagenes Kennwort "OOWORDXX"
verarbeitet wird, adressieren die Ausgänge der drei
Suchfunktionen 16, 18 und 20 die drei Bits A, H und K in
der Suchtabelle. Obwohl Bit A durch die Eingabe des
ungültigen Kennwortes "XXWORDOO" in der Suchtabelle
gesetzt worden ist, wird das Kennwort "OOWORDXX" als
gültig erachtet, da die Bits H und K nicht gesetzt
worden sind. Dies erläutert den Vorteil eines verbesserten
Systems, das mehrere Suchfunktionen verwendet, d. h., daß es
mit drei Suchfunktionen möglich ist, zwischen den zwei
Probenkennwörtern durch Vergleichen von
Bitadressenkombinationen (AJZ und AHK) zu unterscheiden,
wohingegen ein System mit nur einer Suchfunktion eine nicht
unterscheidbare Kollision mit den identischen Adressen (A,
A) erzeugt hätte. Dieses Merkmal ermöglicht das Auffinden
einer Gültigkeit einer größeren Anzahl von sicheren
Kandidatenkennwörtern.
Ein Benutzer wählt ein Kandidatenkennwort aus, wobei das
Kennwort der Gültigkeitsüberprüfungseinheit gemäß der
Erfindung zugeführt wird und das Kandidatenkennwort als
gültig/ungültig dem Benutzer angezeigt wird. Um die Tabelle
mit ungültigen Kennwörtern zu initialisieren, kann
irgendeine der nachfolgenden drei Optionen implementiert
werden. Gemäß einer ersten Option kann ein Lieferant eine
Suchtabelle mit ungültigen (nicht sicheren oder allgemeinen
Worten) zuvor laden. Für Sicherheitszwecke wird kein
externer Zugriff auf die Tabelle gewährt und die zuvor
geladene Tabelle ändert sich nicht. Kandidatenkennwörter
werden zurückgewiesen, wenn Übereinstimmung festgestellt
wird. Mehr als ein Benutzer können jedoch das gleiche
gültige/sichere Kennwort (das nicht in der Tabelle ist)
auswählen und benützen, da die Tabelle niemals aktualisiert
wird.
Bei einer zweiten Option kann einem Sicherheitsbeauftragten
erlaubt werden, ungültige Kennwörter der Tabelle (z. B. gemeinsame
Wörter in einem bestimmten Feld des Geschäfts des
Benutzers) hinzuzufügen, wobei aber die Tabelle für andere
als diese Veränderungen bzw. Modifikationen nicht geändert
wird. Deshalb kann mehr als ein Benutzer immer noch das
gleiche, gültige Kennwort auswählen und benutzen.
Die soeben beschriebenen zwei Verfahren sind auf einige
Personen angewiesen, um eine ausführliche Liste von offensichtlichen
Kennwörtern zu erzeugen. Demzufolge besteht
eine große Wahrscheinlichkeit, daß einige offensichtliche
Kennwörter aus der Tabelle weggelassen werden. Im
schlechtesten Fall können viele Benutzer ein oder mehrere
dieser weggelassenen, offensichtlichen Kennwörter benutzen,
was die Sicherheit vermindert.
Um diese Möglichkeit zu reduzieren, wird eine dritte Option
bevorzugt. Bei dieser Option wird jedes Kennwort, das als
gültig erachtet wird, der Suchtabelle hinzugefügt, was bewirkt,
daß das Kennwort für eine zukünftige Auswahl ungültig
ist. Deshalb kann nicht mehr als ein Benutzer das gleiche
Kennwort auswählen. Zusätzlich wird, wie oben beschrieben,
einem Sicherheitsbeauftragten erlaubt, ungültige Wörter
der Tabelle hinzuzufügen.
Bei dieser dritten Option, obwohl nur ein Benutzer ein gegebenes
Kennwort benutzen kann, sind einige Benutzer in die
Lage versetzt, (unterschiedliche) offensichtliche Kennwörter
zu benutzen, wenn die Tabelle nicht anfänglich alle offensichtlichen
Kennwörter (auch mit den offensichtlichen
Wörtern, die von einem gewissenhaften Sicherheitsbeauftragten
hinzugefügt werden) enthält. Aus diesem Grund kann es
von Vorteil sein, periodisch alle Benutzer zu zwingen, ihre
Kennwörter zu ändern. Um einen Benutzer zur Änderung zu
zwingen, kann ihn das System einfach davon abhalten, irgendwelche
Aktivitäten auf dem System durchzuführen, bis er
ein annehmbares, neues Kennwort vorschlägt. Aus Sicherheitsgründen
muß dies ausgeführt werden, nachdem der Benutzer
bereits mit seinem alten Kennwort in das System eingedrungen
ist. Wenn die Benutzer zur Änderung angehalten
sind, dürfen die Benutzer ihre Kennwörter nicht wieder benutzen,
da diese der Tabelle hinzugefügt werden, wenn sie
das erste Mal als gültig erachtet worden sind, und deshalb
müssen sie neue, vorher nicht verwendete Kennwörter vorschlagen.
Angenommen, daß einige Benutzer anfänglich offensichtliche
Kennwörter auswählen, die nicht in der Tabelle
sind, dann wird dieser Vorgang schließlich alle offensichtlichen
Kennwörter "aussondern", die aus der Tabelle weggelassen
worden sind und von den Benutzern ausgewählt worden
sind, wodurch ein höherer Grad an Kennwortsicherheit erhalten
wird.
Bei einer weiteren Erweiterung der dritten Option, und zwar
in einem System mit mehreren Computern, verhindert eine
zentrale Suchtabelle, daß der Benutzer das gleiche, gültige
Kennwort auf mehreren Computern auswählt. Dies verhindert,
daß ein lokaler Verstoß ein allgemeiner Verstoß der Sicherheit
wird. Wie oben abgehandelt wurde, ist die Verschlüsselung
der Nachsuchtabelle sehr wichtig für die Sicherheit
des Gesamtsystems. Die Verbesserungen der dritten Option
erhöhen die Wichtigkeit der Verschlüsselung, da bei der
dritten Option die Tabelle ständig aufgefrischt wird und
die Auffrischungen bzw. Updates exakt den Kennwörtern entsprechen,
die kürzlich in Gebrauch genommen worden sind.
Bei einer bevorzugten Ausführungsform der vorliegenden Erfindung,
die besonders effektiv beim Garantieren der Tabellensicherheit
ist, werden kryptographisch sichere Suchfunktionen
eingesetzt. Diese Funktionen beinhalten bevorzugterweise
den bekannten DES-Algorithmus (Data Encryption Standard).
Bei dieser Ausführungsform werden Kandidatenkennwörter
als Teil des Suchbetriebs verschlüsselt. Die Verschlüsselung
wird in Übereinstimmung mit der Gleichung durchgeführt:
H = DES(K,V)
wobei die Ausgabe H, die ein Suchwert (hash value) ist, das
Ergebnis des DES-Algorithmus ist, der mit dem Schlüssel K
auf den Eingangswert V angewendet worden ist. Die jeweiligen
Längen des Schlüssels K, der Eingangswert V und die Ausgabe
H sind bei diesem Beispiel auf acht Byte ausgewählt
und unterliegen den Einschränkungen bzw. Bedingungen des
DES.
Die Verschlüsselung wird wie folgt durchgeführt: der
Schlüssel K wird aus dem Kennwort abgeleitet und wird verwendet,
um einen vorgegebenen Eingangswert V zu verschlüsseln.
Da der Schlüssel aus dem Kennwort erzeugt wird und
bei jeder Verschlüsselung geändert wird, kann keine Information
über ein Kennwort auf praktische Art und Weise aus
dem verschlüsselten Suchwert in der Tabelle bestimmt werden.
Das liegt daran, daß es bei Verschlüsselungsalgorithmen,
die mit DES konsistent sind, selbst dann, wenn ein Angreifer
die Ausgabe H und die Eingabe V des Verschlüsselungsprozesses
kennt, es nicht möglich ist, den Schlüssel
K, der verwendet wurde, zu bestimmen. Ein Verschlüsselungsalgorithmus,
der diese Erfordernisse erfüllen kann, ist sicher
gegen einen bekannten Klartextangriff.
Bei einer besonderen Ausführungsform wird das Kennwort dazu
verwendet, sechs Schlüssel K1-6 zu erzeugen, die sechs Eingangswerte
V1-6 verschlüsseln, um sechs Ausgaben H1-6 zu
erzeugen.
Mit Bezug auf Fig. 3 werden die sechs Eingangswerte V1-6
durch Selektieren dreier willkürlicher 16-Zeichen-Ketten
erzeugt, die aufgegliedert sind. Gemäß einem Beispiel ist
V₁ "JerroldS" und die Bytes von V₁ sind: das Byte für "J",
gefolgt von dem Byte für "e" usw. V₂ "Leichter" usw. Bei
diesem Beispiel sind sechs Werte V1-6 für den Gebrauch beim
Verschlüsselungsprozeß erzeugt worden. Die Erfindung ist
jedoch nicht auf eine solche Zahl beschränkt.
Vor dem Erzeugen der sechs Schlüssel K1-6 muß die Länge jedes
Kennwortes normalisiert werden. Mit Bezug auf Fig. 4
kann man sich zum Beispiel überlegen, daß das (offensichtliche
und deshalb ungültige) Kennwort P = "Susan", das eine
Länge von fünf Byte hat (d. h. fünf Zeichen bzw. character),
in der Tabelle untergebracht werden soll. Zuerst wird
ein Zeichen (Fig. 5), das die Länge des Kennwortes ("5")
angibt, dem Kennwort vorangehängt, wodurch ein 6-Zeichen-
Kennwort P′ = "5Susan" gebildet wird.
Als nächstes (siehe Fig. 6) wird, wenn die Länge von
P′ gerade ist, ein Zeichen wie z. B. "?" dem Kennwort angehängt,
wodurch ein 7-Zeichen-Kennwort P′′ gebildet wird.
Schließlich (siehe Fig. 7) wird das Kennwort P′′ an sich
selbst so oft angehängt, bis seine Länge 48 Byte erreicht
oder überschreitet. Die ersten 48 Byte sind in sechs 8-
Byte-Segmente unterteilt, um sechs Schlüssel K1-6 zu erreichen:
die ersten acht Bytes sind K₁, die nächsten acht sind
K₂ usw. (wodurch die Länge des Kennwortes P′′ als ungerade
erzwungen wird und zumindest eine gegebene Länge - z. B.
sechs Byte - stellt Unterscheidbarkeit der Schlüssel sicher).
Die sechs Schlüssel K1-6 und die sechs vorgegebenen Eingangswerte
V1-6 werden dann sechs separaten DES-Verschlüsselungen
eingegeben. Genauer gesagt (siehe Fig. 8), werden
sechs Ausgänge H1-6 durch Anwenden der herkömmlichen DES-
Funktion auf die vorhergehend berechnenden Schlüssel K1-6
und die vorgegebenen Werte V1-6 erzeugt. In Fig. 9 werden
die sechs Ausgänge H1-6 in zwölf 32-Bit-Werte h1-12 aufgespalten.
Schließlich (Fig. 10) werden Bitadressen als Modul
der aufgespaltenen Werte h1-12 mit der Länge N der
Suchtabelle berechnet. Einige oder alle Bitadressen (z. B.
die erste, die zweite und die sechste und elfte) können
dann verwendet werden, um dann Bits in der Suchtabelle zu
setzen. Bei bevorzugten Ausführungsformen werden alle Bitadressen
verwendet. Das Kennwort "Susan" z. B. ergibt die
Bits 1, 2, 6 und 11, die in der Suchtabelle, welche in Fig. 11
angegeben ist, eingeschaltet werden. Jedes andere
Kennwort, das diese Bits einzuschalten versucht, wird als
nicht gültig/nicht sicher zurückgewiesen werden.
Eine Eigenschaft der oben beschriebenen Ausführungsform besteht
darin, daß die Liste der Kennwörter, die in die Tabelle
eingegeben worden sind, aus der Tabelle alleine nicht
rekonstruiert werden können. Somit kann die Tabelle ohne
der Notwendigkeit einer speziellen Sicherheit transportiert
werden. Eine zweite Eigenschaft besteht darin, daß die Änderungen,
die in der Tabelle als Folge des Hinzuaddierens
eines einzelnen Kennwortes gemacht worden sind, eine Bestimmung
des Kennwortes nicht ermöglichen. Somit können die
Änderungen ohne die Notwendigkeit von zusätzlichen Sicherheitsvorkehrungen
transportiert werden.
Claims (27)
1. Verfahren zum computergesteuerten Überprüfen der Annehmbarkeit
eines von einem Benutzer eines computergesteuerten Sicherheitssystems
vorgeschlagenen Kennworts, mit den folgenden Verfahrensschritten:
Vorsehen einer im Sicherheitssystem gespeicherten Tabelle von Indikatoren,
Vorsehen einer Gruppe von nicht annehmbaren, im Sicherheitssystem gespeicherten Kennwörtern,
Vorsehen einer Zuordnungs(mapping)-Funktion, die den Kennwörtern Indikatoren zuordnet, indem jedes Kennwort einer Hash-Funktion unterzogen wird, wobei die Zuordnungsfunktion so ausgebildet ist, daß mehr als ein Kennwort einem Indikator zugeordnet sein kann,
Durchführen der Zuordnungsfunktion bei jedem Kennwort aus der Gruppe der nicht annehmbaren Kennwörter und Setzen der Indikatoren, die jedem der nicht annehmbaren Kennwörter zugeordnet sind,
automatisches Durchführen der Zuordnungsfunktion bei dem vom Benutzer vorgeschlagenen Kennwort, um Indikatoren für das vorgeschlagene Kennwort zu erhalten, und Überprüfen, ob die Indikatoren, die dem vorgeschlagenen Kennwort zugeordnet sind, gesetzt sind,
wobei ohne Fehler im Sicherheitssystem festgestellt werden kann, daß das vorgeschlagene Kennwort nicht in der Gruppe von nicht annehmbaren Kennwörtern ist und ihm deshalb Privilegien in dem Sicherheitssystem zugeordnet werden können.
Vorsehen einer im Sicherheitssystem gespeicherten Tabelle von Indikatoren,
Vorsehen einer Gruppe von nicht annehmbaren, im Sicherheitssystem gespeicherten Kennwörtern,
Vorsehen einer Zuordnungs(mapping)-Funktion, die den Kennwörtern Indikatoren zuordnet, indem jedes Kennwort einer Hash-Funktion unterzogen wird, wobei die Zuordnungsfunktion so ausgebildet ist, daß mehr als ein Kennwort einem Indikator zugeordnet sein kann,
Durchführen der Zuordnungsfunktion bei jedem Kennwort aus der Gruppe der nicht annehmbaren Kennwörter und Setzen der Indikatoren, die jedem der nicht annehmbaren Kennwörter zugeordnet sind,
automatisches Durchführen der Zuordnungsfunktion bei dem vom Benutzer vorgeschlagenen Kennwort, um Indikatoren für das vorgeschlagene Kennwort zu erhalten, und Überprüfen, ob die Indikatoren, die dem vorgeschlagenen Kennwort zugeordnet sind, gesetzt sind,
wobei ohne Fehler im Sicherheitssystem festgestellt werden kann, daß das vorgeschlagene Kennwort nicht in der Gruppe von nicht annehmbaren Kennwörtern ist und ihm deshalb Privilegien in dem Sicherheitssystem zugeordnet werden können.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß ein Benutzer
weitere, nicht annehmbare Kennwörter der Gruppe von nicht annehmbaren
Kennwörtern hinzufügen kann und dadurch automatisch variiert
wird, welche der Indikatoren gesetzt sind.
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß,
wenn das vorgeschlagene Kennwort als annehmbar festgestellt worden ist,
das vorgeschlagene Kennwort der Gruppe von nicht annehmbaren Kennwörtern
hinzugefügt und der dem vorgeschlagenen Kennwort zugeordnete Indikator
so gesetzt wird, daß das vorgeschlagene Kennwort nicht annehmbar
sein wird, wenn es nachfolgend vorgeschlagen wird.
4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet,
daß zumindest teilweise die Privilegierung eines vorher privilegierten
Kennwortes aufgehoben wird, so daß der Benutzer des vorher
privilegierten Kennwortes gezwungen wird, ein neues Kennwort nach einer
vorgegebenen Zeitdauer der Verwendung vorzuschlagen.
5. Verfahren nach Anspruch 1, bei dem die Annehmbarkeit von Kennwörtern,
die von Benutzern einer Vielzahl von Sicherheitssystemen vorgeschlagen
wurden, welche durch ein Kommunikationssystem miteinander
verbunden sind, überprüft werden kann,
wobei jedes der Sicherheitssysteme die Annehmbarkeit der vorgeschlagenen
Kennwörter entsprechend dem Verfahren nach Anspruch 1 überprüft,
und, wenn ein bestimmtes Sicherheitssystem feststellt, daß ein vorgeschlagenes
Kennwort annehmbar ist, das bestimmte Sicherheitssystem
das vorgeschlagene Kennwort der Gruppe von nicht annehmbaren Kennwörtern
hinzufügt und den dem vorgeschlagenen Kennwort zugeordneten Indikator
setzt, wobei nur für eines der Sicherheitssysteme ein gegebenes
Kennwort annehmbar ist und diesem Privilegien zugeordnet werden können.
6. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Zuordnungsfunktion
einen Verschlüsselungsalgorithmus aufweist.
7. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Indikatoren
Bits in einer Hash-Tabelle sind.
8. Verfahren nach Anspruch 7, dadurch gekennzeichnet, daß die Hash-Funktion
eine Normalisierung der Zeichenfolge eines Kennwortes auf ein
Standardformat aufweist, um eine normalisierte Zeichenfolge zu erzeugen.
9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, daß das Standardformat
eine vorbestimmte Länge hat.
10. Verfahren nach Anspruch 8 oder 9, dadurch gekennzeichnet, daß die
Normalisierung das Anhängen eines Zeichens, das der Länge der Zeichenfolge
zugeordnet ist, an die Zeichenfolge umfaßt, wodurch eine modifizierte
Zeichenfolge erzeugt wird.
11. Verfahren nach Anspruch 10, dadurch gekennzeichnet, daß die Normalisierung
das wahlweise Hinzufügen eines Zeichens zu der modifizierten
Zeichenfolge umfassen kann, wodurch eine zweifach modifizierte Zeichenfolge
mit ungerader Länge gebildet wird.
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, daß die Normalisierung
weiterhin aufweist: das wiederholte Anhängen der zweifach
modifizierten Zeichenfolge an sich selbst, bis eine gegebene Länge
überschritten wird, und anschließendes Abschneiden auf die vorbestimmte
Länge, wodurch die normalisierte Zeichenfolge erzeugt wird.
13. Verfahren nach einem der Ansprüche 8 bis 12, dadurch gekennzeichnet,
daß die Hash-Funktion weiterhin aufweist: das Unterteilen der
normalisierten Zeichenfolge in Stücke, das Verschlüsseln einer bestimmten
Eingabe, die mindestens eines oder mehrere der Stücke als Verschlüsselungsschlüssel
verwendet, und das Adressieren von Bits in der Hash-Tabelle
mit der verschlüsselten Ausgabe.
14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, daß die Verschlüsselung
in Übereinstimmung mit einer kryptographischen Technik
durchgeführt wird, die gegen einen Entschlüsselungsversuch mit einem
bekannten Klartext sicher ist, wobei Kennwörter, die der Gruppe von
nicht annehmbaren Kennwörtern hinzugefügt werden, nicht aus Änderungen
der Hash-Tabelle bestimmt werden können.
15. Verfahren nach Anspruch 14, dadurch gekennzeichnet, daß die kryptographische
Technik der Data Encryption Standard (DES) ist.
16. Verfahren nach Anspruch 13, dadurch gekennzeichnet, daß der Verschlüsselungsschritt
N mal wiederholt wird, um N verschlüsselte Ausgaben
zu erzeugen,
daß die N verschlüsselten Ausgaben aufgespalten werden, um Endausgänge zu erzeugen, und
daß eine oder mehrere Bitadressen in der Hash-Tabelle aus einem oder mehreren Endausgaben als Modulo der Endausgabe mit der Länge der Hash-Tabelle berechnet werden.
daß die N verschlüsselten Ausgaben aufgespalten werden, um Endausgänge zu erzeugen, und
daß eine oder mehrere Bitadressen in der Hash-Tabelle aus einem oder mehreren Endausgaben als Modulo der Endausgabe mit der Länge der Hash-Tabelle berechnet werden.
17. Vorrichtung zum computergesteuerten Überprüfen der Annehmbarkeit
eines von einem Benutzer eines computergesteuerten Sicherheitssystems
vorgeschlagenen Kennworts, mit dem der Benutzer Zugang zum Sicherheitssystem
haben möchte, mit:
einer Tastatur (12) zur Eingabe des von dem Benutzer vorgeschlagenen Kennworts,
einer im Sicherheitssystem gespeicherten Gruppe von nicht annehmbaren Kennwörtern,
einer im Sicherheitssystem gespeicherten Tabelle (22) von Indikatoren, die der Gruppe von nicht annehmbaren Kennwörtern zugeordnet sind,
einer Zuordnungs(mapping)-Einrichtung (16, 18, 20), die den Kennwörtern Indikatoren zuordnet, wobei die Zuordnung so ist, daß mehr als ein Kennwort einem Indikator zugeordnet werden kann,
einer Steuerungseinrichtung (26), die die Zuordnung von jedem nicht annehmbaren Kennwort aus der gespeicherten Gruppe von nicht annehmbaren Kennwörtern durch die Zuordnungseinrichtung (16, 18, 20) initialisiert und die Indikatoren der gespeicherten Tabelle (22) setzt, die jedem der nicht annehmbaren Kennwörter zugeordnet sind, sowie die automatisch die Zuordnung von dem vom Benutzer vorgeschlagenen Kennwort durch die Zuordnungseinrichtung (16, 18, 20) veranlaßt und den dem vorgeschlagenen Kennwort zugeordneten Indikator setzt, und
einer Vergleichseinrichtung (24), die überprüft, ob der Indikator, der dem vorgeschlagenen Kennwort zugeordnet ist, gesetzt ist, wodurch ohne Fehler im Sicherheitssystem festgestellt werden kann, daß das vorgeschlagene Kennwort nicht in der Gruppe von nicht annehmbaren Kennwörtern ist und ihm deshalb Privilegien in dem Sicherheitssystem zugeordnet werden können.
einer Tastatur (12) zur Eingabe des von dem Benutzer vorgeschlagenen Kennworts,
einer im Sicherheitssystem gespeicherten Gruppe von nicht annehmbaren Kennwörtern,
einer im Sicherheitssystem gespeicherten Tabelle (22) von Indikatoren, die der Gruppe von nicht annehmbaren Kennwörtern zugeordnet sind,
einer Zuordnungs(mapping)-Einrichtung (16, 18, 20), die den Kennwörtern Indikatoren zuordnet, wobei die Zuordnung so ist, daß mehr als ein Kennwort einem Indikator zugeordnet werden kann,
einer Steuerungseinrichtung (26), die die Zuordnung von jedem nicht annehmbaren Kennwort aus der gespeicherten Gruppe von nicht annehmbaren Kennwörtern durch die Zuordnungseinrichtung (16, 18, 20) initialisiert und die Indikatoren der gespeicherten Tabelle (22) setzt, die jedem der nicht annehmbaren Kennwörter zugeordnet sind, sowie die automatisch die Zuordnung von dem vom Benutzer vorgeschlagenen Kennwort durch die Zuordnungseinrichtung (16, 18, 20) veranlaßt und den dem vorgeschlagenen Kennwort zugeordneten Indikator setzt, und
einer Vergleichseinrichtung (24), die überprüft, ob der Indikator, der dem vorgeschlagenen Kennwort zugeordnet ist, gesetzt ist, wodurch ohne Fehler im Sicherheitssystem festgestellt werden kann, daß das vorgeschlagene Kennwort nicht in der Gruppe von nicht annehmbaren Kennwörtern ist und ihm deshalb Privilegien in dem Sicherheitssystem zugeordnet werden können.
18. Vorrichtung nach Anspruch 17, dadurch gekennzeichnet, daß ein
Privilegzuordner, der Privilegien in dem Sicherheitssystem dem vorgeschlagenen
Kennwort zuordnet, vorgesehen ist, und daß der Privilegzuordner
von der Vergleichseinrichtung (24) aufgerufen wird, wenn die
Vergleichseinrichtung (24) feststellt, daß das vorgeschlagene Kennwort
nicht in der Gruppe der nicht annehmbaren Kennwörter ist.
19. Vorrichtung nach Anspruch 17, dadurch gekennzeichnet, daß ein
Modifizierer vorgesehen ist, der die gespeicherte Tabelle der Indikatoren
und die gespeicherte Gruppe von nicht annehmbaren Kennwörtern
modifiziert, und daß der Modifizierer von dem Benutzer aufgerufen wird,
um weitere nicht annehmbare Kennwörter der Gruppe hinzuzufügen und
dadurch zu variieren, welcher der Indikatoren gesetzt wird.
20. Vorrichtung nach einem der Ansprüche 17 oder 18, dadurch gekennzeichnet,
daß ein Modifizierer vorgesehen ist, der das vorgeschlagene
Kennwort der Gruppe von nicht annehmbaren Kennwörtern hinzufügt und
den Indikator setzt, der dem vorgeschlagenen Kennwort zugeordnet ist,
und daß der Modifizierer von der Vergleichseinrichtung aufgerufen wird,
wenn die Vergleichseinrichtung feststellt, daß das vorgeschlagene Kennwort
nicht in der Gruppe von nicht annehmbaren Kennwörtern ist, so daß
das vorgeschlagene Kennwort nicht annehmbar sein wird, wenn es nachfolgend
vorgeschlagen wird.
21. Vorrichtung nach einem der Ansprüche 18 bis 20, dadurch gekennzeichnet,
daß der Privilegzuordner zumindest teilweise die Privilegien
eines vorher privilegierten Kennwortes zurücknehmen kann, damit der
Benutzer des vorher privilegierten Kennwortes gezwungen wird, ein neues
Kennwort vorzuschlagen.
22. Vorrichtung nach einem der Ansprüch 17 bis 21, die eingesetzt
wird, um die Annehmbarkeit von Kennwörtern zu überprüfen, die von Benutzern
einer Vielzahl von Sicherheitssystemen vorgeschlagen werden, welche
durch ein Kommunikationssystem miteinander verbunden sind, dadurch
gekennzeichnet,
daß jedes Sicherheitssystem die Vergleichseinrichtung aufrufen kann, um die Annehmbarkeit eines Kennwortes zu überprüfen, das von dem System vorgeschlagen wird, und somit den Modifizierer aufrufen kann, um das vorgeschlagene Kennwort der Gruppe von nicht annehmbaren Kennwörtern hinzuzufügen und die Indikatoren zu setzen, die dem vorgeschlagenen Kennwort zugeordnet sind, wenn die Vergleichseinrichtung feststellt, daß das vorgeschlagene Kennwort nicht in der Gruppe von nicht annehmbaren Kennwörtern ist, wobei ein gegebenes Kennwort nur für ein Sicherheitssystem annehmbar ist, und ihm deshalb Privilegien zugeordnet werden können.
daß jedes Sicherheitssystem die Vergleichseinrichtung aufrufen kann, um die Annehmbarkeit eines Kennwortes zu überprüfen, das von dem System vorgeschlagen wird, und somit den Modifizierer aufrufen kann, um das vorgeschlagene Kennwort der Gruppe von nicht annehmbaren Kennwörtern hinzuzufügen und die Indikatoren zu setzen, die dem vorgeschlagenen Kennwort zugeordnet sind, wenn die Vergleichseinrichtung feststellt, daß das vorgeschlagene Kennwort nicht in der Gruppe von nicht annehmbaren Kennwörtern ist, wobei ein gegebenes Kennwort nur für ein Sicherheitssystem annehmbar ist, und ihm deshalb Privilegien zugeordnet werden können.
23. Vorrichtung nach Anspruch 17, dadurch gekennzeichnet, daß die
gespeicherte Tabelle von Indikatoren eine Hash-Tabelle ist und die
Zuordnungseinrichtung eine Hash-Funktionseinheit aufweist, die eine
Hash-Funktion durchführt, und daß die Hash-Funktionseinheit einen Normalisierer
aufweist, der die Zeichenfolge für ein Kennwort in ein Standardformat
normalisiert.
24. Vorrichtung nach Anspruch 23, dadurch gekennzeichnet, daß der
Normalisierer eine Anhängeeinrichtung aufweist, die der Zeichenfolge
ein Zeichen anhängt, das der Länge der Zeichenfolge zugeordnet ist,
wodurch eine modifizierte Zeichenfolge erzeugt wird.
25. Vorrichtung nach Anspruch 24, dadurch gekennzeichnet, daß die
Anhängeeinrichtung selektiv ein Zeichen an die modifizierte Zeichenfolge
anhängen kann, wodurch eine zweifach modifizierte Zeichenfolge
erzeugt wird, die eine ungerade Länge aufweist.
26. Vorrichtung nach Anspruch 25, dadurch gekennzeichnet, daß der
Normalisierer weiterhin eine Wiederholeinrichtung aufweist, die die
modifizierte oder zweifach modifizierte Zeichenfolge an sich selbst
anhängen kann, bis sie eine gegebene Länge überschreitet, und dann auf
eine vorbestimmte Länge abschneiden kann, wodurch eine normalisierte
Zeichenfolge erzeugt wird.
27. Vorrichtung nach einem der Ansprüche 23 oder 26, dadurch gekennzeichnet,
daß die Hash-Funktionseinheit weiterhin aufweist:
einen Teiler, der die normalisierte Zeichenfolge in Stücke teilt,
eine Verschlüsselungseinrichtung, die eine bestimmte Eingabe verschlüsselt, die mindestens eines oder mehrere der Stücke als Verschlüsselungsschlüssel verwendet, und
einen Adressierer, der Adressen von Bits in der Hash-Tabelle mit der verschlüsselten Ausgabe bildet.
einen Teiler, der die normalisierte Zeichenfolge in Stücke teilt,
eine Verschlüsselungseinrichtung, die eine bestimmte Eingabe verschlüsselt, die mindestens eines oder mehrere der Stücke als Verschlüsselungsschlüssel verwendet, und
einen Adressierer, der Adressen von Bits in der Hash-Tabelle mit der verschlüsselten Ausgabe bildet.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/491,431 US5204966A (en) | 1990-03-09 | 1990-03-09 | System for controlling access to a secure system by verifying acceptability of proposed password by using hashing and group of unacceptable passwords |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4107019A1 DE4107019A1 (de) | 1991-09-12 |
DE4107019C2 true DE4107019C2 (de) | 1994-06-16 |
Family
ID=23952194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4107019A Expired - Lifetime DE4107019C2 (de) | 1990-03-09 | 1991-03-05 | Verfahren und Vorrichtung zum computergesteuerten Überprüfen der Annehmbarkeit von Kennwörtern |
Country Status (6)
Country | Link |
---|---|
US (1) | US5204966A (de) |
AU (1) | AU637191B2 (de) |
CA (1) | CA2037071A1 (de) |
DE (1) | DE4107019C2 (de) |
GB (1) | GB2243470A (de) |
NL (1) | NL9100329A (de) |
Families Citing this family (92)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SG46177A1 (en) * | 1989-12-13 | 1998-02-20 | Ibm | Computer system security device |
EP0510244A1 (de) * | 1991-04-22 | 1992-10-28 | Acer Incorporated | Verfahren und Anordnung zum Schutz eines Computers gegen Computerviren |
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
AU4400993A (en) * | 1992-06-12 | 1994-01-04 | Dow Chemical Company, The | Secure front end communication system and method for process control computers |
US5491752A (en) * | 1993-03-18 | 1996-02-13 | Digital Equipment Corporation, Patent Law Group | System for increasing the difficulty of password guessing attacks in a distributed authentication scheme employing authentication tokens |
US5475826A (en) * | 1993-11-19 | 1995-12-12 | Fischer; Addison M. | Method for protecting a volatile file using a single hash |
US5537540A (en) * | 1994-09-30 | 1996-07-16 | Compaq Computer Corporation | Transparent, secure computer virus detection method and apparatus |
US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
US8639625B1 (en) * | 1995-02-13 | 2014-01-28 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
EP0826181A4 (de) * | 1995-04-11 | 2005-02-09 | Kinetech Inc | Identifizierung von daten in einem datenverarbeitungssystem |
US5793951A (en) * | 1996-05-10 | 1998-08-11 | Apple Computer, Inc. | Security and report generation system for networked multimedia workstations |
US5892903A (en) * | 1996-09-12 | 1999-04-06 | Internet Security Systems, Inc. | Method and apparatus for detecting and identifying security vulnerabilities in an open network computer communication system |
US5887131A (en) * | 1996-12-31 | 1999-03-23 | Compaq Computer Corporation | Method for controlling access to a computer system by utilizing an external device containing a hash value representation of a user password |
US5953502A (en) * | 1997-02-13 | 1999-09-14 | Helbig, Sr.; Walter A | Method and apparatus for enhancing computer system security |
US6226629B1 (en) * | 1997-02-28 | 2001-05-01 | Compaq Computer Corporation | Method and apparatus determining and using hash functions and hash values |
US6079021A (en) * | 1997-06-02 | 2000-06-20 | Digital Equipment Corporation | Method and apparatus for strengthening passwords for protection of computer systems |
US6442692B1 (en) | 1998-07-21 | 2002-08-27 | Arkady G. Zilberman | Security method and apparatus employing authentication by keystroke dynamics |
EP1149339A1 (de) | 1998-12-09 | 2001-10-31 | Network Ice Corporation | Verfahren und vorrichtung zur netzwerk- und computersystem- sicherung |
US7346929B1 (en) * | 1999-07-29 | 2008-03-18 | International Business Machines Corporation | Method and apparatus for auditing network security |
US6748544B1 (en) * | 1999-08-19 | 2004-06-08 | International Business Machines Corporation | Discrete, background determination of the adequacy of security features of a computer system |
US6467049B1 (en) * | 1999-10-15 | 2002-10-15 | Cisco Technology, Inc. | Method and apparatus for configuration in multi processing engine computer systems |
DE19952049A1 (de) * | 1999-10-28 | 2001-05-10 | Siemens Ag | Verfahren und Anordnung zur Verifikation eines Sprechers anhand eines Rechners |
US8006243B2 (en) * | 1999-12-07 | 2011-08-23 | International Business Machines Corporation | Method and apparatus for remote installation of network drivers and software |
US6826686B1 (en) * | 2000-04-14 | 2004-11-30 | International Business Machines Corporation | Method and apparatus for secure password transmission and password changes |
WO2001084775A2 (en) * | 2000-04-28 | 2001-11-08 | Internet Security Systems, Inc. | System and method for managing security events on a network |
US7574740B1 (en) | 2000-04-28 | 2009-08-11 | International Business Machines Corporation | Method and system for intrusion detection in a computer network |
EP1277326A2 (de) * | 2000-04-28 | 2003-01-22 | Internet Security Systems, Inc. | Verfahren und vorrichtung zur computersicherheitsinformationverwaltung |
US7162649B1 (en) | 2000-06-30 | 2007-01-09 | Internet Security Systems, Inc. | Method and apparatus for network assessment and authentication |
WO2002017553A2 (en) * | 2000-08-18 | 2002-02-28 | United States Postal Service | Apparatus and methods for the secure transfer of electronic data |
WO2002017262A2 (en) * | 2000-08-21 | 2002-02-28 | United States Postal Services | Delivery point validation system |
US7178166B1 (en) | 2000-09-19 | 2007-02-13 | Internet Security Systems, Inc. | Vulnerability assessment and authentication of a computer by a local scanner |
US9027121B2 (en) * | 2000-10-10 | 2015-05-05 | International Business Machines Corporation | Method and system for creating a record for one or more computer security incidents |
US7146305B2 (en) * | 2000-10-24 | 2006-12-05 | Vcis, Inc. | Analytical virtual machine |
US7130466B2 (en) * | 2000-12-21 | 2006-10-31 | Cobion Ag | System and method for compiling images from a database and comparing the compiled images with known images |
US20020147803A1 (en) * | 2001-01-31 | 2002-10-10 | Dodd Timothy David | Method and system for calculating risk in association with a security audit of a computer network |
US7350078B1 (en) * | 2001-04-26 | 2008-03-25 | Gary Odom | User selection of computer login |
JP2002334017A (ja) * | 2001-05-10 | 2002-11-22 | Fujitsu Ltd | 処理装置、処理装置の管理方法、プログラム、およびシステム |
US7237264B1 (en) | 2001-06-04 | 2007-06-26 | Internet Security Systems, Inc. | System and method for preventing network misuse |
US7480796B2 (en) * | 2001-06-07 | 2009-01-20 | Kwan Sofware Engineering, Inc. | System and method for authenticating data using incompatible digest functions |
US7657419B2 (en) * | 2001-06-19 | 2010-02-02 | International Business Machines Corporation | Analytical virtual machine |
US7673137B2 (en) * | 2002-01-04 | 2010-03-02 | International Business Machines Corporation | System and method for the managed security control of processes on a computer system |
US7062655B2 (en) * | 2002-01-23 | 2006-06-13 | International Business Machines Corporation | Method, system, and storage medium for determining trivial keyboard sequences of proposed passwords |
KR100450953B1 (ko) * | 2002-03-05 | 2004-10-02 | 삼성전자주식회사 | 암호를 이용한 사용자 인증방법 |
US7587408B2 (en) | 2002-03-21 | 2009-09-08 | United States Postal Service | Method and system for storing and retrieving data using hash-accessed multiple data stores |
US7664731B2 (en) * | 2002-03-21 | 2010-02-16 | United States Postal Service | Method and system for storing and retrieving data using hash-accessed multiple data stores |
US7370360B2 (en) * | 2002-05-13 | 2008-05-06 | International Business Machines Corporation | Computer immune system and method for detecting unwanted code in a P-code or partially compiled native-code program executing within a virtual machine |
US7159119B2 (en) * | 2002-09-06 | 2007-01-02 | United States Postal Service | Method and system for efficiently retrieving secured data by securely pre-processing provided access information |
US7913303B1 (en) | 2003-01-21 | 2011-03-22 | International Business Machines Corporation | Method and system for dynamically protecting a computer system from attack |
US7200754B2 (en) * | 2003-03-03 | 2007-04-03 | International Business Machines Corporation | Variable expiration of passwords |
US8769680B2 (en) * | 2003-06-12 | 2014-07-01 | International Business Machines Corporation | Alert passwords for detecting password attacks on systems |
US7657938B2 (en) * | 2003-10-28 | 2010-02-02 | International Business Machines Corporation | Method and system for protecting computer networks by altering unwanted network data traffic |
US7552327B2 (en) | 2003-11-13 | 2009-06-23 | International Business Machines Corporation | Method and apparatus for conducting a confidential search |
US8065525B2 (en) * | 2004-09-22 | 2011-11-22 | Bekad Mgmt. Ii, Llc | Device with built-in user authentication and method for user authentication and identity theft protection |
US7941671B2 (en) * | 2004-10-14 | 2011-05-10 | Oracle International Corporation | Method and apparatus for accommodating multiple verifier types with limited storage space |
US20060136738A1 (en) * | 2004-12-16 | 2006-06-22 | International Business Machines Corporation | System and method for password validation |
US8011014B2 (en) * | 2004-12-16 | 2011-08-30 | International Business Machines Corporation | System and method for password validation based on password's value and manner of entering the password |
US7801925B2 (en) * | 2004-12-22 | 2010-09-21 | United States Postal Service | System and method for electronically processing address information |
US8165909B2 (en) | 2005-05-17 | 2012-04-24 | The United States Postal Service | System and method for automated management of an address database |
US7870103B1 (en) * | 2005-10-13 | 2011-01-11 | Emc Corporation | Tolerating and reporting collisions in content-derived identifiers of data segments using secondary identifiers |
US8185576B2 (en) * | 2006-03-14 | 2012-05-22 | Altnet, Inc. | Filter for a distributed network |
US9552349B2 (en) * | 2006-08-31 | 2017-01-24 | International Business Machines Corporation | Methods and apparatus for performing spelling corrections using one or more variant hash tables |
US10055595B2 (en) * | 2007-08-30 | 2018-08-21 | Baimmt, Llc | Secure credentials control method |
US8379867B2 (en) | 2007-09-24 | 2013-02-19 | Mymail Technology, Llc | Secure email communication system |
US8332918B2 (en) * | 2007-12-06 | 2012-12-11 | Novell, Inc. | Techniques for real-time adaptive password policies |
US8286000B2 (en) * | 2007-12-07 | 2012-10-09 | Novell, Inc. | Techniques for dynamic generation and management of password dictionaries |
US7530106B1 (en) | 2008-07-02 | 2009-05-05 | Kaspersky Lab, Zao | System and method for security rating of computer processes |
US20120096281A1 (en) * | 2008-12-31 | 2012-04-19 | Eszenyi Mathew S | Selective storage encryption |
US20110083172A1 (en) * | 2009-10-07 | 2011-04-07 | International Business Machines Corporation | Increase entropy of user-chosen passwords via data management |
US20120284528A1 (en) * | 2010-10-07 | 2012-11-08 | Stephen Orovitz | Multi-purpose multi-dimensional, variable and multi-key e-mail and data encryption method |
US8682873B2 (en) * | 2010-12-01 | 2014-03-25 | International Business Machines Corporation | Efficient construction of synthetic backups within deduplication storage system |
US9471772B2 (en) | 2011-06-01 | 2016-10-18 | Paypal, Inc. | Password check by decomposing password |
US9300643B1 (en) | 2012-06-27 | 2016-03-29 | Amazon Technologies, Inc. | Unique credentials verification |
US9087187B1 (en) * | 2012-10-08 | 2015-07-21 | Amazon Technologies, Inc. | Unique credentials verification |
GB2505531B (en) * | 2012-11-16 | 2015-01-07 | F Secure Corp | Methods, systems and apparatus for managing data entries on a database |
US9767299B2 (en) | 2013-03-15 | 2017-09-19 | Mymail Technology, Llc | Secure cloud data sharing |
EP2955655A1 (de) * | 2014-06-12 | 2015-12-16 | Thomson Licensing | Vorrichtungen und Verfahren zur Passwortauthentifizierung |
US9866473B2 (en) | 2014-11-14 | 2018-01-09 | Nicira, Inc. | Stateful services on stateless clustered edge |
US9876714B2 (en) | 2014-11-14 | 2018-01-23 | Nicira, Inc. | Stateful services on stateless clustered edge |
US11533255B2 (en) * | 2014-11-14 | 2022-12-20 | Nicira, Inc. | Stateful services on stateless clustered edge |
US10044617B2 (en) | 2014-11-14 | 2018-08-07 | Nicira, Inc. | Stateful services on stateless clustered edge |
CN105069330B (zh) * | 2015-08-05 | 2018-01-19 | 东莞盛世科技电子实业有限公司 | 密码模糊输入方法及装置 |
US9961053B2 (en) | 2016-05-27 | 2018-05-01 | Dropbox, Inc. | Detecting compromised credentials |
US10503654B2 (en) | 2016-09-01 | 2019-12-10 | Intel Corporation | Selective caching of erasure coded fragments in a distributed storage system |
US11140173B2 (en) | 2017-03-31 | 2021-10-05 | Baimmt, Llc | System and method for secure access control |
US11296984B2 (en) | 2017-07-31 | 2022-04-05 | Nicira, Inc. | Use of hypervisor for active-active stateful network service cluster |
US10951584B2 (en) | 2017-07-31 | 2021-03-16 | Nicira, Inc. | Methods for active-active stateful network service cluster |
US11570092B2 (en) | 2017-07-31 | 2023-01-31 | Nicira, Inc. | Methods for active-active stateful network service cluster |
US11153122B2 (en) | 2018-02-19 | 2021-10-19 | Nicira, Inc. | Providing stateful services deployed in redundant gateways connected to asymmetric network |
US11709925B1 (en) * | 2018-09-27 | 2023-07-25 | Amazon Technologies, Inc. | Visual token passwords |
GB2587000B (en) * | 2019-09-11 | 2021-12-01 | Daigniere Florent | Method of testing and improving security in a password-based authentication system |
US11799761B2 (en) | 2022-01-07 | 2023-10-24 | Vmware, Inc. | Scaling edge services with minimal disruption |
US11962564B2 (en) | 2022-02-15 | 2024-04-16 | VMware LLC | Anycast address for network address translation at edge |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3394246A (en) * | 1963-04-08 | 1968-07-23 | Telecredit | Status-indicating system |
US3702987A (en) * | 1970-07-24 | 1972-11-14 | Ultronic Systems Corp | Information verification system and digital data input unit |
US3798602A (en) * | 1972-01-17 | 1974-03-19 | J Hynes | Credit authorization system |
US3996449A (en) * | 1975-08-25 | 1976-12-07 | International Business Machines Corporation | Operating system authenticator |
US4290105A (en) * | 1979-04-02 | 1981-09-15 | American Newspaper Publishers Association | Method and apparatus for testing membership in a set through hash coding with allowable errors |
US4295124A (en) * | 1979-08-13 | 1981-10-13 | National Semiconductor Corporation | Communication method and system |
US4498148A (en) * | 1980-06-17 | 1985-02-05 | International Business Machines Corporation | Comparing input words to a word dictionary for correct spelling |
US4476468A (en) * | 1981-06-22 | 1984-10-09 | Light Signatures, Inc. | Secure transaction card and verification system |
US4503514A (en) * | 1981-12-29 | 1985-03-05 | International Business Machines Corporation | Compact high speed hashed array for dictionary storage and lookup |
US4538240A (en) * | 1982-12-30 | 1985-08-27 | International Business Machines Corporation | Method and apparatus for performing hashing operations using Galois field multiplication |
US4589081A (en) * | 1983-03-15 | 1986-05-13 | Dynatrend, Incorporated | Intelligent surveillance alarm system and method |
US4605820A (en) * | 1983-11-10 | 1986-08-12 | Visa U.S.A. Inc. | Key management system for on-line communication |
US4694492A (en) * | 1984-11-09 | 1987-09-15 | Pirmasafe, Inc. | Computer communications security control system |
US4816653A (en) * | 1986-05-16 | 1989-03-28 | American Telephone And Telegraph Company | Security file system for a portable data carrier |
US4730348A (en) * | 1986-09-19 | 1988-03-08 | Adaptive Computer Technologies | Adaptive data compression system |
US4908861A (en) * | 1987-08-28 | 1990-03-13 | International Business Machines Corporation | Data authentication using modification detection codes based on a public one way encryption function |
US5005200A (en) * | 1988-02-12 | 1991-04-02 | Fischer Addison M | Public key/signature cryptosystem with enhanced digital signature certification |
US4924515A (en) * | 1988-08-29 | 1990-05-08 | International Business Machines Coprporation | Secure management of keys using extended control vectors |
US5103478A (en) * | 1989-04-27 | 1992-04-07 | International Business Machines Corporation | Secure management of keys using control vectors with multi-path checking |
-
1990
- 1990-03-09 US US07/491,431 patent/US5204966A/en not_active Expired - Lifetime
-
1991
- 1991-02-15 AU AU71091/91A patent/AU637191B2/en not_active Ceased
- 1991-02-25 NL NL9100329A patent/NL9100329A/nl not_active Application Discontinuation
- 1991-02-26 CA CA002037071A patent/CA2037071A1/en not_active Abandoned
- 1991-03-05 DE DE4107019A patent/DE4107019C2/de not_active Expired - Lifetime
- 1991-03-11 GB GB9105113A patent/GB2243470A/en not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
AU637191B2 (en) | 1993-05-20 |
AU7109191A (en) | 1991-10-03 |
NL9100329A (nl) | 1991-10-01 |
GB9105113D0 (en) | 1991-04-24 |
CA2037071A1 (en) | 1991-09-10 |
US5204966A (en) | 1993-04-20 |
DE4107019A1 (de) | 1991-09-12 |
GB2243470A (en) | 1991-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4107019C2 (de) | Verfahren und Vorrichtung zum computergesteuerten Überprüfen der Annehmbarkeit von Kennwörtern | |
DE69634880T2 (de) | Verfahren und gerät zum kontrollierten zugriff zu verschlüsselten datenakten in einem computersystem | |
DE69829642T2 (de) | Authentifizierungssystem mit chipkarte | |
DE69815599T2 (de) | Verfahren und Vorrichtung zum Schutz von Anwendungsdaten in sicheren Speicherbereichen | |
DE3044463C2 (de) | ||
DE3122534C1 (de) | Verfahren zur Erzeugung sowie Kontrolle von Dokumenten, sowie Dokument und Vorrichtung zur Durchführung des Verfahrens | |
DE3407642A1 (de) | Verfahren und einrichtung zur sicherung des zugriffs zu dateien | |
DE102011014688B3 (de) | Kraftwagen-Steuergerät mit kryptographischer Einrichtung | |
WO2001006341A1 (de) | Datenverarbeitungsvorrichtung | |
DE19820422A1 (de) | Verfahren zur Authentisierung einer Chipkarte innerhalb eines Nachrichtenübertragungs-Netzwerks | |
WO2001090855A1 (de) | Verschlüsseln von abzuspeichernden daten in einem iv-system | |
WO2015032791A1 (de) | Verfahren und system zum bereitstellen von anonymisierten daten aus einer datenbank | |
EP0030381A2 (de) | Verfahren und Vorrichtung zur Erzeugung und späteren Kontrolle von gegen Nachahmung, Verfälschung und Missbrauch abgesicherten Dokumenten und Dokument zu dessen Durchführung | |
DE60219706T2 (de) | Verfahren und Vorrichtung zum Anfügen einer elektronischen Unterschrift an ein strukturiertes Dokument | |
DE60026186T2 (de) | Verfahren zur Prüfung einer integrierten Schaltung mit vertraulichen Software- oder Hardware-elementen | |
DE69729685T2 (de) | Verfahren zur Verdeckung eines Geheimcodes in einer Rechnerbeglaubigungsvorrichtung | |
DE102010002472A1 (de) | Verfahren zum Verifizieren eines Speicherblocks eines nicht-flüchtigen Speichers | |
EP0280035B1 (de) | Verfahren zum Sichern von Programmen und zur Integritätskontrolle gesicherter Programme | |
EP3576001A1 (de) | Computerimplementiertes verfahren zum übergeben eines datenstrings von einer anwendung an eine datenschutzeinrichtung | |
EP3552141B1 (de) | Server-computersystem zur bereitstellung von datensätzen | |
EP3300522B1 (de) | Bereitstellung zumindest eines passworts | |
DE102015210294A1 (de) | Clientvorrichtung und Servervorrichtung zum abgesicherten Freischalten von Funktionen eines Clients | |
EP0973659B1 (de) | Verfahren zur erlangung eines diebstahlsschutzes für geräte, insbesondere für autoradios | |
DE102009044173A1 (de) | Kreuzweiser Abgleich von Tippverhaltensdaten zur Authentifizierung und/oder Identifizierung einer Person | |
DE10307996A1 (de) | Verfahren zum Ver- und Entschlüsseln von Daten durch verschiedene Nutzer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
R071 | Expiry of right |