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

Как составить программу, которая будет запрашивать пароль?

05.03.2013, 00:19. Показов 12264. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
как составить программу которая будет запрашивать пароль
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.03.2013, 00:19
Ответы с готовыми решениями:

Запрашивать пароль до тех пор, пока правильный пароль не будет введен
Уважаемые, перепробовал кучу методов. Кто нибудь приведите пример кода программы которая...

Запрашивать пароль до тех пор, пока он не будет правильно введен
Составить программу, которая запрашивает пароль (например, четырехзначное число) до тех пор, пока...

Составить программу, которая будет запрашивать числа
4. Составить программу, которая будет запрашивать числа до тех пор, пока не будет введено первое...

Составить программу, которая запрашивает пароль (трехзначное число + 2 символа) до тех пор, пока он не будет
Составить программу, которая запрашивает пароль (трехзначное число + 2 символа) до тех пор, пока он...

16
584 / 387 / 216
Регистрация: 20.01.2013
Сообщений: 1,169
05.03.2013, 00:28 2
C++
1
2
3
4
5
#include <string>
 
string pass;
cout<<"Введите пароль: ";
cin>>pass;
2
12 / 12 / 2
Регистрация: 23.01.2013
Сообщений: 143
05.03.2013, 00:34 3
sergei2333, а проверять пароль вам не нужно?
0
680 / 190 / 60
Регистрация: 04.05.2012
Сообщений: 879
Записей в блоге: 1
05.03.2013, 14:48 4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <string>
 
string pass,key="key";
cout<<"Введите пароль: ";
cin>>pass;
int vvod=3
for(int i=0;i<=3;i++)
{
if(pass==key)
{
cout<<"Все правильно ";
}
else
{
cout<<"Ничего не правильно ";
}
}
cout<<"Вы исчерпали количество попыток ввода ";
Можно еще сделать ограничение на количество ввода, я так сделала но гуру С++ подправят если что не так)
Только вот как бы еще сделать чтобы определенное время нельзя было вводить)Это надо думать)
1
0 / 0 / 0
Регистрация: 29.08.2013
Сообщений: 20
29.08.2013, 19:23 5
это обычная консольная прога на 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
#include <iostream>
 #include <string>
 
 using namespace std;
 void get_pass ()
 {
 string pass_main = "12345";
 string user_pass;
 cout << "Введите пороль" << endl;
 getline (cin, user_pass);
 if (user_pass == pass_main) {
 cout << "Верный пороль" << endl;
 }
 else{
 cout << "Неверный пороль" << endl;
 }
 }
 int main ()
 {
 setlocale (LC_ALL, "Russian");
 get_pass ();
 system ("pause");
 return 0;
 }
0
500 / 474 / 63
Регистрация: 26.01.2011
Сообщений: 2,033
29.08.2013, 23:37 6
nikitsim, Юля_программист, в любом HEX редакторе ваши пароли откроются за 2 секунды.
0
1405 / 647 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
29.08.2013, 23:54 7
Игорь с++, где был вопрос в этой теме про защищенность пароля?
0
500 / 474 / 63
Регистрация: 26.01.2011
Сообщений: 2,033
29.08.2013, 23:58 8
Лучший ответ Сообщение было отмечено как решение

Решение

Цитата Сообщение от Dani Посмотреть сообщение
Игорь с++, где был вопрос в этой теме про защищенность пароля?
А где было сказанно сделать через ж...пу ? И с какой стати я не могу предупредить об этом ТС - а , и других людей дающие такие советы ?
3
1405 / 647 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
29.08.2013, 23:59 9
Игорь с++, ТС ни к кому не придрался, а поставил спасибо где нужно. Problems?

Не по теме:

Может еще криптографические алгоритмы сюда прикрутить?

0
500 / 474 / 63
Регистрация: 26.01.2011
Сообщений: 2,033
30.08.2013, 00:06 10
Цитата Сообщение от Dani Посмотреть сообщение
ТС ни к кому не придрался, а поставил спасибо где нужно. Problems?
Yes , off course . Не думаешь , что он просто об этом не знает .
1
1405 / 647 / 135
Регистрация: 11.08.2011
Сообщений: 2,299
Записей в блоге: 2
30.08.2013, 00:08 11
Цитата Сообщение от Игорь с++ Посмотреть сообщение
Yes , off course . Не думаешь , что он просто об этом не знает .
Вот и я к тому клоню, что
1) Тема висит с марта.
2) Если ТС не может написать такую программу, то вряд ли его интересуют методы защиты информации. Или это просто не нужно (программа только для образовательных целей)
0
500 / 474 / 63
Регистрация: 26.01.2011
Сообщений: 2,033
30.08.2013, 00:17 12
Цитата Сообщение от Dani Посмотреть сообщение
1) Тема висит с марта.
Пардон не увидел
Цитата Сообщение от Dani Посмотреть сообщение
2) Если ТС не может написать такую программу, то вряд ли его интересуют методы защиты информации. Или это просто не нужно (программа только для образовательных целей)
Впринципе согласен , но предупредить я думаю будет не лишним .
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
30.08.2013, 01:33 13
Цитата Сообщение от Юля_программист Посмотреть сообщение
Только вот как бы еще сделать чтобы определенное время нельзя было вводить)
Цитата Сообщение от Игорь с++ Посмотреть сообщение
в любом HEX редакторе ваши пароли откроются за 2 секунды.
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <fstream>
#include <string>
#include <ctime>
using namespace std;
 
const int T = 60;
const string key = "jdx";
 
bool check_pass(string &pass, const string &key)
{
    int size_key = key.size();
    int size_pass = pass.size();
    
    for (int i = 0; i < size_key && i < size_pass; ++i)
        if (pass[i] != (key[i] ^ 1)) return false;
    
    return true;
}
 
 
int main()
{
    setlocale(0, "");
    
    fstream ftime("time.txt");
    if (ftime.is_open())
    {
        time_t t1;
        ftime >> t1;
        if (ftime)
        {
            ftime.close();
        
            time_t t2 = time(0);
            time_t t3 = (t2 - t1);
            if ( t3 < T)
            {
                    cout << "Попробуйте через " << T - t3 <<  " секунд\n";
                    system("pause");
                    return 0;
            }
            else
            {
                ftime.open("time.txt", ios::out);
                ftime.close();
            }
        }
        else
        {
            ftime.clear();
            ftime.close();
        }
    }
 
    string pass;
    int i;
    for(i = 0; i < 3; i++)
    {
        cout << "Введите пароль: ";
        cin >> pass;
        if (check_pass(pass, key))
        {
            cout << "Все правильно!" << endl;
            break;
        }
        else
            cout << "Ничего не правильно!" << endl;
        
    }
    if (i == 3)
    {
            cout << "Вы исчерпали количество попыток ввода!\nПопробуйте через " << T << " секунд" << endl;
            
            ftime.open("time.txt", ios::out);
            time_t t = time(0);
            ftime << t;
            ftime.close();
    }
    
    system("pause");
    return 0;
}
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
30.08.2013, 14:55 14
Цитата Сообщение от alsav22 Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
const string key = "jdx";
bool check_pass(string &pass, const string &key)
{
 int size_key = key.size();
int size_pass = pass.size();
for (int i = 0; i < size_key && i < size_pass; ++i)
if (pass[i] != (key[i] ^ 1)) return false;
return true;
}
Цитата Сообщение от alsav22 Посмотреть сообщение
Сообщение от Игорь с++
в любом HEX редакторе ваши пароли откроются за 2 секунды.
Теперь в любом дебаггере можно выследить пароль, а лучше сразу при вызове check_pass :

Assembler
1
2
mov ax,1
ret
0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
30.08.2013, 16:53 15
Цитата Сообщение от Raali Посмотреть сообщение
Теперь в любом дебаггере можно выследить пароль
И...? Предложения есть?
0
Raali
30.08.2013, 18:13
  #16

Не по теме:

Цитата Сообщение от alsav22 Посмотреть сообщение
И...? Предложения есть?
Остается только посылать данные на сервер, и там уже сверять, на самом деле про дебагер это я так. Просто раз пошла такая пьянка про HEX едитор, когда автору то всего лишь надо создать функционал пароля

0
5498 / 4893 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
30.08.2013, 21:26 17
Цитата Сообщение от Raali Посмотреть сообщение
Теперь в любом дебаггере можно выследить пароль,
Что значит выследить? Будет виден или можно получить?
Если так, то будет виден?
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <fstream>
#include <string>
#include <ctime>
using namespace std;
 
const int T = 60;
const string key = "jdx";
 
void coder(string &pass)
{
    int size_pass = pass.size();
    for (int i = 0; i < size_pass; ++i)
        pass[i] = pass[i] ^ 1;
}
 
bool check_pass(string &pass, const string &key)
{
    coder(pass);
    if (pass == key) return true;
    else return false;
}
 
 
int main()
{
    setlocale(0, "");
    
    fstream ftime("time.txt");
    if (ftime.is_open())
    {
        time_t t1;
        ftime >> t1;
        if (ftime)
        {
            ftime.close();
        
            time_t t2 = time(0);
            time_t t3 = (t2 - t1);
            if ( t3 < T)
            {
                    cout << "Попробуйте через " << T - t3 <<  " секунд\n";
                    system("pause");
                    return 0;
            }
            else
            {
                ftime.open("time.txt", ios::out);
                ftime.close();
            }
        }
        else
        {
            ftime.clear();
            ftime.close();
        }
    }
 
    string pass;
    int i;
    for(i = 0; i < 3; i++)
    {
        cout << "Введите пароль: ";
        cin >> pass;
        if (check_pass(pass, key))
        {
            cout << "Все правильно!" << endl;
            break;
        }
        else
            cout << "Ничего не правильно!" << endl;
        
    }
    if (i == 3)
    {
            cout << "Вы исчерпали количество попыток ввода!\nПопробуйте через " << T << " секунд" << endl;
            
            ftime.open("time.txt", ios::out);
            time_t t = time(0);
            ftime << t;
            ftime.close();
    }
    
    system("pause");
    return 0;
}
0
30.08.2013, 21:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.08.2013, 21:26
Помогаю со студенческими работами здесь

Составить программу, которая запрашивает пароль (например, четырехзначное число) до тех пор, пока он не будет
QBasic. Сам, что-то, не вдупляю... Как сделать :|

Составить программу, которая позволяет вводить пароль до тех пор, пока не будет введен верный ответ
Составить программу, которая позволяет вводить пароль до тех пор, пока не будет введен верный...

Запрашивать пароль, пока он не будет введен
Решит параметром Цикл-с параметром For. Составте программу, которая запрашиваеть пароль (например...

Написать программу которая будет требовать пароль до тех пор пока он не будет введен верно
Написать программу которая будет требовать пароль до тех пор пока он не будет введен верно.


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

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

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