Создание случайного пароля по правилам

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Как можно сделать примерно такой пароль "4 большие буквы"+"некий символ из набора =-_"+"4 маленькие буквы"+"некий символ из набора =-_"+"2 цифры" и положить его в переменную.

Желательно 1-м блоком. Как сделать 5-ю блоками я вкурсе, но чтото мне кажется, чтоэто слишком длинное решение

Просто не нашел как и где можно использовать макрос рандома. Задачка вроде-бы не сложная, но на деле оказалась проблемой
 

Lexicon

Client
Регистрация
27.12.2012
Сообщения
1 775
Благодарностей
901
Баллы
113

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
логин тоже нужно:-)
 
Последнее редактирование:

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 340
Благодарностей
9 088
Баллы
113
можно в экшене Random генерить Логин http://clip2net.com/s/ihkjym
и использовать его как пароль..
 

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Я бы так и сделал. логином это назвать или паролем - это без разницы. Вопрос заключался именно в структуре данной строки т.е. чтобы обязательно были большие буковки, маленькие, циферки и символы. Я не доганяю как это сделать:-)
 

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Заведомо ложный пример, но хотелось бы как-то так
[RndText4|A-Z]+[RndText1|("-","_","=")]+[RndText4|a-z]+[RndText1|("-","_","=")]+[RndNum2|00-99]

проще говоря склеить в кучу 4 разных действия рандом
http://joxi.ru/IfaVU_3JTJBCYynl0ug
 
Последнее редактирование:

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 340
Благодарностей
9 088
Баллы
113
знатоки C# щас подскажут как это сделать всего одним экшеном, а я бы сделал вот так, не мудрствуя лукаво:
upload_2014-6-10_23-22-3.png

:-)
 
Последнее редактирование модератором:
  • Спасибо
Реакции: rostonix

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
знатоки C# щас подскажут как это сделать всего одним экшеном, а я бы сделал вот так, не мудрствуя лукаво: http://clip2net.com/s/ihkRt1
:-)
Да вот я кроме этого варианта тоже никакого не знаю:-) но какой-то он длинный выходит. Может как-то обработкой текста можно сделать...
 

Sergodjan

Administrator
Команда форума
Регистрация
05.09.2012
Сообщения
20 340
Благодарностей
9 088
Баллы
113
Да вот я кроме этого варианта тоже никакого не знаю:-) но какой-то он длинный выходит. Может как-то обработкой текста можно сделать...
C# иил JS кодом можно наверняка как то..
или старыми трешечными макросами зенки (может что то было такое, я не в курсе, с 3-ей версией никогда не работал)
 

Radzhab

Client
Регистрация
23.05.2014
Сообщения
1 500
Благодарностей
1 268
Баллы
113
Код:
List<string> list = new List<string>{"=","-","_","\""};
            const string Chars = "ABCDEFGHJKLMNPQRSTUVWXYZ";
          
            string endLine = "";
            string Symbols = "=-_\"";
            string bigChar = ""; //Большие буквы
            string litChar = ""; //Маленькие буквы
            int twoDig;
            while (bigChar.Length < 4)
            {
                Random r = new Random();
                bigChar += Chars[r.Next(0, Chars.Length)];
            }
          
            // тут берется большая строка, которую мы уменьшаем и реверсируем, т.е. поворачиваем задом наперед
            char[] ar = bigChar.ToCharArray();
            Array.Reverse(ar);
            litChar = new String(ar).ToLower();
            Random random = new Random();
            twoDig = random.Next(10, 99);
            endLine = string.Concat(bigChar, list[random.Next(list.Count)], litChar, list[random.Next(list.Count)], twoDig);
 
  • Спасибо
Реакции: kyvour

kyvour

Активный пользователь
Регистрация
17.05.2014
Сообщения
186
Благодарностей
36
Баллы
28
Спасибо. Воспользовался вашим примером кода, немного только подправил под свои нужды:-)
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)