特許第6947166号(P6947166)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ソニーグループ株式会社の特許一覧
<>
  • 特許6947166-情報処理装置及び情報処理方法 図000002
  • 特許6947166-情報処理装置及び情報処理方法 図000003
  • 特許6947166-情報処理装置及び情報処理方法 図000004
  • 特許6947166-情報処理装置及び情報処理方法 図000005
  • 特許6947166-情報処理装置及び情報処理方法 図000006
  • 特許6947166-情報処理装置及び情報処理方法 図000007
  • 特許6947166-情報処理装置及び情報処理方法 図000008
  • 特許6947166-情報処理装置及び情報処理方法 図000009
  • 特許6947166-情報処理装置及び情報処理方法 図000010
  • 特許6947166-情報処理装置及び情報処理方法 図000011
  • 特許6947166-情報処理装置及び情報処理方法 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6947166
(24)【登録日】2021年9月21日
(45)【発行日】2021年10月13日
(54)【発明の名称】情報処理装置及び情報処理方法
(51)【国際特許分類】
   G06F 16/14 20190101AFI20210930BHJP
   G06F 16/13 20190101ALI20210930BHJP
   G06K 19/07 20060101ALI20210930BHJP
   H04L 9/14 20060101ALI20210930BHJP
【FI】
   G06F16/14 200
   G06F16/13 200
   G06K19/07
   H04L9/00 641
【請求項の数】11
【全頁数】20
(21)【出願番号】特願2018-507131(P2018-507131)
(86)(22)【出願日】2017年2月17日
(86)【国際出願番号】JP2017005809
(87)【国際公開番号】WO2017163686
(87)【国際公開日】20170928
【審査請求日】2020年2月7日
(31)【優先権主張番号】特願2016-59082(P2016-59082)
(32)【優先日】2016年3月23日
(33)【優先権主張国】JP
(73)【特許権者】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】特許業務法人酒井国際特許事務所
(72)【発明者】
【氏名】栗田 太郎
(72)【発明者】
【氏名】中津留 勉
(72)【発明者】
【氏名】米田 好博
(72)【発明者】
【氏名】柴本 悟郎
【審査官】 甲斐 哲雄
(56)【参考文献】
【文献】 特表2000−503157(JP,A)
【文献】 特開2003−016403(JP,A)
【文献】 特開2010−176352(JP,A)
【文献】 国際公開第2005/121976(WO,A1)
【文献】 特開2009−296463(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/10−16/188
G06K 19/07
H04L 9/14
G06F 12/00
(57)【特許請求の範囲】
【請求項1】
非接触型IC(integrated circuit)カードの機能を有する情報処理装置であって、
記憶媒体にて関連付けられている、複数のサービスそれぞれに対応するサービスに関するデータを処理する処理部を備え
関連付けられている前記サービスに関するデータが、前記記憶媒体における異なる記憶領域に記憶されている場合、
前記処理部は、異なるセキュリティモデルを有する異なる前記記憶領域に記憶されている前記サービスに関するデータを処理する、
情報処理装置。
【請求項2】
前記処理部は、前記記憶領域を識別する識別情報に基づいて、関連付けられている前記サービスに関するデータが記憶されている前記記憶領域を、特定する、
請求項に記載の情報処理装置。
【請求項3】
前記記憶領域には、1または2以上の前記識別情報が設定され、
前記処理部は、取得された識別情報と一致する、前記1または2以上の前記識別情報が設定された前記記憶領域を、特定する、
請求項に記載の情報処理装置。
【請求項4】
前記処理部は、前記サービスそれぞれ、または、前記データそれぞれに対応する鍵情報に基づいて、前記サービスに関するデータを処理する、
請求項1に記載の情報処理装置。
【請求項5】
前記サービスそれぞれ、または、前記データそれぞれに対応する鍵情報は、前記サービスごと、または、前記データごとに異なる、
請求項に記載の情報処理装置。
【請求項6】
前記処理部は、前記サービスそれぞれに対応する認証方式に基づいて、前記サービスに関するデータを処理する、
請求項1に記載の情報処理装置。
【請求項7】
前記サービスそれぞれに対応する認証方法は、前記サービスごとに異なる、
請求項に記載の情報処理装置。
【請求項8】
関連付けられている前記サービスに関するデータには、前記サービスに関するデータごとにアクセス権が設定される、
請求項1に記載の情報処理装置。
【請求項9】
複数のサービスそれぞれに対応するサービスに関するデータが、前記サービスに関するデータに対応付けられているプログラムにより関連付けられている場合、
前記処理部は、前記プログラムを実行することによって、関連付けられている前記サービスに関するデータを処理する、
請求項1に記載の情報処理装置。
【請求項10】
複数のサービスそれぞれに対応するサービスに関するデータが、前記サービスに関するデータそれぞれに対応付けられている共有情報により関連付けられる、
請求項1に記載の情報処理装置。
【請求項11】
非接触型ICカードの機能を有する情報処理装置により実行される情報処理方法であって、
記憶媒体にて関連付けられている、複数のサービスそれぞれに対応するサービスに関するデータを処理することを含み、
関連付けられている前記サービスに関するデータが、前記記憶媒体における異なる記憶領域に記憶されている場合、
異なるセキュリティモデルを有する異なる前記記憶領域に記憶されている前記サービスに関するデータを処理する、
情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置及び情報処理方法に関する。
【背景技術】
【0002】
近年、IC(Integrated Circuit)カードの普及に伴い、1枚のICカードを用いて複数のサービスを利用する動きが盛んになっており、関連技術が多数開示されている。例えば、特許文献1には、複数のアプリケーションがICカードへ処理を行う場合において、端末(リーダライタ等)やサーバが、複数のアプリケーションを適切に制御する技術が開示されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2007−279966号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかし、ICカードのような情報処理装置がより多くのサービスに対応する場合に、端末(リーダライタ等)やサーバによる処理が増加するため、端末やサーバへの負荷が高まるという問題があった。そこで、ICカードのような情報処理装置により多くの処理をさせることが求められている。
【0005】
そこで、本開示は、上記に鑑みてなされたものであり、本開示の目的とするところは、複数のサービスに関するデータや処理を連動させることが可能な、新規かつ改良された情報処理装置を提供することにある。
【課題を解決するための手段】
【0006】
本開示によれば、記憶媒体にて関連付けられている、複数のサービスそれぞれに対応するサービスに関するデータを処理する処理部を備える、情報処理装置が提供される。
【発明の効果】
【0007】
以上説明したように本開示によれば、複数のサービスに関するデータや処理を連動させることが可能になる。
【0008】
なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
【図面の簡単な説明】
【0009】
図1】本実施形態における情報処理システムの一例を示す説明図である。
図2】本実施形態におけるICカードの構成を示す説明図である。
図3】ICカードに含まれるデータ等の階層構造を示す説明図である。
図4】本実施形態におけるデータを関連付ける処理フローを示す説明図である。
図5】本実施形態におけるプログラムを設定する処理フローを示す説明図である。
図6】本実施形態における、ICカードとリーダライタの動作を示す説明図である。
図7】本実施形態における関連付けられたデータとプログラムの設定パターンを示す説明図である。
図8】本実施形態における論理カードの構成を示す説明図である。
図9】本実施形態における記憶領域に記憶されるデータ等の階層構造を示す説明図である。
図10】本実施形態における記憶領域間の関連付けを示す説明図である。
図11】本実施形態におけるICカードのハードウェア構成を示す説明図である。
【発明を実施するための形態】
【0010】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【0011】
なお、説明は以下の順序で行うものとする。
<1.第1の実施例>
1−1.情報処理システムの概要
1−2.ICカード100の構成
1−3.ICカード100におけるデータの関連付け
1−4.ICカード100におけるプログラムの設定
1−5.ICカード100およびリーダライタ200の動作
<2.第2の実施例>
<3.情報処理装置のハードウェア構成例>
【0012】
<1.第1の実施例>
[1−1.情報処理システムの概要]
まず、図1を参照し、本開示の実施形態における情報処理システムの概要を説明する。図1は、本実施形態における情報処理システムの一例を示す説明図である。図1に示すように、本実施形態における情報処理システムは、ICカード100とリーダライタ200を備え、ICカード100とリーダライタ200は、通信路300により接続される。本実施形態におけるICカード100は、近距離無線通信(NFC:Near Field
Communication)に用いる非接触型ICカードである。
【0013】
非接触型ICカードは、電子マネーシステムやセキュリティシステム等で活用されることで、近年普及している情報処理装置である。ICカードは、大きく接触型ICカードと非接触型ICカードとに区分される。接触型ICカードは、モジュール端子をリーダライタと接触させることで、当該モジュール端子を介して、リーダライタと通信を行うタイプのICカードである。一方、非接触型ICカードは、無線通信用モジュールを備え、リーダライタと無線通信を行うタイプのICカードである。非接触型ICカードに関しては、ユーザがICカードを使用する際に、財布やカードケース等からICカードを取り出す必要がなく、利便性が高いため、交通機関や小売店等の決済時に使用されるケースが増えている。
【0014】
本開示の実施形態におけるICカード100は、一例として非接触型ICカードであるとするが、非接触型ICカードに限定されない。具体的には、本開示の実施形態におけるICカード100は、例えば、接触型ICカード、ICカードを内蔵した各種通信装置(携帯電話、腕時計、PDA(Personal Digital Assistant)、携帯型ゲーム機、携帯型映像/音声プレーヤー等)および各種サーバ等の情報処理装置によって具現されてもよい。つまり、本開示の実施形態は、カードという形態に限定されない。
【0015】
また、1枚のICカード100には、複数のサービスを適用することができる。具体的には、1枚のICカード100は、交通機関が提供するチケット販売サービス、小売業者が提供する商品販売サービスおよび金融機関が提供する本人認証サービス等の複数のサービスに対応することができる。すると、ユーザは、各サービスを利用するために専用のICカードを所持する必要がないため、ICカードを管理し易くなる。
【0016】
リーダライタ200は、ユーザによってICカード100がかざれた際に、ICカード100と非接触通信を行うことで、ICカード100に対してデータの読み書き等を行う情報処理装置である。また、リーダライタ200がICカード100からデータの読み書きを行われても良い。リーダライタ200とICカード100が相互に非接触通信を行うことで、ICカード100を使用するユーザは、各種サービスを享受することができる。
【0017】
本開示の実施形態におけるリーダライタ200は、あくまで一例であり、本開示の実施形態は、リーダライタ200に限定されない。具体的には、本開示の実施形態におけるリーダライタ200は、例えば、交通機関の自動改札機、小売店のレジスター装置、各種商品の自動販売機、金融機関のATM(Automated/Automatic Teller Machine)および各種サーバ等の情報処理装置によって具現されてもよい。
【0018】
通信路300は、近距離無線通信(NFC)用の伝送路である。仮に、ICカード100およびリーダライタ200が、各種サーバ等の情報処理装置に置き換えられた場合においては、通信路300は、公衆無線LAN(Local Area Network)、Bluetooth(登録商標)および赤外線通信等の近距離無線通信網、インターネット、電話回線網および衛星通信網等の公衆回線網や、Ethernet(登録商標)を含む各種のLAN、WAN(Wide Area Network)などを含んでもよい。また、通信路300は、IP−VPN(Internet Protocol−Virtual Private Network)などの専用回線網等を含んでもよい。
【0019】
[1−2.ICカード100の構成]
上記では、本実施形態における、情報処理システムの概要を説明した。続いて、図2、3を用いて、ICカード100の構成を説明する。図2は、本実施形態におけるICカード100の構成を示す説明図であり、図3は、ICカード100に含まれるデータ等の階層構造を示す説明図である。図2に示すように、ICカード100は、処理部101、記憶部102、通信部103、暗号部104、復号部105、を備える。
【0020】
まず、通信部103は、リーダライタ200向けのインタフェースであり、リーダライタ200からのポーリング(Polling)要求、認証メッセージ要求及びデータ読み書き要求等の各種要求を受信する。また、通信部103は、各種要求に対して、ポーリング返信、認証メッセージ返信及びデータ読み書き返信等の各種返信を送信する。また、図示してはいないが、通信部103は例えば、変復調回路、フロントエンド回路および電源再生回路等から構成される。
【0021】
変復調回路は、例えばASK(Amplitude Shift Keying)変調方式などでデータを変調、復調する。電源再生回路は、アンテナ部(図示なし)を用いて、リーダライタ200から受信した搬送波のRF(Radio Frequency)動作磁界から、電磁誘導による電力を発生させ、ICカード100の起電力として取り込む。また、フロントエンド回路は、リーダライタ200が発信した搬送波を、アンテナ部を用いて受信し、当該搬送波を復調して、リーダライタ200からコマンドまたはデータを取得し、復号部を介して処理部101へ供給する。さらにフロントエンド回路は、処理部101により生成された所定のサービスに関連するコマンドやデータに応じて、上記搬送波を変調し、当該搬送波を、アンテナ部からリーダライタ200へ送信する。
【0022】
暗号部104及び復号部105は、暗号処理機能を有する暗号化コプロセッサ(Co−Processor)等のハードウェアで構成され得る。例えば、本実施形態による暗号部104及び復号部105は、DES(Data Encryption Standard)やAES(Advanced Encryption Standard)等の複数の暗号アルゴリズムに対応したコプロセッサで構成される。かかるコプロセッサを搭載することで、ICカード100はリーダライタ200と複数の暗号アルゴリズムで無線通信することが可能となる。
【0023】
処理部101は、記憶部102、通信部103、暗号部104、復号部105を制御するとともに、所定の演算処理およびプログラムの実行等を行う。例えば、処理部101は、所定のサービスに関してリーダライタ200と通信するときに、記憶部102が記憶する当該サービスに関するデータに対して処理を行ったり、プログラムを実行することで当該データに対して処理を行ったりする。
【0024】
記憶部102は、ICカード100が対応する複数のサービスに関するデータ等を記憶する。具体的には、図3に示すように、記憶部102は、階層構造を形成したシステム、ディレクトリ、データ等を記憶する。ここで、システムとは、階層構造全体を束ねる概念であり、1階層構造につき1個存在する。次に、ディレクトリとは、「エリア」とも呼ばれ、配下のデータを束ねる概念であり、1階層構造につき複数個存在し得る。ディレクトリは、システムまたは他のディレクトリの配下に配置され得る。最後に、データとは各種サービスを提供するために必要な情報が含まれているものであり、1階層構造につき複数個存在し得る。データは、システムまたはディレクトリの配下に配置され得る。
【0025】
ICカード100が複数のサービスに対応する場合、1個のサービスに関するデータは、1個のディレクトリの配下に含まれても良いし、複数のディレクトリの配下に分かれた状態で含まれてもよい。また、1個のサービスは、1個のデータによって成されても、複数のデータによって成されてもよい。
【0026】
記憶部102が記憶する階層構造において、システムおよび、より上位のディレクトリの各種設定は、それらの配下に配置されるディレクトリおよびデータに対して影響を及ぼすことができる。ここでいう、各種設定とは、例えば、システム、ディレクトリまたはデータに対する認証鍵、認証方法およびアクセス権等である。
【0027】
例えば、上位に配置されたディレクトリへのアクセス権の設定を、当該ディレクトリの配下に配置された他のディレクトリおよびデータへのアクセス権のデフォルト設定とすることができる。つまり、当該他のディレクトリおよびデータへのアクセス権が別途設定されない場合は、上位のディレクトリへのアクセス権設定が継承され得る。かかる機能により、ディレクトリやデータに対して個別に各種設定を行う必要がなくなるため、ディレクトリやデータの管理負荷を軽減することができる。
【0028】
また、記憶部102は、複数のサービスの各々に関するデータを、異なるサービス間で関連付けた状態で記憶することができる。データの関連付けの方法は、リンクによる関連付け(以降、「関連付け」と称する場合は、リンクによる関連付けを指す)とプログラムによる関連付けが存在する。
【0029】
具体的には、図3に示す関連付け1および関連付け2のように、処理部101は、異なるディレクトリ配下に存在するデータ同士が関連付けたり、関連付け3のように、同一のディレクトリ配下に存在するデータ同士が関連付けたりすることができる。当該関連付けが、リンクによる関連付けである。一方、処理部101は、関連付け4のようにデータに設定されたプログラムによって、データ同士を関連付けることができる。当該関連付けが、プログラムによる関連付けである。
【0030】
図示していないが、3以上のデータ間、(またはサービス間)でデータが関連付けられてもよい。なお、記憶部102は、ICカード100に設けられる記憶媒体であるとする。データ同士の関連付けに関する詳細については、「1−3.ICカード100におけるデータの関連付け」にて説明する。
【0031】
さらに、記憶部102は、システム、ディレクトリまたはデータに対してプログラムを設定した状態でこれらのプログラムを記憶することができる。具体的には、図3に示すように、システム1にデフォルトプログラムを、ディレクトリ1にプログラム1を、データ1−1等にプログラム2等を設定することができる。また、プログラム5のように、複数のデータに対してプログラムを設定することで、前述のデータの関連付けを行うこともできる。ここで、デフォルトプログラムは、システム単位に設定されるプログラムであり、システムの配下に配置されたディレクトリ、データおよびプログラムに対して処理を行うプログラムである。しかし、デフォルトプログラムは、データ等には処理を行わずデフォルトプログラム単体で動作してもよい。
【0032】
また、ディレクトリおよびデータに設定されたプログラムは、当該ディレクトリおよびデータの配下に配置されたディレクトリ、データおよびプログラムに対して処理を行うものであるが、デフォルトプログラムと同様にプログラム単体で動作してもよい。
【0033】
記憶部102が記憶する階層構造において、システム、ディレクトリまたはデータのアクセス権等の各種設定は、それらの配下に設定されるプログラムに対して影響を及ぼすことができる。例えば、上位に配置されたディレクトリへのアクセス権の設定を、当該ディレクトリの配下に設定されたプログラムへのアクセス権のデフォルト設定とすることができる。つまり、当該プログラムへのアクセス権が別途設定されない場合は、上位のディレクトリへのアクセス権設定が継承され得る。かかる機能により、プログラムに対して個別に各種設定を行う必要がなくなるため、管理負荷を軽減することができる。プログラムの設定に関する詳細については「1−4.ICカード100におけるプログラムの設定」にて説明する。
【0034】
[1−3.ICカード100におけるデータの関連付け]
上記では、ICカード100の構成について説明した。図3で示した通り、記憶部102は、複数のサービスの各々に関するデータを、異なるサービス間で関連付けた状態で記憶することができる。
【0035】
例として、サービスAに関連するデータAとサービスBに関連するデータBが関連付けられているとする。すると、ICカード100の処理部101は、サービスAに関連する処理を行っている場合に、データAだけでなくデータBに対して処理を行うことができる。同様に、ICカード100の処理部101は、サービスBに関連する処理を行っている場合に、データBだけでなくデータAに対して処理を行うことができる。
【0036】
ここで、ICカード100の処理部101が、データAとデータBに対して処理を行う場合のアクセス権は柔軟に設定され得る。例えば、サービスAに関する処理が行われる場合、データAに対するアクセス権については、「読み書きができる」、「読み書き(例えば、所定の演算のみ)ができる」、「読みができる」等を設定することができる。一方で、データBに対するアクセス権についても、「読み書きができる」、「読み書き(例えば、所定の演算のみ)ができる」、「読みができる」等を設定することができる。この時、データAとデータBに設定されるアクセス権は異なっていても良い。
【0037】
また、図3で示した通り、データに対してプログラムを設定することができる。すると、当該プログラムに対するアクセス権も柔軟に設定することができる。例えば、データAに対してプログラムAが設定されており、データBに対してプログラムBが設定されているとする。そしてサービスAに関する処理が行われる場合、処理部101が、プログラムAおよびプログラムBのどちらも実行可能であるか、プログラムAまたはプログラムBのいずれか一方のみ実行可能であるか等を設定することができる。
【0038】
次に、図4を参照しながら、複数のサービス間でデータを関連付けるための処理フローを説明する。図4は、サービスAに関連するデータAと、サービスBに関連するデータBとを関連付けるための処理フローである。ここで、図4におけるリーダライタAは、サービスAに対応したリーダライタであり、リーダライタBは、サービスBに対応したリーダライタであるとする。また、これは一例であるため、当該処理フローにおける主体は、必ずしもリーダライタAおよびリーダライタBに限定されるわけではない。具体的には、当該処理フローにおける主体は、リーダライタAおよびリーダライタとBと同等の機能を有した、外部システムAおよび外部システムB等の各種サーバ等に代えられ得るものとする。また、リーダライタAおよびリーダライタBが一体であってもよい。
【0039】
まず、リーダライタAが、共有情報Aを作成し(S400)、当該共有情報を所定のアルゴリズムで暗号化する(S404)。また、データ共有者Bが共有情報Bを作成し(S408)、当該共有情報を暗号化する(S412)。
【0040】
ここで、共有情報とは、データを関連付けるために必要な各種情報のことであり、共有情報にはサービス間のアクセス権設定に関する情報が含まれている。具体的には、共有情報Aには、データAおよびデータBに関するアクセス権の設定情報が含まれており、共有情報Bにも、データAおよびデータBに関するアクセス権の設定情報が含まれている。処理部101は、共有情報Aおよび共有情報Bを突き合わせることによって、データAおよびデータBを関連付ける。例えば、処理部101は、共有情報Aおよび共有情報Bの内容が一致している場合に、サービスAおよびサービスB双方の合意が取れていると判断し、データAおよびデータBを関連付ける。なお、関連付けを行うために、共有情報Aおよび共有情報Bが一致する必要があるわけではない。
【0041】
また、共有情報には、プログラムAおよびプログラムBに関するアクセス権に関する情報が含まれ得る。処理部101は、共有情報Aおよび共有情報Bに含まれるアクセス権に関する情報を突き合わせることによって、プログラムAおよびプログラムBを双方のサービスに対して共有するか否かを決定する。また、共有情報に、プログラムのハッシュ値を含めることができる。すると、処理部101が共有情報Aおよび共有情報Bを突き合わせる際、互いに含まれているハッシュ値が一致することで、プログラムAおよびプログラムBを双方のサービスに対して共有することができる。
【0042】
続いて、ユーザがICカード100をリーダライタAへ接近させると、ICカード100がリーダライタAの発する搬送波を通過する。すると、ICカード100の通信部103が備える電源再生回路が電力を発生させる。そして、ICカード100は当該電力を起電力として起動する(S416)。
【0043】
次に、リーダライタAはポーリング要求をICカード100へ送信する(S420)。具体的には、リーダライタ200はICカード100が接近する前から常時ポーリング要求を発信し続けていてもよい。
【0044】
ポーリング要求は、ICカード100の種類を特定するための識別情報を含む。なお、識別情報とは、ICカード100の種類を特定することができる情報であれば、どのような識別情報でもよく、システムコードまたはID等であってもよい。本実施形態では、システムコードを識別情報として説明する。具体的には、リーダライタ200は、処理を行いたい所望のICカードの種類をシステムコードで指定したポーリングを行うことで、所望のICカードの種類のみを反応させ、ポーリング返信をさせることができる。つまり、所望のICカード以外は、当該ポーリングを受信しても、ポーリングに含まれるシステムコードが異なるため、ポーリング返信を送信しない。すると、例えば、ユーザが複数の種類のICカードを重ねた状態で、リーダライタ200へ接近させた時に、所望のICカードのみに処理を行うことができる。本実施例において、ICカード100は、システムコードAを保持しているとする。
【0045】
ポーリング要求を受信したICカード100は、ポーリング返信をリーダライタAへ送信する(S424)。リーダライタAは、ポーリング返信を受信すると、認証メッセージ要求を作成し、ICカード100へ認証メッセージ要求を送信する(S428)。ICカード100は、認証メッセージ要求をリーダライタAから受信すると、認証メッセージ返信を作成し、リーダライタAへ認証メッセージ返信を送信する(S432)。かかる処理により、ICカード100とリーダライタA間の相互認証が完了する。相互認証が完了した後には、リーダライタAはICカード100に対して共有情報A配置要求(S436)を送信し、ICカード100は当該要求に応じて共有情報Aを記憶部102に記憶させる。そして、ICカード100は、共有情報A配置返信をリーダライタAへ送信する(S440)。
【0046】
リーダライタBは、S444〜S464の処理によって、共有情報BをICカード100の記憶部102に記憶させる。処理の内容は、前述のリーダライタAにおける処理(S420〜S440)の処理の内容と同様であるため、説明を省略する。
【0047】
続いて、リーダライタAまたはリーダライタBのいずれかが、データの共有要求を行う。例えば、図4に示すように、サービスBに対応しているリーダライタBが、ICカード100に対して、サービスAに関するデータAの共有要求を行う(S468)。すると、ICカード100の処理部101が、共有情報Aおよび共有情報Bの突合を行う(S472)。そして、当該突合が成功すれば、サービスAに関するデータAとサービスBに関するデータBが関連付けられる(S476)。一方、当該突合が成功しない場合は、データの関連付けは行われない。
【0048】
サービスAおよびサービスB間におけるデータの関連付けについて説明したが、3以上のサービスにおけるデータの関連付けが行われてもよい。さらに、同一のサービスに関する複数のデータ同士を関連付けることも可能である。
【0049】
また、図4で説明したデータ同士を関連付けるための処理フローは、ユーザによってICカード100がリーダライタへ接近された時に行われることを想定している。しかし、データ同士の関連付けは図4で説明した方法に限定されず、ICカード100が外部システムと通信できる状態であれば可能である。もちろん、ICカード100の製造時にデータ同士の関連付けを行うことも可能である。
【0050】
[1−4.ICカード100におけるプログラムの設定]
以上では、記憶部102が記憶するデータ同士の関連付けについて説明した。続いて、システム、ディレクトリまたはデータに対してプログラムが設定できる機能について説明する。
【0051】
図3を用いて説明した通り、記憶部102は、システム、ディレクトリまたはデータに対してプログラムを設定した状態でこれらを記憶することができる。すると、例えば、処理部101は、データに設定されているプログラムを実行することで、当該データに対して処理を行うことができる。この機能により、プログラムが処理をする対象を柔軟に設定することができるため、従来のICカードと比べて、より柔軟にサービスを提供したり、ICカードを運用したりすることができる。例えば、従来のICカードにおいては、認証方式が画一的に決まっていたため、一部のサービスに対して認証方式を変更および改訂することが難しかった。一方、本実施形態においては、認証のためのプログラムをシステム、ディレクトリまたはデータ単位に変更することができる。すると、各サービスがそれぞれに対応する認証方式を選択することができる。さらに言うと、各サービスがそれぞれに異なる認証方式を選択したり、認証方式を独自に変更したりすることができる。もちろん、各サービスで同一の認証方式が選択されてもよい。
【0052】
また、従来は、異なるサービスに関連するデータ同士を関連付けた場合、双方のデータに対して処理を行う場合は、サービス間で鍵情報を共有する必要があった。一方、本実施形態において、それぞれのサービスのデータに対する鍵情報が含まれるプログラムを、異なるサービス間で関連付けられたデータに対して設定することができる。このとき、プログラムへ含めた、双方のサービスのデータに対する鍵情報は暗号化されることで、鍵情報の内容が解読できないものとすることができる。処理部101が、鍵情報が含まれた当該プログラムを実行することで、処理部101は双方のサービスのデータへ処理を行うことができる。つまり、各サービス事業者が鍵情報の内容を教え合うことなく、サービス間で関連付けられたデータへ処理を行うことができる。もちろん、鍵情報は暗号化される必要はなく、サービス間で鍵情報が開示された状態でプログラムへ設定されてもよい。ここで、鍵情報とは、認証を実現するための何らかの情報であれば、何の情報でもよい。
【0053】
そこで次に、図5を参照しながら、システム、ディレクトリまたはデータに対してプログラムを設定する方法を説明する。なお、図5に示したリーダライタは、あくまで一例であり、当該処理フローにおける主体は、必ずしもリーダライタに限定されるわけではない。具体的には、当該処理フローにおける主体は、リーダライタと同等の機能を有した外部システム等の各種サーバ等に代えられ得るものとする。
【0054】
図5は、本実施形態におけるプログラムを設定するフローを示す説明図である。リーダライタが、プログラムを作成し(S500)、当該プログラムを所定のアルゴリズムで暗号化する(S504)。暗号化されたプログラムはS508〜S524の工程を経て、ICカード100に設定される。ここで、S508〜S524の処理の内容は、前述のS416〜S432の処理の内容と同様であるため、説明を省略する。
【0055】
次に、リーダライタからICカード100へプログラム配置要求が送信され(S528)、ICカード100は、プログラム配置要求を受信すると、暗号化されたプログラムを記憶部102に記憶させる。そして、ICカード100は、プログラム配置返信を外部システムへ送信する(S532)ことにより、プログラムの配置が完了する。
【0056】
図5で説明したプログラムを配置する処理フローは、ユーザによってICカード100がリーダライタ200へ接近された時に行われることを想定している。しかし、プログラムの配置方法は図5で説明した方法に限定されず、ICカード100が外部システムと通信できる状態であれば可能である。もちろん、ICカード100の製造時にプログラムを配置することも可能である。
【0057】
[1−5.ICカード100およびリーダライタ200の動作]
以上では、システム、ディレクトリまたはデータに対してプログラムを設定する方法を説明した。続いて、図6を用いて、本実施形態におけるICカード100とリーダライタ200の動作について説明する。
【0058】
ここで、図6におけるS600〜S616の処理の内容は、前述の図4におけるS416〜S432の処理の内容と同様であるため、説明を省略する。S616を行うことで、相互認証が完了した後は、リーダライタ200はICカード100に対してデータ読み書き要求(S620)を送信することができ、ICカード100は当該要求に応じた処理を行うことができる。さらに、ICカード100は、当該要求に応じた処理が実行された結果としてデータ読み書き返信をリーダライタ200へ送信する(S624)。
【0059】
続いて、図3および7を参照しながら、上記のリーダライタ200からのデータ読み書き要求(S620)に応じて、ICカード100の処理部101が行う処理の詳細について説明する。
【0060】
図3を用いて説明した通り、記憶部102は、複数のサービスの各々に関するデータを、異なるサービス間で関連付けた状態で記憶することができる。かかる関連付けにより、ICカードの処理部101は、一のサービスに関するデータに対して処理を行うだけでなく、当該データに関連付けられた他のサービスに関するデータに対しても処理を行うことができる。例えば、処理部101は、図3に記載したデータ1−1に対して処理を行う際、関連付け1により、データ1−1とデータ1−1−1が関連付けられていることを認識する。すると、処理部101は、データ1−1−1に対しても処理を行うことができる。また、例えば、処理部101は、図3に記載したプログラム5を実行してデータ2−4
へ処理を行う際、プログラム5中にデータ2−5への処理が定義されているため、データ2−5に対しても処理を行うことができる。
【0061】
かかる構成により、異なるサービスに関するデータに処理を行うために、サービス毎にポーリングや認証処理等を行う必要がなくなるため、リーダライタ200の処理による負荷を軽減することができ、処理スピードを向上させることができる。
【0062】
また、前述の通り、記憶部102は、システム、ディレクトリまたはデータに対してプログラムを設定した状態でこれらのプログラムを記憶することができる。かかる構成により、仮に、プログラムがICカードまたはシステム単位でしか設定できない場合と比較して、より柔軟にプログラムを設定することができる。すると、例えば、新規プログラムを設定する場合に、ICカード全体に当該新規プログラムを適用する必要がなく、必要なサービスに関するデータにのみプログラムを設定することができる。また、プログラムの改訂をする際、ICカード全体のプログラムを改訂する必要がなく、サービスに設定された個々のプログラムのみを改訂することができる。したがって、かかる構成により、新規プログラムの設置および、プログラムの改訂に伴うリスクを限定的にすることができる。具体的には、サービス毎に異なる認証方式(認証鍵の暗号化方式等)を設定することができ、かつ、当該認証方式をサービス毎に変更することも容易にできる。
【0063】
ここで、システム、ディレクトリまたはデータに対して設定されたプログラムは、様々なパターンで動作し得る。例えば、プログラムは、(ディレクトリやデータに対して処理を行わず)プログラム単体で処理を実行することができる。例えば、当該プログラムが、認証に使用される乱数を生成する場合等である。また、プログラムは、ディレクトリやデータに対して処理を実行することもできる。例えば、商品購入時にICカードに記憶されている電子マネーから決済を行う場合等である。さらに、プログラムは、ディレクトリやデータと認証する際や、ディレクトリやデータに対して何等かの処理を行う場合に、自動的に実行されることもできる。例えば、ある商品にクーポンが発行されていた場合に、ユーザが当該商品を購入すると、自動的にクーポンプログラムが実行されて販売価格が減額される場合等である。上記のようにプログラムが様々なパターンで処理されることで、ICカード100を用いて様々なサービスが提供され得る。
【0064】
次に、図7を用いて、関連付けられたデータとプログラムの設定方法のパターンを説明する。Aは、関連付けられたデータに対してプログラムが設定されていないパターンである(図3における関連付け3)。BおよびCは、関連付けられたデータのうちの一部のデータに対してプログラムが設定されるパターンである(図3における関連付け2およびプログラム4)。Dは、関連付けられたデータの全てに対してプログラムが設定されたパターンである(図3における関連付け1およびプログラム2、3)。
【0065】
かかる構成により、ICカードの処理部101は、プログラムを実行することで、関連付けられたデータに対して処理を行うことができるため、異なるサービスに対して処理を行うことができる。したがって、異なるサービスに関するデータに処理を行うために、サービス毎にポーリングや認証処理、プログラムの実行を行う必要がなくなるため、リーダライタ200の処理による負荷を軽減することができ、処理スピードを向上させることができる。
【0066】
<2.第2の実施例>
以降では、第2の実施例として、ICカード100である物理カードが、複数の論理カードを有する例を、図8を参照しながら説明する。図8は、本実施形態における論理カードの構成を示す説明図である。
【0067】
ここで、論理カードとは、物理カード内に仮想的に作成されたICカードである。換言すると、1枚の物理カードのリソース(記憶領域等)を分割し、複数の論理カードに割り当てることをいう。
【0068】
図8に示すように、本実施形態における物理カードは、識別情報として物理カード種別を保持しており、論理カード1および論理カード2を有している。一方で、論理カード1は、識別情報として論理カード種別1を保持しており、セキュリティモデル1を有している。論理カード2も、論理カード1と同様に、論理カード種別2を保持し、セキュリティモデル2を有している。
【0069】
ここで、セキュリティモデルとは、「第1の実施例」に記載した、システム、ディレクトリまたはデータ等から構成される階層構造およびプログラム構成のことをいう。つまり、第2の実施例においては、論理カード毎に階層構造およびプログラム構成が設けられる。かかる構成により、物理カードが複数の論理カードを有さない場合と比較して、より柔軟にサービスを提供することができる。例えば、サービス毎にデータ等の階層構造を形成することができるため、各サービス提供会社に合ったデータ構造やプログラムの設定を行うことができる。
【0070】
次に、図8で説明した構成を前提に、図9を参照しながら、本実施形態における記憶領域に記憶されるデータ等の階層構造を説明する。ここで、図9の記憶領域は図8の論理カードに対応し、図9のシステムコードは図8の論理カード種別に対応することとする。
【0071】
図9に示すように、ICカード100の記憶部102は、複数の記憶領域を有している。第1の実施例と同様に、各記憶領域には、システム、ディレクトリまたはデータ等の階層構造およびプログラム等が記憶されている。
【0072】
また、第1の実施例と同様に、記憶部102は、複数のサービスの各々に関するデータを、異なるサービス間で関連付けた状態で記憶することができ、システム、ディレクトリまたはデータに対してプログラムを設定することができる。
【0073】
また第2の実施例において、処理部101は、各記憶領域において、複数のサービスの各々に関するデータを、異なる記憶領域間で関連付けることができる(関連付け5)。具体的には、処理部101は、異なる記憶領域間においても、リンクまたはプログラムによる関連付けを行うことができる。図9では、2個の記憶領域間で、データが関連付けられた様子が記載されているが、3個以上の記憶領域間で、データが関連付けられてもよい。さらに、記憶領域間で関連付けられたデータは、さらに、記憶領域内の他のデータと関連付けられてもよい(図示なし)。
【0074】
かかる関連付けにより、ICカードの処理部101は、関連付けられたデータに対して処理を行うことができるため、異なる記憶領域に対して処理を行うことができる。例えば、処理部101は、記憶領域1のデータ2−4に対して処理を行う際、関連付け5により、データ2−4と記憶領域2のデータ1−1−2が関連付けられていることを認識する。すると、処理部101は、記憶領域2のデータ1−1−2に対しても処理を行うことができる。また、例えば、処理部101は、図9に記載したプログラム5を実行してデータ2−4へ処理を行う際、プログラム5中にデータ2−5と記憶領域2のデータ1−1−2への処理が定義されているため、データ2−5と記憶領域2のデータ1−1−2に対しても処理を行うことができる。
【0075】
したがって、第1の実施例と同様に異なる記憶領域(サービス)に関するデータに処理を行うために、記憶領域(サービス)毎にポーリングや認証処理等を行う必要がなくなるため、リーダライタ200の処理による負荷を軽減することができ、処理スピードを向上させることができる。
【0076】
上記のように異なる記憶領域間でデータを関連付けた場合に、当該関連付けられたデータに対して処理を行うことで、異なる記憶領域に対して処理を行うためには、異なる記憶領域を活性化させる必要がある。よって、続いて、図10を参照しながら、異なる記憶領域を活性化させる方法を説明する。
【0077】
まず、ICカード100を分割し、記憶領域1だけでなく記憶領域2を作成する(S700)。記憶領域1は識別情報としてシステムコードAを保持し、記憶領域2は識別情報としてシステムコードBを保持する。なお、識別情報とは、記憶領域を特定することができる情報であれば、どのような識別情報でもよく、ID等であってもよい。
【0078】
続いて、記憶領域に対して2個目のシステムコードであるシステムコード2を付与する(S704)。かかる構成により、システムコード2が付与された記憶領域は、システムコード1が付与された記憶領域として振舞えるだけでなく、システムコード2が付与された記憶領域として振舞うこともできる。例えば、図10においては、記憶領域2に対してシステムコード2としてシステムコードAを付与しているため、処理部101は、リーダライタ200からシステムコードAが指定されたポーリング要求を通信部103が受信した場合、記憶領域1だけでなく記憶領域2も特定し、活性化する。
【0079】
従って、例えば、図6のS604において、システムコードAが指定されたポーリング要求がリーダライタ200から送信された場合、記憶領域1だけでなく記憶領域2も活性化させることができる。
【0080】
また、システムコード2を付与する方法以外にも、異なる記憶領域間にブリッジをかけることによって関連付けることで異なる記憶領域を活性化させることが可能である(S708)。
【0081】
<3.情報処理装置のハードウェア構成例>
以上、本開示の実施形態における情報処理システムについて説明した。上述した情報処理システムにおける情報処理は、ソフトウェアと、以下に説明するICカード100のハードウェアとの協働により実現される。以下では、図11を用いて、本実施形態におけるICカード100のハードウェア構成を説明する。
【0082】
アンテナ172は、例えば、所定のインダクタンスをもつコイル(インダクタ)L1と、所定の静電容量をもつキャパシタC1とからなる共振回路で構成され、搬送波の受信に応じて電磁誘導により誘起電圧を生じさせる。そして、アンテナ172は、所定の共振周波数で誘起電圧を共振させた受信電圧を出力する。ここで、アンテナ172における共振周波数は、例えば、13.56[MHz]など搬送波の周波数に合わせて設定される。アンテナ172は、上記構成により、搬送波を受信し、また、ICチップ170が備える負荷変調回路186において行われる負荷変調によって応答信号の送信を行う。
【0083】
ICチップ170は、キャリア検出回路176と、検波回路178と、レギュレータ180と、復調回路182と、MPU184と、負荷変調回路186とを備える。なお、図11では示していないが、ICチップ170は、例えば、過電圧や過電流がMPU184に印加されることを防止するための保護回路(図示せず)をさらに備えていてもよい。ここで、保護回路(図示せず)としては、例えば、ダイオード等で構成されたクランプ回路などが挙げられる。
【0084】
また、ICチップ170は、例えば、ROM188と、RAM190と、不揮発性メモリ192とを備える。MPU184と、ROM188と、RAM190と、不揮発性メモリ192とは、例えば、データの伝送路としてのバス194によって接続される。
【0085】
ROM188は、MPU184が使用するプログラムや演算パラメータなどの制御用データを記憶する。RAM190は、MPU184により実行されるプログラム、演算結果、実行状態などを一時的に記憶する。
【0086】
不揮発性メモリ192は、例えば、NFCにおける相互認証に用いられる暗号鍵情報や、電子バリュー、各種アプリケーションなど、様々なデータを記憶する。ここで、不揮発性メモリ192としては、例えば、EEPROM(Electrically Erasable and Programmable Read Only Memory)や、フラッシュメモリなどが挙げられる。不揮発性メモリ192は、例えば耐タンパ性を有し、セキュアな記録媒体の一例に該当する。
【0087】
キャリア検出回路176は、アンテナ172から伝達される受信電圧に基づいて、例えば、矩形の検出信号を生成し、当該検出信号をMPU184へ伝達する。また、MPU184は、伝達される上記検出信号を、例えば、データ処理のための処理クロックとして用いる。ここで、上記検出信号は、アンテナ172から伝達される受信電圧に基づくものであるので、リーダライタ200などの外部装置から送信される搬送波の周波数と同期することとなる。したがって、ICチップ170は、キャリア検出回路176を備えることによって、リーダライタ200などの外部装置との間の処理を、当該外部装置と同期して行うことができる。
【0088】
検波回路178は、アンテナ172から出力される受信電圧を整流する。ここで、検波回路178は、例えば、ダイオードD1と、キャパシタC2とで構成される。
【0089】
レギュレータ180は、受信電圧を平滑、定電圧化し、MPU184へ駆動電圧を出力する。ここで、レギュレータ180は、受信電圧の直流成分を駆動電圧として用いる。
【0090】
復調回路182は、受信電圧に基づいて搬送波信号を復調し、搬送波に含まれる搬送波信号に対応するデータ(例えば、ハイレベルとローレベルとの2値化されたデータ信号)を出力する。ここで、復調回路182は、受信電圧の交流成分をデータとして出力する。
【0091】
MPU184は、レギュレータ180から出力される駆動電圧を電源として駆動し、復調回路182において復調されたデータの処理を行う。ここで、MPU184は、例えば、MPUなどの演算回路で構成される、1または2以上のプロセッサや、各種処理回路などで構成される。
【0092】
また、MPU184は、リーダライタ200などの外部装置への応答に係る負荷変調を制御する制御信号を処理結果に応じて選択的に生成する。そして、MPU184は、制御信号を負荷変調回路186へと選択的に出力する。
【0093】
負荷変調回路186は、例えば、負荷ZとスイッチSW1とを備え、MPU184から伝達される制御信号に応じて負荷Zを選択的に接続する(有効化する)ことによって負荷変調を行う。ここで、負荷Zは、例えば、所定の抵抗値を有する抵抗で構成される。また、スイッチSW1は、例えば、pチャネル型のMOSFET(Metal Oxide Semiconductor Field effect transistor)や、nチャネル型のMOSFETで構成される。
【0094】
ICチップ170は、上記のような構成によって、アンテナ172が受信した搬送波信号を処理し、負荷変調によってアンテナ172に応答信号を送信させることができる。
【0095】
ICチップ170およびアンテナ172は、例えば図11に示す構成を有することによって、所定の周波数の搬送波を用いてリーダライタ200などの外部装置とNFCによる通信を行う。なお、本実施形態に係るICチップ170およびアンテナ172の構成が、図11に示す例に限られないことは、言うまでもない。
【0096】
ここで、図2で示したICカード100の処理部101として機能するのは、MPU184である。記憶部102として機能するのは、ROM188、RAM190または不揮発性メモリ192である。通信部103として機能するのは、アンテナ172、キャリア検出回路176、検波回路178、レギュレータ180、復調回路182および負荷変調回路186である。暗号部104および復号部105は、処理部101と同様に、MPU184である。
【0097】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【0098】
例えば、ICカード100の構成は、ICカード外に設け得る。具体的には、暗号部104および復号部105は、外部の情報処理装置に含まれてもよい。また、暗号部104および復号部105は、備えられなくてもよい。
【0099】
また、例えば、ICカード100の全ての機能が、処理部101によって具現されてもよい。つまり、処理部101が、記憶部102、通信部103、暗号部104および復号部105の機能を実現してもよい。もちろん、ICカード100の一部の機能が、処理部101によって具現されてもよい。
【0100】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【0101】
なお、以下のような構成も本開示の技術的範囲に属する。
(1)
記憶媒体にて関連付けられている、複数のサービスそれぞれに対応するサービスに関するデータを処理する処理部を備える、
情報処理装置。
(2)
関連付けられている前記サービスに関するデータが、前記記憶媒体における異なる記憶領域に記憶されている場合、
前記処理部は、異なる前記記憶領域に記憶されている前記サービスに関するデータを処理する、
前記(1)に記載の情報処理装置。
(3)
前記処理部は、前記記憶領域を識別する識別情報に基づいて、関連付けられている前記サービスに関するデータが記憶されている前記記憶領域を、特定する、
前記(2)に記載の情報処理装置。
(4)
前記記憶領域には、1または2以上の前記識別情報が設定され、
前記処理部は、取得された識別情報と一致する、前記1または2以上の前記識別情報が設定された前記記憶領域を、特定する、
前記(3)に記載の情報処理装置。
(5)
異なる前記記憶領域は、異なるセキュリティモデルを有する、
前記(2)〜(4)のいずれか1項に記載の情報処理装置。
(6)
前記処理部は、前記サービスそれぞれ、または、前記データそれぞれに対応する鍵情報に基づいて、前記サービスに関するデータを処理する、
前記(1)〜(5)のいずれか1項に記載の情報処理装置。
(7)
前記サービスそれぞれ、または、前記データそれぞれに対応する鍵情報は、前記サービスごと、または、前記データごとに異なる、
前記(6)に記載の情報処理装置。
(8)
前記処理部は、前記サービスそれぞれに対応する認証方式に基づいて、前記サービスに関するデータを処理する、
前記(1)〜(7)のいずれか1項に記載の情報処理装置。
(9)
前記サービスそれぞれに対応する認証方法は、前記サービスごとに異なる、
前記(8)に記載の情報処理装置。
(10)
関連付けられている前記サービスに関するデータには、前記サービスに関するデータごとにアクセス権が設定される、
前記(1)〜(9)のいずれか1項に記載の情報処理装置。
(11)
複数のサービスそれぞれに対応するサービスに関するデータが、前記サービスに関するデータに対応付けられているプログラムにより関連付けられている場合、
前記処理部は、前記プログラムを実行することによって、関連付けられている前記サービスに関するデータを処理する、
前記(1)〜(10)のいずれか1項に記載の情報処理装置。
(12)
複数のサービスそれぞれに対応するサービスに関するデータが、前記サービスに関するデータそれぞれに対応付けられている共有情報により関連付けられる、
前記(1)〜(11)のいずれか1項に記載の情報処理装置。
(13)
前記情報処理装置は、非接触ICカード又は通信装置である、
前記(1)〜(12)のいずれか1項に記載の情報処理装置。
(14)
記憶媒体にて関連付けられている、複数のサービスそれぞれに対応するサービスに関するデータを処理することを有する、
情報処理装置により実行される情報処理方法。
【符号の説明】
【0102】
100 ICカード(情報処理装置)
101 処理部
102 記憶部
103 通信部
104 暗号部
105 復号部
200 リーダライタ
300 通信路

図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11