Основные возможности использования NFC на смартфоне. Как можно пользоваться модулем в смартфоне. Оплата посредством 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.

Способы использования NFC

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

Для осуществления платежа через NFC потребуется:

  1. Банковская карта с пометкой paypass.
  2. Приложение соответствующего банка.
  3. Найти в меню приложения пункт NFC.
  4. Приложить карту к задней крышке телефона для считывания.
  5. Запомнить пароль для проведения платежных операций, высланный в SMS-сообщении.

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

Основные возможности использования NFC на смартфоне. Как можно пользоваться модулем в смартфоне. Оплата посредством NFC с телефона.

1. Активируйте NFC — поставьте галочку напротив этого пункта в меню «Беспроводные сети», разблокировать смартфон и включить экран.

Алгоритм работы NFC

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

У NFC устройств есть два режима взаимодействия. Если инициатор излучает радиочастотные волны, а цель за счёт инициатора получает питание, то такой режим взаимодействия называют пассивным. При активном режиме у инициатора и цели свои собственные источники питания, и они независимы друг от друга. Данные режимы совпадают с режимами RFID.

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

Первым главным отличием NFC от RFID является способ взаимодействия peer-to-peer, который реализован с помощью ГОСТ Р ИСО/МЭК 18092. Обмен данными P2P реализуется двумя протоколами — протоколом подуровня управления логической связью (LLCP — logical link control protocol) и простым протоколом обмена данными NDEF (SNEP — simple NDEF exchange format).

Расшифровка аббревиатуры NFC дословно переводится на русский язык как «ближняя бесконтактная связь». Из названия можно сразу сделать вывод об одной из главных особенностей NFC — передача данных производится на очень близком расстоянии, до 10 см. Конечно, ничего не мешает обмениваться информацией на расстоянии в несколько сантиметров через Bluetooth или Wi-Fi, однако здесь стоит разобраться в деталях.

Принцип работы NFC основывается на явлении индукции магнитного поля, посредством которой реализована ближняя высокочастотная передача данных между двумя устройствами на частоте 13,56 МГц.

Примеры использования чипа NFC:

  1. Передача медиафайлов, контактов или настроек между смартфонами.
  2. Безналичная оплата. Пожалуй, самый популярный вариант использования системы, который широко применяется и в России. Также существуют различные варианты: оплата проезда, предоставление личных данных по касанию и др.
  3. Считывание информации. NFC-теги в смарткартах и других объектах позволяют мгновенно заносить в смартфон информацию, к примеру, с визитной карточки. NFC-чипы достаточно малы, чтобы их можно было встроить почти в любой предмет.
  4. Некоторые телевизоры Sony имеют функцию One Touch Mirroring, которая позволяет выводить на экран телевизора видео из памяти телефона.
  5. Контроль доступа к различным сервисам или объектам, где вместо ключа используется устройство с NFC-чипом.

Samsung Galaxy S7 и Apple iPhone 6

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

Преимущества NFC

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

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

  1. Откройте меню настроек устройства.
  2. Перейдите в «Беспроводные сети» или «Подключенные устройства».
  3. Откройте «Ещё».
  4. Найдите пункт NFC.

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

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

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

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

Основные возможности использования NFC на смартфоне. Как можно пользоваться модулем в смартфоне. Оплата посредством NFC с телефона.

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

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

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

Модели смартфонов, поддерживающие NFC

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

  • Apple iPhone (начиная с моделей 6S и 6S Plus);
  • новинки линейки Galaxy от Samsung и смартфоны других производителей на платформе Android (начиная с Android0).

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

В ОС Android, поддержка NFC-технологии появилась в Android 4.0 Ice Cream Sandwich — ее встроенная опция Beam позволяет обмениваться различными файлами между устройствами. В большинство современных устройств на платформе ОС Android NFC-адаптеры уже встроили.

Создаём распространённые NDEF-записи

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

Есть несколько распространённых типов NDEF-записей:

  1. Обычные текстовые записи. В них можно отправить любую строку, они не содержат инструкций для цели, но содержат метаданные об языке текста и кодировке.
  2. URI. Такие записи содержат данные об интернет-ссылках. Цель, получившая такую запись, откроет её в том приложении, которое сможет её отобразить. Например, веб-браузере.
  3. Умная запись. Содержит не только веб-ссылки, но и текстовое описание к ним, чтобы было понятно, что находится по этой ссылке. В зависимости от данных записи телефон может открыть информацию в нужном приложении, будь то SMS или e-mail, либо сменить настройки телефона (громкость звука, яркость экрана и т.д.).
  4. Подпись. Она позволяет доказать, что информация, которая была передана или передаётся, достоверна.

Можно использовать несколько видов записей в одном NDEF-сообщении.

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

Второе главное различие между NFC и RFID — формат обмена данными NFC (NDEF — NFC data exchange format). NDEF определяет формат данных в сообщениях, которые в свою очередь состоят из NDEF записей. Есть несколько видов записей, о которых будет рассказано более подробно чуть ниже. NDEF делает возможным с помощью программного кода управлять процессом чтения и записи NFC-меток, обмена данными при помощи peer-to-peer и эмулирования карт.

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

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

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

NFC

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

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

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

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

Когда телефон на 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 не сработали.

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

Основные возможности использования NFC на смартфоне. Как можно пользоваться модулем в смартфоне. Оплата посредством NFC с телефона.

Когда это возможно, запускается 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 -{amp}gt;
            val messages: List = rawMessages.map { it as NdefMessage }
            // Обработка массива сообщений.
            ...
        }
    }
}
@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 {amp}lt; rawMessages.length; i  ) {
                messages[i] = (NdefMessage) rawMessages[i];
            }
            // Обработка массива сообщений.
            ...
        }
    }
}

Kotlin

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

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

Существует несколько методов для создания NDEF-записи: createUri(), createExternal() и createMime(). Лучше использовать один из них во избежание ошибок, которые могут возникнуть при создании записи вручную. Все примеры, представленные ниже, следует отправлять первым сообщением при записи метки, либо сопряжением с другим устройством.

Kotlin

Как пользоваться NFC в телефоне

Часто забываете свою банковскую кредитную карту? Тогда в таком случае, если ваш Android оборудован NFC чипом, то он сможет легко стать кредиткой картой!

Активация

  • Если ваш смартфон имеет NFC-адаптер, вам необходимо разрешить его использование для обмена информацией между другими NFC-устройствами.
  • Перейдите в меню Настройки — Беспроводные сети — Еще…
  • Отметьте галочкой пункт «Разрешить обмен информацией при совмещении смартфона с другим устройством»
  • При этом автоматически активируется опция Android Beam.
  • В случае если Android Beam не включается автоматически, то просто нажмите на него и затем выберите «Да», чтобы его активировать.

Когда вы активировали NFC, вы можете применять его для передачи информации. Для удачного обмена данными, между смартфонами и планшетами обратите внимание на следующее:

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

Независимо от типа данных, которым вы собираетесь поделиться через NFC – способ применения Android Beam от этого никак не меняется:

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

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

Основные возможности использования NFC на смартфоне. Как можно пользоваться модулем в смартфоне. Оплата посредством NFC с телефона.

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

Для чтения информации из NFC-меток вам, разумеется, потребуется специальное приложение.

Оплата с помощью NFC

Преимущества платежей с применением технологии NFC:

  • Скорость — платеж по NFC всегда получается быстрее, нежели платеж банковской картой или наличными деньгами, особенно, если сумма невелика.
  • Комфорт — один смартфон способен заменить одну или несколько пластиковых карточек. Смартфон становится и коммуникатором, и кошельком.
  • Тикектинг — расчеты в транспорте, оплата проезда в автобусах, метрополитене и прочем общественном транспорте.
  • Peer-to-peer NFC транзакции — в перспективе это возможность поддерживать обмен данными по NFC между двумя устройствами.

Разумеется, возникает вопрос безопасности. Однако, как и пластиковую банковскую карточку, есть возможность быстро заблокировать утраченный телефон с технологией NFC — как SIM-карту, так и привязанную банковскую карточку. Правда и чтобы воспользоваться смартфоном, необходим PIN-код для телефона, а также PIN-код для транзакций. В системе paypass запрос PIN-кода карты по умолчанию происходит для сумм от 1000 рублей, однако эту плану всегда можно понизить.

Перспективы развития

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

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

Заключение

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

Более подробно об NFC или NDEF можно почитать в книге Tom Igoe, Don Coleman, and Brian Jepson «Beginning NFC. Near Field Communication with Arduino, Android, and PhoneGap».

https://www.youtube.com/watch?v=85oWPy-vsz4

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

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

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