UUID generator
MDV ToolsGenerate up to 1,000 random v4 or time-ordered v7 UUIDs at a time.
How this works
Version 4 comes from crypto.randomUUID() wherever the browser has it, and every
current one does. Where it is missing, the fallback draws 16 bytes from
crypto.getRandomValues, sets the high nibble of byte 6 to 0100 (the
version) and the top two bits of byte 8 to 10 (the RFC 4122 variant), and prints
the rest as hex in the 8-4-4-4-12 layout. That leaves 122 random bits, the same as the
built-in. Both paths take their randomness from the operating system's CSPRNG through
WebCrypto; Math.random is not used anywhere on this page. The line under the
list names which path produced the run.
Version 7 follows RFC 9562: the first 48 bits are the Unix time in milliseconds from
Date.now(), big-endian; then the version nibble 0111; then 12 random
bits; then the variant bits 10; then 62 more random bits — 74 random bits in all,
from the same getRandomValues. Because the time comes first, v7 UUIDs sort as
text in the order they were made, down to the millisecond; two made in the same millisecond
have no defined order between them, and a batch of 1,000 usually lands in one or two
milliseconds. The same property is a disclosure: anyone holding a v7 UUID can read when it
was made, to the millisecond, and the line under the list shows exactly that for the first one.
Use v4 when creation time must stay private.
At most 1,000 per run; a larger count is refused with the number, not truncated. Enter in the count field generates, the same as the button. Uppercase, hyphen removal, quotes and commas change only the printed text, not the bits, and can be toggled without generating again. There is no version 1 here: it embeds a network card address the page has no business reading. Nothing is stored and there is no seed, so a list that is not copied is gone when the page closes. Nothing is uploaded: there is no server in this file.
The Dark button remembers its setting in this browser's local storage. Nothing you type or drop into the page is stored.