Provided by: manpages-ja-dev_0.5.0.0.20161015+dfsg-1_all bug

名前

       uuid_generate, uuid_generate_random, uuid_generate_time - 他と重ならない UUID 値を新しく作
       成する

書式

       #include <uuid/uuid.h>

       void uuid_generate(uuid_t out);
       void uuid_generate_random(uuid_t out);
       void uuid_generate_time(uuid_t out);

説明

       uuid_generate 関数は新しい UUID (universally unique identifier: 絶対に他とは重ならない識別
       子) を生成する。 UUID の生成には、 /dev/urandom のような質の良い乱数発生機構が利用できる場
       合はそれを利用する。 できない場合には、 uuid_generate は別のアルゴリズムを用いる。この場合
       は現在時刻、  ローカルなイーサネットの MAC アドレスが取得できればその値、 および擬似乱数発
       生機構から生成された乱数が用いられる。

       uuid_generate_random 関数は、質の良い乱数発生機構 (例えば /dev/urandom) が利用できない場合
       でも、完全にランダムベースの (つまり時刻や MAC アドレスを使わない) UUID フォーマットを作り
       たい場合に用いる。 この場合は擬似乱数発生機構が代わりに用いられる。 擬似乱数発生機構を利用
       すると、このように生成された UUID の 一意性は劣化するかもしれないことに注意すること。

       uuid_generata_time 関数は、代替アルゴリズムを使いたい場合に用いる。 これは現在時刻と (あれ
       ば) イーサネットの MAC アドレスを用いる。 このアルゴリズムはかつて UUID 生成方法のデフォル
       トであったが、  イーサネットの MAC アドレスを用いるので、いつどこで UUID が生成 されたかの
       情報がリークしてしまう。これはアプリケーションによっては  プライバシーの問題を起こすことが
       あるので、 uuid_generate 関数は質の高い乱数発生機構が利用できない場合に限って このアルゴリ
       ズムを用いるようになった。

       UUID は 16 バイト (128 ビット)  長で、およそ  3.4x10^38  この  ユニークな値を与える  (Carl
       Segan  の Cosmos によれば、全宇宙にある素粒子の個数は 10^80 だそうである)。 新たに作られた
       UUID は、ローカルなシステムや外部のシステムによって 過去または未来に生成された/される UUID
       のいずれとも異なると 考えることができる。

返り値

       新たに生成された UUID が、 out の指すメモリ位置に返される。

準拠

       OSF DCE 1.1

著者

       Theodore Y. Ts'o

入手方法

       http://e2fsprogs.sourceforge.net/http://e2fsprogs.sourceforge.net/

関連項目

       uuid(3),   uuidgen(1),   uuid_clear(3),  uuid_compare(3),  uuid_copy(3),  uuid_is_null(3),
       uuid_parse(3), uuid_time(3), uuid_unparse(3)