(57)【要約】 【課題】  ＩＣチップが装着された携帯端末に対して、アプリケーションを安全に設定する。【解決手段】  ＩＣチップ２は、携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、携帯端末３を介して受信し、ＩＣチップ用のアプリケーションをメモリに記憶し、携帯端末用のアプリケーションについてハッシュ値を求めてメモリに記憶した後、アプリケーションを携帯端末３に送信する。携帯端末３は、携帯端末用のアプリケーションをＩＣチップ２から受信して記憶する。携帯端末３は、実行対象の携帯端末用のアプリケーションのハッシュ値を求め、利用要求とともにＩＣチップ２に送信する。これに応答して、ＩＣチップ２は、受信した要求に対応するハッシュ値をメモリから読み出し、受信したハッシュ値と照合し、一致する場合、ＩＣチップ用のアプリケーションを利用可能とする。【選択図】  図１
2006154997.tif 000002
【特許請求の範囲】
【請求項１】
ＩＣチップと、当該ＩＣチップが装着される携帯端末と、を備えるアプリケーション設定装置であって、
前記ＩＣチップは、
携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、前記携帯端末を介して受信する受信手段と、
前記受信手段により受信したＩＣチップ用のアプリケーションをメモリに記憶するアプリケーション記憶手段と、
前記受信手段により受信した携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶するハッシュ値記憶手段と、
前記受信手段により受信した携帯端末用のアプリケーションを前記携帯端末に送信する送信手段と、
ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及びハッシュ値と、の受信に応答して、受信した識別コードに関連付けられているハッシュ値をメモリから読み出し、読み出したハッシュ値と、受信したハッシュ値と、を照合する手段と、
前記照合したハッシュ値が一致する場合、前記利用要求が示すＩＣチップ用のアプリケーションを利用可能とする手段と、を備え、
前記携帯端末は、
前記ＩＣチップの前記送信手段により送信された携帯端末用のアプリケーションを受信して記憶するアプリケーション受信手段と、
実行対象の携帯端末用のアプリケーションのハッシュ値を求め、ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及び当該ハッシュ値と、を前記ＩＣチップに送信する手段と、を備える、
ことを特徴とするアプリケーション設定装置。
【請求項２】
前記携帯端末は、携帯端末用のアプリケーションのカスタマイズに関する情報の入力を受け付け、入力された情報に基づくカスタマイズ情報を前記ＩＣチップに送信する手段を備え、
前記ＩＣチップは、前記カスタマイズ情報を受信してメモリに記憶する手段を備え、
前記ＩＣチップの前記受信手段は、前記携帯端末用のアプリケーションにおけるカスタマイズ項目に対応するコードの変更場所を示す場所情報をさらに受信し、
前記ＩＣチップの前記アプリケーション記憶手段は、前記受信した場所情報をメモリにさらに記憶し、
前記ＩＣチップの前記ハッシュ値記憶手段は、メモリに記憶されている前記カスタマイズ情報と前記場所情報に基づいて、前記受信した携帯端末用のアプリケーションをカスタマイズし、カスタマイズされた当該携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶し、
前記送信手段は、カスタマイズされた前記携帯端末用のアプリケーションを前記携帯端末に送信する、
ことを特徴とする請求項１に記載アプリケーション設定装置。
【請求項３】
前記ＩＣチップの前記受信手段は、前記携帯端末用のアプリケーションと、前記ＩＣチップ用のアプリケーションを、当該ＩＣチップのバッファサイズに基づいて分割されたデータで受信する、
ことを特徴とする請求項１又は２に記載のアプリケーション設定装置。
【請求項４】
前記携帯端末は、前記携帯端末用のアプリケーションと、前記ＩＣチップ用のアプリケーションを、前記携帯端末用のアプリケーションと前記ＩＣチップ用のアプリケーションを管理するコンピュータから受信して、当該ＩＣチップのバッファサイズに基づいて分割して前記ＩＣチップに送信する手段をさらに備える、
ことを特徴とする請求項３に記載のアプリケーション設定装置。
【請求項５】
ＩＣチップと、当該ＩＣチップが装着される携帯端末と、を備えるアプリケーション設定装置用の前記ＩＣチップであって、
携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、前記携帯端末を介して受信する受信手段と、
前記受信手段により受信したＩＣチップ用のアプリケーションをメモリに記憶する手段と、
前記受信手段により受信した携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶する手段と、
前記受信手段により受信した携帯端末用のアプリケーションを前記携帯端末に送信する手段と、
ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及びハッシュ値と、の受信に応答して、受信した識別コードに関連付けられているハッシュ値をメモリから読み出し、読み出したハッシュ値と、受信したハッシュ値と、を照合する手段と、
前記照合したハッシュ値が一致する場合、前記利用要求が示すＩＣチップ用のアプリケーションを利用可能とする手段と、
を備えることを特徴とするＩＣチップ。
【請求項６】
コンピュータを、
携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、前記携帯端末を介して受信する受信手段、
前記受信手段により受信したＩＣチップ用のアプリケーションをメモリに記憶する手段、
前記受信手段により受信した携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶する手段、
前記受信手段により受信した携帯端末用のアプリケーションを前記携帯端末に送信する手段、
ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及びハッシュ値と、の受信に応答して、受信した識別コードに関連付けられているハッシュ値をメモリから読み出し、読み出したハッシュ値と、受信したハッシュ値と、を照合する手段、
前記照合したハッシュ値が一致する場合、前記利用要求が示すＩＣチップ用のアプリケーションを利用可能とする手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、サービスを利用するためのアプリケーション等をダウンロードして設定するための、ＩＣチップ及び当該ＩＣチップが装着される携帯端末からなるアプリケーション設定装置等に関する。
【背景技術】
【０００２】
近年、サービスを利用するためにＩＣチップが装着された携帯端末を用いるシステムが実現されている。このようなシステムでは、サービスを利用するためのアプリケーションやデータをＩＣチップや携帯端末にそれぞれダウンロードして設定し、携帯端末内のアプリケーションがＩＣチップ内のアプリケーションやデータを用いてサービスを利用するための処理を行う。
【０００３】
例えば、ＩＣカード機能の使用履歴を管理するアプリケーションを携帯電話機にダウンロードして、ＩＣカード機能の使用履歴を表示等する携帯型情報処理装置もある（特許文献１）。
【特許文献１】特開２００３−８５４６６号公報（第４、５頁、第４図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のように、ＩＣチップが装着された携帯端末を用いて利用するサービスは、電子決済サービスや個人情報を用いたサービス等、高度なセキュリティを要するものが多い。この点について、ＩＣチップは、構造上、機密性や秘匿性が高く、アプリケーションの設定において安全性が確保されるが、携帯端末は、ＩＣチップのように高い機密性を有していない。このため、例えば、携帯端末に不正なアプリケーションが設定された場合や携帯端末に設定されたアプリケーションが改竄された場合には、ＩＣチップに設定されたアプリケーション等が不正に利用される虞がある。
【０００５】
本発明は、上記実状に鑑みてなされたものであり、ＩＣチップが装着された携帯端末に対して、アプリケーションを安全に設定することができるアプリケーション設定装置等を提供することを目的とする。
また、本発明は、ＩＣチップが装着された携帯端末に設定されたアプリケーションの改竄を容易に検知できるアプリケーション設定装置等を提供することを他の目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、この発明の第１の観点に係るアプリケーション設定装置は、
ＩＣチップと、当該ＩＣチップが装着される携帯端末と、を備えるアプリケーション設定装置であって、
前記ＩＣチップは、
携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、前記携帯端末を介して受信する受信手段と、
前記受信手段により受信したＩＣチップ用のアプリケーションをメモリに記憶するアプリケーション記憶手段と、
前記受信手段により受信した携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶するハッシュ値記憶手段と、
前記受信手段により受信した携帯端末用のアプリケーションを前記携帯端末に送信する送信手段と、
ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及びハッシュ値と、の受信に応答して、受信した識別コードに関連付けられているハッシュ値をメモリから読み出し、読み出したハッシュ値と、受信したハッシュ値と、を照合する手段と、
前記照合したハッシュ値が一致する場合、前記利用要求が示すＩＣチップ用のアプリケーションを利用可能とする手段と、を備え、
前記携帯端末は、
前記ＩＣチップの前記送信手段により送信された携帯端末用のアプリケーションを受信して記憶するアプリケーション受信手段と、
実行対象の携帯端末用のアプリケーションのハッシュ値を求め、ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及び当該ハッシュ値と、を前記ＩＣチップに送信する手段と、を備える、
ことを特徴とする。
【０００７】
前記携帯端末は、携帯端末用のアプリケーションのカスタマイズに関する情報の入力を受け付け、入力された情報に基づくカスタマイズ情報を前記ＩＣチップに送信する手段を備えてもよく、
前記ＩＣチップは、前記カスタマイズ情報を受信してメモリに記憶する手段を備えてもよく、
前記ＩＣチップの前記受信手段は、前記携帯端末用のアプリケーションにおけるカスタマイズ項目に対応するコードの変更場所を示す場所情報をさらに受信してもよく、
前記ＩＣチップの前記アプリケーション記憶手段は、前記受信した場所情報をメモリにさらに記憶してもよく、
前記ＩＣチップの前記ハッシュ値記憶手段は、メモリに記憶されている前記カスタマイズ情報と前記場所情報に基づいて、前記受信した携帯端末用のアプリケーションをカスタマイズし、カスタマイズされた当該携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶してもよく、
前記送信手段は、カスタマイズされた前記携帯端末用のアプリケーションを前記携帯端末に送信してもよい。
【０００８】
前記ＩＣチップの前記受信手段は、前記携帯端末用のアプリケーションと、前記ＩＣチップ用のアプリケーションの少なくとも一方とを、当該ＩＣチップのバッファサイズに基づいて分割されたデータで受信してもよい。
【０００９】
前記携帯端末は、前記携帯端末用のアプリケーションと、前記ＩＣチップ用のアプリケーションを、前記携帯端末用のアプリケーションと前記ＩＣチップ用のアプリケーションを管理するコンピュータから受信して、当該ＩＣチップのバッファサイズに基づいて分割して前記ＩＣチップに送信する手段をさらに備えてもよい。
【００１０】
また、この発明の第２の観点に係るＩＣチップは、
ＩＣチップと、当該ＩＣチップが装着される携帯端末と、を備えるアプリケーション設定装置用の前記ＩＣチップであって、
携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、前記携帯端末を介して受信する受信手段と、
前記受信手段により受信したＩＣチップ用のアプリケーションをメモリに記憶する手段と、
前記受信手段により受信した携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶する手段と、
前記受信手段により受信した携帯端末用のアプリケーションを前記携帯端末に送信する手段と、
ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及びハッシュ値と、の受信に応答して、受信した識別コードに関連付けられているハッシュ値をメモリから読み出し、読み出したハッシュ値と、受信したハッシュ値と、を照合する手段と、
前記照合したハッシュ値が一致する場合、前記利用要求が示すＩＣチップ用のアプリケーションを利用可能とする手段と、
を備えることを特徴とする。
【００１１】
また、この発明の第３の観点に係るプログラムは、
コンピュータを、
携帯端末用のアプリケーションと、ＩＣチップ用のアプリケーションを、前記携帯端末を介して受信する受信手段、
前記受信手段により受信したＩＣチップ用のアプリケーションをメモリに記憶する手段、
前記受信手段により受信した携帯端末用のアプリケーションについてハッシュ値を求め、当該ハッシュ値をアプリケーションの識別コードと関連付けてメモリに記憶する手段、
前記受信手段により受信した携帯端末用のアプリケーションを前記携帯端末に送信する手段、
ＩＣチップ用のアプリケーションの利用要求と、アプリケーションの識別コード及びハッシュ値と、の受信に応答して、受信した識別コードに関連付けられているハッシュ値をメモリから読み出し、読み出したハッシュ値と、受信したハッシュ値と、を照合する手段、
前記照合したハッシュ値が一致する場合、前記利用要求が示すＩＣチップ用のアプリケーションを利用可能とする手段、
として機能させるためのものである。
【発明の効果】
【００１２】
ＩＣチップが装着された携帯端末に対して、安全にアプリケーションを設定することができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態に係るアプリケーション設定装置について図面を参照して説明する。
本実施形態に係るアプリケーション設定装置を含むアプリケーションダウンロードシステムの構成例を図１に示す。このアプリケーションダウンロードシステムは、アプリケーション提供サーバ１と、ＩＣチップ２とＩＣチップ２が装着された携帯端末３とから構成されるアプリケーション設定装置４と、サービス端末５と、を備える。アプリケーション提供サーバ１と携帯端末３は、ネットワーク１０を介して接続され、ネットワーク１０は、例えば、インターネット、専用線、公衆回線網、移動体通信網、無線通信網等を含む。
【００１４】
アプリケーション提供サーバ１の構成例を図２に、アプリケーション設定装置４を構成するＩＣチップ２と携帯端末３の構成例を図３に示す。また、アプリケーション提供サーバ１とＩＣチップ２と携帯端末３の機能ブロック図を図４に示す。
【００１５】
アプリケーション提供サーバ１は、サービスを利用するためのアプリケーションを提供するサーバであり、制御部１１と、記憶部１２と、通信制御部１３と、を備えるコンピュータから構成される。
制御部１１は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等から構成され、記憶部１２に予め記憶された動作プログラム等を読み出して実行することにより、アプリケーション分割・結合部１１１、アプリケーション供給部１１２等を論理的に実現する。
【００１６】
アプリケーション分割・結合部１１１は、携帯端末３からのアプリケーションのダウンロード要求に応答して、携帯端末３を介してＩＣチップ２との間で相互認証やセッション鍵の交換（生成）等を行った後、ＩＣチップ２用のアプリケーションやデータ（以下、ＩＣチップ用アプリケーション）と、携帯端末３用のアプリケーション（以下、携帯端末用アプリケーション）と、を分割対象のデータがなくなるまでそれぞれ分割する。アプリケーションの分割では、ＩＣチップ２からそのバッファサイズのデータを受信し、分割されたＩＣチップ用アプリケーションと分割された携帯端末用アプリケーションを組み合わせたデータサイズが、ＩＣチップ２のバッファサイズ以内になるようにする。また、分割されたＩＣチップ用アプリケーション（ＩＣチップ用ＡＰ）と携帯端末用アプリケーション（携帯端末用ＡＰ）には識別子（ラベル）を付与して結合する。
【００１７】
アプリケーション供給部１１２は、アプリケーション分割・結合部１１１により結合されたアプリケーション（分割データ）に対して、メッセージ認証コード（ＭＡＣ）を付与してＩＣチップ２に対するＩＣチップコマンドデータを生成し、携帯端末３に送信する。ＩＣチップコマンドデータのフォーマットの一例を図５に示す。なお、携帯端末用アプリケーションの分割データのサイズは、ハッシュ演算のブロックサイズの倍数とすることが望ましい。
【００１８】
記憶部１２は、例えば、ハードディスク装置等から構成され、制御部１１が実行するための動作プログラム及び処理に必要な各種データ等が記憶される。また、記憶部１２には、ＩＣチップ用アプリケーションと携帯端末用アプリケーションがアプリケーションＩＤ（ＡＰＩＤ）やサービス名等に関連付けられて記憶されている。また、記憶部１２には、例えば、ＩＣチップ２が装着された各携帯端末３について、携帯端末ＩＤ、装着されたＩＣチップ２のＩＤ、アプリケーションが設定済みか未設定であるかを示すフラグ等の情報や、各ＩＣチップ２について、ＩＣチップＩＤ、認証鍵、認証状態等の情報が記憶される。
通信制御部１３は、ネットワーク１０を介して携帯端末３とのデータ通信を行う。
【００１９】
ＩＣチップ２は、例えばＵＩＭ（User Identity Module）カード、ＳＩＭ（Subscriber Identity Module）カード等を含み、携帯端末３に装着して使用される。ＩＣチップ２は、ＣＰＵ２１と、メモリ２２と、入出力Ｉ／Ｆ（インタフェース）２３と、を備える。
ＣＰＵ２１は、メモリ２２に記憶される動作プログラムを実行することにより、認証部２１１、データ分離部２１２、検証部２１３等を論理的に実現する。
【００２０】
認証部２１１は、携帯端末３を介してアプリケーション提供サーバ１との間で認証やセッション鍵の交換（生成）等を行った後、アプリケーション提供サーバ１から受信したデータに付与されているメッセージ認証コード（ＭＡＣ）を検証する。
【００２１】
データ分離部２１２は、メッセージ認証コードの正当性が確認された場合、アプリケーション提供サーバ１からの結合されたアプリケーションのデータを、ＩＣチップ用アプリケーションの分割データと携帯端末用アプリケーションの分割データに分離して、ＩＣチップ用アプリケーションの分割データをＩＣチップ２のメモリ２２に格納し、また、携帯端末用アプリケーションの分割データについてハッシュ値を算出し、ハッシュ値をその携帯端末用アプリケーションのアプリケーションＩＤとともにメモリ２２に記憶し、携帯端末用アプリケーションを携帯端末３に送信する。携帯端末用アプリケーションの分割データについてハッシュ値を算出する際、従前に受信した分割データについてのハッシュ値がメモリ２２に記憶されている場合には、そのハッシュ値も初期値として用いて、受信した分割データについてハッシュ値を算出し、メモリ２２に記憶されている値を更新する。また、データ分離部２１２は、データに含まれている最終フラグ等から、ＩＣチップ用アプリケーションの分割データを全て受信したと判別した場合、それらを結合してＩＣチップ用アプリケーションを形成し、メモリ２２に記憶・設定する。
【００２２】
検証部２１３は、携帯端末３からアプリケーションの利用要求とハッシュ値とアプリケーションＩＤを受信した場合、受信したハッシュ値と、受信したアプリケーションＩＤに対応する、メモリ２２に記憶されたハッシュ値と、を照合し、一致する場合には、ＯＫ信号を返信し、アプリケーションＩＤに対応するＩＣチップ用アプリケーションを活性化する等して、ＩＣチップ用アプリケーションの利用を許可する。
【００２３】
メモリ２２は、ＲＯＭ、ＲＡＭ等から構成され、ＣＰＵ２１が実行するための動作プログラム及び処理に必要な各種データ等のデータが記憶されている。また、メモリ２２は、ＩＣチップ２のＩＤ、各ＩＣチップ用アプリケーションの活性化状態を示す情報、各携帯端末用アプリケーションのハッシュ値、携帯端末固有情報（画面サイズ等）、ＩＣチップ２のバッファサイズ、ＩＣチップ２の秘密鍵及び公開鍵、アプリケーション提供サーバ１の公開鍵等のデータが記憶されている。
入出力Ｉ／Ｆ２３は、そのＩＣチップ２が装着された携帯端末３とのデータ通信を制御する。
【００２４】
携帯端末３は、例えば、ＣＰＵ３１と、メモリ３２と、入力部３３と、表示部３４と、通信部３５と、入出力Ｉ／Ｆ３６と、を備える。また、携帯端末３は、ＩＣチップ２が装着されるＩＣチップ装着部をその外面に備える。
ＣＰＵ３１は、メモリ３２に記憶されるプログラムを実行することにより、ダウンロード要求部３１１、アプリケーション設定部３１２、アプリケーション実行部３１３等を論理的に実現する。
【００２５】
ダウンロード要求部３１１は、アプリケーションのダウンロード要求をアプリケーション提供サーバ１に送信し、これに応じてアプリケーション提供サーバ１から送信されてくるデータを受信してＩＣチップ２に送信し、ＩＣチップ２から受信したデータをアプリケーション提供サーバ１に送信等する。
アプリケーション設定部３１２は、ＩＣチップ２から携帯端末用アプリケーションの分割データを受信してメモリ３２に記憶する。そして、全ての分割データを受信すると、それらを結合して携帯端末用アプリケーションを形成し、メモリ３２に記憶・設定する。
【００２６】
アプリケーション実行部３１３は、サービスを利用する際に、アプリケーションを実行するため、メモリ３２に記憶されている携帯端末用アプリケーションについてハッシュ値を算出して求め、そのハッシュ値と、携帯端末用アプリケーションのアプリケーションＩＤと、をアプリケーションの利用要求とともにＩＣチップ２に送信する。そして、ＯＫ信号を受信した場合、携帯端末用アプリケーションを起動して、ＩＣチップ２に記憶されている携帯端末用アプリケーションに対応するＩＣチップ用アプリケーションにアクセス等し、サービス利用のための処理を行う。なお、サービスの内容は任意であり、例えば、クレジット決済等の電子決済や、個人認証した後に情報を提供するサービス、携帯端末３を定期券として使用するサービス等を含む。
【００２７】
メモリ３２は、ＲＯＭ、ＲＡＭ等から構成され、ＣＰＵ３１が実行するための動作プログラム及び処理に必要な各種データ等が記憶される。また、メモリ３２は、その携帯端末３の携帯端末ＩＤ、各携帯端末用アプリケーションに対応するアプリケーションＩＤ、携帯端末固有情報（画面サイズ等）等のデータを記憶する。
【００２８】
入力部３３は、例えばキーボードやポインティングデバイスを含む入力装置から構成され、入力されたデータをＣＰＵ３１に通知する。
表示部３４は、液晶ディスプレイ等から構成され、各種画面表示を行う。
通信部３５は、ネットワーク１０を介したアプリケーション提供サーバ１とのデータ通信を行う。また、通信部３５は、例えば赤外線通信等の近距離無線通信によりサービス端末５とのデータ通信を行う。
入出力Ｉ／Ｆ３６は、携帯端末３のＩＣチップ装着部に装着されたＩＣチップ２とのデータ通信を制御する。
【００２９】
サービス端末５は、制御部、記憶部、通信部、入力部、表示部等を備えるコンピュータから構成され、制御部は記憶部に記憶される動作プログラムを実行することにより、携帯端末３と赤外線通信等の近距離無線通信方式によるデータの送受信を行い、ユーザに対してサービスを提供するための処理を行う。サービス端末５は、例えば、１つのサービスを提供する端末として実現されてもよく、複数のサービスを提供する端末として実現されてもよい。例えば、複数のサービスを提供する端末の場合には、複数のサービスの中から一のサービスを選択する入力操作等に応じて、制御部が、選択されたサービスに対応するサービス提供用プログラムを記憶部から読み出して実行する。
【００３０】
次に、この発明の実施形態に係るアプリケーション設定装置のシステム動作について説明する。
まず、サービスを利用するためのアプリケーションをＩＣチップ２及び携帯端末３に設定する場合の動作について図６を参照して説明する。なお、前処理として、アプリケーション提供サーバ１には、ＩＣチップ用アプリケーションと携帯端末用アプリケーションが登録されている。
【００３１】
まず、携帯端末３のＣＰＵ３１が、例えばサービス設定要求等の入力を受け付け（ステップＳ１）、これに応答して、ＩＣチップ装着部に装着されているＩＣチップ２に対してＩＣチップＩＤ等を要求して取得し、このＩＣチップＩＤとサービス名とを含む設定要求をアプリケーション提供サーバ１に送信する（ステップＳ２）。
これに応じて、アプリケーション提供サーバ１は、受信データに基づいて、要求されたサービスについて設定が可能か判別する（ステップＳ３）。具体的には、例えば、要求されたサービスに対応するアプリケーションが記憶部１２に登録されているか等を判別する。
【００３２】
そして、ステップＳ３における判別結果が設定不可（ＮＧ）を示す場合（ステップＳ３：ＮＯ）、アプリケーション提供サーバ１は、携帯端末３にエラー通知を行い、通信を切断する（ステップＳ４）。
また、ステップＳ３における判別結果が設定可（ＯＫ）を示す場合（ステップＳ３：ＹＥＳ）、アプリケーション提供サーバ１は、認証データの要求をＩＣチップ２に対して送信する（ステップＳ５）。
ＩＣチップ２のＣＰＵ２１は、アプリケーション提供サーバ１からの認証データの要求を携帯端末３を介して受信し、これに応答して、認証データを生成し、携帯端末３を介してアプリケーション提供サーバ１に送信する（ステップＳ６）。具体的には、例えば、乱数を生成し、生成した乱数にＩＣチップ２の秘密鍵で署名を施した認証データとして生成し、生成した乱数、ＩＣチップ２の公開鍵等とともにアプリケーション提供サーバ１に送信してもよい。
アプリケーション提供サーバ１の制御部１１は、ＩＣチップ２からの認証データを受信し、これに応答して、認証データの検証を行う（ステップＳ７）。具体的には、例えば、受信した認証データの署名をＩＣチップ２の公開鍵で復号化し、受信した乱数が含まれているかを確認してもよい。
【００３３】
そして、ステップＳ７における検証結果がＮＧを示す場合、アプリケーション提供サーバ１の制御部１１は、携帯端末３にエラー通知を行い、通信を切断する（ステップＳ８）。
また、ステップＳ７における検証結果がＯＫを示す場合、制御部１１は、サーバ認証データを生成し、ＩＣチップ２に対して送信する（ステップＳ９）。具体的には、例えば、乱数を生成し、生成した乱数にアプリケーション提供サーバ１の秘密鍵で署名を施したデータをサーバ認証データとして生成し、生成した乱数、アプリケーション提供サーバ１の公開鍵等とともにＩＣチップ２に送信してもよい。
【００３４】
ＩＣチップ２のＣＰＵ２１は、アプリケーション提供サーバ１からのサーバ認証データを携帯端末３を介して受信し、これに応答して、サーバ認証データの検証を行う（ステップＳ１０）。具体的には、例えば、受信したサーバ認証データの署名をアプリケーション提供サーバ１の公開鍵で復号化し、受信した乱数が含まれているかを確認してもよい。
そして、ステップＳ１０における検証結果がＮＧを示す場合、ＣＰＵ２１は、携帯端末３を介してアプリケーション提供サーバ１にエラー通知を送信し、通信を切断する（ステップＳ１１）。
また、ステップＳ１０における検証結果がＯＫを示す場合、ＣＰＵ２１は、セッション鍵を生成する（ステップＳ１２）。セッション鍵の生成では、例えば、乱数を生成し、この生成した乱数と、認証データの生成において用いた乱数と、サーバ認証データに含まれていた乱数と、を用いてもよい。
【００３５】
次に、ＩＣチップ２のＣＰＵ２１は、ＩＣチップのバッファサイズと、ステップＳ１２で新たに生成した乱数をアプリケーション提供サーバ１１の公開鍵で暗号化したデータと、を携帯端末３に渡す。携帯端末３のＣＰＵ３１は、ＩＣチップ２から受け取ったデータと、アプリケーションＩＤ等の設定対象のアプリケーションを特定する情報と、を含むアプリケーション要求をアプリケーション提供サーバ１に送信する（ステップＳ１３）。
【００３６】
アプリケーション提供サーバ１の制御部１１は、アプリケーション要求に応答してセッション鍵を生成する（ステップＳ１４）。セッション鍵の生成では、例えば、アプリケーション要求とともに受信した暗号化された乱数をアプリケーション提供サーバ１の秘密鍵で復号化し、この乱数と、認証データに含まれていた乱数と、サーバ認証データの生成において用いた乱数と、を用いてもよい。
次に、制御部１１は、要求されたアプリケーションに対応する携帯端末用アプリケーションとＩＣチップ用アプリケーションをアプリケーションＩＤ等に基づいて記憶部１２から読み出す。そして、読み出した各アプリケーションを、ＩＣチップ２のバッファサイズに基づいて分割し、ＩＣチップ用の分割データと携帯端末用の一組の分割データにラベル（識別子）をそれぞれ付与して結合し、メッセージ認証コード（ＭＡＣ）を付与して、ＩＣチップ２に分割単位で順次送信する（ステップＳ１５）。メッセージ認証コードは、セッション鍵から派生した鍵でもよい。また、ある乱数から、セッション鍵やＭＡＣ等を生成してもよい。
【００３７】
ＩＣチップ２のＣＰＵ２１は、アプリケーション提供サーバ１から受信したＭＡＣが正しいかを判別する（ステップＳ１６）。具体的には、受信したＩＣチップ用アプリケーションと携帯端末用アプリケーションのデータについて、アプリケーション提供サーバ１と同様にしてＭＡＣを生成し、生成したＭＡＣと受信したＭＡＣを照合することにより、受信したＭＡＣの正当性を検証する。
そして、ステップＳ１６においてＭＡＣが正しくないと判別された場合、ＣＰＵ２１は、アプリケーション提供サーバ１にエラー通知を行い、通信を切断する（ステップＳ１１）。
また、ステップＳ１６においてＭＡＣが正しいと判別された場合、ＣＰＵ２１は、携帯端末用アプリケーションとＩＣチップ用アプリケーションの分割データを分離し、ＩＣチップ用アプリケーションの分割データをメモリ２２に記憶する（ステップＳ１７）。また、携帯端末用アプリケーションの分割データについてハッシュ値を求め、メモリ２２に記憶（更新）し（ステップＳ１８）、その携帯端末用アプリケーションの分割データを携帯端末３に送信する。携帯端末３のＣＰＵ３１は、携帯端末用アプリケーションの分割データをＩＣチップ２から受信して、メモリ３２に記憶する（ステップＳ１９）。
【００３８】
そして、アプリケーション提供サーバ１からＩＣチップ２に全ての分割データが送信されるまで、上述したステップＳ１５〜Ｓ１９を繰り返す。そして、全ての分割データが送信されると、ＩＣチップ２のＣＰＵ２１は、メモリ２２に格納していた全ての分割データを結合して、ＩＣチップ用アプリケーションを形成し、メモリ２２に記憶・設定する。また、携帯端末３のＣＰＵ３１は、メモリ３２に格納していた全ての分割データを結合して、携帯端末用アプリケーションを形成し、メモリ３２に記憶・設定する。
【００３９】
次に、所定のサービスを利用するために、携帯端末３とＩＣチップ２に設定されたアプリケーションを実行する場合の各装置の動作について図７を参照して説明する。
まず、携帯端末３のＣＰＵ３１は、例えば携帯端末用アプリケーションの起動要求の入力に応答して（ステップＳ２１）、起動対象として指定された携帯端末用アプリケーションデータのハッシュ値を算出して求め、そのアプリケーションＩＤとともにＩＣチップ２に送信する（ステップＳ２２）。なお、携帯端末用アプリケーションの起動要求は、例えば、ユーザにより入力されてもよく、サービス端末５が携帯端末３に送信してもよい。
【００４０】
ＩＣチップ２のＣＰＵ２１は、受信したアプリケーションＩＤに対応するハッシュ値をメモリ２２から読み出し、読み出したハッシュ値と受信したハッシュ値が一致するかを判定する（ステップＳ２３）。
ハッシュ値が一致しない場合（ステップＳ２３：ＮＯ）、ＣＰＵ２１は、エラー通知を携帯端末３に送信し（ステップＳ２４）、これに応答して、携帯端末３は処理を終了する。
ハッシュ値が一致する場合（ステップＳ２３：ＹＥＳ）、ＣＰＵ２１は、ＯＫ信号を携帯端末３に送信するとともに、その携帯端末用アプリケーションに対応するＩＣチップ用アプリケーションを活性化する（ステップＳ２５）。
携帯端末３のＣＰＵ３１は、ＩＣチップ２からのＯＫ信号に応答して、携帯端末用アプリケーションを起動し（ステップＳ２６）、ＩＣチップ用アプリケーションにアクセスする（ステップＳ２７）。これにより、例えばサービス端末５と通信を行って、所定のサービスを利用するための処理の実行が可能となる。
【００４１】
以上説明したように、本発明によれば、携帯端末用アプリケーションとＩＣチップ用アプリケーションを組み合わせてサービスを利用する場合において、ＩＣチップを介して携帯端末に安全にアプリケーションを設定することが可能となる。また、携帯端末用アプリケーションを起動する際に、ＩＣチップ側で携帯端末から提示されたハッシュ値を照合することにより、携帯端末に設定されたアプリケーションの改竄の検知が容易に可能となる。
【００４２】
（第１の変形例）
なお、本発明は種々の変形や応用が適用可能である。
例えば、ユーザからの入力に基づいて携帯端末用アプリケーションをカスタマイズし、カスタマイズしたアプリケーションのデータを携帯端末３に設定するようにしてもよい。
この第１の変形例におけるアプリケーション提供サーバ１は、携帯端末用アプリケーションについて、フォントサイズや画面サイズ等の各カスタマイズ項目に対応するプログラムコードの変更場所を示す場所情報をアプリケーション毎に記憶部１２に記憶している。また、アプリケーション提供サーバ１の制御部１１は、携帯端末用アプリケーションとＩＣチップ用アプリケーションの分割データをＩＣチップ２に送信する際に、その携帯端末用アプリケーションに対応する場所情報も送信する。場所情報のデータ形式は任意であり、例えばＸＭＬ形式でもよい。場所情報の一例を図８に示す。図８に示す場所情報は、携帯端末用アプリケーションにおいて、画面サイズ（GAMENSIZE）に対応する変更場所はプログラムコードの３バイト目から１バイトであることを示しており、また、フォントサイズ（FONTSIZE）に対する変更場所はプログラムコードの８バイト目から２バイトであることを示している。
【００４３】
携帯端末３のＣＰＵ３１は、ＰＩＮ（暗証番号）の入力を受け付けて、ＩＣチップ２に送信する。また、ＣＰＵ３１は、ＰＩＮの照合結果を受信し、照合結果がＯＫを示す場合には、カスタマイズ項目やその設定値等のカスタマイズに関する情報の入力を受け付け、入力された情報に基づくカスタマイズ情報をＩＣチップ２に送信する。カスタマイズ情報は、例えば、入力指定されたカスタマイズ項目の項目名と設定値から構成されてもよく、また、カスタマイズ可能な項目のうち、入力指定されたカスタマイズ項目以外の項目については、ＣＰＵ３１がメモリ３２に設定されている値を設定するようにしてもよい。また、ＰＩＮの照合結果がＮＧを示す場合には、エラー表示を行う。
【００４４】
ＩＣチップ２のＣＰＵ２１は、ユーザにより入力されたＰＩＮを携帯端末３から受信し、メモリ２２に記憶されているＰＩＮと照合し、照合結果を携帯端末３に送信する。また、ＣＰＵ２１は、携帯端末３からカスタマイズ情報を受信してメモリ２２に記憶する。そして、ＩＣチップ用アプリケーションと携帯端末用アプリケーションの分割データと場所情報を受信すると、場所情報とカスタマイズ情報に基づいて携帯端末用アプリケーションについてカスタマイズを行い、カスタマイズしたアプリケーションの分割データについてハッシュ値を算出してメモリ２２にアプリケーションＩＤとともに記憶し、カスタマイズした携帯端末用アプリケーションのデータを携帯端末３に送信する。
【００４５】
次に、この第１の変形例において、アプリケーションをＩＣチップ２と携帯端末３に設定する場合のアプリケーション設定装置の動作を図９を参照して説明する。この変形例におけるアプリケーションの設定処理は、図６を参照して説明したアプリケーションの設定処理とほぼ同様の処理内容であるため、相違点についてのみ説明する。
【００４６】
ステップＳ１５’において、アプリケーション提供サーバ１は、携帯端末用アプリケーションに対応する場所データを、携帯端末用アプリケーションとＩＣチップ用アプリケーションのデータとともに送信する。例えば、場所データを含むＩＣチップコマンドデータを初めに送信し、その後、アプリケーションの分割データを含むＩＣチップコマンドデータを送信してもよい。
そして、この第１の変形例におけるアプリケーション設定処理は、ステップＳ１７とステップＳ１８の間に、ＩＣチップ２が携帯端末用アプリケーションのカスタマイズを行うか否かを判別するステップＳ１７Ａと、ステップＳ１７Ａでカスタマイズを行うと判別した場合に、ＩＣチップ２が、メモリ２２に記憶されているカスタマイズ情報と、受信した場所情報と、に基づいて、受信した携帯端末用アプリケーションのカスタマイズを行うステップ１７Ｂと、を備える。
【００４７】
ステップＳ１７Ａにおけるカスタマイズを行うか否かの判断基準としては、例えば、ＩＣチップ２のメモリ２２にカスタマイズ情報が設定されている場合であって、カスタマイズ情報が示すカスタマイズ項目について、受信した場所情報が示す変更場所が、受信した分割データに存在するか否かを判別し、存在する場合に、カスタマイズを行うと判別してもよい。なお、ステップＳ１７Ａにおいて、カスタマイズを行わないと判別した場合には、そのままステップＳ１８を実行する。また、ステップＳ１７Ｂにおけるカスタマイズ処理では、例えば、カスタマイズ情報に「フォントサイズ」の値として「１０」が設定され、場所情報に「フォントサイズ」に対応する箇所が「８バイト目から２バイト」と設定されている場合、ＩＣチップ２は、受信した分割データに、アプリケーションコードの８バイト目から２バイトの部分を含むかを判別し、含む場合には、受信した分割データについて、アプリケーションコードの８バイト目から２バイトのデータを「１０」を示すコードで更新する。ステップＳ１７Ｂでカスタマイズを行った後は、ＩＣチップ２は、カスタマイズされたアプリケーションについてハッシュ値を算出してメモリ２２に記憶し（ステップＳ１８）、カスタマイズされたアプリケーションのデータを携帯端末３に送信して、携帯端末３に記憶させる（ステップＳ１９）。尚、カスタマイズ情報としては別途設定されたＩＣチップ２内のライセンスや利用権、利用回数などの利用に関するインタフェース情報でも良い。
【００４８】
なお、サービス利用時におけるシステム動作は、上述した本実施形態における処理動作（図７参照）と同様である。
【００４９】
これにより、ユーザがカスタマイズした携帯端末用アプリケーションについても、携帯端末に安全に設定することが可能となり、また、改竄についても容易に検知することができる。
【００５０】
（第２の変形例）
また、上述した実施形態では、アプリケーション提供サーバ１が、アプリケーションをＩＣチップ２のバッファサイズに基づいて分割して送信していたが、例えば、ＩＣチップ２のバッファサイズに基づくアプリケーションの分割処理をアプリケーション提供サーバ１ではなく携帯端末３が行うようにしてもよい。
この第２の変形例におけるアプリケーション提供サーバ１の制御部１１は、携帯端末３からのアプリケーション要求の受信に応答して、ダウンロード対象のＩＣチップ用アプリケーションと携帯端末用アプリケーションのサイズ、アプリケーションＩＤ等を携帯端末３に送信した後、ＩＣチップ用アプリケーションと携帯端末用アプリケーションのデータを送信する。この変形例では、アプリケーション提供サーバ１は、ＩＣチップ２のバッファサイズに基づくアプリケーションの分割は行わない。
【００５１】
ＩＣチップ２のＣＰＵ２１は、携帯端末３からＰＩＮを受信すると、受信したＰＩＮを、メモリ２２に予め記憶されているＰＩＮと照合し、照合結果を携帯端末３に送信する。このとき、照合結果がＯＫ（ＰＩＮが一致する）の場合には、メモリ２２に記憶されているＩＣチップ２のバッファサイズ値を照合結果とともに携帯端末３に送信する。また、ＣＰＵ２１は、全ての分割データを受信すると、メモリ２２に記憶されているＩＣチップ用の分割データを結合する。
【００５２】
携帯端末３のＣＰＵ３１は、ＩＣチップ２のバッファサイズ値をメモリ３２に設定するための処理を行う。具体的には、ＣＰＵ３１は、その携帯端末３にＩＣチップ２が装着されたとき等のタイミングで、ユーザからＰＩＮ（暗号番号）の入力を受け付け、入力されたＰＩＮをＩＣチップ２に送信し、ＩＣチップ２に格納されているＰＩＮとの照合結果を受信する。受信した照合結果がＯＫを示す場合には、照合結果とともにＩＣチップ２から送信されてきたＩＣチップ２のバッファサイズのデータをメモリ３２に記憶する。また、受信した照合結果がエラーを示す場合には、ＩＣチップ２のバッファサイズを設定するための処理を終了する。なお、携帯端末３からＩＣチップ２が取り外された場合には、メモリ３２に記憶されたバッファサイズのデータをクリアする。
また、ＣＰＵ３１は、携帯端末用アプリケーションとＩＣチップ用アプリケーションのサイズ、アプリケーションＩＤ等をアプリケーション提供サーバ１から受信してメモリ３２に記憶し、メモリ３２の空き容量等をチェックした後、ＩＣチップ用アプリケーションと携帯端末用アプリケーションのデータをアプリケーション提供サーバ１からダウンロードする。そして、ＣＰＵ３１は、ダウンロードしたアプリケーションのデータについて、ＩＣチップ２のバッファサイズに基づいて分割し、分割データをＩＣチップ２に送信する。また、ＣＰＵ３１は、ＩＣチップ２から、携帯端末用アプリケーションの分割データを受信すると、メモリ３２に記憶し、全ての分割データが揃ったことを確認すると、それらを結合する。
【００５３】
本実施形態の第２の変形例において、アプリケーションをＩＣチップと携帯端末に設定する場合のアプリケーション設定装置の動作を図１０を参照して説明する。
まず、携帯端末３のＣＰＵ３１が、サービス設定要求等の入力を受け付け、ＩＣチップ２に対して、既に登録されているアプリケーションのアプリケーションＩＤのリスト、メモリの空き容量等を要求する（ステップＳ６１）。この要求に応答して、ＩＣチップ２のＣＰＵ２１は、既に登録されているアプリケーションのアプリケーションＩＤのリストと、空き容量等のデータを携帯端末３に送信する（ステップＳ６２）。
携帯端末３のＣＰＵ３１は、ＩＣチップ２からのデータを受信してメモリ３２に記憶すると、サービス名等を含む設定要求をアプリケーション提供サーバ１に送信する（ステップＳ６３）。
アプリケーション提供サーバ１の制御部１１は、設定要求に対応するアプリケーションＩＤ、ＩＣチップ用アプリケーションと携帯端末用アプリケーションのサイズ等のデータを携帯端末３に送信する（ステップＳ６４）。
【００５４】
携帯端末３のＣＰＵ３１は、受信したアプリケーションのサイズ値に基づいて、携帯端末３とＩＣチップ２のメモリの空き容量をチェックし、また、受信したアプリケーションＩＤについて、登録済みのアプリケーションのアプリケーションＩＤのリストを参照し、アプリケーションが重複するか否かのチェック等を行う（ステップＳ６５）。そして、空き容量が不足する場合やアプリケーションの重複が生じる場合には（ステップＳ６５：ＹＥＳ）、ＣＰＵ３１は、エラー表示を行って、アプリケーション提供サーバ１にエラー通知を送信する等の所定のエラー処理を行う（ステップＳ６６）。また、空き容量が不足せず、かつ、アプリケーションの重複も生じない場合には（ステップＳ６５：ＮＯ）、ＯＫ信号をアプリケーション提供サーバ１に送信し、これに応じて、アプリケーション提供サーバ１の制御部１１は、ＩＣチップ用アプリケーションと携帯端末用アプリケーションを携帯端末３に送信する（ステップＳ６７）。
携帯端末３のＣＰＵ３１は、受信したアプリケーションを、メモリ３２に記憶されているＩＣチップ２のバッファサイズに基づいて分割して、ＩＣチップコマンドデータ（図５参照）を生成してＩＣチップ２に順次送信する（ステップＳ６８）。
【００５５】
ＩＣチップ２のＣＰＵ２１は、受信したＩＣチップコマンドデータについて、フォーマットのチェック等を行った後、ＩＣチップ用アプリケーションと携帯端末用アプリケーションの分割データを分離し、ＩＣチップ用アプリケーションの分割データをメモリ２２に記憶する（ステップＳ６９）。そして、例えば、携帯端末用アプリケーションの分割データについては、必要なカスタマイズ処理等を行い、ハッシュ値を生成して記憶（更新）する（ステップＳ７０）。具体的には、場所情報を受信している場合には、場所情報の署名を検証してその正当性を確認した後、受信した分割データについてカスタマイズを行うか否かを判別し、行う必要がある場合にはカスタマイズ処理を行い、カスタマイズされた分割データについてハッシュ値を算出する。また、分割データについてカスタマイズが不要と判別した場合や場所情報を受信していない場合等にはカスタマイズを行わず、そのままハッシュ値を算出する。次に、ＣＰＵ２１は、携帯端末用アプリケーションの分割データを携帯端末３に送信する（ステップＳ７１）。携帯端末３のＣＰＵ３１は、受信した携帯端末用アプリケーションの分割データをメモリ３２に記憶する（ステップＳ７２）。
【００５６】
そして、携帯端末３が全ての分割データをＩＣチップ２に送信するまで、ステップＳ６８〜Ｓ７２を繰り返す。そして、携帯端末３のＣＰＵ３１は、全ての分割データを送信し、携帯端末用アプリケーションの分割データが全て揃ったことを確認すると（ステップＳ７３：ＹＥＳ）、それらの分割データを結合して、携帯端末用アプリケーションを形成し、メモリ３２に記憶・設定し、ダウンロード結果をアプリケーション提供サーバ１に送信する（ステップＳ７４）。また、ＩＣチップ２のＣＰＵ２１は、全ての分割データが揃ったことを確認した場合、それらの分割データを結合してＩＣチップ用アプリケーションを形成し、メモリ２２に記憶・設定する。なお、携帯端末３は、分割データが全て揃わなかった場合等には（ステップＳ７３：ＮＯ）、メモリ３２に格納されている分割データを削除し、サーバにエラーを通知する等の所定のエラー処理を行う（ステップＳ７５）。
【００５７】
（第３の変形例）
また、携帯端末用アプリケーションを、携帯端末のローカルＩ／Ｆを介して他の携帯端末に対して設定するようにしてもよい。
この第３の変形例における携帯端末３は、アプリケーション提供サーバ１に接続可能な携帯端末Ａと、接続不可能な携帯端末Ｂと、を含む。携帯端末Ｂの通信部３５は、例えば、赤外線通信等のローカルＩ／Ｆのみを有し、ネットワーク１０と接続するためのＩ／Ｆを有していない。
【００５８】
次に、携帯端末Ｂに携帯端末Ａを介してアプリケーションを設定する場合の処理について図１１を参照して説明する。
携帯端末Ｂは、携帯端末Ａに接続要求を送信する（ステップＳ４１）。
携帯端末Ａは、携帯端末Ｂから接続要求を受信すると（ステップＳ４２）、ＰＩＮ入力を受け付けて、携帯端末Ａに装着されているＩＣチップ２（以下、ＩＣチップＡ）に渡し、ＩＣチップＡは、ＰＩＮ照合によりユーザの本人確認を行う（ステップＳ４３）。ＩＣチップＡは、照合エラーの場合、携帯端末Ａにエラーを通知し、照合ＯＫの場合、乱数を生成し、携帯端末Ａを介して携帯端末Ｂに装着されているＩＣチップＢに対して送信する（ステップＳ４４）。
携帯端末Ｂは、携帯端末Ａから乱数を受信すると、それをＩＣチップＢに渡すとともに、ＰＩＮ入力を受け付けて、携帯端末Ｂに渡す。ＩＣチップＢは、ＰＩＮ照合によりユーザの本人確認を行う（ステップＳ４５）。ＩＣチップＢは、照合エラーの場合、エラーを携帯端末Ｂに通知し、照合ＯＫの場合、ＩＣチップＡから受信した乱数にＩＣチップＢの秘密鍵で署名を施して、ＩＣチップＢの公開鍵とともに、携帯端末Ｂを介してＩＣチップＡに送信する（ステップＳ４６）。
【００５９】
ＩＣチップＡは、ＩＣチップＢから受信した署名を公開鍵で復号化し、先に送信した乱数が含まれていることを確認すると、認証ＯＫを示すデータを携帯端末Ｂに通知する（ステップＳ４７）。
携帯端末Ｂは、ＩＣチップＢから読み出したＩＣチップＩＤとバッファサイズと、設定要求対象のサービスを指定するデータと、を携帯端末Ａに送信する（ステップＳ４８）。
携帯端末Ａは、アプリケーション提供サーバ１に、ＩＣチップＢのＩＤとバッファサイズ、サービス名（アプリケーション名）等を指定したアプリケーション要求を送信する（ステップＳ４９）。
【００６０】
アプリケーション提供サーバ１は、アプリケーション要求に対応するＩＣチップ用アプリケーションと携帯端末用アプリケーションを読み出し、上述した本実施形態と同様にしてＩＣチップコマンドデータ（図５参照）を生成して、携帯端末Ａに順次送信する（ステップＳ５０）。携帯端末Ａは、アプリケーション提供サーバ１から受信したＩＣチップコマンドデータを携帯端末ＢのＩＣチップＢに順次送信する（ステップＳ５１）。携帯端末ＢのＩＣチップＢは、受信データについて、上述した本実施形態と同様にして、ＩＣチップ用アプリケーションと携帯端末用アプリケーションの分割データに分離し、ＩＣチップ用の分割データについてはメモリ２２に格納し、携帯端末用の分割データについてはハッシュ値を算出して記憶した後、携帯端末Ｂに送信する（ステップＳ５２）。携帯端末Ｂは、ＩＣチップＢから受信した携帯端末用の分割データを記憶する（ステップＳ５３）。
【００６１】
そして、アプリケーション提供サーバ１からＩＣチップ２に全ての分割データ送信されるまで、上述したステップＳ５０〜Ｓ５３を繰り返す。そして、全ての分割データが送信されると、ＩＣチップＢは、メモリ２２に格納していた全ての分割データを結合して、ＩＣチップ用アプリケーションを形成し、記憶・設定する。また、携帯端末Ｂは、メモリ３２に格納していた全ての分割データを結合して、携帯端末用アプリケーションを形成し、記憶・設定する。そして、設定結果をアプリケーション提供サーバ１に送信する（ステップＳ５４）。
【００６２】
なお、第３の変形例において、携帯端末Ａが、ＩＣチップＢのバッファサイズに基づいて、アプリケーションのデータを分割し、ＩＣチップＢに順次供給してもよい。
また、ＩＣチップ用アプリケーションと携帯端末用アプリケーションとが同じ言語体系で同じロジックの場合には、一つのアプリケーションのデータを分割して送信してもよく、この分割データを、ＩＣチップ２と携帯端末３のそれぞれに設定するようにしてもよい。
また、上述した説明では、ＩＣチップに対して、アプリケーションやアプリケーション及びデータを設定するようにしているが、本発明は、ＩＣチップに対してデータのみを設定する場合にも適用可能である。
また、上述した説明では、アプリケーションの設定について記述しているが、アプリケーションの更新であっても良く、その場合はＩＣチップに記憶しているハッシュ値を更新する。
また、携帯端末のアプリケーションを削除する場合は、併せてＩＣチップに設定したハッシュ値などを無効化しても良い。
【００６３】
なお、この発明のシステムは、専用のシステムによらず、通常のコンピュータシステムを用いて実現可能である。例えば、上述の動作を実行するためのプログラムをコンピュータ読み取り可能な記録媒体（ＦＤ、ＣＤ−ＲＯＭ、ＤＶＤ等）に格納して配布し、該プログラムをコンピュータにインストールすることにより、上述の処理を実行するアプリケーション提供サーバ１、ＩＣチップ２、携帯端末３等を構成してもよい。また、インターネット等のネットワーク１０上のサーバ装置が有するディスク装置に格納しておき、例えばコンピュータにダウンロード等するようにしてもよい。
また、上述の機能を、ＯＳが分担又はＯＳとアプリケーションの共同により実現する場合等には、ＯＳ以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロード等してもよい。
【図面の簡単な説明】
【００６４】
【図１】本発明の実施形態に係るアプリケーションダウンロードシステムの構成例を示す図である。
【図２】アプリケーション提供サーバの構成例を示す図である。
【図３】ＩＣチップと携帯端末の構成例を示す図である。
【図４】アプリケーション提供サーバとＩＣチップと携帯端末の機能ブロック図である。
【図５】ＩＣチップコマンドデータのフォーマットの一例を示す図である。
【図６】アプリケーションをＩＣチップと携帯端末に設定する場合におけるアプリケーション設定装置の動作を説明するための図である。
【図７】所定のサービスを利用するために、携帯端末とＩＣチップに設定されたアプリケーションを実行する場合の各装置の動作を説明するための図である。
【図８】場所情報の一例を示す図である。
【図９】第１の変形例において、アプリケーションをＩＣチップと携帯端末に設定する場合のアプリケーション設定装置の動作を説明するための図である。
【図１０】第２の変形例において、アプリケーションをＩＣチップと携帯端末に設定する場合のアプリケーション設定装置の動作を説明するための図である。
【図１１】第３の変形例において、アプリケーションをＩＣチップと携帯端末に設定する場合のアプリケーション設定装置の動作を説明するための図である。
【符号の説明】
【００６５】
１            アプリケーション提供サーバ
２            ＩＣチップ
３            携帯端末
４            アプリケーション設定装置
１０          ネットワーク
１１          制御部
１２          記憶部
１１          通信制御部
２１、３１    ＣＰＵ
２２、３２    メモリ
２３、３６    入出力Ｉ／Ｆ
３３          入力部
３４          表示部
３５          通信部
１１１        アプリケーション分割・結合部
１１２        アプリケーション供給部
２１１        認証部
２１２        データ分離部
２１３        検証部
３１１        ダウンロード要求部
３１２        アプリケーション設定部
３１３        アプリケーション実行部
【図１】
2006154997.tif 000003
【図２】
2006154997.tif 000004
【図３】
2006154997.tif 000005
【図４】
2006154997.tif 000006
【図５】
2006154997.tif 000007
【図６】
2006154997.tif 000008
【図７】
2006154997.tif 000009
【図８】
2006154997.tif 000010
【図９】
2006154997.tif 000011
【図１０】
2006154997.tif 000012
【図１１】
2006154997.tif 000013