Радиомастер гид в мире электроники » Схемы » Интеграция с ПК » USB генератор пароля в виде флешки
Информация к новости
  • Просмотров: 4068
  • Добавил: Dina
  • Дата: 29 декабря 2013
29 декабря 2013

USB генератор пароля в виде флешки

Категория: Схемы » Интеграция с ПК

Данное устройство, выполненное в виде USB флешки, предназначено для генерирования и ввода символьного пароля в персональный компьютер при подключении его в разъем USB. Другими словами, это своего рода электронный ключ, при подключении которого в разъем USB персонального компьютера, например при входе в Windows, автоматически вводится сохраненный пароль. Устройство по команде пользователя может сгенерировать произвольный пароль и сохранить его в энергонезависимой памяти.

USB генератор пароля в виде флешки


Устройство очень простое и выполнено на микроконтроллере Atmel AVR ATtiny85, который, с помощью программного кода, эмулирует USB HID клавиатуру. Сгенерированный самим микроконтроллером и сохраненный в EEPROM микроконтроллера пароль передается при подключении устройства в USB разъем. Новый пароль генерируется после 4-х кратного нажатия на кнопку Caps Lock на штатной клавиатуре: 4 нажатия для запуска режима генерации и затем, одно нажатие клавишы Caps Lock для генерирования каждого символа пароля (длина пароля по умолчанию 10 символов).

Помимо микроконтроллера в схеме используется несколько пассивных компонентов, которые обязательны при реализации USB коммуникации на микроконтроллере.

USB генератор пароля в виде флешки


Корпус устройства позаимствован от неисправного флеш-накопителя емкостью 512 МБайт. Коннектор USB был взят от обычного USB кабеля, он и остальные компоненты монтируются на макетную плату соответствующего размера.

USB генератор пароля в виде флешки


USB генератор пароля в виде флешки


Программа микроконтроллера
Программное обеспечение для микроконтроллера написано с использованием библиотеки V-USB для AVR микроконтроллеров. Устройство определяется компьютером как USB HID клавиатура. Для обеспечения коммуникации с устройством оно выполнено в виде Boot-совместимой клавиатуры, которая может получать статус светодиодов (в частности, для нашего случая Caps Lock) изменяемого компьютером. Описание HID позаимствовано с проекта карточки USB Business card (Frank Zhao). Также благодаря этому проекту был изучен и применен код для отправки статуса светодиодов в USB HID устройство (коротко, компьютер посылает 1 байтное сообщение – битовую маску состояния светодиодов).

Основные параметры, определяющие функционирование устройства, которые вы найдете в тексте исходного кода программы микроконтроллера (файл usbsconfig.h и HID-дискриптор):
- PASS_LENGTH – длина генерируемого пароля, определяется в начале программы;
- SEND_ENTER – значение может быть 1 или 0, определяет будет ли отправлена нашим устройством команда Enter после ввода сохраненного пароля;
- measuring_message и finish_message – содержат сообщения, которые будут отображаться при генерации/сохранении нового пароля;
- buildReport() – функция, вызываемая в основном цикле программы, для отправки символов пароля на ПК один за одним – функция преобразует символы в буфере messageBuffer в USB команды «на лету»;
- usbFunctionWrite() – функция осуществляет прием байта состояния светодиодов от ПК, она вызывает функцию caps_toggle() каждый раз при изменении статуса светодиода;
- generate_character() – функция используетсядля генерирования произвольного символа, и на данный момент используются буквы, дефис и символ подчеркивания;
- caps_toggle() – функция ведет подсчет нажатий кнопки Caps Lock (по изменению состояния светодиода Caps Lock) и осуществляет генерацию/сохранение пароля.

В разделе загрузок для пользователей доступен исходный код с подробными комментариями, принципиальная схема и make-файл для компиляции. Следует учитывать, что необходимо произвести настройку Fuse-битов микроконтроллера: CKSEL=0001, SUT=10 (младший байт E1) и установить BOD на уровень 2.7 В (старший байт DD).

Скачать архив:
Вы не можете скачивать файлы с нашего сервера

Источник:
http://codeandlife.com

Метки к статье: генератор пароля, USB генератор пароля, схема USB генератора пароля



<
Matafixxx

2 января 2014 20:18

Информация к комментарию
  • Группа: Радиолюбитель
  • ICQ: 216323831
  • Регистрация: 21.10.2010
  • Статус: Пользователь offline
  • Публикаций: 0
  • Комментариев: 4
кто нить бы ещё сделал готовый хекс файл прошивки, чтоб устройство смогли повторить и простые радиолюбители, не умеющие программировать


Награды:
0
<
Иван_

9 апреля 2015 19:20

Информация к комментарию
  • Группа: Радиолюбитель
  • ICQ:
  • Регистрация: --
  • Статус:
  • Публикаций: 0
  • Комментариев: 2
Залил прошивку (hex), установить fuse-биты, а при подключении к ПК винда ругается, что не смогла распознать устройство. У кого-нибудь получилось?


Награды:
0

Добавление комментария

Имя:*
E-Mail:*
Введите два слова, показанных на изображении: *

Друзья и партнеры:

Архив новостей

Декабрь 2016 (1)
Ноябрь 2016 (1)
Сентябрь 2016 (3)
Июнь 2016 (1)
Май 2016 (1)
Апрель 2016 (1)
^
 
-->