Технология NFC в смартфоне: что это и как работает? – NFC Эксперт – 30.10.2019

Чтотакое google pay и apple pay?

Сегодня Google Pay, а до февраля 2022 года – Android Pay – это система электронных платежей с мобильных устройств, работающих на Android. С ней работают не только смартфоны, но и планшеты, смарт-часы и другие гаджеты. Количество стран, в которых функционирует сервис, приближается к двадцати. Россия примкнула к ним 23 мая 2022 года, а в числе первых были США, Великобритания и Сингапур.

В основе Android Pay лежит оплата с помощью NFC, который заменяет чип с PIN-кодом или магнитную ленту на банковской карте. Добавить в приложение данные о карте можно двумя способами: ввести их вручную или просто сфотографировать обе стороны карты встроенной камерой смартфона.

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

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

Похожим образом работает и Apple Pay – система мобильных платежей от компании Apple. Она доступна в России с октября 2022 года (а вообще почти в 30 странах мира) на смартфонах iPhone 6 и старше. Как и в случае с Google Pay, здесь используется технология «ближней бесконтактной связи», а принцип действия обеих систем идентичен за исключением нескольких деталей.

С высокой вероятностью технология NFC будет развиваться и активно внедряться в нашу жизнь и дальше. Аналитики прогнозируют ее популярность не только как платежного средства, но и как средства распространения информации об объектах культуры, здравоохранения, туризма, а также средства контроля доступа.

А вы уже пробовали использовать NFC в своем смартфоне?

Введение в разработку nfc под android

Android поддерживает NFC с помощью двух пакетов: android.nfc и android.nfc.tech.

Основными классами в android.nfc являются:

NfcManager: Устройства под Android могут быть использованы для управления любыми обнаруженными NFC адаптерами, но поскольку большинство Android устройств поддерживают только один NFC адаптер, NfcManager обычно вызывается с getDefaultAdapter для доступа к конкретному адаптеру.


NfcAdapter работает как NFC агент, подобно сетевому адаптеру на ПК. С его помощью телефон получает доступ к аппаратной части NFC для инициализации NFC соединения.

NDEF: Стандарты NFC определяют общий формат данных, называемый NFC Data Exchange Format (NDEF), способный хранить и передавать различные типы объектов, начиная с MIME и заканчивая ультра-короткими RTD-документами, такими как URL. NdefMessage и NdefRecord – два типа NDEF для определенных NFC форумом форматов данных, которые будут использоваться в коде-примере.

Tag: Когда устройство Android обнаруживает пассивный объект типа ярлыка, карты и т.д., он создает объект типа «метка», помещая его далее в целевой объект и в заключении пересылая в соответствующий процесс.

Пакет android.nfc.tech также содержит множество важных подклассов. Эти подклассы обеспечивают доступ к функциям работы с метками, включающими в себя операции чтения и записи. В зависимости от используемого типа технологий, эти классы разбиты на различные категории, такие как NfcA, NfcB, NfcF, MifareClassic и так далее.

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

Здесь мы используем целевой фильтр для работы со всеми типами информации начиная с TECH_DISCOVERED до ACTION_TECH_DISCOVERED. Файл nfc_tech_filter.xml используется для всех типов, определенных в метке. Подробности можно найти в

. Рисунок ниже показывает схему действий при обнаружении метки.

Другие беспроводные технологии

RFID ушёл на второй план по сравнению с NFC. Bluetooth ещё живёт и развивается, но как долго он будет полезным — неизвестно. Wi-Fi — актуален всегда, тем более вышел Wi-Fi 6. В целом, я Вам советую пересмотреть своё отношение к NFC, если Вы им не пользуетесь.

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

Два года назад был создан новый альянс, который по моим ощущениям, создаст новые возможности для развития технологий в ближайшие 5 лет. UWB Alliance был создан в 2022 году с целью развития технологии сверхширокой полосы и создания стандарта IEEE 802.15.4z.

UWB (Ultra-Wide Band, сверхширокая полоса) — это беспроводная технология связи на малых расстояниях при низких затратах энергии, использующая в качестве несущей сверхширокополосные сигналы с крайне низкой спектральной плотностью мощности.

Использование сверхширокой полосы частот (не менее 500 МГц) позволяет UWB достичь скорости передачи до 480 Мбит/с на расстоянии до 3 м. На расстояниях до 10 м технология позволяет достичь лишь 110 Мбит/с.

Цель стандарта IEEE 802.15 — предложить нижние слои основания сети для сетей типа беспроводных персональных сетей, ориентированных на низкую стоимость, низкую скорость повсеместной связи между устройствами.

Что из этого выйдет, узнаем в ближайшее время.

Таки спасибо за прочтение и всего Вас доброго!

Ещё немного про безопасность

Одним из вариантов хранения учетных данных карты и конфиденциальной информации на смартфоне является Security Element. Мы помним, что SE это физический чип, на который установлены апплеты каких-то приложений с конфиденциальными данными, например, апплет платежного приложения, транспортного и т.д.

Любые конфиденциальные данные, например, данные, связанные с виртуальной картой, которые хранятся в SE, защищены так же, как и на физической бесконтактной карте. Однако есть одно важное отличие. SE постоянно подключен к смартфону и через смартфон к Интернету.

Потенциал для атак намного выше, чем для реальной карты. К данным на обычной карте можно получить доступ, только если она оказывается рядом с бесконтактным считывателем, и только в том случае если бесконтактный считыватель был взломан. Из этого следует необходимость ограничить доступ к апплетам на SE.

И вот, еще одна некоммерческая организация, которая занимается разработкой спецификаций для безопасных цифровых экосистем в США, Global Platform выпустили спецификацию доверенной среды исполнения, или TEE. Эта среда, такой слой между ОС мобильного устройства и SE, в котором обмен данными и командами защищен. Вот тут спецификации Global Platform по криптографическим алгоритмам, системной архитектуре TEE и т.д.

Trusted Execution Environment — доверенная среда исполнения.GlobalPlatform TEE Internal API — внутренний API доверенной среды исполнения. Trusted Core Environment — доверенная среда ядра. Trusted Functions — доверенные функции. TEE Kernel — ядро доверенной среды исполнения.

HardWare secure resources — аппаратные ресурсы безопасности. Hardware Platform — аппаратная платформа. Rich OS — операционная система. GlobalPlatform TEE client API — клиентские API доверенной среды исполнения. Rich OS application environment — основная среда исполнения приложений в операционной системе.

Использование технологии HCEПоследние версии операционной системы Android поддерживают Host Card Emulation или HCE. Использование HCE означает, что команды NFC можно направлять прямо в API, работающее в операционной системе мобильного устройства.

Любая необходимая защита должна быть реализована поверх реализации HCE. Приложение может пересылать команды NFC в любое место, доступное для смартфона. Это делает варианты реализации виртуальной карты практически безграничными — от полностью облачной карты до хранения (части) виртуальной карты в SE.

Поскольку HCE не обеспечивает безопасность, эта технология используется совместно с уже известными TEE и токенизацией. TEE предоставляет сервисы безопасности и изолирует доступ к своим аппаратным и программным ресурсам безопасности от многофункциональной ОС и связанных приложений.

С технологией nfc вы можете оставить наличные деньги и кредитные карты дома. часть 1

Lou Frenzel

Electronic Design

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

Технология NFC

Максимальная дальность связи по технологии NFC составляет около 20 см с эффективным типовым значением 4-5 см, что обеспечивает определенные преимущества в безопасности обмена данными. Используется ближняя зона, в отличие от привычных технологий с дальним радиусом действия.

Поле дальнего радиуса действия включает в себя ортогональные электрические и магнитные поля, которые простираются от антенны за пределы нескольких длин волн. Поведение волн описывается системой уравнений Максвелла, согласно которым магнитные и электрические поля обмениваются энергией и поддерживают друг друга на всем пути следования сигнала. Напряженность поля уменьшается с расстоянием (d) на коэффициент 1/d2.

Поле ближней зоны находится в пределах одной длины волны антенны или меньше. Оно также состоит из магнитного и электрического поля, однако магнитное поле доминирует. Затухание сигнала ближнего поля определяется коэффициентом 1/d6, что делает его гораздо менее применимым.

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

Технология NFC подразумевает оперирование сигналами с глубиной (коэффициентом) ASK модуляции от 10% до 100% в нелицензированном диапазоне частот 13.56 МГц. При передаче двоичных данных, с целью повышения надежности, используется Манчестерский или модифицированный код Миллера.

Скорость передачи данных зависит от метода кодирования и коэффициента модуляции и может быть 106 Кбит/с, 212 Кбит/с или 424 Кбит/с. Некоторые NFC-устройства используют стандарт кодирования NRZ-L (уровень кодирования без возврата к нулю, non-return-to-zero level). Двоичная фазовая манипуляция (Binary phase shift keying, BPSK) является альтернативой при скорости передачи данных 106 Кбит/с. Типовая ширина полосы сигнала ссотавляет ±7 кГц, но может быть увеличена до ±1.8 МГц, в зависимости от метода кодирования и скорости передачи данных.

Следует отметить, что некоторые NFC-устройства поддерживают обмен данными на скорости до 848 Кбит/с, но такие параметры не утверждены принятыми стандартами. Вариант стандарта для более высоких скоростей обмена данными по технологии NFC находится в стадии рассмотрения, и ожидается, что он повысит верхний предел для некоторых приложений до 6.8 Мбит/с.

Устройства, протоколы и режимы работы

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

Стоит отметить, что метки радиочастотной идентификации (RFID) работают таким же образом. Пассивное устройство, получив питание, передает данные активному устройству с использованием нагрузочной модуляции. Нагрузочная модуляция (или модуляция нагрузкой) является одной из форм амплитудной модуляции, определяется как разность между средним максимальным и средним минимальным значениями передаваемого сигнала на частоте 13.56 МГц и подразумевает модуляцию данных на поднесущей частоте 848 кГц, которая, в свою очередь, модулирует основную несущую частоту 13.56 МГц. В результате сформированный сигнал изменяет импеданс контура на приемном устройстве, которое переводит его в амплитудно-модулированный.

Оба устройства, активное и пассивное, используют сигнал с 10% ASK модуляцией и Манчестерским кодированием для скоростей обмена данными 212 Кбит/с и 424 Кбит/с. Активные устройства используют модифицированный код Миллера и ASK модуляцию со 100% глубиной для скорости передачи данных 106 Кбит/с с целью обеспечить надежную инициализацию. На Рисунке 2 изображен стандартный NRZ-L код и варианты NFC-кодирования.

Базовый режим работы является полудуплексным, когда в один момент времени одно устройство передает, а все остальные принимают данные. Одни устройства выступают инициаторами, «прослушивают» канал связи и передают данные, только если отсутствуют другие сигналы. Инициатор ведет опрос других устройств, находящихся рядом с ним. Другие устройства – целевые – «слушают» инициатора и отвечают на его запросы в соответствии с форматом протокола.

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

Множество NFC стандартов, в частности NFC-A, NFC-B и NFC-F, определяют несколько слегка отличающихся технологий передачи данных (Таблица 1). Каждый из них устанавливает различные скорости передачи данных, глубину модуляции, метод кодирования или режим работы. Устройство-инициатор опроса пытается определить специфические режимы работы отвечающих устройств и затем конфигурирует себя на соответствующую технологию для завершения сеанса обмена данными.

Таблица 1. Стандарты NFC, определяющие метод кодирования, модуляцию и скорость обмена данными.

СтандартТип
устройства
КодированиеМодуляцияСкорость
передачи
данных,
Кбит/с
Несущая
частота,
МГц
NFC-AИнициаторКод МиллераASK 100%10613.56
NFC-AЦелевоеМанчестерНагрузочная (ASK)10613.56
848 кГц поднесущая
NFC-BИнициаторNRZ-LASK 100%10613.56
NFC-BЦелевоеNRZ-LНагрузочная (BPSK)10613.56
848 кГц поднесущая
NFC-FИнициаторМанчестерASK 100%212/42413.56
NFC-FЦелевоеМанчестерНагрузочная (ASK)212/42413.56
(без поднесущей)

Кроме того, стандарты NFC определяют четыре основных вида пассивных меток: Тип 1 – Тип 4. Каждый тип имеет различный объем памяти и отвечает требованиям одного из популярных стандартов. Типы 1 и 2 имеют встроенную память 96 Кбайт и от 48 Байт до 2 Кбайт, соответственно, и передают данные на скорости 106 Кбит/с. Типы 3 и 4 работают на скорости 212 Кбит/с или 424 Кбит/с и имеют максимум либо 1 Мбайт, либо 32 Кбайт встроенной памяти.

Далее стандарты определяют формат пакета сообщения, называемый NFC Data Exchange Format (NDEF) для использования в ходе обычной работы. Каждая передача данных называется сообщением, и каждое сообщение включает в себя одну или несколько записей (Рисунок 3). Запись состоит из полезной нагрузки (Payload) и фиксированного заголовка, который имеет идентификатор (Identifier), длину (Length) и тип полей полезной нагрузки (Type). Полезная нагрузка, как правило, представляет собой URL или тип данных, определяемых стандартным файлом типов данных NFC Record Type Definition (RTD).

Стандарты NFC

Большинство базовых стандартов NFC происходит от стандартов, регламентирующих RFID технологию и смарт-карты. Они стали формальными стандартами Международной организации по стандартизации / Международной электротехнической комиссии (ISO/IEC), включая даже те стандарты, которые первоначально разработаны компаниями-участниками:

  • ISO/IEC 14443A (NXP, ранее Philips MIFARE);
  • ISO/IEC 14443B (Infineon);
  • JIS X6319-4 (Sony FeliCA).

Радиочастотная технология NFC регламентируется стандартом ECMA 340 (Европейская ассоциация стандартизации информационно-коммуникационных систем). Он определяет коммуникационный интерфейс и протокол NFCIP-1. ISO/IEC приняли и адаптировали этот стандарт как 18092. Существует также стандарт NFCIP-2, называемый еще ECMA 352, и стандарт ISO/IEC 23917.

NFC Форум, некоммерческая рекламная группа компаний, устанавливает и поддерживает широкий спектр спецификаций стандартов, связанных с NFC. Она также обеспечивает тестирование и сертификационные программы для повышения совместимости NFC устройств. Объединенная группа компаний Europay, MasterCard, American Express и Visa (EMVCo), управляют и поддерживают спецификации для смарт-карт, терминалов продажи и оплаты, банкоматов и связанных с ними устройств.

Безопасность NFC

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

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

«Хотя стандарты NFC уже определены и разработаны, дополнительный прогресс ожидается в инфраструктуре терминалов продажи и оплаты, чтобы полностью реализовать потенциал технологии», – говорит Рон Веттер, член  IEEE Computer Society и основатель компании Mobile Education LLC. «Основной причиной тому является область «мобильных платежей, но и безопасное и конфиденциальное решение проблем клиентов также играет важную роль в том, как быстро будет принята эта технология».

Окончание: Часть 2

Спецификации nfc forum

В июне 2006 года, всего через 18 месяцев после своего основания, Форум официально обрисовал архитектуру технологии NFC. На сегодняшний день Форум выпустил 16 спецификаций. Спецификации предоставляют своего рода «дорожную карту», которая позволяет всем заинтересованным сторонам создавать новые продукты.

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

Например, в спецификации NFC Analog Technical Specification рассматриваются аналоговые радиочастотные характеристики устройства с поддержкой NFC. Эта спецификация включает в себя требования к мощности антенны, требования к передаче, требования к приемнику и формы сигналов (время /частота /характеристики модуляции).

Спецификация NFC Analog 2.0 ввела активный режим связи для обмена данными P2P и технологию NFC-V в режиме опроса. Версия 2.0 обеспечивает полную совместимость с устройствами, соответствующими ISO/IEC 14443 или ISO/IEC 18092.По этим спецификациям существует следующие способы связи для устройств NFC:

NFC-AТип связи NFC-A основан на стандарте ISO/IEC 14443A для бесконтактных карт. Типы связи отличаются используемыми режимами кодирования сигнала и модуляции. NFC-A использует код Миллера и амплитудную модуляцию.

NFC-BТип связи NFC-B основан на стандарте ISO/IEC 14443B для бесконтактных карт. NFC-B использует метод манчестерского кодирования. Двоичные данные также передаются со скоростью около 106 Кбит/с. Здесь вместо 100% используется 10% -ое изменение амплитуды для двоичного 0 (то есть низкого уровня)

NFC-FТип связи NFC-F основан на стандарте FeliCA JIS X6319-4, также известный как просто FeliCa. Стандарт регулируется японской jicsap. Там эта технология, и наиболее популярна. Скорость передачи данных 212 / 424 Кбит/с, используется манчестерское кодирование и амплитудная модуляция.

Сценарии для nfc-меток

1. NFC-метка вместо пароля от Wi-Fi Многие современные модемы уже имеют функцию NFC. Но не у всех есть современные версии модемов.Поэтому можно просто записать данные сети и приклеить метку на холодильник или в местах скопления гостей.

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

2. Метка вместо визиткиЕщё проще передавать данные и знать, что у человека есть Ваш контакт со всеми необходимыми введёнными Вами данными. Это может быть только номер телефон или только почта, а может всё вместе с ссылками на соц.сети.

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

4. В автомобилеМетка на включение навигатора и Bluetooth, GPS, 4G, и воспроизведение музыки.

5. На рабочем местеВключение Wi-Fi и запуск цепи обменных процессов — обновление программ, синхронизацию облачных сервисов, архивирование фотографий и скаченных на смартфон файлов на домашний NAS. Остановка на смартфоне воспроизведение любого контента, будь то музыка, фильм или аудиокнига.

Включение режима громких звонков и автоматический прием входящих. Тест новых смартфонов: метка предоставляет пароль администратора к Wi-Fi, сохраняет фотографии и скриншоты с устройства в файловый обменник и запускает скачивание пакета программ для тестирования.

6. Телевизор/колонкаПеревод смартфона в режим вибрации и включение программу MiTVAssistant или других программ для управления телевизором. Включение Bluetooth, спаривание смартфона и ТВ-приставкиВключение Bluetooth, подключение к колонке и воспроизведение музыки в Google Music, Spotify, Я.Музыка, Deezer.

7. Ежедневник Под лицевой стороной метка, которая выключает на смартфоне звуки и включает приложение для создания задач. На обратной — метка, которая возвращает все обратно.

8. В кармане одежды или рюкзакаВ карман для смартфона рюкзака можно приклеить метку включения режима громких оповещений и включать режим работы «В кармане», при котором смартфон не реагирует на случайную тряску или быстрые касания. Она же заставляет смартфон запускать BT аудиоплеер.

9. Включение/выключение ПК Если настроить на ПК пробуждение по LAN, вы сможете использовать NFC-метку для включения компьютера из любого места в своём доме.Аналогично с выключением Также крутым приложением для управления компьютером в LAN является Unified Remote И ещё один вариант включения ПК:

Это своего рода развитие идеи тегов на системнике и ноутбуке. Идея в том, чтобы создать настройку, которая позволит включать комп c помощью NFC-тега без учета того, где находится сам тег. Его, например, можно приклеить в прихожей, так что включить машину можно будет еще до того, как ты снимешь обувь.

Типы nfc-меток

Существует четыре типа меток, описанных NFC-форумом, все они базируются на RFID-протоколах. Это делает NFC метки частично совместимыми со многими уже существующими RFID системами (например, Mifare и FeliCa). Хотя эти более старые системы не поддерживают NDEF, они, однако, могут опознавать NFC метки, которые совместимы с ними.

Например, считыватель RFID, который предназначен для работы с метками Mifare Ultralight, может считать идентификационный номер метки NFC 2 типа, хоть и не может прочитать закодированную NDEF информацию. Есть также пятый тип, который совместим с технологией, но при этом не является частью NFC-спецификации.

Типы 1, 2 и 4 основаны на ГОСТ Р ИСО/МЭК 14443A (состоит из четырёх частей: 1, 2, 3, 4), тип 3 — на ГОСТ Р ИСО/МЭК 18092. Более подробно про каждый из типов можно прочитать под спойлером.

Тип 1

:

  • Основан на ГОСТ Р ИСО/МЭК 14443A;
  • Может быть как только для чтения, так и для чтения/записи;
  • Содержит от 96 байт до 2 кбайт памяти;
  • Нет защиты данных от коллизий (прим. — коллизии могут возникнуть; когда два активных источника передают данные одновременно);
  • Примеры: Innovision Topaz, Broadcom BCM20203.

Тип 2:

  • Аналогично типу 1 основан на NXP/PhilipsMifareUltralight метках (ГОСТ Р ИСО/МЭК 14443A);
  • Может быть как только для чтения, так и для чтения/записи;
  • Содержит от 96 байт до 2 кбайт памяти;
  • Скорость взаимодействия 106 кбит/с;
  • Поддержка анти-коллизий;
  • Пример: NXP Mifare Ultralight.

Тип 3:

  • Основан на метках SonyFeliCa (ГОСТ Р ИСО/МЭК 18092 и JIS-X-6319-4) без поддержки шифрования и аутентификации, которая предоставлена спецификацией FeliCa;
  • Может быть либо только для чтения, либо для чтения/записи;
  • Скорость взаимодействия 212 или 424 кбит/с;
  • Поддержка анти-коллизий;
  • Пример: Sony FeliCa.

Тип 4:

  • Аналогично типу 1, тип 4 основан на ГОСТ Р ИСО/МЭК 14443A;
  • Может быть либо только для чтения, либо для чтения/записи;
  • 2, 4 или 8 кбайт памяти;
  • Скорость взаимодействия 106, 212 или 424 кбит/с;
  • Поддержка анти-коллизий;
  • Пример: NXP DESFire, SmartMX-JCOP.

Пятый тип является собственностью NXPSemiconductors и, вероятно, самым распространённым на сегодняшний день MifareClassictag (ГОСТ Р ИСО/МЭК 14443A):

  • Память: 192, 768 или 3584 байта;
  • Скорость взаимодействия 106 кбит/с;
  • Поддержка анти-коллизий;
  • Пример: NXP Mifare Classic 1K, Mifare Classic 4K, Mifare Classic Mini.

Транспондеры серии rf430frl15xh

Микросхемы TRF796xA и TRF7970A [5] являются высокопроизводительными приемопередатчиками диапазона 13,56 МГц со встроенными устройствами формирования пакетов с поддержкой стандартов ISO/IEC 15693, ISO/IEC 18000-3, ISO/IEC 14443A и B (рисунок 3).

TRF7970A, как наиболее современный представитель семейства трансиверов TRF79xxA, поддерживает NFC-стандарты NFCIP-1 (ISO/IEC 18092) и NFCIP-2 (ISO/IEC 21481).

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

Широкий диапазон допустимых напряжений питания 2,7…5,5 В допускает применение транспондера в устройствах с различными уровнями напряжений – и в устройствах с логическими уровнями 3 В, и с устройствами 5 В. Также возможна работа транспондера при сильно разряженной батарее питания.

Приемопередатчик TRF79xxA позволяет реализовывать различные протоколы обмена для диапазона 13,56 МГц, включая нестандартные.

Основные возможности:

  • поддержка стандартов ISO 14443A, ISO 14443B, ISO 15693, ISO/IEC 18000-3 (Mode 1);
  • диапазон напряжений питания 2,7…5,5 В;
  • встроенный стабилизатор питания (выходной ток до 20 мА);
  • потребление в режиме ожидания – 120 мкА, в режиме сна – менее 1 мкА;
  • параллельный или последовательный (SPI) интерфейс с хост-системой;
  • встроенные блоки формирования пакетов, проверки контрольной суммы, контроля четности;
  • скорость передачи данных – до 848 кбит/с;
  • тактовый выход для хост-контроллера;
  • программируемый антенный усилитель;
  • выходной усилитель с поддержкой OOK- или ASK-модуляции;
  • программируемая выходная мощность – 100 или 200 мВт;
  • прием и декодирование нескольких поднесущих.

RF430FRL15xH [7, 8] является транспондером диапазона 13,56 МГц со встроенным 16-битным малопотребляющим контроллером MSP430 (рисунок 6). Для хранения программы и данных используется энергонезависимая оперативная память технологии FRAM.

FRAM эффективна в NFC-приложениях благодаря высокой скорости работы и низкому энергопотреблению в сочетании с сохранением данных при выключении питания. Энергонезависимость встроенной FRAM-памяти RF430FRL15xH позволяет свободно применять данный транспондер и в приложениях с автономным питанием, и в приложениях с питанием за счет внешнего электромагнитного поля считывателя.

RF430FRL15xH поддерживает обмен данными, установку параметров и конфигурирование посредством беспроводного интерфейса (стандарты ISO/IEC 15693, ISO18000-3), а также при помощи SPI- или I2C-интерфейса.

Читаем ndef-сообщение

Когда телефон на Android считывает NFC-метку, он сначала её обрабатывает и распознает, а затем передаёт данные о ней в соответствующее приложение для последующего создания intent. Если с NFC может работать больше одного приложения, то появится меню выбора приложения. Система распознавания определяется тремя intent, которые перечислены в порядке важности от самой высокой до низкой:

  1. ACTION_NDEF_DISCOVERED: Этот intent используется для запуска аctivity, если в метке содержится NDEF-сообщение. Он имеет самый высокий приоритет, и система будет запускать его в первую очередь.
  2. ACTION_TECH_DISCOVERED: Если никаких activity для intent ACTION_NDEF_DISCOVERED не зарегистрировано, то система распознавания попробует запустить приложение с этим intent. Также этот intent будет сразу запущен, если найденное NDEF-сообщение не подходит под MIME-тип или URI, или метка совсем не содержит сообщения.
  3. ACTION_TAG_DISCOVERED: Этот intent будет запущен, если два предыдущих intent не сработали.

В общем случае система распознавания работает, как представлено на рисунке ниже.

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

Если activity запускается из-за NFC intent, то можно получить информацию с отсканированной NFC-метки из этого intent. Intent может содержать следующие дополнительные поля (зависит от типа отсканированной метки):

  • EXTRA_TAG (обязательное): объект Tag, описывающий отсканированную метку.
  • EXTRA_NDEF_MESSAGES (опциональное): Массив NDEF-сообщений, просчитанный с метки. Это дополнительное поле присуще только intent ACTION_NDEF_DISCOVERED.
  • EXTRA_ID (опциональное): Низкоуровневый идентификатор метки.

Ниже представлен пример, проверяющий intent ACTION_NDEF_DISCOVERED и получающий NDEF-сообщения из дополнительного поля.

Kotlin

override fun onNewIntent(intent: Intent) {
    super.onNewIntent(intent)
    ...
    if (NfcAdapter.ACTION_NDEF_DISCOVERED == intent.action) {
        intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES)?.also { rawMessages ->
            val messages: List = rawMessages.map { it as NdefMessage }
            // Обработка массива сообщений.
            ...
        }
    }
}

Java

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    ...
    if (NfcAdapter.ACTION_NDEF_DISCOVERED.equals(intent.getAction())) {
        Parcelable[] rawMessages =
            intent.getParcelableArrayExtra(NfcAdapter.EXTRA_NDEF_MESSAGES);
        if (rawMessages != null) {
            NdefMessage[] messages = new NdefMessage[rawMessages.length];
            for (int i = 0; i < rawMessages.length; i  ) {
                messages[i] = (NdefMessage) rawMessages[i];
            }
            // Обработка массива сообщений.
            ...
        }
    }
}

Также объект Tag можно получить из intent, который будет содержать полезную информацию и позволит перечислить технологии метки:

Kotlin

val tag: Tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG)

Java

Tag tag = intent.getParcelableExtra(NfcAdapter.EXTRA_TAG);

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *