Пример #1
0
        private bool ValidatePasswordNewWay(PasswordObject pass)
        {
            var  valid    = false;
            bool tooLong  = true;
            bool tooShort = true;
            int  newMin   = pass.min - 1;
            int  newMax   = pass.max - 1;

            if (pass.pass.Length >= newMin)
            {
                tooShort = false;
            }

            if (pass.pass.Length >= newMax)
            {
                tooLong = false;
            }

            if (!tooShort && !tooLong)
            {
                if (pass.pass[newMin].ToString() == pass.req || pass.pass[newMax].ToString() == pass.req)
                {
                    if (pass.pass[newMin].ToString() == pass.pass[newMax].ToString())
                    {
                        return(valid);
                    }
                    else
                    {
                        valid = true;
                    }
                }
            }

            return(valid);
        }
Пример #2
0
        private bool ValidatePassword(PasswordObject pass)
        {
            var count = 0;
            var valid = false;

            foreach (char x in pass.pass)
            {
                if (x == Convert.ToChar(pass.req))
                {
                    count++;
                }
            }

            if (count >= pass.min && count <= pass.max)
            {
                valid = true;
            }

            return(valid);
        }
Пример #3
0
        private int GetPasswords(string path, bool newWay)
        {
            int valid = 0;
            var line  = string.Empty;

            char[]         delimits = { '-', ' ', ':' };
            PasswordObject pass     = new PasswordObject();

            StreamReader file = new StreamReader(path);

            while ((line = file.ReadLine()) != null)
            {
                string[] words = line.Split(delimits, StringSplitOptions.RemoveEmptyEntries);
                pass.min  = Convert.ToInt32(words[0]);
                pass.max  = Convert.ToInt32(words[1]);
                pass.req  = words[2];
                pass.pass = words[3];

                if (!newWay)
                {
                    if (ValidatePassword(pass))
                    {
                        valid++;
                    }
                }
                else
                {
                    if (ValidatePasswordNewWay(pass))
                    {
                        valid++;
                    }
                }
            }

            return(valid);
        }