UUIDv47 Library: Combining UUIDv7 Sortable Performance with UUIDv4 Privacy
By
aabbdev
Sesame, salt, and substance. A flagship bake.
Summary
UUIDv47 is a C library that transforms UUIDv7 (time-sortable UUIDs) into UUIDv4-like identifiers for API boundaries while maintaining the sortable properties internally. It uses SipHash-2-4 encryption to mask the timestamp field with a key derived from the UUID's random bits, providing both the performance benefits of UUIDv7 sorting and the privacy/security appearance of UUIDv4.
Key quotes
· 3 pulleduuidv47 lets you store sortable UUIDv7 in your database while emitting a UUIDv4-looking façade at your API boundary
It does this by XOR-masking only the UUIDv7 timestamp field with a keyed SipHash-2-4 stream tied to the UUID's own random bits
UUIDv47 = v4 privacy + v7 performance
You might also wanna read
OpenSSL 4.0.0 Released with Significant New Features and Compatibility Changes
OpenSSL 4.0.0 is a major feature release that introduces significant new functionality along with potentially incompatible changes. Key upda
Libsodium at 13: Reflecting on the Cryptography Library's Design Philosophy and API Stability
The article discusses libsodium, a 13-year-old cryptography library, focusing on its design philosophy of making cryptography simple and acc
2025 Go Cryptography Ecosystem Review: Annual Updates and Developments
The article presents a comprehensive overview of developments at the intersection of Go programming language and cryptography over the past
Claude Code Debugs Low-Level Bug in Post-Quantum Cryptography Implementation
The author describes their experience implementing ML-DSA, a post-quantum signature algorithm, in Go over four days. Despite completing the
Rust Merkle Tree Library with Configurable Storage and Hash Functions
A Rust implementation of Merkle trees with configurable storage backends and hash functions. The library supports fixed depth and incrementa
Introducing Mutation Testing for Go Cryptographic Assembly
The article discusses the challenges of testing assembly cores in the Go cryptography standard library due to their constant-time nature. It
