UUID Version 3 Generator (MD5 Naamgebaseerd)

Genereer consistente UUID's met namespace en naam met MD5-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 v3?

UUID versie 3 is een op namespace gebaseerde 128-bits identifier (36-tekenreeks) uit RFC 4122 die MD5-hashing gebruikt. Het bestaat uit:

  • Namespace UUID: Een vooraf gedefinieerde of aangepaste UUID-namespace
  • Name: Een door de gebruiker opgegeven tekenreeks die wordt gehasht
  • MD5-hash: Toegepast op de combinatie van namespace + naam

Voorbeeld van formaat: 9125a8dc-52ee-365b-a5aa-81b0b3681cf6

Hoe UUID v3 werkt

  1. Selecteer een namespace UUID (vooraf gedefinieerd of aangepast)
  2. Voeg de bytes van de namespace UUID samen met de bytes van de naamtekenreeks
  3. Bereken MD5-hash van de samengevoegde waarde
  4. Stel versiebits in op 0011 (versie 3)
  5. Stel variantbits in op 10 (RFC 4122-standaard)
  6. Stel samen als 32 hexadecimale cijfers met streepjes: 8-4-4-4-12 formaat

Voordelen & Overwegingen

AdvantagesConsiderations
  • Deterministische generatie
  • Zelfde invoer = zelfde UUID
  • Geen status vereist
  • Geen privacyproblemen
  • MD5 is cryptografisch zwak
  • Niet tijdgeordend/sorteerbaar
  • UUID v5 (SHA-1) wordt aanbevolen
  • Geen ingebedde creatietijd

UUID v3-structuur

BitsContent
0-47Eerste 48 bits van MD5-hash
48-51Versie (0011 voor v3)
52-63Volgende 12 bits van MD5-hash
64-65Variant (10 voor RFC4122)
66-127Overgebleven 62 bits van MD5-hash

Vooraf gedefinieerde namespaces

NameUUIDPurpose
DNS6ba7b810-9dad-11d1-80b4-00c04fd430c8Domeinnamen
URL6ba7b811-9dad-11d1-80b4-00c04fd430c8URLs
OID6ba7b812-9dad-11d1-80b4-00c04fd430c8ISO OID's
X.500 DN6ba7b814-9dad-11d1-80b4-00c04fd430c8X.500 Distinguished Names

UUID v3 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é

Veelvoorkomende gebruikssituaties

  • URL-gebaseerde identifiers: UUID's maken van URL's
  • Domeinspecifieke ID's: DNS-namen omzetten naar UUID's
  • Deterministische bestand-ID's: Content-adressering
  • Gebruikers-ID's: Van e-mail of gebruikersnaam
  • Configuratie-invoer: Voor consistente sleutels
  • Documentreferenties: Contentmanagementsystemen

Veelgestelde vragen

Is UUID v3 cryptografisch veilig?

Niet echt. UUID v3 gebruikt MD5, dat bekende cryptografische zwaktes heeft. Voor hogere veiligheid, overweeg UUID v5 (SHA-1) of UUID v4 (willekeurig).

Zullen dezelfde invoerwaarden altijd dezelfde UUID v3 opleveren?

Ja. UUID v3 is deterministisch - dezelfde namespace en naam zullen altijd dezelfde UUID opleveren, wat het nuttig maakt voor reproduceerbare ID's.

Wat is het verschil tussen UUID v3 en v5?

Ze werken identiek, behalve dat v3 MD5 gebruikt en v5 SHA-1. UUID v5 wordt over het algemeen aanbevolen omdat SHA-1 cryptografisch sterker is dan MD5.

Kan ik mijn eigen namespaces maken?

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

Is UUID v3 geschikt voor beveiligingstokens?

Nee. Vanwege de zwaktes van MD5 en het deterministische karakter wordt UUID v3 niet aanbevolen voor beveiligingstokens of iets dat onvoorspelbaarheid vereist.

Resources