/// <summary> /// Generate a passphrase composed of random uppercase and lowercase letters and numbers. /// </summary> /// <param name="passLength">Number of password characters (1-1024)</param> /// <returns>Random passphrase string</returns> public static string GetString(int passLength) { // Boundary check if (passLength < 1) { passLength = 1; } if (passLength > 1024) { passLength = 1024; } // Get a character list char[] characters = availableCharacters.ToCharArray(); // Get a new random generator CryptRandom rand = new CryptRandom(); // Generate a password char[] pass = new char[passLength]; for (int i = 0; i < passLength; i++) { int n = rand.Next(0, characters.Length - 1); pass[i] = characters[n]; } return(new string(pass)); }
/// <summary> /// Provides a record-by-record processing functionality for the cmdlet. /// </summary> protected override void ProcessRecord() { if (this.Minimum == 0) this.Minimum = int.MinValue; if (this.Maximum == 0) this.Maximum = int.MaxValue; CryptRandom randomize = new CryptRandom(true); int value = randomize.Next(this.Minimum, this.Maximum); this.WriteObject(value); }
/// <summary> /// Generate a passphrase composed of random uppercase and lowercase letters and numbers. /// </summary> /// <param name="passLength">Number of password characters (1-1024)</param> /// <returns>Random passphrase string</returns> public static string GetString(int passLength) { // Boundary check if (passLength < 1) passLength = 1; if (passLength > 1024) passLength = 1024; // Get a character list char[] characters = availableCharacters.ToCharArray(); // Get a new random generator CryptRandom rand = new CryptRandom(); // Generate a password char[] pass = new char[passLength]; for (int i = 0; i < passLength; i++) { int n = rand.Next(0, characters.Length - 1); pass[i] = characters[n]; } return new string(pass); }