コード例 #1
0
        static string generatePassword(PasswordStrength passwordStrength)
        {
            const string charsForEasy   = "abcdefghijklmnopqrstuvwxyz";
            const string charsForNormal = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
            const string charsForHard   = charsForEasy + charsForNormal + "!@#$%^&*()_+/\\|";

            switch (passwordStrength)
            {
            case PasswordStrength.easy:
                return(new string(Enumerable.Repeat(charsForEasy, 6)
                                  .Select(s => s[random.Next(s.Length)])
                                  .ToArray()));

            case PasswordStrength.normal:
                return(new string(Enumerable.Repeat(charsForNormal, random.Next(6, 10))
                                  .Select(s => s[random.Next(s.Length)])
                                  .ToArray()));

            case PasswordStrength.hard:
            default:
                return(new string(Enumerable.Repeat(charsForHard, random.Next(10, 30))
                                  .Select(s => s[random.Next(s.Length)])
                                  .ToArray()));
            }
        }
コード例 #2
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            PasswordStrength result = PasswordStrengthUtils.CalculatePasswordStrength((string)value);
            int rs = 0;

            switch (result)
            {
            case PasswordStrength.Invalid:
                rs = 0;
                break;

            case PasswordStrength.VeryWeak:
                rs = 1;
                break;

            case PasswordStrength.Weak:
                rs = 2;
                break;

            case PasswordStrength.Average:
                rs = 3;
                break;

            case PasswordStrength.Strong:
                rs = 4;
                break;

            case PasswordStrength.VeryStrong:
                rs = 5;
                break;
            }
            return((int)rs);
        }
コード例 #3
0
        static string generatePassword(PasswordStrength passwordStrenght, string unsecurePassword)
        {
            // easy lozinkata treba da ima do 6 znaci ( samo mali bukvi )
            // normal lozinkata treba da ima od 6 do 10 znaci (da sodrzhi golemi bukvi i
            // brojki
            // hard loznikata treba da ima povekje od 10 znaci i da sodrzhi mali , golemi
            // bukvi i specijalni znaci
            StringBuilder password          = new StringBuilder();
            Random        rand              = new Random();
            const string  SpecialCharacters = "!@#$%^&*()";

            if (passwordStrenght == PasswordStrength.Easy)
            {
                int length = rand.Next(3, 6);
                for (int i = 0; i < length; i++)
                {
                    char c = new Char();
                    c = unsecurePassword[rand.Next(unsecurePassword.Length)];
                    password.Append(((rand.Next(32) % 2 == 0) && (Char.IsLower(c))) ? c : Char.ToUpper(c));
                }
            }
            else if (passwordStrenght == PasswordStrength.Normal)
            {
                int length = rand.Next(6, 10);
                for (int i = 0; i < length; i++)
                {
                    char c = new Char();
                    c = unsecurePassword[rand.Next(unsecurePassword.Length)];
                    if ((rand.Next(32) % 2 == 0) && (Char.IsLower(c)))
                    {
                        password.Append(Char.ToUpper(c));
                    }
                    else
                    {
                        password.Append(c);
                    }
                }
            }

            else
            {
                int length = rand.Next(10, 15);
                for (int i = 0; i < length; i++)
                {
                    if (i % 2 == 0)
                    {
                        password.Append(SpecialCharacters[rand.Next(SpecialCharacters.Length)]);
                        // nekoja logika pak, za generirranje na znak od const nizata gore
                    }
                    else
                    {
                        char c = new Char();
                        c = unsecurePassword[rand.Next(unsecurePassword.Length)];
                        password.Append(((rand.Next(32) % 2 == 0) && (Char.IsLower(c))) ? c : Char.ToUpper(c));
                        // nekoja moja logika za generiranje na random mala ili golema
                    }
                }
            }
            return(password.ToString());
        }
コード例 #4
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            PasswordStrength result = PasswordStrengthUtils.CalculatePasswordStrength((string)value);
            string           rs     = null;

            switch (result)
            {
            case PasswordStrength.Invalid:
                rs = "Invalid";
                break;

            case PasswordStrength.VeryWeak:
                rs = "VeryWeak";
                break;

            case PasswordStrength.Weak:
                rs = "Weak";
                break;

            case PasswordStrength.Average:
                rs = "Average";
                break;

            case PasswordStrength.Strong:
                rs = "Strong";
                break;

            case PasswordStrength.VeryStrong:
                rs = "VeryStrong";
                break;
            }
            return(rs);
        }
コード例 #5
0
        public static string PasswordHint(PasswordStrength passwordStrength)
        {
            string result = "";

            switch (passwordStrength)
            {
            case PasswordStrength.Blank:
                result = "允許空白密碼";
                break;

            case PasswordStrength.VeryWeak:
                result = "密碼長度小於5個字元 或者 具有一個字母字元 或者 具有一個數字字元";
                break;

            case PasswordStrength.Weak:
                result = "密碼長度至少5個字元 並且符合這裡其中一個條件 : 密碼長度大於等於 8 個字元、大寫、小寫、數字、特殊符號";
                break;

            case PasswordStrength.Medium:
                result = "密碼長度至少5個字元 並且符合這裡其中兩個個條件 : 密碼長度大於等於 8 個字元、大寫、小寫、數字、特殊符號";
                break;

            case PasswordStrength.Strong:
                result = "密碼長度至少8個字元 並且符合這裡其中三個個條件 : 密碼長度大於等於 8 個字元、大寫、小寫、數字、特殊符號";
                break;

            case PasswordStrength.VeryStrong:
                result = "密碼長度至少8個字元 並且符合這裡所有條件 : 密碼長度大於等於 8 個字元、大寫、小寫、數字、特殊符號";
                break;

            default:
                break;
            }
            return(result);
        }
コード例 #6
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value == null)
            {
                return(null);
            }
            string           pass     = (string)value;
            PasswordStrength strength = PasswordStrengthUtils.CalculatePasswordStrength(pass);

            switch (strength)
            {
            case PasswordStrength.Invalid: return("Transparent");

            case PasswordStrength.VeryWeak: return("Red");

            case PasswordStrength.Weak: return("Orange");

            case PasswordStrength.Average: return("Yellow");

            case PasswordStrength.Strong: return("YellowGreen");

            case PasswordStrength.VeryStrong: return("Green");

            default: return("Gray");
            }
        }
コード例 #7
0
        protected void Page_Load(object sender, EventArgs e)
        {
            WebJsonResponse ret = null;

            try
            {
                String p = Tools.Tool.TrataInjection(Request["password"]);

                PasswordStrength pwdcheck = new PasswordStrength();
                pwdcheck.SetPassword(p);

                Color cor = pwdcheck.GetStrengthColor();

                ret = new WebJsonResponse("#passwordStrength", "<label>" + MessageResource.GetMessage("password_strength") + "</label><div class=\"form-group-content\"><span>" + pwdcheck.GetPasswordStrength() + "</span><div class=\"bar\" style=\"background: rgb(" + cor.R + "," + cor.G + "," + cor.B + ")\"></div></div>");
            }
            catch (Exception ex)
            {
                Tools.Tool.notifyException(ex);
                throw ex;
            }


            if (ret != null)
            {
                ReturnHolder.Controls.Add(new LiteralControl(ret.ToJSON()));
            }
        }
コード例 #8
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            PasswordStrength result = PasswordStrengthUtils.CalculatePasswordStrength((string)value);
            SolidColorBrush  rs     = null;

            switch (result)
            {
            case PasswordStrength.Invalid:
                rs = new SolidColorBrush(Colors.Red);
                break;

            case PasswordStrength.VeryWeak:
                rs = new SolidColorBrush(Colors.Orange);
                break;

            case PasswordStrength.Weak:
                rs = new SolidColorBrush(Colors.Yellow);
                break;

            case PasswordStrength.Average:
                rs = new SolidColorBrush(Colors.LightBlue);
                break;

            case PasswordStrength.Strong:
                rs = new SolidColorBrush(Colors.LightGreen);
                break;

            case PasswordStrength.VeryStrong:
                rs = new SolidColorBrush(Colors.Green);
                break;
            }
            return(rs);
        }
コード例 #9
0
        object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            PasswordStrength ret = PasswordStrengthUtils.CalculatePasswordStrength((string)value);

            switch (ret)
            {
            case PasswordStrength.VeryWeak:
                return(20);

            case PasswordStrength.Weak:
                return(40);

            case PasswordStrength.Average:
                return(60);

            case PasswordStrength.Strong:
                return(80);

            case PasswordStrength.VeryStrong:
                return(100);

            default:
                return(null);
            }
        }
コード例 #10
0
        public async Task <IActionResult> ResetPassword([FromBody] ResetPasswordReq input)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(new Response {
                    Success = false, ErrorMessage = "The details provided are not complete."
                }));
            }
            if (input.Password != input.ConfirmPassword)
            {
                return(BadRequest("Password and Confirmed password must be identical"));
            }
            if (!PasswordStrength.CheckPasswordComplexity(input.Password))
            {
                return(BadRequest("Password not strong enough."));
            }
            input.Token = System.Net.WebUtility.UrlDecode(input.Token);
            if (await _loginService.ResetPasswordAsync(input))
            {
                return(Ok(new Response {
                    Success = true
                }));
            }

            return(StatusCode(500, new Response {
                Success = false, ErrorMessage = "Something went wrong while trying to reset your password."
            }));
        }
コード例 #11
0
        object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            PasswordStrength ret = PasswordStrengthUtils.CalculatePasswordStrength((string)value);

            switch (ret)
            {
            case PasswordStrength.VeryWeak:
                return((SolidColorBrush)(new BrushConverter().ConvertFrom("#f54842")));

            case PasswordStrength.Weak:
                return((SolidColorBrush)(new BrushConverter().ConvertFrom("#f57542")));

            case PasswordStrength.Average:
                return((SolidColorBrush)(new BrushConverter().ConvertFrom("#f5da42")));

            case PasswordStrength.Strong:
                return((SolidColorBrush)(new BrushConverter().ConvertFrom("#7bf542")));

            case PasswordStrength.VeryStrong:
                return((SolidColorBrush)(new BrushConverter().ConvertFrom("#237529")));

            default:
                return(null);
            }
        }
コード例 #12
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            PasswordStrength passwordStrength = (PasswordStrength)value;

            switch (passwordStrength)
            {
            case PasswordStrength.Invalid:
                return(new SolidColorBrush(Color.FromArgb(0, 0, 0, 0)));

            case PasswordStrength.VeryWeak:

                return(new SolidColorBrush(Color.FromArgb(255, 255, 0, 0)));

            case PasswordStrength.Weak:

                return(new SolidColorBrush(Color.FromArgb(255, 245, 111, 66)));

            case PasswordStrength.Average:

                return(new SolidColorBrush(Color.FromArgb(255, 245, 200, 66)));

            case PasswordStrength.Strong:

                return(new SolidColorBrush(Color.FromArgb(255, 170, 245, 66)));

            case PasswordStrength.VeryStrong:

                return(new SolidColorBrush(Color.FromArgb(255, 0, 255, 0)));

            default:
                return(new SolidColorBrush(Color.FromArgb(0, 0, 0, 0)));
            }
        }
コード例 #13
0
        private static String GenerateRandomPassword(PasswordStrength passwordStrength)
        {
            StringBuilder sb = new StringBuilder();
            Random        smallLettersGenerator   = new Random();
            Random        capitalLettersGenerator = new Random();
            Random        specialCharsGenerator   = new Random();
            Random        choiceGenerator         = new Random();
            Random        passwordLength          = new Random();

            if (passwordStrength == PasswordStrength.Easy)
            {
                int length = passwordLength.Next(1, 7); // 1-6
                for (int i = 1; i <= length; ++i)
                {
                    sb.Append((char)smallLettersGenerator.Next(97, 123));  // 97-122
                }
            }

            else if (passwordStrength == PasswordStrength.Normal)
            {
                int    length           = passwordLength.Next(6, 10);
                Random numbersGenerator = new Random();
                for (int i = 1; i <= length; ++i)
                {
                    int choice = choiceGenerator.Next(0, 2); // 0-1
                    if (choice == 0)
                    {
                        sb.Append((char)capitalLettersGenerator.Next(65, 91));  // 65-90
                    }
                    if (choice == 1)
                    {
                        sb.Append((char)numbersGenerator.Next(48, 58));  // 48-57
                    }
                }
            }

            else if (passwordStrength == PasswordStrength.Hard)
            {
                int length = passwordLength.Next(10, 31); // 10-30
                for (int i = 1; i <= length; ++i)
                {
                    int choice = choiceGenerator.Next(0, 3); // 0-2
                    if (choice == 0)
                    {
                        sb.Append((char)capitalLettersGenerator.Next(65, 91));  // 65-90
                    }
                    if (choice == 1)
                    {
                        sb.Append((char)specialCharsGenerator.Next(33, 48));  // 33-47
                    }
                    if (choice == 2)
                    {
                        sb.Append((char)smallLettersGenerator.Next(97, 123));  // 97-122
                    }
                }
            }

            return(sb.ToString());
        }
コード例 #14
0
ファイル: PasswordStrengthControl.cs プロジェクト: kLeZ/Gecko
        public PasswordStrengthControl()
        {
            InitializeComponent();

            pwdStrength = new PasswordStrength();
            pwdStrength.SetPassword(" ");
            UpdateControl();
        }
コード例 #15
0
 static string generatePassword(PasswordStrength passwordStrength)
 {
     switch (passwordStrength)
     {
     case PasswordStrength.easy:
         return(getPassword(1, 6, true, false, false, false));
     }
     return(null);
 }
コード例 #16
0
        private bool ConformsLevel(PasswordStrength strength, int length, int distinctCount, CharOptions charOptions)
        {
            StrengthLevelData levelStt = _settings.StrengthLevels.FirstOrDefault(lvl => lvl.Strength == strength);

            if (levelStt != null && levelStt.Conforms(length, distinctCount, charOptions))
            {
                return(true);
            }
            return(false);
        }
コード例 #17
0
        public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
        {
            if (value == null)
            {
                return(null);
            }
            string           pass     = (string)value;
            PasswordStrength strength = PasswordStrengthUtils.CalculatePasswordStrength(pass);

            return(strength.ToString());
        }
        public async Task GetPasswordHint()
        {
            if (AccountPolicyAdapterModel == null)
            {
                AccountPolicyAdapterModel =
                    await AccountPolicyService.GetAsync();
            }
            PasswordStrength passwordStrength = (PasswordStrength)AccountPolicyAdapterModel.PasswordComplexity;

            PasswordHint = PasswordCheck.PasswordHint(passwordStrength);
        }
コード例 #19
0
        public void Test_WithSymbolsAndSpecSymbols_Paranoid()
        {
            // Arrange
            string psw = "Ent123@123©asfafwq©";

            // Act
            var result = PasswordStrength.CheckPasswordStrength(psw);

            // Assert
            Assert.AreEqual("Параноик", Convert.ToString(result));
        }
コード例 #20
0
        public void Test_WithSymbols_Hight()
        {
            // Arrange
            string psw = "Ent12?3123@asfafwq*";

            // Act
            var result = PasswordStrength.CheckPasswordStrength(psw);

            // Assert
            Assert.AreEqual("Отличный", Convert.ToString(result));
        }
コード例 #21
0
        public void Test_Ent123_Hight()
        {
            // Arrange
            string psw = "Ent123";

            // Act
            var result = PasswordStrength.CheckPasswordStrength(psw);

            // Assert
            Assert.AreEqual("Высокий", Convert.ToString(result));
        }
コード例 #22
0
        public void Test_Ent_Short()
        {
            // Arrange
            string psw = "Ent";

            // Act
            var result = PasswordStrength.CheckPasswordStrength(psw);

            // Assert
            Assert.AreEqual("Короткий", Convert.ToString(result));
        }
        public async Task GetPasswordHint()
        {
            if (systemEnvironmentAdapterModel == null)
            {
                systemEnvironmentAdapterModel =
                    await SystemEnvironmentService.GetAsync();
            }
            PasswordStrength passwordStrength = (PasswordStrength)systemEnvironmentAdapterModel.PasswordComplexity;

            PasswordHint = PasswordCheck.PasswordHint(passwordStrength);
        }
コード例 #24
0
        public static String psw(PasswordStrength p)
        {
            String        pass = "";
            StringBuilder sb   = new StringBuilder();
            Random        ran  = new Random();

            if (p == PasswordStrength.easy)
            {
                for (int i = 0; i < 6; i++)
                {
                    char c = Convert.ToChar(ran.Next(97, 123));
                    sb.Append(c);
                }
            }
            else if (p == PasswordStrength.normal)
            {
                for (int i = 0; i < Convert.ToInt32(ran.Next(6, 11)); i++)
                {
                    int  k = ran.Next(1, 3);
                    char c = Convert.ToChar(0);
                    if (k == 1)
                    {
                        c = Convert.ToChar(ran.Next(65, 91));
                    }
                    if (k == 2)
                    {
                        c = Convert.ToChar(ran.Next(48, 58));
                    }
                    sb.Append(c);
                }
            }
            else if (p == PasswordStrength.hard)
            {
                for (int i = 0; i < Convert.ToInt32(ran.Next(10, 16)); i++)
                {
                    int  k = ran.Next(1, 4);
                    char c = Convert.ToChar(0);
                    if (k == 1)
                    {
                        c = Convert.ToChar(ran.Next(65, 91));
                    }
                    if (k == 2)
                    {
                        c = Convert.ToChar(ran.Next(48, 58));
                    }
                    if (k == 3)
                    {
                        c = Convert.ToChar(ran.Next(97, 123));
                    }
                    sb.Append(c);
                }
            }
            return(sb.ToString());
        }
コード例 #25
0
        public void _25_WhenGivenAWeakPassword_SholudReturnWeak()
        {
            // Arrange
            string           pw       = "ABC";
            PasswordStrength expected = PasswordStrength.Weak;

            // Act
            PasswordStrength actual = Ex25.ValidatePassword(pw);

            // Assert
            Assert.AreEqual(expected, actual);
        }
コード例 #26
0
        private void passwordTxt_TextChanged(object sender, EventArgs e)
        {
            var passGen = new PasswordGenerator();

            strength = passGen.DetermineStrength(passwordTxt.Text.ToString());
            passwordStrengthLbl.Text = "Password Strength: " + strength.ToString(); //dynamically update the strength of the password

            if (retypedPassTxt.Text != "")
            {
                passwordsMatchTxt.Text = passwordTxt.Text == retypedPassTxt.Text ? "Passwords match" : "Passwords do not match";
            }
        }
コード例 #27
0
        public void _25_WhenGivenAVeryStrongPassword_SholudReturnVeryStrong()
        {
            // Arrange
            string           pw       = "ABCD1234&";
            PasswordStrength expected = PasswordStrength.VeryStrong;

            // Act
            PasswordStrength actual = Ex25.ValidatePassword(pw);

            // Assert
            Assert.AreEqual(expected, actual);
        }
コード例 #28
0
        public void passwordStrengthTest()
        {
            var p = new PasswordStrength();

            Assert.AreEqual(36.58319925463717, p.passwordStrength("abcc73?"));
            Assert.AreEqual(8.101319154423278, p.passwordStrength("aaa"));
            Assert.AreEqual(24.303957463269832, p.passwordStrength("aaaaaaaaa"));
            Assert.AreEqual(41.29049610144165, p.passwordStrength("abcdefghi"));
            Assert.AreEqual(72.2186525635304, p.passwordStrength("H0ley$Mol3y_"));
            Assert.AreEqual(97.21582985307933, p.passwordStrength("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"));
            Assert.AreEqual(146.8422482902136, p.passwordStrength("aaaaaaaaaaaaaaaaaaaaAaaaaaaaaaaaaaaa"));
        }
コード例 #29
0
 /// <summary>Given a <see cref="PasswordStrength"/>, returns a description of the strength level.</summary>
 public static string GetPasswordStrengthDescription(PasswordStrength strength)
 {
   switch(strength)
   {
     case PasswordStrength.Blank: return "extremely weak!";
     case PasswordStrength.VeryWeak: return "very weak!";
     case PasswordStrength.Weak: return "weak!";
     case PasswordStrength.Moderate: return "moderate";
     case PasswordStrength.Strong: return "strong";
     case PasswordStrength.VeryStrong: return "very strong";
     default: throw new NotImplementedException("Unknown password strength.");
   }
 }
コード例 #30
0
        public async Task <IActionResult> Register([FromBody] RegisterReq registerModel)
        {
            if (ModelState.IsValid)
            {
                //1. Check if user already exists
                if (!await _registerService.CheckIfUserExistsAsync(registerModel.UserName))
                {
                    //2. Check if password is strong enough
                    if (PasswordStrength.CheckPasswordComplexity(registerModel.PassWord) &&
                        registerModel.UserName.EndsWith("@consid.se"))
                    {
                        //3. Create new identity user
                        var user = await _registerService.RegisterNewUserAsync(registerModel);

                        if (user != null)
                        {
                            //Send confirmationlink to email address
                            //var token = await _registerService.GenerateEmailTokenAsync(user);
                            //var link = Url.Action(action: "ConfirmEmail", controller: "Register",
                            //  new { userId = user.Id, token = token }, Request.Scheme);
                            //await _registerService.SendEmailConfirmationAsync(user, link);

                            //Write confirmationlink to file in MyPictures
                            //var filePath = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures);
                            //System.IO.File.WriteAllText(Path.Combine(filePath, $"ConfirmEmail---{user.Id}.txt"), link);

                            return(Created("", new Response {
                                Success = true
                            }));
                        }
                    }

                    return(BadRequest(new Response
                    {
                        Success = false, ErrorMessage = "Password not strong enough or invalid email-address"
                    }));
                }

                return(BadRequest(new Response
                {
                    Success = false, ErrorMessage = "A user with the submitted email-address already exists"
                }));
            }

            return(BadRequest(new Response
            {
                Success = false, ErrorMessage = "Both email and password must be submitted"
            }));
        }
コード例 #31
0
		public PasswordStrengthValidator(ModelMetadata modelMetadata, ControllerContext controllerContext, PropertyInfo targetProperty, PasswordStrengthAttribute targetAttribute)
			: base(modelMetadata, controllerContext)
		{
			if (targetProperty == null) throw new ArgumentNullException("targetProperty");

			_targetProperty = targetProperty;
			MinStrength = targetAttribute.MinStrength;
			if (string.IsNullOrEmpty(targetAttribute.ErrorMessage))
			{
				ErrorMessage = _defaultMessage;
			}
			else
			{
				ErrorMessage = targetAttribute.ErrorMessage;
			}
		}
コード例 #32
0
        /// <summary>
        /// Generates a password dependent upon the strength setting passed.
        /// </summary>
        /// <param name="passwordStrength">The required password strength.</param>
        /// <returns></returns>
        public static string GeneratePassword(PasswordStrength passwordStrength)
        {
            int passwordLength;
            switch (passwordStrength)
            {
                case PasswordStrength.Low:
                    passwordLength = 4;
                    break;
                case PasswordStrength.Medium:
                    passwordLength = 6;
                    break;
                case PasswordStrength.Strong:
                    passwordLength = 8;
                    break;
                case PasswordStrength.SuperStrong:
                    passwordLength = 10;
                    break;
                default:
                    passwordLength = 10;
                    break;
            }


            var random = new Random();

            var chars = new char[passwordLength];
            for (var i = 0; i < passwordLength; i++)
            {
                chars[i] = PasswordChars[random.Next(0, PasswordChars.Length)];
            }
            var password = new string(chars);

            if (GetPasswordStrength(password) == (int) passwordStrength)
                return password;

            return GeneratePassword(passwordStrength);
        }
コード例 #33
0
		public PasswordStrengthAttribute(PasswordStrength minStrength)
		{
			MinStrength = minStrength;
		}
コード例 #34
0
ファイル: PasswordStrengthControl.cs プロジェクト: kLeZ/Gecko
        public PasswordStrengthControl()
        {
            InitializeComponent();

            pwdStrength = new PasswordStrength();
            pwdStrength.SetPassword(" ");
            UpdateControl();
        }
コード例 #35
0
 private bool ConformsLevel(PasswordStrength strength, int length, int distinctCount, CharOptions charOptions)
 {
     StrengthLevelData levelStt = _settings.StrengthLevels.FirstOrDefault(lvl => lvl.Strength == strength);
       if (levelStt != null &&  levelStt.Conforms(length, distinctCount, charOptions))
     return true;
       return false;
 }