Программа для привязки транспортной карты nfc к телефону
Имеется смартфон с поддержкой NFC (Nokia). Интересует возможность эмуляции БСК или того же пропуска через турникет на проходной в здание.
Есть ли нативная поддержка этого в девайсе и, в случае положительного ответа, какой софт для этого нужен?
Для NFC-платежей мне более-менее понятно (необходимо наличие особой SIM-карты). Но ведь вся прелесть этой технологии заключается в уменьшении количества карточек (не только банковских), которые необходимо носить с собой. Реально ли это сегодня воплотить или пока рано?
- Вопрос задан более трёх лет назад
- 237252 просмотра
Оценить 1 комментарий
1. Далеко не все пропуска работают на 13.56 МГц и подпадают под стандарты NFC. Даже хуже, подавляющее большинство сейчас — низкочастотные (125 килогерц и т.д.). ключевые слова: HID proxcard clamshell.
Да, именно БСК это 13.56 МГц и ISO-14443, но там проприетарная реализация от NXP (Mifare), и взломаны только старые поколения карт Mifare.
Соответственно, если хотите эмулировать БСК — то Вам надо стать партнером самого Метрополитена и интегрироваться в их систему. Иначе — никак.
Есть, правда, тупые read-only Mifare Ultralight карты в Москве, в принципе, их можно эмулировать с телефона, но их все равно надо сначала купить удобным образом.
2. Про сложности с клонированием коллега выше уже сказал. Все платежные смарт-карты подразумевают что на них в защищенной памяти зашиты, грубо говоря, секретные ключи и/или секретные данные, а наружу карта отдает только то, что надежно атуентифицирует ее перед считывателем. Достать из защищенной памяти ценные данные можно, но это слишком дорого.
3. Раработчики и интеграторы об этом уже подумали. Да, смартфон с NFC может эмулировать несколько бесконтактных банковских карт, но есть одна проблема — как NFC SE SIM, так и встроенные в железо NFC SE требуют секретных ключей для установления защищенного канала с SE. В случае с NFC SE SIM — это сложная процедура, договора и геморрой с ОПСОСом, чья SIM, а в случае со встроенным NFC SE — то же самое, но уже c производителем телефона. Понятно, что MasterCard может сделать это для работы своего PayPass Wallet на популярных марках Android-смартфонов, но частное лицо или небольшая фирма — едва ли: как минимум, слишком долго и дорого.
Смарт-карты по определению предполагают, что их нельзя скопировать, для этого их и делают.
Существуют атаки, но они работают не всегда и не везде, и требуют отдельного железа.
В общем, ответ — «нереально».
Понятно. Спасибо. Тогда буду копаться в протоколах. Авось, что и найду там для развития этой темы. :)
Зависит от того, какую бесконтактную смарт-карту вы хотите эмулировать.
Если речь идет о HID prox, EM-Marin и им подобные(кстати, Clamshell это всего-лишь разновидность корпуса карты), работающие на частоте 125 КГц, то ничего не выйдет.
Эмулировать карты Mifare можно:
Ultralight и Classic - только при наличии поддержки чипсетом аппарата. Для Classic-а потребуются ключи.
DESFire - все несколько сложнее, но в принципе можно, если вы напишете эмулятор SAM-а, и у вас также будут все необходимые ключи.
Теперь что касается высказывания предыдущего корреспондента относительно метро.
В метро используются преимущественно Mifare Ultralight и никаких "проприетарных" карт там нет. Mifare является стандартом дэ факто и везде одинаков. Безусловно, Ultralight - карта тупая, но совсем не ReadOnly. У нее читаются все сектора без каких-либо трудностей. Если скачать прогу от NXP TadInfo в маркете, то можно увидеть дамп любой метрошной карты.
В реальной жизни основная проблема копирования Mifare Classic и Ultralight состоит в том, что UID на этих картах прошивается на заводе, он уникален для каждой карты и не изменяем. И даже есть у вас есть белый пластик и есть все ключи(для Classic-а), то повторить его полностью вы не сможете из-за того же UID-а.
Таким образом, если ваш чипсет поддерживает работу с произвольными UID-ами, то вы можете эмулировать карты Mifare при условии, что самостоятельно напишете программный эмулятор верхнего уровня.
EMV-карты также прекрасно эмулируются, т.к. работают на той же ISO 14445 и на то есть общеизвестные приложения.
P.S. Если я правильно понял, вопрос именно об эмуляции карт, а не об их взломе. Эмуляция подразумевает, что вся необходимая информация(ключи, идентификаторы. дампы) у вас уже есть.
Новые утилиты, помогающие пополнять и проверять баланс Тройки через NFC, упростили жизнь многим занятым людям. Бесконтактная технология дает возможность записывать билеты на Тройку дома. Такой своеобразный электронный кошелек экономит время и нервы, которые ранее тратились при пополнении счета в метрополитене.
Описание и возможности мобильного приложения
Для удобства клиентов, разработчики создали интересные софты, с помощью которых можно платить, проверять и пополнять баланс карты Тройка при помощи мобильного устройства. Интерфейс программных обеспечений прост и понятен. Благодаря приложениям, установленным на смартфоне, перед пользователем открываются новые возможности.
- пополнять счет транспортной карты дома в течение нескольких минут;
- узнавать об остатке на счету и для этого даже не понадобится интернет-соединение;
- просматривать информацию об осуществленных операциях;
- приобрести новый проездной, если старый стал недействительным;
- оплачивать билеты в Третьяковскую галерею, музеи, Лунариум, зоопарк;
- добавлять карточки банков в приложение.
Системные требования для установки
Для функционирования приложения, смартфон должен быть оснащен модулем НФС, поддерживать бесконтактную связь. При отсутствии чипа, совершать какие-либо действия будет невозможно.
Мобильные с NFC на Андроиде, обычно имеют ОС версии 4.0 и выше. На телефоне также не должно быть рут-прав, а прошивка обязательно официальная.
Внимание! Телефоны iPhone не подходят, нужны устройства, исключительно на ОС Android.
Как работать с приложением на мобильном телефоне
Для осуществления платежей, проверки или пополнения карты Тройка через телефон с NFC, нужно загрузить приложение.
После открытия ПО, придется авторизоваться через свой аккаунт. Подключенная опция позволяет вносить плату за билеты без очередей. Не придется долго ждать. Ведь все происходит в домашних условиях, быстро и в комфорте.
Имейте в виду! Заранее следует купить пластиковую карточку Тройка. Она продается в кассах на ЖД вокзалах и станциях, метро, в специальных автоматах. Стоит — 50 рублей.
Как привязать карту к смартфону
Чтобы стало возможным использовать транспортную карту Тройка через NFC на Андроиде, целесообразно настроить сервис «Мобильный билет» и произвести привязку карточки. Тут придется приобрести симку с НФС, на которой и настраивается услуга. Она предоставляется такими мобильными операторами:
Имейте в виду! Если произвести замену старой сим-карты на новую с Near Field Communication, то последнюю выдадут бесплатно.
Привязывать карточки несложно. Важно произвести все действия в четкой последовательности. Нужно:
- Поставить симку с НФС в слот мобильника.
- Активировать NFC в гаджете.
- Кликнуть на установленную утилиту, открыть приложение.
- Появится информация о ПО, ее можно вычитать или пропустить.
- Войти или зарегистрироваться (если ранее этого не было сделано). Можно ввести номер телефона и пароль или же пройти авторизацию через соцсети (ВК и Facebook).
- Установить способ идентификации. Самым популярным сейчас является — отпечаток пальца.
- Приложить карту к телефону, поближе к месту, где располагается чип NFS.
- После произойдет копирование пластикового носителя в электронный вариант и высветится меню карты.
Теперь понятно, что привязать Тройку к мобильному телефону с NFC подвластно любому. Далее можно пополнить счет (при необходимости), проверить баланс или оплатить проезд.
Как проверить баланс счета
Узнать о сумме, находящейся на карточке Тройка, можно разными способами. Не обязательно всегда для этого вовлекать пластиковый носитель. Рассмотрим все возможные варианты.
Через терминал
Если карта под рукой, а вы находитесь в метрополитене, то просто приложите ее к считывателю. Через несколько секунд информация появится на экране.
В «Мобильном билете»
Если опция подключена, то для получения необходимой информации, достаточно просто открыть раздел «Баланс».
По SMS
Через телефон с НФС
Проверка счета значительно упрощается для тех, кто настроил себе приложения «Мой проездной» или «Тройка. Проверка и пополнение баланса». Узнать об остатке средств на карточке, можно за секунды. Нужно просто поднести пластиковый носитель к задней панели смартфона и ожидать. Вскоре на экране появится соответствующая информация.
С помощью телефона «Горячей линии»
Как пополнить карту «Тройка» через NFC-соединение
Самым легким и современным способом пополнения транспортной карточки, является использование бесконтактной связи. Те, у кого мобильный с модулем НФС, могут делать это через специальные приложения. Названия их уже знакомы, это:
Нужно следовать инструкции:
- Открыть приложение.
- Перейти в раздел «Оплата».
- Приложить карту Трока к задней крышке телефона и подождать, пока произойдет распознавание номера.
- Прочитать высветившуюся информацию — номер транспортной карточки и баланс.
- Нажать на значок «+».
- Вписать сумму, на которую планируете пополнять.
- Выбрать способ оплаты (мобильный телефон или банковская карта).
- При выборе второго, вписать реквизиты банковского инструмента и подтвердить списание средств.
- Убедиться в зачислении денег.
- Записать средства на пластиковый носитель. Для этого нужно просто приложить карточку к телефону сзади и подождать. Запись произойдет за несколько секунд.
Тихо и спокойно, без простоя в очередях и траты времени, можно пополнить Тройку в телефоне Андроид с НФС.
Как заплатить Тройкой за проезд
Оплачивать карточкой в отведенных местах (трамваях, троллейбусах, автобусах, электричках, метрополитене) легко. Нужно просто приложить ее к турникету и дождаться разрешающего звукового сигнала.
Можно пользоваться электронной картой. Для этого скачивается мобильное бесконтактное приложение (Android Pay или Samsung Pay) и привязывается к нему транспортная карточка. Для оплаты разблокируется смартфон, находится в списке соответствующий платежный инструмент и гаджет подносится к считывающему устройству.
Заключение
Если смартфон с НФС, то появляется возможность работать с транспортной картой Тройка в бесконтактном режиме. Не нужно будет спускаться в метро к терминалам или кассе для пополнения счета или носить с собой карточку, ведь гаджет успешно ее заменит.
Доводилось ли вам слышать на эскалаторе объявление о том, что можно заблаговременно приобретать проездные билеты для того, чтобы не стоять в очередях у окошек, в которых служащие метрополитена продают проездные билеты?
Те, кто пользуется только наземным транспортом, вынуждены спускаться в метро, чтобы пополнить «Тройку» – согласитесь, не очень удобно.
С новым приложением «Мой проездной» от Банка Москвы больше действительно не придётся терять время в очередях, или, в очередной раз пытаясь зайти в метро, становиться перед фактом нулевого баланса на транспортной карте «Тройка».
Стоит отдельно отметить, что это действительно первое подобное приложение, позволяющее не только прочитать баланс любой транспортной карты (не только «Тройки», но и обычного билета с чипом, продающегося для городского наземного транспорта и метро), но и приобрести билет и сразу же записать его на имеющийся проездной.
Разработка готового приложения заняла немного времени, так как мы оперативно создали прототип, и больше времени потребовалось для кастомизации решения для нормальной работы на различных моделях телефонов.
Самые критические функции, связанные с привязкой банковской карты, проведением платежа по ней и работе с профилем клиента, были нами сделаны быстро, так как это отлаженный и стабилизированный функционал.
Что умеет «Мой проездной»
Android-приложение «Мой проездной» для держателей карт любого российского банка позволяет получить полный цикл услуги по пополнению баланса карты «Тройка»: от проверки баланса до записи на карту информации о купленном билете.
Те, кто пользуется только наземным транспортом, вынуждены спускаться в метро, чтобы пополнить «Тройку» – согласитесь, не очень удобно
Подобное приложение, позволяющее на мобильном устройстве в любое удобное вам время управлять состоянием и балансом транспортной карты, стало доступно рынку впервые.
Работает это следующим образом – если в вашем Android-смартфоне есть NFC-модуль (а здесь заранее стоит отметить тот факт, что не все смартфоны с поддержкой NFC аппаратно поддерживают бесконтактные чипы, использующиеся в «Тройке» – список проверенных устройств будет ниже), то с помощью «Моего проездного» вы сможете купить и записать на «Тройку» любой билет действующего тарифного меню: «Единый», «ТАТ» на 1-60 поездок, «90 минут» или проездной на 30, 90 и 365 дней.
Естественно – все покупки не облагаются никакой комиссией.
Помимо этого можно с банковской карты напрямую пополнить баланс Электронного кошелька, а также прочитать текущий баланс билетов ГУП «Мосгортранс» (наземный транспорт) и ГУП «Московский метрополитен» (метро), которые записаны на вашу «Тройку».
Само приложение, уже доступное в магазине Google Play, является дальнейшим развитием «Единой платежной платформы» Банка Москвы. Уже сейчас в эту экосистему входят приложения «БМmobile.Кошелёк», «Переводы» и «Квартплата», а также городское приложение «Парковки Москвы». При этом используется единая учётная запись пользователя для всех приложений, что удобно не только в том случае, если вы являетесь клиентом непосредственно банка.
Поэтому и регистрация требуется только в том случае, если у вас ещё нет учётной записи в одном из вышеупомянутых приложений. А сделав её один раз, вы сможете использовать привычные вам логин и пароль в других приложениях Банка Москвы. Согласитесь – это удобно.
При решении задач, связанных с разработкой интеграционного слоя между смартфоном и бесконтактной картой, нами использовались стандартные системные библиотеки, лицензированные владельцем технологии – компанией «NXP Semiconductors». Основной проблемой стало собственно определение типа NFC-контроллера.
Изначально предполагалось использовать стандартные функции, позволяющие при старте аппликации определять – поддерживает ли установленный NFC-контроллер взаимодействие с картами стандарта «Mifare Classic» или нет. В итоге пришлось модифицировать уже согласованный дизайн, поскольку выяснилось, что довольно большой процент бюджетных китайских смартфонов, оборудованных NFC-контроллером, всё-таки прекрасно поддерживает взаимодействие с «Тройкой», но при этом системная функция возвращала совершенно иной ответ.
Вообще, читая отзывы на маркете, начинаешь понимать несущественные на первый взгляд упущения. Так, например, многие думают, что бумажные билеты и карта «Тройка» – это одно и то же, и сильно удивляются, почему их карту приложение «Яндекс.Метро» читает, а приложение «Мой проездной» – нет. На самом деле, это совсем не так, «бумажные» билеты реализованы на носителях стандарта «Mifare Ultralight», а карта «Тройка» (на самом деле многоразовый носитель) использует стандарт «Mifare Classic», а это две большие разницы. Мы, кстати, в ближайших релизах поддержим чтение баланса «бумажных» билетов.
В целом поддержка работы с бесконтактными картами посредством мобильного телефона – это отдельная предметная область, поскольку питание бесконтактных карт реализовано на принципах индуктивности (чтобы было понятнее – вспомните обычный трансформатор, в нашем случае карт-ридер – это одна половинка трансформатора, а бесконтактная карта – другая половинка), и во многом это больше инженерные вопросы, чем собственно прикладное программирование.
Например, если чехол вашего смартфона поддерживает бесконтактную зарядку, то вероятность того, что даже при «правильном» NFC-контроллере будут читаться бесконтактные карты, не сильно высока. Дополнительные проблемы – это так называемые дуальные карты (т.е. карты, поддерживающие работу по контакту и бесконтакту), данные карты не только требовательны к питанию, но и зачастую требуют реализации для них отдельных алгоритмов взаимодействия.
Привет, Хабр! В этой статье хотели бы рассказать о новой версии бесплатного приложения «Мой проездной».
Оно дает возможность в онлайне покупать и записывать проездные билеты на транспортные карты «Тройка», «Стрелка» и ЦППК с помощью NFC-контроллера смартфона, работающего на базе операционной системы Android. При покупке билетов через приложение комиссия не взимается.
Обновленная версия 2.0 отличается рядом изменений, многие из которых сделаны исходя из отзывов и пожеланий пользователей. В числе новинок полностью переработанный дизайн, поддержка новых транспортных карт и дополнительные удобные функции. Также надо отдельно отметить появившуюся возможность записи на социальные карты студентов и учащихся (СКС/СКУ) льготных проездных наземного городского транспорта.
Транспортная карта «Тройка» появилась еще в 2013 году. Тогда идеей Департамента транспорта Москвы было не только упростить оплату за проезд в общественном транспорте столицы, но и связать его в единую сеть. И хотя это значительно облегчило жизнь горожан, но для полного счастья была необходима система, позволяющая быстро и удобно пополнять баланс транспортных карт – так появилось приложение Банка Москвы под названием «Мой проездной», которое увидело свет в начале 2015 года.
В предыдущей статье мы уже рассказывали о первой версии этого сервиса.
Приложение является частью экосистемы Единой платежной платформы Банка Москвы.
Единая платежная платформа также обслуживает и различные городские сервисы, среди них, например, сервис «Парковки Москвы» (пополнение парковочного счета).
Изначально идея была такова – сделать процесс оплаты билетов на городской транспорт как можно более быстрым и простым. Так как смартфон в условиях сегодняшней реальности есть практически у каждого, то решение задачи было очевидно – технология NFC (Near Field Communication) для обмена данными между электронными устройствами на рабочей дистанции не более 10 см оказалась идеальной для данного случая.
Модулями NFC оснащены многие современные смартфоны, так что данный выбор основывался также и на доступности технологии пользователям. Как осуществляется покупка билета в приложении при помощи NFC? Проще простого: купив проездной билет через «Мой проездной», вам нужно всего лишь приложить транспортную карту к задней крышке смартфона, и билет сразу же будет записан. Бинго!
Если же ваш смартфон не оснащен модулем NFC, или модуль NFC на вашем телефоне несовместим с технологией Mifare Classic, не стоит расстраиваться – с помощью сервиса «Мой проездной» можно положить на Электронный кошелек транспортной карты средства, которые будут отражены на карте сразу же, как только вы приблизите карту к одному из желтых терминалов, установленных в вестибюле на всех станциях метро.
Не все модули NFC могут обеспечить взаимодействие между транспортной картой и телефоном. Список поддерживаемых смартфонов всегда можно найти на странице приложения в Google Play или на популярных технических порталах.
Приложение «Мой проездной» версии 2.0 имеет полностью переработанный дизайн. Теперь он отвечает стандартам популярного ныне Материального дизайна (Material Design), представленного в прошлом году и продвигаемого корпорацией Google.
Так как особое внимание при создании второй версии приложения «Мой проездной» разработчики уделяли отзывам и пожеланиям пользователей, то они просто не могли не учесть самую «популярную» просьбу: сделать доступной в приложении покупку и запись билетов на пригородные электропоезда. Банк Москвы провел переговоры с Центральной пригородной пассажирской компанией (ЦППК), результатом которых стало создание новой технологии совместно с компанией «Предприятие «МИКРОТЕХ».
Теперь из приложения можно осуществлять покупку билетов на пригородные электрички и записывать их на карту посредством NFC. Биллинговая система транспортного оператора в онлайне определяет перечень билетов, доступных к покупке и записи на транспортную карту.
Сервис работает с транспортными картами «Тройка» и ЦППК, которые являются бесконтактными смарт-картами Mifare Plus в режиме эмуляции Mifare Classic, а также дуальными картами с транспортным апплетом для записи проездных (карта «Стрелка). Кроме того, «Мой проездной» умеет работать с социальными картами москвича СКМ, СКУ и СКС, которые можно использовать для проезда в общественном транспорте г.Москвы. Возможность работы с социальными картами студентов для записи льготных проездных на наземный транспорт очень актуальна и востребована.
Приложение умеет работать с Google Calendar, что стало приятным и удобным дополнением. В календаре можно создавать напоминания, которые предупредят вас об окончании срока действия купленного билета. В разделе «Расписание» вы сможете просматривать расписание пригородных электропоездов, а также сразу же из этого раздела приобретать билеты, не переходя не другие экраны приложения. Кроме этого приложение позволяет осуществлять так называемые рекуррентные (регулярные) платежи: разработчики решили еще больше упростить покупку билетов, сделав доступной функцию покупки «в один клик». Теперь достаточно выбрать нужный вам билет, затем нажать на кнопку покупки в один клик, приложить транспортную карту – и дело сделано.
Вы можете привязать к приложению сколько угодно банковских карт, присвоив им имена и цвет, чтобы удобно и быстро в них ориентироваться. Карты, доступные для оплаты в приложении, готовы для использования и в других сервисах Единой платежной платформы Банка Москвы.
В одной из наших статей мы рассказали, как работают системы бесконтактных платежей смартфоном с помощью NFC. Но у NFC есть и другие полезный функции. Сегодня опробуем на практике еще одну: «запрограммируем» смартфон на определенные действия при распознавании метки NFC. Зачем это нужно? Все просто. Например, если у вас дома Wi-Fi, каждый раз, когда вы приходите с [. ]
В одной из наших статей мы рассказали, как работают системы бесконтактных платежей смартфоном с помощью NFC. Но у NFC есть и другие полезный функции. Сегодня опробуем на практике еще одну: «запрограммируем» смартфон на определенные действия при распознавании метки NFC. Зачем это нужно? Все просто.
Например, если у вас дома Wi-Fi, каждый раз, когда вы приходите с работы, нужно переключаться на свою сеть с мобильного интернета. Очень часто, когда садитесь в машину, становится необходим навигатор, а на работе приходится включать беззвучный режим. Все это можно автоматизировать, чтобы не тыкать пальчиками и не свайпить почем зря. Что для этого понадобится?
- смартфон с NFC
- метка NFC (можно старый транспортный билет с чипом)
- 3-4 минуты свободного времени
Метим территорию
Итак, наш план действий: научить смарфтон реагировать определенным образом на определенную же метку NFC. У каждой метки есть идентификатор. Гаджет должен опознать его и выполнить «запрограммированные» действия. Чтобы привязать действия к ID метки нам понадобится одно из подходящих приложений — например, NFC ReTag Free.
ШАГ 1. Качаем из магазина, запускаем. Подносим нашу метку — в данном случае транспортную карту. Приложение опознает ее и сообщает нам идентификатор.
ШАГ 2. Даем метке более понятное обозначение. Жмем на зеленую кнопку «Действия» и видим список действий, которые можем привязать к этой метке.
Тут много всего интересного — запуск приложений, включение Wi-Fi, изменение громкости сигнала, звонок на определенный номер…
ШАГ 3. Выбираем для примера запуск Яндекс.Навигатора.
ШАГ 4. Ждем кнопку ОК — собственно, все готово. Проверяем результат. Подносим разблокированный смартфон к транспортной карте, и вуаля: навигатор запускается автоматически. Мы взяли самую «доступную» метку NFC, но можно купить и более практичную, в форме наклейки. Такую можно наклеить, например, на держатель для смартфона в автомобиле — установите в него гаджет, и навигатор загрузится автоматически.
Как это работает:
Можно программировать не одно событие, а целую цепочку. Экспериментируйте!
Если вас заинтересовала тема NFC, почитайте и другие наши статьи:
Читайте также: