2012/06/06

[llcp]PAXの謎

謎、と書いた方が気分が盛り上がるだけだ。
単に私の読み不足だけなんだがね。


nfc-smart-tagのLLCPシーケンスを見ていると、いきなりCONNECTから始まっている。
うーん、Link ActivationのPAXがないけど、いいんだろうか・・・。

それに昨日気づき、朝からLLCP1.1を読んでいた(バージョン書かないとね)。
すると、p.44に書いてあるようだった。

 

まず、読むべきは6.2.1だろう。
私は先にNFC-DEPのドキュメントを読んでいたが、これを先に読んでいると気が楽だったかもしれない。

そして今回の謎は、6.2.3.1に記載されていた。
ATR_REQのGeneral BytesにPAX PDUで送る内容を書いておくことにより、PAX PDUは使わなくなる(SHALL NOT)のだ。
SHALL NOTなので、PAX PDUは使ってはいけない、くらいの強さなのだ。

 

nfc-smart-tagではLLCP initiatorとのやりとりを想定しており、PAXは使ってはいけないため、シーケンスからもPAX PDUがないのは正しいということになる。

Q.E.D


まあ、これで証明終わりにしてしまってもいいかもしれんが、気になることはある。

じゃあ、なんでPAX PDUなんてあるの?だ。
General Bytesにキーワードがなかった場合に使うのか、と思ったが「left to implementation」と書いてあるので、処理を終わるのだろう。

 

PAXは、PArameter eXchange、の略だ。
なので、パラメータ交換するためにあると考えると、別にシーケンスの最初だけ必要ってわけでもないか。

そう思うことにしておこう。


私は5章のシーケンスまでしか引いておらず、6章はNFC-DEPのことだろうからと、あまり気にしていなかったのだ。
まさか、Link Activationが絡んでいようとは!

NFC関係ではまった伏線では2番目のレベルであろう。
なお今のところ1番の伏線は、FeliCa Liteの片側認証演算だ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。