結局UUIDは衝突するんですか(主にv4について)
PHP、Laravelを使ったUUID生成における衝突について教えてもらいました。
発端
衝突しなさそうな気がしてた頃
田中ひさてる
@tanakahisateru
@MatsuP8 ナノ秒で同時刻に、なぜか同じMACアドレスを持つデバイスが、偶然にも14ビットの固有数を一致させたら衝突しますよ。まあたった14ビットですからね (同一のMACアドレス?)
2019-10-28 23:43:13衝突する可能性
カレー食べたい
@mpyw
@tanakahisateru @MatsuP8 ちなみに補足ですがPHP(とくにLaravelとかで) Str::uuid() とかやると UUID v4 なので MAC アドレスとかは一切無関係の乱数になると思います
2019-10-29 00:44:12
まつぴー
@MatsuP8
@mpyw @tanakahisateru ja.wikipedia.org/wiki/UUID#%E3%… さっき気になって調べてましたがv1がmacアドレス使ってるみたい…?
2019-10-29 00:47:25PHP Laravel でのUUID生成について
田中ひさてる
@tanakahisateru
@mpyw @MatsuP8 Laravel の Str::uuid() とかいうのは本当に v4 なんですか。v4 なんて桁の大きい乱数(発行数が知れてるから衝突しても事故ですねで手動対応できる範囲)としてしか使ったことないので、それがデフォルトなんてちょっと異常としか思えなくて
2019-10-29 01:00:51
まつぴー
@MatsuP8
@tanakahisateru @mpyw 僕は今回ramsey/uuidってライブラリ使ってて(というか入ってた)Uuid::v4()みたいな作成したのでてっきりバージョン指定できるかと思ってたんですがそうでもないんですねえ… って書いてたらラッパーだった
2019-10-29 01:03:01