AnCH Framework 0.1
Another C++ Hack Framework
Loading...
Searching...
No Matches
AnCH UUID library documentation

Introduction

AnCH UUID library aims to provide facilities for generating and parsing UUID.

Prerequisites

AnCH UUID is a standalone library as long as you only parse UUID or generate random UUID.
For generating MD5 and SHA1 UUIDs, AnCH cryptography library documentation anch-crypto library is required.
For generating MAC UUIDs, anch-device library is required.

Installation

make install

Conception

AnCH UUID library contains only one class: UUID.
Each UUID version should have a provider for UUID generation. This library provides the random version implementation (version 4).

AnCH cryptography library documentation anch-crypto library provides MD5 (version 3) and SHA1 (version 5) implementations. They have to be registered to be used:

anch-device library provides MAC address (version 1) implementation. It has to be registered to be used:

void registerMACAddressUUIDProvider()

Examples

Generate and parse UUIDs:

UUID mac = UUID::generateUUID(UUID::Version::MAC_ADDRESS);
std::cout << "MAC address UUID: " << mac << std::endl;
UUID md5 = UUID::generateUUID(UUID::Version::MD5_HASH, "Ta mère suce des bites en enfer !");
std::cout << "MD5 hash UUID: " << md5 << std::endl;
UUID random = UUID::random();
std::cout << "Random UUID: " << random << std::endl;
UUID sha1 = UUID::generateUUID(UUID::Version::SHA1_HASH, "Ta mère suce des bites en enfer !");
std::cout << "SHA1 hash UUID: " << sha1 << std::endl;
std::string macStr = static_cast<std::string>(mac);
std::cout << "UUID MAC address UUID conversion: " << macStr << std::endl;
std::cout << "UUID MAC address string conversion: " << UUID(macStr) << std::endl;
std::string md5Str = static_cast<std::string>(md5);
std::cout << "UUID MD5 address UUID conversion: " << md5Str << std::endl;
std::cout << "UUID MD5 address string conversion: " << UUID(md5Str) << std::endl;
std::string randomStr = static_cast<std::string>(random);
std::cout << "UUID RANDOM address UUID conversion: " << randomStr << std::endl;
std::cout << "UUID RANDOM address string conversion: " << UUID(randomStr) << std::endl;
std::string sha1Str = static_cast<std::string>(sha1);
std::cout << "UUID SHA1 address UUID conversion: " << sha1Str << std::endl;
std::cout << "UUID SHA1 address string conversion: " << UUID(sha1Str) << std::endl;