УДК 004.4'22, 681.327.8
ИНСТРУМЕНТАЛЬНАЯ ТЕХНОЛОГИЧЕСКАЯ СРЕДА ДЛЯ СОЗДАНИЯ МАССОВЫХ МОБИЛЬНЫХ ОНЛАЙН-СЕРВИСОВ НОВОГО ПОКОЛЕНИЯ. ЧАСТЬ II: ТЕХНОЛОГИИ ЛОКАЛЬНОГО ВЗАИМОДЕЙСТВИЯ Е.А. Гринина, О.А. Золотарев, И.А. Пименов, Д.А. Насонов, А.В. Бухановский
Рассмотрены вопросы применения технологий локального взаимодействия в мобильных онлайн-сервисах нового поколения. Обсуждаются особенности перспективной технологии NFC и аспекты ее использования в составе мобильного сервиса электронной продажи билетов, реализуемого посредством технологической инструментальной среды.
Ключевые слова: мобильный сервис, технология NFC, локальное взаимодействие.
Введение
Современный мобильный телефон представляет собой многоцелевой инструмент, обеспечивающий своему владельцу широкие возможности взаимодействия с реальным миром посредством разнообразных интерфейсов. Наравне с традиционными средствами взаимодействия, такими, как голосовая связь и Интернет, в настоящее время значительную роль начинают играть технологии локального взаимодействия [1]. Они обеспечивают адекватное отображение реальных объектов в виртуальное окружение, которым пользователь может управлять over-the-air [2]. В настоящее время существуют различные беспроводные технологии установления локальных соединений [3]: IrDa, Bluetooth, Wi-Fi, NFC и др. Они различаются по принципу функционирования, имеют различный радиус действия и подходят для решения совершенно разных задач взаимодействия мобильных устройств. Наиболее прогрессивной на настоящий момент считается технология NFC, основанная на принципе взаимной магнитной индукции [4]. Технология NFC подразумевает малый (до 10 см) радиус действия, что обеспечивает локальное взаимодействие двух устройств, в котором перехват сигнала третьей стороной максимально затруднен, но сеанс связи при этом конфигурируется просто и быстро. Эти качества нашли свое применение в задачах создания персональных систем мониторинга состояния здоровья [5] и продвижения технологий мобильной коммерции [6]. В данной статье рассматриваются вопросы использования технологии NFC в мобильных онлайн-сервисах нового поколения на примере сервиса электронной продажи билетов, который реализуется посредством технологической инструментальной среды [7].
Характеристики технологии NFC
NFC (Near Field Communication) - технология беспроводной связи на ультракоротких (до 10 см) расстояниях на основе эффекта взаимной магнитной индукции. Технология работает в нерегулируемом диапазоне 13,56 МГц, обеспечивает двунаправленное взаимодействие двух устройств, оснащенных интерфейсом NFC, и поддерживает скорости передачи данных 106, 212 и 424 кбит/с [8]. В основу NFC положены существующие технологии бесконтактных смарт-карт Mifare и Felica, разработанные NXP Semiconductors и Sony. Технология NFC является открытой платформой, регламентирована стандартами ISO 18092(NFCIP-1), ISO 21481(NFCIP-2) и совместима с ISO 14443, ISO 15693. Это позволяет NFC-устройству эмулировать бесконтактные карты, функционировать как ридер/райтер (reader/writer) бесконтактных карт упомянутых стандартов, RF- или NFC-меток, а также взаимодействовать с другим NFC-устройством в пиринговом режиме.
Технология NFC отличается простотой использования - два NFC-устройства инициируют сеанс связи автоматически при сближении на заданное расстояние; при этом время инициализации не превышает 0,1 с. Преимуществами NFC по сравнению, например, с Bluetooth и IrDa, являются меньшие энергоемкость и стоимость внедрения устройства в мобильный телефон. В табл. 1 приведен сравнительный анализ технологий NFC, Bluetooth и IrDa по набору технологических и потребительских критериев.
Таблица 1. Сравнительный анализ технологий локального взаимодействия
Характеристика Bluetooth IrDa NFC
Сеанс связи в пиринговом режиме - + +
Автоматическая инициализация сеанса связи - - +
Высокая скорость инициализации сеанса связи - + +
Конфиденциальность сеанса связи - - +
Возможность быстрой транзакции - + +
Высокая скорость передачи данных + - +
Безопасность на аппаратном уровне - - +
Безопасность на программном уровне + - +
Эмуляция бесконтактных смарт-карт - - +
Низкая стоимость внедрения в телефон - + +
Наличие стандартных интерфейсов ПК + + -
Из табл. 1 следует, что технология NFC с точки зрения задач мобильной коммерции является наиболее перспективной по совокупности факторов. Отсутствие на настоящий день стандартных (встроенных) интерфейсов NFC в персональных компьютерах обусловлено низкой распространенностью технологии; на данный момент эта проблема может быть решена применением интерфейсов-конверторов NFC-Bluetooth [9].
Классификация NFC-приложений для мобильного телефона
Реализация возможностей локального взаимодействия порождает новые классы программного обеспечения для мобильных телефонов, различающиеся по способам применения технологии NFC, рассмотренным в предыдущем разделе.
- Приложения, эмулирующие бесконтактную смарт-карту, например, транспортные, платежные, идентификационные сервисы, а также сервисы, связанные с картами лояльности и организацией доступа. Они реализуют бизнес-процессы, связанные с необходимостью предъявления электронных билетов. Большая часть таких сервисов характеризуется повышенными требованиями к безопасности коммуникаций.
- Приложения, поддерживающие режим ридер/райтер. К ним относятся, прежде всего, информационные сервисы, позволяющие получать данные с RF- или NFC-меток и смарт-постеров, а также загружать в мобильный телефон электронные билеты и купоны для последующего предъявления. Режим ридер/райтер может рассматриваться как вспомогательный для различных классов сервисов. Например, при покупке транспортного билета по технологии NFC можно дополнительно загрузить схему проезда или расписание работы транспорта.
- Приложения, требующие пирингового режима работы NFC-устройства. К ним относятся сервисы, связанные с необходимостью обмена данными с другим телефоном, компьютером или предметом бытовой электроники. Пиринговый режим открывает возможности для создания совершенно новых классов мобильных сервисов, так как предоставляет широчайшие возможности для осуществления бесконтактного взаимодействия двух электронных устройств [1].
Реализация NFC в мобильном телефоне - элемент безопасности
NFC-приложения реализуются в мобильном телефоне посредством элемента безопасности. Элемент безопасности представляет собой динамическую среду, в которой производится загрузка, удаление, персонализация и управление NFC-приложениями. Различные NFC-приложения в одном телефоне функционируют и управляются независимо друг от друга. Реализация мобильных сервисов на базе технологии NFC подразумевает повышенные требования к информационной безопасности в соответствии с ISO 14980. Элемент безопасности обеспечивает безопасное хранение данных, криптографическое шифрование, а также формирует защищенную среду для исполнения программного кода.
Программные средства, обеспечивающие работу с NFC в мобильном телефоне
В мобильном телефоне приложения с использованием NFC в силу необходимости унификации распределенного взаимодействия управляются runtime-системой. Наиболее часто в качестве runtime-системы применяется Java Virtual Machine, реализуемая посредством Java ME (MicroEdition), разработанной компанией Sun. Производители мобильных телефонов, устанавливающие как стандартные операционные системы, так и «черные ящики», разрабатывают платформенно-ориентированные версии JVM и JavaME. В настоящее время существует стандартизованный Java-интерфейс для реализации бесконтактных приложений в мобильных NFC устройствах, использующих специфику элемента безопасности. Это Security and Trust Services API для J2ME (JSR177). Он состоит из четырех пакетов, которые позволяют осуществлять взаимодействие с элементом безопасности посредством APDU (Application Program Data Units), предоставляют инструментарий JCRMI (Java Card Remote Methode Invokation), позволяющий J2ME приложениям использовать методику обращения к удаленному объекту Java Card, обеспечивают API для работы с инфраструктурой открытых ключей и содержат набор криптографических функций. Если для взаимодействия с элементом безопасности используется SATSA-APDU пакет, то не имеет значения, как именно архитектурно элемент безопасности реализован в мобильном устройстве. JCRMI может использоваться только в том случае, если элемент безопасности находится под управлением Java Card ОС. Отличия этих интерфейсов невелики, но разработчикам Java-приложений, по-видимому, более комфортно использовать RMI интерфейс для взаимодействия с Java Card апплетом. Еще одним важным API, необходимым для реализации NFC-приложений в мобильном телефоне, является JSR257 (Contactless Communication API). Данный программный интерфейс обеспечивает контроль работы NFC-модуля в мобильном устройстве. Он также позволяет использовать APDU. Отличие между APDU и JSR257 состоит в том, что JSR 257 может отсылать APDU-команды на внешнюю смарт-карту, на которой доступ к резидентному чипу осуществляется только посредством JSR177. Описанные выше API предоставляют разработчику полный доступ к NFC-функциональности мобильного устройства и элементу безопасности в наиболее распространенных моделях мобильных телефонов, поддерживающих NFC (например, Nokia 6131).
Сервис электронной продажи билетов с использованием технологии NFC
В качестве иллюстрации возможностей технологии NFC рассмотрим мобильный онлайн-сервис нового поколения, реализующий процесс продажи и использования электронных билетов (например, на развлекательные мероприятия). Архитектура сервиса и схема выполнения мобильного платежа подробно рассмотрены в [7]. В общем виде мобильный сервис реализует следующий бизнес-процесс.
- Пользователь (как клиент сервиса) на визуальном уровне получает информацию о предстоящем развлекательном мероприятии, например, в форме афиши. Афиша может быть снабжена специальной NFC-меткой, поднеся телефон к которой, пользователь может узнать дополнительную информацию о мероприятии и адрес в сети Интернет, с которого можно загрузить электронный билет.
- Осуществляется обращение к серверу провайдера (продавца билетов) через предустановленное клиентское приложение (автоматически или по запросу). Пользователю предоставляется интерактивная карта свободных мест (например, в зале), которую он может просмотреть на экране своего мобильного телефона и осуществить свой выбор, информируя провайдера о готовности оплатить билет.
- На счету пользователя в платежной системе резервируется сумма, эквивалентная стоимости билетов. В том случае, если пользователь захочет впоследствии отказаться от билетов (посредством того же сервиса), эта сумма остается на его счету, за исключением комиссии за бронирование.
- Пользователь, придя на мероприятие, должен осуществить аутентификацию с билетным турникетом посредством своего мобильного терминала (NFC). При успешной аутентификации (совпадении информации, хранящейся на терминальном аппарате пользователя, с базой данных билетов) пользователь допускается на мероприятие, а с его счета в платежной системе списывается соответствующая сумма.
- В том случае, если пользователь, купивший билет, не посетил мероприятие, соответствующая сумма на его счете деблокируется; при этом снимается комиссия за неиспользование билета.
Для использования сервиса пользователь должен иметь мобильный телефон, поддерживающий технологию NFC, и открытый счет в системе электронных платежей, поддерживающей работу с предоплаченным финансовым продуктом [7]. На телефон должно быть установлено клиентское приложение, которое можно скачать с сайта провайдера. Провайдер, помимо сайта, должен иметь выделенный сервер, подключенный в Интернет и осуществляющий управление базой данных билетов, NFC-турникет и соответствующий счет в системе электронных платежей. На рис. 1 приведена структурная схема мобильного сервиса.
Сервис представляет собой трехкомпонентное распределенное приложение, включающее в себя собственно сервисную часть (приложение провайдера), мобильный терминал и точку контроля. Сервис провайдера включает в себя модуль обработки клиентских запросов, компонент взаимодействия с платежной системой, который отвечает за выполняемые транзакции, и базу данных о текущих местах, проданных билетах, сеансах в целом. Сервис провайдера поддерживает минимальный графический интерфейс, необходимый для его настройки и мониторинга администратором. Мобильный терминал реализуется как Java MIDlet. Его основной функционал заключается в обеспечении интерфейса пользователя в целях выбора и покупки билета, а также получения информации о развлекательном мероприятии. Мобильный терминал включает в себя модуль визуализации, поддерживающий интерактивную карту мест, NFC-модуль для технического обеспечения процесса аутентификации, и модуль сетевого взаимодействия для связи с сервисом провайдера. Точка контроля реализована в виде stand-alone-приложения с графическим интерфейсом настройки и отслеживания статуса билетов с использованием интерфейса NFC. Она включает в себя пользовательский интерфейс (в форме индикатора аутентификации), модуль сетевого взаимодействия с серверной частью и NFC-модуль, необходимый для валидации билета.
Связи между функциональными частями сервиса осуществляются по протоколу HTTP поверх протокола TCP/IP. В отличие от устоявшейся процедуры покупки электронных билетов через Интернет, этот сервис сочетает в себе высокий уровень интерактивности с возможностями современных телекоммуникационных технологий.
Предложенная архитектура мобильного сервиса является двухзвенной: услуга предоставляется непосредственно пользователю, оператор сотовой связи играет роль исключительно посредника при предоставлении услуги. Это обеспечивает независимость от конкретных технологических платформ операторов связи.
web-сервер приложений
СЕРВИС ПРОВАЙДЕРА
Ethernet
Модуль Взаимодействия с Платежной Системой
_______-—
^ ; ПЛАТЕЖНАЯ СИСТЕМА
Модуль Обработки Клиентских Запросов
Пользовательский Интерфейс
Компонент » База
Управления Данных
GPRS
gsg МОБИЛЬНЫЙ ТЕРМИНАЛ JAVAMIDlel
Компонент Визуализации
Компонент Уп рзвлен ия
-. X
Модуль Сетевого Общения
Пользовательский Интерфейс
Модуль Сетевого Взаимодействия
NFC Модуль
Компонент Управления
NFC Компонент
NFC
NFC Reader
Рис. 1. Структурная схема мобильного сервиса
Для повышения удобства разработки компонентов сервиса допустимо применять инструментальную технологическую среду создания массовых мобильных онлайн-сервисов нового поколения. При помощи разработанной среды разработчик имеет возможность проектировать распределенное приложение путем описания в терминах бизнес-процессов предметной области и на его основе осуществлять автоматическую генерацию кодов, включающих типовые реализации компонент, отраженных на рис. 1. Подробнее вопросы использования инструментальной технологической среды рассмотрены в [7].
Заключение
Мобильные сервисы на основе технологий локального взаимодействия являются нововведением для отечественной отрасли мобильных услуг. Технологическая новизна рассмотренного сервиса продажи билетов определяется двухзвенной организационной схемой и применением прогрессивной технологии локального взаимодействия NFC для предъявления электронного билета в точке контроля. При этом часть функционала сервиса требует удаленного взаимодействия с сервером провайдера услуги, в то время как другие операции могут выполняться без использования каналов сотовой связи (например, аутентификация с билетным турникетом). Массовость применения такого сервиса обеспечивается не только обширной целевой аудиторией пользователей, но и большим
количеством потенциальных провайдеров, заинтересованных в предоставлении данной услуги. Работа выполнена в рамках проекта 2008-4-1.4-18-01-022 ФЦП «Исследования и разработки по приоритетным направлениям развития научно-технологического комплекса России на 2007-2012 годы».
Литература
1. Ailisto H., et al. Bridging the physical and virtual worlds by local connectivity-based physical selection // Personal and Ubiquitous Computing - 2006. - Vol. 10. - № 6. -P. 333-344.
2. Anokwa Y., et al. A User Interaction Model for NFC Enabled Applications // Proceedings of Fifth IEEE International Conference on Pervasive Computing and Communications Workshops (PerComW'07). - 2007. - P. 357-361.
3. Kostakos V., et al. Building Common Ground for Face to Face Interactions by Sharing Mobile Device Context // Lecture Notes in Computer Science. - 2006. - Vol. 3987. -P. 222-238.
4. NFC Forum. - Режим доступа: www.NFC-forum.org, свободный
5. Morak J., et al. Feasibility and Usability of a Home Monitoring Concept based on Mobile Phones and Near Field Communication (NFC) Technology // Medinfo 2007: Proceedings of the 12th World Congress on Health (Medical) Informatics; Building Sustainable Health Systems. - 2007. - P. 112-116.
6. Choi Y.B., et al. The state-of-the-art of mobile payment architecture and emerging issues // International Journal of Electronic Finance. - 2006. - Vol. 1. - № 1. - P. 94-103.
7. Золотарев О.А., Гринина Е.А., Бухановский А.В. Инструментальная технологическая среда для создания массовых мобильных онлайн-сервисов нового поколения. Часть I: Принцип действия и программная архитектура // Научно-технический вестник СПбГУ ИТМО. - 2008. - Вып. 54. - С. 80-85.
8. ETSI EN 302 190. V.1.1.1 (2005-06), Near Field Communications; Interface and Protocol (NFCIP - 1) / Техническая спецификация ETSI.
9. Leong, C.Y., et al. Near Field Communication and Bluetooth Bridge System for Mobile Commerce // Industrial Informatics. 2006 IEEE International Conference. Singapoure, 16-18 Aug. 2006. - P. 50-55.
Гринина Екатерина Александровна Золотарев Олег Анатольевич Пименов Илья Андреевич
Насонов Денис Александрович
Бухановский Александр Валерьевич
ООО «Технологии процессинга», руководитель научного отдела, к.ф.-м.н., grinina@tprs.ru ООО «Технологии процессинга», генеральный директор, zolotarev@tprs.ru
Санкт-Петербургский государственный университет информационных технологий, механики и оптики, студент, ilya.pimenov@gmail.com
Санкт-Петербургский государственный университет информационных технологий, механики и оптики, студент, denis.nasonov@gmail.com
Санкт-Петербургский государственный университет информационных технологий, механики и оптики, д.т.н., профессор, boukhanovsky@mail.ifmo.ru