Lösenordsgenererare

Skapad 2 år sedan, skriven i Perl, med 239 visningar.
URL http://kod.perl.se/view/b760077f Bädda in
Ladda hem koden eller visa koden i råformatVisa bredare version
  1. #!/usr/bin/env perl
  2.  
  3. #
  4. # password generator
  5. # (c)2015 jheine@tecracer.com
  6. #
  7.  
  8. use List::Util 'shuffle';
  9. use strict;
  10. use warnings;
  11.  
  12. print pwd_gen();
  13.  
  14. sub pwd_gen {
  15.  
  16.   my $pwd_settings = {
  17.     uppercase_count    => 5,
  18.     lowercase_count    => 5,
  19.     numbers_count      => 3,
  20.     specialchars_count => 2,
  21.   };
  22.  
  23.   my @chars_uc = qw(A B C D E F G H J K L M N P Q R S T U V W X Y Z);
  24.   my @chars_lc = qw(a b c d e f g h j k m n o p q r s t u v w x y z);
  25.   my @chars_num = qw(2 3 4 5 6 7 8 9);
  26.   my @chars_sc = (
  27.     '!',    '#',    '$',    '%',  '^',    '&',    '\'',
  28.     '*',    '(',    ')',    '{',  '}',    '[',    ']',
  29.     '|',    '/',    '\\',   '.',  ',',    ';',    ':',
  30.     '~',    '_',    '-',    '=',  '+',    '?',    '@',
  31.   );
  32.  
  33.   my @randuc  = map { $chars_uc[rand(@chars_uc)] }   (1 .. $pwd_settings->{uppercase_count});
  34.   my @randlc  = map { $chars_lc[rand(@chars_lc)] }   (1 .. $pwd_settings->{lowercase_count});
  35.   my @randnum = map { $chars_num[rand(@chars_num)] } (1 .. $pwd_settings->{numbers_count});
  36.   my @randsc  = map { $chars_sc[rand(@chars_sc)] }   (1 .. $pwd_settings->{specialchars_count});
  37.  
  38.   my @pass=(@randuc, @randlc, @randnum, @randsc);
  39.   my $passwd=join('', shuffle(@pass));
  40.   return $passwd;
  41.  
  42. }

Svara på "Lösenordsgenererare"

Här kan du skriva ett svar till kodsnutten ovan