Πώς να το χρησιμοποιήσετε
- Επιλέξτε v4 για τυχαία αναγνωριστικά ή v7 για αναγνωριστικά που ταξινομούνται κατά χρόνο δημιουργίας.
- Ορίστε πόσα χρειάζεστε (1 έως 1.000) και επιλέξτε τη μορφή: κεφαλαία, με ή χωρίς ενωτικά, με ή χωρίς άγκιστρα.
- Αντιγράψτε ένα μόνο UUID με το κουμπί του, αντιγράψτε όλα ή κατεβάστε τα ως αρχείο κειμένου με ένα UUID ανά γραμμή.
- Για να ελέγξετε ένα υπάρχον UUID, επικολλήστε το στο «Έλεγχος UUID».
Πώς λειτουργεί
Ένα UUID (ονομάζεται και GUID) είναι ένα αναγνωριστικό 128 bit, που συνήθως γράφεται ως 32 δεκαεξαδικά ψηφία σε πέντε ομάδες: 8-4-4-4-12. Το πρώτο ψηφίο της τρίτης ομάδας δηλώνει την έκδοση και το πρώτο ψηφίο της τέταρτης ομάδας κωδικοποιεί την παραλλαγή (8, 9, a ή b για τα τυπικά UUID). Η μορφή ορίζεται στο RFC 9562, το οποίο αντικατέστησε το RFC 4122 το 2024.
Τα UUID έκδοσης 4 είναι τυχαία. Αυτό το εργαλείο χρησιμοποιεί το crypto.randomUUID όπου είναι διαθέσιμο και διαφορετικά το crypto.getRandomValues· και τα δύο είναι κρυπτογραφικά ασφαλή· δεν χρησιμοποιεί ποτέ το Math.random. Με 122 τυχαία bit, η πιθανότητα σύγκρουσης δύο UUID v4 είναι αμελητέα: θα χρειαζόταν να δημιουργήσετε περίπου 2,7 × 10^18 από αυτά για 50% πιθανότητα μίας μόνο διπλότυπης τιμής.
Τα UUID έκδοσης 7 ξεκινούν με μια χρονική σήμανση Unix 48 bit σε χιλιοστά του δευτερολέπτου, ακολουθούμενη από την έκδοση, ένα πεδίο 12 bit και 62 τυχαία bit. Επειδή η ώρα προηγείται, οι τιμές v7 ταξινομούνται κατά σειρά δημιουργίας, γεγονός που διατηρεί τα ευρετήρια της βάσης δεδομένων συμπαγή και κάνει τις εισαγωγές ταχύτερες από ό,τι με τυχαία κλειδιά v4. Όταν δημιουργούνται πολλά UUID v7 στο ίδιο χιλιοστό του δευτερολέπτου, αυτό το εργαλείο χρησιμοποιεί το πεδίο των 12 bit ως μετρητή (η μέθοδος που περιγράφεται στο RFC 9562, ενότητα 6.2), ώστε μια παρτίδα να βρίσκεται πάντα σε αυστηρά αύξουσα σειρά. Σημειώστε ότι ένα UUID v7 αποκαλύπτει πότε δημιουργήθηκε.
Ο ελεγκτής δέχεται UUID με ή χωρίς ενωτικά, με κεφαλαία ή πεζά, σε άγκιστρα ή με πρόθεμα urn:uuid:. Αναφέρει την έκδοση και την παραλλαγή, αναγνωρίζει τα ειδικά nil και max UUID και εμφανίζει τον ενσωματωμένο χρόνο δημιουργίας για τις εκδόσεις 1, 6 και 7.
Παραδείγματα
Πρωτεύοντα κλειδιά για νέο πίνακα
Δημιουργήστε 100 UUID v7 για δοκιμαστικά δεδομένα, όπως 0192b3c4-5d6e-7f80-9a1b-2c3d4e5f6a7b. Ταξινομούνται κατά χρόνο δημιουργίας, επομένως οι εγγραφές που εισάγονται αργότερα λαμβάνουν μεγαλύτερα κλειδιά, όπως συμβαίνει με μια στήλη αυτόματης αύξησης.
Ένα GUID για έργο Windows ή .NET
Ενεργοποιήστε τα Κεφαλαία και τα Άγκιστρα για να λάβετε τη μορφή τύπου μητρώου {3F2504E0-4F89-41D3-9A0C-0305E82C3301} που χρησιμοποιείται στα αρχεία έργων του Visual Studio, στα αναγνωριστικά κλάσεων COM και στο μητρώο των Windows.
Έλεγχος ενός αναγνωριστικού από αρχείο καταγραφής
Επικολλήστε το 018f6e2c-1a2b-7c3d-8e4f-5a6b7c8d9e0f στον ελεγκτή. Αναφέρει έκδοση 7 και την τυπική παραλλαγή και αποκωδικοποιεί τα πρώτα 12 ψηφία ως χρονική σήμανση τον Μάιο του 2024, κάτι που σας λέει πότε δημιουργήθηκε η εγγραφή.
Συχνές ερωτήσεις
Πρέπει να χρησιμοποιήσω UUID v4 ή v7;
Χρησιμοποιήστε v4 όταν τα αναγνωριστικά δεν πρέπει να αποκαλύπτουν τίποτα, όπως δημόσια tokens ή ονόματα αρχείων. Χρησιμοποιήστε v7 για κλειδιά βάσεων δεδομένων και αναγνωριστικά συμβάντων, όπου η χρονολογική ταξινόμηση βελτιώνει την απόδοση των ευρετηρίων. Και τα δύο έχουν αρκετά τυχαία bits ώστε οι συγκρούσεις να μην αποτελούν πρακτικό πρόβλημα.
Είναι αυτά τα UUID πραγματικά μοναδικά;
Δεν ελέγχονται σε κάποια λίστα, αλλά προέρχονται από κρυπτογραφικά ασφαλή γεννήτρια τυχαίων αριθμών, έτσι ένα διπλότυπο είναι τόσο απίθανο που μπορεί να αγνοηθεί σε πραγματικά συστήματα. Οι τιμές v7 περιλαμβάνουν επίσης την τρέχουσα ώρα.
Είναι το UUID το ίδιο με το GUID;
Ναι. Το GUID (globally unique identifier) είναι η ονομασία της Microsoft για την ίδια μορφή 128-bit. Τα GUID εμφανίζονται συχνά με κεφαλαία και σε άγκιστρα, κάτι που μπορείτε να ενεργοποιήσετε εδώ.
Μπορώ να χρησιμοποιήσω ένα UUID ως κωδικό πρόσβασης ή μυστικό token;
Ένα UUID v4 έχει 122 τυχαία bits, κάτι που είναι δύσκολο να μαντέψει κανείς, αλλά τα UUID έχουν σχεδιαστεί ως αναγνωριστικά και όχι ως μυστικά, και συχνά καταλήγουν σε αρχεία καταγραφής και URL. Για API keys ή συνδέσμους επαναφοράς, χρησιμοποιήστε μια ειδική γεννήτρια τυχαίων tokens.
Η χρονοσφραγίδα v7 χρησιμοποιεί το ρολόι του υπολογιστή μου;
Ναι. Διαβάζεται από το ρολόι της συσκευής σας σε χιλιοστά του δευτερολέπτου UTC. Αν το ρολόι είναι λάθος, η ενσωματωμένη ώρα θα είναι λάθος, αλλά τα αναγνωριστικά σε μία παρτίδα εξακολουθούν να είναι σε αύξουσα σειρά.
Απόρρητο
Τα UUID δημιουργούνται στο πρόγραμμα περιήγησής σας με τη δική του κρυπτογραφική γεννήτρια τυχαίων αριθμών. Δεν αποστέλλονται σε διακομιστή, δεν αποθηκεύονται και δεν καταγράφονται, έτσι κανείς άλλος δεν βλέπει τις τιμές που δημιουργείτε ή ελέγχετε.