0 / 0 / 0
Регистрация: 18.11.2011
Сообщений: 53
1

Простая генерация сложных паролей

17.01.2012, 15:46. Показов 3362. Ответов 11
Метки нет (Все метки)

Помогите скачал c++ bulder создал интерфейс.
Теперь нужен сам код и как он работает...
Напишите пожалуйста
Цель программы :
При нажатии на button выдавать в memo1 пароль.
То есть простая генерация сложных паролей.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2012, 15:46
Ответы с готовыми решениями:

Авторизиция пользователя, генерация случайных паролей с заменой их в базе
Доброе время суток, пожалуйста прошу помощи в написании программы по иформационной безопасности....

Генерация сложных серий импульсов
В статье(http://iosyitistromyss.ru/fotodachik-chast-2-modulyaciya.html) описывается TSOP17. Момент...

Генерация паролей
Возникла проблема с рандомной реализацией генерации паролей. По идее символы при генерации должны...

Генерация паролей
Требуется по запросу выдавать N различных паролей длиной M символов, состоящих из строчных и...

11
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
17.01.2012, 16:00 2
C++
1
    randomize();
при запуске программы
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
UnicodeString GetPass(size_t n) {
    static char randommmm[] = {
    'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'a', 's', 'd', 'f', 'g',
    'h', 'j', 'k', 'l', 'z', 'x', 'c', 'v', 'b', 'n', 'm', '1', '2', '3', '4',
    '5', '6', '7', '8', '9', '0', 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O',
    'P', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'Z', 'X', 'C', 'V', 'B',
    'N', 'M'};
 
    UnicodeString result;
 
    for (size_t i = 0; i < n; ++i)
        result += randommmm[random(sizeof(randommmm))];
 
    return result;
}
в randommmm можешь дописать символы которые тебе нужны
ну и вызывай по клику батона
C++
1
Memo1->Lines->Add(GetPass(n));
где n это количество символов в пароле
0
2 / 2 / 4
Регистрация: 18.03.2011
Сообщений: 48
17.01.2012, 16:05 3
Вроде как-то так. Есть еще и другие способы,более целесообразные.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
void __fastcall TForm1::Button1Click(TObject *Sender)
{     int a;
    srand(time(0));
        a=StrToInt(Edit1->Text); //количество символов в пароле
char sym[]="0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
                char *password=new char[a];
    password[0]=(char)(65+rand()%25);
 
    for(int i=1;i<a;i++)
        password[i]=sym[rand()%61];
    password[a]='\0';
 
Memo1->Lines->Add(password);//запись в мемо1
}
0
0 / 0 / 0
Регистрация: 18.11.2011
Сообщений: 53
17.01.2012, 19:47  [ТС] 4
Ещё будут варианты,не один не удалось реализовать =( желательно с описанием =(
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
17.01.2012, 21:02 5
Что именно не удалось? Я тебе дал готовый рабочий вариант.
0
0 / 0 / 0
Регистрация: 18.11.2011
Сообщений: 53
17.01.2012, 21:46  [ТС] 6
Куда коды впихивать.
Или скинь готовый проект.
0
wtf!?
750 / 281 / 25
Регистрация: 21.05.2010
Сообщений: 732
18.01.2012, 00:27 7
Проект во вложении
И я бы тебе книгу какую то посоветовал почитать, чтобы понимать
Куда коды впихивать.
Вложения
Тип файла: rar pass.rar (4.4 Кб, 108 просмотров)
1
LK
Заблокирован
18.01.2012, 00:35 8
Aleksimian, хотя бы сюда:
Библиотека VCL и сопутствующие материалы
Для начала.
0
9 / 9 / 0
Регистрация: 06.08.2010
Сообщений: 67
20.01.2012, 14:25 9
Можно так сделать чтоб не писать в Edit длину пароля
C++
1
2
3
4
5
6
7
8
9
int a;
String password;
srand(time(0));
a=rand()%5+10;
char sym[]="0123456789qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
 
for(int i=1;i<a;i++)
  password=password+sym[rand()%61];
Memo1->Lines->Insert(0,password);
Копируешь код, два раза кликаешь по кнопке на которой он должен работать и вставляешь.

Только тут есть небольшой косяк, когда быстро на кнопку нажимаешь он не успевает сгенерировать новый пароль и выводит старый =)
0
0 / 0 / 0
Регистрация: 18.11.2011
Сообщений: 53
21.01.2012, 06:36  [ТС] 10
Tsukyne
Всё ок работает,только там пишется несколько раз один и тот же пароль
srand(time(0)); как исправить,чтобы мгновенно генерировал другой
0
9 / 9 / 0
Регистрация: 06.08.2010
Сообщений: 67
21.01.2012, 11:12 11
не знаю как это можно исправить =)
можешь поставить в начало кода
C++
1
Memo1->Clear();
Тогда он будет выводить только в 1 строке и не будет видно повторений =)
0
872 / 448 / 35
Регистрация: 25.10.2011
Сообщений: 910
21.01.2012, 13:53 12
C++
1
randomize();
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.01.2012, 13:53
Помогаю со студенческими работами здесь

Генерация паролей
Требуется по запросу выдавать N различных паролей длиной M символов, состоящих из строчных...

Генерация паролей
Помогите, пожалуйста, уважаемый программисты!! сочно нужна простенькая задачка (текст) по...

Генерация паролей
Здравствуйте, есть код: &lt;form method=&quot;post&quot;&gt; &lt;input type=&quot;text&quot; name=&quot;number&quot;...

Составление (генерация) сложных SQL запросов к Access
День добрый, уважаемые участники форума! Требуется консультация по вопросу как правильно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru