UUID Versie 5 Generator (SHA-1 Naamgebaseerd)

Genereer consistente UUID's met namespace en naam met SHA-1 hashing

Namespace-instellingenSHA-1

Versie v3 en v5 UUID's vereisen een namespace en naam om deterministische UUID's te genereren.

Moet een geldige UUID zijn. Gebruik de dropdown om een vooraf gedefinieerde namespace te selecteren.
Elke tekststring die wordt gehasht om de UUID te maken.

Probeer deze voorbeelden:

Wat is UUID v5?

UUID versie 5 is een namespace-gebaseerde 128-bit identifier (36-teken string) gedefinieerd in RFC 4122. Het combineert:

  • Namespace UUID: Vooraf gedefinieerde of aangepaste UUID om de generatie te begrenzen
  • Name: Door gebruiker gedefinieerde tekenreeks binnen de namespace
  • SHA-1 hash: Cryptografisch algoritme gebruikt om het resultaat te genereren

Voorbeeldformaat: 2ed6657d-e927-5eb1-9a03-0242ac130003

Hoe UUID v5 werkt

  1. Selecteer een namespace UUID (vooraf gedefinieerd of aangepast)
  2. Concateneer de namespace UUID en de naamtekenreeks
  3. Bereken de SHA-1 hash van de samengevoegde waarde
  4. Stel versiebits in (0101) en variantbits (10)
  5. Samenstellen als 32 hexadecimale cijfers met streepjes: 8-4-4-4-12 formaat

Voordelen & Overwegingen

AdvantagesConsiderations
  • Deterministisch (dezelfde invoer = dezelfde UUID)
  • Gegenamespaceerde organisatie
  • Geen netwerk- of tijdsafhankelijkheid
  • Geen privacyproblemen (geen MAC-adres)
  • Niet tijdgeordend
  • Dezelfde invoer creëert altijd dezelfde UUID
  • Namespace selectie beïnvloedt uniekheid
  • SHA-1 heeft bekende cryptografische zwaktes

UUID v5 Structuur

BitsContent
0-47Eerste 48 bits van SHA-1 hash
48-51Versie (0101 voor v5)
52-63Volgende 12 bits van SHA-1 hash
64-65Variant (10 voor RFC4122)
66-127Overgebleven 62 bits van SHA-1 hash

UUID v5 versus andere versies

VersionGebaseerd opGebruikssituatiePrivacy
UUID v1Tijd + MACTijdgeordende ID's⚠️ Toont MAC
UUID v3Namespace + MD5Deterministische ID's✅ Privé
UUID v4RandomVeilige willekeurige ID's✅ Privé
UUID v5Namespace + SHA-1Deterministische ID's✅ Privé
UUID v6Tijd (herordend)Sorteerbare ID's⚠️ Toont MAC
UUID v7Tijd + willekeurigSorteerbare ID's✅ Privé

Vooraf gedefinieerde Namespaces

NamespaceUUIDPurpose
DNS6ba7b810-9dad-11d1-80b4-00c04fd430c8Voor domeinnamen
URL6ba7b811-9dad-11d1-80b4-00c04fd430c8Voor URL's
OID6ba7b812-9dad-11d1-80b4-00c04fd430c8Voor ISO OID's
X.500 DN6ba7b814-9dad-11d1-80b4-00c04fd430c8Voor X.500 Distinguished Names

Veelvoorkomende gebruikssituaties

  • Content adressering: Consistente ID's voor identieke inhoud
  • Gedistribueerde systemen: Genoemde bronnen over systemen heen
  • URL-mapping: Omzetten van URL's naar stabiele identifiers
  • Configuratiebeheer: Bijhouden van benoemde configuratie-items
  • Data deduplicatie: Identificeren van identieke records
  • Federation: Consistente cross-systeem identifiers

Veelgestelde vragen

Is UUID v5 beter dan UUID v3?

Ja, voor de meeste gebruikssituaties. UUID v5 gebruikt SHA-1 wat cryptografisch sterker is dan het MD5-algoritme dat in UUID v3 wordt gebruikt. Beide bieden echter deterministische generatie.

Kunnen UUID v5 waarden botsen?

Botsingen zijn theoretisch mogelijk maar in de praktijk uiterst onwaarschijnlijk vanwege de eigenschappen van SHA-1. Het gebruik van verschillende namespaces of naamtekenreeksen elimineert vrijwel het risico op botsingen.

Is SHA-1 veilig genoeg voor UUID v5?

Voor UUID-doeleinden blijft SHA-1 geschikt ondanks zijn cryptografische zwaktes. UUID v5 is niet bedoeld voor beveiligingsdoeleinden maar voor het genereren van consistente identifiers.

Kan ik mijn eigen namespace maken voor UUID v5?

Ja. Hoewel RFC 4122 standaard namespaces definieert (DNS, URL, OID, X.500), kunt u aangepaste namespaces maken met elke geldige UUID, meestal een v4 willekeurige UUID.

Zal dezelfde naam altijd dezelfde UUID v5 genereren?

Ja, maar alleen binnen dezelfde namespace. Dezelfde naam in verschillende namespaces genereert verschillende UUID's, wat een belangrijk kenmerk is voor het organiseren van identifiers.

Resources