§

Λειτουργία δημιουργίας

§

Ρυθμίσεις χαρακτήρων

Σύρετε για να ορίσετε το μήκος κωδικού. Εύρος: 4 έως 128 χαρακτήρες.
Αφαιρεί οπτικά παρόμοιους χαρακτήρες: 0, O, o, 1, l, I, | και backtick.
Εύρος: 1 έως 50. Κάθε αποτέλεσμα έχει το δικό του κουμπί αντιγραφής· η Αντιγραφή όλων τα συνενώνει με χαρακτήρες νέας γραμμής.
§

Έξοδος

    Οι ομάδες ασφαλείας στις ΗΠΑ δημιουργούν κωδικούς βάσει του πλαισίου NIST SP 800-63B, το οποίο υποβάθμισε τις υποχρεωτικές κλάσεις πολυπλοκότητας υπέρ του μήκους και της τυχαιότητας και το οποίο ακόμα αγκυρώνει κάθε αξιολόγηση πολιτικής κωδικών FedRAMP, HIPAA και PCI-DSS. Οι οργανισμοί του ΗΒ ακολουθούν την αντίστοιχη καθοδήγηση κωδικών του NCSC, η οποία επίσης προτιμά το μήκος έναντι των κλάσεων συμβόλων και υποστηρίζει ρητά τα διαπιστευτήρια τύπου φράσης πρόσβασης. Αυτή η γεννήτρια εκπέμπει κρυπτογραφικά τυχαίες συμβολοσειρές χαρακτήρων ή φράσεις πρόσβασης λίστας λέξεων EFF εξ ολοκλήρου μέσω του Web Crypto API του προγράμματος περιήγησης — ποτέ μέσω Math.random(), ποτέ με γύρο σε διακομιστή. Χρήσιμο για εφάπαξ κουπόνια API, διαπιστευτήρια λογαριασμών υπηρεσίας ή εγγραφές seed 1Password / Bitwarden που δεν πρέπει ποτέ να εμφανίζονται σε αναζήτηση ιστορικού προγράμματος περιήγησης.

    Τι κάνει αυτή τη γεννήτρια κωδικών διαφορετική;

    Αυτή είναι μια γεννήτρια κωδικών με προτεραιότητα την ιδιωτικότητα, αποκλειστικά στο πρόγραμμα περιήγησης. Κάθε τυχαίο byte προέρχεται από την κρυπτογραφική γεννήτρια τυχαίων αριθμών του λειτουργικού σας συστήματος μέσω crypto.getRandomValues — ποτέ από Math.random. Η σελίδα δεν κάνει καμία αίτηση δικτύου για να δημιουργήσει έναν κωδικό και η παραγόμενη τιμή δεν φεύγει ποτέ από την καρτέλα σας. Ανοίξτε τον πίνακα Δικτύου στα DevTools και κάντε κλικ στο Δημιουργία: παραμένει σιωπηλό.

    Πώς λειτουργεί αυτή η γεννήτρια κωδικών;

    Το εργαλείο τρέχει εξ ολοκλήρου σε JavaScript μέσα στο πρόγραμμα περιήγησής σας. Δεν υπάρχει γύρος διακομιστή, κανένας φάρος αναλυτικών που μεταφέρει τον κωδικό και καμία απομακρυσμένη αίτηση γραμματοσειράς μετά τη φόρτωση της σελίδας.

    1. Seed από τον CSPRNG του ΛΣ. Κάθε τυχαίος ακέραιος προέρχεται από crypto.getRandomValues(new Uint32Array(n)) — την ίδια κρυπτογραφικά ασφαλή πηγή που χρησιμοποιεί το πρόγραμμα περιήγησης για υλικό κλειδιού TLS και crypto.randomUUID. Το Math.random δεν καλείται ποτέ σκόπιμα· μια αναζήτηση σε όλο το έργο το επιβάλλει.
    2. Συναρμολόγηση συνόλου χαρακτήρων. Η λειτουργία τυχαίων χαρακτήρων συνενώνει τις ενεργοποιημένες κλάσεις χαρακτήρων — κεφαλαία, πεζά, ψηφία, σύμβολα — σε ένα μόνο αλφάβητο. Η επιλογή «Εξαίρεση διφορούμενων» αφαιρεί στη συνέχεια οπτικά παρόμοια γλυφά (0, O, o, 1, l, I, |, backtick) ώστε ο κωδικός να μην είναι διφορούμενος όταν διαβάζεται δυνατά ή αντιγράφεται με το χέρι.
    3. Αμερόληπτη δειγματοληψία ευρετηρίου. Η αντιστοίχιση ενός 32-bit ακέραιου χωρίς πρόσημο σε ένα ευρετήριο συνόλου χαρακτήρων αφελώς (modulo) εισάγει μια μικρή μεροληψία όταν το μέγεθος του συνόλου δεν διαιρεί το 2^32 ομοιόμορφα. Το εργαλείο χρησιμοποιεί δειγματοληψία απόρριψης: οποιοδήποτε δείγμα πέφτει στην ουρά modulo απορρίπτεται και ανασύρεται, οπότε κάθε χαρακτήρας στο σύνολο είναι εξίσου πιθανός.
    4. Μαζική δημιουργία. Για τη λειτουργία τυχαίων χαρακτήρων μπορείτε να ζητήσετε 1 έως 50 κωδικούς με ένα κλικ. Κάθε αποτέλεσμα αποδίδεται ως μια γραμμή με τη δική του εκτίμηση εντροπίας, κατηγορία ισχύος και κουμπί Αντιγραφή. Το κουμπί «Αντιγραφή όλων» συνενώνει τις γραμμές με χαρακτήρες νέας γραμμής ώστε να μπορείτε να επικολλήσετε σε ένα αρχείο CSV ή εισαγωγής θησαυροφυλακίου.
    5. Λειτουργία φράσης πρόσβασης. Γυρίστε τον διακόπτη λειτουργίας και η σελίδα φορτώνει με τεμπελιά τη Σύντομη Λίστα Λέξεων EFF #1 (1296 λέξεις αγγλικών δημόσιου τομέα) στην πρώτη χρήση. Φράσεις πέντε λέξεων δίνουν περίπου 51,7 bits εντροπίας — αρκετά για καθημερινούς λογαριασμούς και πολύ πιο εύκολες στη μνήμη από μια τυχαία σούπα 9 χαρακτήρων. Μετά από αυτή τη μία λήψη ίδιας προέλευσης, η σελίδα είναι ξανά σιωπηλή.

    Γιατί να χρησιμοποιήσετε αυτή τη γεννήτρια κωδικών;

    • Ο κωδικός σας δεν φεύγει ποτέ από το πρόγραμμα περιήγησής σας. Δεν υπάρχει τελικό σημείο διακομιστή, καμία κλήση αναλυτικών που μεταφέρει την τιμή, καμία απομακρυσμένη γραμματοσειρά, καμία τηλεμετρία. Ανοίξτε DevTools, δημιουργήστε έναν κωδικό και δείτε τον πίνακα Δικτύου να παραμένει κενός.
    • Κρυπτογραφικά ασφαλής τυχαιότητα, εκ κατασκευής. Κάθε ακέραιος προέρχεται από crypto.getRandomValues, με δειγματοληψία απόρριψης έναντι μεροληψίας modulo. Το πιο κοινό σφάλμα στις γεννήτριες κωδικών προγράμματος περιήγησης — η χρήση Math.random για εντροπία — είναι δομικά αδύνατο εδώ.
    • Δύο λειτουργίες, ένα εργαλείο. Η λειτουργία τυχαίων χαρακτήρων παράγει συμβολοσειρές υψηλής εντροπίας για διαχειριστές κωδικών· η λειτουργία φράσης πρόσβασης παράγει ανθρώπινα-απομνημονεύσιμες συμβολοσειρές τύπου xkcd (correct-horse-battery-staple) με τη Σύντομη Λίστα Λέξεων EFF #1. Ίδιο μοντέλο ιδιωτικότητας και στα δύο.
    • Διαφανής εντροπία. Κάθε παραγόμενη γραμμή δείχνει την εντροπία της σε bits και μια σαφή ετικέτα ισχύος, ώστε να βλέπετε με μια ματιά αν μια συμβολοσειρά 12 χαρακτήρων χωρίς σύμβολα είναι πραγματικά τόσο ισχυρή όσο μια φράση 5 λέξεων. Χωρίς διαφημιστικά φύλλα, μόνο οι αριθμοί.

    Ποιες είναι οι συνήθεις εφαρμογές των δημιουργημένων κωδικών;

    Όποτε χρειάζεστε ένα νέο τυχαίο μυστικό, αυτό είναι το εργαλείο που ελαχιστοποιεί την επιφάνεια εμπιστοσύνης:

    • Εισαγωγές διαχειριστή κωδικών. Δημιουργήστε 50 ισχυρούς κωδικούς σε μία παρτίδα, κάντε κλικ στην Αντιγραφή όλων, επικολλήστε στην εισαγωγή CSV του θησαυροφυλακίου σας. Οι τιμές δεν πέρασαν ποτέ από κανέναν διακομιστή, οπότε δεν υπάρχει παράθυρο διαρροής μεταξύ δημιουργίας και αποθήκευσης.
    • Κύριες φράσεις πρόσβασης. Μεταβείτε στη λειτουργία φράσης πρόσβασης, επιλέξτε 6 ή 7 λέξεις, προαιρετικά με κεφαλαίο πρώτο γράμμα κάθε λέξης και έχετε μια συμβολοσειρά υψηλής εντροπίας που μπορείτε πραγματικά να θυμάστε χωρίς να τη γράψετε. Περίπου 62 bits εντροπίας από 6 λέξεις — πολύ πάνω από το όριο για επίθεση εκτός σύνδεσης.
    • Κλειδιά API και κουπόνια σε πλαϊνά έργα. Χρειάζεστε ένα εφάπαξ κοινό μυστικό για ένα κλειδί υπογραφής webhook ή έναν κωδικό βάσης δεδομένων ανάπτυξης; Δημιουργήστε μια συμβολοσειρά 32 χαρακτήρων πλούσια σε σύμβολα εδώ, αντιγράψτε την μία φορά και το μόνο μέρος που υπήρξε ποτέ κατά τη μεταφορά ήταν μέσα στη δική σας καρτέλα προγράμματος περιήγησης.

    Πώς μοιάζει ένα παράδειγμα δημιουργημένου κωδικού;

    Ορίστε μήκος 16, αφήστε και τις τέσσερις κλάσεις χαρακτήρων ενεργοποιημένες και κάντε κλικ στο Δημιουργία. Το σύνολο χαρακτήρων έχει 26 + 26 + 10 + 32 = 94 χαρακτήρες, οπότε κάθε δημιουργημένος χαρακτήρας φέρει log2(94) ≈ 6,55 bits εντροπίας. Δεκαέξι χαρακτήρες προσγειώνονται σε περίπου 104,9 bits — πολύ πάνω από το όριο των 80 bits «πολύ ισχυρός» και πρακτικά αδύνατο να σπάσει με ωμή βία με το τρέχον υλικό. Τώρα μεταβείτε στη λειτουργία φράσης πρόσβασης, επιλέξτε 5 λέξεις με το προεπιλεγμένο διαχωριστικό παύλας: cocktail-sprig-aspect-magenta-tonic φέρει log2(1296) x 5 ≈ 51,7 bits. Αξέχαστο, πληκτρολογήσιμο και ισχυρότερο από τον μέσο ανθρώπινο κωδικό.

    Δημιουργήστε, αντιγράψτε, προχωρήστε. Η σελίδα δεν βλέπει ποτέ διακομιστή, ο κωδικός δεν φεύγει ποτέ από την καρτέλα σας και η εντροπία υπολογίζεται από πρώτες αρχές. Αυτή είναι η όλη υπόσχεση.