85

さて、1つは何ですか?

4

8 に答える 8

106

何かを一意に識別する識別番号です。ID番号は普遍的に一意になるという考えです。したがって、2 つのものが同じ uuid を持つべきではありません。実際、10 兆個の uuid を生成した場合、2 つの uuid が同じである可能性は 0.00000006 になります。

于 2008-11-15T20:00:15.033 に答える
70

標準化された識別子

UUIDはRFC 4122で定義されています。それらは、一元化された機関を使用せずに生成できる普遍的に一意の識別子です。わずかに異なるシナリオで使用される 4 つの主要なタイプの UUID があります。すべての UUID の長さは 128 ビットですが、通常は 4 つのハイフンで区切られた 32 個の 16 進数文字で表されます。

最も一般的なバージョン 1 UUID は、MAC アドレスとタイムスタンプを組み合わせて十分な一意性を生成します。複数の UUID が高速に生成され、タイムスタンプが次の世代の前に増分されない場合、タイムスタンプは手動で 1 増分されます。MAC アドレスが利用できない場合、またはその存在がプライバシー上の理由から望ましくない場合は、ランダムな 6代わりに、暗号的に安全な乱数ジェネレーターから供給されるバイトをノード ID に使用できます。

最も一般的でないバージョン 3 およびバージョン 5 の UUID は、それぞれ MD5 および SHA1 ハッシュ関数、さらに名前空間、および既に一意のデータ値を使用して、一意の ID を生成します。これは、たとえば URL から UUID を生成するために使用できます。

バージョン 4 UUID は、128 ビットのランダム データであり、UUID のバージョンとバリアントを識別するためにビットをいじっています。

UUID の衝突が発生する可能性は非常に低く、特に単一のアプリケーション空間では発生しません。

于 2009-04-24T17:17:39.163 に答える
12

これは非常に長いビット列であり、現在および永久に一意である必要があります。つまり、あなたまたは世界中の他の誰かによって生成された他の UUID と衝突する可能性はありません。

それが機能する方法は、現在のタイムスタンプと、それを生成したコンピューターのインターネット関連の一意のプロパティ (インターネットに接続している時点で一意である必要がある IP アドレス、または MAC アドレスなど) を使用するだけです。はより低レベルで、ネットワーク カードに組み込まれた ID) はビット文字列の一部です。

本来、世界中のすべてのネットワーク カードには独自の一意の MAC アドレスがありますが、その後の世代ではソフトウェアで MAC アドレスを変更できるため、一意の ID ほど信頼できるものではなくなりました。

于 2008-11-15T20:37:44.210 に答える
2

それは普遍的にユニークな識別子です

于 2008-11-15T19:46:51.580 に答える