Как сделать считыватель nfc

11 приложений для создания NFC-меток

Для себя я так и не придумал реального применения NFC-меткам. Несмотря на это, я отлично понимаю потенциальную пользу этой технологии, и мне всегда интересно почитать про её использование.

Правда, в этой статье речь пойдёт немного о другом. А именно о приложениях, с помощью которых можно запрограммировать NFC-метку. По сути, они все делают одно и то же, и особой разницы между ними нет. А на iOS так вообще всё работает «из коробки».

NFC Tools (Windows, macOS, Android, iOS)

1

NFC Tools — одно из первых приложений, которое приходит на ум. С его помощью можно читать, записывать и программировать NFC- и RFID-совместимые метки.

Всё работает довольно просто. Запускаете приложение, прикладываете метку, задаёте нужные действия. Кроме простой записи информации, NFC Tools позволяет запрограммировать автоматизацию рутинных действий: включить Bluetooth, установить будильник, изменить громкость, передать конфигурацию Wi-Fi и многое другое.

На вкладке «Чтение» можно узнать такую информацию о метке, как:

А на вкладке «Запись» все вышеперечисленные пункты можно добавить на метку.

NFC TagWriter (Android)

image 72

NFC TagWriter поможет записать на метку контакты, закладки, геолокацию, данные о Bluetooth Handover, email, текстовые сообщения и многое другое.

Кроме записи, поддерживается чтение и просмотр данных, запуск сопутствующего приложения.

У разработчиков также есть NFC TagInfo, которое служит для чтения всех данных, хранящихся на метках, включая транспортные билеты и тому подобные вещи.

TagXplorer (Windows)

1 1

TagXplorer сделан теми же ребятами, что делали приложения выше. И, по сути, является их аналогом, но для Windows-платформы. Поэтому отдельно рассказывать про софтину не буду.

Smart NFC (iOS)

image 73

Как и аналоги, Smart NFC может читать и записывать NFC-метки. На метку можно добавить любой из поддерживаемых технологией тегов.

Если вы iOS-пользователь, то именно с этого приложения стоит начать.

NFC Assistant (Android)

image 74

NFC Assistant нужен для выполнения различных действий при распознавании метки. Приложение умеет:

NFC.

Mifare Windows Tool (Windows)

73377680 b0c35700 42bf 11ea 8002 4fda409fd045

Не обращайте внимания на скриншот, в приложении есть английский язык.

Mifare Windows Tool — хоть и простая утилита, но она будет интересна опытным любителям NFC-технологии. С её помощью можно читать, записывать, анализировать и даже клонировать метки.

Если вы знаете хотя бы базово спецификацию MIFARE Classic, и знаете, как применить эти знания, обратите внимание на Mifare Windows Tool.

MIFARE DESFire EV1 NFC Tool (Android)

image 75

Если у вас под рукой есть карта формата MIFARE DESFire EV1, то вам нужно это приложение, чтобы получить с неё информацию. Поддерживаются типы шифрования AES, (3)DES и 3K3DES.

Tx Systems Contactless ID Reader (Windows)

tx systems contactless id reader 722464 full

Сразу хочу сказать, что утилита платная ($49,95), и, судя по всему, она больше не поддерживается разработчиком. Хотя купить её можно без проблем.

Tx Systems Contactless ID Reader — Windows-приложение для чтения информации с большинства RFID-совместимых карт. Благодаря технологии эмуляции клавиатуры полученную информацию можно вывести на курсор мыши Windows.

Если честно, я не понял, зачем это нужно. Судя по всему, это упрощает работу с RFID-картами и системами безопасности без необходимости закупки оборудования.

Read-a-Card (Windows)

read a card 120199 full

Ещё одно платное и специфическое приложение. Оно необходимо для получения информации с RFID-метки и передачи её в специализированный софт для дальнейшей работы.

Поддерживается чтение прямо с карты или с помощью соответствующих устройств.

IDTransfer (Windows, Linux)

config utilisateurs 1

IDTransfer из той же «оперы», что и два приложения выше. С его помощью можно произвести авторизацию пользователя по RFID-карте в системе. Однако здесь вам понадобится отдельный USB-считыватель карт.

Mifare Classic Tool (Windows)

apps.46474.13733694428898151.8a5e37a6 197f 49ba 8152 2e3f0cc71f20

Mifare Classic Tool — очень простая утилита для Windows. Она поможет считать информацию с UID или Mifare карт, записать на них информацию или заменить ключи.

Источник

Используем NFC для автоматизации

Содержание статьи

9 сентября компания Apple анонсировала смартфоны iPhone 6 и iPhone 6 Plus, одной из особенностей которых стал чип NFC и основанная на нем технология Apple Pay. В презентации основной упор был сделан на возможность бесконтактной оплаты покупок с помощью смартфона, однако на самом деле возможности NFC на этом не заканчиваются и уже давно и успешно используются в Android-смартфонах для выполнения множества разных задач, начиная от оплаты поездки в метро и заканчивая автоматизацией смартфона.

Вместо введения

NFC расшифровывается как Near Field Communication или «ближняя бесконтактная связь», если по-русски. По своей сути это небольшой чип, который может быть встроен в смартфон с целью передачи данных на очень короткие расстояния с весьма мизерной скоростью. NFC очень близка к технологии RFID, которая уже давным-давно используется для пометки продуктов в супермаркетах, но базируется на ее более позднем стандарте ISO/IEC 14443 (смарт-карты) и спроектирована для использования в переносной электронике (читай: смартфонах) и выполнения безопасных транзакций (читай: оплаты покупок).

Как и в случае со стандартом ISO/IEC 14443, дальность действия NFC всего 5–10 см, но разница в том, что чип NFC способен выполнять функцию тега и считывателя одновременно. Другими словами, оснащенный NFC смартфон может быть как смарт-картой (картой метро, например), которую достаточно поднести к считывателю, чтобы расплатиться, так и самим считывателем, что можно использовать, например, для перевода средств между картами-смартфонами и превращения реальных карт с поддержкой стандарта ISO/IEC 14443 в виртуальные.

Но это только «одно из» и наиболее очевидное применение NFC. Благодаря тому, что чип NFC способен передавать данные в обе стороны и не требует аутентификации устройств, его можно использовать как простую и более удобную замену Bluetooth. С помощью NFC, например, можно делиться ссылками, паролями, контактными и другими данными между смартфонами, просто поднеся их друг к другу.

Появившаяся в Android 4.0 технология Beam еще больше расширяет границы применения NFC, позволяя быстро переносить между устройствами целые файлы и папки, что достигается с помощью предварительной аутентификации Bluetooth-устройств по NFC и последующей установки Bluetooth-соединения и отправки файлов. Как и в предыдущем случае, все, что требуется для передачи, — просто поднести телефоны друг к другу. В прошивках Samsung эта функция носит имя S-Beam и позволяет использовать в качестве «транспортного канала» не только синезуб, но и Wi-Fi (один из смартфонов превращается в точку доступа).

Еще одна возможность — использование пассивных NFC-тегов. Такие теги в виде небольших наклеек можно приобрести за полдоллара за штуку и перепрограммировать с помощью смартфона. Каждый из них может вмещать в себя 137 байт информации (в случае самого распространенного и дешевого тега Mifire Ultralight C), для считывания которой опять же достаточно просто поднести смартфон. В тег можно записать пароль от домашнего Wi-Fi и приклеить на роутер. Или кодовое слово, на которое будет реагировать смартфон. Можно организовать автоматический запуск навигатора при установке смартфона в держатель в автомобиле или включение бесшумного и энергосберегающего режимов, когда телефон находится на прикроватной тумбочке. Небольшой список покупок в 137 байт тоже вполне вместится.

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

Поддержка в смартфонах

Первым телефоном с интегрированной поддержкой NFC был Nokia 6131, выпущенный еще в 2006 году. Тогда встроенный NFC-чип был всего лишь игрушкой для демонстрации возможностей созданной два года назад технологии. Смартфон был оснащен софтом для считывания NFC-меток, но ввиду их тогдашней дороговизны и почти нулевой популярности технологии ни на какое серьезное применение данная особенность смартфона не претендовала.

После некоторого затишья популяризацией NFC занялась компания Google, выпустившая в 2010 году смартфон Samsung Nexus S и приложение Google Wallet, которое позволяло расплачиваться виртуальными кредитками, используя NFC. На следующий год Google стала ведущим участником NFC Forum и представила Android 4.0 и основанный на нем смартфон Samsung Galaxy Nexus, который теперь мог похвастаться наличием той самой функции Beam. Позже появился Nexus 4, и наконец начали подтягиваться другие производители.

Играем с тегами

Где взять теги? Как я уже сказал, самый простой вариант — это просто заказать их в Китае (dx.com, tinydeal.com, aliexpress.com). Самые дешевые теги в лице Mifire Ultralight C со 137 байтами памяти обойдутся примерно в пять долларов за десять штук. Также можно обзавестись фирменными тегами от Sony (SmartTags), однако кроме внешнего вида и цены, которая будет в три-пять раз выше, они ничем не отличаются. Еще один вариант: теги TecTile от Samsung с еще более высоким ценником, но и большим объемом памяти (716 байт). Но тут нужно быть осторожным, первая версия тегов совместима только с NFC-контроллером от NXP, так что с большинством смартфонов они работать не будут.

В качестве тега вполне можно использовать жетоны и карты метро для многократных поездок. Зачастую часть памяти в них остается свободной для записи, так что туда можно поместить любую инфу. Но даже если это не так, тег все равно можно использовать в качестве триггера действий, просто настроив реакцию смартфона на уникальный ID тега.

Без дополнительного софта в мобильных ОС есть лишь ограниченная поддержка «общения» с тегами. Тот же Android вообще не предлагает никаких средств для работы с ними. Все, что можно сделать, — это просто поднести тег к смартфону, чтобы последний его прочитал. В зависимости от типа записанных в тег данных смартфон может вывести эти данные на экран (тип «текст» или не поддерживаемый), открыть веб-страницу (тип URI), запустить приложение (специальный тип android.com:pkg, поддерживаемый только в Android), открыть номеронабиратель с указанным номером (тип URI «tel://») и выполнить некоторые другие действия.

Средств для изменения самих тегов или поведения смартфона в ответ на их обнаружение в Android нет, поэтому нам придется обзавестись дополнительным софтом. Три приложения, которые мы будем использовать:

NFC TagInfo

Для начала разберемся, что за теги нам достались. Китайцы обычно никаких подробностей на этот счет не сообщают, а уж о картах метро я вообще молчу. Запускаем NFC TagInfo и подносим смартфон к тегу. Далее тапаем по пункту Tag Information и смотрим (скриншот «Читаем NFC-тег»), что мы имеем:

Хакер #190. Что скрывает Tor?

Теперь возвращаемся обратно и переходим в меню NDEF information. NDEF — это один из стандартов NFC, который описывает формат хранения информации в памяти тегов и ее передачи считывателю. Тег может содержать несколько NDEF-сообщений, каждое со своим идентификатором и типом, по которому смартфон может определить, как интерпретировать содержащиеся в нем данные. Тип задается в формате URI, MIME или домен:сервис, если речь идет о каком-то специфичном для считывателя типе (например, тот самый android.com:pkg).

В меню NDEF information нас в первую очередь интересуют строки Maximum message size (полезный объем тега), Is tag writable (поддержка записи) и Can tag be write-protected (поддержка защиты от записи). Последняя опция позволяет заблокировать запись тега для всех устройств, кроме нашего. Кроме того, тег можно заблокировать навечно, так, чтобы его больше никогда нельзя было записать. В этом случае в предпоследней опции будет указано no.

Что внутри тега?

С технической точки зрения NFC-тег — это микрокомпьютер наподобие тех, что находятся внутри SIM и банковских карт. Здесь есть свой процессор, оперативная и постоянная память, но нет традиционного источника питания. Электрический ток он получает посредством электромагнитной индукции, которая возникает между антеннами считывателя и метки, так же как это происходит в беспроводных зарядных устройствах и пассивных радиоприемниках. Благодаря сверхмалому уровню потребления энергии, мощности такого «трансформатора» оказывается вполне достаточно для нормального функционирования микрокомпьютера.

Антенна занимает около 99% площади метки и передает данные на частоте 13,56 МГц со скоростью 106, 212, или 424 Кбит/с. Стандарты NFC определяют несколько протоколов передачи данных, в том числе несколько реализаций протокола обмена данными (они обозначаются буквами A, B и так далее), которые могут быть дополнены производителем самой метки. Например, метки семейства Mifare реализуют ряд расширений над стандартным протоколом, из-за чего можно поймать несовместимости между приложениями и меткой (но это редкость).

Безопасность данных обеспечивается несколькими путями:

Ведущий производитель NFC-тегов — компания NXP Semiconductors. Они производят теги семейства Mifare, которые стали настолько популярны, что совместимость с ними обеспечивают не только другие производители тегов, но и производители NFC-чипов для смартфонов (на уровне эмуляции тегов). Семейство включает в себя несколько разных моделей, начиная от простейших Mifare Ultralight C и заканчивая Mifare DESFire EV1, имеющих встроенную файловую систему с поддержкой криптографии и гибко настраиваемыми правами доступа.

Переходим в меню NDEF message. Если тег содержит какие-либо данные, все они будут отображены здесь с разбиением на сообщения. Остальные опции NFC TagInfo позволяют просмотреть информацию о памяти тега: фактический объем, дамп в форматах HEX и ASCII, права доступа к страницам памяти и так далее. Рекомендую вернуться к этим опциям после записи в тег данных.

Пишем данные

Для записи данных будем использовать NFC TagWriter. Пользоваться приложением довольно просто. Запускаем, тапаем по пункту Create, write and store, выбираем New, далее выбираем тип записываемых данных. Наиболее полезные типы: контакт, простой текст, телефонный номер, данные для Bluetooth-соединения, URI и приложение. В списке есть даже закладка веб-браузера и email-сообщение, но для чего они нужны, не совсем понятно.

tagwriter Главный экран NFC TagWriter

Далее заполняем необходимые поля (например, адрес веб-сайта в случае с URI), нажимаем Next и попадаем на экран опций (скриншот «NFC TagWriter: опции сообщения»). Здесь можно указать приложение, которое будет запущено после прочтения метки (Add launch application) и установить защиту на перезапись сторонним устройством (Apply Soft Protection). Также приложение позаботится о том, чтобы проинформировать нас о моделях тегов, способных вместить эти данные (в данном случае все ОK, NTAG203 в списке есть).

tagwriter2 NFC TagWriter: опции сообщения

Вновь нажимаем Next и подносим смартфон к тегу. Вуаля, наши данные в нем. Теперь их можно прочитать любым смартфоном с поддержкой NFC. Но что это в конечном итоге дает?

Сценарии использования

На самом деле сценариев использования тегов масса. Я, например, применяю теги для хранения паролей и домашней автоматизации, кто-то для автоматической разблокировки смартфона и автоматического запуска навигатора в автомобиле. Теги можно клеить на стол, на ноутбук, на брелок, внутрь книги, на визитку или вшивать под одежду. Поэтому диапазон их применения огромен, и в конечном счете все упирается только в твою фантазию.

Домашняя автоматизация

Наиболее простой и очевидный способ использования тегов — это просто расклеить их по дому с целью получить своего рода систему автоматизации. Здесь существует множество различных вариантов. Приведу наиболее интересные и полезные.

Автомобильная автоматизация

NFC-теги будут очень полезны тем, кто использует смартфон в качестве автомобильного навигатора. Достаточно наклеить тег на держатель смартфона и записать в него инструкцию для запуска навигатора — и вуаля. Все стало намного проще. Тем не менее я бы рекомендовал пойти несколько другим путем и усложнить настройку, добавив к ней автоматическое включение Bluetooth (для гарнитуры), GPS и отключение Wi-Fi.

Теперь после установки смартфона в держатель мы получим полностью настроенный для использования в автомобиле смартфон.

Разблокировка смартфона

У Motorola есть довольно интересный аксессуар для смартфонов под названием Motorola Skip. Это клипса на одежду для быстрой разблокировки смартфона без необходимости введения PIN-кода или графического ключа. Аксессуар в некоторых случаях довольно полезный, но работает он только со смартфонами той же компании. К счастью, аналогичную штуковину можно собрать на коленке.

Не буду рассказывать, как сделать саму клипсу, — тут каждый волен проявить свою фантазию, NFC-тег можно и на руку наклеить, — а вместо этого скажу, как настроить разблокировку смартфона при ее касании. Есть несколько способов, но самый простой и эффективный — это Xposed-модуль NFC LockScreenOff Enabler. Модуль, как и сам Xposed, требует root, но зато кроме эффективного решения задачи включает в себя суперфункцию — активацию NFC при выключенном экране.

Дело в том, что в целях безопасности Android запрещает использовать NFC до тех пор, пока экран не будет разблокирован (не просто включен, а именно разблокирован), что сводит на нет многие эффективные приемы его использования. NFC LockScreenOff Enabler решает эту проблему.

nfc lockscreen NFC LockScreenOff Enabler: разблокировка NFC-тегом

Визитка

NFC-теги можно использовать в комбинации с визитками. На рынке есть несколько компаний, которые занимаются их выпуском, однако их ценники таковы, что проще самостоятельно наклеить теги на обыкновенные визитки, и в кармане еще останется куча денег. В тег можно записать любую информацию, включая контактные данные (TagWriter поддерживает такой формат), адрес веб-сайта или даже географические координаты своего офиса (смартфон автоматически откроет карты для показа положения). А самое главное — визитку совсем не обязательно отдавать человеку, достаточно, чтобы он ее отсканировал.

Включение компа

Это своего рода развитие идеи тегов на системнике и ноутбуке. Идея в том, чтобы создать настройку, которая позволит включать комп c помощью NFC-тега без учета того, где находится сам тег. Его, например, можно приклеить в прихожей, так что включить машину можно будет еще до того, как ты снимешь обувь. Метод основан на функции WoL, позволяющей включать комп с помощью отправки пакетов на Ethernet-порт, и Android-приложении Wol Wake on Lan Wan, которое делает это через интернет.

Как настроить? Для начала открываем панель управления роутером и настраиваем проброс портов 7 и 9 (порты WoL) на нашу домашнюю машину. Очень важно указать MAC-адрес вместо IP, так как последний может быть отдан другому устройству. Далее идем на noip.com, регистрируемся и получаем бесплатный домен, который мы будем использовать, чтобы достучаться до роутера извне. В том случае, если у тебя есть статический IP, этот шаг можно пропустить.

Это все. Если все настроено правильно, то при обнаружении тега Android отдаст управление Trigger, он, в свою очередь, запустит Tasker-задачу, которая активирует нужный нам профиль в приложении Wol Wake on Lan Wan, оно отправит WoL-пакет роутеру, а тот перенаправит его на MAC-адрес компа, сетевая карта которого. Ну да ладно. В общем, все просто должно работать :).

Выводы

Технология NFC имеет массу применений, и я уверен, что уже через пять лет NFC-метки и терминалы оплаты будут повсюду, от рекламных плакатов до супермаркетов. И я надеюсь, что хоть в этот раз Россия не отстанет от всего мира на пятьдесят лет.

Evgenij Zobnin 1

Евгений Зобнин

Редактор рубрики X-Mobile. По совместительству сисадмин. Большой фанат Linux, Plan 9, гаджетов и древних видеоигр.

Источник