結局UUIDは衝突するんですか(主にv4について)

PHP、Laravelを使ったUUID生成における衝突について教えてもらいました。
10

発端

まつぴー @MatsuP8

結局UUIDは衝突するんですか

2019-10-28 19:58:59

衝突しなさそうな気がしてた頃

まつぴー @MatsuP8

@kubotak_public 衝突用のエラー作成したら 宝くじみたいでわくわくしますね!😊

2019-10-28 20:03:49
kubotak.svelte @kubotak_public

@MatsuP8 UUID衝突おみくじ作ったら面白そう。誰も当たらない。当たったら祭り

2019-10-28 20:04:53
まつぴー @MatsuP8

@kubotak_public 1/230京(記事より引用)と考えると既存の宝くじより遥かに高額になるレベル…

2019-10-28 20:07:09
柚口ましろう @yu_mashirou

@MatsuP8 衝突するようなことがあったら即宝くじ買いに行くレベル

2019-10-28 22:19:21
田中ひさてる @tanakahisateru

@MatsuP8 ナノ秒で同時刻に、なぜか同じMACアドレスを持つデバイスが、偶然にも14ビットの固有数を一致させたら衝突しますよ。まあたった14ビットですからね (同一のMACアドレス?)

2019-10-28 23:43:13
まつぴー @MatsuP8

@tanakahisateru よく分からないですが衝突しなさそうな気がしたので安心しました

2019-10-28 23:44:31
田中ひさてる @tanakahisateru

@MatsuP8 他人が同じUUIDを生成することは偶然にもありえないということです

2019-10-28 23:46:06

衝突する可能性

カレー食べたい @mpyw

@tanakahisateru @MatsuP8 ちなみに補足ですがPHP(とくにLaravelとかで) Str::uuid() とかやると UUID v4 なので MAC アドレスとかは一切無関係の乱数になると思います

2019-10-29 00:44:12
田中ひさてる @tanakahisateru

@mpyw @MatsuP8 えっ!? 意味ないじゃん!! ただ桁が大きいだけの uniqid じゃん

2019-10-29 00:45:53
カレー食べたい @mpyw

@tanakahisateru @MatsuP8 うんw 一応 UUID v4 で衝突した事例聞いたことはある

2019-10-29 00:46:45
まつぴー @MatsuP8

@mpyw @tanakahisateru ja.wikipedia.org/wiki/UUID#%E3%… さっき気になって調べてましたがv1がmacアドレス使ってるみたい…?

2019-10-29 00:47:25
まつぴー @MatsuP8

やっぱりuuid v4で衝突したとき用のUuidException作って全てに通知が行くようにしておめでたさを出さないと

2019-10-29 00:49:42
田中ひさてる @tanakahisateru

@mpyw @MatsuP8 ナノ秒タイムスタンプとデバイス固有値を使わない者は地獄に落ちるべき

2019-10-29 00:54:17
n @n_1215

いや、v4でも衝突率は30京回生成して1%とかそんなもんですが……

2019-10-29 01:06:48
カレー食べたい @mpyw

でも30京分の1引き当ててる人がちらほら…

2019-10-29 01:08:40

PHP 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
1 ・・ 5 次へ