Is my ID Leaky? is a simple Preact website that detects whether an identifier could reveal more information than intended. The site is currently hosted at ismyidleaky.com.
It is currently capable of detecting the following:
- Common integer identifiers
- ULIDs
- v1 UUIDs
- v7 UUIDs
- K-Sortable Unique Identifiers
- MongoDB ObjectIds
- Snowflake IDs, including support for various platforms.
To summarise, the aforementioned identifiers reveal either when an identifier was created (in the case of ULIDs and v7 UUIDs), or quite likely how many of a given entity are present in an application. Ideally, for publicly visible identifiers, a random identifier is used (e.g. v4 UUID) or a named identifier that is not secret (e.g. GitHub usernames). Neither approaches reveal information from the system in which it runs.
Features
- Dark mode (including toggling)
- Time-based identifiers detected and parsed
- Auto-incrementing integers also handled
For time-based identifiers, the creation date of the identifier is revealed in both UTC and the user’s local time.
Development
Currently the feature set is stable. However, if there are further commonly used identifiers that can be detected support for those can be added in future.
The site is maintained and developed on GitHub
Tools and Libraries
This application was primarily built using the following:
The choice of many of these libraries was to minimise the bundle size as much as possible.
Additionally the application is pre-rendered for fast initial page loads.