NFC
読み:エンエフスィー
外語:NFC: Near Field Communication

 13.56MHz帯の電波を使った、RFID用の近距離無線通信の標準規格。
目次

概要
 NXPセミコンダクターズ社(旧フィリップスセミコンダクターズ社)とソニーにより、MIFAREとFeliCaそれぞれの上位互換の規格として共同開発された。
 MIFARE・FeliCaと同じ13.56MHz帯の電波を用いて、最大10cmの距離で、最大424kbpsの速度で通信が可能となっている。

特徴

規格
 規格は、NFCIP(NFC Interface Protocol)として規格化されている。

用途
 NFCIP-2までで、次に対応する。大きく、RFID関連規格と、データ通信に分けられている。

利点
 MIFARE、FeliCaそれぞれと互換性があり、それらと通信(リード・ライト)することが可能。
 また、NFCモジュール同士での通信も可能であり、単なるICカード以上に幅広い用途が想定されている。
 例えば、東芝は「NFC搭載SDHCメモリーカード」を2015(平成27)年2月より発売した。スマートフォンなどで中身をプレビューするアプリも無料で公開されている。NFCで通信することで、中身を確認するためにデジカメやパソコンなどを使用する手間が省けることが利点とされている。

技術

プロトコル
 NFCのプロセッサーは、チップセットやCPUなどHOSTに接続して使われる。そのために、それなりのプロトコルが用いられている。
 各層で使われる通信プロトコルは次のとおりである。

階層構造
 製品によって異なるが、ある製品では、HOSTとNFCで次のようなプロトコルの階層構造を用いている。
ESTI準拠デバイス固有
HCI (ETSI TS 102 622)
HDLC
LLC (ETSI TS 102 613)SWP(ETSI TS 102 612)
I〓C

LLC
 NFCのLLC(論理リンク制御層)は、ETSI TS 102 613準拠である。次のような構造のプロトコルである。
 SHDLCプロトコルのみサポートするような場合は、LLC HeaderはSHDLCコントロールフィールドと等価である。

NFCフォーラム仕様

モード
 NFCフォーラム仕様では、次の三種類のモードを定義している。
 SuicaなどはCard Emulation Modeで動作する。これを著している時点では1枚100円程度からとなるICタグはReader/Writer Modeで動作することになる。

種類
 NFCフォーラムでは、国際標準規格ISO/IEC 14443で規定される各非接触ICカードを次のように分類している。
 NFCIP-2ではこのほかにISO/IEC 15693があり、後述するAndroidなどで対応があるが、NFCフォーラム仕様では特に規定がない。

NFCフォーラムタグ
 NFCのデバイスでは、Reader/Writer Modeで次の4種類のタグが読み書きできることが必須となっている。
 MIFAREは、MIFARE ULはあるがMIFARE Classicが存在しない。

Android仕様

API
 Androidでも、APIレベル9(Android 2.3)から対応が始まり、APIレベル10(Android 2.3.3)から実用化された。
 Androidでは各NFC技術ごとに専用のclassが用意されている。
 ここで提供される以下のclassで、各々へのアクセスが提供される。
 ここで提供される以下のclassで、各々へのアクセスが提供される。
 またAndroidでは、以下のclassが存在し、各技術へのアクセス性を高めている。各々、NfcAかNfcBのいずれかの技術が使われている。
 例えばNDEFフォーマットされたMIFARE Classicを例にすると、バイト単位でアクセスしたいならNfcAパッケージが利用できるが、単にNDEFフォーマットを読み書きしたいだけならNdefパッケージを使った方が楽、ということになる。

カードエミュレーションモード
 Androidでは、APIレベル19(Android 4.4)から公式に対応した。
 パッケージ名は android.nfc.cardemulation である。

再検索