Générez des ULID instantanément avec notre outil en ligne gratuit. Créez des identifiants universellement uniques et triables lexicographiquement pour les bases de données, les API et les systèmes distribués.
Générez des ULIDs instantanément avec notre outil de générateur ULID en ligne gratuit. Créez des Identifiants Universellement Uniques et Lexicographiquement Triables qui combinent des horodatages avec des données aléatoires cryptographiquement sécurisées pour des clés de base de données, des systèmes distribués et des applications web.
Un ULID (Identifiant Universellement Unique et Lexicographiquement Triable) est un système d'identification unique qui combine un horodatage avec des données aléatoires pour créer une chaîne de 26 caractères. Contrairement aux UUID traditionnels, les ULIDs sont triables lexicographiquement tout en maintenant l'unicité et l'aléatoire cryptographiques, ce qui les rend idéaux pour les applications distribuées modernes.
Notre outil de générateur ULID crée des identifiants uniques instantanément :
Une structure d'identifiant ULID se compose de deux parties principales :
La chaîne résultante de 26 caractères est encodée en utilisant l'alphabet base32 de Crockford (0-9 et A-Z, excluant I, L, O et U).
L'ULID est généré en utilisant les étapes suivantes :
Le générateur ULID effectue les étapes suivantes :
Les générateurs ULID sont essentiels pour le développement logiciel moderne dans plusieurs scénarios :
Caractéristique | ULID | UUID |
---|---|---|
Triabilité | Triable lexicographiquement | Non triable |
Horodatage | Inclut un horodatage en millisecondes | Pas d'horodatage (v4) |
Longueur | 26 caractères | 36 caractères (avec tirets) |
Encodage | Base32 de Crockford | Hexadécimal |
Sensibilité à la casse | Insensible à la casse | Insensible à la casse |
Comparez les générateurs ULID avec d'autres solutions d'identifiants uniques :
Implémentez la génération ULID dans différents langages de programmation :
1// Implémentation JavaScript
2function generateULID() {
3 const timestamp = Date.now().toString(36).padStart(10, '0');
4 const randomness = crypto.getRandomValues(new Uint8Array(16))
5 .reduce((acc, byte) => acc + byte.toString(36).padStart(2, '0'), '');
6 return (timestamp + randomness).toUpperCase();
7}
8
9console.log(generateULID());
10
1## Implémentation Python
2import time
3import secrets
4import base64
5
6def generate_ulid():
7 timestamp = int(time.time() * 1000).to_bytes(6, byteorder="big")
8 randomness = secrets.token_bytes(10)
9 return base64.b32encode(timestamp + randomness).decode("ascii").lower()
10
11print(generate_ulid())
12
1// Implémentation Java
2import java.security.SecureRandom;
3import java.time.Instant;
4
5public class ULIDGenerator {
6 private static final SecureRandom random = new SecureRandom();
7 private static final char[] ENCODING_CHARS = "0123456789ABCDEFGHJKMNPQRSTVWXYZ".toCharArray();
8
9 public static String generateULID() {
10 long timestamp = Instant.now().toEpochMilli();
11 byte[] randomness = new byte[10];
12 random.nextBytes(randomness);
13
14 StringBuilder result = new StringBuilder();
15 // Encoder l'horodatage
16 for (int i = 9; i >= 0; i--) {
17 result.append(ENCODING_CHARS[(int) (timestamp % 32)]);
18 timestamp /= 32;
19 }
20 // Encoder l'aléatoire
21 for (byte b : randomness) {
22 result.append(ENCODING_CHARS[b & 31]);
23 }
24 return result.toString();
25 }
26
27 public static void main(String[] args) {
28 System.out.println(generateULID());
29 }
30}
31
Ces exemples de code ULID démontrent l'implémentation dans des langages de programmation populaires. Adaptez ces fonctions pour vos applications spécifiques ou intégrez-les dans des systèmes plus larges nécessitant des identifiants uniques.
Un ULID (Identifiant Universellement Unique et Lexicographiquement Triable) est un identifiant unique de 26 caractères qui combine un horodatage avec des données aléatoires cryptographiquement sécurisées. Contrairement aux UUID, les ULIDs maintiennent l'ordre chronologique lorsqu'ils sont triés lexicographiquement.
Utilisez notre outil de générateur ULID gratuit ci-dessus pour créer des identifiants uniques instantanément. Il suffit de cliquer sur le bouton générer pour créer de nouveaux ULIDs, puis de copier les résultats pour les utiliser dans vos applications.
Les ULIDs sont triables par temps de création, utilisent 26 caractères avec l'encodage base32 de Crockford et incluent des horodatages. Les UUID sont de 36 caractères (avec tirets), utilisent l'encodage hexadécimal et ne sont pas naturellement triables.
Oui, les générateurs ULID utilisent une génération de nombres aléatoires cryptographiquement sécurisée pour le composant de 80 bits de l'aléatoire, offrant une haute résistance aux collisions tout en maintenant un ordre temporel.
Absolument ! Les ULIDs font d'excellentes clés primaires de base de données car elles sont uniques, naturellement indexées par le temps de création et ne nécessitent pas de coordination centrale dans les systèmes distribués.
Les ULIDs utilisent l'encodage Base32 de Crockford (0-9 et A-Z, excluant I, L, O, U) qui est insensible à la casse et sûr pour les URL, ce qui les rend idéaux pour les applications web.
Les ULIDs mesurent exactement 26 caractères, ce qui les rend plus compacts que les UUID standard (36 caractères avec tirets) tout en fournissant le même niveau d'unicité.
Oui, la génération ULID fonctionne entièrement hors ligne car elle nécessite uniquement l'horodatage actuel et un générateur de nombres aléatoires cryptographiquement sécurisé - aucune connectivité réseau n'est nécessaire.
Commencez à générer des identifiants triables uniques maintenant avec notre outil de générateur ULID gratuit.
Découvrez plus d'outils qui pourraient être utiles pour votre flux de travail