Domanda

Dobbiamo importare automaticamente un ampio elenco di utenti con alcuni dati in un sistema in esecuzione. Per una password iniziale, voglio aggiornare l'elenco (formato CSV al momento) con una chiave alfanumerica casuale (8 cifre).

Quando lo si inserisce con una routine speciale (che necessita di un file CSV), la password (in questo caso la chiave alfanumerica) viene memorizzata come hash md5.

vale a dire. Genero una chiave alfanumerica casuale:

H2A5D39A -> MD5: 1642fccf791f15d137cf31282af79752

In questo modo voglio creare un elenco in cui gli utenti autenticati possano chiedermi la password iniziale (la chiave alfanumerica).

Hai un'idea migliore per un "segreto"? password iniziale?

Come creeresti la chiave alfanumerica in Perl?

P.S .: Il "sistema in esecuzione", non programmato da noi, consente solo password alfanumeriche (nessun carattere speciale, ...)

È stato utile?

Soluzione

  

Come creeresti la chiave alfanumerica in Perl?

join '', mappa + (0..9, 'a' .. 'z', 'A' .. 'Z') [rand (10 + 26 * 2)], 1..8

Altri suggerimenti

Probabilmente userei pwgen. È fantastico in quanto consente una facile personalizzazione e ha l'interruttore per non usare caratteri ambigui (pensa: I, l, 1, O, 0).

ad esempio:

=> pwgen -c -n -B 8 50
shuFak9o peiCh3Oo ohPieng9 Vohh7zuu os3Theep aeV9nuo9 aexeik4B aeChoh9s
uth3eePu baePhu3o aiS3pahn iPie4itu We9zuphi xie3Chi3 yeiRoo7c fai3ITai
aCh9ohco Echuab7v Fu9ahCho Aevae4no Peethai9 AiJio3Pa aeNge9Fo baePh7Uy
Nai7shei eeMoh9en Zeibai4n eGe7yuch Jaek7nai aeZah7sh Chei4ua4 shoo9oG9
iu7Wohho aep7De4U Fong9fo3 AhneeP7U oxae7Yoh ahF4eim3 fahm9Aiw naoNg4ie
Chie4xua jix3Uvot aChei7ai diey4Shi Yur7ee4j eeJeo9ee Bou3ahmu kaeb4Cah
Eh4Eemae oD4phoo9

La risposta di Anonymous è molto buona, ma, se hai bisogno di una stringa casuale conforme ad alcune regole (come almeno una maiuscola, una minuscola e un numero), potresti voler esaminare String :: Random .

Un altro modulo da considerare è Data :: Random

Ho appena completato una revisione dei 12 moduli su CPAN che possono essere utilizzati per generare password casuali:

http://blogs.perl.org/ utenti / neilb / 2011/08 / random-password generation.html

In breve: se si desidera una password pronunciabile, guardare Cripta :: YAPassGen , altrimenti vai a App :: Genpass .

App :: Genpass evita i caratteri confusi e ti dà un migliore controllo (e valori predefiniti) rispetto a Dati :: Casuale o Stringa :: Casuale

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top