UUID
RFC 9562 Universally Unique IDentifiers (UUIDs) Obsoletes
RFC 4122 A Universally Unique IDentifier (UUID) URN Namespace GUID (Global Unique IDentifier) とも呼ばれる。(Windows ではこちらの方がなじみ) 生成する度に理論上十分にユニークになるように作られた128ビットの識別子
しかし、作り方によっては衝突する可能性は否定できないことに注意。
概要
UUID v1
時刻(+シリアル)とユニークなノードID(通常はネットワークカードのMACアドレス)で生成。
時刻のビット順は意図的に入れ替えられていて、単純なビット列でのソートはできなくなっている。
UUID v2
DCE による定義。(RFC では仕様範囲外として記述されていない)
UUID v3
文字列からMD5ハッシュにより生成
UUID v4
乱数により生成
UUID v5
文字列からSHA1ハッシュにより生成
UUID v6
UUIDv1 の時刻部分のビット順を並べ替えて単純にUUIDのビット列を時刻順にソートできるようにしたもの+乱数により生成
UUIDv1 との互換性のために用意されていて、これを使うよりは UUIDv7 が推奨されている。
UUID v7
時刻+乱数により生成
時刻はUUIDのビット列を単純にソートできるように配置されている。
UUID v8
実装依存。(当事者間で合意ができていればよい。)