Frage:
Mehrere Passwortfelder für eine Anmeldung
Cup of Java
2016-10-24 23:50:17 UTC
view on stackexchange narkive permalink

In diesem hypothetischen Szenario gibt es eine Eingabe für einen Benutzernamen und zwei separate Kennwortfelder. Ein Benutzer muss über zwei separate Kennwörter verfügen, die er eingeben muss, bevor er sich anmelden kann. Hätte dies einen Vorteil gegenüber einem einzelnen Passwort, das der Länge von Passwort eins und zwei zusammen entspricht? (Ich bin nicht besorgt über die Benutzerfreundlichkeit für den Benutzer hier)

Zusätzlich zu allen unten aufgeführten Gründen wird die Verwendung von Passwort-Managern verhindert oder zumindest erschwert.Da das Passwort, an das man sich erinnern kann, "nutzlos" ist, müssen Sie die Benutzer lediglich dazu zwingen, zwei nutzlose Passwörter zu erstellen (im Vergleich zur Verwendung von beispielsweise 60 Zeichen, die vollständig zufällig und eindeutig sind).
@MaciejPiechotka `... erschweren den Einsatz von Passwort-Managern.`, was je nach Bedrohungsmodell, Schuldmodell und Nutzungsmodell eine gute Sache sein kann.Damit dieses Schema einen Nutzen bringt, müssen die Passwörter verschiedene Dinge beweisen, z."Nur wenn Passwort1 korrekt ist, wird Passwort2 ausgewertet. Nur wenn Passwort2 falsch ist, wird die Kontosperrung ausgelöst."oder "Passwort1 beweist den Zugriff auf den Passwort-Manager, Passwort2 ist leicht zu merken."oder solche.Normalerweise nicht die Mühe wert, aber der hypothetische Vorteil ist genau dort.
Acht antworten:
Anders
2016-10-25 00:08:40 UTC
view on stackexchange narkive permalink

Ich stimme den anderen Antworten zu:

  • Es fügt keine oder wenig Entropie hinzu, verglichen mit der Verwendung eines längeren Passworts (wie Steffen Ullrich hervorhebt).
  • Wenn Sie die Passwörter separat hashen, können die Hashes im Vergleich zu einem Hash eines langen Passworts leichter geknackt werden (wie lengyelg hervorhebt).

Aber ich möchte einen Punkt hinzufügen, der sich auf das Benutzerverhalten bezieht.

Wenn der Benutzer gezwungen wird, zwei Kennwörter anstelle von einem auszuwählen, wird der Benutzer wahrscheinlich aus purer Erschöpfung schlechtere Kennwörter auswählen. Sie werden die Leute nur dazu ermutigen, dasselbe Passwort zweimal mit einigen Änderungen zu wiederholen, um Blockaden zu vermeiden, die Sie eingerichtet haben, um dies zu verhindern.

Wenn Sie berücksichtigen, dass der Mensch die Passwörter auswählt, sind Sie am Ende weniger sicher , nicht mehr. Es ist im besten Fall nur ärgerlich, ohne Sicherheitsvorteile und im schlimmsten Fall direkt schädlich für die Sicherheit.

+1 dafür.Ich denke, es ist die wichtigste Antwort.Sicherheit funktioniert nur, wenn es einfach ist.Passwörter sind schwer genug und 2 Passwörter sind super schwer, so dass die Leute nur faul werden.Es ist schon schlimm genug für die 3 Sicherheitsfragen
Und da sich Menschen nicht gerne an Dinge erinnern, erstellen die meisten Benutzer einfach * "Passwort" + "Passwort1" * oder * "Passwort1" + "Passwort2" * oder sogar * "Passwort" + "PasswortSekunde" *.
Diese zweite Kugel ist besonders interessant, da es möglicherweise Kryptoanalysetechniken speziell für jeden gegebenen Hash-Algorithmus gibt.... Diese Antwort ist gut aufgebaut.... Leser sollten sich daran erinnern, dass sich dieser Fall von dem zweimal eingegebenen Einzelkennwort unterscheidet. Dies ist ein fairer Weg, um sicherzustellen, dass der Benutzer das eingegeben hat, was er für eingegeben hält.
Gabor Lengyel
2016-10-25 00:03:02 UTC
view on stackexchange narkive permalink

Es ist tatsächlich weniger sicher , zwei separate Kennwortfelder in dem Sinne zu haben, dass es einfacher sein kann, zwei kürzere Kennwörter aus einer Regenbogentabelle zu finden als ein langes Kennwort, wenn Kennwort-Hashes separat gespeichert werden . Wenn ein einzelner Hash für das verkettete Kennwort gespeichert ist, entspricht dies natürlich einem Kennwortfeld.

Ich denke, für die Zwecke dieser Frage können wir davon ausgehen, dass die Regenbogentabelle durch zufällige Salze für jedes Passwort in Kombination mit einem starken Verschlüsselungsalgorithmus (z. B. bcrypt) aufgehoben wird.Wie ändert das Ihre Antwort?
@jpmc26 Das Knacken von zwei n-Buchstaben-Hash-Hashes ist immer noch einfacher als das Knacken eines 2-n-Buchstaben-Hash.Sicher, es könnte unmöglich sein, selbst den "n" -Buchstaben-Hash zu krachen, aber wenn man bedenkt, wie Leute Passwörter auswählen, die nicht als selbstverständlich angesehen werden können.
Steffen Ullrich
2016-10-24 23:59:47 UTC
view on stackexchange narkive permalink

Der einzige Unterschied zwischen Ihrem Vorschlag für zwei Kennwörter P1 und P2 und einem einzelnen Kennwort P1 + P2 besteht darin, dass die Zeichenfolge P1 + P2 aufgeteilt wird, um die beiden Kennwörter zu erhalten. Im Vergleich zu der Komplexität, die bereits mit einem langen Passwort erreicht werden kann, erhöht dieser zusätzliche Schritt die Komplexität fast nicht und erschwert das Knacken des Passworts nicht wirklich.

John Wu
2016-10-25 00:51:38 UTC
view on stackexchange narkive permalink

Abhängig.

Ja

Aus theoretischer Sicht nimmt die Entropie leicht zu, da die Position der Unterbrechung zwischen dem ersten und dem zweiten Kennwort zusätzliche Informationen darstellt.

Ein großes Passwort. Angenommen, Sie haben ein Passwort und der Benutzer gibt 16 Zeichen ein. Der Einfachheit halber muss das Passwort numerisch sein. Dies entspricht 10 ^ 16 möglichen Permutationen oder 10.000.000.000.000.000 (10 Billiarden).

Zwei Passwörter. Nehmen wir nun an, Sie haben zwei Passwörter mit insgesamt 16 Zeichen. Sie würden denken, es gibt 10 ^ 16 Kombinationen, aber tatsächlich gibt es mehr. Addieren wir sie:

Wenn das erste Passwort eine Ziffer und das zweite 15 Ziffern hat, entspricht dies 1 ^ 10 x 15 ^ 10 = 10.000.000.000.000.000 Permutationen.

Wenn das erste Das Passwort besteht aus 2 Ziffern und das zweite aus 14 Ziffern, was 2 ^ 10 x 14 ^ 10 = 10.000.000.000.000.000 Permutationen entspricht.

Wenn das erste Passwort 3 Ziffern und das zweite 13 Ziffern hat, entspricht dies 3 Ziffern ^ 10 x 13 ^ 10 = 10.000.000.000.000.000 Permutationen.

...

Wenn das erste Passwort 15 Ziffern und das zweite 1 Ziffer hat, entspricht dies 15 ^ 10 x 1 ^ 10 = 10.000.000.000.000.000 Permutationen.

Es gibt 15 mögliche Fälle mit insgesamt 150.000.000.000.000.000 Permutationen (150 Billiarden).

Vergleich. Seit 150 Billiarden> 10 Billiarden, ja Die Entropie nimmt etwas zu, und daher ist es schwieriger, die beiden Passwörter zu erraten als das eine lange Passwort.

Die obigen Annahmen (Länge = 16, Zeichensatz = 10) können geändert werden Mathe wird immer noch funktionieren .

Nein

Andererseits gilt abhängig davon, wie das System das Kennwort auswertet, das oben Gesagte möglicherweise nicht, z. wenn die Website die Passwörter kombiniert und zusammenhält, anstatt sie getrennt zu halten. Wenn dies der Fall ist, ist keine zusätzliche Rechenleistung erforderlich, um das Kennwort zu fälschen, da tatsächlich 15 verschiedene Kennwortkombinationen funktionieren. 150 Billiarden ÷ 15 = 10 Billiarden, damit Sie wieder da sind, wo Sie angefangen haben.

Es ist noch schlimmer!

Siehe lengyelgs Antwort, die genau richtig ist:

Es ist tatsächlich weniger sicher, zwei separate Kennwortfelder zu haben, da es einfacher sein kann, zwei kürzere Kennwörter aus einer Regenbogentabelle zu finden als ein langes Kennwort, wenn Kennwort-Hashes separat gespeichert werden. Wenn ein einzelner Hash für das verkettete Passwort gespeichert ist, entspricht dies natürlich einem Passwortfeld.

Warum sollte man sich die Mühe machen?

Meiner Meinung nach ist dies weitaus einfacher Wenn Sie eine zusätzliche Ziffer benötigen, als zwei separate Kennwörter erforderlich sind, wirkt sich dies immer stärker aus, wenn Ihr Zeichensatz größer ist als die Länge der beiden Kennwörter zusammen (was mit ziemlicher Sicherheit der Fall sein wird).

Sie erwähnen im Fall Nein, dass es davon abhängt, wie das System das Kennwort auswertet.Wie würde das System die einzelnen Passwörter bewerten, um die Entropie zu erhöhen?Würde es einer McCarthy-Bewertung folgen?
Ja, es könnte eine McCarthy-Bewertung verwenden oder einfach die beiden Passwörter zusammen mit einem Trennzeichen hashen.Die Position des Begrenzers bildet die zusätzliche Entropie.
Yury Kochubeev
2016-10-24 23:56:05 UTC
view on stackexchange narkive permalink

Soweit ich weiß, entsprechen diese 2 Passwörter mit der Länge N bzw. K einem Passwort mit der Länge N + K. Sehr geringe Wahrscheinlichkeit, dass Benutzer sicherere Passwörter verwenden, indem sie sich zwei separate Wörter merken. Ein Wörterbuchangriff erzwingt dies jedoch ohne ernsthafte Probleme.

Out of Band
2016-10-25 00:40:47 UTC
view on stackexchange narkive permalink

Ja, es kann einen Unterschied geben, abhängig davon, wie die beiden Passwörter ausgewählt werden.

Wenn eines der Passwörter vom Benutzer ausgewählt und das andere von erstellt wird Ein Pseudozufallszahlengenerator, wie er Ihre Bank Online-Kunden zur Verfügung stellt, oder ein Passwort, das aus einer Liste von Passwörtern ausgewählt wurde, die Ihnen vom Site-Betreiber gesendet wurden. Dabei müssen Sie immer das zuletzt verwendete Passwort streichen und das verwenden Das nächste Mal würde das einen Unterschied machen.

Wenn Sie einen Benutzer zwei Passwörter selbst auswählen lassen, sind sie wahrscheinlich nicht sehr gut, und Sie wären mit einem Passwort besser dran war doppelt so lang, da es für einen Brute-Force-Passwortschätzer schwieriger sein würde, frühzeitig zu raten. Wenn jedoch die Hälfte des Kennworts eines Benutzers eine starke, quasi zufällige Zeichenfolge ist, die sich bei jeder Anmeldung ändert, verbessert dies die Sicherheit des Anmeldevorgangs und aller zukünftigen Sitzungen und schützt vor den Konsequenzen, wenn ein Benutzer dazu verleitet wird, sein Kennwort preiszugeben ausgewähltes Passwort oder sogar die aktuelle Kombination von Passwörtern.

Beachten Sie, dass dies das Knacken eines Passworts nicht erschwert, wenn die Benutzerpasswortdatenbank gestohlen wird, da das tatsächlich in der Passwortdatenbank gespeicherte Passwort weiterhin vorhanden ist Seien Sie nur derjenige, den der Benutzer selbst ausgewählt hat.

Offensichtlich beschreiben Sie im ersten Fall die Authentifizierung durch zwei Faktoren ... kann sich geringfügig im Timing zwischen den beiden Passwörtern unterscheiden.
Blackbeagle
2016-10-25 02:45:19 UTC
view on stackexchange narkive permalink

Der Hauptgrund, den ich mir für dieses Szenario vorstellen kann, ist, wenn Sie die Anforderung haben möchten, dass sich zwei Personen authentifizieren müssen, anstatt einer einzelnen Person zu vertrauen - ähnlich wie in populären Filmen zwei Raketenstartschlüssel angezeigt werden. P1 hat ein Passwort, P2 hat ein Passwort und wenn beide sie eingeben, verwendet das System beide, um den tatsächlichen Schlüssel zu erstellen, der zur Authentifizierung verwendet wird. Somit kann keiner für sich entsperren. Es erhöht theoretisch die Sicherheit, aber bei der möglichen Gefahr eines Zugangsverlusts (man wird vom hypothetischen Bus getroffen).

Xiong Chiamiov
2016-10-25 05:26:51 UTC
view on stackexchange narkive permalink

Es gibt noch einen Punkt, an dem ich noch niemanden angesprochen habe. Dies ist eine spezielle Frage, die aus Ihrer Frage nicht klar hervorgeht: Ist die Reihenfolge der Kennwörter wichtig?

In einigen Systemen, z Unter Verwendung einer Variation von Shamirs Secret Sharing wurde das System unter der Annahme entwickelt, dass die mehreren Passwörter von mehreren Parteien gehalten werden und daher die Reihenfolge, in der sie eingegeben werden, keine Rolle spielt.

Wenn Sie in diesem Szenario jedoch ein ähnliches Schema verwendet haben, können Sie einem Angreifer jetzt die Eingabe mit bar und foo ermöglichen, wenn der Benutzer seine Kennwörter auf foo und bar . Wenn wir dies mit einem kombinierten Einzelpasswort vergleichen, haben Sie die Anzahl der gültigen Einträge von foobar auf foobar und barfoo verdoppelt.

Bei zwei Passwörtern ist dies wahrscheinlich keine große Sache. Wenn Sie die Anzahl der Kennwörter erhöhen, wird dies zu einem größeren Problem. Um drei haben wir jetzt 3! = 6 gültige kombinierte Passwörter, bei 4 haben wir 4! = 24 und so weiter, schnell ansteigend.



Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...