iモードIDを試してみた

先日DoCoMoから発表があった「iモードID」が本日より技術資料とともに公開・解禁されたので試してみた。


携帯ID確認クン(作ったテストページ)


iモードIDの使い方

  1. クエリパラメータに guid=ON を付ける。
  2. すると X-DCMGUID というHTTPのリクエストヘッダでiモードIDが送られてくる。

■注意点&気になる点

  • iモードIDは携帯電話番号(正確にはiモード契約)毎にユニークで、機種変更やFOMAカード差し替えをしても変わらない
  • iモードIDの形式は英数字7桁で、大文字小文字は区別される
  • guid=ONというクエリパラメータ自体の大文字小文字は区別されない(gUId=oNとかでも取得可能)
  • guidパラメータが複数あってもそのうちの一つにguid=ONがあればよい(guid=off&guid=ON&guid=hogeとかでも取得可能)
  • SSLでは利用不可*1
  • ID送信時に確認ダイアログが出ないので利便性が高い
  • ユーザのiモードID利用設定がOFFの場合にはiモードIDは利用できない(デフォルトはON)
  • ON/OFF設定は「iMenu」→「料金&お申込・設定」→「オプション設定」→「iモードID通知設定」で行う
  • iモードIDはユーザの名義変更、改番、iモード契約の解約により変更(破棄)され、一度変更(破棄)されたiモードIDは再利用されない
  • POSTでhiddenを使ってguidを送信しても無視される(action属性のクエリにguid=ONを付ければPOSTでも取得可能)
  • 詐称を防ぐ為にはリモートIPがDoCoMoゲートウェイのものかどうかチェックが必要
  • 2in1契約を使っている場合はAナンバーのiモードIDが使われる
  • iアプリからも利用可能

ところでguidという名前だがGUID (Globally Unique Identifier)とは全く関係ない。多分元々公式サイト専用のuidというものがあったので、それに対してglobal uidという意味合いでguidになったんじゃないかと予想するが真相は謎。

*1:uid=NULLGWDOCOMOの時と同じで、SSLだと端末とサーバ間が暗号化されてしまいDOCOMOゲートウェイサーバが通信内容が見れないから仕方が無い仕様。かと言って利便性の為にSoftbankのようにhttps://secure.softbank.ne.jpのような踏み台にリダイレクトさせてヘッダ追加するのもSSLの意義を貶める好意で気持ち悪いし…難しいところよの。