Every V4 UUID

A whimsical web project claims to list every possible version 4 UUID, using clever cryptographic permutations and a custom scrolling interface to map each 122‑bit value onto a seemingly random yet bijective sequence. Commenters unpack how the site works under the hood, from Feistel ciphers and format‑preserving “randomization” to tricks for implementing search and infinite‑feeling scroll within browser limits. Alongside technical appreciation, many treat it as an art piece and joke about “UUID leaks,” password collisions, and the sheer scale of 2¹²² identifiers.

Overall reaction & concept

  • Many commenters love the project as funny, artistic, and surprisingly polished, likening it to a “Library of Babel” for UUIDs.
  • Others initially misunderstand it as a database of existing UUIDs or UUID-shaped domains before realizing it’s a deterministic generator over the full v4 space.

Implementation & technical details

  • The site enumerates all possible UUIDv4s by mapping each integer index in [0, 2^122) bijectively to a valid UUIDv4 using a Feistel-like cipher, not random generation.
  • This preserves uniqueness: each index yields exactly one UUID, and no UUID appears twice.
  • Only 122 bits are free; version and variant bits are fixed per the v4 format.

Search behavior

  • The “search” is effectively a custom full-text finder that uses the known mapping to generate UUIDs matching a substring rather than scanning stored data.
  • It does not strictly enumerate matches in order; “next/prev” can revisit different UUIDs, and mobile browser find-in-page doesn’t integrate.
  • Commenters propose more rigorous schemes (linear algebra over GF(2), T-functions, format-preserving encryption, SMT solvers) to get ordered results while retaining a random-looking sequence.

UUID format and scale

  • Several comments explain that v4 UUIDs are 128-bit values with 6 fixed bits, leaving 2^122 possibilities.
  • There is discussion of valid hex digits, version nibble 4, and allowed variant bits (8–b), and of why naïve strings like deadbeef-f00d-f00d-deadbeef are invalid.
  • People compare the keyspace size to card-shuffle factorials and cosmic-scale analogies.

Performance, UI, and browser quirks

  • Users praise how smooth and responsive the “infinite” scrolling feels compared to typical web apps.
  • Implementation uses a virtualized table and custom scroll handling because browsers cap scrollable height well below “trillion-pixel” ranges.
  • Some report edge-case bugs (e.g., scrolling past the bottom throwing errors, trackpad vs. wheel differences, mobile scroll/search limitations).

Security, privacy, and “data leaks” jokes

  • Running joke: “all UUIDs have been leaked,” paralleling lists of all ATM PINs or SSNs; people mock-check “their” UUIDs, passwords, and keys.
  • One commenter briefly worries this could be a useful rainbow table but others clarify that UUIDs are generated on the fly and cover the entire space, not a curated subset.

Ideas, feature requests, and variants

  • Requests include: bookmarking via deep links, an API, smooth/autoscroll, draggable scrollbars on mobile, Excel export, and “I’m Feeling Lucky” / scrubbing controls.
  • Many enjoy hunting for vanity/hexspeak UUIDs (e.g., deadbeef, b00b, 69420, pi) and joke about “claiming” or minting them as NFTs.
  • Some imagine similar projects for every SSN, every password, or “every UTF-8 string,” extending the Library-of-Babel theme.