NFC — что это такое, для чего нужен и как пользоваться

Nfc на телефоне и не только

NFC World ведет список смартфонов с поддержкой технологии. В соответствии с ним, каждый iPhone, начиная с iPhone 6, поддерживает ее. Последние iPhone 12 также поддерживают теги NFC через приложение Launch Center Pro.

NFC добавили и в линейку iPad, начиная с iPad Pro, iPad Air 2 и iPad Mini третьего поколения.

С поддержкой NFC выпускается каждое устройство под управлением Android 4.0 или более новой версии ОС. Samsung, к примеру, отдельно публикует список своих смартфонов с поддержкой NFC и характеристиками технологии.

Функцию NFC встраивают и в «умные» браслеты, к примеру, серии Xiaomi Mi Band. А »умные» часы с NFC работают так же, как смартфон с аналогичным чипом. Обычно их функционал ограничен и используется только для оплаты покупок и услуг.

Кроме того, существуют NFC-кольца для оплаты покупок.

Кольцами можно пользоваться для оплаты общественного транспорта, а также как ID-карточкой. Чтобы воспользоваться кольцом, нужно установить на смартфон приложение от его разработчика.

Tnf_well_known с rtd_text (mime-тип с записью простого текста)

Создать NDEF-запись TNF_WELL_KNOWN можно следующим образом:

Kotlin

fun createTextRecord(payload: String, locale: Locale, encodeInUtf8: Boolean): NdefRecord {
    val langBytes = locale.language.toByteArray(Charset.forName("US-ASCII"))
    val utfEncoding = if (encodeInUtf8) Charset.forName("UTF-8") else Charset.forName("UTF-16")
    val textBytes = payload.toByteArray(utfEncoding)
    val utfBit: Int = if (encodeInUtf8) 0 else 1 shl 7
    val status = (utfBit   langBytes.size).toChar()
    val data = ByteArray(1   langBytes.size   textBytes.size)
    data[0] = status.toByte()
    System.arraycopy(langBytes, 0, data, 1, langBytes.size)
    System.arraycopy(textBytes, 0, data, 1   langBytes.size, textBytes.size)
    return NdefRecord(NdefRecord.TNF_WELL_KNOWN, NdefRecord.RTD_TEXT, ByteArray(0), data)
}

Java

public NdefRecord createTextRecord(String payload, Locale locale, boolean encodeInUtf8) {
    byte[] langBytes = locale.getLanguage().getBytes(Charset.forName("US-ASCII"));
    Charset utfEncoding = encodeInUtf8 ? Charset.forName("UTF-8") : Charset.forName("UTF-16");
    byte[] textBytes = payload.getBytes(utfEncoding);
    int utfBit = encodeInUtf8 ? 0 : (1 << 7);
    char status = (char) (utfBit   langBytes.length);
    byte[] data = new byte[1   langBytes.length   textBytes.length];
    data[0] = (byte) status;
    System.arraycopy(langBytes, 0, data, 1, langBytes.length);
    System.arraycopy(textBytes, 0, data, 1   langBytes.length, textBytes.length);
    NdefRecord record = new NdefRecord(NdefRecord.TNF_WELL_KNOWN,
    NdefRecord.RTD_TEXT, new byte[0], data);
    return record;
}

Intent-фильтр для такой NDEF-записи будет таким:

Архитектура nfc

В архитектуре NFC есть несколько уровней. Самый низкий из них — физический, который реализован ЦПУ и другим аппаратным комплексом, через который происходит взаимодействие. В середине находятся данные о пакетах и транспортный уровень, затем формат данных уровней, и в конце программное обеспечение.

На физическом уровне NFC работает по алгоритму, описанному в ГОСТ для RFID (ГОСТ Р ИСО/МЭК 14443-2-2022), где говорится о маломощных радиосигналах частотой 13,56 МГц. Затем идёт уровень, который описывает разбивку потока данных на фреймы (ГОСТ Р ИСО/МЭК 14443-3-2022).

Любые радиоконтроллеры, которые используются в телефоне, планшете или подсоединяются к компьютеру или микроконтроллеру, являются отдельными аппаратными компонентами. Они взаимодействуют с главным процессором посредством одного или нескольких стандартных последовательных протоколов между устройствами: универсальный асинхронный приёмопередатчик (UART), последовательный периферийный интерфейс (SPI), последовательная шина данных для связи интегральных схем (I2C) или универсальная последовательная шина (USB).

Над этим находится несколько протоколов команд RFID, базирующихся на двух спецификациях. NFC чтение и запись меток базируется на оригинальном RFID ГОСТ Р ИСО/МЭК 14443A. Протоколы Philips/NXP Semiconductors Mifare Classic и Mifare Ultralight и NXP DESFire совместимы с ГОСТ Р ИСО/МЭК 14443A.

Обмен данными P2P NFC базируется на ГОСТ Р ИСО/МЭК 18092. Также на этом же стандарте базируются RFID-карты и метки Sony FeliCa, которые доступны в основном в Японии. Можно читать и записывать метки, основанные на этих стандартах, и не использовать NFC.

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

Гостиничный бизнес

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

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

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

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

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

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

Для защиты автомобиля

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

В 2020 году организация Car Connectivity Consortium, которая объединяет производителей автомобилей и мобильных устройств, выпустила спецификацию Digital Key Release 2.0. Она включает в себя поддержку функций блокировки и разблокировки автомобиля, запуска двигателя, аутентификации пользователя, отзыва цифрового ключа у другого пользователя, цифрового обмена ключами и ограничения использования ключа. Последний хранится в SE смартфона. Датчики NFC в автомобиле устанавливают в ручке двери водителя и на передней панели.

Свой NFC-ключ для автомобиля представила Apple. Car Key можно привязать к приложению Wallet, он позволяет разблокировать и заводить автомобиль с помощью iPhone или Apple Watch, а также им можно поделиться с другими людьми.

Для интернета вещей (iot)

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

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

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

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

Для медицины

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

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

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

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

Как выбрать смарт-карту nfc?

Есть все виды карточек, так как же нам выбирать? Перед тем, как сделать выбор, необходимо понять, как их классифицировать. Подробная классификация разобрана ниже. Вот 25 видов карт NFC. Здесь представлены не все, но наиболее распространенные типы карт NFC.

– По материалам –

Карты NFC бывают из различных материалов. Вы можете выбрать его в соответствии с вашими требованиями. Самый распространенный – это материал ПВХ. ПЭТ и дерево – экологически чистые материалы. Кожа PU высокого класса и удобна на ощупь. Бумага экономична, и ее часто используют для смарт-визиток.

– По инкапсуляциирежим-

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

– По приложениям-

Карты Smart NFC могут быть преобразованы в любые карты в зависимости от приложений. Если вы играете в Amiibo, вы должны знать карты NFC Amiibo, встроенные в чип Ntag215. Пустые карты Inkjet Blank NFC можно распечатать как любую карту. Игральные карты NFC – это новый способ игры.

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

– По чипсам-

Самая важная вещь в картах NFC – это чип NFC. Он напрямую определяет функцию и производительность карты. И принятые стандарты и протоколы не совпадают. Чаще всего используются следующие чиповые карты NFC.

Ntag21X серии и Ultralight EV1 C широко используются и просты в эксплуатации. Icode SLIX имеет хорошую производительность шифрования. DESFire EV1 отличается большим объемом памяти, высокой стоимостью и хорошими показателями безопасности. Felica отличается высокой стоимостью, подходит для сложных приложений.

Как пользоваться nfc на iphone

Функция NFC в iPhone, как уже было упомянуто, включается и отключается теми приложениями, которым она требуется. Чтобы привязать карту к Apple Pay, нужно зайти в приложение Wallet, нажать на « » и следовать инструкциям. С 2021 года российские пользователи могут привязывать, помимо Visa и Mastercard, также карты «Мир».

Для оплаты нужно приложить палец к Touch ID или пройти идентификацию в Face ID и поднести верхнюю часть iPhone к бесконтактному считывателю. Смартфон сам активирует NFC.

Если первые iPhone 6 с NFC позволяли только совершать платежи через Apple Pay, то iPhone 7 и более новые модели используют технологию для чтения меток NFC с помощью сторонних приложений. Кроме того, начиная с iOS 13 и выпуска iPhone XS и XR, они также могут кодировать пустые метки с помощью сторонних приложений, таких как GoToTags.

И, наконец, начиная с iPhone XS и заканчивая iPhone 12, смартфоны способны считывать метки в фоновом режиме. Таким образом, пользователю больше не нужно устанавливать сторонние приложения: достаточно приложить iPhone к метке NFC, и он автоматически считает ее.

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

Чтобы активировать другие функции NFC в iPhone, потребуется запустить приложение «Команды», открыть вкладку «Автоматизации», нажать на « » в верхнем правом углу, найти NFC и выбрать пункт «Тег NFC». Затем необходимо включить Bluetooth-наушники или другое беспроводное устройство, подключить их к iPhone, поднести устройство с меткой к задней панели смартфона и подождать пару секунд.

После подключения требуется открыть меню «Скрипты», выбрать пункт «Задать место воспроизведения» и указать свой iPhone; затем выбрать из списка подключаемое устройство и снять галочку в пункте «Спрашивать при выполнении». Процедуру придется повторить с каждым устройством.

Какой длины может быть ndef-сообщение?

Место на информацию в NDEF-записи ограниченно по размерам 2^32-1 байтами, однако можно делать цепочки записей внутри сообщения, чтобы переслать информацию большего размера. В теории нет ограничений на NDEF-сообщения, но на практике размер сообщения ограничивается возможностями устройств или меток, участвующих в обмене информацией.

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

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

Для того чтобы передать большой объем информации, устройства придётся держать друг рядом с другом длительное время, это может быть неудобным. Если нужно длительное взаимодействие между устройствами, то можно воспользоваться NFC для быстрого обмена данными о возможностях устройств и последующего включения одного из более подходящих способов передачи данных (Bluetooth, Wi-Fi и т.д.).

Карты лояльности

Сейчас распространены приложения, так называемые «электронные кошельки» для скидочных карт, . Туда можно сохранять образы (фото) карт лояльности с номером карты или со штрих-кодом, что, конечно, упрощает значительно жизнь, исключая необходимость носить с собой кучу карт. Прекрасное решение из 90-х.
Однако новый век неотвратимо наступает, и некоторые разработчики пошли дальше, например разработчики , они интегрировали карты лояльности прямо в платежное приложение.
Речь об интеграции скидочных, бонусных, подарочных и других карт лояльности в мобильное приложение, позволяющее проводить бесконтактную оплату при помощи NFC.
Android Pay является основным примером коммерчески доступного платежного решения NFC, в котором реализованы методы для передачи данных о карте лояльности в систему торговой точки (POS) продавца.
NFC — что это такое, для чего нужен и как пользоваться
Основным преимуществом этих дополнительных возможностей является упрощение процесса оформления заказа как для потребителя, так и для продавца, теперь возможные скидки по карте лояльности будут учитываться прямо во время оплаты заказа, никаких вам «а теперь приложите бонусную карту». Тем-же одним касанием возможно начисление бонусных баллов на карту или оплата ими покупки. Еще одно преимущество это более надежная передача данных, чем при использовании штрих-кодов. Штрих-коды представляют собой единый элемент и должны считываться определенным образом, что может вызывать проблемы если на вашем смартфоне поцарапан или разбит экран или используется защитное стекло. Также проблемы со считыванием могут возникнуть в условиях яркого освещения, например на улице, или когда яркость экрана понижена.
Сами сканеры штрих кодов, тоже бывают разные по качеству и скорости считывания. И далеко не все сканеры штрих-кодов могут считывать штрих-код с экрана смартфона.

Внедрение карт лояльности и бонусов на основе NFC выгодно всем потребителям, продавцам и брендам:

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

Можно ли взломать nfc и украсть через него деньги?

NFC быстрее и безопаснее, чем Bluetooth. Но дыры в защите всё равно находят регулярно.

К примеру, в 2022 году специалисты MWR Labs продемонстрировали уязвимость, которая позволила передать по NFC вирус и получить контроль над устройством.

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

Да, NFC можно подслушать. Перехватить антенной с расстояния в несколько метров. Причем устройство, которое работает от собственного источника питания, слушать проще, чем просто метку.

Проблема в том, что в стандарте NFC нет защиты от подслушивания. Упс.

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

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

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

Наконец, мошенники могут воспользоваться «левым» терминалом и списать деньги с карты через него. Но, во-первых, существует лимит, во-вторых, все терминалы регистрируются в регулирующих органах, так что в никуда деньги не уйдут.

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

Ворам проще вытащить смартфон или кошелек из кармана.

Насколько безопасна технология nfc?

В начале 2000-х годов NFC-модули считались неуязвимыми для атак хакеров. Однако позднее программисты описали ряд теоретических атак, которые могут использоваться для кражи информации и заражения смартфона вирусом. В 2022 году была выявлена первая критическая уязвимость NFC.

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

Тем не менее, специалисты рекомендуют соблюдать следующие правила:

Структура ndef

NDEF содержит информацию о байтовом представлении сообщений, которые могут содержать несколько записей. У каждой записи есть заголовок, в котором находятся метаданные (тип, длина и т.д.), и информацию для отправки. Если вернуться к аналогии с параграфом, то параграф формируется из предложений, относящихся к одной теме, так и в NDEF-сообщениях — хорошо, когда все записи относятся к одной тематике.

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

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

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

Технология nfc — связь на близком расстоянии – время электроники

Skip to content

В статье представлены основные характеристики стандарта NFC: область применения, режимы работы, временные параметры сигналов. Особое внимание уделено проверке устройств на соответствие требованиям стандарта.

Технология связи на малых расстояниях NFC (Near Field Communication) — совместная  разработка компаний NXP Semiconductor и Sony — представляет собой комбинацию нескольких существующих бесконтактных технологий радиочастотной (РЧ) идентификации и связи.
Технология NFC предназначена для обмена различной информацией, например, номерами телефонов, картинками, музыкальными файлами или ключами цифровой авторизации между двумя расположенными близко друг к другу устройствами с поддержкой NFC. Это могут быть любые портативные устройства, а также смарт-карты или считывающие устройства RFID. Данная технология может использоваться в качестве ключа доступа к данным или сервисам, таким как безналичная оплата или электронный замок.
Центральная частота NFC равна 13,56 МГц. Скорость передачи данных достигает 424 кбит/с на расстоянии примерно 10 см. В отличие от существующих технологий бесконтактной связи на данном диапазоне частот, которые позволяют передавать информацию только от активного устройства пассивному, NFC обеспечивает обмен между двумя активными (равноправными) устройствами. Таким образом, NFC можно использовать для доступа к устройствам радиочастотной идентификации RFID.
Технология обратно совместима с широко используемым стандартом Smart Card на основе ISO/IEC 14443 А (например, Mifare) и ISO/IEC 14443 В, а также JIS X 6319-4 (FeliCa). Для обмена между двумя устройствами разработан новый протокол ECMA-340 и ISO/IEC 18092. В 2004 г. был создан союз NFC Forum, в который вошли Sony, NXP и Nokia. Компании стали совместно работать над новой технологией, чтобы гарантировать совместимость и правильное взаимодействие устройств и сервисов. В результате NFC поддерживает все перечисленные выше стандарты. Первые устройства, сертифицированные NFC, появились в конце прошлого года.
Для обеспечения совместимости между мобильным телефоном и картами RFID различных производителей необходимо выполнить тестирование цифрового протокола и провести измерение параметров РЧ-сигнала: временных характеристик, частоты несущей, амплитуды сигнала слушателя (нагрузочная модуляция, см. ниже), а также амплитуды и чувствительности приемника в активном режиме.

Применение

Несомненное преимущество NFC — простота использования. Для обмена необходимо поднести устройства близко друг к другу. Некоторые стандартные сферы использования (см. табл. 1)
– системы сбора тарифов на транспорте;
– платежные системы;
– контроль доступа;
– передача настроек и обеспечение более сложных протоколов;
– обмен данными.
Технология предназначена в первую очередь для портативных устройств. Она является логическим продолжением и развитием технологии RFID.

Таблица 1. Применение NFC

Область

Пример

Оплата с помощью мобильного телефона

• Покупка билетов или оплата такси

• Работа с бесконтактными терминалами продаж (платежные системы)

• Хранение чеков в памяти телефона

Телефон как электронный ключ

• Для прохода в здание (контроль доступа)

• Для доступа к ПК

• Для автомобиля

• Для создания офиса дома

Передача данных

• Обмен электронными визитками

• Печать фотографий напрямую с фотоаппарата

Электронная блокировка

• Доступ к глобальным сетям или Bluetooth

Доступ к данным

• Загрузка расписаний с электронного табло на телефон

• Загрузка карт на телефон

• Считывание навигационных координат

Хранение электронных билетов на мобильном телефоне

• В театр, на аттракцион или на какое-либо мероприятие

Принцип работы

В основе NFC лежит индуктивная связь (см. рис. 1). Частота работы — 13,56 МГц, скорость передачи — 106 кбит/с (возможны 212 кбит/с и 424 кбит/с). Сигнал подвергается амплитудной манипуляции ООК с различной глубиной 100% или 10% и фазовой манипуляции BPSK.

При передаче информации пассивному устройству используется амплитудная манипуляция ASK. При обмене с активным устройством оба устройства равноправны и выступают в качестве поллинговых. Каждое устройство имеет собственный источник питания, поэтому сигнал несущей отключается сразу после окончания передачи.
За счет индуктивной связи между опрашивающим и прослушивающим устройствами пассивное устройство влияет на активное. Изменение импеданса прослушивающего устройства вызывает изменение амплитуды или фазы напряжения на антенне опрашивающего устройства, которое он обнаруживает. Этот механизм называется модуляцией нагрузки. Она выполняется в режиме прослушивания с применением вспомогательной несущей 848 кГц. В зависимости от стандарта применяется амплитудная (ASK для 14443 А) или фазовая манипуляция (BPSK для 14443 В). Еще один пассивный режим, совместимый с FeliCa, осуществляется без вспомогательной поднесущей с манипуляцией ASK на частоте 13,56 МГц.

Режимы работы

В NFC определено три основных режима работы:
– пассивный (эмуляция смарт-карты). Пассивное устройство ведет себя как бесконтактная карта одного из существующих стандартов;
– передача между равноправными устройствами. Производится обмен между двумя устройствами. При этом за счет собственного источника питания у прослушивающего устройства можно использовать NFC даже при выключенном питании опрашивающего устройства;
– активный режим (чтение или запись).
В каждом режиме может применяться один из трех способов передачи: NFC-A (14443 А), NFC-B (14443 В), NFC-F (JIS X 6319-4). Для распознавания способа передачи инициирующее устройство посылает запрос. Характеристики режимов кодирования и модуляции приведены в таблице 2.

Таблица 2. Характеристики режимов NFC

Стандарт

Тип устройства

Кодирование

Модуляция

Скорость передачи, кб/с

Несущая, МГц

NFC-A

Опрашивающее

Модифицированный код Миллера

ASK 100%

106

13,56

Прослушивающее

Манчестер

Модуляция нагрузки (ASK)

106

13,56 ± 848 кГц

NFC-B

Опрашивающее

NRZ-L

ASK 10%

106

13,56

прослушивающее

NRZ-L

Модуляция нагрузки (BPSK)

106

13,56± 848 кГц

NFC-F

Опрашивающее

Манчестер

ASK 10%

212/424

13,56

Прослушивающее

Манчестер

Модуляция нагрузки (ASK)

212/424

13,56 (без поднесущей)

В пассивном режиме используются метки NFC — пассивные устройства, предназначенные для обмена с активными NFC-устройствами. Как и метки RFID, метки NFC применяются для хранения небольшого количества данных. Всего определено 4 типа меток (см. табл. 3). 

Таблица 3. Типы меток

Тип

1

2

3

4

Стандарт

14443 А

14443 В

JIS 6319-4

14443 А/В

Совместимый продукт

Innovision Topaz

NXP Mifare

Sony FeliCa

NXP DESFire, SmartMX-JCOP, др.

Скорость передачи, кб/с

106

106

212, 424

106, 212, 424

Объем памяти

96 б, расширение до 2 кб

48 б, расширение до 2 кб

До 1 Мб

До 32 кб

Защита от коллизий

Нет

Есть

Есть

Есть

Тестирование устройств

Чтобы удостовериться, что устройство соответствует стандарту NFC, необходимо произвести несколько измерений. В зависимости от типа устройства применяется одна из двух установок (см. рис. 2а, 2б). Эталонное опрашивающее устройство подключается к генератору сигнала или усилителю мощности и посылает команды на прослушивающее устройство. Ответные сигналы анализируются с помощью специального оборудования. Эталонное устройство имеет три типа антенн (EuroPay, MasterCard, Visa) Poller-0 и два компенсированных варианта Poller-3 и Poller-6.

Эталонное прослушивающее устройство анализирует переданный поллинговым устройством сигнал. Измерение частоты и формы сигнала производится с помощью встроенного индуктивного кольца. Устройство высылает ответный сигнал посредством модуляции нагрузки с использованием внешнего генератора сигнала.

РЧ-измерения

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

Пример

Рассмотрим тестирование мобильного телефона с NFC в активном и пассивном режимах.
В активном режиме используется испытательная установка, схема которой показана на рисунке 2а. Она состоит из эталонного прослушивающего устройства и цифрового осциллографа для измерения уровня мощности, частоты несущей и формы сигнала. Измерения можно проводить с помощью анализатора сигнала или спектра с применением внешнего триггера. Для определения чувствительности модуляции нагрузки в ответ на принятый запрос SEL_REQ прослушивающее устройство генерирует сообщение SENS_RES. Время нарастания сигнала измеряется от уровня 5% до 90%.
Измерения в пассивном режиме проводятся с помощью эталонного опрашивающего устройства и генератора сигналов произвольной формы. Время задержки пакета определяется как промежуток между последним битом запроса и первым битом ответа. Второй способ измерения — с помощью анализатора спектра в режиме нулевой полосы (zero span). На временной оси определяется расстояние между фронтом последнего бита опрашивающего сигнала и первым битом сигнала прослушивающего устройства.
Нагрузочная модуляция определяется как разность между средним максимальным и средним минимальным значениями передаваемого сигнала на частоте 13,56 МГц (см. рис. 3).

Необходимо помнить, что анализатор выводит среднеквадратичные значения, поэтому измеренные величины следует умножить на 1,41, чтобы получить пиковые значения.

Литература

1. Near Field Communication (NFC) Technology and Measurements//www.rohde-schwarz.com.

Типы 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.

Читаем 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 не будет опубликован. Обязательные поля помечены *