Текущее время: Пн апр 12, 2021 6:27 pm

Часовой пояс: UTC+02:00




Начать новую тему  Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
СообщениеДобавлено: Вс мар 17, 2013 2:03 pm 
Не в сети
Крутой юзер
Аватара пользователя

Зарегистрирован: Сб дек 15, 2007 10:51 pm
Сообщения: 893
USB устройство - генератор пароля

Привет. Очень интересное устройство, выполненное в виде USB флешки, предназначено для генерирования и ввода символьного пароля в персональный компьютер при подключении его в разъем USB. Другими словами, это своего рода электронный ключ, при подключении которого в разъем USB персонального компьютера, например при входе в Windows, автоматически вводится сохраненный пароль. Устройство по команде пользователя может сгенерировать произвольный пароль и сохранить его в энергонезависимой памяти.
Изображение
Устройство очень простое и выполнено на микроконтроллере Atmel AVR ATtiny85, который, с помощью программного кода, эмулирует USB HID клавиатуру.
Изображение
Сгенерированный самим микроконтроллером и сохраненный в EEPROM микроконтроллера пароль передается при подключении устройства в USB разъем. Новый пароль генерируется после 4-х кратного нажатия на кнопку, длина пароля по умолчанию 10 символов.
Основные параметры, определяющие функционирование устройства, которые вы найдете в тексте исходного кода программы микроконтроллера (файл 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) и осуществляет генерацию/сохранение пароля.
Следует учитывать, что необходимо произвести настройку Fuse-битов микроконтроллера: CKSEL=0001, SUT=10 (младший байт E1) и установить BOD на уровень 2.7 В (старший байт DD).
Прочитать статью USB генератор пароля в виде флешки можно на мною очень уважаемом сайте Изображение DIOD
Изображение Скачать исходные коды, схема, make-файл.
Штучка очень прикольнная и может быть очень полезной, особенно для организаций с высокими требованиями к безопасности. При совсем не значительной переделки кода прошивки, можно сделать так, что бы устройство срабатывало с разными паролями и на пароль после пост-BIOS и для винды и даже для использования некоторых программ. Так, у каждого пользователя может быть свой "ключ" с несколькими паролями. Если делать такой USB флеш-ключ больше чем один, то себестоимость каждого последующего устройства будет только дешеветь. Ну как-то так.
:roll:


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC+02:00


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB