Generator ULID i NanoID
Unikalne, sortowalne czasowo identyfikatory, alternatywa dla UUID.
- Natychmiast
- Za darmo
- Prywatnie (przetwarzane lokalnie)
- Bez rejestracji
Unikalne identyfikatory, ale lepsze niż UUID
UUID v4 jest losowy i nieczytelny, a jako klucz psuje indeksy. To narzędzie generuje dwie nowoczesne alternatywy: ULID (sortowalny według czasu utworzenia) i NanoID (krótki i URL-safe), z kryptograficzną losowością.
-
Wybierz typ
ULID (sortowalny) lub NanoID (kompaktowy, regulowany rozmiar).
-
Podaj ilość
Od 1 do 100 identyfikatorów naraz.
-
Skopiuj
Cała partia trafia do schowka.
ULID, NanoID czy UUID?
| Format | Długość | Główny atut |
|---|---|---|
| ULID | 26 znaków | Sortowalny według czasu utworzenia |
| NanoID | 21 znaków (regulowane) | Krótki i URL-safe |
| UUID v4 | 36 znaków | Uniwersalny standard, ale niesortowalny |
Losowość z crypto.getRandomValues, wszystko lokalnie. ULID jest idealny jako klucz główny bazy danych; NanoID — jako krótki identyfikator w publicznym URL-u.
Najczęstsze pytania
Czym jest ULID i jak różni się od UUID?
ULID koduje znacznik czasu utworzenia w pierwszych 10 znakach, po których następuje 16 losowych. W efekcie dwa ULID-y utworzone w różnych chwilach sortują się naturalnie chronologicznie, czego (w pełni losowy) UUID v4 nie umożliwia.
Dlaczego sortowanie czasowe jest przydatne?
W bazie danych sortowalne klucze zapobiegają fragmentacji indeksów: nowe wiersze wstawiają się na końcu, a nie losowo. Można też paginować lub sortować po dacie bez osobnej kolumny „created_at”, tylko po kluczu głównym.
Czym jest NanoID?
To kompaktowy losowy identyfikator (domyślnie 21 znaków wobec 36 w UUID) używający alfabetu URL-safe. Krótszy, przy rozsądnych ilościach pozostaje statystycznie równie bezpieczny wobec kolizji i lepiej mieści się w URL-u.
Czy generowanie jest naprawdę bezpieczne?
Tak: losowość pochodzi z crypto.getRandomValues, kryptograficznego generatora przeglądarki, a nie z Math.random (przewidywalnego). Wszystko generowane jest lokalnie, żaden identyfikator nie przechodzi przez serwer.