NFC(Near Field Communication)について整理

NFCが思っていた以上にややこしいので、可能な限り整理してみました。

NFCの概要

NFCRFIDの一種。
RFIDは、ID情報などのデータが書き込まれたタグやカードを無線技術により非接触でコンピュータ(改札などの専用機やスマートフォンなど)に読み取らせる技術。
RFIDには、使用する無線周波数帯(135kHz以下から数GHz)や方式(電磁誘導、放射電磁界)の異なる様々な技術の総称。
NFCは、RFIDの一種であり13.56MHz帯で電磁誘導方式を作用する特定技術。


NFCには3つのモードがある。


NFCの規格

NFCの通信規格

『ISO/IEC 18092 (NFC IP-1)』と『ISO/IEC 21481 (NFC IP-2)』の2種類存在

  • ISO/IEC 18092 (NFC IP-1)
    早期に普及したスマートカードであるISO/IEC14443 Type A(MIFARE)やFelicaをサポート。
  • ISO/IEC 21481 (NFC IP-2)
    ISO/IEC 14443 (Type B) とISO/IEC 15693にも対応

NFC(非接触型)スマートカードの規格

交通カードや免許証などなどNFCの利用が最も一般的な非接触スマートカードは、標準規格ISO/IEC 14443にてType AとType Bが規定されている。

  • Type-A
    日本ではあまりなじみがないが、たばこ自販機で利用されるスマートカードTASPO)やICテレフォンカードで採用されているMIFAREが代表技術。NXP Semiconductors(旧フィリップス)が中心となり開発
  • Type-B
    運転免許証やマイナンバーカードで利用。
  • Type-F
    FelicaはISO/IEC14443には属さないが通称Type-Fと呼ばれる。交通カードやEdyNanacoWAONなどで利用されている。Sonyが中心となり開発

NFCフォーラムでのNFCタグ規格
また、NFCフォーラムの規格としては、Type 1, 2, 3, 4, 5が存在。

  • Type 1: ISO/IEC14443Aに準拠。
  • Type 2: ISO/IEC14443Aに準拠。最も一般的に利用されており、安価。代表的なNFCタグはMIFARE UltralightやNXP Ntag2xxシリーズ。
  • Type 3: Felica対応タグ。
  • Type 4: ISO/IEC14443A/Bに準拠。高メモリ。代表的なNFCタグはDESFireファミリ(NXP MLFARE DESFire等)。
  • Type 5: ISO/IEC15693に準拠。近年新しく追加された。

NFCの通信規格と非接触スマートカード規格の整理

NFCの規格は通信規格と非接触スマートカードの規格の関係が非常にわかりづらいが、個人的には以下の図が理解しやすい。

引用:https://pinardsflorist.com/iso-21481-10/


NFCデータフォーマット

NFCはデータ構造をNDEF(NFC Data Exchange Format)で標準規定している。
NDEFでは、プレーンテキスト、URIJPEG、Emailなどの情報を保存、交換することができる。


接触スマートカードについて考える

NFCのReader/Writerモードでは非接触スマートカードなどのNFCタグをReader/Writerであるコンピューター(改札などの専用機やスマートフォンなど)で読み書きする。
代表的な非接触スマートカード(非接触ICカードとも呼ばれる)は、Suicaなどの交通カードやマイナンバーカード、免許証、非接触決済対応のクレジットカードなどがある。

そもそもスマートカードとは

スマートカードには接触型と非接触型があり、双方ともID情報などのデータを保管するICチップが埋め込まれている。

スマートカード内保管データのコンピューターとのやりとりは、接触型ではカード上の物理的な端子を通して電気信号で行われ、非接触型は近距離無線通信(NFC)で行われる。
EMVコンタクトレスという規格に対応した非接触決済対応のクレジットカードは、Type A/B両対応。

アプリ層通信プロトコル

スマートカードNFCで通信するが、アプリ層プロトコルはAPDUを利用。非接触スマートカードも同様にAPDUでデータのやり取りや制御を行う。

接触型/非接触スマートカードプロトコルスタック

下位層は接触/非接触プロトコルが異なり、アプリ層は双方ともにAPDUを採用。

https://insinuator.net/2018/02/extracting-data-from-an-emv-chip-and-pin-card-with-nfc-technology/


NFCの規格全体像

NFC規格をフルスタックを見ると、全体を俯瞰して理解しやすい。
一言で言うと、下位層は上記の通信プロトコルを、アプリ層ではAPDUを利用し、データフォーマットはNDEF。

引用:SpeakerDeck.com


余談:IDなどのデータをコンピューターに読み取らせる方法という切り口で考えると・・・

データをコンピューターに読ませる方法としては、非接触スマートカード以外に、接触スマートカード、バーコード/QRコード、磁気ストライプがある。

決済利用の例は以下。