NAME¶
uuid - Universally Unique Identifier Command-Line Tool
VERSION¶
OSSP uuid 1.6.2 (04-Jul-2008)
SYNOPSIS¶
uuid [
-v version] [
-m] [
-n count] [
-1] [
-F format] [
-o filename] [
namespace name]
uuid -d [
-r] [
-o filename]
uuid
DESCRIPTION¶
OSSP uuid is a ISO-C:1999 application programming interface (API) and
corresponding command line interface (CLI) for the generation of DCE 1.1,
ISO/IEC 11578:1996 and IETF RFC-4122 compliant
Universally Unique
Identifier (UUID). It supports DCE 1.1 variant UUIDs of version 1 (time
and node based), version 3 (name based, MD5), version 4 (random number based)
and version 5 (name based, SHA-1). Additional API bindings are provided for
the languages ISO-C++:1998, Perl:5 and PHP:4/5. Optional backward
compatibility exists for the ISO-C DCE-1.1 and Perl Data::UUID APIs.
UUIDs are 128 bit numbers which are intended to have a high likelihood of
uniqueness over space and time and are computationally difficult to guess.
They are globally unique identifiers which can be locally generated without
contacting a global registration authority. UUIDs are intended as unique
identifiers for both mass tagging objects with an extremely short lifetime and
to reliably identifying very persistent objects across a network.
This is the command line interface (CLI) of
OSSP uuid. For a detailed
description of UUIDs see the documentation of the application programming
interface (API) in
uuid(3).
OPTIONS¶
- -v version
- Sets the version of the generated DCE 1.1 variant UUID. Supported are
version "1", "3", "4" and
"5". The default is "1".
For version 3 and version 5 UUIDs the additional command line arguments
namespace and name have to be given. The namespace is
either a UUID in string representation or an identifier for internally
pre-defined namespace UUIDs (currently known are "ns:DNS",
"ns:URL", "ns:OID", and "ns:X500"). The
name is a string of arbitrary length.
- -m
- Forces the use of a random multi-cast MAC address when generating version
1 UUIDs. By default the real physical MAC address of the system is
used.
- -n count
- Generate count UUIDs instead of just a single one (the
default).
- -1
- If option -n is used with a count greater than 1, then this
option can enforce the reset the UUID context for each generated UUID.
This makes no difference for version 3, 4 and 5 UUIDs. But version
1 UUIDs are based on the previously generated UUID which is remembered in
the UUID context of the API. Option -1 deletes the remembered UUID
on each iteration.
- -F format
- Representation format for importing or exporting an UUID. The following
(case insensitive) format identifiers are currently recognized:
- BIN (binary representation)
- This is the raw 128 bit network byte order binary representation of a
UUID. Example is the octet stream 0xF8 0x1D 0x4F 0xAE 0x7D 0xEC 0x11 0xD0
0xA7 0x65 0x00 0xA0 0xC9 0x1E 0x6B 0xF6.
- STR (string representation)
- This is the 36 character hexadecimal ASCII string representation of a
UUID. Example is the string
"f81d4fae-7dec-11d0-a765-00a0c91e6bf6".
- SIV (single integer value representation)
- This is the maximum 39 character long single integer value representation
of a UUID. Example is the string
"329800735698586629295641978511506172918".
- -o filename
- Write output to filename instead of to stdout.
- -d
- Decode a given UUID (given as a command line argument or if the command
line argument is "-" the UUID is read from stdin) and
dump textual information about the UUID.
EXAMPLES¶
# generate DCE 1.1 v1 UUID (time and node based)
$ uuid -v1
01c47915-4777-11d8-bc70-0090272ff725
# decode and dump DCE 1.1 v1 UUID (time and node based)
$ uuid -d 01c47915-4777-11d8-bc70-0090272ff725
encode: STR: 01c47915-4777-11d8-bc70-0090272ff725
SIV: 2349374037528578887923094374772111141
decode: variant: DCE 1.1, ISO/IEC 11578:1996
version: 1 (time and node based)
content: time: 2004-01-15 16:22:26.376322.1 UTC
clock: 15472 (usually random)
node: 00:90:27:2f:f7:25 (global unicast)
# generate DCE 1.1 v3 UUID (name based)
$ uuid -v3 ns:URL http://www.ossp.org/
02d9e6d5-9467-382e-8f9b-9300a64ac3cd
# decode and dump DCE 1.1 v3 UUID (name based)
$ uuid -d 02d9e6d5-9467-382e-8f9b-9300a64ac3cd
encode: STR: 02d9e6d5-9467-382e-8f9b-9300a64ac3cd
SIV: 3789866285607910888100818383505376205
decode: variant: DCE 1.1, ISO/IEC 11578:1996
version: 3 (name based, MD5)
content: 02:D9:E6:D5:94:67:08:2E:0F:9B:93:00:A6:4A:C3:CD
(not decipherable: MD5 message digest only)
# generate DCE 1.1 v4 UUID 4 (random data based)
$ uuid -v4
eb424026-6f54-4ef8-a4d0-bb658a1fc6cf
# decode and dump DCE 1.1 v4 UUID 4 (random data based)
$ uuid -d eb424026-6f54-4ef8-a4d0-bb658a1fc6cf
encode: STR: eb424026-6f54-4ef8-a4d0-bb658a1fc6cf
SIV: 312712571721458096795100956955942831823
decode: variant: DCE 1.1, ISO/IEC 11578:1996
version: 4 (random data based)
content: EB:42:40:26:6F:54:0E:F8:24:D0:BB:65:8A:1F:C6:CF
(no semantics: random data only)
SEE ALSO¶
uuid(3), OSSP::
uuid(3).