Моддинг ПК. Включение и пароли по RFID картам

Сегодня рядовой пользователь интернета имеет не один и не два, а достаточное количество аккаунтов на различных интернет ресурсах. Количество паролей с каждым годом возрастает с некоторой прогрессией, а это значит, что все их запоминать становится сложнее. Кто-то их начинает записывать (на листке бумаги или в файле, хранящимся на том же компьютере), кто-то все ещё пытается запоминать их, а кто-то, пренебрегая безопасностью, копирует везде один и тот же пароль, повышая шанс взлома или потери доступа к своим ресурсам. Сегодняшней темой я надеюсь сделать маленький шажок к решению этих проблем. Идея заключается в том, что RFID карты имеют свой уникальный идентификационный номер. Используя эти уникальные данные, не будет надобности запоминать пароли, а достаточно будет просто использовать нужную карту или брелок.

Таким образом, вслед за идеей родилась схема устройства.

Схема имеет 2 назначения, работающие независимо друг от друга: передачу идентификационного номера карты по USB и включение ПК по совпадению сохраненного номера карты в памяти микроконтроллера. Для данной схемы используются RFID карты 13,56 МГц (Mifare s50 и подобные). Считыватель карт построен на модуле RC522 (MOD1), в основе которого микроконтроллер MFRC522 NXP Semiconductors. Модуль имеет интерфейс SPI, при помощи которого подключается к основному микроконтроллеру STM32F103C8T6. STM32 питается напряжением 3,3 Вольта, поэтому необходим понижающий стабилизатор с 5 Вольт USB или дежурного источника блока питания ATX. Для этой цели подойдет любой стабилизатор, например AMS1117 3v3 и ему подобные. Для ввода паролей на компьютере устройство имеет USB интерфейс. Для простоты используется USB HID (устройство ввода – клавиатура), что позволяет просто подключить устройство, и оно сразу заработает без установки дополнительных драйверов. Функционал включения компьютера по беспроводным картам реализован на следующих элементах. Вместо кнопки к контактам на материнской плате подключается реле (нормально разомкнутый контакт и общий контакт). Так как напряжение дежурного источника блока питания составляет 5 Вольт, то и реле необходимо использовать на 5 Вольт. Чтобы реле не срабатывало после включения компьютера на контакт PB9 микроконтроллера через делитель напряжения на резисторах R4 и R5 подается напряжение 5 Вольт, которое не связано с дежурным источником. Таким образом формируется сигнал о работе блока питания компьютера и соответственно о том, что компьютер включен. Перемычка Jmp1 используется для стирания памяти карт. Чтобы стереть память, необходимо установить перемычку (то есть замкнуть контакт PB8 на плюс питания) и нажать кнопку reset S1 или отключить и включить питание. Через секунду память будет уже стерта и перемычку необходимо снять, чтобы при следующем перезапуске память не стерлась снова. Когда память карт пуста, первая приложенная карта автоматически сохраняется как мастер карта. Данная версия прошивки поддерживает сохранение до 3-х карт в памяти микроконтроллера. Чтобы добавить в память новые карты необходимо поднести к считывателю мастер карту, это активирует на 3 секунды возможность сохранить новую карту в память микроконтроллера при условии, что место в памяти ещё есть. После сохранения новой карты в памяти этот режим сразу же деактивируется. Очистить память можно лишь сразу всю методом, описанным выше при помощи перемычки.

Устройство имеет стандартную схематику и может быть собрано за полчаса на стандартных модулях, необходимо лишь правильно соединить все контакты и загрузить прошивку в микроконтроллер. Для прошивки нам понадобится программатор ST-Link и STM32 ST-LINK Utility.

Размеры модулей хорошо вписываются в заглушку на передней части корпуса ПК. При помощи 2-хстороннего скотча модули можно установить на нее без возможности испортить внешний вид корпуса. Скотч должен быть типа 3М для того, чтобы со временем модули не отвалились. Так с лицевой стороны можно оставить все в стандартном виде, а при желании в месте расположения RFID считывателя наклеить стикер, указывающий куда прикладывать карту.

Для подключения к компьютеру необходимо внутри корпуса подключить устройство к USB и к блоку питания. Для подключения к USB можно использовать свободные разъемы PLS на материнской плате или использовать USB разъемы. Чтобы подключиться к питанию, необходимо подключить дополнительные провода в разъеме к фиолетовому проводу (+5 Вольт дежурного питания), черному (земля, GND) и красному (+5 Вольт). Способ подключения к этим проводам не очень простой, т.к. резать провода совсем не хочется, чтобы подпаяться к ним, поэтому нужно, подогнув ушки контактов внутри пластикового разъема, извлечь этот контакт и либо припаять свой провод, либо ослабить обжим, вставить дополнительно свой провод и заново обжать контакт.

Собираем устройство в корпуса компьютера, размещаем модули на передней заглушке, подключаем контакты к разъемам блок питания и материнской платы.

При включении блока питания компьютера в розетку наше устройство должно сразу заработать, если блок питания исправен. А при подключении к USB устройство должно определиться как стандартная клавиатура.

Теперь сохраняем мастер карту (первую приложенную к считывателю карту) и устройство готово к использованию.

Чтобы устройство вводило пароль лишь на английском, используются горячие клавиши CTRL+0. Это сочетание клавиш включает тот язык, к которому оно привязано. Данное сочетание задается в параметрах языковой панели. По умолчанию горячие клавиши языков не используются, поэтому эту настройку необходимо сделать вручную.

Таким образом, при включенном компьютере устройство сначала передает сочетание клавиш CTRL+0 для перехода на английскую раскладку, далее следуют 5 байт уникального идентификатора RFID карты в шестнадцатеричной форме, то есть десять символов шестнадцатеричной кодировки и в конце нажатие клавиши Enter. При вводе пароля при помощи этого устройства необходимо, чтобы курсор был установлен именно в том поле, куда должен вводиться пароль.


Список радиоэлементовОбозначение
Тип
Номинал
Количество
ПримечаниеМагазинМой блокнот

IC1
МК STM32STM32F103C81
VR1
Линейный регуляторAMS1117-3.31
T1
MOSFET-транзисторIRLML24021
VD1, VD2
Выпрямительный диод1N40072
Z1
Кварц8 МГц1
R1
Резистор390 Ом1
R2
Резистор100 Ом1
R3, R4, R6, R7
Резистор10 кОм4
R5
Резистор3.3 кОм1
R8, R9
Резистор22 Ом2
R10
Резистор1 кОм1
C1, C5, C7-C10
Конденсатор0.1 мкФ6
C2, C4
Конденсатор22 пФ2
C3
Электролитический конденсатор220 мкФ1
C6
Электролитический конденсатор100 мкФ1
S1
Кнопка тактовая1
Rel1
Реле5В1
Jmp1
ПеремычкаДжампер1
MOD1
МодульRC5221
X1
РазъемUSB1
любой подходящий — micro, mini, A, BДобавить все

Скачать список элементов (PDF)

Прикрепленные файлы:

Добавить комментарий

Ваш адрес email не будет опубликован.