Когда я был зимой в Японии, одним из самых удивительных для меня явлений этой страны оказалась невероятная система общественного транспорта. Она не только была эффективной и надёжной, но и турникеты на станциях работали подозрительно быстро. Турникеты лондонской подземки не сравнятся с ними по скорости работы с Google Pay и другими моими бесконтактными картами. В чём же причина? Я решил изучить, почему японская система транспортных карт (IC-карт) так уникальна по сравнению с западными, и в процессе этого исследования узнал пару любопытных фактов.

Основы NFC

Near-field communication (NFC) — это набор протоколов, позволяющий двум устройствам общаться друг с другом без физического контакта посредством радиоволн с частотой 13,56 МГц (она определена в ISO/IEC 14443). Эта технология применяется во множестве сфер:

Постойте... разве защита MIFARE Classic не ужасна? Кто-то уже мог клонировать мой ключ-карту или забраться куда-нибудь даже без него?

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

Япония (и Азия в целом) любопытна тем, что у неё есть собственный тип NFC, по сути, на Западе не существующий: FeliCa — это разработанный Sony стандарт, официально классифицируемый как NFC type F (MIFARE — это type A). На самом деле, FeliCa появился первым, его разработали ещё в 1988 году; MIFARE компании Philips (ныне NXP) появился в 1994 году. Изначально FeliCa широко распространялся не в Японии, а в Гонконге, где его применяли в транспортных картах Octopus уже в 1997 году. И только в ноябре 2001 года JR East начала применять FeliCa в своих транспортных картах Suica, а Rakuten — в своих картах Edy (это название мне кое-что напоминает...) После этого стандарт распространился во многих странах Азии, например, во Вьетнаме и Бангладеш. В этих странах они занимают ту же нишу, что и в Японии: используются в качестве бесконтактных карт с предоплатой и транспортных билетов.

В местах наподобие Гонконга и Токио пригородным сообщением пользуется множество людей, поэтому на турникетах станций возникают большие очереди. Поэтому Sony сильно вложилась в повышение пропускной способности своей технологии — карты FeliCa могут похвастаться скоростью передачи до 424 Кбит/с, благодаря чему скорость обработки на турникетах значительно выше, чем на Западе. Можно сравнить скорость прохождения через турникет в Лондоне и в Токио (см. обсуждение на HackerNews) — в последнем случае пассажир буквально пробегает через турникет. Частично это связано с тем, что для транзакции достаточно лишь карты и самого считывателя — для выполнения транзакции считыватель не связывается с внешним сервером. IC — это карты с хранимой стоимостью, то есть стоимость хранится внутри них, а не в бэкенде, полностью контролируемом оператором. Кроме того, в карте хранится история последних транзакций, для считывания которой можно воспользоваться любым считывателем NFC, в том числе и в смартфоне. Но эта модель хранения стоимости поднимает интересные вопросы о безопасности... к которым мы вернёмся чуть позже.

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

Можно лишь недоумевать, как Philips, имея фору в 8 лет, умудрилась спроектировать карту, которая и медленнее, и менее защищённая, чем FeliCa? Не знаю, халатность ли это, экономия или что-то ещё, но это привело к реальным проблемам с безопасностьюSecurity through obscurity не работает.

Osaifu-Keitai

Osaifu-Keitai (saifu — «кошелёк», keitai — «мобильный») — это система, позволяющая использовать в качестве IC-карты телефон, имитируя Suica, Pasmo или любые другие карты. Похоже, уже люди давно путаются в FeliCa, IC-картах, Osaifu-Keitai и их связи с телефонами Apple и Google. Когда я начал изучать эту тему, во всём этом мне тоже было сложно разобраться, но я вёл заметки о своих находках. Кучу полезной информации я получил от FelicaDude (RedditTwitter) — пропавшего несколько лет назад анонимного Интернет-незнакомца, похоже, обладавшего знаниями о работе FeliCa. Я не могу подтвердить эту информацию, но она кажется мне логичной; к тому же, вряд ли кто-то будет врать в Интернете, правда?

В современных смартфонах есть оборудование NFC. Чтобы телефон можно было сертифицировать, как поддерживающий NFC, он должен поддерживать NFC-A, NFC-B и NFC-F (FeliCa). Все поддерживающие NFC телефоны поддерживают и FeliCa. Благодаря NFC-F телефон может взаимодействовать с физической IC-картой. В этом можно убедиться при помощи приложения, например, Suikakeibo — ниже показан скриншот с моего Xiaomi Redmi Note 13 Pro: я приложил к нему свою карту PASMO и считал хранимую стоимость и историю транзакций:

Screenshot of the Suikakeibo app on a phone, showing card value and recent transaction history

Однако поддержки NFC-F недостаточно для того, чтобы использовать телефон в качестве IC-карты. Для этого ещё требуется и поддержка Osaifu-Keitai. Изначально Osaifu-Keitai разрабатывалась NTT Docomo как функция фичерфонов компании, позволявшая звонить по телефону и применять его как IC-карту. Позже её интегрировали в смартфоны благодаря использованию secure element, уже существующих в телефоне для других функций, требующих безопасного хранения криптографических ключей (Apple Pay, Google Pay, биометрической разблокировки). В современных телефонах есть всё необходимое для того, чтобы применять их в качестве IC-карт, но, вероятно, в secure element отсутствуют необходимые для этого ключи. Изготовители телефонов (Apple, Google), скорее всего, платят FeliCa Networks за каждый генерируемый и записываемый в устройство ключ (лицензирование или что-то подобное). Так как нет смысла генерировать ключи для устройства, которое не будет использоваться в Японии, в неяпонских моделях нет функций Osaifu-Keitai. Поэтому если даже активировать рут в телефоне и получить полный доступ к secure element, если в secure element телефона нет ключа, то вы не сможете использовать его в качестве IC-карты.

Уточнение: предложение о неяпонских моделях относится к Android; Apple встроила затраты на ключи в свои телефоны, поэтому во всех них есть функциональность Osaifu-Keitai. Система Osaifu-Keitai работает на всех современных iPhone, вне зависимости от рута и страны продаж.

Возможно, наряду с отсутствием ключей есть и другие причины недоступности функций Osaifu-Keitai в устройствах Android. Предполагаю, здесь есть ещё и проблем с лицензированием или патентами, но мне не удалось найти никакой публичной информации об этом, поэтому свои подозрения я ничем подтвердить не могу. Комментатор на HN упомянул репозиторий GitHub, в котором, похоже, есть больше подробностей об этом.

Защита

Когда я узнал о том, что карта сама хранит свою стоимость, то сразу подумал, что это не может обеспечить полной защиты. Изучив вопрос, я пришёл к выводу, что на самом деле эти карты невероятно защищены, и меня поразило то, насколько хорошо они прошли проверку временем (с 1988 года, напомню!). Это свидетельство того, насколько качественно можно реализовать систему, если всё спланировать правильно изначально, а не притворяться, что скрытность — это безопасность и не пытаться засудить тех, кто укажет, насколько ужасна такая система. Мне не удалось найти никакой информации об успешных атаках на FeliCa, за исключением единственной статьи с подробным описанием бага, использованного кассиром; впрочем, его всё равно поймали благодаря логам аудита и системе клиринговой компании гонконгских карт Octopus. Единственная реальная проблема — это проприетарность криптографии, вероятно, сокрытой под горой NDA, из-за чего её независимый аудит невозможен.

В целом, можно сказать, что IC-карты защищены от:

  • клонирования (ключи считать невозможно),

  • успешной атаки на другую карту (у каждой карты есть собственные ключи),

  • атак воспроизведением (в запросе-ответе генерируются уникальные для каждой сессии ключи).

Возможным вектором атаки мог бы стать эксплойт реализации IC-карт Apple. Если iPhone может имитировать IC-карту, то где-то в системе должен быть код, способный выполнять все необходимые процедуры handshake, ведь так? Однако ключи для этого handshake хранятся в Secure Enclave. Добраться до SE вы сможете, только если вы МоссадNGO Group или какая-то другая пугающая трёхбуквенная организация; а если вам это удастся, то:

  • вы сможете гораздо больше, чем просто подделать японскую транспортную карту,

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

  • срок вашей жизни существенно снизится.

Единственный дополнительный вектор атаки — это сам считыватель. Записывающие на карты стоимость автоматы и турникеты, возможно, подвержены подобным атакам, но даже если провернуть её, то они (вероятно) отправляют логи транзакций на какой-нибудь центральный сервер аудита, и ваши шалости легко можно будет выявить, как аномалии. Именно так и произошло в статье, о которой я говорил выше. Как только вашу карту пометят, её ID, вероятно, добавляется в список подозрений, который синхронизируется между всеми терминалами считывателей под управлением оператора, а если считыватель обнаружит карту из списка, он сразу же отклонит транзакцию. Если вы особенно удачливы, то он может и вызывать полицию. Память под этот список у считывателей ограничена, поэтому, вероятно, можно сгенерировать миллионы карт, переполнить списки, а позже использовать одну из старых/новых карт без блокировок? Я просто предполагаю; понятия не имею, как это всё работает. Но идея всё равно интересная.

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

Идеи на будущее

Поизучав FeliCa какое-то время, я придумал несколько идей на будущее.

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

Кроме того, можно изучить, почему конкретно FeliCa настолько быстрее. В чём заключаются физические основы? Есть ли возможность повысить скорость, чтобы для прохода через турникет требовалось меньше 100 мс? Это крайне далеко от сферы моего опыта, но если кто-то, обладающий подобными знаниями, сможет поделиться информацией или написать пост, то статья определённо выйдет интересной!

Я очень доволен тем, что узнал про FeliCa. Я даже близко не специалист в NFC, системах мобильных платежей, криптографии или кибербезопасности, но мне хотя бы одним глазком удалось заглянуть в этот необычный мир. Интересно, смогу ли я когда-нибудь применить эти знания где-то ещё?

Комментарии (64)


  1. greenlittlefrog
    21.07.2025 13:04

    Помню покупал в Японии специальную версию Apple Watch с поддержкой Suica, обычный Apple Pay не работал.


    1. Aelliari
      21.07.2025 13:04

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

      Но в тоже время моя 13шка выпущенная для рынка США вполне работала


      1. FiLunder7
        21.07.2025 13:04

        Это было давно. Начиная вроде с 7ки у любого айфона есть поддержка IC карт


  1. Varowlord4
    21.07.2025 13:04

    Как всегда, Япония впереди планеты всей


    1. LeToan
      21.07.2025 13:04

      Гонконг


    1. FiLunder7
      21.07.2025 13:04

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


      1. rg_software
        21.07.2025 13:04

        Ну ладно вам :) Банки и вправду не впереди планеты всей, но бумажные книжки лежат в ящике стола и не нужны, комиссии за снятие в чужих банкоматах (и это не проценты, а типа 200 иен фикс. цена), а про ночью... в 7/11 тоже не работает? мне казалось, там всегда можно снять.


        1. FiLunder7
          21.07.2025 13:04

          Комиссии за снятие в своих банкоматах в нерабочее время (после 18:00) почти во всех банках. Ну да фикс (100-300йен), но все же. Почти во всех банках международный перевод это поход в банк лично. И не дай бог ты забудешь Ханко (печать), подпись не работает. Да, банкоматы 7-eleven работают круглосуточно, но там за любую выдачу налика комиссия. Да есть более "продвинутые" банки типа Rakuten Bank, Sony Bank, SBI они постепенно подтягиваются. Но и в них куча ограничений. Моментальный перевод другому человеку без комиссии по номеру телефона? Это что-то из фантастических фильмов.


          1. rg_software
            21.07.2025 13:04

            Как переводить проще, чем по реквизитам, не знаю. Но я и в Европе не знаю, по правде говоря. Международные переводы делаю так: онлайн банк -> wise -> перевод, и не выходя из дома, в банк ходить быстро надоело.


            1. PriFak
              21.07.2025 13:04

              в польше есть система BLIK
              привязываешь телефон к своему банковскому счету и он становится твоим реквизитом
              и в румынии тоже ее приделали вроде как не так давно


              1. ExiRouS
                21.07.2025 13:04

                Во всех трёх странах балтии можно осуществлять переводы зная номер телефона. Между всеми 3-мя странами, между всеми Балтийскими банками.


    1. xseed
      21.07.2025 13:04

      Тем временем я, который в РФ не может сменить страну в Google Play из-за того, что платежи заблокированы...


      1. Antimatter
        21.07.2025 13:04

        Почему не можешь ? Я легко поменял.


  1. sshmakov
    21.07.2025 13:04

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

    Московская карта "Тройка" и кошелек на ней. А также "Подорожник" в Питере, и, наверное, есть аналогичные в других больших городах.


    1. sintech
      21.07.2025 13:04

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


      1. FiLunder7
        21.07.2025 13:04

        Если на карте не висит пополнение скорость авторизации как и была. По крайней мере я существенного изменения не заметил. А вот проход по виртуальной (qr) подтупливает знатно: иногда приходится менять турникет, что особенно весело в час пик.


        1. sintech
          21.07.2025 13:04

          Теперь ему как минимум нужно по номеру карты спросить у API есть ли пополнение, а раньше вся транзакция не выходила за турникет. Можно было не останавливаясь приложить карту и проходить. В автобусах так и осталось, там быстро.

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

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


          1. FiLunder7
            21.07.2025 13:04

            Ну скорее всего так и есть, но лично для себя я не ощутил значимого увеличения времени. А вот QR - да.


    1. TimID
      21.07.2025 13:04

      "Кошелек" карты "Тройка" - это счет, такой же как в банковской карте. Любая операция с картой - это транзакция с единой системой обработки.
      Поэтому при отсутствии связи большинство систем оплаты в транспорте просто перестает работать.


      1. sshmakov
        21.07.2025 13:04

        Насколько я знаю, сумма кошелька хранится на карте, и только на ней.

        В банковской же карте сумма не хранится.


        1. vvzvlad
          21.07.2025 13:04

          В тройке хранится, но сверяется с сервером постфактум. Пару раз можно пройти по измененной сумме, но потом карту заблокируют.


    1. urvanov
      21.07.2025 13:04

      В России, мне кажется, в каждом регионе свою транспортную карту уже разработали. Ещё ещё в УЭК хотели записывать, когда тот ещё был жив.


  1. vesowoma
    21.07.2025 13:04

    Есть ли возможность повысить скорость, чтобы для прохода через турникет требовалось меньше 100 мс?

    А зачем? Олимпийский норматив в беге на 100 м для мужчин - 10 секунд. За 100 мс (0,1 секунды) следовательно - 1 метр. Длина турникета (не знаю как в Японии, но вообще) - примерно тоже 1 метр. Это значит 10 человек должны за секунду его пройти, не мешая друг другу (а спринтеры бегут по отдельным дорожкам) и при этом успеть поднести карту или телефон к считывателю.


    1. drdead
      21.07.2025 13:04

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

      https://cdn.realestate.co.jp/app/uploads/2020/07/Takanawa-Gateway-Station-Yamanote-Line-New-Ticket-Gates-Picture-of-the-Day-Real-Estate-Japan-799x500.jpg


    1. Aelliari
      21.07.2025 13:04

      Их турникеты ещё и бумажные билеты почти мгновенно проталкивают через себя)


      1. vvzvlad
        21.07.2025 13:04

        А как они устроены, ууууу….


      1. svosin
        21.07.2025 13:04

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


    1. vedmed007
      21.07.2025 13:04

      Затем, что при задержке не возникает эффекта, когда ты приложил и ждешь реакции системы, а просто идешь, не спотыкаясь.

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


    1. TimID
      21.07.2025 13:04

      Чемпион мира бежит 100 м за 9.6 секунды. Так что не обманывайте себя такими расчетами


    1. woddy
      21.07.2025 13:04

      есть нюанс в том, что через турникет одновременно идут 3-4 человека (в час пик). никто не ждет пока пройдут предыдущие


  1. kenomimi
    21.07.2025 13:04

    А зачем вообще защищать карту? Пусть она перезаписывается и читается как угодно. Просто подписываем записаное своим ключом, и весь левак будет отклонен при проверке. Для смартфона или вендингового аппарата подпись выполняется/проверяется удаленным бекендом, на турникете где надо скорость - защищеным считывателем локально. Хеши старых данных храним энное время на бекенде, если этот же хеш где-то вылез снова (карту клонировали) - добавляем карту в стоп-лист. Ломать такую систему станет экономически неэффективно, так как клон карты даст 1-2 транзакции и сдохнет.


    1. Margutoop
      21.07.2025 13:04

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


  1. dvb1
    21.07.2025 13:04

    EMV стандарт не проверяет есть ли деньги на карте. Проверяется (локально) только подпись через цепочку сертификатов.Это позволяет клиентам украинских банков жульничать в Европе. Они открывают счёт на котором нет денег и добавляют цифровую карту в Google Pay. В течение дня пользуются транспортом. В конце дня backend понимает что денег на карте нет и блокирует ее.

    Они открывают новый счёт.

    Подпись проверяется локально потому что проверять что-то на backend ( online authorization) нет времени.


    1. RulenBagdasis
      21.07.2025 13:04

      А почему там технический овердрафт не возникает?


      1. dvb1
        21.07.2025 13:04

        Возникает. Только на счету в банке денег нет. Это стало возможным в результате "инноваций". Когда банки позволяют открыть счёт при наличии только мобильного номера и без какого-либо депозита.

        Т.е. открыть счёт через интернет дешевле чем экономия от проездного на день


        1. RulenBagdasis
          21.07.2025 13:04

          И банк это клиенту с рук спускает, не вносит его и его номер в чёрный список, не передаёт дело приставам? А где можно открыть счет а банке без предоставления ID?


          1. dvb1
            21.07.2025 13:04

            Мне сказали что такие проблемы у украинских банков. Не в курсе каких именно. И, кажется, revolut.

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

            Смысл там ещё в том, что один аккаунт можно привязать ко многим Google pay кошелькам


          1. vedmed007
            21.07.2025 13:04

            Вносит, не передает - с чего им идти к приставам за сотню евро?

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


          1. vvbob
            21.07.2025 13:04

            На Украине симки без паспорта вроде бы продают. Т.е. этих симок можно накупить целую гору и учитывая цены на ОТ в Европе это может иметь смысл.

            Банк заблокирует номер, так его и сменят, а симку или продадут кому-либо или выкинут просто.

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


            1. RulenBagdasis
              21.07.2025 13:04

              Я в последние годы имел дело с банками в 8 странах, включая необани и wise. Ни разу нигде мне не открыли счёт без предоставления документов или хотя бы скана этих документов и подтверджения личности. Поэтому мне и интересно, что это за банки такие, которые позволяют без доков счета открывать.


        1. RifleR
          21.07.2025 13:04

          Возникает. Только на счету в банке денег нет

          для технического овердрафта это не важно, счет уходит в минус, даже если кредитная линия не открыта.

          Когда банки позволяют открыть счёт при наличии только мобильного номера и без какого-либо депозита

          в много каких странах можно открыть счет без депозита. Почему в таком случае акцент только на украинских банках? Кстати, при наличии только мобильного номера и без документов открыть счет ни в одном украинском банке (так же как, наверное, и в банках других стран) не получится.


    1. zamir__zakiev
      21.07.2025 13:04

      Это позволяет клиентам украинских банков жульничать в Европе.

      А почему именно украинских и именно в Европе? Точно знаю, что аналогичная схема работала и в России. Возможно, и сейчас работает, если использовать одноразовую виртуальную карту, Mir Pay и терминал, работающий в офлайн-режиме.


    1. vikarti
      21.07.2025 13:04

      У меня как то непреднамеренно похожий сценарий получался несколько лет назад. Ньюанс был в том, что терминал проверят подпись от SamsungPay и она корректна и карта вполне себе Visa, вот только списать не получается потому что токенизация в России для Visa/MC работала через МПС.

      "Что-то случилось" и вот. С учетом что получить не-российскую VISA/MC в России сейчас не то что бы особо сложно...может и сейчас пройдет (если конечно терминалы не обновили чтобы учесть такое вот)


  1. MountainGoat
    21.07.2025 13:04

    Одно из главных достижений транспорта Японии не относится к транспорту. У них земля в городе размечается не по назначению, а по классу шумности и вредности. В результате среди жилых домов вперемешку стоят, и их не сразу можно отличить, маленькие офисы, клиники, даже производства из тех, что не воняют. Что это даёт?

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


    1. dvb1
      21.07.2025 13:04

      Может в Японии такое работает, но в других местах не будет. Если только вы не собираетесь работать на одном предприятии всю жизнь. К сожалению, если не переходить на другую работу, со временем зарплата растет медленнее рынка


      1. nio-kun
        21.07.2025 13:04

        Вот только японцы как раз собираются. До сих пор.


        1. dvb1
          21.07.2025 13:04

          Слышал, что в Японии пожизненная работа больше не гарантируется


    1. DenSigma
      21.07.2025 13:04

      Есть мнение, что они не работают там, где живут, а живут там, где работают.


  1. vadimk91
    21.07.2025 13:04

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

    А ещё теперь я знаю, что за предустановленная Osaifu-Keitai в моем новом телефоне Sony :) к сожалению, приложение на японском языке, модель да, от японского провайдера Docomo


    1. MrNelsonVet
      21.07.2025 13:04

      Было непросто успеть пробежать через турникет до того, как билетик выскочит на другом конце. С третьего раза получилось)


  1. kkuznetzov
    21.07.2025 13:04

    Если криптография скрыта под горой NDA, то где гарантия её безопасности? Алгоритм Crypto-1 тоже проприетарный и был скрыт. Итог известен.


    1. Aelliari
      21.07.2025 13:04

      Никакой, безопасность через неясность - зло, так быть не должно. Хотя то что оно стабильно работает немного впечатляет.


  1. vvzvlad
    21.07.2025 13:04

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

    Это где угодно есть.


    1. Alexsey
      21.07.2025 13:04

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


      1. vvzvlad
        21.07.2025 13:04

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

        Просто в статье как будто говорится, что это фича FeliCa, устранение конфликтов, хотя это не так.


        1. Alexsey
          21.07.2025 13:04

          Ну тут на самом деле автор все равно лукавит что оно все настолько умное. Мне было достаточно приложить кошелек с suica не той стороной (чтобы между картой и считывателем было 2-3 других карты, одна из которых icoca, и чуть большее расстояние до карты) чтобы турникет в метро перестал вообще как-то реагировать. Не ошибку выдал, а просто не мог ничего считать, при том что icoca он уж точно прочитать мог бы если до suica слишком далеко.