Correct Horse .org

Passwords done right

Dein Correct-Horse-Password

Klicke auf den Button um ein neues zu erzeugen


Ich brauche mehr Einstellungen …

Das Passwort wird aus den folgenden Wörtern generiert:

Warum ist das ein gutes Passwort?

Was macht ein gutes Passwort aus?


Das Passwort oben enthält über 51 Bit Entropie. Das bedeutet, dass es so zufällig ist, wie das Ergebnis des Werfens von 51 Münzen nacheinander. Das ist so, weil jedes Wort zufällig aus einer Liste von 7450 verschiedenen Wörtern ausgewählt wurde – was einer Entropie von ungefähr 13 Bits entspricht.

Das heißt, es ist so zufällig wie ein komplett zufälliges Passwort der Länge 8, das aus Großbuchstaben, Kleinbuchstaben und Zahlen generiert wird. Allerdings ist es viel einfacher zu merken als ein komplettes zufälliges Passwort von 8 Zeichen. Oder wie Randal Munroe es ausdrückt:

Von Randall Munroes berühmtem Webcartoon XKCD (xkcd.com).

Warum kann ich dieser Seite vertrauen …

… mit so etwas Wichtigem wie meinem Passwort?


Kurze Antwort: Das sollten Sie nicht. Sie sollten damit keiner Website vertrauen.

Diese Seite ist jedoch so einfach wie möglich gehalten (vom Quellcode her). Sie können sich also davon überzeugen, dass

  • das Passwort wird komplett zufällig generiert (soweit wie Ihr Browser Math.random() implementiert),
  • das Passwort wird nicht an den Server gesendet,
  • nichts anderes außer der Passwort-Generierung gemacht wird.

Da das Passwort niemals an einen Server geschickt wird, kann auch niemand zwischendurch das Passwort lesen (außer der Kollege, der hinter Ihnen steht). Um sicherzustellen, dass auch diese Webseite überhaupt nicht verändert wurde, sollten Sie überprüfen, dass Sie diese Webseite sicher über HTTPS abgerufen haben und die Verbindung mit einem vertrauenswürdigen Zertifikat hergestellt wurde.

Wenn Sie den Quelltext dieser Website betrachten, können Sie sehen, dass der einzige Code, der am Ende der Seite eingefügt wurde, das kleine Snippet ist, das Sie unten sehen können. Es gibt keinen JS-Framework, keine Werbung, die eingebettet ist, keine Google Analytics und es gibt keinen Facebook-Button, garnichts. Aber zögern Sie nicht, trotzdem diese Seite auf Facebook zu teilen, wenn Sie Ihnen gefällt! :)

<script>
    function generatePassword() {
        var wordlist = document.getElementById("wordlist").value.split(" ");

        var password = "";
        for (var i = 0; i < 4; i++) {
            var randomIndex = wordlist.length;
            while (randomIndex >= wordlist.length) {
                randomIndex= crypto.getRandomValues(new Uint16Array(1))[0];
            }
            password += wordlist[randomIndex] + " ";
        }

        document.getElementById("password").value = password.trim();
    }

    generatePassword();
</script>

Welche Wörter werden verwendet?

Kann ich die Wortlisten auch herunterladen?


Die verwendeten Wortlisten können hier heruntergeladen werden:

English: english.txt

8239 words

SHA256: 653feb8810030900e2ae28157cfb67d5fd818a40f966490202cb4b892201dfe0

Deutsch / German: german.txt

7450 words

SHA256: facbd5327d539236af52a1bb7c0b786444f2259cb54b08236c08cf2b75d806cf

Français / French: french.txt

7937 words

SHA256: 4b2ca906b0cc99b7913299cef5b34749db89ba42ee92ef86c6605efc2e5739bf

Nederlands / Netherlands: netherlands.txt

8972 words

SHA256: b91cebd43bd96c9499cfc2f7a36ccb7fa2e8442b390f282125280cb73c63500c


Die Wortlisten stammen aus dem Wortschatz-Projekt Der Universität Leipzig. Sie sind nach den Wortschatz-Nutzungsbedingungen unter CC-BY-NC Lizenz verfügbar (gemäß den Wortschatz Nutzungsbedingungen). Wörter, die andere Zeichen als Buchstaben enthalten und sehr kurze Wörter wurden herausgefiltert. Außerdem wurden alle Wörter in Kleinschreibung umgewandelt.

Sie können diese Dateien verwenden, um Ihr Passwort lokal zu generieren. Wenn Sie Linux verwenden, können Sie einfach den folgenden Befehl aufrufen (<file> durch die entsprechende Datei ersetzen):

shuf -n 4 <file> | tr '\n' ' '