РАЗРАБОТКА АППАРАТНОГО МЕНЕДЖЕРА ПАРОЛЕЙ
|
Введение 4
1. Обзор имеющихся решений 6
1.1. Mooltipass Mini 7
1.2. TREZOR 9
1.3. Hideez Key 10
1.4. Pastilda 11
2. Структура разрабатываемого устройства 13
3. Выбор элементной базы 15
3.1. Микроконтроллер STM32F415RGT6 15
3.1.1. Основные характеристики STM32F 415RGT 6 15
3.1.2. Криптографический ускоритель STM32F415RGT6 17
3.1.3. Описание используемой периферии 19
3.2. OLED-дисплей 20
3.3. Микросхема Flash-памяти 21
3.4. Контроллер сенсорной клавиатуры 23
4. Реализация аппаратной части разрабатываемого устройства 25
4.1. Разработка принципиальной схемы 25
4.2. Разработка топологии печатной платы 26
4.3. Сборка устройства 27
5. USB 30
5.1. Краткое описание интерфейса USB 30
5.2. Класс USB MSС 31
5.3. Класс USB HID 32
5.4. Дескрипторы 35
6. KeePass
6.1. Описание 41
6.2. Алгоритм расшифровки базы KeePass 2.x 42
7. Реализация программной части разрабатываемого устройства 47
7.1. Алгоритм работы устройства 48
7.2. Расшифровка базы KeePass 50
7.3. USB 51
7.4. Работа с FLASH-памятью 52
7.5. Работа с OLED-дисплеем 54
7.6. Работа с сенсорной клавиатурой 56
8. Экспериментальная проверка работы устройства 58
Заключение 60
Список литературы 61
1. Обзор имеющихся решений 6
1.1. Mooltipass Mini 7
1.2. TREZOR 9
1.3. Hideez Key 10
1.4. Pastilda 11
2. Структура разрабатываемого устройства 13
3. Выбор элементной базы 15
3.1. Микроконтроллер STM32F415RGT6 15
3.1.1. Основные характеристики STM32F 415RGT 6 15
3.1.2. Криптографический ускоритель STM32F415RGT6 17
3.1.3. Описание используемой периферии 19
3.2. OLED-дисплей 20
3.3. Микросхема Flash-памяти 21
3.4. Контроллер сенсорной клавиатуры 23
4. Реализация аппаратной части разрабатываемого устройства 25
4.1. Разработка принципиальной схемы 25
4.2. Разработка топологии печатной платы 26
4.3. Сборка устройства 27
5. USB 30
5.1. Краткое описание интерфейса USB 30
5.2. Класс USB MSС 31
5.3. Класс USB HID 32
5.4. Дескрипторы 35
6. KeePass
6.1. Описание 41
6.2. Алгоритм расшифровки базы KeePass 2.x 42
7. Реализация программной части разрабатываемого устройства 47
7.1. Алгоритм работы устройства 48
7.2. Расшифровка базы KeePass 50
7.3. USB 51
7.4. Работа с FLASH-памятью 52
7.5. Работа с OLED-дисплеем 54
7.6. Работа с сенсорной клавиатурой 56
8. Экспериментальная проверка работы устройства 58
Заключение 60
Список литературы 61
В современном мире доступ ко многим ресурсам возможен только после регистрации и получения логина и пароля. Таким образом, пользователю необходимо помнить данные различных аккаунтов в большом количестве. При этом надежность пароля усиливается с увеличением его длины, но чем длиннее пароль, тем сложнее его запомнить. Решением может стать использование аппаратного менеджера паролей.
Менеджер паролей - программные и/или аппаратные средства, которые в специальной базе содержат зашифрованные данные паролей. Среди наиболее популярных и надежных программных менеджеров можно отметить KeePass, LastPass, IPassword и другие [23]. Многие менеджеры паролей также предоставляют функцию автозаполнения (ввод данных в поля пользователь и данные пароля автоматически в формах). Некоторые менеджеры оснащены встроенным генератором паролей, который случайным образом формирует последовательность символов определенной степени сложности, зависящей от заданных пользователем параметров.
Для зашифровки/расшифровки данных используется так называемый мастер-пароль, вводимый пользователем, на основе которого формируется ключ алгоритма шифрования. Среди недостатков программных менеджеров паролей можно отметить необходимость установки дополнительного ПО и использование облачных технологий, невозможность использования функции автозаполнения в специфических случаях (например в BIOS и UEFI). Кроме того, если мастер-пароль будет взломан каким-либо образом, все хранимые в базе программы данные и пароли станут доступны злоумышленнику.
Аппаратный менеджер паролей - устройство, позволяющее автономно хранить и вводить данные авторизации на различные устройства без установки какого-либо дополнительного ПО. Такое устройство обеспечивает мобильность базы паролей и большую защищенность по сравнению с программными решениями.
Цель работы - разработать аппаратный менеджер паролей. Поставленная цель потребовала решения следующих задач:
1) проанализировать существующие решения в данной области;
2) составить алгоритм работы устройства;
3) разработать блок-схему устройства;
4) разработать принципиальную схему устройства;
5) подобрать элементную базу;
6) разработать топологию печатной платы;
7) осуществить сборку устройства;
8) написать программное обеспечение.
Менеджер паролей - программные и/или аппаратные средства, которые в специальной базе содержат зашифрованные данные паролей. Среди наиболее популярных и надежных программных менеджеров можно отметить KeePass, LastPass, IPassword и другие [23]. Многие менеджеры паролей также предоставляют функцию автозаполнения (ввод данных в поля пользователь и данные пароля автоматически в формах). Некоторые менеджеры оснащены встроенным генератором паролей, который случайным образом формирует последовательность символов определенной степени сложности, зависящей от заданных пользователем параметров.
Для зашифровки/расшифровки данных используется так называемый мастер-пароль, вводимый пользователем, на основе которого формируется ключ алгоритма шифрования. Среди недостатков программных менеджеров паролей можно отметить необходимость установки дополнительного ПО и использование облачных технологий, невозможность использования функции автозаполнения в специфических случаях (например в BIOS и UEFI). Кроме того, если мастер-пароль будет взломан каким-либо образом, все хранимые в базе программы данные и пароли станут доступны злоумышленнику.
Аппаратный менеджер паролей - устройство, позволяющее автономно хранить и вводить данные авторизации на различные устройства без установки какого-либо дополнительного ПО. Такое устройство обеспечивает мобильность базы паролей и большую защищенность по сравнению с программными решениями.
Цель работы - разработать аппаратный менеджер паролей. Поставленная цель потребовала решения следующих задач:
1) проанализировать существующие решения в данной области;
2) составить алгоритм работы устройства;
3) разработать блок-схему устройства;
4) разработать принципиальную схему устройства;
5) подобрать элементную базу;
6) разработать топологию печатной платы;
7) осуществить сборку устройства;
8) написать программное обеспечение.
Возникли сложности?
Нужна помощь преподавателя?
Помощь студентам в написании работ!
В ходе работы:
1) рассмотрены существующие аппаратные менеджеры паролей, выявлены их достоинства и недостатки;
2) составлен алгоритм работы устройства и продуманы режимы его работы;
3) разработана блок-схема устройства;
4) подобрана элементная база;
5) разработана принципиальная электрическая схема устройства;
6) изучен формат хранения паролей kdbx;
7) реализована программная расшифровка базы данных KeePass;
8) разработана топология четырехслойной печатной платы, выбран корпус и форма платы с учетом особенностей принципиальной схемы и режимов работы устройства;
9) осуществлена сборка устройства на печатной плате;
10) написаны программные модули, реализующие аппаратную расшифровку базы KeePass, USB HID, USB MSQ библиотеки для работы с OLED, FLASH и контроллером кнопок;
11) реализован алгоритм работы устройства;
12) устройство протестировано и отлажено.
Разработанное устройство позволяет автономно хранить до 3072 расшифрованных записей, работать до 40 минут без подключения по USB и вводить данные авторизации на различные устройства без установки какого - либо дополнительного программного обеспечения, что увеличивает защищенность данных по сравнению с программными решениями и обеспечивает мобильность базы паролей.
1) рассмотрены существующие аппаратные менеджеры паролей, выявлены их достоинства и недостатки;
2) составлен алгоритм работы устройства и продуманы режимы его работы;
3) разработана блок-схема устройства;
4) подобрана элементная база;
5) разработана принципиальная электрическая схема устройства;
6) изучен формат хранения паролей kdbx;
7) реализована программная расшифровка базы данных KeePass;
8) разработана топология четырехслойной печатной платы, выбран корпус и форма платы с учетом особенностей принципиальной схемы и режимов работы устройства;
9) осуществлена сборка устройства на печатной плате;
10) написаны программные модули, реализующие аппаратную расшифровку базы KeePass, USB HID, USB MSQ библиотеки для работы с OLED, FLASH и контроллером кнопок;
11) реализован алгоритм работы устройства;
12) устройство протестировано и отлажено.
Разработанное устройство позволяет автономно хранить до 3072 расшифрованных записей, работать до 40 минут без подключения по USB и вводить данные авторизации на различные устройства без установки какого - либо дополнительного программного обеспечения, что увеличивает защищенность данных по сравнению с программными решениями и обеспечивает мобильность базы паролей.
1. An implementation of the Salsa20 stream cipher [Электронный ресурс] URL: https://github.com/alexwebr/salsa20 (Дата обращения 13.06.2018)
2. Basic implementations of standard cryptography algorithms. [Электронный
ресурс] URL: https: //github. com/B-Con/crypto-al gorithms (Дата
обращения 13.06.2018)
3. Datasheet CSTCE8M00G52-R0 [Электронный ресурс] URL:
https: //www.compel .ru/item-
pdf/b379b2648464aff105e45b47f0db5933/ps/mur~ceralock.pdf (Дата
обращения 13.06.2018)
4. Datasheet SSD1306 [Электронный ресурс] URL: https://cdn-
shop.adafruit.com/datasheets/SSD1306.pdf (Дата обращения 13.06.2018)
5. Datasheet STC4054GR [Электронный ресурс] URL: http: //www.st.com/content/ccc/resource/technical/do cument/datasheet/df/b9/ e6/5b/ec/92/45/ed/CD00132951 .pdf/files/CD00132951 .pdf/icr:content/transl ations/en.CD00132951.pdf (Дата обращения 13.06.2018)
6. Datasheet STM32F 415xx/STM32F 417xx
7. Datasheet TPS6303DSKR [Электронный ресурс] URL: https: //www. compel. ru/item-
pdf/82428a53255e7f61cd383f11b76ef065/pn/ti~tps63030dskr.pdf (Дата обращения 13.06.2018)
8. Datasheet TTP224 [Электронный ресурс] URL: sunrom.com/get/581200 (Дата обращения 13.06.2018)
9. Datasheet W25Q128FV [Электронный ресурс] URL: https://www.pirc.com/teensv/W25Q128FV.pdf (Дата обращения
13.06.2018)
10. Hideez Key [Электронный ресурс] URL: https://hideez. com/how-it-works (Дата обращения 13.06.2018)
11. KeePass Password Safe [Электронный ресурс] URL: https://keepass.info/ (Дата обращения 13.06.2018)
12. KeePass v2.x (KDBX v3.x) file format [Электронный ресурс] URL: https://gist. github.com/msmuenchen/9318327 (Дата обращения 13.06.2018)
13. Mooltipass Mini. Портативная система хранения паролей [Электронный
ресурс] URL: http://chipgifts.ru/mooltipass-mini (Дата обращения
13.06.2018)
14. MSC: Mass Storage Class [Электронный ресурс] URL: http://www.keil.com/pack/doc/mw/usb/html/ m s c.html (Дата обращения
13.06.2018)
15. MyIDkey: Passwords at the tip of your finger [Электронный ресурс] URL: https://www.kickstarter.com/proiects/myidkey/myidkey-passwords-at-the- tip-of-your-finger/description (Дата обращения 13.06.2018)
16.OnlyKey - The Two-factor Authentication & Password Solution [Электронный ресурс] URL:
https://www.kickstarter.com/proiects/1048259057/openkey-the-two-factor- authentication-and-password/description (Дата обращения 13.06.2018)
17. Pastilda [Электронный ресурс] URL: https://www.pastilda.com/ (Дата обращения 13.06.2018)
18. Trying out a Barebone OLED display [Электронный ресурс] URL: http://michaelteeuw.nl/post/158888468867/trying-out-a-barebone-oled- display (Дата обращения 13.06.2018)
19. USB in a NutShell - путеводитель по стандарту USB (начало)
[Электронный ресурс] URL: http: //micro sin.net/pro gramming/arm-
working-with-usb/usb-in-a-nutshell-part 1 .html (Дата обращения
13.06.2018)
20. User manual - of STM32F4xx HAL drivers [Электронный ресурс] URL: https://www.enib.fr/~kerhoas/ROBOT /docs/HAL.pdf (Дата обращения
13.06.2018)
21. Агуров П.В. Интерфейсы USB. Практика использования и программирования. - СПБ.: БХВ — Петербург, 2004. - 576 с.
22. Драйвер OLED SSD1306 [Электронный ресурс] URL: http://catcatcat.d-
lan.dp.ua/shemotehnika/oled-displei/dravver-oled-ssd1306/ (Дата
обращения 13.06.2018)
23. Какой менеджер паролей наиболее удобен и надежен - сравнительный
обзор [Электронный ресурс] URL:
https://webznam.ru/blog/kakoi menedzher parolei/2018-03-20-517 (Дата обращения 13.06.2018)
24. Криптография в отдельном блот криптографический сопроцессор семейства STM32F4xx [Электронный ресурс] URL: https://www.compel.ru/lib/ne/2012/6/4-kriptografiva-v-otdelnom-bloke- kriptograficheskiv-soprotsessor-semevstva-stm32f4xx (Дата обращения
14.06.2018)
25. Лидер по производительности среди ядер Cortex-M4 — STM32F4xx / Роман Иванов//Новости Электроники. — 2012. — №2. — с. 17-22
26. Муртазина Л.Ш. Разработка и реализация защищенного загрузчика программного кода для микроконтроллеров STM32F4xx. - 59 с.
27. Пастильда — открытый аппаратный менеджер паролей [Электронный ресурс] URL: https://habr.com/post/305594/ (Дата обращения 13.06.2018)
28. Работа с флеш памятью Winbond W25Q128 [Электронный ресурс] URL: http://blablacode.ru/mikrokontrollery/534 (Дата обращения 13.06.2018)
29. Суперсильный менеджер паролей [Электронный ресурс] URL: http: //cryptomania. pro/2016/11/28/%D 1 %81 %D 1 %83%D0%BF%D0%B5 % D1 %80%D 1 %81 %D0%B8%D0%BB%D 1 %8C%D0%BD%D 1 %8B%D0% B9-
%D0%BC%D0%B5%D0%BD%D0%B5%D0%B4%D0%B6%D0%B5%D1
%80-%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D0%B5%D0%B9/ (Дата обращения 13.06.2018)
30. Токены, USB-ключи, электронные ключи [Электронный ресурс] URL: https://cryptostore.ru/catalog/tokens/ (Дата обращения 13.06.2018)
31. Флешка Istorage DatAshur Pro 16 Gb защищенная паролем, пин кодом, аппаратным шифрованием данных [Электронный ресурс] URL: http://www.byte-
on.ru/catalog/fleshka istorage datashur pro/fleshka istorage datashur pro 16gb/ (Дата обращения 13.06.2018)
2. Basic implementations of standard cryptography algorithms. [Электронный
ресурс] URL: https: //github. com/B-Con/crypto-al gorithms (Дата
обращения 13.06.2018)
3. Datasheet CSTCE8M00G52-R0 [Электронный ресурс] URL:
https: //www.compel .ru/item-
pdf/b379b2648464aff105e45b47f0db5933/ps/mur~ceralock.pdf (Дата
обращения 13.06.2018)
4. Datasheet SSD1306 [Электронный ресурс] URL: https://cdn-
shop.adafruit.com/datasheets/SSD1306.pdf (Дата обращения 13.06.2018)
5. Datasheet STC4054GR [Электронный ресурс] URL: http: //www.st.com/content/ccc/resource/technical/do cument/datasheet/df/b9/ e6/5b/ec/92/45/ed/CD00132951 .pdf/files/CD00132951 .pdf/icr:content/transl ations/en.CD00132951.pdf (Дата обращения 13.06.2018)
6. Datasheet STM32F 415xx/STM32F 417xx
7. Datasheet TPS6303DSKR [Электронный ресурс] URL: https: //www. compel. ru/item-
pdf/82428a53255e7f61cd383f11b76ef065/pn/ti~tps63030dskr.pdf (Дата обращения 13.06.2018)
8. Datasheet TTP224 [Электронный ресурс] URL: sunrom.com/get/581200 (Дата обращения 13.06.2018)
9. Datasheet W25Q128FV [Электронный ресурс] URL: https://www.pirc.com/teensv/W25Q128FV.pdf (Дата обращения
13.06.2018)
10. Hideez Key [Электронный ресурс] URL: https://hideez. com/how-it-works (Дата обращения 13.06.2018)
11. KeePass Password Safe [Электронный ресурс] URL: https://keepass.info/ (Дата обращения 13.06.2018)
12. KeePass v2.x (KDBX v3.x) file format [Электронный ресурс] URL: https://gist. github.com/msmuenchen/9318327 (Дата обращения 13.06.2018)
13. Mooltipass Mini. Портативная система хранения паролей [Электронный
ресурс] URL: http://chipgifts.ru/mooltipass-mini (Дата обращения
13.06.2018)
14. MSC: Mass Storage Class [Электронный ресурс] URL: http://www.keil.com/pack/doc/mw/usb/html/ m s c.html (Дата обращения
13.06.2018)
15. MyIDkey: Passwords at the tip of your finger [Электронный ресурс] URL: https://www.kickstarter.com/proiects/myidkey/myidkey-passwords-at-the- tip-of-your-finger/description (Дата обращения 13.06.2018)
16.OnlyKey - The Two-factor Authentication & Password Solution [Электронный ресурс] URL:
https://www.kickstarter.com/proiects/1048259057/openkey-the-two-factor- authentication-and-password/description (Дата обращения 13.06.2018)
17. Pastilda [Электронный ресурс] URL: https://www.pastilda.com/ (Дата обращения 13.06.2018)
18. Trying out a Barebone OLED display [Электронный ресурс] URL: http://michaelteeuw.nl/post/158888468867/trying-out-a-barebone-oled- display (Дата обращения 13.06.2018)
19. USB in a NutShell - путеводитель по стандарту USB (начало)
[Электронный ресурс] URL: http: //micro sin.net/pro gramming/arm-
working-with-usb/usb-in-a-nutshell-part 1 .html (Дата обращения
13.06.2018)
20. User manual - of STM32F4xx HAL drivers [Электронный ресурс] URL: https://www.enib.fr/~kerhoas/ROBOT /docs/HAL.pdf (Дата обращения
13.06.2018)
21. Агуров П.В. Интерфейсы USB. Практика использования и программирования. - СПБ.: БХВ — Петербург, 2004. - 576 с.
22. Драйвер OLED SSD1306 [Электронный ресурс] URL: http://catcatcat.d-
lan.dp.ua/shemotehnika/oled-displei/dravver-oled-ssd1306/ (Дата
обращения 13.06.2018)
23. Какой менеджер паролей наиболее удобен и надежен - сравнительный
обзор [Электронный ресурс] URL:
https://webznam.ru/blog/kakoi menedzher parolei/2018-03-20-517 (Дата обращения 13.06.2018)
24. Криптография в отдельном блот криптографический сопроцессор семейства STM32F4xx [Электронный ресурс] URL: https://www.compel.ru/lib/ne/2012/6/4-kriptografiva-v-otdelnom-bloke- kriptograficheskiv-soprotsessor-semevstva-stm32f4xx (Дата обращения
14.06.2018)
25. Лидер по производительности среди ядер Cortex-M4 — STM32F4xx / Роман Иванов//Новости Электроники. — 2012. — №2. — с. 17-22
26. Муртазина Л.Ш. Разработка и реализация защищенного загрузчика программного кода для микроконтроллеров STM32F4xx. - 59 с.
27. Пастильда — открытый аппаратный менеджер паролей [Электронный ресурс] URL: https://habr.com/post/305594/ (Дата обращения 13.06.2018)
28. Работа с флеш памятью Winbond W25Q128 [Электронный ресурс] URL: http://blablacode.ru/mikrokontrollery/534 (Дата обращения 13.06.2018)
29. Суперсильный менеджер паролей [Электронный ресурс] URL: http: //cryptomania. pro/2016/11/28/%D 1 %81 %D 1 %83%D0%BF%D0%B5 % D1 %80%D 1 %81 %D0%B8%D0%BB%D 1 %8C%D0%BD%D 1 %8B%D0% B9-
%D0%BC%D0%B5%D0%BD%D0%B5%D0%B4%D0%B6%D0%B5%D1
%80-%D0%BF%D0%B0%D1%80%D0%BE%D0%BB%D0%B5%D0%B9/ (Дата обращения 13.06.2018)
30. Токены, USB-ключи, электронные ключи [Электронный ресурс] URL: https://cryptostore.ru/catalog/tokens/ (Дата обращения 13.06.2018)
31. Флешка Istorage DatAshur Pro 16 Gb защищенная паролем, пин кодом, аппаратным шифрованием данных [Электронный ресурс] URL: http://www.byte-
on.ru/catalog/fleshka istorage datashur pro/fleshka istorage datashur pro 16gb/ (Дата обращения 13.06.2018)
Работу высылаем на протяжении 30 минут после оплаты.
Заказать работу
Заявка на оценку стоимости
Это краткая форма заказа. После ее заполнения вы перейдете на полную форму заказа работы
Каталог работ (150850)
- Бакалаврская работа (38611)
- Диссертация (978)
- Магистерская диссертация (22268)
- Дипломные работы, ВКР (61147)
- Главы к дипломным работам (2138)
- Курсовые работы (10603)
- Контрольные работы (6265)
- Отчеты по практике (1357)
- Рефераты (1482)
- Задачи, тесты, ПТК (631)
- Ответы на вопросы (155)
- Статьи, Эссе, Сочинения (942)
- Бизнес-планы (51)
- Презентации (106)
- РГР (84)
- Авторефераты (РГБ) (1692)
- Диссертации (РГБ) (1882)
- Прочее (458)
Новости
06.01.2018
Помощь студентам и аспирантам в выполнении работ от наших партнеров
Помощь в выполнении учебных и научных работ на заказ ОФОРМИТЬ ЗАКАЗ
дальше»» Все новости
Статьи
- Где лучше заказывать диссертации и дипломные?
- Выполнение научных статей
- Подготовка диссертаций
- Подводные камни при написании магистерской работы
- Помощь в выполнении дипломных работ
»» Все статьи
Заказать работу
Заявка на оценку стоимости
Это краткая форма заказа. После ее заполнения вы перейдете на полную форму заказа работы