Hasty Briefsbeta

双语

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许可证授权