Générateur de UUID v5 - Créer des UUID basés sur le nom avec SHA-1

Générez en ligne des UUIDs version 5 basés sur un namespace. Créez des UUIDs cohérents en utilisant le hachage SHA-1 pour les combinaisons de namespace et de nom.

Paramètres de l'espace de nomsSHA-1

Les UUID version v3 et v5 nécessitent un espace de noms et un nom pour générer des UUID déterministes.

Doit être un UUID valide. Utilisez la liste déroulante pour sélectionner un espace de noms prédéfini.
Toute chaîne de texte qui sera hachée pour créer l'UUID.

Essayez ces exemples :

Qu'est-ce que l'UUID v5 ?

UUID version 5 est un identifiant de 128 bits basé sur un espace de noms (chaîne de 36 caractères) défini dans la RFC 4122. Il combine :

  • UUID d'espace de noms : UUID prédéfini ou personnalisé pour délimiter la génération
  • Nom : Valeur de chaîne définie par l'utilisateur dans l'espace de noms
  • Hash SHA-1 : Algorithme cryptographique utilisé pour générer le résultat

Exemple de format : 2ed6657d-e927-5eb1-9a03-0242ac130003

Comment fonctionne l'UUID v5

  1. Sélectionner un UUID d'espace de noms (prédéfini ou personnalisé)
  2. Concaténer l'UUID de l'espace de noms et la chaîne de nom
  3. Calculer le hash SHA-1 de la valeur concaténée
  4. Définir les bits de version (0101) et les bits de variante (10)
  5. Assembler sous forme de 32 chiffres hexadécimaux avec des tirets : format 8-4-4-4-12

Avantages et Considérations

AvantagesConsidérations
  • Déterministe (même entrée = même UUID)
  • Organisation basée sur des espaces de noms
  • Pas de dépendance réseau ou temporelle
  • Pas de problème de confidentialité (pas d'adresse MAC)
  • Non ordonné par le temps
  • La même entrée génère toujours le même UUID
  • La sélection de l'espace de noms impacte l'unicité
  • SHA-1 présente des faiblesses cryptographiques connues

Structure de l'UUID v5

BitsContenu
0-4748 premiers bits du hash SHA-1
48-51Version (0101 pour v5)
52-6312 bits suivants du hash SHA-1
64-65Variante (10 pour RFC4122)
66-12762 bits restants du hash SHA-1

UUID v5 vs. autres versions

VersionBasé surCas d'utilisationConfidentialité
UUID v1Temps + MACIDs ordonnés par le temps⚠️ Révèle MAC
UUID v3Espace de noms + MD5IDs déterministes✅ Privé
UUID v4AléatoireIDs aléatoires sécurisés✅ Privé
UUID v5Espace de noms + SHA-1IDs déterministes✅ Privé
UUID v6Temps (réordonné)IDs triables⚠️ Révèle MAC
UUID v7Temps + aléatoireIDs triables✅ Privé

Espaces de noms prédéfinis

Espace de nomsUUIDUtilisation
DNS6ba7b810-9dad-11d1-80b4-00c04fd430c8Pour les noms de domaine
URL6ba7b811-9dad-11d1-80b4-00c04fd430c8Pour les URLs
OID6ba7b812-9dad-11d1-80b4-00c04fd430c8Pour les OIDs ISO
X.500 DN6ba7b814-9dad-11d1-80b4-00c04fd430c8Pour les Noms Distingués X.500

Cas d'utilisation courants

  • Adressage de contenu : IDs cohérents pour un contenu identique
  • Systèmes distribués : Ressources nommées entre systèmes
  • Mappage d'URLs : Conversion d'URLs en identifiants stables
  • Gestion de configuration : Suivi des éléments de configuration nommés
  • Déduplication de données : Identification des enregistrements identiques
  • Fédération : Identifiants cohérents entre systèmes

Questions fréquentes

L'UUID v5 est-il meilleur que l'UUID v3 ?

Oui, pour la plupart des cas. L'UUID v5 utilise SHA-1, qui est cryptographiquement plus fort que l'algorithme MD5 utilisé dans l'UUID v3. Cependant, les deux fournissent une génération déterministe.

Les valeurs d'UUID v5 peuvent-elles entrer en collision ?

Les collisions sont théoriquement possibles mais extrêmement improbables en pratique grâce aux propriétés de SHA-1. L'utilisation d'espaces de noms ou de chaînes de noms différents élimine pratiquement le risque de collision.

SHA-1 est-il suffisamment sécurisé pour l'UUID v5 ?

Pour les besoins de l'UUID, SHA-1 reste adapté malgré ses faiblesses cryptographiques. L'UUID v5 n'est pas destiné à des fins de sécurité mais à la génération d'identifiants cohérents.

Puis-je créer mon propre espace de noms pour l'UUID v5 ?

Oui. Bien que la RFC 4122 définisse des espaces de noms standard (DNS, URL, OID, X.500), vous pouvez créer des espaces de noms personnalisés en utilisant un UUID valide, généralement un UUID v4 aléatoire.

Le même nom générera-t-il toujours le même UUID v5 ?

Oui, mais uniquement dans le même espace de noms. Le même nom dans des espaces de noms différents générera des UUIDs différents, ce qui est une caractéristique clé pour organiser les identifiants.

Ressources