Re: aide sur perl

Page principale

Répondre à ce message
Auteur: Patrice Karatchentzeff
Date:  
À: guilde
Sujet: Re: aide sur perl
Le Thu, 14 Nov 2002 01:14:14 +0100
anne.aublanc@??? écrivait :

> bonjour,
>
> y-a qq'un pour me traduire ces 2 lignes de perl?
>
>     @chars     = ( "A" .. "Z", "a" .. "z", 0 .. 9, qw(! @ $ % ^ & *)
>     );


@char est une liste comprenant tous les caractères compris entre A et Z,
a et z, 0 et 9 ainsi que les caractères ! @ $ % ^ & * (soit, grosso
modo, tous les caractères ASCII ;-) )

>     $unique_key = join("", @chars[ map { rand @chars } ( 1 .. 31 ) ]);

>


$unique_key est un ensemble scalaire, pris « au hasard » dans la liste
précédente, de longueur 32.

C'est une façon comme une autre de fabriquer des clés de 32 caractères
ASCII aléatoires pour faire des mots de passe par exemple.

> Comment $unique_key peut-être unique?


Il ne l'est pas car dépendant de rand qui est un générateur de nombre
aléatoire de Perl. Comme tous les générateurs « aléatoires »
informatiques, ils n'ont d'aléatoires que le nom.

Par contre, on peut compter sur Larry Wall pour qu'il soit presque
aléatoire, c'est-à-dire que la probabilité de retomber sur la même
chaîne soit quasi-nulle.

PK

-- 
Patrice KARATCHENTZEFF
STMicroelectronics           Tel:  04-76-92-63-81
850, rue Jean Monnet
38926 CROLLES Cedex, France  Courriel: patrice.karatchentzeff@???