Форум программистов, компьютерный форум, киберфорум
Наши страницы
C# Windows Forms
Войти
Регистрация
Восстановить пароль
 
Serega@93-93
1 / 1 / 0
Регистрация: 13.02.2012
Сообщений: 119
1

Генерация пароля

14.11.2014, 23:08. Просмотров 483. Ответов 3
Метки нет (Все метки)

Помогите пожалуйста, разобраться с задачкой:
Дан пароль из шести символов, а именно, это могут быть английские буквы верхнего и нижнего регистров, цифры и символы. Нужно создать алгоритм декодирования этого пароля, то есть мне нужно перебрать все варианты... Как это возможно реализовать?

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2014, 23:08
Ответы с готовыми решениями:

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

Генерация лабиринта
Нужно написать программу на C# в формах, которая будет генерировать лабиринт....

Генерация синусоиды
Вообщем возникла проблема, помогите решить. Идея Генерировать синусоиду с...

Генерация размещений
Подскажите пожалуйста, как в коде можно записать генерацию размещений? Знаю,...

Генерация строки
Доброго времени суток! Мне необходимо сгенерировать массив строк из данного...

3
Denno
93 / 95 / 30
Регистрация: 21.10.2012
Сообщений: 319
Завершенные тесты: 3
14.11.2014, 23:56 2
Это шутка что ли ? ))) Рандомам начинай перебирать возможные комбинации от малого к большему.
1
Metall_Version
2119 / 1256 / 516
Регистрация: 04.03.2014
Сообщений: 4,092
Завершенные тесты: 2
15.11.2014, 00:38 3
Цитата Сообщение от Serega@93-93 Посмотреть сообщение
Как это возможно реализовать?
ответ -
Цитата Сообщение от Serega@93-93 Посмотреть сообщение
нужно перебрать все варианты
только это декодированием назвать нельзя
1
Serega@93-93
1 / 1 / 0
Регистрация: 13.02.2012
Сообщений: 119
15.11.2014, 15:57  [ТС] 4
Спасибо тем, кто откликнулся ) Есть примерный вариант реализации на C++, но я не знаю как это сделать на C#. Пожалуйста, помогите разобраться
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
#include "stdafx.h"
#include <stdio.h>
#include <iostream>
#include<clocale>
#include<fstream>
#include<cstring>
#include <ctime>
using std::cout;
using std::cin;
using std::endl;
 
int main()
{
    setlocale(LC_ALL,"RUS");
    int cnt=0,cnt2=0,cnt3=0,cnt4=0;
    int iMax=93;
    bool bPassword=1;
    char password[6];
    char cBuffer[5]="";
    char cSymbols[]="!#$%&()*+-.:;<=>?[]^_{}~0123456789qwrtpsdfghjklzxcvbnmeyuioaABCDEFJKOPQRSTMNYXVWZ";
    char cClear[]="";
    cout<<"Введите пароль:";
    cin>>password;
    cout<<"Брать ли в перебор символы?(1 - да , 0 - нет):";
    bool bSymbols;
    cin>>bSymbols;
    cout<<"Брать ли в перебор цифры?(1 - да , 0 - нет):";
    bool bNumbers;
    cin>>bNumbers;
    cout<<"Брать ли в перебор буквы нижнего регистра?(1 - да , 0 - нет):";
    bool bDownRegister;
    cin>>bDownRegister;
    cout<<"Брать ли в перебор буквы верхнего регистра?(1 - да , 0 - нет):";
    bool bUpRegister;
    cin>>bUpRegister;
    unsigned int start_time =  clock(); // начальное время
    while(bPassword)
        
    {
                if(!bSymbols){if(cnt>=0&&cnt<31){cnt++;continue;}}
        if(!bNumbers){if(cnt>=31&&cnt<41){cnt++;continue;}}
        if(!bDownRegister){if(cnt>=31&&cnt<67){cnt++;continue;}}
        if(!bUpRegister){if(cnt>=67&&cnt<iMax){cnt++;continue;}}
        cBuffer[0]=cSymbols[cnt];
        bPassword=strcmp(password,cBuffer);
        cout<<"Текущая комбинация:"<<cBuffer<<endl;
        if(bPassword){strcpy(cBuffer,cClear);}
        if(cnt==iMax)
        {
            cnt=0;
            while(bPassword)
            {
                if(!bSymbols){if(cnt>=0&&cnt<31){cnt++;continue;}}
                if(!bNumbers){if(cnt>=31&&cnt<41){cnt++;continue;}}
                if(!bDownRegister){if(cnt>=31&&cnt<67){cnt++;continue;}}
                if(!bUpRegister){if(cnt>=67&&cnt<iMax){cnt++;continue;}}            
                if(!bSymbols){if(cnt2>=0&&cnt2<31){cnt2++;continue;}}
                if(!bNumbers){if(cnt2>=31&&cnt2<41){cnt2++;continue;}}
                if(!bDownRegister){if(cnt2>=31&&cnt2<67){cnt2++;continue;}}
                if(!bUpRegister){if(cnt2>=67&&cnt2<iMax){cnt2++;continue;}}
                cBuffer[0]=cSymbols[cnt2];
                cBuffer[1]=cSymbols[cnt];
                bPassword=strcmp(password,cBuffer);
                cout<<"Текущая комбинация:"<<cBuffer<<endl;
                if(bPassword){strcpy(cBuffer,cClear);}
                if(cnt2==iMax&&cnt==iMax)
                {
                    cnt2=0;
                    cnt=0;
                    while(bPassword)
                    {
                        if(!bSymbols){if(cnt>=0&&cnt<31){cnt++;continue;}}
                        if(!bNumbers){if(cnt>=31&&cnt<41){cnt++;continue;}}
                        if(!bDownRegister){if(cnt>=31&&cnt<67){cnt++;continue;}}
                        if(!bUpRegister){if(cnt>=67&&cnt<iMax){cnt++;continue;}}
                        if(!bSymbols){if(cnt2>=0&&cnt2<31){cnt2++;continue;}}
                        if(!bNumbers){if(cnt2>=31&&cnt2<41){cnt2++;continue;}}
                        if(!bDownRegister){if(cnt2>=31&&cnt2<67){cnt2++;continue;}}
                        if(!bUpRegister){if(cnt2>=67&&cnt2<iMax){cnt2++;continue;}}
                        if(!bSymbols){if(cnt3>=0&&cnt3<31){cnt3++;continue;}}
                        if(!bNumbers){if(cnt3>=31&&cnt3<41){cnt3++;continue;}}
                        if(!bDownRegister){if(cnt3>=31&&cnt3<67){cnt3++;continue;}}
                        if(!bUpRegister){if(cnt3>=67&&cnt3<iMax){cnt3++;continue;}}
                        cBuffer[0]=cSymbols[cnt3];
                        cBuffer[1]=cSymbols[cnt2];
                        cBuffer[2]=cSymbols[cnt];
                        bPassword=strcmp(password,cBuffer);
                        cout<<"Текущая комбинация:"<<cBuffer<<endl;
                        if(bPassword){strcpy(cBuffer,cClear);}
                        if(cnt3>=iMax&&cnt2>=iMax&&cnt>=iMax)
                        {
                            cnt3=0;
                            cnt2=0;
                            cnt=0;
                            while(bPassword)
                            {
                                if(!bSymbols){if(cnt>=0&&cnt<31){cnt++;continue;}}
                                if(!bNumbers){if(cnt>=31&&cnt<41){cnt++;continue;}}
                                if(!bDownRegister){if(cnt>=31&&cnt<67){cnt++;continue;}}
                                if(!bUpRegister){if(cnt>=67&&cnt<iMax){cnt++;continue;}}
                                if(!bSymbols){if(cnt2>=0&&cnt2<31){cnt2++;continue;}}
                                if(!bNumbers){if(cnt2>=31&&cnt2<41){cnt2++;continue;}}
                                if(!bDownRegister){if(cnt2>=31&&cnt2<67){cnt2++;continue;}}
                                if(!bUpRegister){if(cnt2>=67&&cnt2<iMax){cnt2++;continue;}}
                                if(!bSymbols){if(cnt3>=0&&cnt3<31){cnt3++;continue;}}
                                if(!bNumbers){if(cnt3>=31&&cnt3<41){cnt3++;continue;}}
                                if(!bDownRegister){if(cnt3>=31&&cnt3<67){cnt3++;continue;}}
                                if(!bUpRegister){if(cnt3>=67&&cnt3<iMax){cnt3++;continue;}}
                                if(!bSymbols){if(cnt4>=0&&cnt4<31){cnt4++;continue;}}
                                if(!bNumbers){if(cnt4>=31&&cnt4<41){cnt4++;continue;}}
                                if(!bDownRegister){if(cnt4>=31&&cnt4<67){cnt4++;continue;}}
                                if(!bUpRegister){if(cnt4>=67&&cnt4<iMax){cnt4++;continue;}}
                                cBuffer[0]=cSymbols[cnt4];
                                cBuffer[1]=cSymbols[cnt3];
                                cBuffer[2]=cSymbols[cnt2];
                                cBuffer[3]=cSymbols[cnt];
                                bPassword=strcmp(password,cBuffer);
                                cout<<"Текущая комбинация:"<<cBuffer<<endl;
                                if(bPassword){strcpy(cBuffer,cClear);}
                                if(cnt==iMax){cnt=-1;cnt2++;}
                                if(cnt2==iMax){cnt=-1;cnt2=0;cnt3++;}
                                if(cnt3==iMax){cnt=-1;cnt2=0;cnt3=0;cnt4++;}
                                cnt++;
                            }
                        }
                        if(cnt2==iMax&&cnt==iMax){cnt=-1;cnt2=0;cnt3++;}
                        if(cnt==iMax){cnt=-1;cnt2++;}
                        cnt++;
                    }
                }
                if(cnt==iMax){cnt=-1;cnt2++;}
                cnt++;
            }
        }
        cnt++;
        
    }
    unsigned int end_time = clock(); // конечное время
    unsigned int search_time = end_time - start_time; // искомое время
    
    cout<<"Ваш пароль:"<<cBuffer<<endl;
    cout << "Время = " << search_time/1000.0 << endl; // время работы программы  
    cin>>bPassword;
 
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.11.2014, 15:57

Генерация текста
Добрый вечер, разработчики :) Есть вопрос касательно WinForms. Появилась...

Генерация объектов
Здравствуйте. Я пишу программу, которая работает с сайтом. Я отсылаю на сервер...

Генерация звука!!!
Привет, Народ! У меня такая проблема, а точнее абсолютная необходимость:...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru