(57)【特許請求の範囲】
【請求項１】
無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信手段と、
前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信手段と、
前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録手段と、
前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定手段と、
前記登録手段の処理の実行状況と、前記初期設定手段の処理の実行状況と、を取得する実行状況取得手段と、
前記登録手段又は前記初期設定手段の処理が完了しなかった場合に、前記実行状況取得手段により取得された実行状況に基づいて処理を再開させる再開手段と、
前記登録手段の処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定手段と、
前記判定手段により登録が不可能であると判定された場合に、ユーザにより選択された再開方法を取得する再開方法取得手段と、
を含み、
前記再開手段は、前記ユーザにより選択された再開方法に基づいて処理を再開させる、
ことを特徴とするＩＣチップ対応型端末。
【請求項２】
無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信手段と、
前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信手段と、
前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録手段と、
前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定手段と、
前記登録手段の処理の実行状況と、前記初期設定手段の処理の実行状況と、を取得する実行状況取得手段と、
前記登録手段又は前記初期設定手段の処理が完了しなかった場合に、前記実行状況取得手段により取得された実行状況に基づいて処理を再開させる再開手段と、
前記登録手段の処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定手段と、
を含み、
前記再開手段は、前記判定手段により登録が不可能であると判定した場合は登録済みのメモリ領域を解放して前記登録手段の処理を再開させず、前記判定手段により登録が可能であると判定した場合は前記登録手段の処理を再開させる、
ことを特徴とするＩＣチップ対応型端末。
【請求項３】
前記送信手段は、各メモリ領域の前記登録要求を、連続的又は一度に前記ＩＣチップ管理サーバに送信し、
前記受信手段は、前記ＩＣチップ管理サーバにより連続的又は一度に送信される、各メモリ領域の前記登録指示を連続的又は一度に受信し、
前記登録手段は、連続的又は一度に受信される前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を、連続的に又は並行して実行する、
ことを特徴とする請求項１又は２に記載のＩＣチップ対応型端末。
【請求項４】
前記ＩＣチップ対応型端末は、
前記ＩＣチップ管理サーバとの通信を確立する手段と、
前記送信手段が何れかのメモリ領域の前記登録指示の送信を開始してから、前記受信手段が前記複数のメモリ領域の全ての前記登録指示を受信し終わるまでの間は、確立された前記通信を維持する手段と、
を更に含むことを特徴とする請求項１〜３の何れかに記載のＩＣチップ対応型端末。
【請求項５】
前記初期設定手段は、各ＩＣチップ利用アプリに共通の共通サーバ又は前記管理サーバとの通信内容に基づいて初期設定を行い、
前記ＩＣチップ対応型端末は、
前記共通サーバ又は前記管理サーバとの通信を確立する手段と、
何れかのＩＣチップ利用アプリの初期設定のための処理が開始されてから前記複数のＩＣチップ利用アプリの全ての初期設定が終了するまでの間は、確立された前記通信を維持する手段と、
を更に含むことを特徴とする請求項１〜４の何れかに記載のＩＣチップ対応型端末。
【請求項６】
前記再開手段は、前記登録手段の処理が完了した後に、前記初期設定手段の処理が開始しなかった場合に、前記初期設定手段の処理から再開させる、
ことを特徴とする請求項１〜５の何れかに記載のＩＣチップ対応型端末。
【請求項７】
前記再開手段は、前記初期設定手段の処理が途中で終了した場合に、前記初期設定手段の当該処理から再開させる、
ことを特徴とする請求項１〜６の何れかに記載のＩＣチップ対応型端末。
【請求項８】
無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信ステップと、
前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信ステップと、
前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録ステップと、
前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定ステップと、
前記登録ステップの処理の実行状況と、前記初期設定ステップの処理の実行状況と、を取得する実行状況取得ステップと、
前記登録ステップ又は前記初期設定ステップの処理が完了しなかった場合に、前記実行状況取得ステップにより取得された実行状況に基づいて処理を再開させる再開ステップと、
前記登録ステップの処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定ステップと、
前記判定ステップにより登録が不可能であると判定された場合に、ユーザにより選択された再開方法を取得する再開方法取得ステップと、
を含み、
前記再開ステップは、前記ユーザにより選択された再開方法に基づいて処理を再開させる、
ことを特徴とするＩＣチップ設定方法。
【請求項９】
無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信ステップと、
前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信ステップと、
前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録ステップと、
前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定ステップと、
前記登録ステップの処理の実行状況と、前記初期設定ステップの処理の実行状況と、を取得する実行状況取得ステップと、
前記登録ステップ又は前記初期設定ステップの処理が完了しなかった場合に、前記実行状況取得ステップにより取得された実行状況に基づいて処理を再開させる再開ステップと、
前記登録ステップの処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定ステップと、
を含み、
前記再開ステップは、前記判定ステップにより登録が不可能であると判定した場合は登録済みのメモリ領域を解放して前記登録ステップの処理を再開させず、前記判定ステップにより登録が可能であると判定した場合は前記登録ステップの処理を再開させる、
ことを特徴とするＩＣチップ設定方法。
【請求項１０】
無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信手段、
前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信手段、
前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録手段、
前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定手段、
前記登録手段の処理の実行状況と、前記初期設定手段の処理の実行状況と、を取得する実行状況取得手段、
前記登録手段又は前記初期設定手段の処理が完了しなかった場合に、前記実行状況取得手段により取得された実行状況に基づいて処理を再開させる再開手段、
前記登録手段の処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定手段、
前記判定手段により登録が不可能であると判定された場合に、ユーザにより選択された再開方法を取得する再開方法取得手段、
としてコンピュータを機能させるためのプログラムであって、
前記再開手段は、前記ユーザにより選択された再開方法に基づいて処理を再開させる、
プログラム。
【請求項１１】
無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信手段、
前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信手段、
前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録手段、
前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定手段、
前記登録手段の処理の実行状況と、前記初期設定手段の処理の実行状況と、を取得する実行状況取得手段、
前記登録手段又は前記初期設定手段の処理が完了しなかった場合に、前記実行状況取得手段により取得された実行状況に基づいて処理を再開させる再開手段、
前記登録手段の処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定手段、
としてコンピュータを機能させるためのプログラムであって、
前記再開手段は、前記判定手段により登録が不可能であると判定した場合は登録済みのメモリ領域を解放して前記登録手段の処理を再開させず、前記判定手段により登録が可能であると判定した場合は前記登録手段の処理を再開させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣチップ対応型端末、ＩＣチップ設定方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、無線通信可能なＩＣチップを利用するＩＣチップ利用アプリを実行するＩＣチップ対応型端末が知られている。例えば、特許文献１には、電子マネーによる代金支払い処理を実行するために、電子マネーのデータを格納するためのメモリ領域の登録要求を、ＩＣチップの発行事業者のサーバに送信し、サーバの指示に応じて、ＩＣチップ内に電子マネー専用のメモリ領域を登録するシステムが記載されている。このようなシステムでは、登録されたメモリ領域には、電子マネーに関するデータ（例えば、暗号鍵や残高情報など）が書き込まれることによって、初期設定が実行される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−０５２４９２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような技術では、複数のＩＣチップ利用アプリをＩＣチップ対応型端末にインストールすることがある。例えば、電子マネーに関するＩＣチップ利用アプリＡと、クーポンやポイントに関するＩＣチップ利用アプリＢと、を同時に利用可能にすると、これらを連携させることが可能になる。即ち、電子マネーで商品の決済をした場合にクーポンやポイントを発行したり、クーポンやポイントを使用しつつ電子マネーの決済をしたりすることが考えられる。これら複数のＩＣチップ利用アプリを利用可能にするためには、各々に専用のメモリ領域をＩＣチップに登録する必要がある。【０００５】
この点、従来の技術では、ＩＣチップに対するメモリ領域の登録と初期設定は、一連の処理として実行されるので、例えば、ＩＣチップ利用アプリＡのメモリ領域の登録と初期設定が終わった後に、ＩＣチップ利用アプリＢのメモリ領域の登録と初期設定が開始される。【０００６】
しかしながら、ＩＣチップ対応型端末は、これらの処理を、サーバと通信しながら実行するため、例えば通信の不具合などによって、ＩＣチップ利用アプリＢのメモリ領域の登録が完了する前に、処理が途中で終了する（落ちる）ことがある。この場合、ＩＣチップ利用アプリＢのメモリ領域がまだ登録されていないことにユーザが気付かず、別のＩＣチップ利用アプリＣをインストールしてメモリ領域を登録すると、ＩＣチップのメモリ容量が足りなくなってしまい、ＩＣチップ利用アプリＢのメモリ領域を登録できないことがある。この場合、ＩＣチップ利用アプリＡだけしか利用することができないので、例えば、ＩＣチップ利用アプリＡとＢを連携させることができなくなってしまう。このため、複数のＩＣチップ利用アプリの全てを確実に利用可能にすることが求められている。【０００７】
本発明は上記課題に鑑みてなされたものであって、その目的は、複数のＩＣチップ利用アプリの全てを利用可能にする確実性を高めることである。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明に係るＩＣチップ対応型端末は、無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信手段と、前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信手段と、前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録手段と、前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定手段と、を含むことを特徴とする。【０００９】
本発明に係るＩＣチップ設定方法は、無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信ステップと、前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信ステップと、前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録ステップと、前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定ステップと、を含むことを特徴とする。【００１０】
本発明に係るプログラムは、無線通信可能なＩＣチップを利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバに送信する送信手段、前記登録要求に応じて前記ＩＣチップ管理サーバにより送信される、各メモリ領域の登録指示を受信する受信手段、前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を連続的に又は並行して実行する登録手段、前記複数のメモリ領域の全てが前記ＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う初期設定手段、としてコンピュータを機能させる。【００１１】
また、本発明に係る情報記憶媒体は、上記のプログラムが記憶されたコンピュータ読み取り可能な情報記憶媒体である。【００１２】
また、本発明の一態様では、前記送信手段は、各メモリ領域の前記登録要求を、連続的又は一度に前記ＩＣチップ管理サーバに送信し、前記受信手段は、前記ＩＣチップ管理サーバにより連続的又は一度に送信される、各メモリ領域の前記登録指示を連続的又は一度に受信し、前記登録手段は、連続的又は一度に受信される前記登録指示に基づいて、各メモリ領域を前記ＩＣチップに登録する処理を、連続的に又は並行して実行する、ことを特徴とする。【００１３】
また、本発明の一態様では、前記ＩＣチップ対応型端末は、前記ＩＣチップ管理サーバとの通信を確立する手段と、前記送信手段が何れかのメモリ領域の前記登録指示の送信を開始してから、前記受信手段が前記複数のメモリ領域の全ての前記登録指示を受信し終わるまでの間は、確立された前記通信を維持する手段と、を更に含むことを特徴とする。【００１４】
また、本発明の一態様では、前記初期設定手段は、各ＩＣチップ利用アプリに共通の共通サーバ又は前記管理サーバとの通信内容に基づいて初期設定を行い、前記ＩＣチップ対応型端末は、前記共通サーバ又は前記管理サーバとの通信を確立する手段と、何れかのＩＣチップ利用アプリの初期設定のための処理が開始されてから前記複数のＩＣチップ利用アプリの全ての初期設定が終了するまでの間は、確立された前記通信を維持する手段と、を更に含むことを特徴とする。【００１５】
また、本発明の一態様では、前記ＩＣチップ対応型端末は、前記登録手段の処理の実行状況と、前記初期設定手段の処理の実行状況と、を取得する実行状況取得手段と、前記登録手段又は前記初期設定手段の処理が完了しなかった場合に、前記実行状況取得手段により取得された実行状況に基づいて処理を再開させる再開手段と、を更に含むことを特徴とする。【００１６】
また、本発明の一態様では、前記ＩＣチップ対応型端末は、前記登録手段の処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定手段と、前記判定手段により登録が不可能であると判定された場合に、ユーザにより選択された再開方法を取得する再開方法取得手段と、を更に含み、前記再開手段は、前記ユーザにより選択された再開方法に基づいて処理を再開させる、ことを特徴とする。【００１７】
また、本発明の一態様では、前記ＩＣチップ対応型端末は、前記登録手段の処理が完了しなかった場合に、前記ＩＣチップの空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する判定手段を更に含み、前記再開手段は、前記判定手段により登録が不可能であると判定した場合は登録済みのメモリ領域を解放して前記登録手段の処理を再開させず、前記判定手段により登録が可能であると判定した場合は前記登録手段の処理を再開させる、ことを特徴とする。【００１８】
また、本発明の一態様では、前記再開手段は、前記登録手段の処理が完了した後に、前記初期設定手段の処理が開始しなかった場合に、前記初期設定手段の処理から再開させる、ことを特徴とする。【００１９】
また、本発明の一態様では、前記再開手段は、前記初期設定手段の処理が途中で終了した場合に、前記初期設定手段の当該処理から再開させる、ことを特徴とする。
【発明の効果】
【００２０】
本発明によれば、複数のＩＣチップ利用アプリの全てを利用可能にする確実性を高めることが可能になる。
【図面の簡単な説明】
【００２１】
【図１】ＩＣチップ管理システムのハードウェア構成を示す図である。
【図２】記憶部においてデータが格納される領域を示す図である。
【図３】ＩＣチップ管理システムで実現される機能の一例を示す機能ブロック図である。
【図４】ＩＣチップ利用アプリのメモリ領域が登録される様子を示す図である。
【図５】ＩＣチップ管理システムにおいて実行される処理の一例を示すフロー図である。
【図６】実施形態２の機能ブロック図である。
【図７】実施形態２において実行される処理の一例を示すフロー図である。
【図８】実施形態２において実行される処理の一例を示すフロー図である。
【図９】実施形態２において実行される処理の一例を示すフロー図である。
【図１０】実施形態２において実行される処理の一例を示すフロー図である。
【図１１】Ｓ２６において表示される選択画面の一例を示す図である。
【図１２】Ｓ２９において表示される選択画面の一例を示す図である。
【発明を実施するための形態】
【００２２】
［１．実施形態１］
以下、本発明に関わるＩＣチップ対応型端末を含むＩＣチップ管理システムの実施形態の例を説明する。
【００２３】
［１−１．ＩＣチップ管理システムのハードウェア構成］
図１は、ＩＣチップ管理システムのハードウェア構成を示す図である。図１に示すように、ＩＣチップ管理システム１は、ＩＣチップ対応型端末１０、サービス提供者サーバ２０、及びＩＣチップ管理サーバ３０を含み、これらは、インターネットなどのネットワークを介して互いにデータ送受信可能に接続されている。なお、図１では、これらを１台ずつ示しているが、複数台ずつあってもよい。
【００２４】
ＩＣチップ対応型端末１０は、ユーザが操作するコンピュータであり、例えば、携帯電話機（スマートフォンを含む）、携帯情報端末（タブレット型コンピュータを含む）、又はパーソナルコンピュータ等である。ＩＣチップ対応型端末１０は、制御部１１、記憶部１２、通信部１３、操作部１４、表示部１５、及びＩＣチップ１６を含む。なお、ここでは、ＩＣチップ１６が、ＩＣチップ対応型端末１０に内蔵されている場合を説明するが、ＩＣチップ１６は、ＩＣチップ対応型端末１０の外部に備えられており、有線又は無線により接続されるようにしてもよい。
【００２５】
制御部１１は、例えば、一又は複数のマイクロプロセッサを含む。制御部１１は、記憶部１２に記憶されたプログラムやデータに従って処理を実行する。記憶部１２は、主記憶部及び補助記憶部を含む。例えば、主記憶部はＲＡＭなどの揮発性メモリであり、補助記憶部は、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、又はハードディスクなどの不揮発性メモリである。通信部１３は、有線通信又は無線通信用の通信インタフェースであり、ネットワークを介してデータ通信を行う。操作部１４は、ユーザが操作を行うための入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイス、キーボード、又はボタン等である。操作部１４は、ユーザによる操作内容を制御部１１に伝達する。表示部１５は、例えば、液晶表示部又は有機ＥＬ表示部等である。表示部１５は、制御部１１の指示に従って画面を表示する。
【００２６】
ＩＣチップ１６は、いわゆるセキュアエレメントと呼ばれる半導体製品であり、制御部１６Ａ、記憶部１６Ｂ、及び無線通信部１６Ｃを含む。制御部１６Ａ及び記憶部１６Ｂの物理的構成は、それぞれ制御部１１及び１２と同様であってよい。記憶部１６Ｂに記憶されるデータは、原則として暗号化されており、外部からの攻撃に耐えうる状態となっている。例えば、暗号鍵は、記憶部１６Ｂに記憶される。制御部１６Ａは、暗号鍵に基づいて外部機器（例えば、リーダ／ライタ端末）との認証処理やデータの暗号化／復号化などの処理を実行する。無線通信部１６Ｃは、近距離無線通信が可能な通信インタフェースであり、例えば、外部機器が発する所定周波数の電磁波を受信するアンテナを含むようにしてよい。例えば、無線通信部１６Ｃは、国際標準規格に基づく通信方式で通信を行う。
【００２７】
ＩＣチップ利用アプリを利用可能にするためには、当該ＩＣチップ利用アプリに対応するメモリ領域を、記憶部１６Ｂに登録する必要がある。即ち、ＩＣチップ利用アプリ専用のメモリ領域を、記憶部１６Ｂ内に確保する必要がある。なお、ＩＣチップ利用アプリは、ＩＣチップ１６を利用したサービスをユーザに提供するためのアプリケーションであり、例えば、電子決済、電子チケット、ポイント利用システム、クーポン利用システム、ＩＣ乗車券、航空搭乗券、又は身分証明書などの種々の目的でＩＣチップ１６を利用するためのアプリケーションである。
【００２８】
図２は、記憶部１６Ｂにおいてデータが格納される領域を示す図である。図２に示すように、本実施形態では、記憶部１６Ｂは、予め複数のブロックＢに分割されている。ブロックＢは、ＩＣチップ１６に対するメモリアクセスの単位である。本実施形態では、記憶部１６Ｂは、４つのブロックＢ１〜Ｂ４を有する場合を説明するが、ブロックＢの数は、記憶部１６Ｂのメモリサイズに応じて定まればよく、任意の数であってよい。また、各ブロックＢのデータサイズは、互いに同じであってもよいし異なってもよい。なお、記憶部１６Ｂは、暗号鍵やデータの読み書きのためのプログラムなどが格納される管理用のメモリ領域なども有するが、図２では省略している。
【００２９】
各ＩＣチップ利用アプリのメモリ領域としては、１つ以上のブロックＢが割り当てられる。必要なブロック数は、全てのＩＣチップ利用アプリで共通であってもよいし、ＩＣチップ利用アプリに応じて異なってもよい。メモリ領域は、いわゆるエリアと呼ばれるものであり、一般的なファイルシステムにおけるフォルダやディレクトリに相当する。メモリ領域には、実データの格納部分（いわゆる、ユーザブロック）にアクセスするためのリンク又はショートカットに相当する論理アクセス子であるサービスを配置することが可能である。サービスは、一般的なファイルシステムにおけるファイルに相当する。メモリ領域は、エリア、サービス、及びユーザブロックを含むことが可能である。
【００３０】
サービス提供者サーバ２０は、サービス提供者が管理するサーバコンピュータである。サービス提供者は、ＩＣチップ１６を利用してサービスを提供する事業者である。ＩＣチップ管理サーバ３０は、制御部２１、記憶部２２、及び通信部２３を含む。制御部２１、記憶部２２、及び通信部２３の物理的構成は、それぞれ制御部１１、記憶部１２、及び通信部１３と同様であってよい。本実施形態では、サービス提供者サーバ２０は、複数のＩＣチップ利用アプリを１つのプログラム（以降、このプログラムを共通アプリと記載する。）にまとめて配信する。なお、各ＩＣチップ利用アプリは、１つの共通アプリにまとめられている必要はなく、プログラムとして別々であってもよい。
【００３１】
ＩＣチップ管理サーバ３０は、ＩＣチップ提供者が管理するサーバコンピュータである。ＩＣチップ提供者は、ＩＣチップ１６を提供する事業者であり、いわゆるＴＳＭ（Trusted  Service Manager）と呼ばれるものである。なお、ＩＣチップ提供者は、サービス提供者と同じ事業者であってもよいし、異なる事業者であってもよい。ＩＣチップ管理サーバ３０は、制御部３１、記憶部３２、及び通信部３３を含む。制御部３１、記憶部３２、及び通信部３３の物理的構成は、それぞれ制御部１１、記憶部１２、及び通信部１３と同様であってよい。
【００３２】
ＩＣチップ管理サーバ３０は、ＩＣチップ提供者が提供する全てのＩＣチップ１６に関する処理及びデータを、統括的に管理する。このため、ＩＣチップ１６に対するデータの読み書きが行われると、その内容がＩＣチップ対応型端末１０又はリーダ／ライタ端末などのコンピュータから、ＩＣチップ管理サーバ３０に対して送信されるようにしてよい。
【００３３】
本実施形態では、サービス提供者は、ＩＣチップ提供者に対して事前に申請を行い、自身が提供するサービス内容、使用するメモリ領域のデータサイズ（即ち、ブロック数）、及びＩＣチップ１６に書き込むデータの内容などの許諾を得ているものとする。また例えば、サービス提供者は、メモリ領域の登録処理の手順を、ＩＣチップ提供者に対して事前に申請しており、どのような手順で登録処理を行い、初期設定として何のデータを書き込むかの許諾を得ているものとする。登録処理の内容を示すデータ（以降、リモート発行データと記載する。）は、記憶部３２に記憶されているようにしてよい。例えば、ＩＣチップ利用アプリごとに、リモート発行データが記憶部３２に記憶される。このため、あるＩＣチップ利用アプリのメモリ領域の登録処理は、当該ＩＣチップ利用アプリのリモート発行データが示す処理手順に従って実行される。
【００３４】
なお、記憶部１２，１６Ｂ，２２，３２に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して供給されるようにしてもよい。また、上記説明した各コンピュータのハードウェア構成は、上記の例に限られず、種々のハードウェアを適用可能である。例えば、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部（例えば、光ディスクドライブやメモリカードスロット）や外部機器とデータの入出力をするための入出力部（例えば、ＵＳＢポート）が含まれていてもよい。例えば、情報記憶媒体に記憶されたプログラムやデータが読取部や入出力部を介して、各コンピュータに供給されるようにしてもよい。
【００３５】
本実施形態のＩＣチップ管理システム１では、電子マネー決済に関するＩＣチップ利用アプリＡと、ポイント利用に関するＩＣチップ利用アプリＢと、が共通アプリにまとめられているものとする。そして、共通アプリの初回起動時に、ＩＣチップ利用アプリＡのメモリ領域の登録処理と、ＩＣチップ利用アプリＢのメモリ領域の登録処理と、が連続的に又は並行して実行される。これにより、より早い段階でメモリ領域の登録を完了することが可能になり、例えば初期設定などが途中で終了してしまったとしても、他のＩＣチップ利用アプリのせいでＩＣチップ１６の空き容量が足りなくなってしまうことを防止し、ＩＣチップ利用アプリＡ及びＢの両方とも利用可能にする確実性を高めるようになっている。以降、この技術の詳細を説明する。
【００３６】
［１−２．実施形態において実現される機能］
図３は、ＩＣチップ管理システム１で実現される機能の一例を示す機能ブロック図である。ここでは、ＩＣチップ管理システム１で実現される機能のうち、ＩＣチップ対応型端末１０で実現される機能を説明する。図３に示すように、本実施形態では、第１通信確立部１００、送信部１０１、受信部１０２、第１通信維持部１０３、登録部１０４、第２通信確立部１０５、初期設定部１０６、及び第２通信維持部１０７が、ＩＣチップ対応型端末１０で実現される場合を説明する。
【００３７】
［１−２−１．第１通信確立部］
第１通信確立部１００は、制御部１１及び通信部１３を主として実現される。第１通信確立部１００は、ＩＣチップ管理サーバ３０との通信を確立する。ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との通信は、任意の通信プロトコルを適用可能であり、例えば、ＩＣチップ提供者が定めたサーバクライアント通信方式のプロトコルであってもよい。なお、第１通信確立部１００は、ＩＣチップ対応型端末１０のブラウザを介して外部機器と通信するためのＷｅｂプラグインを利用して通信を確立してもよいし、特にブラウザを経由せずに通信を確立してもよい。
【００３８】
第１通信確立部１００は、通信プロトコルで定められた手順に基づいて、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との通信を確立する。例えば、第１通信確立部１００は、通信のバージョン情報の確認やホスト認証を実行する。そして、第１通信確立部１００は、ホスト認証が成功した場合に通信を確立し、通信（セッション）を維持するためのセッションＩＤ（あるいは共通鍵）を生成する。セッションＩＤは、通信が確立されている間だけ有効な認証情報であり、例えば、ランダムな記号列であってよい。セッションＩＤは、公開鍵方式などを利用して、ＩＣチップ管理サーバ３０との間で交換されるようにすればよい。
【００３９】
なお、本実施形態では、第１通信確立部１００が通信を確立した後は、所定の条件が満たされるまでの間は、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との通信が維持される場合を説明するが、送受信の対象となるデータの送受信が完了したら自動的に通信を切断してもよいし、接続状態を維持しないセッションレスな通信を適用してもよい。確立された通信が維持されている間は、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との間で通信開始手順を踏まなくても、セッションＩＤを利用することによって、ＩＣチップ対応型端末１０の正当性が証明される。
【００４０】
［１−２−２．送信部］
送信部１０１は、制御部１１及び通信部１３を主として実現される。送信部１０１は、無線通信可能なＩＣチップ１６を利用する複数のＩＣチップ利用アプリにそれぞれ対応する複数のメモリ領域の各々の登録要求を、ＩＣチップ管理サーバ３０に送信する。登録要求は、登録処理の開始を要求することを識別する情報を含めばよく、所定形式のデータであればよい。本実施形態では、リモート発行データがＩＣチップ管理サーバ３０に予め登録されているので、登録要求は、リモート発行データに基づく登録処理の開始要求といえる。登録要求には、ＩＣチップ利用アプリを識別する情報やサービス提供者を識別する情報が含まれているようにしてよい。
【００４１】
本実施形態では、送信部１０１は、各メモリ領域の登録要求を、連続的又は一度にＩＣチップ管理サーバ３０に送信する。例えば、複数のＩＣチップ利用アプリにそれぞれ対応する複数の登録要求を、それぞれ別個のフレームに格納し、各フレームを順番に送信することが、登録要求を連続的に送信することに相当する。また例えば、複数の登録要求を１つのフレームに格納し、当該１つのフレームを送信することが、登録要求を一度に送信することに相当する。なお、ここでのフレームは、送受信の対象となるデータの単位のことである。例えば、フレームの始まりを示すフラグと、フレームの最後を示すフラグと、で挟まれた部分に送受信の対象となる実データが格納される。
【００４２】
例えば、送信部１０１は、登録要求を連続的に送信する場合、各登録要求を、１つずつ順番に送信することになる。例えば、送信部１０１は、ＩＣチップ利用アプリＡの登録要求を送信した後に、続けてＩＣチップ利用アプリＢの登録要求を送信する。別の言い方をすれば、送信部１０１は、ＩＣチップ利用アプリＡの登録要求を送信し終わったことに応じて、ＩＣチップ利用アプリＢの登録要求の送信を開始する。なお、これらの送信順は逆であってもよく、各ＩＣチップ利用アプリの登録要求の送信順は、任意であってよい。
【００４３】
また例えば、送信部１０１は、登録要求を一度に送信する場合、複数のＩＣチップ利用アプリにそれぞれ対応する複数の登録要求を一度にまとめて送信することになる。例えば、送信部１０１は、ＩＣチップ利用アプリＡの登録要求と、ＩＣチップ利用アプリＢの登録要求と、を１つのフレームに格納し、当該１つのフレームを送信する。即ち、送信部１０１は、ある１つのフレームの始まりを示すフラグと、最後を示すフラグと、の間に、複数のＩＣチップ利用アプリの各々の登録要求を格納し、当該フレームを送信することになる。
【００４４】
なお、送信部１０１は、連続的又は一度に登録要求を送信せずに、ＩＣチップ利用アプリＡのメモリ領域の登録要求を送信し、一定時間が経過した後に、ＩＣチップ利用アプリＡのメモリ領域の登録要求を送信してもよい。他にも例えば、送信部１０１は、ＩＣチップ利用アプリＡのメモリ領域の登録要求を送信し、ＩＣチップ利用アプリＡのメモリ領域の登録が完了するまでの間に、ＩＣチップ利用アプリＢのメモリ領域の登録要求を送信してもよい。このようにすることでも、ある程度は早い段階でＩＣチップ利用アプリＢのメモリ領域の登録処理を実行することが可能となる。
【００４５】
［１−２−３．受信部］
受信部１０２は、制御部１１及び通信部１３を主として実現される。受信部１０２は、登録要求に応じてＩＣチップ管理サーバ３０により送信される、各メモリ領域の登録指示を受信する。登録指示は、メモリ領域の登録処理の開始を識別する情報を含めばよく、所定形式のデータであればよい。
【００４６】
ＩＣチップ管理サーバ３０は、あるＩＣチップ利用アプリの登録要求を受信すると、その応答として、当該ＩＣチップ利用アプリの登録指示を送信する。本実施形態では、リモート発行データがＩＣチップ管理サーバ３０に予め登録されているため、ＩＣチップ管理サーバ３０は、登録要求がなされたＩＣチップ利用アプリのリモート発行データに基づいて、登録指示を送信する。例えば、リモート発行データに、必要なブロック数が記述されている場合には、ＩＣチップ管理サーバ３０は、当該ブロック数を識別する情報と、登録処理の開始コマンドと、を含む登録指示を送信するようにしてよい。
【００４７】
本実施形態では、送信部１０１が登録要求を連続的又は一度に送信するので、ＩＣチップ管理サーバ３０も、その応答として、登録指示を連続的又は一度に送信する。このため、受信部１０２は、ＩＣチップ管理サーバ３０により連続的又は一度に送信される、各メモリ領域の登録指示を連続的又は一度に受信することになる。例えば、複数のＩＣチップ利用アプリにそれぞれ対応する複数の登録指示が、それぞれ別個のフレームに格納され、各フレームを順番に受信することが、登録指示を連続的に受信することに相当する。また例えば、複数の登録指示が１つのフレームに格納され、当該１つのフレームを受信することが、登録要求を一度に受信することに相当する。
【００４８】
例えば、受信部１０２は、登録指示を連続的に受信する場合、複数のＩＣチップ利用アプリにそれぞれ対応する複数の登録指示を、１つずつ順番に受信する。例えば、受信部１０２は、ＩＣチップ利用アプリＡのメモリ領域の登録指示を受信した後に、続けてＩＣチップ利用アプリＢのメモリ領域の登録指示を受信する。別の言い方をすれば、受信部１０２は、ＩＣチップ利用アプリＡのメモリ領域の登録指示を受信し終わったことに応じて、ＩＣチップ利用アプリＢのメモリ領域の登録指示の受信を開始する。なお、これらの受信順は逆であってもよく、各ＩＣチップ利用アプリの登録指示の受信順は、任意であってよい。
【００４９】
また例えば、受信部１０２は、登録要求を一度に受信する場合、複数のＩＣチップ利用アプリにそれぞれ対応する複数の登録指示を一度にまとめて受信することになる。例えば、ＩＣチップ管理サーバ３０が、複数の登録指示を１つのフレームに格納して送信する場合には、受信部１０２は、ＩＣチップ利用アプリＡのメモリ領域の登録指示と、ＩＣチップ利用アプリＢのメモリ領域の登録指示と、が格納された１つのフレームを受信する。
【００５０】
なお、受信部１０２は、連続的又は一度に登録指示を受信せずに、ＩＣチップ利用アプリＡの登録指示を受信し、一定時間が経過した後に、ＩＣチップ利用アプリＡの登録指示を受信してもよい。他にも例えば、受信部１０２は、ＩＣチップ利用アプリＡの登録指示を受信し、ＩＣチップ利用アプリＡのメモリ領域の登録が完了するまでの間に、ＩＣチップ利用アプリＢの登録指示を受信してもよい。このようにすることでも、ある程度は早い段階でＩＣチップ利用アプリＢのメモリ領域の登録処理を実行することが可能となる。
【００５１】
［１−２−４．第１通信維持部］
第１通信維持部１０３は、制御部１１及び通信部１３を主として実現される。第１通信維持部１０３は、送信部１０１が何れかのメモリ領域の登録指示の送信を開始してから、受信部１０２が複数のメモリ領域の全ての登録指示を受信し終わるまでの間は、確立された通信を維持する。即ち、第１通信維持部１０３は、第１通信確立部１００が確立した通信を切断することなく、ＩＣチップ管理サーバ３０と接続された状態を維持する。例えば、確立された通信は、タイムアウトなどによって終了するが、その他にも、通信を終了するためのメソッドが呼び出されることによって終了することができる。このため、第１通信維持部１０３は、全ての登録指示を受信し終わるまでの間は、当該メソッドを呼び出さず、生成したセッションＩＤを有効とするようにしてよい。なお、第１通信維持部１０３は省略してもよい。
【００５２】
［１−２−５．登録部］
登録部１０４は、制御部１６Ａを主として実現される。登録部１０４は、登録指示に基づいて、各メモリ領域をＩＣチップに登録する登録処理を連続的に又は並行して実行する。例えば、ある登録処理が完了した直後又は所定時間以内に、次の登録処理を実行することが、登録処理を連続的に実行することに相当する。また例えば、ある登録処理の実行中に、他の登録処理を実行することが、登録処理を並行して実行することに相当する。
【００５３】
本実施形態では、あるＩＣチップ利用アプリの登録指示が受信された場合、その後すぐに当該登録指示に基づく登録処理が開始される場合を説明するが、登録部１０４は、あるＩＣチップ利用アプリの登録指示が受信されても、全てのＩＣチップ利用アプリの登録指示を受信するまでは、登録処理の開始を待機するようにしてもよい。この場合、登録部１０４は、全てのＩＣチップ利用アプリの登録指示を受信した後に、各ＩＣチップ利用アプリの登録処理を順番に又は一斉に開始することになる。
【００５４】
なお、本実施形態では、必要なブロック数を識別する情報と、登録処理を開始することを示すコマンドと、が登録指示に含まれているので、登録部１０４は、登録指示に含まれるコマンドを実行し、登録指示に含まれる必要ブロック数のメモリ領域を登録することになる。例えば、登録処理では、メモリ領域を構成するブロックとＩＣチップ利用アプリとを関連付ける処理が実行されたり、当該ブロックの物理アドレスと、ＩＣチップ利用アプリを動作させるための論理アドレスと、の変換表を作成する処理が実行されたりするようにしてよい。
【００５５】
本実施形態では、登録部１０４は、連続的又は一度に受信される登録指示に基づいて、各メモリ領域をＩＣチップに登録する処理を、連続的に又は並行して実行することになる。例えば、登録指示が連続的に受信される場合には、登録部１０４は、ＩＣチップ利用アプリの登録指示を受信するたびに、当該ＩＣチップ利用アプリの登録処理を実行する。一方、登録指示が一度に受信される場合には、登録部１０４は、一度に受信した各登録指示に基づいて、登録処理を実行する。
【００５６】
図４は、ＩＣチップ利用アプリのメモリ領域が登録される様子を示す図である。ここでは、ＩＣチップ利用アプリＡが２つのブロックを使用し、ＩＣチップ利用アプリＢが１つのブロックを使用する場合を説明する。図４に示すように、例えば、登録部１０４は、ＩＣチップ利用アプリＡのメモリ領域（図４では、ブロックＢ１及びＢ２）の登録処理を完了した後に、続けてＩＣチップ利用アプリＢのメモリ領域（図４では、ブロックＢ３）の登録処理を開始する。別の言い方をすれば、登録部１０４は、ＩＣチップ利用アプリＡのメモリ領域の登録が完了したことに応じて、ＩＣチップ利用アプリＢのメモリ領域の登録処理を開始する。なお、これらの処理順は逆であってもよく、各ＩＣチップ利用アプリの登録処理の順序は、任意であってよい。
【００５７】
また例えば、登録部１０４は、複数のＩＣチップ利用アプリにそれぞれ対応する複数の登録処理を一度にまとめて実行するようにしてもよい。例えば、登録部１０４は、ＩＣチップ利用アプリＡのメモリ領域の登録処理と、ＩＣチップ利用アプリＢのメモリ領域の登録処理と、を同時並行で実行してもよい。この場合、これら２つの登録処理の開始タイミングと終了タイミングが一致する必要はなく、ＩＣチップ利用アプリＡのメモリ領域の登録処理が実行されている期間の一部と、ＩＣチップ利用アプリＢのメモリ領域の登録処理が実行されている期間の一部と、が重複していればよい。
【００５８】
なお、登録部１０４が連続的に登録処理を実行する場合、ある登録処理が完了してから次の登録処理が始まるまでの時間が空いてはいけないわけではなく、ある登録処理が完了した後に、一定時間以内に次の登録処理が続けて開始されるようにしてもよい。
【００５９】
［１−２−６．第２通信確立部］
第２通信確立部１０５は、制御部１１及び通信部１３を主として実現される。第２通信確立部１０５は、サービス提供者サーバ２０との通信を確立する。ＩＣチップ対応型端末１０とサービス提供者サーバ２０との通信は、任意の通信プロトコルを適用可能であり、例えば、ＨＴＴＰ、ＨＴＴＰＳ、又はＳＳＨであってもよいし、第１通信確立部１００と同じ通信プロトコルであってもよい。通信プロトコルで定められた手順に基づいて通信を確立すればよい点は、第１通信確立部１００と同様である。
【００６０】
なお、本実施形態では、第２通信確立部１０５が通信を確立した後は、所定の条件が満たされるまでの間は、ＩＣチップ対応型端末１０とサービス提供者サーバ２０との通信が維持される場合を説明するが、データの送受信が完了したら自動的に通信を切断してもよい点やセッションレスな通信を適用してもよい点も、第１通信確立部１００と同様である。また、セッションＩＤを利用することによって、ＩＣチップ対応型端末１０の正当性が証明される点も、第１通信確立部１００と同様である。
【００６１】
［１−２−７．初期設定部］
初期設定部１０６は、制御部１１及び制御部１５Ａを主として実現される。初期設定部１０６は、複数のメモリ領域の全てがＩＣチップに登録された場合に、登録された各メモリ領域に対する初期設定を行う。初期設定は、ＩＣチップ利用アプリがサービスの提供を開始するための設定処理であり、メモリ領域の有効化処理といえる。例えば、初期設定は、登録されたメモリ領域に、ＩＣチップ利用アプリに関するデータの初期値、暗号鍵に関する情報、及びユーザに付与されたＩＤを書き込む処理であってよい。
【００６２】
初期設定部１０６は、全てのＩＣチップ利用アプリのメモリ領域が登録された後に、各ＩＣチップ利用アプリの初期設定を開始するようにしてもよいし、何れかのＩＣチップ利用アプリのメモリ領域の登録が完了していなくても、そのＩＣチップ利用アプリの登録処理が開始していれば、登録済みのＩＣチップ利用アプリの初期設定を開始してもよい。
【００６３】
本実施形態では、初期設定部１０６は、各ＩＣチップ利用アプリに共通のサービス提供者サーバ２０との通信内容に基づいて初期設定を行う。例えば、初期設定部１０６は、サービス提供者サーバ２０から初期設定に必要なデータを受信し、当該受信したデータに基づいて初期設定を実行する。また例えば、初期設定部１０６は、サービス提供者サーバ２０から受信したコマンドに基づいて、初期設定を実行するようにしてもよい。
【００６４】
なお、各ＩＣチップ利用アプリに対応するサービス提供者サーバ２０は、互いに別々のサーバであってもよい。また、初期設定部１０６は、サービス提供者サーバ２０と通信しなくても初期設定処理を実行してもよい。例えば、初期設定部１０６は、ＩＣチップ管理サーバ３０との通信内容に基づいて初期設定を行うようにしてもよい。この場合、ＩＣチップ管理サーバ３０が初期設定に必要なデータを生成してもよいし、このデータがリモート発行データに予め格納されているようにしてもよい。更に、初期設定部１０６は、ＩＣチップ対応型端末１０以外のコンピュータと通信することなく初期設定を実行してもよい。この場合、初期設定部１０６は、初期設定に必要なデータを自身で生成するようにしてよい。
【００６５】
［１−２−８．第２通信維持部］
第２通信維持部１０７は、何れかのＩＣチップ利用アプリの初期設定のための処理が開始されてから複数のＩＣチップ利用アプリの全ての初期設定が終了するまでの間は、確立された通信を維持する。即ち、第２通信維持部１０７は、第２通信確立部１０５が確立した通信を切断することなく維持する。第１通信維持部１０３と同様、例えば、第２通信確立部１０５により確立された通信は、タイムアウトなどによって終了するが、その他にも、所定のメソッドを呼び出すことによって、その時点で終了することができる。このため、第２通信維持部１０７は、全ての初期設定が終了するまでの間は、当該メソッドを呼び出さず、生成したセッションＩＤを有効とする。なお、第２通信維持部１０７は省略してもよい。
【００６６】
［１−３．本実施形態において実行される処理］
図５は、ＩＣチップ管理システムにおいて実行される処理の一例を示すフロー図である。図５に示す処理は、制御部１１，２１，３１が、それぞれ記憶部１２，２２，３２に記憶されたプログラムに従って動作することによって実行される。下記に説明する処理のうち、ＩＣチップ対応型端末１０の処理は、図３に示す機能ブロックにより実行される処理の一例である。なお、図５に示す処理が実行されるにあたり、サービス提供者サーバ２０から共通アプリが予めＩＣチップ対応型端末１０にダウンロードされており、記憶部１２に共通アプリが記憶されているものとする。また、ブラウザを介して外部機器と通信するためのＷｅｂプラグイン（ＩＣチップ管理者が提供するＴＳＭクライアントソフトの一種）も予め記憶部１２に記憶されているものとする。
【００６７】
図５に示すように、まず、ＩＣチップ対応型端末１０において、制御部１１は、操作部１４が検出したユーザの操作に基づいて、記憶部１２に記憶された共通アプリを起動する（Ｓ１）。ここでは、共通アプリがダウンロードされた後、まだ起動されたことがない状態とする。即ち、以降の処理は、共通アプリの初回起動時に実行される。なお、ＩＣチップ利用アプリＡ及びＢの各々のメモリ領域が既に登録されており、初期設定まで完了している場合には、共通アプリが起動しても、以降の処理は実行されない。
【００６８】
制御部１１は、記憶部１２に記憶されたＷｅｂプラグインを利用して、サービス提供者サーバ２０との通信を確立し、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との間で、ＩＣチップ利用アプリＡの登録前処理が実行され（Ｓ２）、その後に続けて、ＩＣチップ利用アプリＢの登録前処理を実行する（Ｓ３）。
【００６９】
登録前処理は、登録処理及び初期設定をするために事前に実行される処理である。登録前処理が開始されると、制御部１１は、処理の実行状況を識別する実行状況情報を生成する。実行状況情報は、ＩＣチップ利用アプリごとに生成され、例えば、「メモリ領域の登録前（登録処理が未完了）」、「メモリ領域の登録完了（登録処理が完了）」、「初期設定前（初期設定が未完了）」、又は「初期設定完了（初期設定が完了）」の何れかの値を取る。実行状況情報は、以降説明する処理が実行された場合に値が更新される。
【００７０】
また、登録前処理では、サービス提供者サーバ２０の制御部２１は、初期設定時に書き込むデータの生成処理を実行するようにしてよい。例えば、制御部２１は、ＩＣチップ利用アプリごとに、ユーザのＩＤ情報を生成し、ＩＣチップ対応型端末１０に送信する。ここでは、制御部２１は、ＩＣチップ利用アプリＡ用のＩＤ情報と、ＩＣチップ利用アプリＢ用のＩＤ情報と、を生成することになる。なお、この時点では、まだＩＣチップ利用アプリのメモリ領域が登録されておらず、ＩＣチップ対応型端末１０は、ＩＣチップ１６内の記憶部１６ＢにＩＤ情報を書き込むことはできないので、受信したＩＤ情報を記憶部１２に一時的に保持する。
【００７１】
制御部１１は、記憶部１２に記憶されたＷｅｂプラグインを利用して、ＩＣチップ管理サーバ３０との通信を確立し、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との間で、ＩＣチップ利用アプリＡの登録処理が実行され（Ｓ４）、その後に続けて、ＩＣチップ利用アプリＢの登録処理が実行される（Ｓ５）。Ｓ４及びＳ５の登録処理は、電子マネーやポイントなどの場合は発券処理ということができ、その詳細は、先述した通りであり、例えば、制御部１１は、ＩＣチップ利用アプリＡの登録要求を送信し、続けてＩＣチップ利用アプリＢの登録要求を送信する。そして、ＩＣチップ管理サーバ３０は、ＩＣチップ利用アプリＡの登録指示を送信し、続けてＩＣチップ利用アプリＢの登録指示を送信する。ＩＣチップ対応型端末１０は、受信した登録指示に応じて、ＩＣチップ利用アプリＡの登録処理と、ＩＣチップ利用アプリＢの登録処理と、を実行する。Ｓ５の処理が完了した後は、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との通信を切断するメソッドが呼び出されてもよいし、そのままタイムアウトするまで待機されてもよい。
【００７２】
次いで、ＩＣチップ対応型端末１０とサービス提供者サーバ２０との間で、ＩＣチップ利用アプリＡの初期設定処理が実行され（Ｓ６）、その後に続けて、ＩＣチップ利用アプリＢの初期設定処理が実行される（Ｓ７）。初期設定処理の詳細も先述した通りである。ここでは、サービス提供者サーバ２０との通信がＳ２で既に確立されているので、それを維持したまま、制御部１１は、初期設定の開始要求をサービス提供者サーバ２０に送信する。サービス提供者サーバ２０は、初期設定時に書き込むデータを送信し、ＩＣチップ対応型端末１０は、受信したデータや登録前処理で発行されたＩＤ情報の書き込みなどを実行する。
【００７３】
次いで、ＩＣチップ対応型端末１０とサービス提供者サーバ２０との間で、ＩＣチップ利用アプリＡの登録後処理が実行され（Ｓ８）、その後に続けて、ＩＣチップ利用アプリＢの登録後処理が実行され（Ｓ９）、本処理は終了する。登録後処理では、ＩＤ情報や初期値などの書き込みの完了通知や記憶部１２に一時的に記憶させたＩＤ情報の削除などが行われる。なお、登録後処理は省略してもよい。Ｓ９の処理が完了した後は、ＩＣチップ対応型端末１０とサービス提供者サーバ２０との通信を切断するメソッドが呼び出されてもよいし、そのままタイムアウトするまで待機されてもよい。
【００７４】
以上説明したＩＣチップ管理システム１によれば、ＩＣチップ利用アプリＡの登録処理と、ＩＣチップ利用アプリの登録処理と、が連続的又は並行して実行され、より早い段階でメモリ領域の登録が完了するので、複数のＩＣチップ利用アプリの全てを利用可能にする確実性を高めることができる。例えば、初期設定などが途中で終了してしまったとしても、先にメモリ領域が確保されているので、その後に他のＩＣチップ利用アプリのせいでＩＣチップ１６のメモリ残量が足りなくなってしまうようなことを防止することが可能になる。
【００７５】
また、ＩＣチップ対応型端末１０は、ＩＣチップ管理サーバ３０に対して登録要求を連続的又は一度に送信することにより、登録指示を連続的又は一度に受信することができるので、より早い段階でメモリ領域の登録を完了することができる。その結果、複数のＩＣチップ利用アプリの全てを利用可能にする確実性をより高めることができる。
【００７６】
また、ＩＣチップ対応型端末１０がＩＣチップ管理サーバ３０に対して登録要求の送信を開始してから、全てのＩＣチップ利用アプリの登録指示を受信し終わるまでの間は通信を維持することによって、何度も通信の確立及び切断をする必要がなくなり、ＩＣチップ対応型端末１０及びＩＣチップ管理サーバ３０の処理負荷を軽減することができる。
【００７７】
また、ＩＣチップ対応型端末１０がメモリ領域に対する初期設定のための処理を開始してから初期設定を終了するまでの間は、サービス提供者サーバ２０との通信を維持することによって、初期設定を完了するために何度も通信の確立及び切断をする必要がなくなり、ＩＣチップ対応型端末１０及びサービス提供者サーバ２０の処理負荷を軽減することができる。
【００７８】
［２．実施形態２］
実施形態１では、複数のＩＣチップ利用アプリの各々の登録処理が連続的又は並行して実行される場合を説明したが、このようにした場合であっても、通信の不具合などによって、初期設定が完了する前に、処理が途中で中断することもある。その場合、共通アプリの次回起動時などにおいて、中断した処理から再開するようにしてもよい。なお、ＩＣチップ管理システム１の全体構成は、実施形態１と同様であり、以降説明する実施形態２では、実施形態１と同様の部分については説明を省略する。
【００７９】
［２−１．実施形態２の機能ブロック］
図６は、実施形態２の機能ブロック図である。図６に示すように、実施形態２では、実施形態１で説明した機能の他に、実行状況取得部１０８、判定部１０９、再開方法取得部１１０、及び再開部１１１が実現される。これら各機能は、制御部１１を主として実現される。
【００８０】
実行状況取得部１０８は、登録部１０４の処理の実行状況と、初期設定部１０６の処理の実行状況と、を取得する。実行状況とは、処理のステータスであり、例えば、処理が未完了であるか完了しているかを識別可能な情報であればよい。例えば、実行状況取得部１０８は、実施形態１で説明した実行状況情報を取得する。なお、実行状況情報は、記憶部１２に記憶されている場合を説明するが、記憶部１６Ｂに記憶されていてもよい。
【００８１】
判定部１０９は、登録部１０４の処理が完了しなかった場合に、ＩＣチップ１６の空き容量に基づいて、まだ登録されていないメモリ領域の登録が可能かを判定する。なお、ＩＣチップ１６の空き容量は、ＩＣチップ１６に対して所定のコマンドを送ることで取得されるようにしてもよいし、記憶部１２又は記憶部１６Ｂに空き容量の情報が格納されているようにしてもよい。また、どのＩＣチップ利用アプリがどのブロックを使用しているかを示す情報が、ＩＣチップ１６内の記憶部１６Ｂに記憶されているようにしてもよい。更に、各ＩＣチップ利用アプリに必要なデータサイズ（例えば、ブロック数）は、登録指示に含まれていてもよいし、共通アプリ内に定義されているようにしてもよい。
【００８２】
例えば、判定部１０９は、ＩＣチップ１６に対して記憶部１６Ｂの空き容量（例えば、空きブロック数）の取得を要求し、メモリ領域が未登録のＩＣチップ利用アプリに必要なデータサイズ（例えば、ブロック数）以上の空き容量があるかを判定する。判定部１０９は、必要なデータサイズ以上の空き容量があれば、メモリ領域の登録が可能と判定し、必要なデータサイズ以上の空き容量がなければ、メモリ領域の登録が不可能であると判定する。
【００８３】
再開方法取得部１１０は、判定部１０９により登録が不可能であると判定された場合に、ユーザにより選択された再開方法を取得する。ユーザは、複数の再開方法の中から選択可能であり、これら複数の再開方法は、後述する選択画面でユーザに選択可能に提示される。なお、再開方法とは、どの処理から再開するかのことである。
【００８４】
再開部１１１は、登録部１０４又は初期設定部１０６の処理が完了しなかった場合に、実行状況取得部１０８により取得された実行状況に基づいて処理を再開させる。例えば、再開部１１１は、実行状況情報が示す実行状況に基づいて、途中で終了した処理を特定し、当該特定した処理から再開するようにしてよい。
【００８５】
再開方法は、自動的に決定されるようにしてもよいが、例えば、再開部１１１は、ユーザにより選択された再開方法に基づいて処理を再開させるようにしてもよい。この場合、再開部１１１は、複数の再開方法の中からユーザが選択した再開方法に基づいて処理を再開させることになる。即ち、再開部１１１は、ユーザが選択した処理から再開することになる。
【００８６】
また例えば、再開部１１１は、判定部１０９により登録が不可能であると判定した場合は登録済みのメモリ領域を解放して登録部１０４の処理を再開させず、判定部１０９により登録が可能であると判定した場合は登録部１０４の処理を再開させるようにしてもよい。メモリ領域の解放とは、メモリ領域の削除ともいうことができ、ＩＣチップ利用アプリとメモリ領域との関連付けを解除することである。別の言い方をすれば、メモリ領域の解放とは、当該メモリ領域内のブロックを、他のＩＣチップ利用アプリによって登録可能な状態にすることであり、メモリ領域を、ＩＣチップ利用アプリが登録される前の状態に戻すことである。
【００８７】
例えば、メモリ領域の解放は、ＩＣチップ対応型端末１０内の処理だけで実行されるようにしてもよいが、ここでは、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との間で実行されるものとする。例えば、リモート発行データに、メモリ領域の解放の手順が定義されているようにしてよい。この場合、再開部１１１は、ＩＣチップ管理サーバ３０に対して、メモリ領域の解放処理の開始要求を送信すると、ＩＣチップ管理サーバ３０は、リモート発行データに基づいて、メモリ領域の解放処理を実行する旨の解放指示をＩＣチップ対応型端末１０に送信する。再開部１１１は、受信した解放指示に基づいて、メモリ領域のユーザブロック内のデータ削除と、エリア及びサービスの削除と、を実行する。
【００８８】
また例えば、再開部１１１は、登録部１０４の処理が完了した後に、初期設定部１０６の処理が開始しなかった場合に、初期設定部１０６の処理から再開させるようにしてよい。この場合、各ＩＣチップ利用アプリのメモリ領域は登録済みなので、再開部１１１は、登録済みのメモリ領域に対する初期設定から再開すればよい。
【００８９】
また例えば、再開部１１１は、初期設定部１０６の処理が途中で終了した場合に、初期設定部１０６の当該処理から再開させるようにしてよい。この場合、一部のメモリ領域に対する初期設定が完了していない状態なので、再開部１１１は、当該一部のメモリ領域に対する初期設定から再開すればよい。
【００９０】
［２−２．実施形態２において実行される処理］
図７〜図１０は、実施形態２において実行される処理の一例を示すフロー図である。図７〜図１０に示すように、実施形態２で実行される処理は、共通アプリの起動時に、どこまで処理が進んでいるかが判定され、その判定結果に応じて以降の処理が実行される点で、実施形態１で説明した処理と異なる。
【００９１】
まず、図７に示すように、Ｓ２１〜Ｓ２３は、それぞれＳ１〜Ｓ３と同様である。また、実施形態１と同様、ＩＣチップ利用アプリＡ及びＢの各々に対応するメモリ領域が既に登録されており、初期設定まで完了している場合には、Ｓ２１において共通アプリが起動した後に、Ｓ２２以降の処理は実行されないものとする。
【００９２】
Ｓ２２及びＳ２３の発券前処理が行われて実行状況情報が取得されると、制御部１１は、実行状況情報に基づいて、どこまで処理が進んだかを判定する（Ｓ２４）。共通アプリの初回起動時であれば、実行状況情報は、ＩＣチップ利用アプリＡの登録処理が完了していないことを示しており、前回起動時に処理が途中終了していれば、実行状況情報は、途中終了した処理が完了していないことを示している。
【００９３】
Ｓ２４において、ＩＣチップ利用アプリＡの登録処理が完了していないと判定された場合（Ｓ２４；Ａ未完了）、制御部１１は、ＩＣチップ１６の空き容量が十分にあるかを判定する（Ｓ２５）。Ｓ２５においては、制御部１１は、ＩＣチップ１６の空き容量を取得し、ＩＣチップ利用アプリＡに必要なブロック数と、ＩＣチップ利用アプリＢに必要なブロック数と、の合計値以上のブロック数が空いているかを判定する。
【００９４】
空き容量が十分にあると判定された場合（Ｓ２５；空き十分）、図８のＳ４１の処理に移行し、ＩＣチップ利用アプリＡの登録処理から再開される。図８に示すように、Ｓ４１〜Ｓ４６の処理は、それぞれＳ４〜Ｓ９の処理と同様である。Ｓ４１〜Ｓ４６の処理が実行されることにより、ＩＣチップ利用アプリＡ及びＢの登録処理と初期設定が再開される。
【００９５】
一方、Ｓ２５において、空き容量が十分にないと判定された場合（Ｓ２５；空き不十分）、制御部１１は、ユーザに再開方法を選択させるための選択画面を、表示部１５に表示させる（Ｓ２６）。
【００９６】
図１１は、Ｓ２６において表示される選択画面の一例を示す図である。図８に示すように、選択画面Ｇ１には、ＩＣチップ１６の空き容量が少ないことを示すメッセージＧ１Ａが表示され、複数の再開方法の各々に対応するボタンＧ１Ｂ〜Ｇ１Ｄが表示される。ボタンＧ１Ｂは、ＩＣチップ利用アプリＡだけを登録するためのボタンである。ボタンＧ１Ｃは、ＩＣチップ利用アプリＢだけを登録するためのボタンである。ボタンＧ１Ｄは、何もせずにこのまま終了するためのボタンである。なお、ＩＣチップ利用アプリＡだけを登録するメモリ残量すらない場合は、ボタンＧ１Ｂが表示されなくてもよい。同様に、ＩＣチップ利用アプリＢだけを登録するメモリ残量すらない場合は、ボタンＧ１Ｃが表示されなくてもよい。
【００９７】
制御部１１は、操作部１４の検出信号に基づいて、ユーザがどのボタンを選択したかを判定する（Ｓ２７）。ユーザがボタンＧ１Ｂを選択したと判定された場合（Ｓ２７；Ｇ１Ｂ）、図９のＳ５１の処理に移行する。Ｓ５１〜Ｓ５３の処理は、それぞれＳ４，Ｓ６，Ｓ８と同様である。Ｓ５１〜Ｓ５３の処理が実行されることにより、ＩＣチップ利用アプリＡの登録処理及び初期設定だけが再開され、ＩＣチップ利用アプリＢの登録処理及び初期設定は再開されない。
【００９８】
一方、Ｓ２７において、ユーザがボタンＧ１Ｃを選択したと判定された場合（Ｓ２７；Ｇ１Ｃ）、図１０のＳ６１の処理に移行する。Ｓ６１〜Ｓ６３の処理は、それぞれＳ５，Ｓ７，Ｓ９と同様である。Ｓ６１〜Ｓ６３の処理が実行されることにより、ＩＣチップ利用アプリＢの登録処理及び初期設定だけが再開され、ＩＣチップ利用アプリＡの登録処理及び初期設定は再開されない。
【００９９】
なお、Ｓ２７において、ユーザがボタンＧ１Ｄを選択したと判定された場合（Ｓ２７；Ｇ１Ｄ）、本処理は終了する。この場合、ＩＣチップ１６の記憶部１６Ｂ内の状態は、現状のまま変化しないことになる。即ち、この場合、ＩＣチップ利用アプリＡもＢも利用可能とはならない。
【０１００】
一方、Ｓ２４において、ＩＣチップ利用アプリＡのメモリ領域の登録処理は完了したが、ＩＣチップ利用アプリＢのメモリ領域の登録処理が完了していないと判定された場合（Ｓ２４；Ｂ未完了）、制御部１１は、ＩＣチップ１６の空き容量が十分にあるかを判定する（Ｓ２８）。Ｓ２８においては、制御部１１は、ＩＣチップ１６の空き容量を取得し、ＩＣチップ利用アプリＢに必要なブロック数以上のブロック数が空いているかを判定する。
【０１０１】
空き容量が十分にあると判定された場合（Ｓ２８；空き十分）、図８のＳ４２の処理に移行する。この場合、ＩＣチップ利用アプリＢの登録処理から再開されることになる。
【０１０２】
一方、Ｓ２８において、空き容量が十分にないと判定された場合（Ｓ２８；空き不十分）、制御部１１は、ユーザに再開方法を選択させるための選択画面を、表示部１５に表示させる（Ｓ２９）。
【０１０３】
図１２は、Ｓ２９において表示される選択画面の一例を示す図である。図１２に示すように、選択画面Ｇ２には、ＩＣチップ１６の空き容量が少ないことを示すメッセージＧ２Ａが表示され、複数の再開方法の各々に対応するボタンＧ２Ｂ〜Ｇ２Ｃが表示される。ボタンＧ２Ｂは、ＩＣチップ利用アプリＡだけを登録するためのボタンである。ボタンＧ２Ｃは、ＩＣチップ利用アプリＡを削除するためのボタンである。このように、選択画面Ｇ２は、選択画面Ｇ１と異なっていてよい。即ち、処理の実行状況に応じて、ユーザが選択可能な再開方法が異なっていてもよい。
【０１０４】
制御部１１は、操作部１４の検出信号に基づいて、ユーザがどのボタンを選択したかを判定する（Ｓ３０）。ユーザがボタンＧ２Ｂを選択したと判定された場合（Ｓ３０；Ｇ２Ｂ）、図９のＳ５２の処理に移行する。この場合、ＩＣチップ利用アプリＡの初期設定処理が再開され、ＩＣチップ利用アプリＢの登録処理及び初期設定は再開されない。
【０１０５】
一方、Ｓ３０において、ユーザがボタンＧ２Ｃを選択したと判定された場合（Ｓ２７；Ｇ２Ｃ）、制御部１１は、ＩＣチップ利用アプリＡのメモリ領域を削除し（Ｓ３１）、本処理は終了する。Ｓ３１では、制御部１１は、ＩＣチップ管理サーバ３０に対してメモリ領域の解放要求を送信し、ＩＣチップ管理サーバ３０に記憶されたリモート発行データの手順のもと、ＩＣチップ利用アプリＡのメモリ領域が解放される。この場合、ＩＣチップ利用アプリＡ及びＢの両方とも、メモリ領域が登録されない。
【０１０６】
なお、Ｓ２４において、ＩＣチップ利用アプリＡ及びＢの両方のメモリ領域の登録処理が完了していると判定された場合（Ｓ２４；登録完了）、制御部１１は、途中で終了した処理から再開する（Ｓ３２）。例えば、ＩＣチップ利用アプリＡの初期設定が未完了である場合（例えば、ＩＣチップ利用アプリＡもＢも初期設定が開始されていない場合）には、Ｓ４３の処理に移行し、ＩＣチップ利用アプリＡの初期設定から再開される。また例えば、ＩＣＩＣチップ利用アプリＢの初期設定が未完了である場合には、Ｓ４４の処理に移行し、ＩＣチップ利用アプリＢの初期設定から再開される。なお、実行状況情報には、登録後処理が完了したか否かを示す情報を含めてもよく、ＩＣチップ利用アプリＡの登録後処理が完了していなければ、Ｓ４５の処理に移行し、ＩＣチップ利用アプリＢの登録後処理が完了していなければ、Ｓ４６の処理に移行するようにしてもよい。
【０１０７】
実施形態２のＩＣチップ管理システム１によれば、登録処理又は初期設定が途中終了してしまったとしても、続きから処理を再開することができるので、複数のＩＣチップ利用アプリの全てを利用可能にする確実性をより高めることができる。
【０１０８】
また、ＩＣチップ１６のメモリ残量が少なく、一部のＩＣチップ利用アプリの登録処理が不可能であった場合に、ユーザにより選択された再開方法で処理を再開することができる。例えば、選択画面Ｇ１，Ｇ２からユーザに再開方法を選択させることにより、ユーザにとって必要なＩＣチップ利用アプリを選択させ、当該ＩＣチップ利用アプリの登録をすることができる。
【０１０９】
また、ＩＣチップ１６のメモリ残量が少なく、一部のＩＣチップ利用アプリの登録処理が不可能であった場合に、登録済みのメモリ領域を解放することもできる。例えば、ユーザにとって、ＩＣチップ利用アプリＡ及びＢの両方とも利用可能とならなければならないような場合に、現時点で登録されてしまっている一部のＩＣチップ利用アプリのメモリ領域を解放して、当該メモリ領域を他のＩＣチップ利用アプリに利用させることができるので、メモリ領域の有効活用をすることができる。
【０１１０】
また、全てのＩＣチップ利用アプリの登録処理が完了した後に、初期設定が開始しなかった場合は、既にメモリ領域は確保済みであるので、残る初期設定から再開することにより、複数のＩＣチップ利用アプリの全てを利用可能にすることができる。
【０１１１】
また、一部のＩＣチップ利用アプリの初期設定が完了しなかった場合も、既にメモリ領域は確保済みであるので、残る初期設定から再開することにより、複数のＩＣチップ利用アプリの全てを利用可能にすることができる。
【０１１２】
［３．変形例］
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【０１１３】
例えば、初期設定は、ＩＣチップ対応型端末１０とサービス提供者サーバ２０との間で実行されるのではなく、ＩＣチップ対応型端末１０とＩＣチップ管理サーバ３０との間で実行されるようにしてもよい。この場合、リモート発行データに、初期設定の処理手順を定義しておくようにすればよい。
【０１１４】
また例えば、ＩＣチップ利用アプリのメモリ領域に書き込まれるデータは、当該ＩＣチップ利用アプリ専用のコマンドやプログラムが含まれているようにしてもよい。また例えば、登録処理の手順がリモート発行データに定義されている場合を説明したが、リモート発行データ以外のデータに登録処理の手順が定義されているようにしてもよい。例えば、共通アプリや他のプログラムに登録処理の手順が定義されているようにしてもよい。また例えば、登録指示に必要なブロック数が含まれている場合を説明したが、あるＩＣチップ利用アプリに対して、どのブロックを割り当てるかを示す情報が登録指示に含まれているようにしてもよい。また、ＩＣチップ利用アプリにどのブロックを割り当てるかは、ＩＣチップ利用アプリごとに予め定められているようにしてもよいし、所定の条件のもとで決まってもよい。
【０１１５】
また例えば、複数のＩＣチップ利用アプリが共通アプリにまとめられていない場合には、どのＩＣチップ利用アプリを同時に利用可能にすべきかを識別する情報が記憶部１２に記憶されているようにしてよい。この情報によって識別される複数のＩＣチップ利用アプリの登録処理が連続的又は並行して実行されるようにすればよい。また例えば、実施形態１及び２では、２つのＩＣチップ利用アプリのメモリ領域が登録される場合を説明したが、３つ以上のＩＣチップ利用アプリのメモリ領域が登録される場合も、上記説明した処理を適用可能である。また例えば、ＩＣチップ管理システム１に含まれるコンピュータは、図１の例に限られない。例えば、ＩＣチップ管理サーバ３０がＩＣチップ利用アプリの配信及びメモリ領域に対する初期設定も管理する場合には、サービス提供者サーバ２０は省略してもよい。
【図１】
0006539789.tif 000002
【図２】
0006539789.tif 000003
【図３】
0006539789.tif 000004
【図４】
0006539789.tif 000005
【図５】
0006539789.tif 000006
【図６】
0006539789.tif 000007
【図７】
0006539789.tif 000008
【図８】
0006539789.tif 000009
【図９】
0006539789.tif 000010
【図１０】
0006539789.tif 000011
【図１１】
0006539789.tif 000012
【図１２】
0006539789.tif 000013