世界を動かす技術を、日本語で。

日本のICカードは奇妙で素晴らしい

概要

  • 日本の公共交通ICカード(FeliCa)は、欧米のNFC技術よりも圧倒的に高速で安全性が高いことが特徴。
  • FeliCaは物理カードとスマートフォン(Osaifu-Keitai)双方で利用可能で、通信速度や利便性に優れる。
  • 価値情報をカード自体に保存する「ストアドバリュー」方式が採用されている。
  • セキュリティ面では複数の対策が施されており、実用上大きな脆弱性は報告されていない。
  • FeliCaの仕組みや今後の応用可能性についても考察がなされている。

日本の公共交通ICカードとFeliCaの特徴

  • 日本の 公共交通ICカード (例:Suica、PASMO)は FeliCa というNFC規格を採用、 高速かつ信頼性の高いゲート通過 を実現すること。
  • 欧米(例:London Underground)は MIFAREEMV 規格を利用、 ゲート通過速度が遅い ことが多いこと。
  • FeliCaは ISO/IEC 14443 規格のNFC type Fに分類、 1988年にSonyが開発 したこと。
  • 初期導入は 香港のOctopusカード (1997年)、その後日本(2001年Suica)や他アジア諸国にも普及したこと。
  • FeliCaカードは 通信速度424kbps を誇り、 サーバー非依存の即時処理 が可能であること。

ストアドバリュー方式と利便性

  • FeliCaカードは カード自体に残高情報や取引履歴を保存 する「ストアドバリュー」方式を採用すること。
  • ゲートやリーダーが外部サーバーと通信せずに取引処理 を完結できるため、 高速処理と混雑緩和 が実現されていること。
  • NFC対応スマートフォンで カードの残高や履歴を直接読み取る ことができる確認。

セキュリティと脆弱性対策

  • FeliCaは 独自の暗号技術 を用い、 複製やリプレイ攻撃に強い 設計であること。
  • 各カードが 固有の鍵 を持ち、 セッションごとにユニークな鍵交換 を実施すること。
  • 攻撃事例は極めて稀で、 不正利用は監査ログやホットリストで即座に検知・対処 されること。
  • オフライン端末 (例:自販機)はネットワーク非接続ゆえに攻撃リスクがやや高いが、実害は限定的であること。

Osaifu-Keitaiとスマートフォン対応

  • Osaifu-Keitai はNTTドコモが開発した モバイルICカード機能 で、物理カード同様にスマートフォンでFeliCaを利用可能とすること。
  • Android端末は 日本向けSKUのみOsaifu-Keitai機能 を搭載、 Apple(iPhone)は全世界で対応 すること。
  • スマートフォンでICカードをエミュレートするには セキュアエレメント内の鍵 が必要であり、 ライセンスや地域制限が存在 すること。

FeliCaの将来と応用可能性

  • FeliCaの 高速通信や物理的な仕組みの更なる研究より高速なNFC通信の実現 に興味を持つこと。
  • ミニチュア鉄道ネットワークのソフトウェア構築 など、趣味や学術目的での応用を検討すること。
  • FeliCaの設計思想や堅牢性は、 セキュリティ設計の好例 として今後も注目されるべきである提案。

Hackerたちの意見

「なんでそんなに速いの?」って聞くなら、「なんで西洋のシステムはそんなに遅いの?」って逆に聞きたいな。西洋の資本には、遅延が問題にならないイデオロギーがあるんじゃないかな。(フレッド・ブルックスが言うように、「9人の女性が1ヶ月で赤ちゃんを産むことはできない」ってね。)でも、個人や顧客としては、遅延を直接感じるし、全体的には二次的なものなんだよね。だから、結局は共感があるかないかに帰結するんだ。

FeliCaがこんなに速いとは驚いたよ。でも、遅延が無視できるわけじゃないよね。東京の地下鉄の改札を通るのがロンドンのよりどれだけ速いかは明らかだし。それによって、もし一つの都市の公共交通システムが遅くなるなら、経済的な影響もあるはずだよね。共感を一旦無視しても、これって西洋の資本主義のイデオロギーが改善すべきことじゃないの?考える材料になるね。

遅延は問題にならない政府は、道路の速度制限を45mphに設定するんだ。これは、混雑した道路でほとんどの車が1秒ごとに通過する速度だから。その政府は、9時間働いて、往復1.5時間通勤して、生活や人間関係、趣味のための自由な時間が全くないと分かったときに、全人口がうつ病で過労だって驚くんだよね。

別の視点として、西洋では公共交通機関はせいぜいコストセンターとして見られているけど、日本では完全に利益を上げるビジネスとして期待されているんだよね。[0] パリもICシステムを採用していて、かなり使いやすいけど、JRシステムの極限まで推し進められてはいない。なぜなら、そこまで投資する準備ができていなかったから、お金の管理もできず、完全なビジネスにすることができなかったんだ。[0] 一部の路線やエリアは確実に金食い虫だね。だから、いくつかの会社はICシステムから完全に撤退したり、互換性のない安価な別の実装に切り替えたりしているんだ。

確かに。だけど、西洋の交通ゲートや改札の主な問題はこれだね:日本のIC取引は100ms未満。EMV IC取引は数百ミリ秒。ニューヨークの地下鉄で目の前の人が、もう一つの数少ない改札を塞いでるのに、電車が来るのに携帯やカードをバッグの中から探し始めるのに気づくのは、タイムレスな状況だよね。

公共交通機関の改札の列に関しては、レイテンシとスループットは基本的に同じことだよ。レイテンシを減らさずにチケットラインのスループットを増やす実用的な方法はないんだ。ほとんどの駅では改札を増設できないし、駅が大きくないからね。人が小さくないから改札を小さくすることもできないし。どの交通システムも、改札が満たさなきゃいけないスループットの要件を測定しているよ。それは必然的にレイテンシの要件も意味するんだ。一つの改札が複数の人を同時に処理できないからね!それに、西洋のシステムもそんなに遅くないよ。記事の動画は10年前のもので、ロンドンの人が紙のチケットを使ってるのが映ってる!ほとんど誰も非接触カードやオイスターカードを使ってないし。ロンドンではオイスターカードはすごく速いよ。速すぎて、早歩きのペースだと、改札に着く頃には完全に開いてるから、カードをリーダーにかざすのが楽な距離にあると仮定してね。非接触決済はその点遅いけど、TfLができることはあまりないんだ。遅い速度は、非接触カードが取引を処理するのに時間がかかるからなんだ。TfLは銀行やカードメーカーごとの非接触カードのレイテンシを追跡してるけど、カードメーカーや銀行の設定によってレイテンシにかなりの違いがあるんだ。でも、これはTfLが自分たちでコントロールできることじゃないんだよ。

記事は理由を示唆してるね:> 香港や東京のような場所は通勤者が多く、駅の改札周辺が混雑する。しかし、実際には「人口密度」が重要な要因だと思う。新しい決済技術への投資は、アメリカよりもこういった環境での方がはるかに実を結びやすいんだ。

残念ながら、交通事業者はコスト削減戦略の一環として、これらのICカードの使用をQRコードに切り替えようとしているんだって。: https://mainichi.jp/english/articles/20241015/p2a/00m/0bu/01...

その記事には、彼らがそうだとは書いてないよ。>全国のICカード、例えばSuicaやIcocaは引き続き使えるってさ。

コスト削減のためにそれを置き換えたいんだろうね。このシステムは大都市では素晴らしいけど、田舎では速度やコストが過剰だから、そこが問題なんだ。QRコードシステムを最適化できればいいんだけど、明らかにQRが勝つと思うよ。専用ハードウェアがいらないからね。ICカードは確かに速いけど、どの時点でその違いが重要になるのかな?

QRコードはほとんどの交通機関で紙や磁気の単一乗車券を置き換えるために作られてると思う。磁気券はすでにICカードより遅いし、QRコードを普通の紙に印刷するよりも製造コストが高くてリサイクルも難しいからね。

ICカードが大好き!私の住んでいるところでは、すべての交通機関で使われていたけど、数年前にQRコードに変わっちゃったんだ。今はアプリで操作して、汚れたリーダーに正しい角度でかざすのが面倒。乗り込むのに時間がかかるし、技術が前に進むどころか2歩後退した感じがする。ICカードの方がいいし、もしスマホに統合できたら、みんなにとってもっと良くて速くなると思う。

QRコードを印刷して財布に入れたら使えるのかな?それとも変わるやつ?

iOSはICカードをちゃんとサポートしてるよ。2017年からSuicaを物理カードの代わりに使ってたしね。アプリとQRコードの使用を強制するのは、確かに大きな後退のように感じるけど、同じスキャナーで紙のチケットを実装しやすくなるのかな。

少なくとも日本では、すでにスマホから全部使えるよ。

手数料とコントロールの問題だね。EMV(Europay Mastercard Visa)でもJR東日本でも、すべての売上に対して3%の手数料を取るし、リアルタイムの売上データを競合に悪用されることになる。だから、代替の選択肢が時々選ばれて置き換えられることがあると思う。たいていは交渉の駆け引きやバックアッププランとしてね。

台湾ではさらに便利だと思う。私が出会った全ての交通システムがEasyCard(悠遊卡)を受け入れている。フェリーでもそうだし、コンビニやちゃんとしたレストラン、店舗でも使える。しかも速いから、地下鉄の改札を通るときにストライクを止める必要もないんだ。

利便性はほぼ同じだと思うよ。日本のSuica/Pasmoカードは、すべてのコンビニ、駅の売店、ほとんどの地域交通やタクシー、そして東京のショップやレストランの半分くらいで使えるからね(AirPayや他のPOSシステムではデフォルトの選択肢になってるし)。たくさんの自販機でもSuicaが使えるし、俺はスーパーやドラッグストアでも使ってるよ。ビックカメラみたいな他のタイプの店でも使えるけど、高額商品だとSuicaの残高制限に引っかかるかも… https://www.jreast.co.jp/multi/en/suicamoney/shop.html

技術的にはゲートであって、ターンスタイルじゃないよね(ターンスタイルは交通を遅くするから)

その島全体は 中国の影響で台湾が国として言及されていないのかな。

彼らは速いよ、メトロに入るときに回転式ゲートを通るのにストライクを止める必要もないくらい。遅くはないけど、日本の方がまだ速いよ。少なくとも台北MRTではね。ただ、桃園メトロはもっとひどい。ゲートを通りながら歩き続けると、カードが速くスキャンされないとエラーが出て、ゲートエリアの外に戻って再度スキャンしろって言われるんだ。それが結構交通を遅くしちゃうんだよね。

日本に長く住んでる者だけど、ICカードはすぐに使えるしスムーズなんだけど、小売の決済システムは全体的にめちゃくちゃだよ。いろんな店が数十種類の電子決済ブランドの異なる組み合わせを受け入れてるからね。買い物のときは、iPhoneのSuicaアプリを使うのが好きなんだけど、受け付けない店もあって、そういうときは顔認証が必要なNanacoアプリを使うか現金で払わなきゃいけない。QRコードアプリはまだ設定してないんだ。PayPayをインストールしようとしたとき、認証ステップでつまずいて諦めたことが2回あるよ。同じデパート内でも、店によって受け入れる決済システムが違うんだ。地元の高島屋では、地下で食べ物を買うのにSuicaが使えるけど、上の階のレストランでは使えない。近くのそごうでは、Suicaは使えなくてNanacoだけなんだけど、3階のスターバックスだけはSuicaが使える。コンビニはほとんど何でも受け入れるみたいで、この看板のロゴの数からもわかるよね: https://news.mynavi.jp/article/osusumecredit-107/images/003l... 来週の火曜日に親戚が日本に来て3週間滞在するんだけど、クレジットカードやデジタルマネー、現金についてどうすればいいか聞かれたんだ。自分が住んでるのに、状況をほとんど理解してないことに気づいて、Gemini Deep Researchにレポートを作ってもらったよ: https://docs.google.com/document/d/1WY4AM0mJS94uwPMK8XjIQMLf... もう一つ付け加えると、1980年代と1990年代には、当時広く使われていた磁気カードに大きなセキュリティ問題があったんだ。Perplexityがそれについて何を言ってるか見てみて: https://www.perplexity.ai/search/i-want-some-information-in-... 「渋谷のような都市部のオープンストリートマーケットでは、偽造カードが売られていることで知られていた」ってことをよく覚えてるよ。

小売の決済システムは全体的にめちゃくちゃだよ。いろんな店が数十種類の電子決済ブランドの異なる組み合わせを受け入れてるからね。日本が「均質な社会」だと言われるときに、これを思い出すと面白いよ。(高信頼ではないしね。)

スイカ、パスモ、イコカはほとんどの地域でのゴールデントリニティだと思う。

来週の火曜日に親戚が日本に3週間の訪問で到着するんだけど、クレジットカードやデジタルマネー、現金について何をすればいいか聞かれた。私は日本にほんの少ししか行ったことがないけど、国際クレジットカード(VisaかMastercard)とApple Payのスイカがあれば、特に問題なかったよ。観光地ばかり行ってたからかもしれないけど、ほとんどのところではこの2つのうちのどちらかは使えたし、クレジットカードからApple Walletでスイカを直接チャージできたおかげで、残高が切れることもなかった。もちろん、小さな食堂やお店には現金が必要だけど、それも特に問題なかったよ。ATMの手数料も特に高くなかった気がするし(私の銀行が返金してくれるし)。いくつかの店舗で受け入れられている、数十種類の異なる非接触型(ストレージバリューやその他)やQRコードベースの支払い方法には驚かされたけど、現金も受け取る自販機を除いて、スイカやVisa/Mastercard以外の支払い方法だけを受け取る場所は見たことがない。実際、駅に入るために必要なカードで支払いができるアイスクリームの自販機が至る所にあって、これは本当に健康に悪い気がする :)

PayPayのQRコード設定はたったの2分でできるし、たくさんのボーナスももらえるよ。ただ、住民票の名前とカタカナを合わせる試練を乗り越えなきゃいけないけど、みんなそれぞれのバージョンがあるからね。

PayPayでたくさんの請求書が支払えるって聞いたから、私も使いたいと思ったんだけど、認証の壁を越えられないんだよね。変な quirks がたくさんあって、最近のは、7/11のATM以外では現金を引き出せないこと。Seven bankカードじゃないとダメで、他のATMはもう受け付けてくれないんだ…こんなこと、どうやって解決すればいいの?

日本で使われないデバイスのためにキーを生成する意味がないから、日本以外のSKUにはおサイフケータイ機能がないんだ。だから、もし電話をルート化してセキュアエレメントに完全にアクセスできても、電話のセキュアエレメントにキーがなければICカードとして使えない。少なくともいくつかのケースでは、電話のSKU IDを日本のSKU IDに一時的にルート化して変更するだけで、おサイフケータイ機能が解除されることがある。セキュアエレメントが必要なキーを最初から持っていたのか、それともおサイフケータイアプリが初回使用時にそれをプロビジョニングするのかはわからないけど。

確かに、アメリカのiPhone(少なくとも)は日本でICカードとして使えるみたいだよ。今、京都にいるんだけど、東京を回ってから京都に来るのに、ずっと電話だけでJRとやり取りしてた。16Eと12で確認済み。実際、スイカカードを電話に追加して、アメリカにいる間にApple Payでチャージできたんだ。それで羽田空港のウェルカムスイカの列をスキップして、モノレールに直行できた。めっちゃおすすめ!

何か勘違いしてるかも > 日本で使われないデバイスのためにキーを生成する意味がないから、日本以外のSKUにはおサイフケータイ機能がないんだって。私の知る限り、iPhone 10以降のすべての地域のiPhoneはおサイフケータイをサポートしてるはずなんだけど(ネットではiPhone 7って言ってる)。私のアメリカのiPhoneはスイカ、パスモ、イコカが使えるところならどこでも使えるよ。すべての駅、バス、自販機、コンビニ、スーパー、レストラン、小売店で、これらの支払い方法が使えるところでは全部使える。これがうまくいってるなら、私が見逃してることは何なの?

iPhoneはOKだけど、Androidはダメ。日本以外で売られているほとんどのAndroidデバイスはFeliCaが使えないから、おサイフケータイのためには日本モデルを買わなきゃいけない。

それと、私の西洋版Google Pixel Pro 9XLはサポートしてないけど、日本版はサポートしてる。Googleがライセンス料を節約してるのかもね。

アップルはここでの例外だね。他のスマホが日本市場をターゲットにしていない理由は、非アップルのデバイスメーカーと日本のICカード発行者(JR東日本のSuicaなど)との間の契約が欠けているから。これらのカードは実際に「オフラインでお金を保存」しているから、関わる対称鍵は発行者が漏れたら絶対に見たくないものだと思う。だから、これはお金の問題(ライセンス料など)だけじゃなくて、電話のセキュアエレメントのセキュリティに対する信頼の問題でもあると思う(そもそもセキュアエレメントがあるかどうかも怪しいし、多くのAndroidスマホにはないからね)。

ここでの著者だけど、この部分をちゃんと校正しなかったのは私のミスだ!非日本のSKUについての部分は、一般的にAndroidのスマホメーカーには当てはまるけど、アップルはそのコストを負担して、すべてのスマホにおサイフケータイを提供してる。非日本のユニットでも、iPhoneをルート化しなくてもこの機能が使えるよ。この混乱を解消するために、このセクションの訂正を書こうと思ってる。

対応してるのはiPhone 8とSE 2以降だよ。iPhone 7は最初だけど、日本特有のものじゃないとダメだったんだ。非日本製の7(少なくとも初期ロットの)とSE 1はSuica決済に対応してないんだよね。

iOSとAndroidの部分はちょっとわかりにくかったから、記事が間違ってるのか不明瞭なのかわからないな。iPhone 7以降のすべてのiPhoneは、電話の地域に関係なくFeliCaをサポートしてる。これは日本を訪れる人にとってすごく便利だよね。一方で、Androidスマホは日本地域のものだけがサポートしてる。

そうだね、それは正しい。特許がAndroidを妨げてる。アップルは、すべてのスマホでそれを使えるライセンス契約を結んだみたいだね。

世界中のすべてのiPhoneはiPhone 8以降、日本のiPhoneはiPhone 7から。ソース:私はiPhone 7を持っていて、FeliCaサポートをセキュアエンクレーブに追加したエンジニアの友達がいたんだ。日本の7は一時的なもので、8が出てから一般的になった。

記事でこれを十分に明確にできなくてごめん!そう、iPhoneはおサイフケータイに対応してるけど、問題があるのはAndroidの方なんだ。今、記事を更新してこの点を明確にしたよ。

アップルがFeliCaサポートを発表したときのことを今でも覚えてる。そしてFeliCaがNFC-F標準になったことで、Apple WalletやApple Cash(両方が発表される前)に世界中で使える可能性が出てきた。彼らは世界中で使えるストアバリューカードを持つことができたかもしれない。実質的に、オクトパスやSuicaカードを世界に持ってくることになる。10ms以下で動作するFeliCaの将来バージョンの提案もあったのを覚えてるけど、今はそれに関する参考文献が見つからない。さらに、同時に複数のNFCカードやタグを読み取ることができる新しいNFC提案もある(また、私のグーグル検索力が役に立ってないけど)。それで、会員カード、割引カード、支払いカードを一つにまとめられる。いつか、支払い記録と一緒に電子レシートが携帯に届くことを願ってる。過去10年間、アップルがそれをやってくれることを願ってたけど、まだApple CardやApple Cashがアメリカ以外で使えるようになってないのが残念だな。

新しいNFCの提案もあるよ(またグーグルで調べてもあまり情報が出てこないけど)、複数のNFCカードやタグを同時に読み取れるっていうやつ。これはすでに標準のNFC-A/Bに含まれていて、通常は「衝突回避」または「選択」プロトコルと呼ばれてるんだ。UID空間に対してバイナリサーチを行う感じで(記憶が正しければ)、特定のビットマスクのUIDに応答を求めるんだ。主なことは、リーダー側で使われるもので、(エミュレートされた)カード側ではないから、複数のエミュレートカードのサポートがどうなってるのかはわからないし、別の提案があるのかも不明だね。

本当に目立つのはデザイン哲学の違いだね。ロンドンでは、改札は通常閉まっていて、オイスターカードが有効な場合だけ開くんだ。東京では、改札はデフォルトで開いていて、カードが失敗したときだけ閉まる。毎回ドアが開くのを待つ必要がないから、流れがスムーズで、すごく速く感じるよ。

微妙だけど、すごく影響力のある違いだね。日本の改札は通常、2セットのドアがあって、どちらの方向に動いても目の前で閉まることができるんだ。だから、人々は速いペースで、すごく密集して通り抜けられるし、ドアは正しい人の前で閉まるんだ。それに、表示画面がもっと前にあるから、料金がいくらかかってるかを見るために歩くのを止める必要がないんだ。

それは文化の違いによって可能になってるよね?日本の文化は秩序やルールを守ることに対する重視が高いから、この「デフォルトで開いている」システムが、例えばアメリカでうまく機能するとは思えないな。

支払い処理中にユーザーを待たせるために、あの遅延が必要だったんだろうね。日本のゲートも、元々は磁気テープのチケットを読む時間を稼ぐためにああいう形になってたんだよ。

ロンドン地下鉄では、ドアが閉まるのを待たなくてもチケットをスキャンできるよ。ゲートは開いたままで通してくれるから。ただ、チケットをスキャンしながら近づくから、手が遅れちゃってちょっと awkward なんだよね。

いいポイントだね。ここには信頼も関わってる。消費者が正しいことをして支払うっていう信頼。オペレーター側からも追加の考慮があると思う:時々、人はただ乗りたいだけなんだよね。日本には3回行ったことがあって、状況を説明したらチケットなしで通してもらった人を何度も見たことがあるよ。

香港ではゲートが閉まってるけど、ロンドンよりもずっと早く開くよ(ただ、MTRの駅の中にはまだ回転式ゲートがあるところも多いけど)。

日本は魅力的な環境だよね。すごく心が晴れる感じ。日本の人たちは犯罪に関わることが少ないみたい。これについて考えて、アメリカ人の友達と話してみたんだけど、彼は20年くらい日本に住んでて、子供もそこで生まれたんだ。彼が言うには、学校でいろんなことを話し合うらしいよ。盗みのシナリオとかを通して、クラスで長いディスカッションをするんだって。何が起こるか、人々がどう感じるか、結果はどうなるかを話し合うんだよ。教育って大事だよね。逆に、僕が日本の社会の良さについてコメントしたら、彼は「日本は変化が遅すぎる」とか、そういう反論をしてた。