Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум_ЗИ.doc
Скачиваний:
49
Добавлен:
29.03.2015
Размер:
524.29 Кб
Скачать

4.2. Таблица двоичного представления кодов

символ

код

128

64

32

16

8

4

2

1

А

65

0

1

0

0

0

0

0

1

4.3. Таблица вариантов

Вариант

P

V

T

Используемые группы символов пароля

1

10-4

15 паролей/мин

2 недели

1. Цифры (0-9)

2. Латинские строчные буквы (a-z)

2

10-5

3 паролей/мин

10 дней

1. Латинские прописные буквы (A-Z)

2. Русские строчные буквы (а-я)

3

10-6

10 паролей/мин

5 дней

1. Русские прописные буквы (А-Я)

2. Специальные символы.

4

10-7

11 паролей/мин

6 дней

1. Цифры (0-9)

2. Латинские прописные буквы (A-Z)

5

10-4

100 паролей/день

12 дней

1. Русские прописные буквы (А-Я)

2. Латинские строчные буквы (a-z)

6

10-5

10 паролей/день

1 месяц

1. Русские строчные буквы (а-я)

2. Специальные символы.

7

10-6

20 паролей/мин

3 недели

1. Цифры (0-9)

2. Русские строчные буквы (а-я)

8

10-7

15 паролей/мин

20 дней

1. Латинские строчные буквы (a-z)

2. Латинские прописные буквы (A-Z)

9

10-4

3 паролей/мин

15 дней

1. Русские прописные буквы (А-Я)

2. Русские строчные буквы (а-я)

10

10-5

10 паролей/мин

1 неделя

1. Цифры (0-9)

2. Специальные символы.

11

10-6

11 паролей/мин

2 недели

1. Цифры (0-9)

2. Русские прописные буквы (А-Я)

12

10-7

100 паролей/день

10 дней

1. Латинские строчные буквы (a-z)

2. Русские прописные буквы (А-Я)

13

10-4

10 паролей/день

5 дней

1. Цифры (0-9)

2. Латинские строчные буквы (a-z)

14

10-5

20 паролей/мин

6 дней

1. Латинские прописные буквы (A-Z)

2. Русские строчные буквы (а-я)

15

10-6

15 паролей/мин

12 дней

1. Русские прописные буквы (А-Я)

2. Специальные символы.

Пример 4.1. Расчет задачи для варианта 15

Вариант

P

V

T

Используемые группы символов пароля

15

10-6

15 паролей/мин

12 дней

1. Русские прописные буквы (А-Я)

2. Специальные символы.

  1. Р = 10-6 ; V = 15 паролей/мин ; T = 12 дней.

  1. А =32+10=42.

  1. . Чтобы найти L, будем возводить число 42 в степень L=1,2,3,… и результат каждый раз будем сравнивать с числом 43200000000, пока не выполним требуемое неравенство. В ходе итерации было получено L=8, при котором S=9682650000000, что на порядок больше .

  1. Сформируем пароли с учетом их длины, равной 8 и известного множества символов, получим:

Пароли

К!О”T#$K

АДРЕСС)!

СОЛЬ%%*O

Для расчетов удобно применять следующую программу на языке С++ в системе VisualStudio2008:

#include "stdafx.h"

#include <iostream>

using namespace std;

#include <conio.h>

int main()

{

int V,T,L=0;

double A,A1=1;

float S;

float P;

/* P - вероятность взлома; V – скорость взлома (число паролей в минуту);

T – время действия пароля; А – число парольных символов;

L – искомая длина пароля; S - пространство взлома (число возможных

паролей).

*/

cout<<"\n Enter P, V, T ,A\n";

cin>>P>>V>>T>>A; // ввод исходных данных

cout<<"\n P = "<<P<<" V = "<<V<<" T = "<<T<<" A = "<<A<<"\n";

// печать для проверки

S=V*T*60*24*12/P;

cout<<"\n S = "<<S;

while(A1<S)

{

L++;

A1=A1*A; // степени А

}

cout<<"\n A1 = "<<A1;

cout<<"\n L = "<<L;

getch();

return 0;

}