-
Die
vorliegende Erfindung betrifft ein Verfahren zum automatischen Erzeugen
einer Mehrzahl von anwendungsspezifischen Passwörtern aus nur einem Hauptpasswort
und einer Mehrzahl anwendungsspezifischer Eingabegrößen, wobei
letztere nicht notwendigerweise geheim bleiben müssen.
-
Passwortverfahren
sind die am stärksten verbreitete
Methode zur Identifizierung von Personen. Mittlerweile nutzen Personen
eine solch große Anzahl
von Anwendungen, z.B. solche Anwendungen, welche über das
World Wide Web angeboten werden, dass sie in der Praxis Probleme
im Umgang mit ihren Passwörtern
bekommen. In diesem Zusammenhang haben sich im Gebrauch von Passwörtern in
der Praxis eine Reihe von Umgangsweisen eingeschlichen, welche die
Sicherheit von Passwortverfahren beeinträchtigen, wenngleich Passwortverfahren grundsätzlich ein
adäquates
Sicherheitsniveau bieten können.
Als Beispiele für
solche Umgangsweisen seien die Auswahl leicht erratbarer Passwörter, der leichte
Zugang zu notierten Passwörtern
oder die Wiederverwendung von Passwörtern für unterschiedliche Anwendungen
genannt. Solche Praktiken haben sich deshalb durchgesetzt, weil
Benutzer die Sicherheitsanforderungen im Umgang mit Passwörtern in
der Praxis nicht bequem erfüllen
können. Erschwert
wird der Umgang mit Passwörtern
in der Praxis noch dadurch, dass Anwendungen jeweils unterschiedliche
Regeln zur Auswahl akzeptierter Passwörter aufstellen (z.B. bezüglich geforderter bzw.
erlaubter Zeichentypen oder Passwortlänge), an die sich ein Benutzer
halten muss. Diese Regeln können
je nach Anbieter auch komplexerer Art sein, wie z.B. bei einer Regel,
bei welcher in einem anwendungsspezifischen Passwort mindestens
ein Vertreter von jeweils drei Zeichentypen aus einer Menge von
insgesamt vier Zeichentypen (Großbuchstaben, Kleinbuchstaben,
Ziffern, Sonderzeichen) enthalten sein muss. Zusätzlich zu diesen Regeln kann
ein Betreiber verlangen, dass Benutzer innerhalb bestimmter Zeiträume ihre
anwendungsspezifischen Passwörter ändern müssen.
-
Bei
Benutzern kann darüber
hinaus das Anliegen bestehen, die Anwendungen von unterschiedlichen
Endgeräten
aus nutzen zu können.
Insofern haben technische Lösungsansätze wie
das Speichern von Passwörtern
auf Endgeräten
den Nachteil, dass auf aktuelle Datenbestände nicht in jedem Fall zurückgegriffen
werden kann. Eine denkbare Alternative hierzu, bei der Passwörter eines
Benutzers im Rahmen eines Dienstes auf einem über ein Kommunikationsnetz
zugreifbaren Computer abgelegt würden,
hat den Nachteil, dass ein Be nutzer dem Dienstbetreiber bezüglich des
vereinbarten Umgangs mit den verwahrten Passwörtern vertrauen müsste.
-
Es
zeigt sich an vielen Stellen, dass Benutzer in der Praxis durch
die Anforderungen eines guten Passwortmanagements überfordert
sind. Deshalb ist ein Verfahren hilfreich, auf Basis dessen einem
Benutzer jederzeit und auf allen Endgeräten alle seine starken, regelkonformen,
anwendungsspezifischen Passwörter
zur Verfügung
stehen, ohne dass sich die Benutzer ihre Passwörter merken müssen.
-
Mittlerweile
existieren eine Reihe von Ansätzen
und Lösungen,
deren Ziel es ist, Benutzer im Umgang mit ihren Passwörtern zu
unterstützen.
In diesem Zusammenhang wurden beispielsweise technische Lösungen entwickelt,
bei welchen anwendungsspezifische Passwörter generiert und abgespeichert
werden. Der Zugriff zu den abgespeicherten Passwörtern wird hierbei in der Regel
ebenfalls mittels eines zentralen Geheimnisses oder mittels biometrischer
Methoden kontrolliert. Alle diese Ansätze erfordern jedoch die Verfügbarkeit
eines persistenten Speichers, was entweder die Verfügbarkeit des
jeweiligen benutzereigenen Endgeräts (z.B. Passwortspeicher in
den Web-Browsern
wie Firefox oder Internet Explorer) oder die Verfügbarkeit
einer über
ein Kommunikationsnetz zugänglichen
Datenbank impliziert, wobei im letzten Fall der Datenbankbetreiber
ebenfalls Zugriff auf sämtliche
anwendungsspezifischen Passwörter
des Benutzers hat. Ein Verfahren zur zentralen Abspeicherung von
anwendungsspezifischen Passwörtern
und mit Hauptpasswort geschütztem
Zugang wird in der Druckschrift
US 6 006 333 A beschrieben.
-
Andere
mit Passwörtern
in Zusammenhang stehende Ansätze
liefern Benutzern eine Rückmeldung
bzgl. der Stärke
der von ihnen gewählten
Passwörter.
Bei diesen werden die gewählten
Passwörter dahingehend
getestet, ob sie in Wörterbüchern enthalten
sind und deshalb von Dritten mit vertretbarem Aufwand geraten werden
können.
Wird ein gewähltes
Passwort als zu schwach identifiziert, ist der Benutzer aufgefordert,
sich ein neues Passwort auszuwählen.
Andere Verfahren zielen darauf ab, Angreifern die Durchführung von
Wörterbuchangriffen
zu erschweren, indem der Benutzer zusätzlich zur Passworteingabe
noch derart an einem interaktiven Protokoll beteiligt wird, wobei
die Benutzerinteraktion nicht erfolgreich von einer Maschine ausgeführt werden kann,
so dass die Erfolgswahrscheinlichkeit für einen Angreifer bei einem
automatisierten Wörterbuchangriff
genügend
klein ist.
-
Die
geschilderten bekannten Verfahren nach dem Stand der Technik haben
den Nachteil, entweder unkomfortabel zu sein und daher von Nutzern
gemieden zu werden oder aber nicht hinreichend hohen Sicherheitsanforderungen
zu genügen,
weil die Passwörter
dauerhaft gespeichert werden müssen, üblicherweise
sogar in einer auch für
andere Nutzer zugänglichen
Datenbank.
-
Der
vorliegenden Erfindung liegt also die technische Aufgabe zugrunde,
mit einem anzugebenden Verfahren und einer entsprechenden Vorrichtung
die Sicherheit eines (typischerweise ein Endgerät und eine Mehrzahl von mit
diesem verbindbaren weiteren Rechnern umfassenden) Systems, das
verschiedene durch Passwortfunktionen gesicherte und von verschiedenen
Nutzern nutzbare Anwendungen umfasst, zu erhöhen unter der Maßgabe, dass
sich ein einzelner Nutzer keine Vielzahl von Passwörtern merken
und ggf, regelmäßig ändern muss.
-
Diese
Aufgabe wird erfindungsgemäß gelöst durch
ein Verfahren mit den Merkmalen des Anspruchs 1 und durch eine Vorrichtung
mit den Merkmalen des Anspruchs 18. Vorteilhafte Ausgestaltungen
und Weiterentwicklungen der Erfindung ergeben sich mit den Merkmalen
der Unteransprüche.
-
Dadurch,
dass bei dem vorgeschlagenen Verfahren zum automatischen Generieren
eines der Passwörter,
welches einer bestimmten Anwendung zugeordnet ist, jeweils
- • aus
mindestens einer der Eingabegrößen, die der
selben Anwendung zugeordnet ist, eine Zeichenkette gebildet wird,
- • wonach
diese Zeichenkette mittels eines aus dem Hauptpasswort gebildeten
Schlüssels
verschlüsselt
wird
- • und
eine durch dieses Verschlüsseln
gewonnene pseudozufällige
Signalfolge zur Bildung des Passworts verwendet wird
- • unter
Berücksichtigung
mindestens einer weiteren der derselben Anwendung zugeordneten Eingabegrößen, durch
welche anwendungsspezifische Passwortregeln definiert werden,
ergeben
sich insbesondere folgende Vorteile: Für einen Nutzer ergibt sich
ein komfortabler Zugang zu einer Mehrzahl von Anwendungen mit nur
einem Hauptpasswort, welches sich der Nutzer merken muss, wobei
nur dieses Hauptpasswort, dass auch nicht regelmäßig geändert werden muss, geheim gehalten
werden muss. Zugleich ergibt sich eine Systemsicherheit, die der
durch eine Verwendung einer Vielzahl von womöglich regelmäßig zu ändernden starken
Passwörtern
erreich baren Systemsicherheit entspricht. Eine Steigerung der Systemsicherheit
ergibt sich insbesondere auch dadurch, dass ein Speichern der einzelnen
Passwörter
nicht erforderlich ist, wobei sich der Nutzer nur das Hauptpasswort
zu merken hat. Typischerweise wird das vorgeschlagene Verfahren
auf einem Endgerät
des Nutzers durchgeführt.
Dabei ist das Verfahren allerdings vorteilhafterweise unabhängig vom
jeweils verwendeten Endgerät.
-
Vorzugsweise
wird der Schlüssel
dabei mittels einer Schlüsselableitungsfunktion
gebildet, durch welche jede Stelle des Schlüssels, der eine von einer Länge des
Hauptpassworts unabhängige
Länge hat, von
jedem Zeichen des Hauptpassworts abhängig ist. Derartige Schlüsselableitungsfunktionen
sind an sich bekannt. Als Beispiel sei das im PKCS#5-Standard (Password
Based Cryptography Standard) der RSA Laboratories (Version 2.0,
März 1999)
vorgeschlagene Verfahren PBKDF2 (Password Based Key Derivation Function)
oder dessen Vorgänger PBKDF1
genannt. Damit müssen
an das Hauptpasswort keine bestimmten Anforderungen gestellt werden,
wobei das Hauptpasswort allerdings zweckmäßigerweise als starkes Passwort
zu wählen
ist, um eine hohe Sicherheit zu gewährleisten.
-
Eine
besonders zweckmäßige Ausführung des
Verfahrens ergibt sich, wenn die Zeichenkette aus mindestens zwei
Eingabegrößen, die
der entsprechenden Anwendung zugeordnet sind, gebildet wird, vorzugsweise
durch Verketten. Dabei können die
einzelnen Eingabegrößen zur
Bildung der Zeichenkette einfach aneinander gehängt werden, evtl. unter Einfügen von
die Eingabegrößen verbindenden Füllzeichen.
Vorzugsweise erfolgt die Bildung der Zeichenkette dabei durch eine
Zuordnung von die Eingabegrößen bildenden
Zeichen zu einer jeweils zeichenspezifischen Bitfolge (z.B. durch
einen üblichen
Code), so dass die Zeichenkette selbst durch eine Bitfolge gegeben
ist. Die Zeichenkette kann schließlich durch ein sog. Padding
(Ergänzen
weiterer Zeichen) auf eine vorbestimmte, für das anschließende Verschlüsseln geeignete
Kettenlänge
gebracht werden.
-
Bei
den zur Bildung der Zeichenkette verwendeten Eingabegrößen kann
es sich bei einer besonders vorteilhaften Ausführung der Erfindung um eine
benutzerspezifische Anwendungsidentität, eine anwendungsspezifische
Benutzeridentität
(user name) und eine anwendungsspezifische Versionsangabe oder um
eine Auswahl aus den genannten Eingabegrößen handeln. Von besonderem
Vorteil ist insbesondere die Verwendung einer anwendungsspezifischen
Versionsangabe als Eingabegröße. Dadurch wird
es möglich,
dass Passwort für
eine bestimmte Anwendung durch eine einfache Änderung der entsprechenden
Versionsangabe zu ändern,
ohne dass die übrigen
Passwörter
und insbesondere das Hauptpasswort geändert werden müssten. Eine Änderung der
anwendungsspezifischen Passwörter
ohne Änderung
des Hauptpasswortes wäre
sogar schon dann möglich,
wenn nur eine einzelne Versionsangabe als Eingabegröße vorgesehen
wird. Denkbar wäre es
schließlich
auch, auch die an sich zur Definition anwendungsspezifischer Passwortregeln
dienende Eingabegröße zusätzlich bei
der Bildung der Zeichenkette zu verwenden.
-
In
einer bevorzugten Ausgestaltung des Verfahrens wird die durch das
Verschlüsseln
gewonnene Signalfolge zu einer ebenfalls pseudozufälligen weiteren
Signalfolge mehrfacher Länge
verlängert
und die letztgenannte verlängerte
Signalfolge zur Bildung des Passworts verwendet. Zur Gewinnung der
verlängerten, ebenfalls
pseudozufälligen
weiteren Signalfolge aus der durch das Verschlüsseln gewonnenen zuerst genannten
Signalfolge können
verschiedene Methoden verwendet werden. Eine einfache Realisierung
sieht vor, dass die durch das Verschlüsseln gewonnene Signalfolge
dadurch verlängert
wird, dass eine Schleife durchlaufen wird, bei der die erstgenannte
Signalfolge jeweils mit einem Zählerwert verknüpft wird – vorzugsweise
durch eine bitweise XOR-Verknüpfung – und ein
Ergebnis dieser Verknüpfung
wiederum mittels des Schlüssels
verschlüsselt
wird, wobei der Zählerwert
bei jedem Schleifenzyklus einmal verändert wird. (Nachfolgend sei
mit dem Begriff XOR-Verknüpfung
immer eine bitweise XOR-Verknüpfung
bezeichnet.) Genauso gut ist es möglich, die durch das Verschlüsseln gewonnene
Signalfolge durch Durchlaufen einer Schleife zu verlängern, bei
der jeweils ein bei jedem Schleifenzyklus einmal veränderter
Zählerwert
zunächst
mittels des Schlüssels
verschlüsselt
wird und ein dadurch bei jedem Schleifenzyklus gewonnenes Chiffrat
mit der erstgenannten Signalfolge verknüpft wird, vorzugsweise wieder
durch eine XOR-Verknüpfung.
-
In
beschriebener oder ähnlicher
Weise kann also in Abhängigkeit
von dem Hauptpasswort und den Eingabegrößen eine pseudozufällige Signalfolge beliebiger
Länge erzeugt
werden. Das ist von Vorteil, weil damit unabhängig von einer geforderten
Passwortlänge
oder anderen Passwortregeln immer genügend Zufallsmaterial zur Erzeugung
des entsprechenden Passworts zur Verfügung steht.
-
Das
trifft zu insbesondere bei einer Berücksichtigung der Passwortregeln
durch eine Ausgestaltung des Verfahrens, bei der die mindestens
eine anwendungsspezifische Passwortregeln definierende Eingabegröße da durch
berücksichtigt
wird, dass ein in beschriebener Weise gebildetes Passwort als Kandidat
genau dann verworfen und durch einen entsprechend gebildeten weiteren
Kandidaten ersetzt wird, wenn es nicht mit den Passwortregeln vereinbar ist.
Eine derartige Berücksichtigung
der Passwortregeln ist besonders vorteilhaft, weil sie gewährleistet, dass
bezüglich
der mit den verwendeten Passwortregeln theoretisch erreichbaren
Passwörtern
eine Gleichverteilung realisiert wird, was wiederum die erreichbare
Sicherheit optimiert.
-
Die
Berücksichtigung
der Passwortregeln definierenden Eingabegröße oder -größen kann auch alternativ oder
zusätzlich
auf andere Art erfolgen. Das gilt insbesondere für eine Eingabegröße, die
zur Definition einer Passwortlänge
vorgesehen sein kann und in einfacher Weise dadurch zu berücksichtigen sein
kann, dass ein Erzeugen von Passwortzeichen aus der entsprechenden
Signalfolge abgebrochen wird, sobald die Passwortlänge erreicht
ist. Andere denkbare Passwortregeln, die z.B. in einer der beschriebenen
Weisen berücksichtigt
werden können, können sich
auf die zugelassenen oder geforderten Passwortzeichen beziehen und/oder
darauf, dass an bestimmten Stellen des Passworts nur bestimmte Zeichen
stehen dürfen,
und/oder darauf, ob zwischen Groß- und Kleinbuchstaben zu unterscheiden
ist. Denkbar ist es schließlich
auch, eine Standardeinstellung der Passwortregeln vorzusehen, die
maßgebend
ist, wenn der entsprechenden Eingabegröße kein Wert zugeordnet wird.
-
Typische
Ausführungen
des vorgeschlagenen Verfahrens sehen vor, dass die aus der Eingabegröße bzw.
den Eingabegrößen gewonnene
Zeichenkette symmetrisch, vorzugsweise blockweise symmetrisch verschlüsselt wird.
Derartige Verschlüsselungsverfahren
gewährleisten
derzeit eine besonders hohe Sicherheit. Die Verschlüsselung
kann insbesondere mittels eines AES-Verfahrens (Advanced Encryption Standard)
erfolgen. Denkbar sind aber selbstverständlich auch andere symmetrische
Verschlüsselungsverfahren
wie beispielsweise DES (Data Encryption Standard), 3DES (Triple-DES), Blowfish,
Twofish, IDEA (International Data Encryption Algorithm) oder CAST
(benannt nach C. Adams und S. Tavares).
-
Eine
blockweise Verschlüsselung
kann beispielsweise dadurch realisiert werden, dass die Zeichenkette
in eine bestimmte Anzahl von Blöcken
bestimmter Länge
eingeteilt wird und ab einem zweiten Block jeder Block mit einem
aus dem vorhergehenden Block gewonnenen Chiffrat durch eine XOR-Verknüpfung verknüpft und
ein Ergebnis dieser Verknüpfung
mittels des Schlüssels
verschlüsselt
wird. In entsprechender Weise kann auch eine den ersten Block bildende
Zeichenfolge zunächst
mit einer Initialzeichenfolge durch eine XOR-Verknüpfung verknüpft werden, bevor ein Ergebnis
dieser Verknüpfung
verschlüsselt
wird. Diese Initialzeichenfolge sollte fest voreingestellt sein,
damit das Verfahren vom verwendeten Endgerät unabhängig bleibt. Bei der genannten
XOR-Verknüpfung
handelt es sich dabei um eine Verknüpfung durch ein ausschließliches
Oder, was einer bitweisen Modulo-2-Addition entspricht. Die geschilderte
Art einer blockweisen Verschlüsselung entspricht
einem CBC-Modus (Cipher Block Chaining). Selbstverständlich sind
auch andere Arten der blockweisen Verschlüsselung möglich, beispielsweise indem
zunächst
jeder Block mit dem Schlüssel verschlüsselt wird
und durch diese Verschlüsselungen
gewonnene Chiffrate erst anschließend verknüpft werden, beispielsweise
wieder durch eine stellenweise Modulo-2-Addition der genannten Chiffrate. Solche
und ähnliche
Arten einer blockweisen Verschlüsselung
bringen den Vorteil mit sich, das sich jede Änderung des Hauptpassworts
oder einer zur Bildung der Zeichenkette verwendeten Eingabegröße auf jede Stelle des erzeugten Passworts auswirken
kann. Denkbar wäre
schließlich
auch eine Verschlüsselung
im CFB-Modus (Cipher-Feedback-Modus) oder im OFB-Modus (Output-Feedback-Modus).
-
Alternativ
könnte
schließlich
auch eine andere Art der Verschlüsselung
vorgesehen werden, bei der der Schlüssel zunächst in Form eines Key-Streams
(mit einem Key-Stream-Generator) aus dem Hauptpasswort erzeugt wird,
wonach die pseudozufällige
Signalfolge durch Verschlüsselung
der aus den Eingabegrößen gewonnenen
Zeichenkette mittels dieses Key-Streams zu einer Stromchiffre erzeugt
wird.
-
Eine
typische Ausführung
des Verfahrens sieht vor, dass das Passwort bzw. ein Passwortkandidat
dadurch gebildet wird, dass die zur Bildung des Passworts verwendete
Signalfolge in Blöcke
definierter Länge
eingeteilt und jeder einer durch eine Passwortlänge vorgegebenen Anzahl dieser
Blöcke
nach einem vorbestimmten Code einem Passwortzeichen zugeordnet wird.
Damit ergibt sich eine technisch besonders einfach realisierbare
Passworterzeugung. Dabei müssen
bei einer gegebenen Passwortlänge von
n Zeichen nicht notwendigerweise n aufeinanderfolgende Blöcke berücksichtigt
werden. Vielmehr kann es sich bei der vorgegebenen Anzahl von Blöcken um
eine Auswahl aus den nacheinander generierten Blöcken handeln, bei der einige
Blöcke
ausgelassen werden, beispielsweise dann, wenn sie eine Blockbelegung
zeigen, die keinem Passwortzeichen zugeordnet ist. Unter Umständen können die
genannten Blöcke
der Signalfolge für
verschiedene zu besetzende Stellen des Passworts auch unterschiedliche
Länge haben,
wenn Passwortregeln berücksichtigt
werden sollen, nach denen an bestimmten Stellen des Passworts nur
bestimmte Zeichen aus einer Teilmenge der insgesamt verfügbaren Zeichen stehen
dürfen.
-
Es
kann vorgesehen sein, dass das nach einer Eingabe des Hauptpassworts
durch einen Nutzer in beschriebener Weise erzeugte Passwort automatisch
zur Beantwortung einer Passwortanfrage der entsprechenden Anwendung
eingegeben oder in einer Zwischenablage eines Endgerätes – aus Sicherheitsgründen vorzugsweise
nur für
eine begrenzte Zeit (nach der eine automatische Löschung erfolgen kann) – zwischengespeichert
wird. Im letztgenannten Fall kann ein Übertrag in ein Abfragefeld
manuell erfolgen, ohne dass das generierte Passwort Zeichen für Zeichen
eingegeben werden muss. In jedem Fall wird dadurch ein besonders
komfortabler Zugriff auf die Anwendungen ohne Sicherheitseinbußen möglich.
-
Für einen
Passwortwechsel durch eine Änderung
einer anwendungsspezifischen Versionsangabe kann es vorgesehen sein,
dass das entsprechende alte Passwort für eine beschränkte Zeit
in einer Zwischenablage gespeichert wird, bevor das neue Passwort
generiert wird. Dann ist es denkbar, sowohl das alte Passwort als
auch das neue Passwort zur Beantwortung der entsprechenden Passwortanfragen
automatischen einzugeben oder (für
einen manuellen Übertrag)
in einer Zwischenablage zwischenzuspeichern, während nur das Hauptpasswort
und die neue Versionsangabe durch den Nutzer manuell Zeichen für Zeichen
einzugeben sind.
-
Es
kann vorgesehen sein, dass die Eingabegrößen in einem als Datenbank
dienenden Speicher eines vom Endgerät räumlich getrennten Servers gespeichert
sind und von dort eingelesen werden, während das Verfahren selbst
auf einem Endgerät
durchgeführt
wird. Dadurch wird es für
den Nutzer möglich, dass
Verfahren auf verschiedenen Endgeräten durchzuführen, ohne
jedesmal die Eingabegrößen einzugeben.
Sicherheitseinbußen
sind damit nicht verbunden, weil man aufgrund des geheim gehaltenen
Hauptpassworts und des damit nicht öffentlich zugänglichen
Schlüssels
nicht von dem Eingabegrößen allein
auf die Passwörter
oder auf das Hauptpasswort schließen kann. Besonders vorteilhaft
ist wiederum eine Weiterentwicklung des Verfahrens mit auf einem
Server gespeicherten Eingabegrößen, bei dem
ein zum Einwählen
in den Server erforderliches Serverpasswort im Endgerät automatisch
aus dem Hauptpasswort generiert wird, vorzugsweise durch ein dem
Verfahren zum Erzeugen der anwendungsspezifischen Passwörter entsprechendes
Verfahren, bei dem die dem Serverpasswort zugeordneten Eingabegrößen festgelegt
sein können.
Damit benötigt ein
Nutzer auch zum Herunterladen der zur Generierung der weiteren Passwörter erforderlichen
Eingabegrößen nur
sein einziges Hauptpasswort.
-
Typischerweise
wird es sich bei den auf dem Server gespeicherten Eingabegrößen um eine
Anwendungsidentität
für jede
registrierte Anwendung, um eine für jede Anwendung individuell
festlegbare Benutzeridentität,
um jeweils eine Versionsangabe für
jede Anwendung und um eine oder mehrere Eingabegrößen zur
Definition von Passwortregeln für jede
Anwendung handeln. Es kann vorgesehen sein, dass die von dem Server
heruntergeladenen Eingabegrößen in einem
als lokale Profilablage dienenden Speicher des Endgeräts zwischengespeichert
werden, um zur Generierung von Passwörtern auch bei einem anschließenden Offline-Betrieb
zur Verfügung zu
stehen.
-
Um
eine möglichst
große
Unabhängigkeit vom
jeweils verwendeten Endgerät
zu erreichen, kann es vorgesehen sein, dass ein zur Durchführung des
Verfahrens auf dem Endgerät
benötigtes
Programm von einem Server (dem schon genannten oder einem anderen
Server) heruntergeladen wird. Denkbar ist es, das Programm dabei
auf dem Endgerät
zu installieren. Eine noch größere Unabhängigkeit läßt sich
aber realisieren, wenn das Programm nur vorübergehend als – zur Erhöhung der
Sicherheit vorzugsweise signiertes und dadurch auf Integrität überprüfbares – Applet
(z.B. Java-Applet) auf dem Endgerät zur Verfügung gestellt wird, ohne dort
installiert werden zu müssen.
-
Eine
zur Durchführung
eines Verfahrens beschriebener Art geeignete Vorrichtung lässt sich
für den
Fachmann problemlos beispielsweise durch eine entsprechende programmtechnische
Einrichtung eines Rechners realisieren. Typischerweise umfasst eine
entsprechende Vorrichtung zum automatischen Erzeugen einer Mehrzahl
von anwendungsspezifischen Passwörtern
aus nur einem Hauptpasswort
- • Mittel
zum Ausführen
einer Schlüsselableitungsfunktion
zur Bildung eines Schlüssels
vorgegebene Länge
aus einem eingegebenen Hauptpasswort,
- • Konkatenationsmittel
zur Bildung einer Zeichenkette aus jeweils eingelesenen oder eingegebenen
Eingabegrößen,
- • Verschlüsselungsmittel
zur Bildung einer pseudozufälligen
Signalfolge aus der von der Konkatenationseinheit gebildeten Zeichenkette
mittels des von den Mitteln zum Ausführen der Schlüsselableitungsfunktion
ausgegebenen Schlüssels,
- • einen
Signalfolgengenerator zur Erzeugung einer verlängerten, ebenfalls pseudozufälligen Signalfolge
aus der von den Verschlüsselungsmitteln ausgegebenen
erstgenannten Signalfolge und
- • Mittel
zum Ausführen
einer Passwortableitungsfunktion zur zeichenweisen Bildung des anwendungsspezifischen
Passworts aus der letztgenannten Signalfolge unter Berücksichtung
der Passwortregeln.
-
Zusätzlich kann
die Vorrichtung einen Speicher umfassen, der als lokale Profilablage
für eingelesene
oder eingegebene Eingabegrößen dient
und aus dem die Eingabegrößen in die
Konkationationsmittel und/oder in die Mittel zum Ausführen der
Passwortableitungsfunktion einlesbar sind (Letzteres sollte für die Eingabegrößen gelten,
durch welche die anwendungsspezifische Passwortregeln definiert
werden).
-
Zusätzlich zu
einem die genannten Merkmale umfassenden Endgerät (Client) kann die Vorrichtung
einen von diesem Endgerät
getrennten Server umfassen, welcher einen Speicher (eine Datenbank) umfasst,
aus dem die Eingabegrößen auslesbar
sind. Zusätzlich
oder alternativ kann die Vorrichtung schließlich einen weiteren oder mehrere
weitere mit dem Endgerät über ein
Netz verbundene Rechner umfassen, auf welchen die Anwendungen verfügbar sind
und welchen die automatisch generierten Passwörter über das Netz eingebbar sind.
-
Im
Fall der Speicherung der Eingabegrößen auf einem Server kann das
Endgerät
ferner Mittel zum Ausführen
einer Passwortbildungsfunktion zur Bildung eines Serverpassworts
aus dem Hauptpasswort umfassen, wobei das Serverpasswort einer Zugriffskontrolleinheit
des Servers eingebbar ist. Die Mittel zum Ausführen der genannten Passwortbildungsfunktion
können
dabei so gestaltet sein, dass das Serverpasswort in gleicher Weise
aus dem Hauptpasswort erzeugt wird wie die übrigen Passwörter mit
der Maßgabe,
dass die entsprechenden Eingabegrößen festgelegt sind.
-
Schließlich kann
die Vorrichtung auch Mittel zum Ausführen einer Einwegfunktion zur
Berechnung einer optischen Markierung aus dem Hauptpasswort sowie
Mittel zum Anzeigen dieser optischen Markierung umfassen, um eine
weiter unten ausführlicher
beschriebene Rückmeldung
für den Nutzer
zu ermöglichen,
die es diesem gestattet, zu erkennen, ob er das richtige Hauptpasswort
eingegeben hat. Bei den Mitteln zum Anzeigen der optischen Markierung
kann es sich dabei beispielsweise um einen Bildschirm handeln, auf
dem abhängig
von einem Resultat der Einwegfunktion an einer bestimmten Stelle
und/oder in einer bestimmten Farbe ein Symbol erscheint. Die übrigen bislang
genannten Mittel können
in einfacher Weise beispielsweise durch Hardware-Komponenten, die mit Programmen oder
Programmteilen zusammenwirken, realisiert sein.
-
Schließlich kann
es auch vorgesehen sein, dass die Vorrichtung einen Puffer zum Zwischenspeichern
der durch die Verschlüsselung
der Zeichenkette gewonnenen Signalfolge umfasst, aus der diese Signalfolge
mehrfach in den Signalfolgengenerator einlesbar ist. Dadurch wird
es in besonders einfacher Weise möglich, mittels des Signalfolgengenerators eine
pseudozufällige
Signalfolge beliebiger Länge aus
der durch die Verschlüsselung
gewonnenen ersten Signalfolge zu erzeugen.
-
Die
hier vorgeschlagene Erfindung bezieht sich in einer besonders vorteilhaften,
nachfolgend eingehender beschriebenen Ausgestaltung insbesondere
auf ein Verfahren zur Erzeugung von Passwörtern für verschiedene Anwendungen,
die ihrerseits von unterschiedlichen Providern angeboten werden
können.
Dieses Verfahren wird auf einem dem Benutzer zur Verfügung stehenden
Endgerät ausgeführt. Bei
diesem Verfahren werden ausgehend von einem durch einen Benutzer
auswählbaren zentralen
Geheimnis, dem sogenannten Hauptpasswort, die für die jeweiligen Anwendungen
erforderlichen Passwörter
eines Benutzers erzeugt. Dies hat für den Benutzer den Vorteil,
dass sich dieser nur noch ein zentrales Geheimnis merken muss, um
im Bedarfsfall unter Anwendung des der Erfindung zugrundeliegenden
Verfahrens das gewünschte
Passwort berechnen zu lassen. Ausgehend von einem solchen Passwort
ist es jedoch in der Praxis weder möglich, auf das Hauptpasswort
zurück
zu schließen, noch
ein Passwort für
eine andere Anwendung zu berechnen, welches mit dem zugrunde liegenden
Verfahren erzeugt wurde. Ohne Kenntnis des Hauptpassworts ist eine
Generierung der anwendungsspezifischen Passwörter nicht möglich. Die
Sicherheit des der Erfindung zugrunde liegenden Verfahrens basiert
auf der Geheimhaltung des Hauptpassworts durch den Benutzer. Es
werden weder das Hauptpasswort noch die anwendungsspezifischen Passwörter auf
dem Endgerät
des Benutzers persistent abgespeichert. Das Hauptpasswort wird auch
darüber
hinaus niemals von dem Endgerät über ein
Kommunikationsnetz zu anderen technischen Systemen geschickt.
-
Für das auf
dem Benutzerendgerät
ausgeführte
Verfahren besteht zusätzlich
die Möglichkeit, sich
mit der von einem Serverdienst angebotenen Datenbank zu verbinden,
von welcher der Benutzer ein Profil als Liste der von ihm registrierten
Anwendungen bzw. Zugänge
und ebenfalls die Regeln für die
Generierung der an wendungsspezifischen Passwörter herunterladen kann. Hierzu
gehören
beispielsweise die von einem Provider geforderten Typen von Passwortzeichen
und Informationen über
die Passwortlänge.
Das Profil eines Benutzers kann entweder von dem Benutzer selbst
oder von dem Provider der Datenbank angelegt oder verwaltet werden.
Die Profildaten sind für
die jeweiligen Benutzer mittels eines Login-Passwort-Mechanismus
(Datenbank-Login und Datenbank-Passwort des Benutzers) zugangsbeschränkt, so
dass unberechtigte Benutzer diese Daten weder auslesen noch verändern können. Zur Anmeldung
für diesen
Datenbankdienst wird ausgehend von dem Hauptpasswort ein Passwort
in einer speziellen Weise berechnet, wodurch es dem Betreiber der
Datenbank in der Praxis unmöglich
ist, das Hauptpasswort zu berechnen.
-
Die
Berechnung eines Passworts durch das in dieser Erfindung beschriebene
Verfahren hängt von
mehreren Eingabegrößen ab.
Zu diesen Eingabegrößen gehören das
Hauptpasswort, eine von dem Benutzer einführbare Identitätsbeschreibung
für die jeweilige
Anwendung, die Identität
des Benutzers für die
jeweilige Anwendung, die Passwortregeln für die jeweilige Anwendung und
eine Versionsangabe für das
anwendungsspezifische Passwort. Mit Ausnahme des Hauptpassworts
können
alle diese Eingabegrößen in der
Datenbank gespeichert werden. Im Bedarfsfall können diese Werte zur Berechnung
der anwendungsspezifischen Passwörter
durch das in der Erfindung ausgeführte Verfahren nach erfolgreicher Datenbankanmeldung
aus der Datenbank geladen werden. Selbst bei unautorisierter Nutzung
der in der Datenbank gespeicherten Daten ist es durch die Geheimhaltung
des Hauptpassworts nicht möglich,
anwendungsspezifische Passwörter
zu erzeugen. Bei nicht verfügbarer
Datenbank ist es dem Benutzer ebenfalls möglich, die Werte von Hand für die Berechnung
des anwendungsspezifischen Passworts einzugeben oder aus einer evtl.
vorgesehenen lokalen Profilablage auszulesen.
-
Wenn
ein Benutzer ein anwendungsspezifisches Passwort benötigt, führt dieser
das der Erfindung zugrunde liegende Verfahren aus, indem er das Hauptpasswort
eingibt und danach die weiteren Eingabegrößen aus der Datenbank lädt und die
gewünschte
Anwendung aus der Liste auswählt.
Greift er nicht auf die Datenbank zu, dann muss er alle Eingabegrößen selbst
eingeben, sofern sie nicht bereits in einer lokalen Profilablage
zur Verfügung
stehen. Nach dessen Berechnung stellt das hier beschriebene Verfahren
das anwendungsspezifische Passwort der Benutzeroberfläche der
jeweiligen Anwendung zur Verfügung,
wie beispielsweise durch das automatisierte Ausfüllen von Formularfeldern oder
das Kopieren und Einfügen
aus einer temporär
beschriebenen Zwischenablage.
-
Bestimmte
Anwendungen verlangen von Benutzern, dass diese innerhalb bestimmter
Zeiträume ihre
anwendungsspezifischen Passwörter ändern, z.B.
einmal im Monat. Das der Erfindung zugrunde liegende Verfahren unterstützt den
Benutzer bei diesem Vorgang. Darüber
hinaus erlaubt die Modifikation der Versionsangabe die Veränderung
eines anwendungsspezifischen Passworts, ohne dass weitere Eingabegrößen verändert werden
müssen.
Selbst für
den Fall der Veränderung
des Hauptpassworts, welche eine Veränderung sämtlicher anwendungsspezifischer
Passwörter
nach sich zieht, unterstützt das
Verfahren den Benutzer, indem schrittweise für alle in dem Profil enthaltenen
Anwendungen die alten und neuen Passwörter berechnet werden und in
effizienter Weise der Benutzungsschnittstelle der je weiligen Anwendung über eine
Zwischenablage zur Verfügung
gestellt werden.
-
Da
das Hauptpasswort an keiner Stelle persistent gespeichert wird,
besteht keine Möglichkeit für den Benutzer,
die Korrektheit des eingegebenen Hauptpassworts zu überprüfen. Deshalb
wurde in dem der Erfindung zugrunde liegenden Verfahren ein Rückkanal
in Form einer optischen Markierung vorgesehen, bei welcher Farben,
Positionen und an der Benutzerschnittstelle anzuzeigende Symbol
in Abhängigkeit
des Hauptpassworts berechnet werden, so dass der Benutzer erkennen
kann, ob sich bei der Eingabe des Hauptpassworts Tippfehler eingeschlichen
haben.
-
Der
Pseudozufallsprozess, auf welchem die Generierung der anwendungsspezifischen
Passwörter
basiert, verwendet ein symmetrisches Blockverschlüsselungsverfahren.
Das Hauptpasswort wird mittels einer Schlüsselableitungsfunktion zur
Konvertierung von Passwörtern
in kryptographische Schlüssel
verarbeitet und das Resultat dieser Verarbeitung wird als Schlüssel bei
der symmetrischen Verschlüsselung
eingesetzt. Die Eingabegrößen Anwendungsidentität, die anwendungsspezifische
Identität
des Benutzers, und die Versionsangabe für das anwendungsspezifische
Passwort werden blockweise als Klartext symmetrisch verschlüsselt. Das
durch Anwendung dieses Pseudozufallsprozesses enthaltene Pseudozufallsmaterial
wird gemäß der anzuwendenden
Passwortregeln kodiert. Die Kodierungseinheit fordert ihrerseits
sukzessive so lange neues Pseudozufallsmaterial an, bis die regelkonforme
Passworterzeugung abgeschlossen ist. Die durch Anwendung des der
Erfindung zugrunde liegenden Verfahrens generierten Passwörter erfüllen die
Sicherheitsanforderungen an starke Passwörter. Diese Passwörter können immer dann
erzeugt werden, wenn ein Benutzer das beschriebene Verfahren auf
einem ihm zugänglichen
Endgerät
zur Verfügung
steht und dieses anwenden kann.
-
Die
Erfindung löst
damit insbesondere in der zuletzt beschriebenen Ausführung die
Aufgabe, Benutzern eine technische Einrichtung zur Verfügung zu
stellen, mittels derer die Benutzer endgeräteunabhängig auf Basis eines einzigen
Geheimnisses im Bedarfsfall starke anwendungsspezifische Passwörter erzeugen
können,
und somit jederzeit, von jedem Ort und von jedem Endgerät aus Zugriff
auf alle ihre anwendungsspezifischen Passwörter haben, ohne dass diese
an irgendeiner Stelle hinterlegt bzw. gespeichert werden müssen.
-
Ausführungsbeispiele
der Erfindung werden nachfolgend anhand der 1 bis 9 beschrieben.
Es zeigt
-
1 eine
schematische Darstellung einer erfindungsgemäßen Vorrichtung zum automatischen Erzeugen
einer Mehrzahl von Passwörtern
aus einem Hauptpasswort,
-
2 eine
schematische Darstellung einer entsprechenden Vorrichtung, die zusätzlich Mittel zum
Ausführen
einer Einwegfunktion zur Berechnung einer optischen Markierung aus
dem Hauptpasswort sowie Mittel zum Anzeigen der optischen Markierung
umfasst,
-
3 eine
entsprechende Darstellung einer erfindungsgemäßen Vorrichtung in einer anderen Ausführung der
Erfindung, die neben einem Endgerät einen Server um fasst,
-
4 in
entsprechender Darstellung eine Weiterentwicklung der in 3 gezeigten
Vorrichtung, die zusätzlich
eine lokale Profilablage für
Eingabegrößen aufweist,
-
5 in
entsprechender Darstellung das Endgerät der Vorrichtung aus 4 im
Offline-Betrieb,
-
6 eine
grafische Darstellung einer Extraktion von zur Definition von Passwortzeichen
verwendeten k-Blöcken
aus einer zur Bildung des Passworts verwendeten Signalfolge,
-
7 in
tabellarischer Form eine exemplarische Kodierung der Passwortzeichen
(Regeln: Unterscheidung Groß-/Kleinschreibung,
Ziffern erlaubt/gefordert, Sonderzeichen erlaubt/gefordert),
-
8 in
entsprechender Darstellung eine andere Kodierung von Passwortzeichen
(Regeln: Unterscheidung Groß-/Kleinschreibung,
Ziffern erlaubt/gefordert, keine Sonderzeichen erlaubt) und
-
9 wieder
in tabellarischer Form eine weitere exemplarische Kodierung des
Passwortzeichens (Regeln: keine Unterscheidung Groß-/Kleinschreibung,
Ziffern erlaubt/gefordert, Sonderzeichen erlaubt/gefordert).
-
Die
in 1 gezeigte, zur Ausführung eines erfindungsgemäßen Verfahrens
geeignete Vorrichtung PF umfasst Mittel 1 zum Ausführen einer Schlüsselableitungsfunktion
zur Bildung eines Schlüssels
s vorgegebener Länge
sl aus einem eingegebenen Hauptpasswort HPW, Konkatenationsmittel 2 zur
Bildung einer Zeichenkette aus jeweils eingelesenen oder eingegebenen
Eingabegrößen bid
(anwendungsspezifische Benutzeridentität), aid (benutzerspezifische
Anwendungsidentität)
und v (anwendungsspezifische Versionsangabe), Verschlüsselungsmittel
zur Bildung einer pseudozufälligen
Signalfolge prandom' aus
der von der Konkatenationseinheit 2 gebildeten Zeichenkette
mittels des von den Mitteln 1 zum Ausführen der Schlüsselableitungsfunktion
ausgegebenen Schlüssels
s, einen Signalfolgengenerator 5 zur Erzeugung einer verlängerten,
ebenfalls pseudozufälligen
Signalfolge prandom aus der von dem Verschlüsselungsmitteln ausgegebenen
erstgenannten Signalfolge prandom' und Mittel 6 zum Ausführen einer
Passwortableitungsfunktion zur zeichenweisen Bildung des anwendungsspezifischen
Passworts PW aus der letztgenannten Signalfolge prandom unter Berücksichtigung von
Passwortregeln, die wiederum durch eine Eingabegröße r definiert
sind.
-
Die
Verschlüsselungsmittel
umfassen bei den gezeigten Ausführungsbeispielen
eine Reihe von XOR-Verknüpfungen 3 und
Verschlüsselungseinheiten 4,
wobei die letztgenannten Verschlüsselungseinheiten 4 jeweils
einen Block der Länge
bl mittels des Schlüssels
s symmetrisch verschlüsseln,
im vorliegenden Beispiel durch ein AES-Verfahren, wobei die Verschlüsselungseinheiten 4 durch
die XOR-Verknüpfungen 3 im
CBC-Modus verbunden sind für
eine blockweise symmetrische Verschlüsselung der genannten Zeichenkette.
Der Sig nalfolgengenerator 5 wiederum umfasst eine den Verschlüsselungseinheiten 4 entsprechende
Verschlüsselungseinheit 7,
die mit den Mitteln 6 zum Ausführen der Passwortfunktion,
einem Zähler 8 und
einer weiteren XOR-Verknüpfung 3 zusammenwirkt.
Dabei verändern
die Mittel 6 zum Ausführen
der Passwortfunktion immer dann, wenn ein aktueller Teil prandomi der Signalfolge prandom aufgebraucht ist,
einen vom Zähler 8 ausgegebenen
Zählerwert
i durch Erhöhen
des Zählerwerts
i um einen Schritt von 1, wonach eine binäre Darstellung des Zählerwerts
i mittels der entsprechenden XOR-Verknüpfung 3 mit der Signalfolge prandom' verknüpft wird
und ein Ergebnis dieser Verknüpfung
wieder in die Verschlüsselungseinheit 7 eingegeben
wird. Die Signalfolge prandom ergibt sich so durch Aneinanderhängen der
Teile prandomi, wobei i jeweils um Schritte
von 1 zunimmt (also prandom = prandom1 ||
prandom2 || ... || prandomi ||
... mit "||" als Konkatenationsoperator).
Insbesondere am Ende jedes Teils prandomi der
Signalfolge prandom können
dabei auch einzelne Bits unberücksichtigt bleiben,
wenn prandomi nicht vollständig in
zur Bildung von Passwortzeichen verwendete Blöcke aufgeteilt werden kann.
-
Aus
einem dem Signalfolgengenerator 5 vorgeschalteten Puffer 9 zum
Zwischenspeichern der durch Verschlüsselung der Zeichenkette gewonnenen
Signalfolge prandom' kann
diese Signalfolge prandom' beliebig
oft in den Signalfolgengenerator 5 eingelesen werden.
-
Bei
der in 2 gezeigten Ausführung der Erfindung ist die
Vorrichtung PF aus 1 um Mittel 10 zum
Ausführen
einer Einwegfunktion zur Berechnung einer optischen Markierung OM
aus dem Hauptpasswort HPW sowie um nicht ausdrücklich gezeigte Mittel zum
Anzeigen dieser optischen Markierung OM ergänzt. Die Ein gabegrößen aid,
bid, v und r werden hier durch einen Nutzer von Hand eingegeben.
-
3 zeigt
eine Weiterentwicklung der Erfindung, bei der ein Endgerät (Client)
zusätzlich
zu einer der in 1 gezeigten Vorrichtung entsprechenden Vorrichtung
PF und den Mitteln 10 zum Erzeugen der optischen Markierung
OM, Mittel PF' zum
Ausführen einer
Passwortbildungsfunktion zur Bildung einer Serverpassworts SPW aus
dem Hauptpasswort HPW umfasst, wobei der Serverpasswort SPW einer Zugriffskontrolleinheit 12 eines
Servers eingebbar ist. Dieser Server weist ferner einen als Datenbank
für Benutzerprofile
dienenden Speicher 11 auf, auf dem die Eingabegrößen bid,
aid, v, r gespeichert sind und von wo aus sie in das Endgerät eingelesen
werden können.
-
Bei
der in 4 gezeigten Abwandlung der Vorrichtung aus 3 weist
das Endgerät
ferner einen Speicher 13 auf, der als lokale Profilablage
für die
Eingabegrößen bid,
aid, v, r dient.
-
5 schließlich zeigt
das Endgerät
aus 4 im Offline-Betrieb, bei dem die zuvor im Speicher 13 abgelegten
Eingabegrößen bid,
aid, v, r aus dem Speicher 13 in die Vorrichtung PF eingelesen werden
können,
so dass ein Nutzer auch hier nur das Hauptpasswort HPW eingeben
muss, um das jeweilige anwendungsspezifische Passwort PW zu erzeugen.
-
Die
in den 1 bis 5 gezeigten Vorrichtungen können auch
mit einem oder mehreren Geräten
(in den Figuren nicht gezeigt) verbunden sein, auf welchen die durch
die anwendungsspezifischen Passwörter
geschützten
Anwendungen verfügbar
sind und denen bei besonders vorteilhaften Ausführungen der Erfindung die nach
Eingabe des Hauptpassworts HPW automatisch generierten Passwörter PW
automatisch eingegeben werden können,
ohne dass eine manuelle Eingabe dieser Passwörter erforderlich wäre. Alternativ
können
die Passwörter
PW auch befristet in einer Zwischenablage zwischengespeichert werden
und von dort manuell übertragen
werden.
-
6 zeigt,
in welcher Weise die Signalfolge prandom bzw. deren Teil prandomi in Blöcke
eingeteilt wird, die in Anwendung von Codes, wie sie beispielhaft
in den 7 bis 9 gezeigt sind, in den Mitteln 6 zum
Ausführen
der Passwortableitungsfunktion einzelnen Passwortzeichen zugeordnet
werden, wodurch ein Passwortkandidat generiert wird. Die Eingabegröße r schließlich definiert
Passwortregeln. Erfüllt
ein Passwortkandidat diese Passwortregeln nicht, so wird er verworfen
und in gleicher Weise aus einer Fortsetzung der Zeichenfolge prandom
ein neuer Passwortkandidat gebildet.
-
Nach
dem in der 7 gezeigten Code werden jeweils
7 Bit große
Blöcke
aus prandomi extrahiert und einem Passwortzeichen
zugeordnet. Nach den in den 8 und 9 gezeigten
Codes gilt das Gleiche für
6 Bit große
Blöcke.
-
Die
beschriebenen Ausführungsbeispiele der
Erfindung beinhalten ein Verfahren, bei welchem ein anwendungsspezifisches
Passwort PW bei Bedarf in Abhängigkeit
von einem Hauptpasswort HPW, einer anwendungsspezifischen Benutzeridentität bid, einer
benutzerspezifischen Anwendungsidentität aid, einer Versionsangabe
v und anwendungsspezifischen Passwortregeln (entsprechend der Eingabegröße r) berechnet
wird. Die Berechnung eines anwendungsspezifischen Passworts wird schematisch in 1 dargestellt.
Bei der Berechnung wird eine symmetrische Verschlüsselung
angewendet, bei welcher die dem Verfahren übergebenen Eingabewerte unterschiedliche
Rollen spielen. Als geeignetes Verfahren für die symmetrische Verschlüsselung
sei das Verschlüsselungsverfahren
AES genannt.
-
Aus
dem Hauptpasswort HPW wird mittels einer geeigneten Schlüsselableitungsfunktion
der kryptographische Schlüssel
s mit Schlüssellänge sl berechnet.
Bei AES gilt sl = 128 bit, sl = 192 bit oder sl = 256 bit. Als Beispiel
für die
Schlüsselableitungsfunktion
sei hier mit dem in PKCS#5 vorgeschlagenen Verfahren PBKDF2 eine
geeignete und als De Facto-Standard verfügbare Variante genannt. Die Verwendung
einer solchen Schlüsselableitungsfunktion
ist aus mehreren Gründen
vorteilhaft: Erstens kann man damit sicherstellen, dass sich selbst
bei Hauptpasswörtern
unterschiedlicher Länge
jedes einzelne Zeichen auf den Schlüssel auswirkt und somit bei
der Verschlüsselung
berücksichtigt
wird. Insbesondere kann eine Veränderung
eines einzelnen Zeichens des Hauptpassworts eine Veränderung
jedes einzelnen Bits des Schlüssels
s bewirken. Würde man
ein Hauptpasswort HPW direkt als Schlüssel einsetzen, dann wären einzelne
Bits des Schlüssels s
mit deutlich größerer Wahrscheinlichkeit
als 0.5 vorhersagbar. Zusätzlich
werden in der Schlüsselableitungsfunktion
zeitaufwändige
Schritte vorgesehen, so dass das automatisierte Austesten unterschiedlicher
Hauptpasswörter
für einen
potenziellen Angreifer größeren Aufwand
erfordert.
-
Die
anwendungsspezifische Benutzeridentität bid, die benutzerspezifische
Anwendungsidentität aid
und die Versionsangabe v stellen den an das Verschlüsselungsverfahren
zu übergebenden
Klartext dar. Bevor die Verschlüsselung
vorgenommen wird, werden bid, aid und v zunächst konkateniert. Dabei können diese
Werte entweder direkt zusammengefügt werden (z.B. bid || aid
|| v mit "||" als Konkatenationsoperator)
oder es kann ein zusätzliches
Trennzeichen T eingefügt
werden (z.B. bid || T || aid || T || v). Für T kann man beispielsweise
einen Tabulator verwenden. Nachdem diese Zeichen zu einer Zeichenkette
konkateniert worden sind, wird die Zeichenkette wieder in Blöcke zerlegt,
deren Länge
der Blocklänge
bl des Verschlüsselungsverfahrens
entspricht. Bei AES gilt bl = 128 bit, bl = 192 bit oder bl = 256
bit, vorzugsweise bl = 128 bit. Beim letzten Block nach der Segmentierung
werden Paddingbits eingesetzt, um eine Blocklänge bl zu erreichen. Danach werden
die so erhaltenen Blöcke
im CBC-Modus durch
Anwendung des Schlüssels
s verschlüsselt. Hierbei
wird jeweils das Ergebnis einer bitweisen XOR-Verknüpfung des
aktuellen Klartextblocks mit dem Chiffrat des vorangegangenen Blocks
verschlüsselt.
Der erste Klartextblock wird mit einem Initialisierungswert init
bitweise XOR-verknüpft,
wobei init nicht notwendigerweise geheimgehalten werden muss und
für alle
Nutzer fest eingestellt und identisch sein kann. Das Chiffrat, welches
sich durch Verschlüsselung
mit dem letzten Klartextblock ergibt, sei mit prandom' bezeichnet. Ausgehend
von dem Wert prandom' wird
in den nächsten
Schritten so viel Pseudozufallsmaterial erzeugt, wie es zur Erzeugung
eines anwendungsspezifischen Passworts PW erforderlich ist.
-
Um
für die
Generierung von PW genügend Pseudozufallsmaterial
zu erzeugen, wird der Wert prandom' mit einem als Block mit Länge bl dargestellten
Zählerwert
i bitweise XOR-verknüpft,
bevor das Ergebnis unter Anwendung des Verschlüsselungsverfahrens mit dem
Schlüssel
s verschlüsselt
wird. Zu Beginn des Berech nungsvorgangs für ein anwendungsspezifisches
Passwort PW wird jeweils i = 1 gesetzt. Das Ergebnis der Verschlüsselung
bei Zählerwert
i wird mit prandomi bezeichnet. Aus diesem Pseudozufallsmaterial
prandomi wird unter Berücksichtigung der anwendungsspezifischen
Passwortregeln (definiert durch die Eingabegröße r – in der vorliegenden Anmeldung
wird der Begriff "Passwortregeln" immer im Plural
verwendet, auch wenn damit unter Umständen nur eine einzige Passwortregel
bezeichnet ist) schließlich
PW gebildet. Sofern das Pseudozufallsmaterial zur Erzeugung von
PW entweder ungeeignet ist oder noch nicht ausreicht, wird der Zähler um
1 hochgezählt
und ein neuer Wert prandomi+1 berechnet.
-
Die
Erzeugung eines anwendungsspezifischen Passworts PW aus dem vorliegenden
Pseudozufallsmaterial und die Steuerung zur Generierung weiteren
Pseudozufallsmaterials ist Aufgabe der Passwortableitungsfunktion
PAF. Ein von PAF erzeugtes PW muss hierzu die durch r definierten Passwortregeln
der jeweiligen Anwendung berücksichtigen.
Hierzu zählen
insbesondere die Anzahl A der zur Erzeugung von PW zur Verfügung stehenden Zeichen
und die Anzahl L der Zeichen in dem zu erzeugenden Passwort PW.
Der Wert. von A kann im konkreten Fall beispielsweise davon abhängen, ob bei
der Anwendung Groß-
und Kleinbuchstaben unterschieden werden, ob Ziffern erlaubt bzw.
gefordert oder verboten sind, oder ob Sonderzeichen erlaubt bzw.
gefordert oder verboten sind. Wie in Abbildung 7 exemplarisch
gezeigt wird, ergibt sich bei Unterscheidung von Groß- und Kleinbuchstaben,
erlaubten/geforderten Ziffern und erlaubten/geforderten Sonderzeichen
(im vorliegenden Beispiel aus einem Vorrat von 10 Sonderzeichen)
ein Wert von A = 72. Im Fall einer Unterscheidung von Groß- und Kleinbuchstaben,
erlaubten/geforderten Ziffern und verbotenen Sonderzeichen ergibt
sich ein Wert von A = 62, wie in 8 dargestellt
ist. Wird bei Passwörtern
hingegen nicht zwischen Groß-
und Kleinbuchstaben unterschieden, sind Ziffern erlaubt/gefordert und
sind auch Sonderzeichen (aus einem Vorrat von 10 Sonderzeichen)
erlaubt/gefordert, dann ergibt sich ein Wert A = 46, wie in 9 gezeigt
ist. Zur Erzeugung eines einzelnen Passwortzeichens zj extrahiert
die Passwortableitungsfunktion einen k-Block aus dem Pseudozufallsmaterial
prandomi. Ein solcher k-Block besteht aus
k Bits. Der Wert von k hängt von
dem Umfang A des zur Verfügung
stehenden Zeichenvorrats ab; es gilt, dass k der auf log2A folgenden ganzen Zahl entspricht. Jedem
Zeichen des für
ein anwendungsspezifisches Passwort zur Verfügung stehenden Zeichenvorrats
wird, wie in den 7, 8 und 9 gezeigt
wird, genau eine k-Blockbelegung zugeordnet. Auf Basis der vorliegenden
pseudozufälligen
k-Blöcke
und einer geeigneten Zuordnung von k-Blöcken zum Zeichenvorrat wird
schließlich
die Kodierung einzelner Passwortzeichen vorgenommen. Einigen kombinatorisch
möglichen
Wertebelegungen von k-Blöcken
ist jedoch kein Zeichen zugeordnet, was immer dann auftritt, wenn das
zum jeweiligen Zeichenvorrat gehörende
A ungleich einer Zweierpotenz ist.
-
Aus
Sicherheitsgründen
ist es wichtig, dass alle von dem Verfahren generierbaren Passwortkandidaten
gegebener Länge
L, welche ihrerseits den durch r definierten Passwortregeln genügen, für zufällig gewählte Hauptpasswörter mit
gleicher Wahrscheinlichkeit auftreten. Eine für das vorschlagene Verfahren
günstige
Vorgehensweise besteht darin, dass die Passwortableitungsfunktion
für ein
zu bildendes Passwortzeichen zj einen bisher
weder verwendeten noch verworfenen k-Block aus dem vorliegenden Pseudozufallsmaterial
ex trahiert und gemäß der vorliegenden
Zuordnung eine entsprechende Kodierung vornimmt. Enthält ein extrahierter
k-Block ein binäres
Muster, für
welches keine Zuordnung zu einem Element des Zeichenvorrats vorliegt,
dann wird dieser k-Block verworfen und ein neuer k-Block extrahiert.
Dies wird so lange wiederholt, bis der extrahierte k-Block eine
binäre
Belegung enthält,
für welche eine
Zuordnung zu einem Element des gegebenen Zeichenvorrats definiert
ist. Sind alle k-Blöcke
aus prandomi extrahiert, dann initiiert
die Passwortableitungsfunktion eine Inkrementierung des Zählers und die
Erzeugung von neuem Pseudozufallsmaterial prandomi+1,
von dem dann neue k-Blöcke
zur Kodierung von Passwortzeichen extrahiert werden können. Dieser
Vorgang wird für
alle Passwortzeichen zj für j = 1,
..., L durchgeführt.
-
Selbst
wenn in der im Vorangegangenen beschriebenen Weise eine Zeichenkombination
z1 || ... || zL über einem
durch r beschriebenen Zeichenvorrat erzeugt werden kann, ist nicht
garantiert, dass die erzeugte Kombination z1 ||
... || zL tatsächlich sämtlichen Anforderungen genügt, wie
diese in r enthalten sind. Mit dem bisher beschriebenen Vorgehen
lässt sich
beispielsweise noch nicht garantieren, dass Vertreter bestimmter
geforderter Zeichenklassen (z.B. Sonderzeichen) in der Zeichenkette
enthalten sind. Um diese Forderung zusätzlich erfüllen zu können, ist die folgende Vorgehensweise
von Vorteil. Nachdem die Zeichenkette z1 ||
... || zL erzeugt wurde, wird sie hinsichtlich
der Erfüllung
der in r gestellten Anforderungen getestet. Fällt der Test positiv aus, wird
die berechnete Zeichenkette z1 || ... ||
zL als anwendungsspezifisches Passwort PW
verwendet. Ist das Ergebnis des Tests hingegen negativ, dann wird
die berechnete Zeichenkette gelöscht
und vollständig
neu berechnet, indem nach oben beschriebenem Verfahren neue k-Blöcke extrahiert
werden und die entsprechende Kodierung vorgenommen wird. Der gesamte Vorgang
wird so lange wiederholt, bis der Test zu einem positiven Ergebnis
führt.
-
Bei
speziellen anwendungsspezifischen Passwortregeln kann es erforderlich
sein, dass an bestimmten Positionen im Passwort PW ein Vertreter eines
bestimmten Zeichentyps auftritt, z.B. das erste Zeichen eines anwendungsspezifischen
Passworts muss ein Buchstabe sein. Um auch in diesem Fall eine Gleichverteilung
von Passwörtern
erreichen zu können,
ist es vorteilhaft, positionsbezogen mit unterschiedlichen Zeichenvorräten zu arbeiten.
Je nach Umfang des Zeichenvorrats kann es hierbei günstig sein,
zur Berechnung einzelner Passwortzeichen mit unterschiedlichen Werten
für k zu
arbeiten. In dem Beispiel, in welchem in einem Passwort zwischen Groß- und Kleinbuchstaben
nicht unterschieden wird, Ziffern erlaubt und Sonderzeichen gefordert
sind und das erste Zeichen ein Buchstabe sein muss, ergeben sich
bei einem angenommenen Vorrat von 10 Sonderzeichen für die Zuordnung
bei der ersten Position ein Wert k = 5 und für die Zuordnung bei den restlichen
Positionen ein Wert k = 6.
-
Das
im Vorangegangenen beschriebene Verfahren soll in der Praxis auf
einem Endgerät
ausgeführt
werden, zu welchem der Benutzer Zugang hat. Hierbei kann es sich
sowohl um einen Computer des Benutzers handeln als auch um dessen
mobiles Endgerät
oder auch um einen fremden Computer, wie beispielsweise einen Computer
in einem Internet-Cafe. Hierzu sollte das Berechnungsverfahren entweder
in Form eines installierten Computerprogramms auf dem Endgerät verfügbar sein
oder es sollte bei Bedarf über
ein Kommunikationsnetz geladen und ausgeführt werden, beispielsweise
in Form eines signierten Applets, welches über das Internet geladen und
innerhalb eines Web-Browsers ausgeführt wird.
-
Zur
besseren Benutzbarkeit des Verfahrens ist es vorteilhaft, das Verfahren
auf einem Client auszuführen
und diesem die für
die Berechnung von anwendungsspezifischen Passwörtern erforderlichen Eingabewerte
bid, aid, v und r über
einen Serverdienst zur Verfügung
zu stellen. Dies wird in der 3 gezeigt.
Hierzu muss der Benutzer diese Eingabewerte zunächst einmal dem Server zur
Verfügung
stellen, wo diese Werte in einer Datenbank abgespeichert werden.
Aus Sicht eines Benutzers kann die Datenbank das komplette Benutzerprofil
enthalten, welches die Eingabewerte für alle Anwendungen umfasst,
bei welchen der Benutzer ein Zugangskonto hat. Auf dem Server ist
für den
Benutzer ein eigenes Benutzerkonto mit zugehöriger Benutzeridentität SBID angelegt,
unter welchem der Benutzer auf sein eigenes Benutzerprofil zugreifen
kann. Zur Sicherung des Benutzerprofils auf dem Server gegen unerwünschte Zugriffe
anderer wird von dem Client ein serverspezifisches Passwort SPW
des Benutzers zum Server übertragen.
Damit sich der Benutzer das serverspezifische Passwort SPW nicht
zusätzlich zum
Hauptpasswort HPW merken muss und auch neben dem Hauptpasswort HPW
kein zusätzliches Passwort
eingeben muss, wird das serverspezifische Passwort SPW in dem vom
Client ausgeführten
Verfahren aus dem Hauptpasswort HPW mittels einer Passwortfunktion
PF' berechnet. Die
Passwortfunktion PF' hat
hierbei die Eigenschaft, dass der Server aus dem serverspezifische
Passwort SPW nicht auf das Hauptpasswort HPW zurückschließen kann. Als Passwortfunktion
PF' kann beispielsweise
eine Variante des Verfahrens verwendet werden, welches im Vorangegangenen
vorgestellt und in 1 skizziert wurde. Die Variante
unterscheidet sich von dem Verfahren in 1 dadurch,
dass die Eingabewerte bid', aid', v' und r' für alle Benutzer
gleich und konstant gewählt
sind. Deshalb ist es vorteilhaft, die Eingabewerte bid', aid', v' und r' in die Ausführung von
PF' fest einzukodieren.
-
Die
Verwendung des Serverdienstes bringt für einen Benutzer bestimmte
Vorzüge
in der Bedienung. Er ist damit in der Lage, sich von jedem Endgerät mit Netzzugang
mit dem Server zu verbinden, seine Profildaten zu laden und sein
anwendungsspezifisches Passwort bei Bedarf zu berechnen und somit verfügbar zu
haben. Diese Profildaten enthalten die Eingabewerte bid, aid, v
und r für
alle Anwendungen, für
welche ein Benutzer auf Basis des hier vorgeschlagenen Verfahrens
Passwörter
generieren muss. Zur Berechnung eines einzelnen anwendungsspezifischen
Passworts wählt
ein Benutzer aus der in seinem Profil enthaltenen Liste von Anwendungen
die jeweilige Anwendung aus, so dass die entsprechenden Eingabewerte
bid, aid, v und r zur Berechnung an die Passwortfunktion (also an
die Mittel 6 zum Ausführen
der Passwortfunktion) übergeben
werden können.
-
Bei
dem mit dieser Erfindung vorgeschlagenen Verfahren ist es von Vorteil,
wenn ein Benutzer nach erfolgreicher Anmeldung bei dem Server sein Profil
auf der Datenbank von dem auf dem verwendeten Endgerät ausgeführten Client
aus verwalten kann. Hierzu kann der Benutzer die Liste der Anwendungen
verändern,
wie beispielsweise neue Anwendungen in der Liste anlegen, d.h. für die Anwendung neue
Werte bid, aid, v und r eingeben und diese auf der Datenbank abspeichern,
o der auch bereits eintragene Anwendungen in der Liste modifizieren
oder aus der Liste löschen.
-
Zur
Erhöhung
der Verfügbarkeit
der serverseitig gespeicherten Profildaten kann es vorteilhaft sein,
die Profildaten auf mehreren Servern abzulegen, deren gespeicherte
Profildaten vom Betreiber des Serverdienstes automatisch gespiegelt
(d.h. synchronisiert) werden. Der Client besitzt in dieser Ausgestaltung
des Verfahrens eine Liste aller existierender Server-Adressen, die Profildaten
gespeichert haben. Bei der Anwendung des der Erfindung zugrunde liegenden
Verfahrens versucht der Client, sich zunächst mit einem auf der Liste
befindlichen Server zu verbinden. Antwortet dieser Server nicht
innerhalb eines bestimmten Zeitraums, kontaktiert der Client sukzessive
jeweils einen weiteren auf der Liste befindlichen Server. In einer
vorteilhaften Ausgestaltung des Verfahrens enthält der Client bereits die Liste
der existierenden Server-Adressen. Die Reihenfolge, in welcher der
Client die Server anspricht, kann sich entweder aus einer sequentiellen
Abarbeitung der Liste ergeben, oder sie kann auch von dem Ergebnis
eines Zufallsprozesses bestimmt werden.
-
In
bestimmten Fällen
ist es einem Benutzer hilfreich, wenn er seine Profildaten nicht
notwendigerweise von dem Server laden muss und sie statt dessen
in anderer Weise zur Verarbeitung durch die Passwortfunktion (die
Vorrichtung PF) eingelesen werden können. Dies ist beispielsweise
der Fall, wenn der Server nicht verfügbar ist oder wenn das Passwort
für eine
lokale Anwendung benötigt
wird und kein Zugang zu einem Kommunikationsnetz verfügbar ist.
Deshalb ist es für
den Benutzer von Vorteil, das Verfahren derart umzusetzen, dass
entweder der Server zur Eingabe der Werte bid, aid, v und r verwendet
werden kann (siehe 3), oder diese auch ohne Verwendung
eines Serverdienstes in einem Offline-Betrieb eingegeben werden
können
(siehe 2 und 5). Für den Offline-Betrieb kann man
zwei Varianten unterscheiden. In der ersten Variante gibt der Benutzer
die neben einem Hauptpasswort zur Erzeugung eines anwendungsspezifischen
Passworts erforderlichen Werte bid, aid, v und r selbständig ein. Dies
wird in 2 gezeigt. In der zweiten Variante liest
der Benutzer die Werte bid, aid, v und r aus einer lokalen Profilablage
ein wie in 5. Hierbei kann es sich beispielsweise
um eine Datei handeln, welche das Benutzerprofil enthält und auf
dem Endgerät
des Benutzers abgespeichert ist. Die lokale Profilablage kann vom
Benutzer angelegt werden, indem er sein Benutzerprofil aus der Datenbank
des Servers auf sein Endgerät überträgt und dies
in der lokalen Profilablage, z.B. einer Datei, abspeichert, wie
in 4 gezeigt wird.
-
Zur
Rückmeldung
für den
Benutzer, dass er das Hauptpasswort HPW korrekt eingegeben hat,
ist es in dem vorgeschlagenen Verfahren vorteilhaft, einen optischen
Rückkanal
zur Verfügung
zu stellen. Bei diesem wird der Wert des eingegebenen Hauptpassworts
HPW auf eine spezielle optische Markierung OM abgebildet. Die Berechnung
und Ausgabe der optischen Markierung wird insbesondere in den 2 und 5 gezeigt.
Die optische Markierung OM wird dem Benutzer an der Bedienungsschnittstelle
angezeigt. Unterläuft
dem Benutzer bei der Eingabe des Hauptpassworts HPW ein Fehler,
so ist es sehr wahrscheinlich, dass sich die ihm angezeigte optische
Markierung OM von der ihm vertrauten und zum korrekten Hauptpasswort
HPW gehörenden
optischen Markierung unterscheidet. Die Abbildung des Hauptpassworts
HPW auf die optische Markierung OM kann in der vorliegenden Erfindung
mittels einer Einwegfunktion umgesetzt werden. Es kann beispielsweise
vorteilhaft sein, das eingegebene Hauptpasswort HPW an eine Hashfunktion
zu übergeben und
deren Ergebnis auf eine Menge von für den Benutzer unterscheidbaren
optischen Markierungen abzubilden. Hierbei ist in der Regel davon
auszugehen, dass die Menge der unterscheidbaren optischen Markierungen
deutlich kleiner ist als die Menge der Ergebnisse der Hashfunktion.
Deshalb können
verschiedene Hashwerte auf die gleiche optische Markierung OM abgebildet
werden. In der auszuführenden
Erfindung ist es wichtig, dass die Hashfunktion erst angewendet
und die optische Markierung OM angezeigt wird, wenn die Eingabe
des Hauptpassworts HPW abgeschlossen ist. Bei der optischen Markierung
kann es sich beispielsweise um ein spezielles Symbol handeln, welches
in einer bestimmten Farbe vor einer bestimmten Hintergrundfarbe
an einer bestimmten Position angezeigt wird, wobei eine feste Menge
von Symbolen, Symbolfarben, Hintergrundfarben und Positionen zur
Verfügung
stehen. Es ist darüberhinaus
von Vorteil, wenn dem Benutzer die zu seinem Hauptpasswort HPW gehörende optische
Markierung OM permanent angezeigt wird, nachdem dieser sein Hauptpasswort
HPW vollständig
eingegeben hat. Dadurch wird der Benutzer unterstützt, sich
die zu seinem Hauptpasswort HPW gehörende optische Markierung OM
einzuprägen.
-
Durch
die für
eine Anwendung gegebenen Passwortregeln wird eine Menge M induziert,
die alle Passwörter
enthält,
welche von der Anwendung akzeptiert werden. In der Praxis unterscheiden
sich die Mengen M für
unterschiedliche Anwendungen sehr stark. Daher ist es in der hier
vorgestellten Erfindung von Vorteil, die für die Passwortgenerierung verwendeten
Passwortregeln r nicht notwendigerweise derart zu formulieren, dass sämtliche
Elemente der Menge M für
jede Anwendung erreicht werden können. Es
soll lediglich sichergestellt werden, dass genügend Elemente der Menge M für jede Anwendung
als anwendungsspezifische Passwörter
generierbar sind. Dadurch kann das Verfahren bei nur sehr geringem
Interaktionsaufwand des Benutzers, d.h. durch die Konfiguration
nur sehr weniger Regeln (z.B. beim Anlegen eines Profileintrags
oder bei der Regeleingabe im Offline-Betrieb), die Passwortanforderungen einer
großen
Anzahl von Anwendungen erfüllen.
In einer vorteilhaften Ausführung
des vorgeschlagenen Verfahrens wird eine Standardeinstellung der
Passwortregeln gewählt,
bei welcher Passwörter
mit 16 Passwortzeichen erzeugt werden, wobei die Passwörter sowohl
Groß-
und Kleinbuchstaben, Ziffern und Sonderzeichen garantiert enthalten.
In dieser vorteilhaften Ausführung
werden folgende von der Standardeinstellung abweichende Konfigurationsoptionen
angeboten, welche ihrerseits in den anwendungsspezifischen Passwortregeln
r erfasst werden:
- • keine Unterscheidung zwischen
Groß-
und Kleinbuchstaben (d.h. das zu erzeugende Passwort enthält keine
Großbuchstaben)
- • Passwortlänge (d.h.
es kann eine vom Standardwert abweichende Passwortlänge gewählt werden)
- • keine
Sonderzeichen (d.h. das zu erzeugende Passwort enthält keine
Sonderzeichen)
- • erstes
Passwortzeichen soll Buchstabe sein (d.h. an der ersten Position
im Passwort steht weder Sonderzeichen noch Ziffer)
-
In
einer beispielhaften Form der praktischen Ausführung startet der Benutzer
zur Erzeugung eines anwendungsspezifischen Passworts ein Computerprogramm,
welches das hier beschriebene Verfahren ausführt.
-
Entscheidet
sich der Benutzer für
eine Verwendung des Serverdienstes, dann gibt er in den dafür vorgesehenen
Feldern des Clients seine serverspezifische Benutzeridentität SBID und
das Hauptpasswort HPW ein und initiiert die Übertragung von SBID und SPW
an den Server. Bei korrektem Serverpasswort SPW wird das Profil
an den Client übertragen.
An der Bedienungsschnittstelle des Clients werden dem Benutzer nun
sämtliche
Anwendungen präsentiert.
Nach Auswahl einer Anwendung (z.B. durch Anklicken einer Anwendung
in der Auswahlliste) wird das anwendungsspezifische Passwort berechnet und
in die Zwischenablage des Computers kopiert, damit der Benutzer
das Passwort bequem in die Anwendung übertragen kann. Nach einer
kurzen Zeit (z.B. 60 Sekunden) wird die Zwischenablage des Computers
wieder gelöscht.
Wenn der Benutzer sich bei dem Server angemeldet hat, kann er die
Einträge in
seinem Profil bei Bedarf ändern.
Verlangt eine Anwendung beispielsweise, dass das anwendungsspezifische
Passwort innerhalb bestimmter Zeiträume verändert werden muss, so wird
dies über
eine Modifikation der Versionsangabe v vorgenommen. Die Versionsangabe
kann beispielsweise ganzzahlige Werte beinhalten oder auch Werte,
die sich aus Monats- und Jahresangabe zusammen setzen, z.B. "Januar 2006". Entscheidet sich
der Benutzer, sein Hauptpasswort zu ändern, so ist er gezwungen,
bei allen Anwendungen das anwendungsspezifische Passwort zu ändern. In
einer vorteilhaften Ausführung
des hier beschriebenen Verfahrens wird es dem Benutzer ermöglicht,
durch korrekte Eingabe des alten Hauptpassworts und zweimalige korrekte
Angabe des neuen Hauptpassworts dem Server das neue Serverpasswort
mitzuteilen und dies zu aktivieren. Danach bereitet das Verfahren
die alten und neuen anwendungsspezifischen Passwörter für alle in der Liste enthaltenen
Anwendungen auf und stellt sie dem Benutzer zur bequemen Übertragung
in die jeweilige Anwendung über
die Zwischenablage nacheinander bereit.
-
Entscheidet
sich der Benutzer für
den in 2 gezeigten Offline-Betrieb, so muss er dem Programm
sein Hauptpasswort übergeben,
wie auch die anwendungsspezifische Benutzeridentität bid, die benutzerspezifische
Anwendungsidentität
aid und die Versionsangabe v von Hand eingeben. Soll das anwendungsspezifische
Passwort Anforderungen genügen,
welche mit der Voreinstellung nicht erfüllt werden können, dann
muss der Benutzer ebenfalls die Passwortregeln r von Hand modifizieren.
Wenn alle Werte eingegeben sind, kann die Berechnung des anwendungsspezifische
Passworts vom Benutzer gestartet werden. Nach der Berechnung wird
das anwendungsspezifische Passwort für eine kurze Zeit in der Zwischenablage
des Computers abgelegt, so dass es vom Benutzer bequem in die jeweilige
Anwendung übertragen
werden kann. Nach Ablauf einer fest einstellbaren Zeit wird das
anwendungsspezifische Passwort wieder aus der Zwischenablage des
Computers gelöscht.