Вход в windows по rfid

Как известно, компьютеры были изобретены в 1871 году, но только в 1961 году контроль доступа к ним (ПК) начали осуществлять с помощью пароля. В настоящее время кроме буквенно-цифровых паролей доступно и множество новых, появившихся сравнительно недавно, способов идентификации: с помощью жестов, отпечатка пальца, распознавания лица и многое другое.

Внешний вид проекта по входу в Windows с помощью Arduino и радиочастотной идентификации (RFID)

В этой статье мы рассмотрим как разблокировать компьютер, работающий на операционной системе Windows, с помощью платы Arduino и меток RFID (Radio Frequency Identification — радиочастотная идентификация). К компьютеру будут подключены плата Arduino и считыватель RFID меток и чтобы разблокировать компьютер нужно будет всего лишь поднести «правильную» радиочастотную метку к считывателю RFID меток.

На нашем сайте вы можете посмотреть все проекты, в которых используется радиочастотная идентификация.

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. RC522 RFID reader (считыватель радиочастотных меток) (купить на AliExpress).
  3. RFID метки.
  4. USB кабель.
  5. Соединительные провода.

Реклама: ООО «АЛИБАБА.КОМ (РУ)» ИНН: 7703380158

Считыватель RFID меток RC522

Сейчас на рынке доступно достаточно много моделей считывателей RFID меток, однако для нашего проекта мы выбрали модуль RC522, работающий по интерфейсу SPI. Это достаточно дешевое устройство, доступное для покупки практически во всех магазинах радиоэлектроники. Модуль RC522 имеет интерфейсы SPI, UART и I2C, однако по умолчанию он использует интерфейс SPI. Внешний вид данного модуля показан на следующем рисунке.

Внешний вид модуля RFID RC522

В этом проекте модуль RC522 подключен к плате Arduino, а плата Arduino подключена к компьютеру. Когда RFID метку подносят к модулю RC522, плата Arduino с его помощью считывает идентификатор RFID метки (ID number) и передает его в компьютер.

Схема проекта

Схема подключения считывателя RFID меток RC522 к плате Arduino представлена на следующем рисунке.

Схема подключения считывателя RFID меток RC522 к плате Arduino

Поскольку RFID модуль RC522 работает по интерфейсу SPI, то подключить его к плате Arduino достаточно просто – мы соединили его контакты MISO, MOSI, SCK и NSS к контактам SPI платы Arduino Uno. Модуль RC522 запитывается от контакта 5V платы Arduino. Сама же плата Arduino получает питание по USB кабелю от компьютера. Полный список соединений в схеме представлен в следующей таблице.

Модуль RC522 Плата Arduino Uno
VCC 3.3V
GND GND
RST D9
MISO D12
MOSI D11
SCK D13
SDA/NSS D10

Внешний вид собранной конструкции проекта показан на следующем рисунке.

Внешний вид собранной конструкции проекта

После сборки схемы проекта подключите плату Arduino к компьютеру. Определите COM порт компьютера, к которому подключилась плата Arduino – это можно сделать либо с помощью диспетчера устройств Windows, либо с помощью Arduino IDE как показано на следующем рисунке. В нашем случае плата Arduino оказалась подключенной к COM порту под номером 1.

Определение COM порта с помощью Arduino IDE

После этого в плату Arduino необходимо загрузить код программы для работы с модулем RC522 – он приведен в конце статьи. После загрузки кода программы в плату откройте окно монитора последовательной связи (serial monitor). Затем прислоните RFID метку к модулю RC522, после чего вы увидите в окне монитора последовательной связи 5 значений. Эти значения необходимо скопировать себе в «укромное место» и закрыть окно монитора последовательной связи. Полученные нами значения показаны на следующем рисунке.

Полученные нами значения RFID

После этого скачайте каталог с настройками RFID (rfid_configuration folder) по следующей ссылке — rfid_configuration ZIP file. По этой ссылке вы скачаете ZIP архив, в котором будет 4 файла.

После распаковки ZIP архива зайдите в нем в каталог с именем 32 bit или 64-bit в зависимости от того 32 или 64-разрядная у вас операционная система. В этом каталоге откройте текстовый файл RFIDcredentials.txt. Вставьте в него свои значения из окна монитора последовательной связи (которые вы получили ранее) и обновите (укажите свои) имя пользователя (user name) и пароль (password). Если вы хотите добавить две карты для входа в операционную систему, то заполните и вторую строчку в файле RFIDcredentials.txt как показано на следующем рисунке.

Редактирование файла RFIDcredentials.txt

После этого сохраните и закройте этот файл. Затем откройте из этой же папки файл RFIDCredSettings, измените в нем номер COM порта, к которому подключена плата Arduino, на свой, сохраните и закройте этот файл. Остальные значения в файле не меняйте.

Теперь скопируйте все 4 элемента нашего каталога, которые вы извлекли из скачанного ZIP архива и изменили в них часть значений на свои, в каталог C:\Windows\System32. Если система потребует подтверждения этой операции – подтвердите ее.

Копирование необходимых файлов в системный каталог Windows

Теперь запустите файл реестра (register file) чтобы внести изменения в реестр. При этом, скорее всего, вы на своем экране увидите примерно следующее диалоговое окно:

Предупреждение Windows о рисках при внесении изменений в реестр

Нажмите «yes», затем «ok». После этого осуществите выход из системы и вы увидите что в систему был добавлен еще один пользователь – с именем RFID.

В системе появился еще один пользователь - с именем RFID

Вход в учетную запись этого пользователя теперь можно будет осуществлять с помощью RFID карт/меток. То есть никакого пароля на вход в систему вводить уже не будет нужно – достаточно будет всего лишь прислонить RFID метку к RFID считывателю и вход в систему произойдет автоматически.

Объяснение программы для Arduino

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

Первым делом в программе нам необходимо подключить заголовочные файлы всех используемых библиотек и определить контакты для RFID RST_PIN и SS_PIN. Если в вашей Arduino IDE еще нет библиотеки для работы с модулем RC522 (mfrc522 library), то вы можете скачать ее по следующей ссылке — MFRC522 Arduino Library. После скачивания библиотеку необходимо добавить в вашу Arduino IDE.

#include <SPI.h>

#include <MFRC522.h>

#define RST_PIN    9

#define SS_PIN     10

MFRC522 mfrc522(SS_PIN, RST_PIN);

MFRC522: : MIFARE_KEY;

Затем в функции void setup мы инициализируем последовательную связь со скоростью 9600 бод и связь по интерфейсу SPI со считывателем RFID меток.

void setup()

{

serial.begin(9600);

while(!Serial);

SPI.begin();

mfrc522.PCD_Init();

for(byte i = 0; i < 6; i++)

Key.KeyByte[i] = 0xFF;

serial.print(‘>’);

}

После этого в функции void loop() мы будем ждать когда к считывателю прислонят RFID карту.

void loop()

{

if( ! mfrc522.PICC_IsNewCardPresent() )

   return;

if( ! mfrc522.PICC_ReadCardSerial() )

   return;

send_tag_val (mfrc522.uid.uidByte, mfrc522.uid.size);

delay(1000);

}

Если карта будет найдена, то произойдет вызов функции send_tag_val, которая передаст данные из RFID метки в компьютер с помощью порта последовательной связи. Эти данные в компьютере будут сравниваться с данными, которые мы ранее сохранили в файле – при их совпадении будет осуществлен вход (разблокировка) в систему.

void send_tag_val (byte *buffer, byte buffersize)

{

   serial.print(«ID»);

   for (byte i = 0; i < buffersize; i++)

{

   serial.print(buffer[i], DEC);

   serial.print(» «);

}

   serial.printIn(0, DEC);

    serial.print(‘>’);

}

Более подробно работа проекта показана в видео, приведенном в конце статьи.

Исходный код программы (скетча)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

#include <SPI.h>

#include <MFRC522.h>

#define RST_PIN         9  

#define SS_PIN          10

MFRC522 mfrc522(SS_PIN, RST_PIN);

MFRC522::MIFARE_Key key;

void setup()

{

    Serial.begin(9600);

    while (!Serial);  

    SPI.begin();      

    mfrc522.PCD_Init();

    for (byte i = 0; i < 6; i++)

        key.keyByte[i] = 0xFF;

    Serial.print(‘>’);

}

void loop()

{

    if ( ! mfrc522.PICC_IsNewCardPresent())

        return;

    if ( ! mfrc522.PICC_ReadCardSerial())

        return;

    send_tag_val(mfrc522.uid.uidByte, mfrc522.uid.size);

    delay(1000);

}

void send_tag_val(byte *buffer, byte bufferSize)

{

    Serial.print(«ID:»);

    for (byte i = 0; i < bufferSize; i++)

    {

        Serial.print(buffer[i], DEC);

        Serial.print(» «);

    }

    Serial.println(0, DEC);

    Serial.print(‘>’);

}

Видео, демонстрирующее работу проекта

Загрузка…

4 569 просмотров

Есть компьютер с Windows 7/8/10 с подключенным считывателем карт (например таким: IronLogic Z-2 USB). Нужно сделать так, чтобы при прикладывании карты выполнялся вход в систему, то есть каждой карте соответствует учетная запись. Пробовал гуглить, но находит только методы, работающие со смарт-картами, хранящими сертификаты. Карты Mifare, EM-Marine и HID, хранят только уникальное число, а не сертификат. Можно ли это сделать, желательно средствами самого Windows, без дополнительных программ?


  • Вопрос задан

  • 9058 просмотров

Бесконтактные RFID-идентификаторы стандарта Em-Marine, получившие широкую популярность благодаря своей невысокой стоимости, нашли на сегодняшний день широкое применение в системах контроля и управления доступом (СКУД) пользователей на охраняемую территорию и в рабочие помещения предприятий.

Учитывая огромное желание держателей таких бесконтактных пропусков иметь возможность авторизации в операционной системе Windows по этим же RFID-идентификаторам, компания SafeJKA SRL пошла на встречу и добавила поддержку бесконтактных карт, браслетов и брелоков Em-Marine в приложение Rohos Logon Key.

Благодаря этой новинке пользователям систем физического доступа стал доступен процесс авторизации в операционной системе Windows по тем же бесконтактным идентификаторам стандарта Em-Marine, по которым его владелец осуществляет проход через турникет, входит в помещения или въезжает на охраняемую территорию.

В данном обзоре будет рассмотрен процесс настройки Rohos Logon Key для совместной работы с картами, браслетами и брелоками стандарта Em-Marine. Для осуществления настройки понадобятся как вышеперечисленные бесконтактные идентификаторы, так и средство их чтения — считыватель модели КСУ-125-USB.

Приступим непосредственно к настройке:

  • Первым делом необходимо установить на компьютере приложение Rohos Logon Key. Описание процедуры установки вы найдете по этой ссылке
  • Подключаем считыватель КСУ-125-USB к компьютеру
  • Настраиваем считыватель для работы с Rohos Logon Key по этой инструкции

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 1

  • Для продолжения настройки приложения открываем окно программы Rohos Logon Key и выбираем пункт «Настроить Опции»

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 2

  • Для указания считывателя в открывшемся окошке выбираем пункт «Тип устройства которое будет использовано в качестве Ключа»

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 3

  • Выбираем строку «RFID Readers. Easyident/Addimat/KCY/pcProx» для совместной работы Rohos Logon Key со считывателем КСУ-125-USB

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 4

  • Далее настроим реакцию Rohos Logon Key на извлечение карты. Для этого выбираем пункт «Если вход в Windows был выполнен с помощью USB Ключа, то при его отключении Rohos может выполнить одно из действий»

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 5

  • Выбираем наиболее популярный вариант — «Заблокировать систему»
  • Если пользователь покинет рабочее место и снимет бесконтактную карту с поверхности считывателя, то произойдет блокировка системы. В процессе работы карта всегда должна находиться в поле действия считывателя

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 6

  • Если нет возможности оставлять идентификатор на считывателе, например, при использовании RFID-браслетов на руку, брелоков на связке с ключами или при использовании бесконтактной карты на ретракторе, то необходимо отметить пункт «Выполнять действие при повторном поднесении Ключа»
  • В таком варианте при первом поднесении к считывателю КСУ-125-USB зарегистрированного бесконтактного пропуска будет производиться авторизация в Windows, при повторном — блокировка системы

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 7

  • Переходим к регистрации пользовательского RFID-ключа
  • В главном окне программы выбираем пункт «Настроить ключ доступа»

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 8

  • Подносим к считывателю бесконтактный пропуск пользователя, которым может быть, например, RFID-карта, браслет на руку, брелок Em-Marine
  • Вводим пользовательский пароль доступа в Windows
  • Для сохранения введенных данных нажимаем кнопку «Настроить USB Ключ»

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 9

  • При корректно введённых данных получаем соответствующее уведомление
  • На этом классический вариант настройки приложения Rohos Logon Key для работы с бесконтактными проксимити идентификаторами стандарта Em-Marine завершён. Теперь вы можете использовать зарегистрированный бесконтактный пропуск для входа в Windows и блокировки системы

Настройка Rohos Logon Key для входа в Windows по картам Em-Marine, рис. 10

Если в процессе настройки Rohos Logon Key для входа в Windows по картам Em-Marine у вас возникли какие-либо вопросы, то можете задать их по электронной почте, либо по телефону, указанному на сайте. Купить программное обеспечение Rohos Logon Key, бесконтактные карты Em-Marine и считыватели КСУ-125-USB вы можете в нашей компании, отправив нам заявку удобным вам способом.


Ввод пароля пользователя при входе в windows по RFID карте.
Блокировка — Разблокировка компьютера на Операционной системе Windows.
Доступ по карте.

Всем привет!
У кого стоит пароль для доступа к системе тот меня поймёт. Сколько раз в день приходится вводить этот ненавистный пароль. Но теперь это в прошлом. К нам на помощь пришла технология, и эта технология RFID. 
Теперь можно Блокировать и разблокировать компьютер всего лишь приложив карту к считывателю.
Это уже не первый проект про RFID кому интересно может посмотреть все примеры, а также теорию в этих видео, а мы продолжаем.

Давайте сначала посмотрим что и как, а потом я расскажу как это сделать. Это оказывается совсем не сложно.
Извиняюсь за качество съёмки, но по другому у меня не получилось.
Для того чтобы заблокировать компьютер достаточно просто поднести карту к считывателю и он сам заблокируется. Теперь не надо  нажимать волшебные три кнопки, CTRL+ALT+DEL. Надо просто поднести карту.
Разблокировать так же просто. Надо снова поднести карту и вы опять в системе. 

Теперь я расскажу как это сделать.
Для начала о грустном. Не каждая Ардуина может с этим справиться.
Нам понадобится Ардуина с чипом ATmega32U4.
К таким платам подходят 

  • Arduino Micro

  • Arduino Pro Micro

  • Arduino Leonardo

Сразу говорю, что Arduino Uno, Mega 2560, Pro Mini или Arduino Nano не подойдут. Оказалось. что подойдут, но об этом я узнал после того как уже снял это видео. 

В своём проекте я использовал Arduino Micro, поэтому и буду рассказывать про неё.
Вот схема подключения RFID к Ардуине. Она не сильно от обычных схем. Всё также надо подключить считыватель по SPI шине, просто здесь они расположены не в том месте как мы привыкли.
RFID питается от 3,3 вольт, поэтому мы сразу его подключим к выходу 3,3 вольта на Ардуино.
Куда подключать остальные контакты можно посмотреть на схеме.

 
Arduino Leonardo/Micro с чипом ATmega32U4 имеет встроенную USB — связь. Это позволяет им отображаться на подключенном компьютере в виде мыши или клавиатуры.

Теперь рассмотрим код скетча.
Для работы нам надо будет использовать библиотеку keyboard.h, чтобы arduino  смогла обрабатывать нажатия клавиш на подключенном компьютере. Значит установим её. Как обычно идём в менеджер плат  вводим нужную библиотеку. После того как система найдёт её, то устанавливаем. Так как у меня она уже установлено, то я этот момент пропущу.
Так как мы используем Ардуино Микро, то нам надо её выбрать. Идём в менеджер плат, ищем Ардуино Микро и выбираем её для работы.
Теперь надо выбрать на каком она COM порту. У меня она на COM порту 7, у вас будет на другом. Выбираем порт и прошиваем Ардуино.
После того как Ардуино прошьётся у вас появится новое устройство. Заходим в Параметры системы и видим, что в пункте мышь, клавиатура и перо появилось устройство Ардуино Микро со значком клавиатуры. Это значит, что она может работать как клавиатура. В следующих видео я покажу ещё несколько примеров как использовать Ардуино в качестве клавиатуры и как с её помощью автоматически вводить пароли в разные системы, например соцсети или для входа в другие системы.

Для работы нам нужно знать UID карты. Для этого заходим в примеры и открываем пример DUNPINFO. Загружаем его и прошиваем Ардуино. Подносим карту к считывателю и ждём когда скачаются все блоки карты. Можно конечно не ждать до конца, ведь номер карты считывается первым, но лучше проделать считывание полностью.
Если вы используете скетч из архива, то вам надо будет в примере изменить номера выходов Ардуино на 5 и 10.
Копируем номер карты и вставляем его в пример скетча и убираем все пробелы. 
Если у вас не установлен пароль для входа или вы хотите создать нового пользователя и разрешить ему доступ только по карте, тогда идём в Параметры системы.
Выбираем вкладку Учётные записи. Я не буду создавать другого пользователя, а присвою пароль администратору, то есть себе.
Выбираем параметры входа и нажимаем на пароль. Здесь надо заполнить все поля. Пароль я сделаю простой, 1 2 3 4 5 6 7.  После нажимаем готово и переходим обратно в скетч.
Теперь рассмотрим скетч. Он совсем простой.
Всё что вам надо изменить в скетче это пины, если вы установили свои и номер UID и Пароль для входа в WINDOWS. Для этого я создал строковые переменные вот в них и надо прописать значения.
При тестировании скетча я выяснил, что UID карты должен быть записан маленькими буквами, большими у меня не заработал.

Теперь объясню работу кода.
После того как вы подносите карту к считывателю считывается номер карты. Дальше есть два варианта.
Первый.
Если Windows находится в заблокированном состоянии, нажатия клавиш для ее блокировки не будут иметь никакого эффекта, и команда разблокирует заблокированный компьютер. Для этого в поле будет введён пароль из переменной и нажата кнопка Enter.
Если компьютер разблокирован, то с помощью этого кода он заблокируется.
Код разблокировки также поступает одновременно, но, поскольку между нажатиями клавиш блокировки и разблокировки есть лишь небольшая задержка, Windows переходит к выполнению команды блокировки и не будет считывать команду кода разблокировки, поступающую в это время.

Теперь небольшое уточнение.
Для правильной работы на экране недолжно уже быть выведена поле для заполнения пароля, так как это должна сделать программа. Если поле будет выведено, то код снова попытается его создать и будет ошибка ввода пароля.
У меня так было в первой версии кода, но теперь я вроде всё исправил.
Вот так выглядит не правильная работа.
Поле уже создано и пароль не принимается. Для устранения этого можно просто нажать ENTER, поле пропадёт и скетч продолжит правильную работу. При последних тестированиях у меня таких проблем больше не возникало.

Как я раньше уже говорил, можно собрать пример и на других платформах Ардуино, но узнал я об этом уже после того как сделал это видео, так что когда-нибудь я соберу и на Ардуино УНО. Правда у меня её нет в наличии, так что это будет не скоро, а вот ввод пароля в другие системы и работу с клавиатурой я сделаю обязательно и по возможности в ближайшее время, но это всё будет завесить от вашей активности. Я постоянно смотрю какие видео вы чаще всего смотрите и делаю новые исходя из вашего интереса. Так что всё в ваших руках.
Впереди ещё много интересного, так что заходите по чаще, так как на ютубе не всегда корректно работает оповещение о выходе новых видео и вы можете пропустить интересное именно вам видео. 
 

Indeed-Id позволяет использовать одну бесконтактную (RFID) карту для получаения как физического доступа (прохода через турникеты СКУД), так и для логического доступа (к рабочему столу и приложениям). Данное видео демонстрирует беспарольный вход в Windows с помощью карты СКУД.

Читайте еще по теме

Индид запускает Айдентити Клуб для решения задач в области защиты айдентити

Компания «Индид» объявляет о создании Айдентити Клуба – первого профессионального сообщества специалистов в области безопасности айдентити. Клуб объединит экспертов, чтобы углублять знания, совместно генерировать идеи и обмениваться опытом […]

Подробнее

Компания Индид инвестирует в Octopus IdM

Компания «Индид», российский разработчик комплекса решений в области безопасности identity, объявляет о заключении стратегического партнерства с компанией Octopus Identity. Об этом сообщил генеральный директор компании «Индид» Алексей Баранов […]

Подробнее

Интеграция Indeed-Id с Active Directory и 1С

Данное видео показывает один из возможных сценариев работы сотрудника с использованием продуктов Indeed-Id. Сценарий содержит: Вход в Windows по карте СКУД.Блокировка системы при снятии карты со считывателя (при […]

Подробнее

Выполнение требований ГОСТ 57580.1-2017 по защите информации в финансовых организациях

В финансовых организациях и, в особенности, в банковской сфере, огромное внимание уделяют вопросам информационной безопасности. В основном это связано с тем, что “цепочка” от осуществления несанкционированного доступа до […]

Подробнее

Вход в домен по виртуальной смарт-карте с дополнительным подтверждением на смартфоне

Несколько месяцев назад мы рассказали о разработанной нашей компанией технологии виртуальной смарт-карты Indeed AirKey Enterprise, ставшей первой на российском ИБ-рынке технологией сетевой виртуальной смарт-карты. Напомним, что виртуальная смарт-карта […]

Подробнее

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как включить полный доступ администратора на windows 10
  • Поддерживает ли windows 7 vulkan
  • Windows shadows skyrim se
  • Windows display language russian windows server 2019
  • Enhancements настройка звука windows 10 нету