Tool to generate UUIDs (Universal Unique Identifier) from RFC 4122 and standardized ISO/IEC 9834-8:2008 compatible with version 3, 4 and 5
UUID - dCode
Tag(s) : Hashing Function, Informatics
dCode is free and its tools are a valuable help in games, maths, geocaching, puzzles and problems to solve every day!
A suggestion ? a feedback ? a bug ? an idea ? Write to dCode!
A UUID (acronym for Universally Unique IDentifier) is an identifier that is intended to be unique and universal, defined by the ISO/IEC 9834-8:2008 standard. This is 128 bits of data usually displayed in hexadecimal in the format xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.
Version 4 is made up of random bits based on the timestamp of the system that generates them. The timestamp is usually shown in microseconds (one thousandth of a second) since a specific date (called EPOCH). The result is therefore pseudo-random and presents a very probable uniqueness (not guaranteed). Each time a UUID v4 is generated, the code generated is different.
Example: UUID v4 0cc12fda-deca-4f24-918b-f0884d2bb911
Version 3 is generated from an MD5 hash of a 2-part string: on one side a UUID named namespace , and on the other a character string containing the name to be encoded .
Version 5 is the same as version 3 but generated from a SHA-1 hash.
Each time a v3 or v5 UUID is generated, the generated code is always the same.
UUIDs are generally categorized into different versions, ranging from version 1 to version 5.
Version 1: contains a timestamp and MAC address
Version 2: a variant of V1 for DCE (Distributed Computing Environment) which includes POSIX UIDs
Version 3: MD5 hash
Version 4: randomly generated
Version 5: SHA-1 hash
UUIDs also have a variant number (3 bits) assigned to them:
0xx: Reserved for NCS (Network Computing System) for backward compatibility
10x: Default variant, see RFC 4122
110: Reserved for Microsoft for backward compatibility
111: Reserved for future definition
The UUID code contains 128 bits presented in the form of 32 hexadecimal characters divided into 8-4-4-4-12 digits (base 16) and separated by a dash -
Certain characters of the UUID string are marked, this is the case of the 13th byte (here denoted M) and the 17th byte (here denoted N) in a UUID xxxxxxxx-xxxx-Yxxx-Zxxx-xxxxxxxxxxxx
This is because Y and Z are hexadecimal digits specifying the version and variant of the UUID, respectively.
The value of Y corresponds directly to the version of the UUID
Example: If Y is 4, then it is a UUIDv4 (random)
The first 3 bits of Z (coded on 4 bits) correspond to the variant.
dCode retains ownership of the "UUID" source code. Except explicit open source licence (indicated Creative Commons / free), the "UUID" algorithm, the applet or snippet (converter, solver, encryption / decryption, encoding / decoding, ciphering / deciphering, breaker, translator), or the "UUID" functions (calculate, convert, solve, decrypt / encrypt, decipher / cipher, decode / encode, translate) written in any informatic language (Python, Java, PHP, C#, Javascript, Matlab, etc.) and all data download, script, or API access for "UUID" are not public, same for offline use on PC, mobile, tablet, iPhone or Android app!
Reminder : dCode is free to use.
The copy-paste of the page "UUID" or any of its results, is allowed (even for commercial purposes) as long as you credit dCode!
Exporting results as a .csv or .txt file is free by clicking on the export icon
Cite as source (bibliography):
UUID on dCode.fr [online website], retrieved on 2024-12-30,