# Overview
A UUID is... #flashcard
A 128-bit label used to create unique identifiers within computer systems. They are designed in a way that aims to ensure uniqueness across any UUID generated, no matter by whom.
<!--ID: 1751507776925-->
![[2024-12-16_Universally Unique ID (UUID)-1.png]]
# Key Considerations
## Versions of UUID #flashcard
| Version | Input | Generation Approach | Use Case |
| ------- | ----------------------------------------------- | ----------------------- | ----------- |
| UUID1 | Timestamp + Counter + [[MAC Address]] | Concatenation of Inputs | |
| UUID2 | Reserved for Security IDs with no known details | - | - |
| UUID3 | User Provided Input + MAC Address | [[MD5]] hash of inputs | |
| UUID4 | - | Randomly Generated | Most Common |
| UUID5 | User Provided Input + MAC Address | [[SHA1]] hash of inputs | |
| UUID6 | | | |
| UUID7 | | | |
| UUID8 | | | |
<!--ID: 1751507776927-->
# Pros of UUID #flashcard
- Globally unique
- [[stateless]]
<!--ID: 1751507776930-->
# Cons of UUID #flashcard
- Not human readable
- Can hurt insertion performance
- Takes up additional memory compared to some other IDs
<!--ID: 1751507776932-->
# Use Cases of UUID
- Keys in [[Databases]]
- [[File Systems]]
# Related Topics
- [[Universally Unique Lexicographically Sortable Identifier (ULID)]]
- [[Collision Resistant Unique Identifier (CUID)]]