NAME
UUID::URandom - UUIDs based on /dev/urandom or the Windows Crypto API
VERSION
version 0.001
SYNOPSIS
use UUID::URandom qw/create_uuid/;
my $uuid = create_uuid();
DESCRIPTION
This module provides a portable, secure generator of RFC-4122 version 4 (random) UUIDs. It is a thin wrapper around Crypt::URandom to set the UUID version and variant bits required by the RFC.
USAGE
No functions are exported by default.
FUNCTIONS
create_uuid
my $uuid = create_uuid();
# "\x95\x5a\xe4\x96\x8b\xb2\x45\x0b\x9c\x7e\x99\xf5\x01\xdf\x90\xfe"
This returns a new UUID as a 16 byte 'binary' string.
create_uuid_hex
my $uuid = create_uuid_hex();
# "955ae4968bb2450b9c7e99f501df90fe"
This returns a new UUID as a 32-byte hexadecimal string.
create_uuid_string
my $uuid = create_uuid_string();
# "955ae496-8bb2-450b-9c7e-99f501df90fe"
This returns a new UUID in the 36-byte RFC-4122 canonical string representation. (N.B. The canonical representation is lower-case.)
FORK AND THREAD SAFETY
The underlying Crypt::URandom is believed to be fork and thread safe.
SEE ALSO
There are a number of other modules that provide version 4 UUIDs. Many rely on insecure or non-crypto-strength random number generators.
SUPPORT
Bugs / Feature Requests
Please report any bugs or feature requests through the issue tracker at https://github.com/dagolden/UUID-URandom/issues. You will be notified automatically of any progress on your issue.
Source Code
This is open source software. The code repository is available for public review and contribution under the terms of the license.
https://github.com/dagolden/UUID-URandom
git clone https://github.com/dagolden/UUID-URandom.git
AUTHOR
David Golden <[email protected]>
COPYRIGHT AND LICENSE
This software is Copyright (c) 2018 by David Golden.
This is free software, licensed under:
The Apache License, Version 2.0, January 2004