Используем NFC для автоматизации – «Хакер»

Как устроены пластиковые карты

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

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

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

Для пластиковой карты была важна определенная стандартизированная форма, чтобы карта могла быть считана в любом терминале, но с переходом к бесконтактным картам форма перестала иметь значение, что дает возможность использовать в качестве «носителя» карты (микропроцессора с платежным приложением) практически любой объект, будь то браслет, часы, брелок, пластиковую карту или телефон.

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

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

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

Используем NFC для автоматизации - «Хакер»

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

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

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

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

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

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

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

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

Сегодня NFC оснащаются почти все выпускаемые смартфоны. Соответствующий модуль есть даже в сверхбюджетных чипах Mediatek, так что большая часть новых китайских смартфонов стоимостью 5000 рублей тоже им оснащены. В любом случае присутствие чипа NFC легко проверить по наличию пункта «Беспроводные сети -{amp}gt; NFC» в настройках.

Платежная функция телефона

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

Secure Element может быть либо встроенным в материнскую плату телефона, либо находиться на отделяемом модуле: SIM-карте или SD-карте.

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

Используем NFC для автоматизации - «Хакер»

Первыми в РФ попытались перенести карту в телефон сотовые операторы, например, «МТС» и банк «Русский Стандарт», «Мегафон» и транспортная карта в г. Екатеринбург, «Билайн» и транспортная карта в г. Казань и т.п. Чтобы сделать это, им понадобилось закупить специальные SIM-карты с Secure Element, договориться с транспортной компанией или банком о записи на эти карты платежного приложения, осуществить процесс «контактной персонализации», а затем обменивать старые SIM-карты абонентов на новые.

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

Пишем данные

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

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

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

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

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

Удаленная загрузка карт

К счастью, телефон является интерактивным устройством, которое всегда на связи. Следовательно, в него можно удаленно записывать платежные карты и именно тех поставщиков услуг, которые нужны конкретным пользователям. Для осуществления этой функции была сформулирована роль TSM (Trusted Service Manager), который объединяет с одной стороны поставщиков услуг (Service Provider TSM), а с другой стороны чипы Secure Element в любых форма-факторах (Secure Element Issuer TSM). Такая платформа TSM и была разработана нами в компании i-Free и сертифицирована на соответствие всем необходимым мировым стандартам.

TSM позволяет владельцам Secure Element не интегрироваться с каждым поставщиком услуг и не отвозить к ним всем «носители карт» для контактной персонализации, а поставщикам услуг не подключаться ко всем операторам и производителям телефонов. Сотовым операторам, производителям телефонов и поставщикам услуг достаточно подключиться к TSM по стандартному протоколу и они одновременно интегрируются с множеством партнеров.

Взаимодействие смартфона и платформы TSM

RF430CL330H – NFC-транспондер для обмена данными от TI

Платформа TSM удаленно управляет чипами Secure Element в телефонах пользователей через безопасный канал связи, используя сам телефон в качестве модема. Ключи от Secure Element хранятся на специальных серверах HSM (Hardware Security Module), являющихся неотъемлемой частью TSM, и без участия последнего получить доступ к чипу невозможно.

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

Для какой именно выпущенной карты активировать режим оплаты выбирает пользователь, через пользовательское приложение «Кошелёк», которое отображает выпущенные и доступные для выпуска карты, а также принимает заявки на выпуск новых. Поставщик услуги, получая заявку на выпуск карты, передает эти данные Secure Element телефона через платформу TSM.

Оплата банковской картой в телефоне

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

Местонахождение антенны различается в зависимости от модели телефона. Например, в смартфонах Philips Xenium W336 и Philips Xenium W5888 антенна находится чуть ниже центра задней панели, а вот в HTC One она расположена выше — за задней камерой, так как корпус телефона металлический,  радио сигнал проходит через узкие пластиковые участки в форме буквы «Т».

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

Используем NFC для автоматизации - «Хакер»

При оплате банковской картой в телефоне, как и при оплате обычной пластиковой картой, вас могут попросить ввести PIN-код (который можно получить по звонку в банк) или поставить подпись на чеке. Для покупок на сумму менее 1000 рублей ни PIN-код, ни подпись не потребуются.

Приложение «Кошелёк»

Приложение «Кошелёк» не является электронным кошельком или платежной системой, как скажем, многим известный Visa QIWI Wallet и аналоги. «Кошелёк» — это в первую очередь универсальный интерфейс к приложениям (картам) в Secure Element. Благодаря такому подходу, телефон становится «универсальной интерактивной пластиковой картой».

Основная роль приложения заключается в отображении выпущенных или доступных к выпуску карт и обеспечении канала связи между Secure Element и TSM. Также «Кошелёк» дает пользователю возможность интерактивно управлять картами, загруженными в Secure Element.

Приложение предустанавливается на совместимые телефоны на производстве или добавляется с обновлением программного обеспечения таких телефонов (на момент написания текста это HTC One, Philips W8555 и Philips Xenium W336, а в ближайшее время добавятся HTC One Dual SIM, HTC One Max, HTC One SV, HTC Desire 500 и HTC Desire 600). Другие модели и производители появятся позже.

Первая карта, которая доступна в «Кошельке» уже сегодня — предоплаченная банковская карта «ТКС Банка». «Предоплаченная» означает, что карта выпускается без заключения письменного договора с банком, не связана с вашими другими картами в банке, а также в соответствии с законодательством РФ имеет ограничения на одну операцию (не более 15 000 рублей) и общую сумму операций за месяц (не более 40 000 рублей). При выполнении заявки пользователя на выпуск, карта доставляется в телефон в среденем в течение 10 минут.

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

Любая карта в любом телефоне

Платежные карты в телефон не переносятся, не привязываются и не дублируются, а именно выпускаются. Для выпуска карты поставщик услуги должен подключиться к TSM, а TSM должен иметь доступ к Secure Element. Поэтому на сегодня пока еще невозможно выпустить любую карту в любой телефон, но движение идет именно в этом направлении.

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

Автор текста: Константин Савченко

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

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