Provided by: manpages-fr-dev_4.13-4_all 

NOM
uuid_generate, uuid_generate_random, uuid_generate_time, uuid_generate_time_safe - Créer une nouvelle
valeur unique d'UUID
SYNOPSIS
#include <uuid.h>
void uuid_generate(uuid_t out);
void uuid_generate_random(uuid_t out);
void uuid_generate_time(uuid_t out);
int uuid_generate_time_safe(uuid_t out);
void uuid_generate_md5(uuid_t out, const uuid_t ns, const char *name, size_t len);
void uuid_generate_sha1(uuid_t out, const uuid_t ns, const char *name, size_t len);
DESCRIPTION
La fonction uuid_generate crée un nouvel identifiant unique universel (UUID). L'UUID sera généré en se
basant sur la haute qualité aléatoire de getrandom(2), /dev/urandom ou /dev/random, s'ils sont
disponibles. Sinon, uuid_generate() utilisera un autre algorithme qui utilise l'heure actuelle, l'adresse
MAC Ethernet locale (si disponible) et une donnée aléatoire générée par un générateur pseudoaléatoire.
La fonction uuid_generate_random() impose l'utilisation d'UUID totalement aléatoires, même si un
générateur haute qualité de nombres aléatoires n'est pas disponible, auquel cas un générateur
pseudoaléatoire lui sera substitué. À noter que l'utilisation du générateur pseudoaléatoire peut
compromettre l'unicité des UUID générés de cette façon.
La fonction uuid_generate_time() impose l'utilisation de l'algorithme alternatif qui utilise l'heure
actuelle et l'adresse MAC Ethernet locale (si disponible). Cet algorithme était celui utilisé par défaut
pour générer les UUID, mais à cause de l'utilisation de l'adresse MAC Ethernet, il peut divulguer des
informations sur quand et où l'UUID a été créé. Cela peut poser des problèmes de confidentialité dans
certaines applications, et la fonction uuid_generate n'utilise donc cet algorithme que si aucune source
de génération aléatoire de haute qualité n'est disponible. Pour garantir l'unicité des UUID générés par
les processus exécutés en même temps, la bibliothèque uuid utilise un compteur d'état d'horloge global
(si le processus est autorisé à obtenir un accès exclusif à ce fichier) et/ou le démon uuidd s'il est
déjà en cours d'exécution ou peut être engendré par le processus (s'il est installé et que le processus
est autorisé à l'exécuter). Si aucun de ces deux mécanismes de synchronisation ne peut être utilisé, il
est théoriquement possible que deux processus exécutés en même temps obtiennent les mêmes UUID. Pour
savoir si l'UUID a été généré de façon sûre, utilisez uuid_generate_time_safe.
La fonction uuid_generate_time_safe() est similaire à uuid_generate_time() si ce n'est qu'elle renvoie
une valeur qui indique si un des mécanismes de synchronisation (voir ci-dessus) a été utilisé.
L'UUID est long de 16 octets (128 bits), ce qui donne environ 3,4 x 10^38 valeurs uniques (il y a environ
10^80 particules élémentaires dans l'univers d'après le Cosmos de Carl Sagan). Le nouvel UUID peut être
raisonnablement considéré comme unique parmi tous les UUID créés localement sur le système, ainsi que
parmi les UUID créés sur d'autres systèmes par le passé et dans le futur.
Les fonctions uuid_generate_md5() et uuid_generate_sha1() génèrent un UUID haché (donc prédictible) par
MD5 et SHA1 en se basant sur un UUID bien connu fournissant un espace de noms et une chaîne binaire
arbitraire. Les UUID sont conformes aux UUID versions 3 et 5 de la norme RFC-4122
<https://tools.ietf.org/html/rfc4122>.
VALEUR RENVOYÉE
Le nouveau UUID créé est renvoyé dans l'emplacement mémoire pointé par out. uuid_generate_time_safe()
renvoie zéro si l'UUID a été généré de façon sûre, -1 sinon.
CONFORMITÉ
Cette bibliothèque génère des UUID compatibles avec la DCE 1.1 d’OSF et des UUID versions 3 et 5, basés
sur un hachage, compatibles avec RFC-4122 <https://tools.ietf.org/html/rfc4122>.
AUTEURS
Theodore Y. Ts’o
VOIR AUSSI
uuidgen(1), uuid(3), uuid_clear(3), uuid_compare(3), uuid_copy(3), uuid_is_null(3), uuid_parse(3),
uuid_time(3), uuid_unparse(3), uuidd(8)
SIGNALER DES BOGUES
Pour envoyer un rapport de bogue, utilisez le système de gestion des problèmes à l'adresse
https://github.com/karelzak/util-linux/issues.
DISPONIBILITÉ
La bibliothèque libuuid fait partie du paquet util-linux depuis la version 2.15.1. Elle peut être obtenue
à l'adresse Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.
TRADUCTION
La traduction française de cette page de manuel a été créée par Christophe Blaess <ccb@club-internet.fr>,
Michel Quercia <quercia AT cal DOT enst DOT fr>, Thierry Vignaud <tvignaud@mandriva.com>, Frédéric
Delanoy <delanoy_f@yahoo.com>, Thierry Vignaud <tvignaud@mandriva.com>, Christophe Sauthier
<christophe@sauthier.com>, Sébastien Blanchet, Jérôme Perzyna <jperzyna@yahoo.fr>, Aymeric Nys <aymeric
AT nnx POINT com>, Alain Portal <aportal@univ-montp2.fr>, Thomas Huriaux <thomas.huriaux@gmail.com>, Yves
Rütschlé <l10n@rutschle.net>, Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>, Julien Cristau
<jcristau@debian.org>, Philippe Piette <foudre-blanche@skynet.be>, Jean-Baka Domelevo-Entfellner
<domelevo@gmail.com>, Nicolas Haller <nicolas@boiteameuh.org>, Sylvain Archenault
<sylvain.archenault@laposte.net>, Valéry Perrin <valery.perrin.debian@free.fr>, Jade Alglave
<jade.alglave@ens-lyon.org>, Nicolas François <nicolas.francois@centraliens.net>, Alexandre Kuoch
<alex.kuoch@gmail.com>, Lyes Zemmouche <iliaas@hotmail.fr>, Florentin Duneau <fduneau@gmail.com>,
Alexandre Normand <aj.normand@free.fr> et David Prévot <david@tilapin.org>
Cette traduction est une documentation libre ; veuillez vous reporter à la GNU General Public License
version 3 concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.
Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à
debian-l10n-french@lists.debian.org.
util-linux 2.37.3 24 janvier 2022 UUID_GENERATE(3)