Développeur5 min de lecture

    À quoi sert un UUID ? Définition et cas d'usage

    Un UUID est un identifiant unique de 128 bits standardisé par la RFC 4122. Voici à quoi il sert concrètement en 2026 et quand l'utiliser.

    Un UUID (Universally Unique Identifier), également appelé GUID dans l'écosystème Microsoft, est un identifiant de 128 bits conçu pour être unique sans coordination centrale. Standardisé par la RFC 4122 (puis RFC 9562 en 2024), il s'est imposé comme l'identifiant universel des systèmes distribués modernes.

    Format d'un UUID

    Un UUID s'écrit sous forme de 32 caractères hexadécimaux découpés par des tirets :

    f47ac10b-58cc-4372-a567-0e02b2c3d479

    Soit 8-4-4-4-12 caractères. Les 128 bits se décomposent en :

    • 122 bits aléatoires (pour un UUID v4)
    • 4 bits indiquant la version (1, 4, 7, etc.)
    • 2 bits indiquant le variant (RFC 4122)

    Pourquoi 128 bits ?

    Avec 122 bits aléatoires, on peut générer environ 5,3 × 10³⁶ UUID différents. Pour atteindre 1 % de probabilité de collision, il faudrait générer environ 2,7 × 10¹⁸ UUID — soit l'équivalent d'un milliard d'UUID par seconde pendant 85 ans. En pratique, les collisions sont impossibles.

    Cas d'usage concrets

    1. Clés primaires en base de données distribuée

    Plutôt qu'un auto-incrément (AUTO_INCREMENT) qui exige une coordination centrale, un UUID permet à plusieurs nœuds de générer leurs propres identifiants sans risque de collision. Indispensable pour :

    • Architectures microservices.
    • Réplication multi-master.
    • Synchronisation offline/online (apps mobiles).

    2. Sessions utilisateur et tokens

    Un identifiant de session aléatoire de 122 bits est imprévisible : impossible à deviner par énumération. Beaucoup de frameworks (Express, Django, Laravel) utilisent un UUID v4 ou un token équivalent.

    3. Identifiants d'objets IoT

    Chaque capteur, ampoule connectée ou véhicule peut avoir son UUID gravé en usine. Aucun risque de conflit, aucune base centrale.

    4. Identifiants de fichiers et de blobs

    Stockage objet (S3, Azure Blob, Google Cloud Storage) — chaque upload reçoit un UUID comme nom de fichier, évitant les collisions entre utilisateurs.

    5. Idempotence d'API

    Un client envoie un UUID dans l'en-tête Idempotency-Key. Si la requête est rejouée (panne réseau), le serveur reconnaît l'UUID et renvoie la réponse précédente au lieu de dupliquer l'action (paiement, création de ressource).

    Générer un UUID v4 instantanément

    UUID vs auto-incrément : avantages et inconvénients

    CritèreAuto-incrémentUUID v4
    Unicité distribuée
    Taille4-8 octets16 octets
    Prévisibilité (info leak)❌ (devinable)
    Performance index B-treeExcellenteMoyenne (UUID v7 corrige)
    Lisibilité humaineBonne (1, 2, 3...)Faible

    Les versions d'UUID

    La RFC 4122 définit plusieurs versions. Les plus utilisées :

    • v1 — basé sur timestamp + adresse MAC. Trace l'origine, problème de vie privée.
    • v4 — entièrement aléatoire. Le plus utilisé.
    • v5 — basé sur SHA-1 d'un namespace + un nom. Déterministe.
    • v7 — timestamp + aléatoire. Trié naturellement par création, idéal pour les index B-tree.

    Pour choisir entre v4 et v7 en 2026, voir notre article dédié : UUID v1, v4, v7 : quelle version choisir ?

    Implémentations

    • JavaScript : crypto.randomUUID() (natif depuis Node.js 14.17 et navigateurs modernes).
    • Python : uuid.uuid4().
    • PostgreSQL : type uuid, extension pgcrypto ou uuid-ossp.
    • Java : UUID.randomUUID().
    • Rust : crate uuid.

    Pour aller plus loin

    À quoi sert un UUID ? Définition et cas d'usage — Convertly PASSWORD