このページの本文へ

前へ 1 2 次へ

Windows Info 第18回

Windows 8でNFCを使う

2014年04月01日 12時00分更新

文● 塩田紳二

  • この記事をはてなブックマークに追加
  • 本文印刷

 Windows 8の新機能の1つにNFCへの対応がある。NFCは、すでにスマートフォンなどに搭載されており、使ったことがある人もいるだろう。WindowsのNFCのサポートは、現時点ではまだ完全なものではないが、APIによるサポート(アプリケーションからNFCの機能を利用する)と、システムによるNFCを利用した機能がある。前者は、対応するアプリケーションをインストールしないと利用することはできないが、システム組み込みの機能に関しては、特にアプリケーションのインストールは必要ない。

 ただし、NFC機能が利用できるのは、NFCデバイスを内蔵したマシンか、外付けのNFCデバイスを接続したマシンに限られる。一部のUSB接続の非接触カードリーダーにはNFC機能が搭載されており、これを接続することで、原則どのWindows 8マシンでもNFC機能は利用可能だ。

Windows 8では標準でNFCに対応しており、USB対応のリーダーを接続することなどで利用可能

そもそもNFCとは何?

 簡単にNFCについて解説しておこう。NFCとは「Near Field Communication」の略で「近距離通信」とも訳される。また、WindowsのAPIでは、NFCとは呼ばず、ネットワーク機能の1種「Proximity」(近接)としてNFCを扱っている。

 簡単にいうと、NFCとは、非接触カードやRFタグと呼ばれるものの、通信部分だけを規格化したもので、コンピュータ同士やコンピュータと周辺デバイス、タグやカードとの通信を可能するものだ。大きく3つの機能があり、主にそのうちの「Reader/Writerモード」と「P2P通信モード」を使ってアプリケーションを開発する。

NFCには、大きく3つの機能があり、一般的にはそのうちの「Reader/Writerモード」と「P2P通信モード」のどちらかを使う。前者は短いデータのやりとりやNFCタグへの書き込みなどに利用する。後者は、NFCを介したある程度の大きさのデータ転送などに利用する。ただし、最大でも424kbpsでしかないため、画像データなどはBluetoothなどの高速通信を併用することが多い

 また、非接触カードの仕様の一部を使うため、NFC機能を持つコンピュータで非接触カードをエミレーションすることも可能なのだが、非接触カードには、NFCに相当する通信部分に加え、情報を安全に保管する「セキュア・ストア」と呼ばれる部分があり、この部分はNFCの範囲外となっている。ただし、セキュア・ストアと組み合わせて使うための「カード・エミュレーション」という通信機能は、NFC側で定義されているので、ハードウェアメーカーが、セキュアストアとカードエミュレーションで、非接触カードをエミュレーションすることは可能だ。

 また、既存の非接触カード用の半導体デバイスには、NFC機能を搭載したものもあり、逆にこれらを使うことで、NFC機能と非接触カードの機能の両方を利用できるようなハードウェアを作ることも可能だ。

 国内で販売されているおサイフケータイ機能に対応したAndroidスマートフォンは、こうした半導体チップを内蔵しており、FeliCaカードのエミュレーションを行ないつつ、Android側でAndroid BeamなどのNFC機能を利用することができるようになっている。

 また、NFCでは、タグやNFCデバイス同士で交換するデータの形式を規定している。それには、NDEF(NFC Data Exchange Format)という仕様がある。これは、交換するメッセージの構造を既定したもので、メッセージは複数のNDEFレコードから構成され、レコードは、ヘッダやペイロード(転送するデータ)やその長さ、タイプなどから構成されている。

 ペイロードがどんなデータなのかはTYPEと呼ばれる情報で定義するが、TYPEは、レコード先頭部分にあるTNF(Type Name Format)と呼ばれる3ビットの値で区別される。この値によりTYPEがNFCフォーラムで定義したWKT(Well-known-type。URLやテキスト、電話番号など)や、MIME形式なのかなどを指定する。

 WTKの場合には、NFCフォーラムがRTD(Record Type Definition)という仕様で具体的なデータのかたちなどを指定している。こうした定義があるため、NFCでは、お互いがデータがなんであるかを把握して動作することが可能になる。

 WindowsでもAndroidも、NFCの基本機能となるNDEFやRTDを実装しているため、OSが違ってもお互いにデータを交換できるようになっている。ただし、Windowsの場合、NDEFによるデータの転送とその処理は、すでにある「既定のプログラム」の機能を使う。簡単に言うとデータ形式をURLのスキームなどとして解釈して、対応するアプリを探し出す方法だ。しかし、ここでプロトコルと対応アプリケーションの対応が定義されていない場合には、候補となるアプリケーションのリストを表示させて、ユーザーに選択させるようになっている。また、この対応の変更はコントロールパネルの「既定のプログラム」で「ファイルの種類またはプロトコルへのプログラムの関連づけ」を使って行なう。

前へ 1 2 次へ

カテゴリートップへ

この連載の記事

注目ニュース

ASCII倶楽部

プレミアムPC試用レポート

ピックアップ

ASCII.jp RSS2.0 配信中

ASCII.jpメール デジタルMac/iPodマガジン