RandomPassword

From Terminal23wiki

Jump to: navigation, search
function RandomPassword ([int]$intPasswordLength)
{
   # function generates a random password using the character sets below;
   # first four positions will be a number, cap letter, lower letter, and symbol each time;
   # all positions after that are random;
   # $strPasswordLength needs to be at least 4 characters;
	
   if ($intPasswordLength -lt 4) {return "I don't want to create a password less than 4 chars."}
	
   $strNumbers = "1234567890"
   $strCapitalLetters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
   $strLowerLetters = "abcdefghijklmnopqrstuvwxyz"
   $strSymbols = "!%^&*()+=/?{}[]~,.<>:"
   $rand = new-object random
	
   for ($a=1; $a -le $intPasswordLength; $a++)
      {
         if ($a -gt 4)
            {
               $b = $rand.next(0,4) + $a
               $b = $b % 4 + 1
            } else { $b = $a }
         switch ($b)
            {
               "1" {$b = "$strNumbers"}
               "2" {$b = "$strCapitalLetters"}
               "3" {$b = "$strLowerLetters"}
               "4" {$b = "$strSymbols"}
            }
         $charset = $($b)
         $number = $rand.next(0,$charset.Length)
			
         $RandomPassword += $charset[$number]
      }
   return $RandomPassword
}

RandomPassword 36
Personal tools