CodeKitHub
Εργαλεία δημιουργίας

Δημιουργός UUID v4 Online

Τελευταία ενημέρωση:

Ένα UUID έκδοσης 4 περιέχει 122 τυχαία bits, δίνοντας περίπου 5,3 × 10³⁶ πιθανές τιμές — αρκετό ώστε η δημιουργία διπλότυπων να είναι ουσιαστικά αδύνατη στην πράξη. Δημιουργήστε ένα ή πολλά τυχαία UUID (v4) ακαριαία. Χρησιμοποιεί τη κρυπτογραφικά ασφαλή γεννήτρια τυχαίων αριθμών του browser σας — την ίδια ποιότητα τυχαιότητας που χρησιμοποιεί το λειτουργικό σας σύστημα. Επιλογές για έξοδο με κεφαλαία και αφαίρεση παυλών.

Τι είναι αυτό το εργαλείο;

Ένα UUID (Universally Unique Identifier) είναι ένα αναγνωριστικό 128-bit γραμμένο ως 36 χαρακτήρες, όπως 550e8400-e29b-41d4-a716-446655440000. Τα UUID έκδοσης 4 δημιουργούνται από τυχαία δεδομένα, κάτι που κάνει τις συγκρούσεις τόσο απίθανες ώστε να μπορούν να αγνοηθούν στην πράξη: θα μπορούσατε να δημιουργείτε ένα δισεκατομμύριο UUID ανά δευτερόλεπτο για δεκαετίες πριν ένα διπλότυπο γίνει πιθανό.

Τα UUID χρησιμοποιούνται ως πρωτεύοντα κλειδιά βάσεων δεδομένων, IDs αιτημάτων για ανίχνευση, ονόματα αρχείων, κλειδιά API, και οπουδήποτε χρειάζεστε ένα αναγνωριστικό χωρίς συντονισμό με κεντρική αρχή.

Τα UUID τυποποιούνται στο RFC 4122, αναθεωρημένο το 2024 ως RFC 9562 — η αναθεώρηση κράτησε το v4 αμετάβλητο και πρόσθεσε το UUIDv7, μια χρονολογικά ταξινομημένη παραλλαγή σχεδιασμένη να ευρετηριάζεται καλύτερα ως κλειδί βάσης δεδομένων.

Γιατί να το χρησιμοποιήσετε;

  • Κρυπτογραφικά ασφαλές: χρησιμοποιεί crypto.randomUUID(), όχι το αδύναμο Math.random().
  • Μαζική δημιουργία — έως 500 UUID ταυτόχρονα, ένα ανά γραμμή, έτοιμα για επικόλληση.
  • Επιλογές κεφαλαίων και χωρίς παύλες για συστήματα με ειδικές απαιτήσεις μορφής.
  • Λειτουργεί χωρίς σύνδεση στον browser σας· τα UUID δεν στέλνονται ποτέ πουθενά.
  • Δωρεάν και άμεσο, χωρίς σύνδεση.

Πώς χρησιμοποιείται

  1. Επιλέξτε πόσα UUID χρειάζεστε (1–500).
  2. Επιλέξτε προαιρετικά "Κεφαλαία" ή "Αφαίρεση παυλών".
  3. Κάντε κλικ στο "Δημιουργία UUID".
  4. Κάντε κλικ στο "Αντιγραφή Όλων" για να αντιγράψετε ολόκληρη τη λίστα.

Παράδειγμα

Είσοδος

Αριθμός: 3

Έξοδος

f47ac10b-58cc-4372-a567-0e02b2c3d479
9c858901-8a57-4791-81fe-4c455b099bc9
16fd2706-8baf-433b-82eb-8c7fada847da

Κάθε UUID δημιουργείται ανεξάρτητα από ασφαλή τυχαία δεδομένα.

Συνηθισμένες περιπτώσεις χρήσης

  • Πρωτεύοντα κλειδιά βάσης δεδομένων: τα UUID σας επιτρέπουν να δημιουργήσετε ένα έγκυρο ID πριν από μια εισαγωγή, χρήσιμο για εφαρμογές offline-first ή όταν ο πελάτης χρειάζεται να αναφερθεί σε μια εγγραφή πριν την επιβεβαιώσει ο server.
  • Κατανεμημένα συστήματα: πολλαπλοί servers μπορούν να δημιουργήσουν IDs ανεξάρτητα χωρίς συντονισμό και χωρίς κίνδυνο σύγκρουσης — σε αντίθεση με τους αυτόματα αυξανόμενους ακέραιους, που χρειάζονται μία μοναδική πηγή αλήθειας.
  • Κλειδιά ιδιοδυναμίας: η αποστολή του ίδιου UUID με ένα επαναλαμβανόμενο αίτημα API επιτρέπει στον server να αναγνωρίσει και να αγνοήσει με ασφάλεια μια διπλότυπη υποβολή.
  • Δοκιμαστικά fixtures και δεδομένα seed: δημιουργήστε μαζικά εκατοντάδες μοναδικά IDs ταυτόχρονα για να γεμίσετε μια δοκιμαστική βάση δεδομένων ή ψεύτικες απαντήσεις API.
  • Κλειδιά λίστας React/Vue: όταν τα στοιχεία λίστας δεν έχουν ακόμα φυσικό μοναδικό ID, ένα δημιουργημένο UUID λειτουργεί ως σταθερό κλειδί κατά την ανάπτυξη.

Περιορισμοί που πρέπει να γνωρίζετε

Τα UUID δεν ταξινομούνται κατά χρόνο δημιουργίας — η τυχαιότητα του v4 σημαίνει ότι νέα IDs δεν ταξινομούνται κοντά μεταξύ τους σε ευρετήριο βάσης δεδομένων, κάτι που μπορεί να βλάψει την απόδοση εισαγωγής σε μεγάλη κλίμακα (γι' αυτό υπάρχει το UUID v7, χρονικά ταξινομημένο, ως εναλλακτική). Αν χρειάζεστε χρονική ταξινόμηση συν μοναδικότητα, το v7 ή ένα ID στιλ Snowflake ταιριάζει καλύτερα από το v4.

Ένα UUID από μόνο του δεν είναι διαπιστευτήριο ασφαλείας. Είναι αμάντευτο υπό την έννοια ότι δεν μπορείτε να προβλέψετε ένα από ένα άλλο, αλλά ποτέ δεν σχεδιάστηκε με τα χαρακτηριστικά ελεγξιμότητας, λήξης ή ανάκλησης που χρειάζεται ένα πραγματικό token αυθεντικοποίησης — χρησιμοποιήστε μια ειδική βιβλιοθήκη token συνεδρίας/API για αυτό.

Πώς λειτουργεί στην πραγματικότητα η τυχαιότητα

Ένα v4 UUID έχει 122 bits που είναι γνήσια τυχαία (τα υπόλοιπα 6 bits είναι σταθερά για να σημαίνουν την έκδοση και τη μεταβλητή, σύμφωνα με την προδιαγραφή RFC 4122). Αυτό το εργαλείο παίρνει αυτή την τυχαιότητα από το crypto.getRandomValues() μέσω του Web Crypto API του browser — η ίδια υποκείμενη πηγή που χρησιμοποιείται για κλειδιά TLS και άλλες κρυπτογραφικές λειτουργίες, όχι το πολύ πιο αδύναμο Math.random(), που είναι αρκετά προβλέψιμο ώστε ορισμένες παλαιότερες βιβλιοθήκες UUID που το χρησιμοποιούσαν να έχουν επικριθεί για τη δημιουργία μαντεύσιμων IDs.

Για να θέσουμε τις πιθανότητες σύγκρουσης σε συγκεκριμένους όρους: με 122 τυχαία bits, θα χρειαζόταν να δημιουργήσετε περίπου 2,71 τρισεκατομμύρια δισεκατομμύρια UUID πριν υπάρξει 50% πιθανότητα έστω μιας σύγκρουσης — αρκετές τάξεις μεγέθους περισσότερα από όσα θα δημιουργήσει ποτέ οποιαδήποτε μεμονωμένη εφαρμογή. Γι' αυτό το UUID v4 αντιμετωπίζεται ως ουσιαστικά χωρίς συγκρούσεις στην πράξη, παρόλο που δεν είναι μαθηματικά αδύνατο.

Συχνές ερωτήσεις

Μπορούν δύο δημιουργημένα UUID να συγκρουστούν;

Θεωρητικά ναι, πρακτικά όχι. Ένα v4 UUID έχει 122 τυχαία bits. Η πιθανότητα σύγκρουσης παραμένει αμελητέα ακόμα και μετά τη δημιουργία τρισεκατομμυρίων — είναι ασφαλές να τα αντιμετωπίζετε ως μοναδικά.

Ποια είναι η διαφορά μεταξύ εκδόσεων UUID;

Το v1 βασίζεται σε χρονική σήμανση + διεύθυνση MAC (διαρρέει πληροφορίες), το v4 είναι πλήρως τυχαίο (η πιο συνηθισμένη επιλογή), το v5 προέρχεται από ένα όνομα μέσω hashing (ντετερμινιστικό), και το v7 είναι χρονικά ταξινομημένο τυχαίο (καλό για ευρετήρια βάσεων δεδομένων). Αυτό το εργαλείο δημιουργεί v4.

Είναι αυτά τα UUID αρκετά ασφαλή για tokens;

Χρησιμοποιούν κρυπτογραφικά ασφαλή πηγή τυχαιότητας, που είναι πολύ καλύτερη από το Math.random(). Για tokens συνεδρίας, προτιμώνται ακόμα ειδικές γεννήτριες tokens με περισσότερη εντροπία, αλλά τα v4 UUID είναι εντάξει για αναγνωριστικά.

Είναι το UUID το ίδιο με το GUID;

Ναι. Το GUID (Globally Unique Identifier) είναι το όνομα της Microsoft για την ίδια μορφή 128-bit. Οι όροι είναι εναλλάξιμοι.

Αποθηκεύονται ή καταγράφονται τα δημιουργημένα UUID;

Όχι. Η δημιουργία γίνεται τοπικά στον browser σας. Τίποτα δεν μεταδίδεται, αποθηκεύεται ή καταγράφεται — κάθε UUID που βλέπετε υπάρχει μόνο στην οθόνη σας.

Σχετικά εργαλεία