Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 48, средняя оценка - 4.75
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
#1

Юный хакер, взлом пароля. - C++

07.12.2009, 15:00. Просмотров 6782. Ответов 8
Метки нет (Все метки)

Юный хакер Костя Яблочкин хочет узнать пароль системного администратора. Он
знает, что пароль состоит из 8 символов, первые 5 из которых — строчные буквы
латинского алфавита, а последние 3 — цифры.
а) Сколько существует таких паролей?
б) Напишите программу, которая выводит список всех таких паролей.
в) Если все эти пароли записать в файл через пробел, какой будет размер этого
файла?
г) Запишите в текстовый файл первые 10000 таких паролей в
лексикографическом (алфавитном) порядке.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2009, 15:00     Юный хакер, взлом пароля.
Посмотрите здесь:

C++ Генератор пароля
C++ Генератор пароля
C++ ВзЛОм ЯщиКА
Функция пароля C++
взлом паролей C++
C++ Взлом простейшего кода
C++ Хеширование пароля
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
08.12.2009, 10:32     Юный хакер, взлом пароля. #2
Цитата Сообщение от Alinochka Посмотреть сообщение
Юный хакер Костя Яблочкин хочет узнать пароль системного администратора. Он
знает, что пароль состоит из 8 символов, первые 5 из которых — строчные буквы
латинского алфавита, а последние 3 — цифры.
а) Сколько существует таких паролей?
б) Напишите программу, которая выводит список всех таких паролей.
в) Если все эти пароли записать в файл через пробел, какой будет размер этого
файла?
г) Запишите в текстовый файл первые 10000 таких паролей в
лексикографическом (алфавитном) порядке.

Если мои подсчеты верны то:
а) 11 881 376 000
в) 22 Гига или 23 762 751 999 байт - ничего такой файлик просто цифр..
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.12.2009, 11:11     Юный хакер, взлом пароля. #3
а, ну да, 1000 * 26^5
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 11:13  [ТС]     Юный хакер, взлом пароля. #4
Это здорово конечно, но вы не могли бы мне помоч с кодом этой программы?
accept
4838 / 3237 / 165
Регистрация: 10.12.2008
Сообщений: 10,682
08.12.2009, 11:18     Юный хакер, взлом пароля. #5
одна буква и одна цифра дают 26 * 10 = 260
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
08.12.2009, 11:23     Юный хакер, взлом пароля. #6
вот прога которая их выводит:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<iostream>
 
using namespace std;
 
int main()
{
    for(char a = 'a';a<('z'+1); a++)
    for(char b = 'a';b<('z'+1); b++)
    for(char c = 'a';c<('z'+1); c++)
    for(char d = 'a';d<('z'+1); d++)
    for(char e = 'a';e<('z'+1); e++)
        for(int n=0;n<10;n++)
        for(int j=0;j<10;j++)
        for(int i=0;i<10;i++)
            cout <<a<<b<<c<<d<<e<<n<<j<< i<<endl;
    return 0;
}
до конца вывода я не дождался..))

первые десять тысяч в файл записать сможешь? Они уже по алфавиту.. сортировать ничего не надо..
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 11:29  [ТС]     Юный хакер, взлом пароля. #7
А можно остальное мне тоже поянить? а то что-то вообще ничего не понятно... как определить сколько таких паролей существует? и это тоже делается через написание программы?
Как определить размер файла если все пароли в него написать через пробел?
Запишите в текстовый файл первые 10000 таких паролей в
лексикографическом (алфавитном) порядке. - И как это сделать?)))
breeve
 Аватар для breeve
73 / 73 / 14
Регистрация: 01.08.2009
Сообщений: 177
08.12.2009, 11:47     Юный хакер, взлом пароля. #8
Цитата Сообщение от Alinochka Посмотреть сообщение
А можно остальное мне тоже поянить? а то что-то вообще ничего не понятно... как определить сколько таких паролей существует? и это тоже делается через написание программы?
Как определить размер файла если все пароли в него написать через пробел?
Запишите в текстовый файл первые 10000 таких паролей в
лексикографическом (алфавитном) порядке. - И как это сделать?)))
считал я все без программы.. смотри чтобы вычислить сколько может быть комбинаций в 3 последних символах где только числа:
10^3 (10 в 3-ей степени) - 10 поскольку всего цифр десять - 0,1,2...9. в 3-ей степени потому что символа 3. то есть получается всего комбинаций 1000.
с буквами:
26^5 - 11 881 376 комбинаций.. это если только буквы и всего 5 позиций..

плюс цифры и того 11 881 376 000.

один символ в файле равен одному байту.. у нас 11 881 376 000. вот столько символов получилось + столько же минус один это пробелы.. 11 881 376 000 + 11 881 375 999 = 23 762 751 999 это кол-во байт..


код с записью щя кину

Добавлено через 4 минуты
вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
#include<fstream>
using namespace std;
 
int main()
{
    ofstream out("out.txt");
    int z = 0;
    for(char a = 'a';a<('z'+1); a++)
    for(char b = 'a';b<('z'+1); b++)
    for(char c = 'a';c<('z'+1); c++)
    for(char d = 'a';d<('z'+1); d++)
    for(char e = 'a';e<('z'+1); e++)
        for(int n=0;n<10;n++)
        for(int j=0;j<10;j++)
        for(int i=0;i<10;i++)
            if(z < 9999)
            {
            z++;
            out <<a<<b<<c<<d<<e<<n<<j<< i<<endl;
            }
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.12.2009, 11:51     Юный хакер, взлом пароля.
Еще ссылки по теме:

Взлом XOR шифра C++
Нахождение пароля C++
Взлом C++
"Взлом" своей программы через артманию C++
Криптостойкость пароля C++

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

Или воспользуйтесь поиском по форуму:
Alinochka
 Аватар для Alinochka
3 / 3 / 1
Регистрация: 06.12.2009
Сообщений: 46
08.12.2009, 11:51  [ТС]     Юный хакер, взлом пароля. #9
Спасибо Огромное!)))
Yandex
Объявления
08.12.2009, 11:51     Юный хакер, взлом пароля.
Ответ Создать тему
Опции темы

Текущее время: 03:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru