Base58, UUID and colour utilities
Decode Base58 and Base58Check, inspect UUID versions and embedded timestamps, and convert colour notations.
Open in ctfpalThe odds and ends that turn up once a competition and are annoying to find otherwise.
Base58
Base58 is Base64 with the ambiguous characters removed - no 0, O, I, or l, and no + or /. Bitcoin addresses, IPFS hashes, and several URL shorteners use it. Base58Check adds a four-byte checksum, so a corrupted address is detectably corrupted rather than silently wrong.
UUIDs leak more than they look like they do
The version digit tells you how the UUID was generated, and version 1 is the interesting case: it embeds a 60-bit timestamp and the generating machine’s MAC address. A version 1 UUID in a challenge is a timestamp and a hardware identifier in disguise. Version 4 is random and reveals nothing - but a sequence of version 4 UUIDs from a weak generator may still be predictable, which brings you back to the MT19937 predictor.