# UUID Decoder and Validator

> Decode UUIDs online. Analyze version, extract timestamp (v1, v7), and validate format. Supports UUID v1, v3, v4, v5, v6, v7. Free & easy to use.

URL: https://acrafto.com/en/uuid-decoder-validator/

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Enter your UUID into the field above, and this tool (UUID Parser) will instantly perform an online check, determine its version, validity, and extract hidden information.

## What is a UUID Decoder?

A UUID Decoder is a tool that analyzes a UUID (Universally Unique Identifier) and extracts all available information from it. A UUID is not just a random string of characters – depending on its version, it can contain a timestamp, system information, or a hash of deterministic data.

## What Information Can You Get from a UUID?

### Basic UUID Information

**UUID Version:**

- Specifies the type and structure of the UUID (v1, v3, v4, v5, v6, v7)
- Extracted from the 13th hexadecimal character

**Variant:**

- `RFC 4122` - Standard UUID variant
- `NCS` - Network Computing System (deprecated)
- `Microsoft` - Microsoft GUID variant
- `Reserved` - Reserved for future use

### UUID v1 - Timestamp + MAC Address

**What you can get:**

- ✅ **Precise creation time** - date and time with 100-nanosecond precision
- ✅ **Clock Sequence** - sequence number to prevent collisions
- ✅ **Node ID** - originally a MAC address, often random values

**Example:**

```
UUID: 6ba7b810-9dad-11d1-80b4-00c04fd430c8

Version: v1 (Timestamp + MAC)
Variant: RFC 4122
Date and Time: 15.10.1997 04:25:33.000
Clock Sequence: 724
Node ID: 00:C0:4F:D4:30:C8
```

**Usage:**

- Determining when a record was created
- Audit and forensic analysis
- Debugging time-dependent issues

### UUID v3/v5 - Hash-based

**What you can get:**

- ✅ **Hash type** - MD5 (v3) or SHA-1 (v5)
- ❌ **Cannot obtain** - original namespace and name (one-way hash)

**Example:**

```
UUID: 886313e1-3b8a-5372-9b90-0c9aee199e5d

Version: v5 (SHA-1 hash)
Variant: RFC 4122
Type: Hash-based UUID (deterministic)
Note: The original namespace and name cannot be recovered from the UUID
```

**Usage:**

- Verifying that a UUID is deterministic
- Identifying the UUID type in a database
- Checking the consistency of hash-based identifiers

### UUID v4 - Random

**What you can get:**

- ✅ **Version** - confirmation that it is random
- ✅ **Variant** - RFC 4122 standard
- ❌ **No other data** - purely random bits

**Example:**

```
UUID: f47ac10b-58cc-4372-a567-0e02b2c3d479

Version: v4 (Random)
Variant: RFC 4122
Type: Randomly generated UUID
```

**Usage:**

- Verifying that a UUID is random (not deterministic)
- Checking for correct UUID format
- Validating UUIDs before storing them in a database

### UUID v6 - Reordered Timestamp

**What you can get:**

- ✅ **Precise creation time** - reordered for better DB performance
- ✅ **Clock Sequence** - sequence number
- ✅ **Node ID** - node identifier

**Example:**

```
UUID: 1ec9414c-232a-6b00-b3c8-9e6bdeced846

Version: v6 (Reordered Timestamp)
Variant: RFC 4122
Date and Time: 30.01.2026 14:23:45.123
Clock Sequence: 3272
Node ID: 9E:6B:DE:CE:D8:46
```

**Usage:**

- Determining record creation time
- Analyzing chronological ordering in DB
- Debugging distributed systems

### UUID v7 - Unix Timestamp

**What you can get:**

- ✅ **Unix timestamp** - milliseconds since 1.1.1970
- ✅ **Date and Time** - standard Unix timestamp format
- ❌ **Random part** - cannot be decoded

**Example:**

```
UUID: 017f22e2-79b0-7cc3-98c4-dc0c0c07398f

Version: v7 (Unix timestamp)
Variant: RFC 4122
Date and Time: 30.01.2026 14:23:45.123
```

**Usage:**

- Obtaining creation time for modern UUIDs
- Analyzing time ordering
- Data migration with timestamps

## UUID Structure

A UUID has the format: `xxxxxxxx-xxxx-Mxxx-Nxxx-xxxxxxxxxxxx`

```
6ba7b810-9dad-11d1-80b4-00c04fd430c8
│      │ │  │ │  │ │  │ │           │
│      │ │  │ │  │ │  │ └───────────┴─ Node (48 bits)
│      │ │  │ │  │ └──┴─────────────── Clock Sequence (14 bits)
│      │ │  │ └──┴────────────────────── Variant (2-3 bits)
│      │ └──┴───────────────────────────── Version (4 bits) + Time High
│      └──────────────────────────────────── Time Mid (16 bits)
└─────────────────────────────────────────── Time Low (32 bits)
```

### Extracting Versions and Variants

**Version (M):**

- Position: 13th hexadecimal character
- Values: 1-7 (different UUID versions)

**Variant (N):**

- Position: 17th hexadecimal character
- `0-7`: NCS (Reserved)
- `8-B`: RFC 4122 (standard)
- `C-D`: Microsoft
- `E-F`: Future (Reserved)

## Practical Examples

### Debugging - Determining Record Creation Time

**Scenario:** A user reports that their data has disappeared. You need to find out when the record was created.

```
UUID: 6ba7b810-9dad-11d1-80b4-00c04fd430c8
Decoded: 15.10.1997 04:25:33.000

→ The record was created in 1997
```

### Forensic Analysis - Verifying Time Sequence

**Scenario:** Checking whether events occurred in the correct order.

```
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 was created later (correct order)
```

### Identifying UUID Type in a Database

**Scenario:** You have mixed UUIDs in your DB and need to know which are random and which have a timestamp.

```
f47ac10b-58cc-4372-a567-0e02b2c3d479 → v4 (random, no timestamp)
6ba7b810-9dad-11d1-80b4-00c04fd430c8 → v1 (has timestamp)
017f22e2-79b0-7cc3-98c4-dc0c0c07398f → v7 (has timestamp)

→ Only v1 and v7 UUIDs contain time information
```

## Limitations and What Cannot Be Obtained

### ❌ UUID v3/v5 - Cannot Decode Hash

**Impossible:**

- Recover the original namespace
- Recover the original name/value
- Determine what data was hashed

**Reason:** MD5 and SHA-1 are one-way hashing functions.

### ❌ UUID v4 - No Hidden Data

**Impossible:**

- Obtain any metadata
- Determine creation time
- Identify the source

**Reason:** UUID v4 is purely random and contains no structured information.

### ⚠️ UUID v1/v6 - Node ID Can Be Random

**Limitations:**

- In modern implementations, Node ID is often random (not a real MAC address)
- Due to privacy concerns, MAC addresses are often replaced with random values
- Cannot reliably identify a specific machine

## UUID Validation

The decoder also functions as a UUID validator.

### Checking UUID Validity

The decoder automatically validates:

- ✅ Correct format (8-4-4-4-12 hexadecimal characters)
- ✅ Valid hexadecimal characters (0-9, a-f)
- ✅ Correct length (36 characters including hyphens, 32 without)

### Recognizing Invalid UUIDs

**Invalid examples:**

```
❌ 6ba7b810-9dad-11d1-80b4          (too short)
❌ 6ba7b810-9dad-11d1-80b4-GHIJKLMN (invalid characters)
❌ 6ba7b81-09dad-11d1-80b4-00c04fd4 (wrong format)
```

## For Developers

### JavaScript Implementation

```
// Extracting UUID version
function getUUIDVersion(uuid) {
    const cleaned = uuid.replace(/-/g, '');
    return parseInt(cleaned[12], 16);
}

// Extracting timestamp from 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);
}

// Example
const uuid = '017f22e2-79b0-7cc3-98c4-dc0c0c07398f';
console.log(getUUIDVersion(uuid)); // 7
console.log(extractV7Timestamp(uuid)); // Date object
```

### UUID Validation using 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);
}
```

## Frequently Asked Questions (FAQ)

### Can I get the creation time from a UUID v4?

No, UUID v4 is purely random and contains no time information. For UUIDs with time, use v1, v6, or v7.

### Why is the Node ID in UUID v1 random instead of a MAC address?

Modern implementations use random Node IDs due to privacy protection. Revealing the actual MAC address could be a security risk.

### Can I recover the original URL or name from a UUID v5?

No, UUID v5 uses an SHA-1 hash, which is one-way. You cannot retrieve the original data from the hash.

### How do I know if a UUID is random (v4)?

The decoder will display the UUID version. If the version is 4, it is a randomly generated UUID with no other metadata.

### Is the timestamp in UUID v1 accurate?

Yes, UUID v1 has a theoretical precision of 100 nanoseconds (since October 15, 1582). In practice, it depends on the accuracy of the system clock.

### Can I use the decoder to validate UUIDs?

Yes, the decoder automatically validates the UUID format and displays an error if the UUID is invalid.

## Security and Privacy

### What does a UUID reveal?

**UUID v1/v6:**

- ⚠️ **Creation time** - can reveal timing of operations
- ⚠️ **Potentially MAC address** - risk of device identification (random in modern implementations)

**UUID v4:**

- ✅ **Secure** - contains no metadata

**UUID v7:**

- ⚠️ **Unix timestamp** - reveals creation time

### Recommendations

- ✅ Use UUID v4 for maximum privacy
- ⚠️ Be cautious with UUID v1/v6/v7 in public APIs (they reveal time information)
- ✅ UUID v5 is deterministic but does not reveal original data
- ⚠️ MD5 Hash is not completely secure

## Interesting Facts

- **Earliest possible UUID v1**: October 15, 1582 00:00:00 (beginning of the Gregorian calendar)
- **Latest UUID v7**: 10889-08-02 05:31:50.655 (Unix timestamp limit in ms)
- **UUID v1 precision**: 100 nanoseconds (theoretically 10 million UUIDs per second)
- **Nil UUID**: `00000000-0000-0000-0000-000000000000` (special “empty” UUID)
- **Max UUID**: `ffffffff-ffff-ffff-ffff-ffffffffffff` (maximum value)

## Usage in Different Systems

### PostgreSQL

```
-- Extract UUID version
SELECT substring(id::text, 15, 1) as version
FROM users;

-- Filtering by version
SELECT *
FROM users
WHERE substring(id::text, 15, 1) = '4';
```

### MySQL

```
-- Check UUID format
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}$';
```

## Other languages

- Čeština (cs): [UUID decoder a validátor](https://acrafto.com/cs/dekoder-uuid/) ([Markdown](https://acrafto.com/cs/dekoder-uuid/index.md))
- Slovenčina (sk): [UUID dekodér a validátor](https://acrafto.com/sk/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/sk/uuid-dekoder-validator/index.md))
- Deutsch (de): [UUID Decoder & Validator](https://acrafto.com/de/uuid-dekodierer-validator/) ([Markdown](https://acrafto.com/de/uuid-dekodierer-validator/index.md))
- Français (fr): [Décodeur et validateur UUID](https://acrafto.com/fr/decodeur-validateur-uuid/) ([Markdown](https://acrafto.com/fr/decodeur-validateur-uuid/index.md))
- Español (es): [Decodificador y validador UUID](https://acrafto.com/es/decodificador-validador-uuid/) ([Markdown](https://acrafto.com/es/decodificador-validador-uuid/index.md))
- Italiano (it): [Decodificatore e validatore UUID](https://acrafto.com/it/decodificatore-validatore-uuid/) ([Markdown](https://acrafto.com/it/decodificatore-validatore-uuid/index.md))
- Português (pt): [Decodificador e validador de UUID](https://acrafto.com/pt/analise-uuid/) ([Markdown](https://acrafto.com/pt/analise-uuid/index.md))
- Nederlands (nl): [UUID decoder & validator](https://acrafto.com/nl/uuid-decoder-validator/) ([Markdown](https://acrafto.com/nl/uuid-decoder-validator/index.md))
- Polski (pl): [Dekoder i walidator UUID](https://acrafto.com/pl/dekoder-i-walidator-uuid/) ([Markdown](https://acrafto.com/pl/dekoder-i-walidator-uuid/index.md))
- Română (ro): [Decodor și validator UUID](https://acrafto.com/ro/uuid-decoder-validator/) ([Markdown](https://acrafto.com/ro/uuid-decoder-validator/index.md))
- Magyar (hu): [UUID dekóder és validátor](https://acrafto.com/hu/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/hu/uuid-dekoder-validator/index.md))
- Ελληνικά (el): [Αποκωδικοποιητής UUID](https://acrafto.com/el/uuid-decoder/) ([Markdown](https://acrafto.com/el/uuid-decoder/index.md))
- Български (bg): [UUID декодер и валидатор](https://acrafto.com/bg/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/bg/uuid-dekoder-validator/index.md))
- Hrvatski (hr): [UUID dekoder i validator](https://acrafto.com/hr/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/hr/uuid-dekoder-validator/index.md))
- Slovenščina (sl): [UUID decoder in validator](https://acrafto.com/sl/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/sl/uuid-dekoder-validator/index.md))
- Eesti (et): [UUID dekooder ja validaator](https://acrafto.com/et/uuid-dekooder-validaator/) ([Markdown](https://acrafto.com/et/uuid-dekooder-validaator/index.md))
- Latviešu (lv): [UUID dekodētājs un validētājs](https://acrafto.com/lv/uuid-dekodetajs-validetajs/) ([Markdown](https://acrafto.com/lv/uuid-dekodetajs-validetajs/index.md))
- Lietuvių (lt): [UUID dekoderis](https://acrafto.com/lt/uuid-dekoderis-ir-validuoklis/) ([Markdown](https://acrafto.com/lt/uuid-dekoderis-ir-validuoklis/index.md))
- Svenska (sv): [UUID decoder och validator](https://acrafto.com/sv/uuid-avkodare-validerare/) ([Markdown](https://acrafto.com/sv/uuid-avkodare-validerare/index.md))
- Dansk (da): [UUID dekoder og validator](https://acrafto.com/da/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/da/uuid-dekoder-validator/index.md))
- Suomi (fi): [UUID-dekooderi ja validaattori](https://acrafto.com/fi/uuid-dekooderi/) ([Markdown](https://acrafto.com/fi/uuid-dekooderi/index.md))
- Norsk (no): [UUID-dekoder og validator](https://acrafto.com/no/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/no/uuid-dekoder-validator/index.md))
- Українська (uk): [Декодер і валідатор UUID](https://acrafto.com/uk/uuid-dekoder/) ([Markdown](https://acrafto.com/uk/uuid-dekoder/index.md))
- Русский (ru): [UUID декодер и валидатор](https://acrafto.com/ru/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/ru/uuid-dekoder-validator/index.md))
- Српски (sr): [UUID dekoder i validator](https://acrafto.com/sr/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/sr/uuid-dekoder-validator/index.md))
- Македонски (mk): [UUID декодер и валидатор](https://acrafto.com/mk/uuid-dekoder-validator/) ([Markdown](https://acrafto.com/mk/uuid-dekoder-validator/index.md))
- Bosanski (bs): [UUID dekoder i validator](https://acrafto.com/bs/uuid-dekoder-validat/) ([Markdown](https://acrafto.com/bs/uuid-dekoder-validat/index.md))
- Shqip (sq): [Dekodues UUID](https://acrafto.com/sq/dekodues-uuid/) ([Markdown](https://acrafto.com/sq/dekodues-uuid/index.md))
- Türkçe (tr): [UUID çözücü ve doğrulayıcı](https://acrafto.com/tr/uuid-cozucu-dogrulayici/) ([Markdown](https://acrafto.com/tr/uuid-cozucu-dogrulayici/index.md))
- 日本語 (ja): [UUIDデコード・検証](https://acrafto.com/ja/uuid-decoder-validator/) ([Markdown](https://acrafto.com/ja/uuid-decoder-validator/index.md))
- 한국어 (ko): [UUID 디코더 및 검사기](https://acrafto.com/ko/uuid-decoder-validator/) ([Markdown](https://acrafto.com/ko/uuid-decoder-validator/index.md))
- العربية (ar): [فك تشفير UUID والتحقق منه](https://acrafto.com/ar/uuid-decoder-validator/) ([Markdown](https://acrafto.com/ar/uuid-decoder-validator/index.md))
- हिन्दी (hi): [UUID डिकोडर और वैलिडेटर](https://acrafto.com/hi/uuid-decoder-validator/) ([Markdown](https://acrafto.com/hi/uuid-decoder-validator/index.md))
- Bahasa Indonesia (id): [UUID decoder dan validator](https://acrafto.com/id/dekoder-uuid-validator/) ([Markdown](https://acrafto.com/id/dekoder-uuid-validator/index.md))
- Tiếng Việt (vi): [Giải mã và kiểm tra UUID](https://acrafto.com/vi/giai-ma-xac-thuc-uuid/) ([Markdown](https://acrafto.com/vi/giai-ma-xac-thuc-uuid/index.md))
- ไทย (th): [UUID Decoder](https://acrafto.com/th/uuid-decoder-validator/) ([Markdown](https://acrafto.com/th/uuid-decoder-validator/index.md))
- עברית (he): [מפענח UUID](https://acrafto.com/he/uuid-decoder-validator/) ([Markdown](https://acrafto.com/he/uuid-decoder-validator/index.md))
