UUID Αποκωδικοποιητής | Ανάλυση εκδόσεων (v1, v4, v7) και χρόνου
Εισάγετε το UUID σας στο παραπάνω πεδίο και αυτό το εργαλείο (UUID Parser) θα εκτελέσει άμεσα έναν online έλεγχο, θα προσδιορίσει την έκδοση, την εγκυρότητα και θα εξαγάγει κρυφές πληροφορίες.
Τι είναι ένας Αποκωδικοποιητής UUID;
Ο Αποκωδικοποιητής UUID είναι ένα εργαλείο που αναλύει ένα UUID (Universally Unique Identifier) και εξάγει όλες τις διαθέσιμες πληροφορίες από αυτό. Ένα UUID δεν είναι απλώς μια τυχαία σειρά χαρακτήρων – ανάλογα με την έκδοση, μπορεί να περιέχει χρονοσήμανση, πληροφορίες συστήματος ή κατακερματισμό (hash) ντετερμινιστικών δεδομένων.
Ποιες πληροφορίες μπορείτε να λάβετε από ένα UUID;
Βασικές πληροφορίες UUID
Έκδοση UUID:
- Καθορίζει τον τύπο και τη δομή του UUID (v1, v3, v4, v5, v6, v7)
- Εξάγεται από τον 13ο δεκαεξαδικό χαρακτήρα
Παραλλαγή:
RFC 4122- Τυπική παραλλαγή UUIDNCS- Network Computing System (παρωχημένο)Microsoft- Παραλλαγή Microsoft GUIDReserved- Προορίζεται για μελλοντική χρήση
UUID v1 - Χρονοσήμανση + διεύθυνση MAC
Τι μπορείτε να λάβετε:
- ✅ Ακριβής χρόνος δημιουργίας - ημερομηνία και ώρα με ακρίβεια 100 νανοδευτερολέπτων
- ✅ Ακολουθία Ρολογιού - αριθμός ακολουθίας για την αποτροπή συγκρούσεων
- ✅ Αναγνωριστικό Κόμβου - αρχικά διεύθυνση MAC, συχνά τυχαίες τιμές
Παράδειγμα:
UUID: 6ba7b810-9dad-11d1-80b4-00c04fd430c8
Έκδοση: v1 (Χρονοσήμανση + MAC)
Παραλλαγή: RFC 4122
Ημερομηνία και ώρα: 15.10.1997 04:25:33.000
Ακολουθία Ρολογιού: 724
Αναγνωριστικό Κόμβου: 00:C0:4F:D4:30:C8
Χρήση:
- Προσδιορισμός του χρόνου δημιουργίας μιας εγγραφής
- Έλεγχος και εγκληματολογική ανάλυση
- Εντοπισμός σφαλμάτων σε προβλήματα εξαρτώμενα από τον χρόνο
UUID v3/v5 - Βασισμένο σε Hash
Τι μπορείτε να λάβετε:
- ✅ Τύπος κατακερματισμού - MD5 (v3) ή SHA-1 (v5)
- ❌ Δεν είναι δυνατή η λήψη - αρχικού χώρου ονομάτων (namespace) και ονόματος (μονόδρομος κατακερματισμός)
Παράδειγμα:
UUID: 886313e1-3b8a-5372-9b90-0c9aee199e5d
Έκδοση: v5 (SHA-1 hash)
Παραλλαγή: RFC 4122
Τύπος: UUID βασισμένο σε Hash (ντετερμινιστικό)
Σημείωση: Ο αρχικός χώρος ονομάτων (namespace) και το όνομα δεν μπορούν να ανακτηθούν από το UUID
Χρήση:
- Επαλήθευση ότι το UUID είναι ντετερμινιστικό
- Αναγνώριση του τύπου UUID στη βάση δεδομένων
- Έλεγχος της συνέπειας των αναγνωριστικών βασισμένων σε hash
UUID v4 - Τυχαίο
Τι μπορείτε να λάβετε:
- ✅ Έκδοση - επιβεβαίωση ότι είναι τυχαίο
- ✅ Παραλλαγή - πρότυπο RFC 4122
- ❌ Κανένα άλλο δεδομένο - καθαρά τυχαία bit
Παράδειγμα:
UUID: f47ac10b-58cc-4372-a567-0e02b2c3d479
Έκδοση: v4 (Τυχαίο)
Παραλλαγή: RFC 4122
Τύπος: Τυχαία δημιουργημένο UUID
Χρήση:
- Επαλήθευση ότι το UUID είναι τυχαίο (όχι ντετερμινιστικό)
- Έλεγχος της σωστής μορφής UUID
- Επικύρωση UUID πριν την αποθήκευση σε βάση δεδομένων
UUID v6 - Ταξινομημένη χρονοσήμανση
Τι μπορείτε να λάβετε:
- ✅ Ακριβής χρόνος δημιουργίας - αναδιαταγμένο για καλύτερη απόδοση βάσης δεδομένων
- ✅ Ακολουθία Ρολογιού - αριθμός ακολουθίας
- ✅ Αναγνωριστικό Κόμβου - αναγνωριστικό κόμβου
Παράδειγμα:
UUID: 1ec9414c-232a-6b00-b3c8-9e6bdeced846
Έκδοση: v6 (Ταξινομημένη χρονοσήμανση)
Παραλλαγή: RFC 4122
Ημερομηνία και ώρα: 30.01.2026 14:23:45.123
Ακολουθία Ρολογιού: 3272
Αναγνωριστικό Κόμβου: 9E:6B:DE:CE:D8:46
Χρήση:
- Προσδιορισμός του χρόνου δημιουργίας της εγγραφής
- Ανάλυση της χρονολογικής ταξινόμησης στη βάση δεδομένων
- Εντοπισμός σφαλμάτων σε κατανεμημένα συστήματα
UUID v7 - Χρονοσήμανση Unix
Τι μπορείτε να λάβετε:
- ✅ Χρονοσήμανση Unix - χιλιοστά του δευτερολέπτου από την 1.1.1970
- ✅ Ημερομηνία και ώρα - τυπική μορφή χρονοσήμανσης Unix
- ❌ Τυχαίο μέρος - δεν μπορεί να αποκωδικοποιηθεί
Παράδειγμα:
UUID: 017f22e2-79b0-7cc3-98c4-dc0c0c07398f
Έκδοση: v7 (Χρονοσήμανση Unix)
Παραλλαγή: RFC 4122
Ημερομηνία και ώρα: 30.01.2026 14:23:45.123
Χρήση:
- Λήψη του χρόνου δημιουργίας σύγχρονων UUID
- Ανάλυση χρονικής ταξινόμησης
- Μεταφορά δεδομένων με χρονοσφραγίδες
Δομή UUID
Το UUID έχει τη μορφή: xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx
6ba7b810-9dad-11d1-80b4-00c04fd430c8
│ │ │ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │ └───────────┴─ Κόμβος (48 bit)
│ │ │ │ │ │ └──┴─────────────── Ακολουθία Ρολογιού (14 bit)
│ │ │ │ └──┴────────────────────── Παραλλαγή (2-3 bit)
│ │ └──┴───────────────────────────── Έκδοση (4 bit) + Time High
│ └──────────────────────────────────── Time Mid (16 bit)
└─────────────────────────────────────────── Time Low (32 bit)
Εξαγωγή εκδόσεων και παραλλαγών
Έκδοση (M):
- Θέση: 13ος δεκαεξαδικός χαρακτήρας
- Τιμές: 1-7 (διαφορετικές εκδόσεις UUID)
Παραλλαγή (N):
- Θέση: 17ος δεκαεξαδικός χαρακτήρας
0-7: NCS (Δεσμευμένο)8-B: RFC 4122 (πρότυπο)C-D: MicrosoftE-F: Μελλοντικό (Δεσμευμένο)
Πρακτικά παραδείγματα
Εντοπισμός σφαλμάτων - Εύρεση χρόνου δημιουργίας εγγραφής
Σενάριο: Ένας χρήστης αναφέρει ότι τα δεδομένα του εξαφανίστηκαν. Πρέπει να μάθετε πότε δημιουργήθηκε η εγγραφή.
UUID: 6ba7b810-9dad-11d1-80b4-00c04fd430c8
Αποκωδικοποιημένο: 15.10.1997 04:25:33.000
→ Η εγγραφή δημιουργήθηκε το 1997
Εγκληματολογική ανάλυση - Επαλήθευση χρονολογικής σειράς
Σενάριο: Έλεγχος αν τα γεγονότα συνέβησαν με τη σωστή σειρά.
UUID 1: 1ec9414c-232a-6b00-b3c8-9e6bdeced846 → 30.01.2026 14:23:45
UUID 2: 1ec9414d-557b-6a00-8f32-1234567890ab → 30.01.2026 14:25:12
→ Το UUID 2 δημιουργήθηκε αργότερα (σωστή σειρά)
Αναγνώριση του τύπου UUID στη βάση δεδομένων
Σενάριο: Έχετε μικτά UUID στη βάση δεδομένων και πρέπει να γνωρίζετε ποια είναι τυχαία και ποια έχουν χρονοσήμανση.
f47ac10b-58cc-4372-a567-0e02b2c3d479 → v4 (τυχαίο, χωρίς χρονοσήμανση)
6ba7b810-9dad-11d1-80b4-00c04fd430c8 → v1 (έχει χρονοσήμανση)
017f22e2-79b0-7cc3-98c4-dc0c0c07398f → v7 (έχει χρονοσήμανση)
→ Μόνο τα UUID v1 και v7 περιέχουν πληροφορίες χρόνου
Περιορισμοί και τι δεν μπορεί να ληφθεί
❌ UUID v3/v5 - Δεν μπορεί να αποκωδικοποιηθεί το hash
Αδύνατο:
- Να ανακτηθεί ο αρχικός χώρος ονομάτων (namespace)
- Να ανακτηθεί το αρχικό όνομα/τιμή
- Να προσδιοριστεί ποια δεδομένα έχουν κατακερματιστεί (hashed)
Λόγος: Οι MD5 και SHA-1 είναι μονόδρομες συναρτήσεις κατακερματισμού (hash).
❌ UUID v4 - Κανένα κρυφό δεδομένο
Αδύνατο:
- Να ληφθούν οποιαδήποτε μεταδεδομένα
- Να προσδιοριστεί ο χρόνος δημιουργίας
- Να αναγνωριστεί η πηγή
Λόγος: Το UUID v4 είναι καθαρά τυχαίο, δεν περιέχει δομημένες πληροφορίες.
⚠️ UUID v1/v6 - Το Αναγνωριστικό Κόμβου μπορεί να είναι τυχαίο
Περιορισμοί:
- Σε σύγχρονες υλοποιήσεις, το Αναγνωριστικό Κόμβου είναι συχνά τυχαίο (όχι πραγματική διεύθυνση MAC)
- Λόγω προστασίας της ιδιωτικής ζωής, οι διευθύνσεις MAC συχνά αντικαθίστανται με τυχαίες τιμές
- Δεν είναι δυνατή η αξιόπιστη αναγνώριση ενός συγκεκριμένου μηχανήματος
Επικύρωση UUID
Ο αποκωδικοποιητής λειτουργεί επίσης ως επικυρωτής UUID.
Έλεγχος εγκυρότητας UUID
Ο αποκωδικοποιητής επικυρώνει αυτόματα:
- ✅ Σωστή μορφή (8-4-4-4-12 δεκαεξαδικοί χαρακτήρες)
- ✅ Έγκυροι δεκαεξαδικοί χαρακτήρες (0-9, a-f)
- ✅ Σωστό μήκος (36 χαρακτήρες συμπεριλαμβανομένων των παύλων, 32 χωρίς)
Αναγνώριση μη έγκυρων UUID
Μη έγκυρα παραδείγματα:
❌ 6ba7b810-9dad-11d1-80b4 (πολύ μικρό)
❌ 6ba7b810-9dad-11d1-80b4-GHIJKLMN (μη έγκυροι χαρακτήρες)
❌ 6ba7b81-09dad-11d1-80b4-00c04fd4 (λανθασμένη μορφή)
Για προγραμματιστές
Υλοποίηση σε JavaScript
// Extrakce verze z UUID
function getUUIDVersion(uuid) {
const cleaned = uuid.replace(/-/g, '');
return parseInt(cleaned[12], 16);
}
// Extrakce timestampu z UUID v7
function extractV7Timestamp(uuid) {
const cleaned = uuid.replace(/-/g, '');
const timeHi = parseInt(cleaned.substring(0, 8), 16);
const timeLow = parseInt(cleaned.substring(8, 12), 16);
const unixMs = Number(BigInt("0x" + cleaned.substring(0, 12)) >> 16n);
return new Date(unixMs);
}
// Příklad
const uuid = '017f22e2-79b0-7cc3-98c4-dc0c0c07398f';
console.log(getUUIDVersion(uuid)); // 7
console.log(extractV7Timestamp(uuid)); // Date object
Επικύρωση UUID χρησιμοποιώντας Regex
const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[1-7][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i;
function isValidUUID(uuid) {
return uuidRegex.test(uuid);
}
Συχνές Ερωτήσεις (FAQ)
Μπορώ να λάβω τον χρόνο δημιουργίας από ένα UUID v4;
Όχι, το UUID v4 είναι καθαρά τυχαίο και δεν περιέχει πληροφορίες χρόνου. Για UUID με χρόνο, χρησιμοποιήστε τα v1, v6 ή v7.Γιατί το Αναγνωριστικό Κόμβου (Node ID) στο UUID v1 είναι τυχαίο αντί για διεύθυνση MAC;
Οι σύγχρονες υλοποιήσεις χρησιμοποιούν τυχαία Αναγνωριστικά Κόμβου λόγω προστασίας της ιδιωτικής ζωής. Η αποκάλυψη μιας πραγματικής διεύθυνσης MAC θα μπορούσε να αποτελέσει κίνδυνο ασφαλείας.Μπορώ να ανακτήσω το αρχικό URL ή όνομα από ένα UUID v5;
Όχι, το UUID v5 χρησιμοποιεί SHA-1 hash, το οποίο είναι μονόδρομο. Τα αρχικά δεδομένα δεν μπορούν να ανακτηθούν από τον κατακερματισμό.Πώς μπορώ να ξέρω ότι ένα UUID είναι τυχαίο (v4);
Ο αποκωδικοποιητής θα εμφανίσει την έκδοση του UUID. Εάν η έκδοση είναι 4, πρόκειται για ένα τυχαία δημιουργημένο UUID χωρίς πρόσθετα μεταδεδομένα.Είναι ακριβής η χρονοσήμανση στο UUID v1;
Ναι, το UUID v1 έχει θεωρητική ακρίβεια 100 νανοδευτερολέπτων (από τις 15 Οκτωβρίου 1582). Στην πράξη, εξαρτάται από την ακρίβεια του ρολογιού του συστήματος.Μπορώ να χρησιμοποιήσω τον αποκωδικοποιητή για επικύρωση UUID;
Ναι, ο αποκωδικοποιητής επικυρώνει αυτόματα τη μορφή του UUID και εμφανίζει ένα σφάλμα εάν το UUID δεν είναι έγκυρο.Ασφάλεια και Ιδιωτικότητα
Τι αποκαλύπτει ένα UUID;
UUID v1/v6:
- ⚠️ Χρόνος δημιουργίας - μπορεί να αποκαλύψει τον χρονισμό των λειτουργιών
- ⚠️ Πιθανώς διεύθυνση MAC - κίνδυνος αναγνώρισης συσκευής (σε σύγχρονες υλοποιήσεις τυχαίο)
UUID v4:
- ✅ Ασφαλές - δεν περιέχει μεταδεδομένα
UUID v7:
- ⚠️ Χρονοσήμανση Unix - αποκαλύπτει τον χρόνο δημιουργίας
Συστάσεις
- ✅ Χρησιμοποιήστε UUID v4 για μέγιστη ιδιωτικότητα
- ⚠️ Να είστε προσεκτικοί με τα UUID v1/v6/v7 σε δημόσια API (αποκαλύπτουν πληροφορίες χρόνου)
- ✅ Το UUID v5 είναι ντετερμινιστικό, αλλά δεν αποκαλύπτει τα αρχικά δεδομένα
- ⚠️ Το MD5 Hash δεν είναι εντελώς ασφαλές
Ενδιαφέροντα στοιχεία
- Παλαιότερο δυνατό UUID v1: 15 Οκτωβρίου 1582 00:00:00 (έναρξη Γρηγοριανού ημερολογίου)
- Νεότερο UUID v7: 10889-08-02 05:31:50.655 (όριο χρονοσήμανσης Unix σε ms)
- Ακρίβεια UUID v1: 100 νανοδευτερόλεπτα (θεωρητικά 10 εκατομμύρια UUID ανά δευτερόλεπτο)
- UUID Nil:
00000000-0000-0000-0000-000000000000(ειδικό “κενό” UUID) - UUID Max:
ffffffff-ffff-ffff-ffff-ffffffffffff(μέγιστη τιμή)
Χρήση σε διάφορα συστήματα
PostgreSQL
-- Extrakce verze UUID
SELECT substring(id::text, 15, 1) as version
FROM users;
-- Filtrování podle verze
SELECT *
FROM users
WHERE substring(id::text, 15, 1) = '4';
MySQL
-- Kontrola UUID formátu
SELECT id
FROM users
WHERE id REGEXP '^[0-9a-f]{8}-[0-9a-f]{4}-[1-7][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$';