Crockford-base32 de 26 caractères, tri lexicographique par horodatage à la milliseconde. Généré localement — jamais transmis.
Ce que ça fait
Génère des
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
: des identifiants de 26 caractères qui associent un timestamp à la milliseconde et 80 bits d’aléatoire. L’outil se remplit dès son chargement et se régénère à chaque changement d’option, donc il y a toujours un résultat à l’écran. Réglez Count de 1 à 1 000. Une valeur unique s’affiche en grand ; un lot s’affiche en liste. Copy copie tout le lot. Tout s’exécute localement aveccrypto.getRandomValues.
Comment l’utiliser
- Réglez Count (de 1 à 1 000). Les résultats se régénèrent à mesure que vous le modifiez.
- Lisez le résultat : une valeur en grand, deux ou plus en liste.
- Appuyez sur Copy pour récupérer tout le lot.
- Collez n’importe quel
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
dans Decode aULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
pour l’inspecter : l’outil sépare la partie temporelle de l’aléatoire et affiche le timestamp en millisecondes et en ISO-8601 UTC. Une entrée invalide (longueur incorrecte, caractère non-Crockford, ou partie temporelle au-delà du plafond de 48 bits) affiche la raison exacte.
Exemples
Un
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
fait 26 caractères. La séparation est tout l’intérêt :01ARZ3NDEKTSV4RRFFQ69G5FAV
└──┬──┘└───────┬────────┘
timestamp randomness
(10 chars) (16 chars)
01ARZ3NDEKTSV4RRFFQ69G5FAV- l’exemple canonique de la spec01ARZ3NDEK...se trie avant01ARZ3NDF...parce que 10 caractères de timestamp ouvrent la chaîne- Coller
01ARZ3NDEKTSV4RRFFQ69G5FAVdans le décodeur lit le timestamp2016-07-30T23:54:10.259Z— l’exemple canonique de la spec a été frappé le 2016-07-30
Comment fonctionnent les
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
Un
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
fait 128 bits, coupé en deux :| Partie | Bits | Caractères | Contient |
|---|---|---|---|
| Timestamp | 48 | les 10 premiers | millisecondes depuis l’epoch Unix |
| Randomness | 80 | les 16 derniers | bits aléatoires |
Les deux moitiés s’encodent en Crockford base32 : 32 symboles, 5 bits par caractère. L’alphabet est 0-9 puis A-Z moins I, L, O, U. Cela rend les
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
insensibles à la casse et supprime les lettres que les gens confondent (I lu comme 1, O comme 0). 26 caractères fois 5 bits font 130, donc les 2 bits de tête restent inutilisés.
Le timestamp est ce que vous achetez. Il occupe l’extrémité la plus significative de la valeur, donc l’ordre des chaînes égale l’ordre de création : triez une colonne de
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
comme du texte brut et vous obtenez l’ordre d’insertion gratuitement. Comparaison avec UUIDv4 :| Propriété | ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read. |
UUIDv4 |
|---|---|---|
| Caractères | 26 | 36 (dont 4 tirets) |
| Tri par date de création | oui, lexicographique | non - ordre totalement aléatoire |
| Bits aléatoires | 80 | 122 |
UUIDv4 convient quand les identifiants doivent seulement être uniques. Quand ils doivent aussi se trier - clés de base de données, journaux d’événements, tout ce qu’on feuillette - le préfixe temporel transforme un scan d’index en lecture de plage. L’horloge à la milliseconde sur 48 bits atteint l’année 10889, donc elle ne débordera pas en pratique.
Même milliseconde, ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
Bon à savoir
- Triable, pas ordonné. Les
ULIDULIDA 128-bit identifier like a UUID, but timestamp-prefixed and Crockford-base32 encoded — so it sorts by creation time and is shorter to read.
se trient à la milliseconde ; deux ID dans une même milliseconde n’ont aucun ordre garanti. - Insensible à la casse.
01arz3ndektsv4rrffq69g5favs’analyse comme la même valeur que la forme majuscule. - Privé : généré localement dans votre navigateur. Rien n’est envoyé nulle part.
- Outils liés :
UUIDUUIDA 128-bit identifier generated to be practically unique without coordination, most commonly in version-4 (fully random) form.
Generator, Token Generator.