Data::UUIDのドキュメントには次のように記載されています
UUIDは128ビット長であり、3400CEまでに生成された他のすべてのUUID/GUIDとは異なることが保証されています。
APR :: UUIDのドキュメントには、生成された識別子がランダムとして記述されています。
これは、APR :: UUIDによって作成されたGUIDが一意であることが保証されていないことを意味しますか?
Data::UUIDのドキュメントには次のように記載されています
UUIDは128ビット長であり、3400CEまでに生成された他のすべてのUUID/GUIDとは異なることが保証されています。
APR :: UUIDのドキュメントには、生成された識別子がランダムとして記述されています。
これは、APR :: UUIDによって作成されたGUIDが一意であることが保証されていないことを意味しますか?
これは古い質問だと思いますが、この問題に出くわしたので、いくつかの観察を共有したいと思いました.
daxim が述べたように、APR::UUID は libuuid を使用します。ただし、少なくとも一部の実装では、libuuid はランダム (v4) UUID を生成せず、v1 UUID (MAC アドレスとタイムスタンプに基づく) を生成します。これらは本当に一意ですが (MAC アドレスが実際に一意である限り)、情報 (MAC アドレスと UUID が生成された時間) を漏洩し、少なくともある程度予測可能である可能性があります。
UUID 生成コードが仕様に準拠している場合、3 グループの 1 桁目を見て、生成された UUID のバージョンを確認できます。v1 UUID はランダムではありませんが、予測可能です。v4 UUID はランダムで (おそらく) 予測不可能です。