UUIDv47: Store UUIDv7 in DB, emit UUIDv4 outside (SipHash-masked timestamp)
8 months ago
- #Database
- #UUID
- #Security
- uuidv47允许在数据库中存储可排序的UUIDv7,同时在API边界呈现类似UUIDv4的外观
- 通过对UUIDv7时间戳字段使用基于UUID随机位的SipHash-2-4密钥流进行XOR掩码处理
- 特性包括:纯头文件的C语言实现(C89标准)、零依赖、确定性和可逆映射、符合RFC标准的版本/变体位
- 采用128位密钥的SipHash-2-4算法提供密钥恢复抵抗能力
- 包含完整测试套件、快速入门指南、公开API文档和综合说明文档
- UUIDv7具有时间排序特性,可提升索引局部性和分页效率
- 该外观层隐藏了时间模式,使客户端/系统感知为UUIDv4格式
- 使用SipHash-2-4算法保障安全性,确保密钥不会泄露
- 提供构建、测试和覆盖率说明,以及集成建议和性能注意事项
- 常见问题解答涵盖安全性和与UUIDv4不可区分性等核心问题
- 采用MIT许可证授权