perl script for radon secure password

This is my first Perl script used for daily work, record and make some explanation here.
 
[code]
 #!/usr/bin/perl
 
use strict;
use warnings;
use Getopt::Long;
Getopt::Long::Configure ("bundling");
 
if ($#ARGV  > 0 || $#ARGV < 0 || $ARGV[0] !~ /^[0-9]+$/) {
        print "\nUsage:\tOnly 1 numberic argument is ok.\n\n";
        exit;
}
 
sub GetRandNum() {
        my $lower=33;
        my $upper=126;
        my $random = int(rand( $upper-$lower+1 )) + $lower;
        return $random;
}
 
my $pwdlen=$ARGV[0];
my $count=0;
my $password="";
 
while ($count < $pwdlen) {
my $num=GetRandNum();
$password=$password.chr($num);
$count ++;
}
 
print "$password\n";
[/code]
 
Since this script is very simple, I won’t comment in it. Just list some points:
  1.  The script is used to generate radon password which contains lower/upper/special characters or numbers, which should be more secure.
  2. Function int(), rand(), chr() are used to get integer, radon values and keyboard characters.
  3. Loop while is used to get radon character one by one, until length is up to limited.
  4. #$ARGV is the number of arguments given by user, $ARGV[0] is the first argument.
 
Some output paste here:
 
[user@host perl]$./test1.pl

Usage:  Only 1 numberic argument is ok.

[user@host perl]$./test1.pl 8
jMe=aoM(
[user@host perl]$./test1.pl 8 9

Usage:  Only 1 numberic argument is ok.

[user@host perl]$./test1.pl a

Usage:  Only 1 numberic argument is ok.
 
This script also has some points can be improved, such as choosing certain types of character not including in the password string. Anyway this is my first useful perl script and just version 1, I’ll update it if needed.

你可能感兴趣的:(secure,perl,word,Office,script,休闲)