CONTENTS

1 Scope
2 Normative References
2.1 Identical Recommendations | International Standards
2.2 Other normative references
3 Terms and Definitions
3.1 ASN.1 notation
3.2 Registration authorities
3.3 Network terms
3.4 Additional definitions
4 Abbreviations
5 Notation
6 UUID structure and representation
6.1 UUID field structure
6.2 Binary representation
6.3 Representation as a single integer value
6.4 Hexadecimal representation
6.5 Formal syntax of the hexadecimal representation
7 Use of a UUID to form an OID
8 Use of a UUID to form a URN
9 Rules for comparison and ordering of UUIDs
10 Validation
11 The variant bits
12 Use of UUID fields and transmission byte order
12.1 General
12.2 Version
12.3 Time
12.4 Clock Sequence
12.5 Node
13 Setting the fields of a time-based UUID
14 Setting the fields of a name-based UUID
15 Setting the fields of a random-number-based UUID
16 Registration of UUIDs and their use as OID components
16.1 The ASN.1 OID tree
16.2 Appointment of registration authorities
16.3 Fees
16.4 Registration procedures
16.4.1 Application for registration of a UUID
16.4.2 Confirmation process
16.4.3 Content of application
16.5 Maintenance of a Web-based register
Annex A Algorithms for the efficient generation of time-based UUIDs
A.1 Basic algorithm
A.2 Reading stable storage
A.3 System clock resolution
A.4 Writing stable storage
A.5 Sharing state across processes
Annex B Properties of name-based UUIDs
Annex C Generation of random numbers in a system
Annex D Sample implementation
D.1 Files provided
D.2 The copyrt.h file
D.3 The uuid.h file
D.4 The uuid.c file
D.5 The sysdep.h file
D.6 The sysdep.c file
D.7 The utest.c file
D.8 Sample output of utest
D.9 Some name space IDs
BIBLIOGRAPHY