【バグ管理の作法】最新家電のバグ管理
第2回:バグを未然に防ぐ仕組みづくり「モバイルFelica」
著者:シンクイット編集部
公開日:2007/12/10(月)
信頼あるセキュリティをめざすためには
まずセキュリティの面から解説していく。ICチップ上のデータ記憶領域については、図2の上部のようにして、複数事業者が独自のデータを記録できる仕組みが用意されている。これは「共通領域」と呼ばれているもので、データ記憶領域をフェリカネットワークスが区分け/管理し、この区画は事業者A、この区画は事業者Bというように区画整理を行っている。
それぞれの区画に固有の「鍵」が割り当てられており、その鍵を知らなくては土地に入れない。1つ1つの区画にファイアウォールが設置してある、とイメージするとわかりやすいだろう。さらにFeliCa OSでは1つの区画に対して複数の事業者が「相乗り」できるための機能も用意されている。
個々の区画はファイアウォールで区切られているが、事業者同士が連携したいと考えた際には、それを実現できるファイルシステムとなっているのだ。またFeliCaを中心としたシステム全体の連携方式として考えた場合、FeliCa OS上での組み合わせのほか、サーバサイド/バックエンド側での紐付けもできる。この柔軟性とセキュリティがFeliCa OSの持つ大きな特徴だといえるだろう。
これら、汎用的なニーズに応える仕組みを提供しているFeliCa OSだが、複数の事業者間に対して1つのICチップがアクセスすることから、特にセキュリティを担保することが重要となる。
図2:モバイルFelicaの構造とポイント
セキュリティに対する方策の1つとして、交通機関の改札でのデータ通信の例をみてみよう。改札の内部を機能ごとに分けると、図2の下部のように制御を行う「コントローラ」と実際にICチップと通信する「リーダ/ライタ」、そしてICチップの3つとなる。セキュアな通信を行うため、この3つがやり取りする箇所ごとに「お互いが正しい相手なのか」を確認しあう。
その上でチケットのやり取りが行われるが、その情報もスクランブルがかけられている。さらに機器間の通信をキャプチャされたとしても、データそのものはワンタイムのスクランブルがかけられており、もう一度データを流そうとしても利用できない。
モバイルFeliCaでは、これらの「相互認証 → データの読み取り → 書き込み」という一通りの作業を約0.1秒で終了する。バグへの対応はもちろんだが、それ以上にこの仕様をクリアするための「品質管理」という点が、サービスを運営していく上で大きな課題となる。
全体的なシステム構築の流れの部分では「システム設計 → 開発 → 単体試験→ 結合 → 相互試験」と、一般的な大規模システム開発と同じである。企画からサービスインまでの期間は、1年程度かかるとのことだ。最終的な総合試験やオペレーション訓練が、その中で1ヶ月程度を占めているという。
さまざまな事業者がFeliCa対応機器を開発している中、サービスを展開する事業者側にとってはFeliCaをかざす機器が増えており、その試験の負荷も増加している。技術的な情報に関して、完全な仕様書だけでなくガイドライン的に管理している部分もあり、互換性をどのように確保するかという課題が発生している。
フェリカネットワークスとSonyのFeliCa事業部は、「最低限FeliCaはこのような条件をクリアしている必要がある」という部分を検証する「FeliCa検定」を実施している。この検定に合格したものをサービスに組み入れていくことによって、機器間の互換性を確保しているわけだ。 次のページ