На сегодняшний день практически все требует от нас ту или иную форму статического кода - пароля. Пароли используются везде: в почтовых ящиках, при подключении к Интернету, в системах электронных банков. Все чаще и чаще, регистрируясь на каком-нибудь популярном интернет сайте, от нас требуют создать пароль, который содержал бы не только буквы, но и цифры и символы, а его длина превышала 8 символов. Пароли в стиле "qwerty" и "password" потеряли былую популярность, а создание действительно хорошо защищенного, и в то же время хорошо запоминающегося пароля может стать серьезным испытанием для рядового пользователя. Выход - устройство достаточно простое в использовании, компактное, которое при нажатии кнопки выдавало уникальный пароль - то есть портативный генератор паролей.
Краткие характеристики устройства:
- Название - «Pass Key»;
- Типоразмер - портативный, крайне компактен;
- Питание - 5 В;
- Цель - генерация произвольно 16-значный пароля.
Очевидно, что без использования микроконтроллеров нам не обойтись, поэтому воспользуемся модифицированной отладочной платой AVR от Olimex. Программный код для устройства был написан с помощью мощного BASIC компилятора для Windows BASCOM-AVR.
В результате компиляции мы получаем компактный HEX код. Ниже приведены ссылки на BASCOM-AVR код.
Для осуществления нашего замысла нам понадобятся:
- Отладочная плата Olimex AVR-MT
- Микроконтроллер Atmel ATtiny 2313
- Двухштырьковый разъем (обе части)
- Кожаный чехольчик Теперь можно приступить к работе.
Для начала с отладочной платы снимаем следующие компоненты: D1, C3, C1, VR, и PWR. Следующий шаг - установка перемычек. Для этого аккуратно припаиваем заранее подготовленный провод на месте убранного нами в предыдущем шаге компонента D1. Теперь, повторяем тоже самое с ранее убранным нами компонентом VR. Припаиваем насадку вместо убранного компонента. Внимание! Соблюдайте полярность, вывод №2 - GND (отрицательный), а вывод №3 - +5V (положительный). Устанавливаем микроконтроллер ATtiny 2313 в гнездо на отладочной плате.
Подключаем питание.
На данный момент Ваша отладочная плата должна выглядеть следующим образом:
Загружаем ПО (см. ссылки выше).
Далее последовательность действий такова: создаем HEX фай с помощью BASCOM-AVR, записываем го на AVR-MT отладочную плату с помощью Atmel Studio 4.
Не забудьте включить питание отладочной платы подключая программатор!
Запустив демонстрационную программу, убедитесь, что все работает правильно, а именно:
- Светодиода загорелся;
- ЖК-дисплей активирован и отображает текст;
- Из динамика доноситься мелодия "Here Come the Saints".
Если проверка прошла успешно, значит вы подключили питание (выполнили все предыдущие шаги) правильно. Приступаем к прошивке исходного кода генератора паролей. Для этого загрузите Pass Key программу перейдя по ссылке в начале статьи, создайте HEX файл воспользовавшись BASCOM-AVR и загрузите его в отладочную плату AVR-MT. Наконец-то можно посмотреть на генератор паролей в действии. После нажатия кнопки #4 будет сгенерирован 16-значный пароль. За отключение и включение дисплея отвечает кнопка #1. К счастью, в исходном коде есть комментарии, что значительно облегчит добавление новых функций, либо изменение текущих. Примечание. Произвольные комбинации (пароли) генерируются компьютером, а не микроконтроллером. Поэтому каждый раз, запуская программу, вы будете получать одинаковые последовательности тех же самых паролей.
Исправить это можно внеся следующие изменения:
- Изменить длину генерируемого пароля;
- Отключить использование спец. символов.
Также возможно «привязать» разные длины паролей к разной кнопке. Как видите единственное ограничение - ваша фантазия. Стоит отметить, что пароли сгенерированные собранным нами генератором намного «прочнее» придуманных самостоятельно, так что теперь ваш аккаунт окажется «крепким орешком».