示例#1
0
        static void Main(string[] args)
        {
            var generator = new SimplePasswordGenerator(new SystemRandom(new Random()));

            Console.WriteLine("Generating 6 passwords...");

            for (var i = 0; i < 6; i++)
                Console.WriteLine(generator.GeneratePassword());

            Console.WriteLine("Press enter to generate the 7th.");
            Console.ReadLine();

            Console.WriteLine(generator.GeneratePassword());
            Console.ReadLine();
        }
示例#2
0
        public static void Test5()
        {
            var generator = new SimplePasswordGenerator(new SystemRandom(new Random()));
            var predictor = new SubGenPredictor();
            int passwordLength = 0;

            Console.WriteLine("Generating passwords...");

            for (var i = 0; i < 6; i++)
            {
                var password = generator.GeneratePassword();
                passwordLength = password.Length;
                Console.WriteLine(password);

                RecordPassword(predictor, password);
            }


            var possibleOutputs = new List<WeightedValue>[passwordLength];

            for (var i = 0; i < passwordLength; i++)
                possibleOutputs[i] = predictor.PredictWeightedNext(Password.AllChars.Length).ToList();

            List<string> possiblePasswords = GetPossiblePasswords(possibleOutputs, new int[passwordLength], 0);
            File.WriteAllLines("passwords.txt", possiblePasswords);

            Console.WriteLine($"{possiblePasswords.Count} possible next passwords written to passwords.txt");
            Console.WriteLine("Next password:"******"This password was not found in the list.");
            else
                Console.WriteLine($"Password was found at index {index} in the list.");

            Console.ReadLine();
        }