Data.UUID.V3

uuid-1.3.13: For creating, comparing, parsing and printing Universally Unique Identifiers

Copyright | (c) 2010,2012 Antoine Latter
License | BSD-style
Maintainer | aslatter@gmail.com
Stability | experimental
Portability | portable
Safe Haskell | None
Language | Haskell2010

Data.UUID.V3

Description

NOTE: This module uses MD5 hashing. Unless you know you need to use this module, you should probably be using Data.UUID.V5, which offers the same sort of functionality as this module except implemented with SHA-1 hashing.

This module implements Version 3 UUIDs as specified in RFC 4122.

These UUIDs identify an object within a namespace, and are deterministic.

The namespace is identified by a UUID. Several sample namespaces are enclosed.

Synopsis

- generateNamed :: UUID -> [Word8] -> UUID
- namespaceDNS :: UUID
- namespaceURL :: UUID
- namespaceOID :: UUID
- namespaceX500 :: UUID

# Documentation

generateNamed #

Arguments

:: UUID | Namespace
-> [Word8] | Object
-> UUID |

Generate a `UUID` within the specified namespace out of the given object.

Uses an MD5 hash. The UUID is built from first 128 bits of the hash of the namespace UUID and the name (as a series of Word8).

namespaceDNS :: UUID #

The namespace for DNS addresses

namespaceURL :: UUID #

The namespace for URLs

namespaceOID :: UUID #

The namespace for ISO OIDs

namespaceX500 :: UUID #

The namespace for X.500 DNs