Генератор на UUID / ULID / NanoID

Генерирајте UUID v4, UUID v7, ULID и NanoID вредности инстантно, директно во Вашиот прелистувач.

Формат

122 бита чиста случајност — без редослед, непредвидливо.

Генерирани ID
Подготвено.

Вашите ID се генерираат локално со силна случајност во прелистувачот. Ништо не се испраќа до BroBroGo.

ЧПП

Која е разликата помеѓу UUID v4, UUID v7, ULID и NanoID?

UUID v4 нуди 122 бита чиста случајност во познатиот формат од 36 знаци, но неговиот случаен редослед не е погоден за локалност на индексите во базите на податоци. UUID v7 ја задржува истата форма, но започнува со временска ознака во милисекунди, па така идентификаторите се сортираат приближно според времето на создавање — корисно за примарни клучеви. ULID го прави истиот трик со времето на почеток во пократка низа од 26 знаци која не е чувствителна на големи и мали букви. NanoID го прескокнува сортирањето за сметка на многу помал, целосно приспособлив ID — Вие ги избирате должината и сетот на знаци.

Дали овие ID се доволно случајни за да бидат непредвидливи?

Да — секој ID се генерира со криптографски силна случајност во прелистувачот, а не од предвидлив извор. Стандардната азбука на UUID v4 и NanoID содржи многу повеќе од 100 бита случајност. UUID v7 и ULID заменуваат околу 48 од тие битови за водечка временска ознака, па затоа третирајте ги форматите со временска ознака како сортирачки идентификатори, а не како тајни.

Дали можам да ги променам должината и сетот на знаци на NanoID?

Да — префрлете се на NanoID и оваа алатка ќе прикаже лизгач за должина (стандардно 21 знак, исто како и библиотеката) плус поле за уредување на азбуката. Намалувањето на должината или стеснувањето на азбуката ја намалува отпорноста на колизии, па затоа задржете поголема должина доколку го намалите сетот на знаци.

Разлики помеѓу форматите UUID v4, UUID v7, ULID и NanoID

Изборот на соодветен уникатен идентификатор зависи од техничките барања на системот, како што се потребата за сортирање, должината на записот и структурата на базата на податоци. Оваа алатка овозможува инстантна генерација на четири различни формати, од кои секој има специфични карактеристики и намена:

  • UUID v4: Овој формат претставува стандардизиран идентификатор кој содржи 122 бита чиста случајност во формат од 36 знаци. Поради својата структура, тој е целосно непредвидлив и нема вграден редослед.
  • UUID v7: За разлика од верзијата 4, UUID v7 е формат од 36 знаци кој започнува со временска ознака во милисекунди. Ова овозможува идентификаторите да бидат приближно сортирани според времето на нивното создавање.
  • ULID: Овој формат е алтернатива на UUID v7, претставен како низа од 26 знаци која не е чувствителна на големи и мали букви. Исто така започнува со временска ознака, што го прави погоден за хронолошко подредување.
  • NanoID: Компактен формат кој стандардно користи должина од 21 знак. Не содржи временски компоненти и нуди целосна приспособливост на должината и на користениот сет на знаци.

Временски сортирачки идентификатори и нивната улога во бази на податоци

Користењето на UUID v7 и ULID нуди значителни предности при индексирање во бази на податоци. Бидејќи и двата формати започнуваат со временска ознака во милисекунди, новогенерираните записи се запишуваат последователно на крајот од индексната структура. Ова го спречува фрагментирањето на индексите кое често се случува при користење на целосно случајни вредности како UUID v4.

Сепак, важно е да се напомене дека UUID v7 и ULID не гарантираат строг редослед за идентификаторите кои се генерирани во рамките на иста милисекунда. Во такви случаи, преостанатите случајни битови ја пополнуваат структурата, обезбедувајќи уникатност, но без гаранција за точна хронологија на микрониво.


Компромис помеѓу должината, азбуката и отпорноста на колизии

При дефинирање на сопствени идентификатори преку NanoID, постои директна врска помеѓу должината на низата, големината на азбуката (сетот на знаци) и веројатноста за појава на дупликати (колизии).

Стандардната должина на NanoID е 21 знак. Доколку ја намалите должината или го стесните изборот на знаци во азбуката, математичката веројатност за колизија се зголемува. Затоа, доколку користите ограничена азбука (на пример, само бројки), се препорачува да ја зголемите должината на идентификаторот за да ја задржите криптографската сигурност и уникатноста на генерираните вредности.


Локално генерирање и приватност на податоците

Процесот на создавање на идентификаторите се одвива целосно локално во Вашиот веб-прелистувач. Алатката користи силна системска случајност обезбедена од самиот прелистувач за да ги генерира вредностите.

При користење на овој генератор, ниту еден генериран идентификатор или внесен параметар не се испраќа до BroBroGo. Сите пресметки и регенерирања се извршуваат на Вашиот уред, со што се гарантира дека генерираните клучеви остануваат приватни и не се зачувуваат на надворешни сервери.


Правила за користење и параметри на алатката

Алатката овозможува флексибилно прилагодување на излезните резултати преку следните контроли и правила:

  • Број на идентификатори: Можете да генерирате помеѓу 1 и 100 ID истовремено.
  • Големи букви и цртички: За форматите UUID, достапни се опции за приказ со големи букви и вклучување или исклучување на стандардните хифени (цртички).
  • Контрола на NanoID: Должината на NanoID може да се прилагоди во опсег од 2 до 36 знаци. Азбуката мора да содржи најмалку 2 различни знаци. Доколку внесете невалидна азбука со само еден знак, алатката ќе ја прикаже грешката Азбуката мора да содржи најмалку 2 различни знаци., резултатите ќе се исчистат, бројот на ID ќе стане 0, а копчето за копирање ќе се оневозможи.
  • Инстантна реакција: Секоја промена на опциите автоматски ги регенерира идентификаторите во листата. Кликнувањето на кој било поединечен ID веднаш го копира во привремената меморија (clipboard).