public static bool VerifyPasswordComplexity(string password, int minimumLength = -1, int maximumLength = -1, int minimumLowerAlphaCount = -1, int minimumUpperAlphaCount = -1, int minimumNumericCount = -1, int minimumNonAlphaNumericCount = -1, int maximumPatternMatchLength = -1, string pattern = null)
        {
            if (string.IsNullOrWhiteSpace(password))
            {
                throw new ArgumentNullException("password");
            }

            return(RandomStringGenerator.ValidateRandomString(password, minimumLength, maximumLength, minimumLowerAlphaCount, minimumUpperAlphaCount, minimumNumericCount, minimumNonAlphaNumericCount, maximumPatternMatchLength, pattern));
        }
        private static void InitializeObscurity()
        {
            encryptKeyArray = new string[_randomizationLevel];
            for (int i = 0; i < encryptKeyArray.Length; i++)
            {
                bool validated = false;
                while (!validated)
                {
                    encryptKeyArray[i] = RandomStringGenerator.GenerateRandomString(24, 24, 2, 2, 2, 2);
                    validated          = RandomStringGenerator.ValidateRandomString(encryptKeyArray[i], 24, 24, 2, 2, 2, 2);
                }
            }

            initVectorArray = new string[_randomizationLevel];
            for (int i = 0; i < initVectorArray.Length; i++)
            {
                bool validated = false;
                while (!validated)
                {
                    initVectorArray[i] = RandomStringGenerator.GenerateRandomString(16, 16, 2, 2, 2, 2);
                    validated          = RandomStringGenerator.ValidateRandomString(initVectorArray[i], 16, 16, 2, 2, 2, 2);
                }
            }
        }