Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Дипломный проект. А.В. Шпак.docx
Скачиваний:
146
Добавлен:
24.02.2016
Размер:
3.35 Mб
Скачать

Содержание

ВВЕДЕНИЕ 10

1 АНАЛИЗ СУЩЕСТВУЮЩИХ СИСТЕМ АУТЕНТИФИКАЦИИ, ВЫБОР РЕШЕНИЯ ДЛЯ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЯ ТРАНСПОРТНОГО СРЕДСТВА 12

1.1 Системы со статическим и динамическим кодом 12

1.2 Шифрование с открытым ключом 13

1.3 Схема проверки подлинности ключа 15

1.4 Вывод 18

2 РАЗРАБОТКА СТРУКТУРНОЙ СХЕМЫ 20

2.1 Упрощённая структурная схема системы 20

2.2 Структурная схема модуля аутентификации 22

2.2.3 Приёмопередатчик. Приёмопередатчик представляет собой устройство, организующее радиосвязь с брелоком, содержащим секретные параметры, позволяющие аутентифицировать пользователя транспортного средства. Характер устройства предполагает, как приём сообщений через открытый радиоканал, так и передачу. Это обусловлено диалоговым методом аутентификации. Изначально, сообщение, инициирующее протокол аутентификации отправляется со стороны брелока, получив сообщения приёмопередатчик вывод решающее устройство из режима ожидания. 24

2.3 Генерация случайной последовательности 25

2.3.1 Предназначение генератора случайных чисел. В любой криптографической системе, чтобы сгенерировать действительно надёжный ключ, нужен генератор случайных чисел (random number generator – RNG). Генерация действительно хорошей случайности – неотъемлемая и к тому же наиболее сложная часть многих криптографических операций. С неформальной же точки зрения случайность можно определить как непредсказуемость значений данных для злоумышленника, даже если тот предпримет активные шаги для борьбы со случайностью. Мера случайности называется энтропией (entropy). В нашей схеме генератор случайных чисел будет получать биты энтропии из нескольких источников. Во-первых, это будет уровень сигнала, полученного с аналого-цифрового преобразователя. 10-разрядный АЦП позволяет получать значение напряжения на одном из своих выводов с достаточно большой точностью, однако самые младшие биты как правило содержат так называемый шум. Генератор случайных чисел будет замерять значение на входе АЦП и полученное 10-разрядное число будет преобразовывать в 1 бит энтропии следующим образом: будет производить сложение по модулю сначала первых двух битов, потом результата и третьего бита, далее результата и третьего бита и так, пока не сложит все 10 битов, то есть просто производит сложение по модулю два 10 битов числа, полученного с АЦП, после чего прибавляет к получившемся биту значение на выводе микроконтроллера, к которому подключен высокочастотный источник импульсов. 25

2.3.4 Источники энтропии. В качестве источников энтропии могут выступать любые источники шумов или случайные процессы, например младшие биты АЦП преобразователя, как правило, содержат шум, так же такие устройства, как шумовой диод или транзистор позволяют получать некоторую порцию случайности, счётчики, работающие на высокой частоте, неопределённое состояние RS-триггера, всё это можно использовать как источники случайных данных. В данной работе мы ограничимся только сигналом с АЦП и битом с быстрого счётчика. 27

2.4 Структурная схема модуля радиоключа 27

2.4.1 Решающее устройство. Второй элемент структурной схемы модуля радиоключа системы аутентификации пользователя транспортного средства – это решающее устройство. Данный элемент представляет собой микропроцессорное устройство. Требования к данному модулю следующие. Во-первых, необходима возможность работы данного микроконтроллера на достаточной частоте, чтобы выполнять алгоритмы протокола аутентификации за минимальное возможное время. В то же время устройство должно обладать достаточно небольшим расходом энергии, что обусловлено автономным характером системы и небольшими размерами конечного устройства. Так же, небольшие размеры устройства диктуют необходимость выбора микроконтроллера небольших габаритных размеров. 28

2.5 Вывод 28

3 РАЗРАБОТКА ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ 30

3.1 Выбор языка программирования 30

3.2 Выбор параметров математического метода 31

3.3 Тестирование скорости выполнения протокола 33

3.3.1 Обнаружение наиболее вычислительно сложной операции. Приведём достаточно абстрактную версию алгоритма аутентификации. Здесь не указаны процедуры принятия и посылки сообщения ключом и автомобилем, так как эти процедуры неизбежно будут присутствовать в конечном устройстве. В алгоритме рассмотрена исключительно часть системы, ответственная за трудоёмкие криптографические операции и математические процедуры, которые необходимо выполнить устройству для успешного осуществления протокола аутентификации: 34

3.4 Проектирование алгоритма работы системы 40

40

3.4.2 Разработка алгоритма работы запирающего устройства. В данном разделе под автомобилем мы понимаем часть системы, расположенную в транспортном средстве, отвечающую за запирающую функцию системы. Автомобилю необходимо принять запрос от брелока, отправить сообщение о начале протокола аутентификации и проверить ответ, полученный с брелока. Блок-схема алгоритма работы схемы автомобиля приведена на рисунке 3.6. В данной блок-схеме рассмотрен процесс работы алгоритма системы транспортного средства, инициированный прерыванием с приёмопередатчика. Приёмопередатчик посылает прерывание на микроконтроллер через внешний вывод. 44

3.5 Разработка общего алгоритма работы системы 47

3.6 Проектирование программной части генератора случайных чисел 49

3.6.1 Источники энтропии. Существует множество процессов, которые ведут себя случайным образом. Например, младшие биты данных, полученных с АЦП-преобразователя будут всегда содержать фактически случайные значения. В данном проекте мы воспользуемся этим и будем считать АЦП – одним из источников энтропии. По прерыванию окончания АЦП-преобразования программа будет брать число, полученное в результате преобразования и преобразовывать его в один бит энтропии. Так же, если подключить на один вход микроконтроллера источник прямоугольных (вообще, не обязательно прямоугольных) импульсов, работающий на частоте, превышающей частоту микроконтроллера, то чтение состояния этого вывода в произвольные моменты времени будет эквивалентно чтению случайного значения, однако мы не будем надеятся на истинную случайность этих данных и состояние этого вывода будет складываться по модулю два с одним битом энтропии, полученным с АЦП-преобразователя. 49

3.6.2 Генератор псевдослучайных чисел. Истинно случайные числа будут использоваться нами только для того, чтобы получить начальное число, подающееся на вход генератора псевдослучайных чисел. После того как у нас появится начальное число, генератор сможет произвести на свет любое нужное количество случайных (а точнее, псевдослучайных) чисел. При необходимости мы можем прибавлять истинно случайные числа к начальному числу генератора псевдослучайных чисел. Это гарантирует, что выходные данные последнего никогда не станут полностью предсказуемыми, даже если злоумышленник каким-либо образом узнает начальное число. 50

3.6.3 Программный пул. Пул – программный блок памяти, осуществляющий накопление случайных данных перед их использованием в генераторе псевдо случайных чисел. 51

3.6.4 RC4. RC4 – потоковый шифр, широко применяющийся в различных системах защиты информации в компьютерных сетях (например, в протоколах SSL и TLS, алгоритме безопасности беспроводных сетей WEP). 51

3.6.5 Устройство постоянной памяти. Как уже упоминалось выше генератору псевдослучайных чисел необходимо иметь устройство постоянной памяти для хранения своего состояния между запусками системы. В данной системе в качестве такого устройства будет использоваться встроенная память eeprom микроконтроллера AtMega8. 52

3.6.6 Блок-схема алгоритма модуля генератора случайных чисел. Блок схема конечного алгоритма модуля генератора случайных чисел изображена на рисунке 3.8. 53

Микроконтроллер начинает свою работу с инициализации периферийных модулей и разрешения прерываний, далее он входит в цикл, ожидания накопления данных в пуле, как только в пул накопится достаточное количество данных, микроконтроллере инициализирует состояние ГПСЧ данными из пула, перемешанными с состоянием, считанным из памяти и входит в основной цикл работы. Результаты тестов dieharder генератора случайных чисел представлены на схеме. 54

3.6 Вывод 54

4 РАЗРАБОТКА ПРИНЦИПИАЛЬНОЙ СХЕМЫ СИСТЕМЫ 56

4.1 Выбор микроконтроллера 57

4.2 Выбор приёмопередатчика 59

4.3 Схема понижения напряжения из бортовой сети автомобиля 61

4.4 Схема генератора случайных чисел 62

4.5 Выбор источника питания радиоключа 64

4.6 Проектирование принципиальной схемы радиоключа 65

4.7 Проектирование принципиальной схемы системы автомобиля 66

4.8 Вывод 68

5.1 Анализ энергозатрат при эксплуатации указанных систем 71

5.2 Поиск инженерно-технических и конструкторско-технологических решений экономии энергозатрат разрабатываемой системы 73

5.3 Вывод 75

6 ТЕХНИКО-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ЭФФЕКТИВНОСТИ РАЗРАБОТКИ СИСТЕМЫ АУТЕНТИФИКАЦИИ ПОЛЬЗОВАТЕЛЯ ТРАНСПОРТНОГО СРЕДСТВА 76

6.1 Характеристика программного продукта 76

6.2 Расчет затрат и отпускной цены программного средства 77

6.3 Расчет стоимостной оценки результата 82

6.4 Расчет показателей эффективности использования программного продукта 83

По годам 84

производства 84

6.5 Вывод 86

СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ 88

Приложение Б 95

Приложение В 97

Приложение Г 99