uuid_generateのヘルプ・マニュアル
日本語 英語
uuid_generate --help
man uuid_generate
UUID_GENERATE(3) UUID_GENERATE(3)
名前
uuid_generate, uuid_generate_random, uuid_generate_time - 他と重ならな
い UUID 値を新しく作成する
書式
#include
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/
関連項目
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)
E2fsprogs version 1.39 May 2006 UUID_GENERATE(3)