NOM¶
uuid_generate, uuid_generate_random, uuid_generate_time, uuid_generate_time_safe
- Créer une nouvelle valeur d'UUID
SYNOPSIS¶
#include <uuid/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);
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
/dev/urandom, s'il est disponible. S'il
ne l'est pas, alors
uuid_generate utilisera un autre algorithme qui
utilise l'heure courante, 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 le générateur haute qualité de
nombres aléatoires (c'est-à-dire,
/dev/urandom) 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 courante 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, donc la fonction
uuid_generate utilise cet algorithme seulement si aucune source de
génération aléatoire 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 (si le processus est autorisé à
obtenir un accès exclusif à ce fichier) 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.
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.4x10^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.
VALEUR DE RETOUR¶
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.
OSF DCE 1.1
AUTEUR¶
Theodore Y. Ts'o
DISPONIBILITɶ
libuuid fait partie du paquet util-linux depuis la version 2.15.1,
elle est disponible sur <URL:
ftp://ftp.kernel.org/pub/linux/utils/util-linux-ng/>.
VOIR AUSSI¶
uuid(3),
uuidgen(1),
uuidd(8),
uuid_clear(3),
uuid_compare(3),
uuid_copy(3),
uuid_is_null(3),
uuid_parse(3),
uuid_time(3),
uuid_unparse(3)
TRADUCTION¶
La traduction de cette page de manuel est maintenue par les membres de la liste
<debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler
toute erreur de traduction par un rapport de bogue sur le paquet
manpages-fr-extra.