Jak používat
- Zvolte v4 pro náhodná ID nebo v7 pro ID řazená podle času vytvoření.
- Nastavte, kolik jich potřebujete (1 až 1 000), a vyberte formát: velká písmena, s pomlčkami nebo bez nich, se složenými závorkami nebo bez nich.
- Zkopírujte jednotlivé UUID pomocí jeho tlačítka, zkopírujte všechna najednou nebo si je stáhněte jako textový soubor s jedním UUID na řádek.
- Chcete-li zkontrolovat existující UUID, vložte ho do pole „Kontrola UUID“.
Jak to funguje
UUID (označovaný také jako GUID) je 128bitový identifikátor, obvykle zapisovaný jako 32 hexadecimálních číslic v pěti skupinách: 8-4-4-4-12. První číslice třetí skupiny je verze a první číslice čtvrté skupiny kóduje variantu (8, 9, a nebo b u standardních UUID). Formát je definován ve specifikaci RFC 9562, která v roce 2024 nahradila RFC 4122.
UUID verze 4 jsou náhodné. Tento nástroj používá crypto.randomUUID, pokud je k dispozici, jinak crypto.getRandomValues; obojí je kryptograficky bezpečné a nikdy nepoužívá Math.random. Se 122 náhodnými bity je pravděpodobnost kolize dvou UUID v4 zanedbatelná: pro 50% šanci na jediný duplikát byste jich museli vygenerovat přibližně 2,7 × 10^18.
UUID verze 7 začínají 48bitovým unixovým časovým razítkem v milisekundách, za kterým následuje verze, 12bitové pole a 62 náhodných bitů. Protože je čas na prvním místě, řadí se hodnoty v7 podle pořadí vytvoření, což udržuje databázové indexy kompaktní a vkládání je rychlejší než u náhodných klíčů v4. Když se ve stejné milisekundě vytvoří více UUID v7, používá tento nástroj 12bitové pole jako počítadlo (metoda popsaná v RFC 9562, oddíl 6.2), takže dávka je vždy v přísně vzestupném pořadí. Upozorňujeme, že UUID v7 prozrazuje, kdy byl vytvořen.
Kontrola přijímá UUID s pomlčkami i bez nich, velkými i malými písmeny, ve složených závorkách nebo s předponou urn:uuid:. Zobrazuje verzi a variantu, rozpoznává speciální UUID nil a max a zobrazuje vložený čas vytvoření pro verze 1, 6 a 7.
Příklady
Primární klíče pro novou tabulku
Vygenerujte 100 UUID v7 pro testovací data, například 0192b3c4-5d6e-7f80-9a1b-2c3d4e5f6a7b. Řadí se podle času vytvoření, takže později vložené řádky dostanou větší klíče, podobně jako u sloupce s automatickým přírůstkem.
GUID pro projekt Windows nebo .NET
Zapněte možnosti Velká písmena a Složené závorky, abyste získali formát ve stylu registru {3F2504E0-4F89-41D3-9A0C-0305E82C3301} používaný v souborech projektů Visual Studio, v ID tříd COM a v registru Windows.
Kontrola ID z logu
Vložte 018f6e2c-1a2b-7c3d-8e4f-5a6b7c8d9e0f do pole pro kontrolu. Zobrazí verzi 7 a standardní variantu a dekóduje prvních 12 číslic jako časové razítko z května 2024, takže zjistíte, kdy byl záznam vytvořen.
Časté dotazy
Mám použít UUID v4, nebo v7?
Použijte v4, když ID nesmí nic prozrazovat, například u veřejných tokenů nebo názvů souborů. Použijte v7 pro databázové klíče a ID událostí, kde řazení podle času zlepšuje výkon indexů. Obě verze mají dostatek náhodných bitů, takže kolize nepředstavují praktický problém.
Jsou tato UUID skutečně jedinečná?
Nekontrolují se vůči žádnému seznamu, ale pocházejí z kryptograficky bezpečného generátoru náhodných čísel, takže duplicita je natolik nepravděpodobná, že ji lze u reálných systémů ignorovat. Hodnoty v7 navíc obsahují aktuální čas.
Je UUID totéž co GUID?
Ano. GUID (globálně jedinečný identifikátor) je označení Microsoftu pro stejný 128bitový formát. GUID se často zobrazují velkými písmeny a ve složených závorkách, což si zde můžete zapnout.
Mohu použít UUID jako heslo nebo tajný token?
UUID v4 má 122 náhodných bitů, takže je těžké ho uhodnout, ale UUID jsou navržena jako identifikátory, nikoli tajemství, a často se objevují v logách a URL. Pro klíče API nebo odkazy pro obnovení použijte vyhrazený generátor náhodných tokenů.
Používá časové razítko v7 hodiny mého počítače?
Ano. Čte se z hodin vašeho zařízení v milisekundách UTC. Pokud jsou hodiny nastavené špatně, vložený čas bude nesprávný, ale ID v jedné dávce budou stále ve vzestupném pořadí.
Soukromí
UUID se generují ve vašem prohlížeči pomocí jeho kryptografického generátoru náhodných čísel. Neodesílají se na server, neukládají se ani nezaznamenávají, takže hodnoty, které vytvoříte nebo zkontrolujete, nikdo jiný nevidí.