NFC «Тройка» = «Мой проездной» / Хабр

Тройка сломалась, треснула или погнулась – что делать?

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

  • в пункт по продаже билетов ГУП «Мосгортранс»;
  • в сервисный центр «Московский транспорт»;
  • в пассажирское агентство ГУП «Мосгортранс».

Адреса сервисных центров «Московский транспорт»:

  • ул. Старая Басманная, дом 20, корп. 1, без выходных, с 08:00 до 20:00
  • ул. 1905 года, дом 25, без выходных, с 08:00 до 20:00

Адрес пассажирского агентства ГУП «Мосгортранс»:

  • Лубянский пр., дом 5, без выходных, с 08:00 до 20:00

Вместе со сломанной картой нужно сдать новую исправную карту для переноса баланса или тарифа, бесплатно новые карточки не выдают. Ее стоимость – 50 рублей. При этом желательно иметь чек на пополнение старой карты.

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

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

Почему нельзя просто подложить карту «тройка» под чехол

На карточке «Тройка» присутствует НФС чип и некоторые хотят обхитрить окружающих — вставляют платежное средство под чехол, но результат не радует. Почему? Тут несколько факторов, которые доказывают малую эффективность работы карты в данном случае. Это:

  1. Передача сигнала у карт «Тройка» незначительна. Работают они на очень близком расстоянии. Чтобы транзакция осуществилась, придется класть карточку к турникету вплотную. Чехлы же не позволяют это сделать. Отсюда и проблемы со считыванием данных. Прежде чем платеж пройдет, человек обратит на себя всеобщее внимание, так как специальный сигнал будет звучать и слышим окружающими.
  2. Внушительный размер карточки. Не под каждый чехол «Тройка» вместится, так как ее размер такой же как кредитка. Нередко края карты остаются снаружи и чехол не удается закрепить на гаджете так как нужно. Некоторые лица ухитряются уменьшать платежное средство, но после такой махинации оно уже не работает полноценно. Практически по всей карте идут «дорожки» НФС-чипа и задев одну из них вы рискуете испортить карту.
  3. Блокировка работы бесконтактных сервисов. Если вы пользуетесь Apple/Android/Samsung Pay, то установка «Тройки» на задней части корпуса смартфона станет причиной постоянных сбоев как при оплате проезда, так и покупок.

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

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

Nfc «тройка» = «мой проездной»

При решении задач, связанных с разработкой интеграционного слоя между смартфоном и бесконтактной картой, нами использовались стандартные системные библиотеки, лицензированные владельцем технологии – компанией «NXP Semiconductors». Основной проблемой стало собственно определение типа NFC-контроллера.

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

Вообще, читая отзывы на маркете, начинаешь понимать несущественные на первый взгляд упущения. Так, например, многие думают, что бумажные билеты и карта «Тройка» – это одно и то же, и сильно удивляются, почему их карту приложение «Яндекс.Метро» читает, а приложение «Мой проездной» – нет. На самом деле, это совсем не так, «бумажные» билеты реализованы на носителях стандарта «Mifare Ultralight», а карта «Тройка» (на самом деле многоразовый носитель) использует стандарт «Mifare Classic», а это две большие разницы. Мы, кстати, в ближайших релизах поддержим чтение баланса «бумажных» билетов.

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

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

Troikadumper

TroikaDumper – уникальный мобильный клиент, который дает возможность считать содержимое транспортно карты «Тройка» и перезаписывать его с нужной корректировкой информации. Пользователи должны знать, что для правильной и бесперебойной работы приложения портативный девайс должен иметь встроенный чип NFC производителя NXP с поддержкой карт Mifare. С полным списком гаджетов можно ознакомиться на сайте разработчика в хранилище GitHub.

Данная версия утилиты предназначена специально для портативных гаджетов на платформе Android.

Среди основных особенностей утилиты есть возможность вносить изменения на транспортную карту «Тройка». Осуществляется поддержка чтения полного объема хранимой информации и корректировка конкретных значений на определенных позициях. Если сказать по-другому, то пользователь может считать любую информацию с пластиковой карты:

  • состояние счета;
  • дата последнего использования; 
  • ID турникета.

А также вносить корректировки в  значения любой позиции. Иногда это позволяет вносить деньги на баланс без оплаты.

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

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

  • В основе принципа работы утилиты лежит обнаружение слабых мест в формате хранения информации транспортной карты «Тройка»;
  • возможность считывания полного содержимого карты, сохранять и перезаписывать все корректировки;
  • портативное устройство должно быть оборудовано NFC чипом производства NXP, который осуществляет поддержку частоты карт Mifare;
  • бесплатное пополнение транспортной карты «Тройка»;
  • простой и очень удобный пользовательский интерфейс;
  • распространение по free-лицензии;
  • осуществляется поддержка всех актуальных версий операционной системы Android.

А если никуда не обращаться?

Если у вас нет времени обращаться в представительство ГУП «Мосгортранс», а денег или поездок на карте оставалось как раз только на проезд до сервисного центра, просто приобретите новую карту или брелок Тройка, так как она не персонифицирована и по сути является простым билетом, только в пластике и с функцией пополнения.

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

При неисправности карты «Тройка», в случае если карта не имеет механических повреждений, пассажир может обратиться:

  • в любую кассу метрополитена
  • в специализированный пункт по продаже билетов ГУП «Мосгортранс»
  • в Сервисный центр «Московский транспорт»*
  • в Пассажирское агентство ГУП «Мосгортранс»**

В случае если карта имеет механические повреждения, пассажир может обратиться:

  • в специализированный пункт по продаже билетов ГУП «Мосгортранс»
  • в Сервисный центр «Московский транспорт»*
  • в Пассажирское агентство ГУП «Мосгортранс»**

* Сервисные центры «Московский транспорт»:— ул. Старая Басманная, д. 20, корп. 1, пн.-вс.: 08.00-20.00— ул. 1905 года, д. 25, пн.-вс.: 08.00-20.00

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

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

Атака повторного воспроизведения

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

Все устройства, работающие с балансом электронного кошелька (турникеты, терминал), проверяют достоверность подписи, и, в случае несоответствия подписи, возвращают ошибку “карта неисправна”.

Установлено, что подпись формируется на основе уникального идентификационного номера карты (UID), поэтому клонирование сектора памяти электронного кошелька из одной карты на другую с отличным UID, всегда дает недействительную подпись.

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

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

шаги атаки повторного воспроизведения
image

Для установления возможности реальной эксплуатации уязвимости было выполнено продолжительное тестирование атаки повторного воспроизведения на инфраструктуре общественного транспорта Москвы. Первым был протестирован наземный транспорт: троллейбусы, автобусы, трамваи.

Электронный кошелек был пополнен единожды на сумму 50 рублей и все проходы через турникеты были выполнены с помощью атаки повторного воспроизведения.В течение пяти дней было совершено 57 поездок в наземном транспорте на общую сумму 1767 рублей.

Для тестирования систем метрополитена была куплена новая карта и пополнена на 50 рублей. Все проходы через турникеты были выполнены с помощью атаки повторного воспроизведения. Было выполнено 12 поездок в течение 2 дней на общую сумму 384 рубля. На третий день карта была заблокирована на всех турникетах метро и наземного транспорта.

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

Карта тройка размагнитилась – как поменять на новую и восстановить поездки?

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

Вы можете обратиться:

  • в кассу метрополитена;
  • в пункт продажи билетов ГУП «Мосгортранс»;
  • в сервисный центр «Московский транспорт»;
  • в пассажирское агентство ГУП «Мосгортранс».

Самый простой способ – подойти к кассиру на любой станции московского метрополитена или в серую будку Мосгортранса и заполнить заявление на экспертизу и восстановление транспортной карты. Временный билет при этом не выдается. Техническая экспертиза производится не более 10 календарных дней.

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

Форма заявления на техническую экспертизу билета.

Срок действия проездного продлевается на количество дней, в которые проводилась экспертиза.

Обратите внимание: восстановление баланса или оплаченной услуги производится после оплаты изготовления новой транспортной карты в размере 50 рублей.

Карту тройка теперь можно восстановить при потере

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

На реализацию этих простых функций потребовалось шесть лет.

upd.: Эта версия приложения убила у моего брата две Тройки. Возможно, проблемы возникают только на смартфонах Xiaomi. Почитайте отзывы на Play Market прежде, чем обновлять приложение.

NFC   «Тройка» = «Мой проездной» / Хабр

Осенью 2021 года чиновники обещали сделать восстановление карты «Тройка» со всеми проездными и поездками при утере до конца года. Не уточнили только, до конца какого года. Оказалось, до конца 2020. 🙂

В новой версии официального приложения Московского метрополитена “Метро Москвы” появился личный кабинет.

NFC   «Тройка» = «Мой проездной» / Хабр

Замечу, что добавляя функции в приложение разработчики не могли его не ухудшить: раньше можно было просто приложить карту Тройка к смартфону с NFC, чтобы узнать баланс и пополнить карту, теперь это возможно только после авторизации в личном кабинете. Придётся зарегистрироваться в личном кабинете (по номеру телефона, через mos.ru или другими способами) и создать пароль, без ввода которого (или отпечатка пальца) невозможно посмотреть баланс любой Тройки или пополнить её.

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

NFC   «Тройка» = «Мой проездной» / Хабр

Две последние станции, если вы не помните, можно посмотреть в приложении Город, но если не знать, найти это там непросто: Мои карты – Карта Тройка – История.

NFC   «Тройка» = «Мой проездной» / Хабр

Этот квест я не прошёл – почему-то последняя поездка на метро по Тройке у меня отображается, как “вход в метро” без указания станции.

NFC   «Тройка» = «Мой проездной» / Хабр

Пополнить мне предложили на 18 рублей, что я тут же и сделал через Google Pay и карта привязалась. При нажатии на изображение карты Тройка появляется меню со всеми возможностями.

NFC   «Тройка» = «Мой проездной» / Хабр

Для переноса баланса (и вроде как проездных тоже, судя по надписи “карта или списания”) нужно заблокировать потерянную или сломанную Тройку, дождаться сообщения о блокировке и начать процесс.

NFC   «Тройка» = «Мой проездной» / Хабр

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

NFC   «Тройка» = «Мой проездной» / Хабр

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

P.S. Спасибо за информацию об этой возможности Аиде Токрановой и Денису Короткову.

© 2020, Алексей Надёжин


Десять лет я каждый день пишу о технике, скидках, интересных местах и событиях. Читайте мой блог на сайте ammo1.ru, в ЖЖ, Дзен, МирТесен.
Мои проекты:
Lamptest.ru. Тестирую светодиодные лампы и помогаю разобраться, какие из них хорошие, а какие не очень.
Elerus.ru. Собираю информацию об отечественных электронных устройствах для личного использования и делюсь ей.
Вы можете связаться со мной в Телеграм @ammo1 и по почте ammo1@mail.ru.

§

  • На упаковке карточки памяти Kingston Canvas Select Plus 128 ГБ гордо написано “100 MB/s”. Оказалось, что её реальная скорость работы существенно…

  • Большинство покупателей заказывает на Али простые гирлянды с большим количеством светодиодов. Они дешёвые и хорошо смотрятся. Сейчас ещё можно успеть…

  • Скоро новый год, пора заготавливать гирлянды. Гирлянда с адресными светодиодами самая красивая – каждый её светодиод меняет цвет и яркость независимо…

  • Я с удивлением обнаружил, что на Озоне множество продавцов торгуют поддельными карточками памяти MicroSD. Вот, к примеру, карта 128 ГБ за 820…

  • *** Минутка полезной рекламы, которую никто не заказывал, за которую мне никто не платил, но вы и я можем получить весьма приятные бонусы *** $$$ В…

  • Наверное вы слышали шутку, что любой разъём USB всегда втыкается только с третьего раза. Действительно воткнуть разъём USB или MicroUSB правильной…

  • Мобильное приложение, прошивка и аппаратная платформа этой камеры значительно отличается от большинства китайских камер и многое здесь сделано…

  • Сегодня на сайте МТС появился тариф, который раньше был только для избранных. Без подвоха, увы, не обошлось. Тариф “Smart для своих” существует…

  • Почти год назад Билайн создал уникальный тариф, выгодный абонентам и не очень выгодный самому оператору – «Связь Z». Сейчас по нему снова ухудшили…

  • Номер турникета, дата и время прохода

    Аналогичная методика была применена для изучения формата остальных данных в секторе. Было выполнено несколько проходов через турникеты метро и сохранено состояние памяти после каждого прохода. Проходы были выполнены с интервалом времени в 1 минуту попеременно на двух различных турникетах.

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

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

    для расчета часов image

    Таким образом получим время 15:30, что соответствует действительному времени прохода.

    На основе полученных сведений можно расшифровать данные представленные в предыдущей таблице

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

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

    Пополнить "тройку" теперь можно через мобильное приложение "метро москвы"

    16 июня 2021

    Пассажиры метро, МЦК и наземного городского транспорта теперь могут пополнить карту «Тройка» онлайн через обновленное мобильное приложение «Метро Москвы». При этом для зачисления денег на счет больше не придется спускаться в метро и прикладывать транспортную карту к желтым валидаторам . Владельцам телефонов на базе Android теперь достаточно приложить карту к мобильному телефону, и пополнение баланса пройдет через NFC-соединение. Функция позволит пополнять карту «Тройка» стоя на остановке, или по пути к метро, что поможет существенно сэкономить время, затраченное на поездку.

    Читайте ещё про NFC:  Золотая корона горячая линия бесплатный номер телефона 8800

    Приложение «Метро Москвы» можно также использовать для активации отложенного платежа. Баланс счета можно пополнять любым способом, включая  «Яндекс.Деньги», Qiwi, Webmoney, и в любое время, и активировать платеж – когда вам удобно!

    Для владельцев гаджетов на операционной системе iOS в обновленной версии приложения «Метро Москвы» также предусмотрены новые способы пополнения баланса карты «Тройка». Обладатели таких смартфонов могут зачислить деньги на счет «Тройки» с помощью платежной системы Apple Pay. При выборе  Apple Pay пользователю нужно будет только подтвердить способ оплаты, используя Touch ID или пароль. Однако для того, чтобы активировать оплату,  карточку все же нужно будет приложить к желтому валидатору на станциях. 

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

    В обновленном приложении «Метро Москвы» также появилась тематическая страница о Кубке Конфедераций, представленная на 4 языках: русском, английском, немецком и испанском. На странице можно найти расписание матчей, описание команд-участниц, правила бесплатного проезда во время турнира и многое другое.

    NFC   «Тройка» = «Мой проездной» / Хабр

    Прячете лицо – будьте готовы к блокировке "тройки"

    Суд над взломщиками карты "тройка".

    Читайте ещё про NFC:  Apple Pay

    Управление балансом

    Как пополнить баланс

    Отправьте SMS с текстом «оплата XXX» на номер 3210, где XXX — сумма пополнения.

    Например, оплата100

    Если остаток на счёте «Мобильный билета» будет меньше 90 ₽, он автоматически пополнится до 150 ₽. Чтобы отключить автоматическое пополнение счёта, отправьте SMS с текстом OFF на номер 3210. Чтобы включить снова, отправьте SMS с текстом ON на номер 3210.

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

    Как узнать баланс

    • воспользуйтесь SIM-меню вашего телефона: выберите из списка «Мобильный билет», а затем нажмите «Баланс»;
    • отправьте SMS с текстом баланс на номер 3210.

    Вы можете вернуть деньги с баланса «Мобильный билета», позвонив по номеру 3210.

    Как узнать, сколько поездок осталось

    Количество поездок не ограничено. Каждый раз, когда вы используете телефон для оплаты проезда, с баланса «Мобильного билета» списывается сумма по тарифу карты «Тройка».

    Формат данных в секторе электронного кошелька

    Чтобы понять структуру хранения данных в памяти карты, была использована чистая карта, купленная в кассе, по которой не было выполнено ни одной поездки. Далее карта была пополнена 10 раз на 1 рубль через автомат. После каждого пополнения состояние памяти сохранялось.

    дампы памяти восьмого сектора после пополнений на 1 рубль
    image

    Видно, что данные изменяются в первом блоке (нумерация от нуля) с 9 по 15 байт. Очевидно, что в данном месте содержится баланс электронного кошелька. Путем подбора возможных форматов хранения данных было выяснено, что значение баланса электронного кошелька хранится в области памяти от младших 4 бит 8 байта до старших 3 бит 10 байта и рассчитывается по формуле

    Где 137B8 значение в памяти карты в шестнадцатеричном формате, а 399 сумма в рублях.Таким образом можно рассчитать значения из предыдущей таблицы.

    расчет баланса в секторе электронного кошелька
    image

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

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

    Adblock
    detector