JP4103995B2 - IC chip control system, communication terminal and computer program - Google Patents
IC chip control system, communication terminal and computer program Download PDFInfo
- Publication number
- JP4103995B2 JP4103995B2 JP2003033359A JP2003033359A JP4103995B2 JP 4103995 B2 JP4103995 B2 JP 4103995B2 JP 2003033359 A JP2003033359 A JP 2003033359A JP 2003033359 A JP2003033359 A JP 2003033359A JP 4103995 B2 JP4103995 B2 JP 4103995B2
- Authority
- JP
- Japan
- Prior art keywords
- chip
- control
- server
- external device
- control command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Telephone Function (AREA)
- Telephonic Communication Services (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、通信端末に接続されたICチップを、通信端末を介して外部装置により制御するための技術に関する。
【0002】
【従来の技術】
従来から、携帯電話端末などの通信端末にICチップを接続し、通信端末を介して、所定のサーバなどの外部装置からの制御コマンドに基づいて、ICチップを制御して所定の処理を実行させることが行われている。
このようなシステムでは、例えば、利用者またはエージェントが通信端末のアプリケーションを起動させてサーバにアクセスする。サーバからはICチップ制御コマンドが通信端末に通知される。通信端末のアプリケーションプログラムは、通知されたICチップ制御コマンドを接続されているICチップに送信すると共に、その制御結果(レスポンスデータ)をICチップから受信する。そして、通信端末のアプリケーションプログラムが、ICチップからの受信結果をサーバに送信し、サーバから通信端末に対して送信結果を返すという一連の処理が行われていた。
【0003】
また、通信端末上のアプリケーションプログラムのセキュリティ性等を考慮して、通信端末上でアプリケーションプログラムが動作するプログラムモードと、ICカードからカード番号などを読み取り、サーバへ送信するパケットモードの2種類のモードに分け、これをサーバからダウンロードしたプログラムにより自動的に切り替えて処理するシステムが提案されている(例えば、特許文献1)。また、クライアント端末にICチップを駆動させる処理を持たずに、これをサーバに持たせることでクライアント端末の処理負荷を軽減させるシステムも提案されている(例えば、特許文献2)。
【0004】
【特許文献1】
特開2001−222595号公報
【特許文献2】
特開2001−282528号公報
【0005】
【発明が解決しようとする課題】
しかし、従来のシステムのように通信端末に搭載されたアプリケーションプログラムを利用して処理を行っていたのでは、通信端末上のアプリケーションプログラムが差し替えられたり、書き換えられたりすることができるため、悪意をもって通信端末のアプリケーションプログラムの差し替え等を行えば、ICチップへの制御を確実にできなくなるという問題がある。
【0006】
また、特開2001−222595号公報のように、変更する条件をダウンロードしたプログラムに依存していたのでは、このプログラムが通信途中で差し替えられたり、改変等された場合などには対応できず、セキュリティ性に問題があった。
【0007】
また、特開2001−282528号公報のようにサーバ側にICチップを駆動させるプログラムを全て持たせたのでは、常時ICチップとサーバ間でのセッションを張っておく必要があるため、ネットワークのリソースが多く必要となってしまうという問題があった。このような問題は特に、携帯電話端末のようなネットワークリソースが少ないシステム上では実用的ではないという問題があった。
【0008】
本発明は上述の問題点を解決するためになされたものであって、通信端末に接続されるICチップを、通信端末を介して外部装置により安全かつ効率的に制御する仕組みを提供することを課題とする。
【0009】
【課題を解決するための手段】
上述の課題を解決するため、本発明の一の観点にかかるICチップ制御システムは、ICチップに対して所定の処理を実行させるための制御コマンドを生成する外部装置と、前記外部装置と通信可能に構成され、所定の処理を行うためのアプリケーションプログラムを保持する携帯通信端末と、前記携帯通信端末と接続又は通信可能に構成され、前記携帯通信端末を介して前記外部装置からの制御コマンドに応じて所定の処理を実行するICチップと、を有するシステムであって、前記外部装置は、ICチップに対する制御を終了する制御終了時刻を生成し、前記携帯通信端末は、前記外部装置が生成した制御終了時刻を取得して、この制御終了時刻まで、前記外部装置からICチップに対して送信される制御コマンドに対する前記アプリケーションプログラムによる処理を禁止して、前記制御コマンドをICチップにそのまま送信することを特徴とする。
【0010】
また、前記ICチップは、制御コマンドを実行するための制御条件を記憶する記憶手段と、前記通信端末からそのまま送信された制御コマンドが、前記記憶手段に記憶されている制御条件に合致するか否か判別し、前記制御条件に合致する場合に前記サーバから受信した制御コマンドに基づく処理を実行させる制御手段を有してもよい。
【0011】
本発明の一の観点にかかる通信端末は、ICチップに対して所定の処理を実行させるための制御コマンドを生成する外部装置及び、前記外部装置からの制御コマンドに応じて所定の処理を実行するICチップと通信可能に構成された通信端末であって、所定の処理を行うためのアプリケーションプログラムと、前記外部装置が生成した制御終了時刻を取得して、この制御終了時刻まで、前記外部装置からICチップに対して送信される制御コマンドに対する前記アプリケーションプログラムによる処理を禁止して、前記制御コマンドをICチップにそのまま送信する通信制御手段とを有することを特徴とする。
【0012】
また、前記通信制御手段は、前記外部装置から通知された制御終了時刻が経過した時には、前記外部装置からICチップに対する制御コマンドをそのまま送信することを禁止するようにしてもよい。また、前記通信制御手段は、前記ICチップに対する処理を行っているアプリケーションプログラムがある場合には、当該アプリケーションプログラムを前記サーバから通知された制御終了時刻まで休止させてもよい。
【0013】
また、前記外部装置から通知された制御終了時刻を表示して、ユーザに対して処理の実行に同意か否か確認するための情報を出力する出力手段を更に有してもよい。
【0014】
また、前記外部装置又はICチップとの間で個別にセッションを確立する場合、所定の固有情報に基づくハッシュ値に基づいて前記外部装置又はICチップの認証を行う認証処理手段を更に有してもよい。
また、前記通信端末は、携帯可能な通信端末であってもよい。
【0015】
本発明の一の観点にかかるコンピュータプログラムは、ICチップに対して所定の処理を実行させるための制御コマンドを生成する外部装置及び、前記外部装置からの制御コマンドに応じて所定の処理を実行するICチップと通信可能に構成され、所定の処理を行うためのアプリケーションプログラムを保持する通信端末としてコンピュータを機能させるためのコンピュータプログラムであって、コンピュータに対して、前記外部装置が生成した制御終了時刻を取得する処理と、前記取得した制御終了時刻まで、前記外部装置からICチップに対して送信される制御コマンドに対する前記アプリケーションプログラムによる処理を禁止して、前記制御コマンドをICチップにそのまま送信する処理とを実行させることを特徴とする。
【0016】
【発明の実施の形態】
以下、図面を参照して本発明にかかるICチップ制御システム、ICチップ、通信端末及びコンピュータプログラムを適用したシステムの一実施形態について説明する。
図1に本実施形態にかかるシステムの全体構成の概略を示す。図1において、本実施形態にかかるシステムは、サーバ1と、このサーバ1と携帯電話網、インターネット、有線又は無線のLAN(Local Area Network)などを介して接続可能に構成された携帯端末2と、この携帯端末2に接続し通信可能に構成されたICチップ3から構成されている。
【0017】
サーバ1は、本発明にかかる外部装置を構成する。サーバ1はCPU(Central Processing Unit)と、CPUが実行するコンピュータプログラム及び所定のデータなどを記憶することができるRAM、ROMなどの内部メモリ及びハードディスクドライブなどの外部記憶装置などの記憶部を有するコンピュータにより構成することができる。
サーバ1は、CPUが所定のコンピュータプログラムを実行することにより、例えば、ICチップ3に対応した鍵データを用いてICチップ3で生成された認証データの認証処理を行ったり、ICチップ3への制御コマンドを発行する処理を行うことができる。また、携帯端末2及びICチップ3のエラーなどを検出し、所定のエラー処理を行うようにしてもよい。
また、サーバ1の記憶部には、例えば、図3に示すように、サーバID、サーバ1で生成したサーバ乱数、携帯端末2及びICチップ3のエラーリスト(ネガティブリスト)を記憶することができる。ICチップ3のネガティブリストとしては、例えば、エラーが発生したICチップ3のチップID、ICチップ3の秘密鍵、エラー発生日時、エラー回数累積値、制御履歴などの情報を記憶することができる。また、携帯端末2のネガティブリストとしては、端末ID、エラー発生の日時、エラー回数累積値などを記憶することができる。
また、サーバ1の記憶部には、図3に示すように、制御内容とその制御を行った制御終了時刻を記憶することができる。
【0018】
携帯端末2は、本発明にかかる通信端末を構成する。携帯端末2は、例えば、携帯電話端末、通信機能を備えたPDA(Personal Digital Assistance)端末、通信機能を備えた移動可能ないわゆるパソコンなどにより構成することができる。
携帯端末2は、図1に示すようにサーバ1とアンテナなどを介して通信処理を行う通信部201、ディスプレイなどの表示部202、キーボードやポインティングデバイスなどの入力部203、コンピュータプログラムや所定のデータを記憶するROM、RAMなどのメモリ204、ICチップ3と電気的に接続して或いは無線によりデータのリードライト処理を行うリーダライタ(R/W)205、コンピュータプログラムなどを実行して所定の処理を行うCPU206から構成することができる。
なお、通信部201は、赤外線などの光媒体を介して通信処理を行ってもよい。また、CPU206は複数あってもよく、通信処理とアプリケーション処理をそれぞれ別のCPU206に処理させてもよい。
そして、これらの構成により図2に示す記憶部20と、端末OS(Operating System)により、セッション管理部21と、通信制御部22、時間を管理するクロック部23などの機能ブロックを実現することができる。
【0019】
記憶部20には、図4に示すように、端末2で所定の処理を行うための複数のアプリケーションプログラム(AP)1〜N、と端末OS(Operating System)から構成されている。
この記憶部20には、端末ID、端末PIN(Personal Identification Number)、端末乱数、端末タイマ、外部ノードアクセス条件テーブル、AP状態テーブル、端末状態情報が記憶できるようになっている。
外部ノードアクセス条件テーブルは、各アプリケーションプログラムを実行してどのサーバ1にアクセスできるか、またその際の条件を記憶することができる。外部ノードアクセス条件としては、例えば、アプリケーションプログラムごとにサーバIPアドレス、サーバドメイン名、端末PINなどのデータを含むことができる。
AP状態テーブルは、アプリケーションプログラムの状態を表すテーブルであって、例えば、各アプリケーションごとに休止中、未起動、起動中などの状態を表す情報が記憶できるようになっている。
端末状態情報は、端末2がクライアントモードかサーバモードかを表す情報である。クライアントモードとは、端末2とサーバ1或いはICチップ3との間でセッションを確立し、所定のアプリケーションプログラムを実行して処理を行っている状態であり、サーバモードとは、サーバ1から指定された制御終了時刻まで、サーバ1とICチップ3との間でやり取りされる制御コマンド等のデータに対して、携帯端末2のアプリケーションプログラムによる処理を禁止して、そのままスルーして通信する状態をいう。
【0020】
セッション管理部21は、サーバ1と携帯端末2間、ICチップ3と携帯端末2間の通信時には、各々のノードで生成した乱数、IDなどの固有情報を利用したセッション情報のやり取りを行い、セッションを確立するための処理を行う。
またセッションを確立する際、セッション管理部21が所定の乱数や端末IDなどの固有情報に基づいてハッシュ値を生成し、これを利用して認証処理を行うことで盗聴によるなり済ましを防止したり、通信データの改竄を簡易に検知できるようにすることができる。
また、セッション管理部21は、サーバ1やICチップ3に対する制御コマンドの送受信処理を行う。
【0021】
通信制御部22は、サーバ1から通知された制御終了時刻まで、サーバ1とICチップ3との間でやり取りされる制御コマンドに対して、通信端末2内のアプリケーションプログラムによる処理を禁止して、そのままスルーして通信できるように制御する。また、通信制御部22は、ICチップ3内のアプリケーションプログラムを利用している端末アプリケーションプログラムがある場合には、その端末アプリケーションプログラムを一時休止させるように制御する。
また、通信制御部22は、サーバ1から通知された制御終了時刻を超えた場合には、携帯端末2の状態をクライアントモードに自動的に切り替えて、サーバ1からの制御コマンドをスルーさせずに、サーバ1と携帯端末2間の通信又はICチップ3と携帯端末2間の通信のみを有効とするように制御する。
【0022】
ICチップ3は、図1に示すようにコンピュータプログラムなどを記憶するRAM、ROMなどのメモリ301、CPU302、携帯端末2と電気的に接続して或いは無線によりデータのやり取りを行う通信部303から構成されている。
そして、これらの構成により図2に示す記憶部30、認証・セッション管理部31、制御管理部32の機能ブロックを実現することができる。
【0023】
記憶部30には、そのセキュリティドメインに図5に示すような情報が記憶できるようになっている。
図5に示すアプリケーション情報は、ICチップ3に対して処理を行うことができる携帯端末2等のアプリケーションプログラムに対応したICチップアプリケーションの情報であって、アプリケーションID(AID)と、そのデータ、アプリケーションプログラムが使用する鍵データ、履歴情報などが含まれる。
またその他にICチップ3に設定されている情報として、認証を行うためのICチップ秘密鍵1〜n、ICチップ3の識別情報としてのチップID、一時的に生成されたICチップ乱数、PIN、制御条件情報、利用者に対して確認が必要となる情報を表す利用者確認情報、各アプリケーションプログラムが制御可能な状態か否かを表す制御可能フラグ、ダウンロードしたアプリケーションプログラム一覧情報が含まれる。
制御条件情報は、制御内容に対する制御条件を表す情報であって、ICチップ3に対する制御内容とそれを実行する際の制御条件(例えば、認証対象の鍵データ、制御コマンド数、制御が可能なサーバIDなど)が含まれる。これらの制御条件情報は事前にICチップ3に設定され、制御コマンドの制御内容の判別の際に参照されるようになっている。
【0024】
認証・セッション管理部31は、携帯端末2等とセッションを確立するためのセッション情報を生成したり、携帯端末2等から入力されたセッション情報等の復号処理、及び認証処理を行うことができる。
【0025】
制御管理部32は、外部からの入力に対してICチップ3内のアプリケーションプログラムやデータの変更、消去、書換えなどの制御処理を行う。
また、制御管理部32は、携帯端末2を介して送信された制御コマンドに基づいて制御処理を行う前に、当該制御コマンドが設定されている制御方法(制御コマンド数、指定コマンド、指定データ、コマンド順番、指定データやコマンドのハッシュ値)に適合するか確認する処理を行う。この処理は、認証・セッション管理部31にて外部ノードを確認後、制御管理部32が当該外部ノードに対する制御方法をICチップ3に一時的に設定することで、制御処理を行うことができるようにする。そして、指定した制御方法に従った制御が終了した段階で、制御管理部32が設定された制御方法をクリアし、この状態ではICチップ3内のアプリケーションプログラムやデータの制御処理ができないようにすることができる。
なお、本例では、制御方法をICチップ3に設定した例について説明しているが、予めICチップ3に設定された制御方法が利用できるか否かのフラグ情報を設定するようにしてもよい。
【0026】
次に、本実施形態にかかるICチップ制御方法について説明する。
まず、図6を参照してシステム全体の処理の流れについて説明する。なお、初期状態においては、携帯端末2はクライアントモード状態となっている。
図6において、まず携帯端末2のセッション管理部21が、クロック部23を参照して端末時刻情報を取得すると共に、乱数(端末乱数)を生成して記憶部20に記憶し、生成した端末乱数及び端末時刻情報をリーダライタ205を介してICチップ3に通知する(S101)。
【0027】
ICチップ3では、認証・セッション管理部31が、通信部303を介して携帯端末2から送信された情報を受信し、受信した端末時刻情報を記憶部30に記憶する(S102)。
認証・セッション管理部31は、生成したチップ乱数、端末時刻情報、端末乱数及びチップIDを組み合わせたデータをICチップ秘密鍵1で暗号化した電子署名データ(C1)を生成し、生成した電子署名データ(C1)とチップIDとを通信部303を介して携帯端末2へ送信する(S103)。
【0028】
携帯端末2がリーダライタ205を介して送信された情報を受信すると、セッション管理部21は、セッション情報として端末時刻情報、端末乱数及び端末IDを組み合わせたデータのハッシュ値(H1)を生成し、生成したセッション情報とICチップ3から受信した電子署名データ(C1)と、チップID、端末IDとを通信部201を介してサーバ1へ送信する(S104)。
【0029】
サーバ1では所定の鍵データを用いて電子署名データの検証を行い、受信した電子署名データ及びセッション情報が適正か否か判別する(S105)。この電子署名データ(C1)の検証処理は、サーバ1がチップIDに対応するICチップ秘密鍵で電子署名データ(C1)を復号化することにより行うことができる。また、携帯端末2のセッション情報の確認は、サーバ1が、受信した端末時刻情報、端末乱数、端末IDを組み合わせたデータのハッシュ値(H1’)を生成し、生成したハッシュ値(H1’)と携帯端末2から受信したハッシュ値(H1)が適合するか判別することにより行うことができる。
【0030】
判別の結果、適正な電子書名データでない場合には、サーバ1はセッション情報をクリアし、携帯端末2及びICチップ3のエラー履歴情報を記憶し、ICチップ3及び携帯端末2がサーバ1へ再度アクセスすることを禁止する処理を行い(S106)、処理を終了する。
【0031】
また、認証の結果、適正な電子署名データである場合には、サーバ1は、処理対象の携帯端末2の端末IDをセットすると共に、携帯端末2に送信するための新たなセッション情報を生成してサーバ1の所定の記憶部へ記憶すると共に、生成したセッション情報とサーバ乱数、サーバIDを携帯端末2へ送信する(S107)。新たなセッション情報としては、サーバ1が生成したサーバ乱数と、サーバID、取得した端末時刻情報、端末乱数を組み合わせたデータのハッシュ値(H2”)を用いることができる。
【0032】
携帯端末2のセッション管理部21が、通信部201を介してサーバ1から送信されたセッション情報を受信すると、このセッション情報が適正であるか否か判別する(S108)。この処理は、セッション管理部21が、受信したサーバID及びサーバ乱数と、記憶部20に記憶しておいた端末時刻情報と、端末乱数との組み合わせデータのハッシュ値(H2)を生成し、このハッシュ値(H2)とサーバ1から受信したハッシュ値(H2”)とが一致するか否かを判別することにより行うことができる。
【0033】
判別の結果、適正でない場合には、セッション管理部21は、サーバ1に対してエラーを通知し、記憶部20に記憶しておいたセッション情報、端末時刻情報、端末乱数をクリアする(S109)。携帯端末2からエラーが通知されると、サーバ1は上述のS106の処理を行い処理を終了する。
【0034】
また、判別の結果、セッション情報が適正である場合には、セッション管理部21は、処理対象のサーバ1のサーバIDをセットし、新たなセッション情報を生成して記憶部20に記憶し、生成した新たなセッション情報、端末乱数、制御コマンドを要求するための要求コマンド、端末IDを通信部201を介してサーバ1に対して送信し、サーバ1に対して制御コマンドを要求する(S110)。
この際の生成するセッション情報は、例えば、端末ID、端末時刻情報、受信したサーバ乱数、要求コマンド、生成した端末乱数などの固有情報を組み合わせたデータに基づいて生成したハッシュ値(H3)から構成することができる。
【0035】
携帯端末2からセッション情報を受信したサーバ1は、受信したセッション情報の認証を行う(S111)。この認証処理は、サーバ1が送信された端末IDの確認を行うと共に、端末ID、端末タイマ、サーバ乱数、要求コマンド、端末乱数の各データの組み合わせからハッシュ値(H3”)を生成し、生成したハッシュ値(H3”)とサーバ1から受信したハッシュ値(H3)とが適合するか否かを判別することにより処理できる。
【0036】
認証の結果、セッション情報が適正でない場合には、上述のS106のエラー処理に移って処理を終了する。
また、認証の結果セッション情報が適正である場合には、サーバ1は、ICチップ3に対して所定の制御を行うためのICチップ制御コマンドが必要か確認し、必要なICチップ制御コマンドを生成し、これを暗号化する(S112)。このICチップ制御コマンドは、例えば、制御対象となるICチップ3のチップID、制御コマンド数、制御終了時刻、チップ乱数、サーバIDなどから構成することができ、これをサーバ1が保持するICチップ3の秘密鍵2により暗号化する。
【0037】
そして、サーバ1は、新たにセッション情報を生成し、暗号化したICチップ制御コマンドと、生成したセッション情報、サーバ乱数及びサーバIDを携帯端末2に対して送信する(S113)。この際サーバ1は、生成したセッション情報及びサーバ乱数を所定の記憶部に記憶する。このセッション情報は、例えば、サーバ1が乱数を生成し、生成したサーバ乱数、サーバID、端末時刻情報の組み合わせを基に生成したハッシュ値(H4”)を用いることができる。
なお、制御終了時刻の設定は、サーバ1が受信した端末時刻に、指定した処理を実行するために必要な制御終了時刻の概算値を加えて計算することにより設定できる。
【0038】
携帯端末2のセッション管理部21は、サーバ1から送信された情報を通信部201を介して受信すると、受信したセッション情報が適正か否か判別する(S114)。この処理は、セッション管理部21が、サーバIDの確認を行うと共に、受信したサーバ乱数、サーバID、端末時刻情報の組み合わせを基にハッシュ値(H4)を生成し、生成したハッシュ値(H4)にサーバ1から受信したハッシュ値(H4”)が適合するか否か判別することにより行うことができる。
そして、認証の結果、適正でないと判別された場合には、上述のS109以下のエラー処理に移り処理を終了する。
【0039】
引き続き、図7を参照して、認証の結果、セッション情報が適正であると判別された場合、通信制御部22が、サーバ1からのレスポンスデータに含まれているICチップ制御コマンドを検出すると、その制御対象となっているICチップ3との間で処理を行っている通信端末2のアプリケーションプログラムを一時休止させる(S115)。
そして、セッション管理部21は、暗号化されているICチップ制御コマンド情報、サーバID、端末乱数をリーダライタ205を介してICチップ3に送信する(S116)。
【0040】
ICチップ3は、通信部303を介して送信された情報を受信し、認証・セッション管理部31が、暗号化されているICチップ制御コマンドを、記憶部30に記憶されている秘密鍵1により復号化する(S117)。
【0041】
認証・セッション管理部31は、復号化されたICチップ制御コマンドに含まれるチップ乱数などのチップ固有情報が、記憶部30に記憶されている以前に生成したチップ乱数に適合するか判別する(S118)。
判別の結果、適合しない場合には、認証・セッション管理部31は記憶しておいたICチップ乱数などのチップ固有情報をクリアして携帯端末2に対してエラーを通知する(S119)。
これにより、エラー通知がされた携帯端末2のセッション管理部21は、前述のS106のエラー処理を行い処理を終了する。
【0042】
また、上述のS118の判別の結果、適合する場合には、認証・セッション管理部31は、記憶部30に記憶しておいた端末時刻と比較して制御終了時刻が未だ経過していないか判別する(S120)。
既に経過している場合には、認証・セッション管理部31は上述のS119以下のエラー処理を行い処理を終了する。
【0043】
また、未だ経過していない場合には、認証・セッション管理部31は、ICチップ制御コマンドに基づく制御内容がICチップ3にセットできるか否か判別する(S121)。
具体的には、認証・セッション管理部31が、記憶部30の制御条件情報を参照し、受信したサーバIDが登録されているか、制御コマンドのコマンド数等が制御条件情報の条件を満たしているか、またICチップ3内に受信したアプリケーションプログラムIDに対応するアプリケーションプログラムが存在するかなどを判別する。
これらの条件を満たしていない場合には、認証・セッション管理部31は上述のS119以下のエラー処理を行い処理を終了する。
【0044】
また、条件を満たしている場合には、認証・セッション管理部31が新たにセッション情報を生成して記憶部30に記憶すると共に、このセッション情報及び復号化した制御終了時刻を通信部303を介して携帯端末2に送信する。併せて、制御管理部32が、ICチップ制御コマンドに対応するICチップ3内のアプリケーションプログラムの制御可能フラグをオンにすることにより制御可能な状態に遷移させる(S122)。
この際送信するセッション情報としては、認証・セッション管理部31が制御終了時刻、端末乱数、チップIDを組み合わせに基づいてハッシュ値(H5)を生成し、この生成したハッシュ値をセッション情報とすることができる。
【0045】
携帯端末2は、リーダライタ205を介してセッション情報及び制御終了時刻を受信すると、セッション管理部21が、受信したセッション情報が適正か否か判別する(S123)。
この判別は、セッション管理部21が、受信した制御終了時刻と、記憶部20に記憶しておいた端末乱数及びチップIDの組み合わせに基づいてハッシュ値(H5”)を生成し、この生成したハッシュ値(H5”)に受信したハッシュ値(H5)が適合するか判別することにより行うことができる。
【0046】
判別の結果、適合しない場合には、上述のS109のエラー処理に移って処理を終了する。
また、判別の結果、適合する場合には、通信制御部22が、制御終了時刻を記憶部20に記憶してセットすると共に、記憶部20の端末の状態をサーバモードにセットすることによりサーバモードに遷移する(S124)。
なお、この際、通信制御部22が、携帯端末2の表示部202に制御終了時刻を表示させて、利用者に制御終了時刻などを確認させるようにしてもよい。また、所定の時間内にICチップ3からICチップ制御コマンドを受信しない場合には、通信制御部22がモードを自動的にクライアントモードに戻してもよい。
【0047】
引き続き図8において、携帯端末2がサーバモード状態で、サーバ1からICチップ制御コマンドが送信されると、セッション管理部21はチップ制御コマンドに対するアプリケーションプログラムの処理を禁止して、チップ制御コマンドをICチップ3にそのまま送信する(S125)。
ICチップ制御コマンドを受信した制御管理部32は、ICチップ3内の所定のアプリケーションプログラムを実行させることにより、サーバ1からの制御コマンドに従ったデータの処理を実行する(S126)。
なお、制御管理部32がサーバ1からのICチップ制御コマンドが、指定コマンド数などの制御条件に適合するか判別し、適合する場合にのみ制御コマンドに基づく処理を実行させるようにしてもよい。
【0048】
そして、制御管理部32は、携帯端末2を介してサーバ1に対してアクセスレスポンスを返す(S127)。この際も、携帯端末2はサーバモードであるため、このレスポンスデータをスルーしてそのままサーバ1に通知する。
アクセスレスポンスを受け取ったサーバ1は、このレスポンスに対するICチップ3の制御コマンドを送信し(S128)、これに対してICチップ3からのアクセスレスポンスを返す処理(S129)を、所定の処理を実行するために必要なだけ繰り返して行う。
この間も、携帯端末2は、サーバモードであるため、サーバ1とICチップ3との間の制御コマンドやレスポンスデータ等をスルーして送信する。
【0049】
そして、携帯端末2の通信制御部22は、クロック部23を参照して、サーバ1から指定された制御終了時刻となった場合には、記憶部20の端末状態をサーバモードからクライアントモードに遷移させ(S130)、上述のS101以降のクライアントモードの処理に移行する。
【0050】
次に、携帯端末2がクライアントモードの際の、詳細な処理の流れについて図9を参照して説明する。
図9において、端末2が保持している所定のアプリケーションプログラムが起動、所定の処理の実行通知がされると(S201)、セッション管理部21が、指定された処理が所定のサーバ1に対する処理か、ICチップ3に対する処理か又はアプリケーションプログラムの終了のいずれの処理か判別する(S202)。
【0051】
判別の結果、アプリケーションプログラムの終了である場合には、セッション管理部21は起動しているアプリケーションプログラムを終了させる(S203)。
また、所定のサーバ1に対する処理であると判別された場合には、セッション管理部21が指定されたサーバ1のアドレスからデータの送信可能なサーバ1のアドレスか否かを記憶部20の外部ノードアクセス条件テーブルを参照して判別する(S211)。
外部ノードアドレス条件テーブルに該当するサーバ1の情報がない場合、即ちアクセスできないサーバ1の場合には所定のエラー処理を行いS201に戻ってアプリケーションプログラムからの次の処理を待って実行する(S212)。
【0052】
データ送信が可能なサーバ1であると判別された場合には、セッション管理部21が外部ノードアクセス条件テーブルに記憶されたアドレス等に従って、データを送信し(S213)、サーバ1からのデータの受信が指定時間内にあるか否か判別する(S214)。
なお、サーバ1へデータの送信ができない場合には、セッション管理部21が所定の間隔でサーバ1に対するデータ送信処理をリトライするようにしてもよい。
【0053】
サーバ1から指定時間内にデータの受信がない場合には、セッション管理部21は、アプリケーションプログラムへエラーを通知し、上述の処理S201に戻って処理を繰り返す(S215)。
また、サーバ1からデータの送信があった場合には、セッション管理部21は、サーバからのデータを受信する(S216)。
【0054】
引き続き、図10において、セッション管理部21は、サーバ1からの送信データに制御要求情報があるか否か判別する(S217)。
制御要求情報がある場合には、アプリケーションプログラムを一時休止する(S218)。
そして、アプリケーションプログラムを休止してから、或いはS217の処理でサーバ1からのデータに制御要求情報がない場合には、セッション管理部21はサーバ1からのデータにICチップ3向けのデータがあるか否か判別する(S219)。
【0055】
判別の結果、ICチップ3向けのデータがあると判別された場合には、後述するICチップ3に対する処理に移行する。
また、ICチップ3向けのデータがない場合には、通信端末2に対する処理としてアプリケーションプログラムにデータを返して(S220)、S211の処理に戻ってアプリケーションプログラムからの処理実行を待つ。
【0056】
また、図9において、アプリケーションプログラムからの処理がICチップ3への処理である場合には、セッション管理部21が入力されたデータをICチップへ送信する(S231)。
セッション管理部21は、ICチップ3からのデータ受信が指定時間内にあったか否か判別する(S232)。
なお、ICチップ3へデータの送信ができない場合には、セッション管理部21が所定の間隔でICチップ3に対するデータ送信処理をリトライするようにしてもよい。
【0057】
ICチップ3から指定時間内に返信がない場合には、セッション管理部21はアプリケーションプログラムに対してエラーを通知し(S233)、上述のS201の処理に戻ってアプリケーションプログラムからの指示を待つ。
【0058】
また、ICチップ3から所定のデータが返信された場合には、セッション管理部21はICチップ3から送信されたデータを受信し(S234)、当該ICチップ3からのデータにサーバ1から通知された制御終了時刻情報が含まれているか否か判別する(S235)。
判別の結果、制御終了時刻情報が含まれていない場合には、セッション管理部21は、ICチップ3から受信したデータをアプリケーションプログラムに通知し(S236)、S201の処理に戻る。
また、判別の結果、制御終了時刻情報が含まれている場合には、通信制御部22が後述するサーバモードの処理へ遷移する(S237)。
【0059】
次に、携帯端末2がサーバモードとなった場合の詳細な処理について図11を参照して説明する。
図11において、ICチップ3を介してサーバ1から制御終了時刻情報を受信すると、通信制御部22は記憶部20に制御終了時刻を記憶してセットし、制御終了時刻のカウントダウンを開始する(S301)。
通信制御部22は、クロック部23を参照して現在時間が制御終了時刻を超えたか否か判別する(S302)。
【0060】
判別の結果、制御終了時刻を超えた場合には、通信制御部22は記憶部20に記憶していた制御終了時刻を初期化してタイマを終了する(S303)。
そして、通信制御部22は、アプリケーションプログラムの休止を解除してクライアントモードに遷移する(S304)。
【0061】
また、S302の判別の結果、制御終了時刻を超えていない場合には、通信制御部22は、サーバ1からのデータ受信が指定時間以内にあるか判別する(S305)。
判別の結果、指定時間内にデータの受信がない場合には、通信制御部22は、サーバ1に対してエラーを通知し(S306)、上述のS303、S304の処理に移る。
【0062】
またS305の判別の結果、サーバ1からデータの送信があった場合には、通信制御部22はサーバ1からのデータを受信し(S307)、受信したデータが指定されたサーバ1からの受信か否か判別する(S308)。
判別の結果、指定されたサーバ1からのデータでない場合には、上述のS309の処理に移ってエラー処理を行う。
【0063】
また、判別の結果、指定されたサーバ1からのデータである場合には、通信制御部22は利用者に対してサーバ1から通知された制御終了時刻等を表示部202に表示して利用者が処理に同意するか否か判別する(S310)。
判別の結果利用者が同意しない場合には、通信制御部22は上述のS309の処理と同様にサーバ1に対してエラー通知を行い、S303、S304のエラー処理を行う。
【0064】
また、S310の処理で、利用者が同意したと判別された場合には、通信制御部22は、サーバ1から通知された制御コマンド等のデータに、サーバモードの終了識別データが含まれているか判別する(S311)。
サーバモード終了識別データは、サーバ1側から携帯端末2のサーバモードの終了を指示する旨のデータである。
【0065】
判別の結果、サーバモード終了識別データが含まれている場合には、通信制御部22は、上述のS303、S304の処理を行い、サーバモードからクライアントモードへ遷移させる処理を行う。
また、判別の結果、サーバモード終了識別データが含まれていない場合には、サーバ1から受信したデータに対するアプリケーションプログラムの処理を禁止し、このデータをICチップ3へそのままスルーして送信する(S312)。
【0066】
そして、通信制御部22は、ICチップ3からデータ受信が指定時間内にあるか否か判別する(S313)。
なお、ICチップ3からのデータがない場合に、通信制御部22がICチップ3へのデータ送信を所定時間間隔でリトライしてもよい。
【0067】
S313の処理で、ICチップ3から指定時間内にデータの受信がないと判別された場合には、上述のS309のエラー処理を行う。
また、判別の結果、ICチップから返信データの送信があった場合には、通信制御部22は送信されてきたデータを受信する(S314)。
【0068】
引き続き図12において、ICチップ3からのデータを受信すると、通信制御部22はICチップ3からのデータにサーバモード終了識別データが含まれているか否か判別する(S315)。
判別の結果、サーバモード終了識別データが含まれている場合には、通信制御部22は、上述のS303、S304のクライアントモードへ遷移するための処理を行う。
また、判別の結果、サーバモード終了データが含まれていない場合には、通信制御部22はICチップ3から送信されたデータをサーバ1に対するレスポンスデータとして送信し(S316)、上述のS302以下の処理を繰り返して行う。
これにより、ICチップ3からのデータをそのままスルーしてサーバ1へ送信することができる。
【0069】
次に、携帯端末2がサーバモード状態の際の、ICチップ3の詳細な処理について図13を参照して説明する。
図13において、携帯端末2がサーバモード状態で、サーバ1がICチップに対してICチップ秘密鍵3で暗号化した制御コマンドを送信すると、ICチップ3の制御管理部32が制御コマンドを受信し、暗号化されている制御コマンドを復号化する(S401)。
この際、サーバ1はICチップ制御コマンドデータ、ICチップ乱数、サーバIDの組み合わせをして送信してもよい。
【0070】
制御コマンドを受信すると、制御管理部32は制御コマンドに対応するアプリケーションプログラムが制御可能状態、即ちセキュリティドメインを介してアプリケーションプログラムに対して直接制御が可能となっているか否かを判別する(S402)。
判別の結果、制御可能でない場合には携帯端末2に対してエラーを通知して、処理を終了する(S403)。これにより、携帯端末2は自動的にサーバモードからクライアントモードに切り替り、その旨サーバ1に通知される。
【0071】
一方、制御可能な状態となっている場合には、制御管理部32は、受信した制御コマンドが事前に制御条件情報に設定されている制御内容に該当するか否か判別する(S404)。
判別の結果、事前に設定された制御内容でない場合には、携帯端末2に対して制御終了を通知して処理を終了する(S405)。
【0072】
また、判別の結果、事前に設定された制御内容である場合には、制御管理部32は、記憶部30に記憶されている制御条件情報を参照して、通知されたICチップ制御コマンドの制御条件に適合するか否か判別する(S406)。この処理は、制御管理部32が制御条件情報に記憶されている制御コマンド数、指定コマンド、指定データ、コマンド順序などの制御方法に適合しているか判別することにより処理することができる。
【0073】
判別の結果、制御条件に適合しない場合には、制御管理部32は、不正な制御コマンド受信のカウンタアップする(S407)。
そして、制御管理部32は、カウンタアップした後のカウンタ値が、予め設定された上限値を超えたか否か判別する(S408)。
判別の結果、上限値を超えていない場合には、制御管理部32は、上述のS403の処理に移り携帯端末2に対してエラーを通知する。
また、カウンタ値が上限値を超えた場合には、制御管理部32はICチップアプリケーションプログラムの制御をロックして制御不能とし(S409)、上述のS403の処理に移り携帯端末2に対してエラーを通知する。
【0074】
また、上述のS406の処理で受信した制御コマンドが制御条件に適合すると判別された場合には、ICチップ3の所定のアプリケーションプログラムが制御コマンドに従った処理を実行する(S410)。
そして、制御管理部32は、アプリケーションプログラムによる全ての処理が終了したか否か判別する(S411)。
判別の結果、全ての処理が終了していない場合には、制御結果を携帯端末2に対して通知する(S412)。これにより、携帯端末2では通知された制御結果をそのままスルーしてサーバ1に送信する。
また、判別の結果、全ての処理が終了した場合には、制御管理部32はアプリケーションプログラムを制御不能な状態に戻して(S413)、上述のS412の処理同様、制御結果を携帯端末2に対して通知して処理を終了する。
【0075】
このように、携帯端末2の通信制御部22により、サーバ1が生成した制御終了時刻をICチップ3を介して取得し、この制御終了時刻まで、サーバ1からICチップ3に対して送信される制御コマンドに対する端末アプリケーションプログラムによる処理を禁止して、制御コマンドをICチップにそのままスルーして送信するようにしたことから、たとえ携帯端末2のアプリケーションプログラムが改変等されていても、サーバ1からの制御コマンドを携帯端末2のアプリケーションプログラムによって不正な制御コマンドに変えてICチップ3に対して不正な処理を行わせることを防止することができ、セキュリティ性が向上することとなる。
また、この制御時刻はサーバ1側で安全に設定することができるため、処理の内容や携帯端末2の種類などに応じて適宜制御時間を変更することも可能となり、セキュリティ性が高くなる。
さらに、携帯端末2をサーバモードとする時間を区切ることで、これを時間貸しするサービスに適用することができるようになる。
【0076】
また、サーバ1とICチップ3との間のセッションを常に確立しておく必要がなく、この制御終了時刻までの時間だけサーバ1とICチップ3との間のセッションを確立しておけばよいから、携帯端末2のような少ないネットワークリソースであっても効率的に処理することができる。
【0077】
また、携帯端末2の表示部202により、サーバ1から通知された制御終了時刻を表示して、ユーザに対して処理の実行に同意か否か確認するための情報を出力して利用者の同意を得てから処理するようにすれば、ICチップ3に利用者の情報が記憶されている場合など、ICチップ3に対して勝手にサーバ1がアクセスして、処理を行わせることを防止でき、利用者のプライバシー保護を図ることができる。
また、事前に利用者の同意内容をICチップ3又は携帯端末2に設定することで自動的に処理を行わせてもよい。
【0078】
また、セッション管理部21により、サーバ1又はICチップ3との間でクライアントモードで個別にセッションを確立する場合、所定の固有情報に基づくハッシュ値に基づいてサーバ1又はICチップ3の認証を行うようにしたことことから、ハッシュ値を用いて簡易にセッションを確立するための認証処理を行うことができる。また、乱数やIDなどの所定の固有情報のハッシュ値を携帯端末2が常時秘密情報を保持しなくとも簡易に認証することができ、携帯端末2の負荷を軽減しなから、セッションを確立することができる。
【0079】
また、ICチップ3の記憶部30に制御コマンドを実行するための制御条件を記憶しておき、制御管理部32が、携帯端末2をスルーしてサーバ1から通知された制御コマンドが制御条件に合致するか否か判別してから制御コマンドに基づく処理を実行するようにしたことから、たとえ、携帯端末2が不正に操作されて常時サーバモードとなって、不正な制御コマンドが入力されても、ICチップ3側でこれをチェックして、予め設定されていない不正なコマンドの実行を禁止することができ、よりセキュリティ性を高めることができる。
【0080】
上述の実施形態では、外部装置としてサーバ1を用いた例について説明したが、本発明の外部装置はこれに限定されるものでなく、例えば、所定のセキュリティモジュールが装着された端末や、信頼ある携帯端末でもよい。
【0081】
本実施形態のサーバ1、携帯端末2或いはICチップ3用のコンピュータプログラムを、コンピュータ読み取り可能な媒体(FD、CD−ROM等)に格納して配布してもよいし、搬送波に重畳し、通信ネットワークを介して配信することも可能である。
【0082】
【発明の効果】
本発明によれば、通信端末に接続されるICチップを、通信端末を介して外部装置により安全かつ効率的に制御することができる。
【図面の簡単な説明】
【図1】 本発明にかかるICチップ制御システム、通信端末及びコンピュータプログラムを適用したシステムの一実施形態の概略構成図。
【図2】 本実施形態にかかるシステムの機能ブロック図。
【図3】 本実施形態にかかるサーバの記憶部に記憶されるデータの一例を示した図。
【図4】 本実施形態にかかる携帯端末の記憶部に記憶されるデータの一例を示した図。
【図5】 本実施形態にかかるICチップの記憶部に記憶されるデータの一例を示した図。
【図6】 本実施形態にかかるシステムの全体の処理の流れを示した処理フロー。
【図7】 図6に引き続き本実施形態にかかるシステムの全体の処理の流れを示した処理フロー。
【図8】 図7に引き続き本実施形態にかかるシステムの全体の処理の流れを示した処理フロー。
【図9】 本実施形態にかかる携帯端末がクライアントモードの時の詳細な処理の流れを示した処理フロー。
【図10】 図9に引き続き本実施形態にかかる携帯端末の詳細な処理の流れを示した処理フロー。
【図11】 本実施形態にかかる携帯端末がサーバモードの時の詳細な処理の流れを示した処理フロー。
【図12】 図11に引き続き本実施形態にかかる携帯端末がサーバモードの時の詳細な処理の流れを示した処理フロー。
【図13】 本実施形態にかかる携帯端末がサーバモードの時のICチップの詳細な処理の流れを示した処理フロー。
【符号の説明】
1 サーバ
2 携帯端末
3 ICチップ
20 記憶部
21 セッション管理部
22 通信制御部
23 クロック部
30 記憶部
31 認証・セッション管理部
32 制御管理部
201 通信部
202 表示部
203 入力部
204 メモリ
205 リーダライタ
206 CPU
301 メモリ
302 CPU
303 通信部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a technique for controlling an IC chip connected to a communication terminal by an external device via the communication terminal.
[0002]
[Prior art]
Conventionally, an IC chip is connected to a communication terminal such as a mobile phone terminal, and the IC chip is controlled to execute a predetermined process via a communication terminal based on a control command from an external device such as a predetermined server. Things have been done.
In such a system, for example, a user or an agent starts an application of a communication terminal and accesses a server. The IC chip control command is notified from the server to the communication terminal. The application program of the communication terminal transmits the notified IC chip control command to the connected IC chip and receives the control result (response data) from the IC chip. Then, a series of processing is performed in which the application program of the communication terminal transmits the reception result from the IC chip to the server and returns the transmission result from the server to the communication terminal.
[0003]
In consideration of the security of the application program on the communication terminal, there are two modes: a program mode in which the application program operates on the communication terminal, and a packet mode in which the card number is read from the IC card and transmitted to the server. There has been proposed a system that automatically switches and processes this by a program downloaded from a server (for example, Patent Document 1). In addition, there has been proposed a system that reduces the processing load of the client terminal by providing the server with the process of driving the IC chip to the client terminal (for example, Patent Document 2).
[0004]
[Patent Document 1]
JP 2001-222595 A
[Patent Document 2]
JP 2001-282528 A
[0005]
[Problems to be solved by the invention]
However, since processing is performed using an application program installed in a communication terminal as in a conventional system, the application program on the communication terminal can be replaced or rewritten, so maliciously If the application program of the communication terminal is replaced, there is a problem that it is impossible to reliably control the IC chip.
[0006]
Further, as disclosed in Japanese Patent Application Laid-Open No. 2001-222595, depending on the downloaded program, the conditions to be changed cannot be handled when the program is replaced or modified during communication. There was a problem with security.
[0007]
Further, if all the programs for driving the IC chip are provided on the server side as in JP-A-2001-282528, it is necessary to always establish a session between the IC chip and the server. There was a problem that a lot was needed. Such a problem is not practical on a system with few network resources such as a mobile phone terminal.
[0008]
The present invention has been made to solve the above-described problems, and provides a mechanism for safely and efficiently controlling an IC chip connected to a communication terminal by an external device via the communication terminal. Let it be an issue.
[0009]
[Means for Solving the Problems]
In order to solve the above-described problem, an IC chip control system according to one aspect of the present invention can communicate with an external device that generates a control command for causing the IC chip to execute a predetermined process, and the external device. A mobile communication terminal configured to hold an application program for performing a predetermined process, and configured to be able to connect to or communicate with the mobile communication terminal, and according to a control command from the external device via the mobile communication terminal The external device generates a control end time for ending control on the IC chip, and the mobile communication terminal generates the control generated by the external device. Until the control end time is acquired, the application for the control command transmitted from the external device to the IC chip is obtained. Prohibits processing by Deployment program, characterized in that it transmits the control command to the IC chip.
[0010]
Further, the IC chip stores storage means for storing a control condition for executing the control command, and whether or not the control command transmitted as it is from the communication terminal matches the control condition stored in the storage means. And control means for executing processing based on the control command received from the server when the control condition is met.
[0011]
A communication terminal according to an aspect of the present invention executes an external device that generates a control command for causing an IC chip to execute a predetermined process, and executes a predetermined process according to the control command from the external device A communication terminal configured to be able to communicate with an IC chip, acquiring an application program for performing predetermined processing and a control end time generated by the external device, and from the external device until the control end time Communication control means for prohibiting processing by the application program on a control command transmitted to the IC chip and transmitting the control command to the IC chip as it is.
[0012]
In addition, the communication control means may prohibit sending the control command for the IC chip as it is from the external device when the control end time notified from the external device has passed. In addition, when there is an application program that performs processing on the IC chip, the communication control unit may suspend the application program until the control end time notified from the server.
[0013]
The information processing apparatus may further include output means for displaying the control end time notified from the external device and outputting information for confirming whether the user agrees to execute the process.
[0014]
Further, when establishing a session individually with the external device or the IC chip, it further includes an authentication processing means for authenticating the external device or the IC chip based on a hash value based on predetermined specific information. Good.
The communication terminal may be a portable communication terminal.
[0015]
A computer program according to an aspect of the present invention executes an external device that generates a control command for causing an IC chip to execute a predetermined process, and executes a predetermined process according to the control command from the external device A computer program for causing a computer to function as a communication terminal configured to be communicable with an IC chip and holding an application program for performing predetermined processing, the control end time generated by the external device for the computer And processing for prohibiting the processing by the application program for the control command transmitted from the external device to the IC chip until the acquired control end time, and transmitting the control command to the IC chip as it is Are executed.
[0016]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, an embodiment of a system to which an IC chip control system, an IC chip, a communication terminal, and a computer program according to the present invention are applied will be described with reference to the drawings.
FIG. 1 shows an outline of the overall configuration of a system according to the present embodiment. In FIG. 1, a system according to the present embodiment includes a
[0017]
The
The
Further, for example, as shown in FIG. 3, the
Further, as shown in FIG. 3, the control content and the control end time when the control is performed can be stored in the storage unit of the
[0018]
The
As shown in FIG. 1, the
Note that the
With these configurations, the
[0019]
As illustrated in FIG. 4, the
The
The external node access condition table can store which
The AP state table is a table representing the state of the application program, and for example, information representing states such as hibernation, non-activation and activation can be stored for each application.
The terminal state information is information indicating whether the
[0020]
The
Also, when establishing a session, the
In addition, the
[0021]
The
In addition, when the control end time notified from the
[0022]
As shown in FIG. 1, the
With these configurations, the functional blocks of the
[0023]
The
The application information shown in FIG. 5 is information of an IC chip application corresponding to an application program such as the
In addition, as information set in the
The control condition information is information representing the control condition for the control content, and the control content for the
[0024]
The authentication /
[0025]
The
Further, the
In this example, an example in which the control method is set to the
[0026]
Next, the IC chip control method according to the present embodiment will be described.
First, the processing flow of the entire system will be described with reference to FIG. In the initial state, the
6, first, the
[0027]
In the
The authentication /
[0028]
When the
[0029]
The
[0030]
If it is determined that the electronic book name data is not appropriate, the
[0031]
If the authentication results in proper electronic signature data, the
[0032]
When the
[0033]
If the determination result shows that the
[0034]
If the session information is appropriate as a result of the determination, the
The session information generated at this time is composed of, for example, a hash value (H3) generated based on data obtained by combining unique information such as a terminal ID, terminal time information, a received server random number, a request command, and a generated terminal random number. can do.
[0035]
The
[0036]
If the session information is not proper as a result of the authentication, the process proceeds to the error process of S106 described above and ends.
If the session information is appropriate as a result of the authentication, the
[0037]
Then, the
The control end time can be set by calculating the terminal time received by the
[0038]
When the
If it is determined as a result of the authentication that it is not appropriate, the process proceeds to the error process in S109 and the subsequent steps, and the process is terminated.
[0039]
Next, referring to FIG. 7, when it is determined that the session information is appropriate as a result of the authentication, when the
The
[0040]
The
[0041]
The authentication /
As a result of the determination, if it does not match, the authentication /
Thereby, the
[0042]
If the result of the determination in S118 described above is appropriate, the authentication /
If it has already passed, the authentication /
[0043]
If it has not yet elapsed, the authentication /
Specifically, the authentication /
If these conditions are not satisfied, the authentication /
[0044]
If the condition is satisfied, the authentication /
As session information to be transmitted at this time, the authentication /
[0045]
When the
In this determination, the
[0046]
If the result of determination is that they do not match, the process proceeds to the error process of S109 described above and ends.
In addition, if the result of determination is that it matches, the
At this time, the
[0047]
In FIG. 8, when the
The
Note that the
[0048]
And the
Upon receiving the access response, the
Also during this time, since the
[0049]
Then, the
[0050]
Next, a detailed processing flow when the
In FIG. 9, when a predetermined application program held by the
[0051]
If it is determined that the application program is terminated, the
If it is determined that the processing is for the
If there is no information of the
[0052]
If it is determined that the
When data cannot be transmitted to the
[0053]
If no data is received from the
When data is transmitted from the
[0054]
Subsequently, in FIG. 10, the
If there is control request information, the application program is temporarily suspended (S218).
Then, after suspending the application program or when there is no control request information in the data from the
[0055]
As a result of the determination, if it is determined that there is data for the
If there is no data for the
[0056]
In FIG. 9, when the process from the application program is the process to the
The
When data cannot be transmitted to the
[0057]
If there is no reply from the
[0058]
When predetermined data is returned from the
If the control end time information is not included as a result of the determination, the
If the control end time information is included as a result of the determination, the
[0059]
Next, detailed processing when the
In FIG. 11, when the control end time information is received from the
The
[0060]
If the control end time is exceeded as a result of the determination, the
Then, the
[0061]
If the control end time is not exceeded as a result of the determination in S302, the
As a result of the determination, if no data is received within the specified time, the
[0062]
If it is determined in step S305 that data is transmitted from the
If it is determined that the data is not from the designated
[0063]
If the data is from the specified
If the user does not agree as a result of the determination, the
[0064]
If it is determined in step S310 that the user has agreed, the
The server mode end identification data is data for instructing the end of the server mode of the
[0065]
If the server mode end identification data is included as a result of the determination, the
If the server mode end identification data is not included as a result of the determination, the application program processing for the data received from the
[0066]
Then, the
When there is no data from the
[0067]
If it is determined in the process of S313 that no data is received from the
If the response data is transmitted from the IC chip as a result of the determination, the
[0068]
In FIG. 12, when data from the
If the server mode end identification data is included as a result of the determination, the
If the server mode end data is not included as a result of the determination, the
Thereby, the data from the
[0069]
Next, detailed processing of the
In FIG. 13, when the
At this time, the
[0070]
When receiving the control command, the
If the result of determination is that control is not possible, an error is notified to the
[0071]
On the other hand, when it is in a controllable state, the
As a result of the determination, if the control content is not set in advance, the
[0072]
When the control content is set in advance as a result of the determination, the
[0073]
As a result of the determination, if the control condition is not met, the
Then, the
As a result of the determination, if the upper limit value is not exceeded, the
If the counter value exceeds the upper limit value, the
[0074]
In addition, when it is determined that the control command received in the process of S406 described above meets the control conditions, a predetermined application program of the
Then, the
As a result of the discrimination, if all the processes are not completed, the control result is notified to the portable terminal 2 (S412). As a result, the
If all the processes are completed as a result of the determination, the
[0075]
As described above, the control end time generated by the
Further, since the control time can be safely set on the
Furthermore, by dividing the time for which the
[0076]
Further, it is not necessary to always establish a session between the
[0077]
In addition, the control end time notified from the
In addition, the contents of the user's consent may be set in the
[0078]
When the
[0079]
In addition, the control condition for executing the control command is stored in the
[0080]
In the above-described embodiment, an example in which the
[0081]
The computer program for the
[0082]
【The invention's effect】
According to the present invention, an IC chip connected to a communication terminal can be controlled safely and efficiently by an external device via the communication terminal.
[Brief description of the drawings]
FIG. 1 is a schematic configuration diagram of an embodiment of a system to which an IC chip control system, a communication terminal, and a computer program according to the present invention are applied.
FIG. 2 is a functional block diagram of a system according to the present embodiment.
FIG. 3 is a view showing an example of data stored in a storage unit of a server according to the embodiment.
FIG. 4 is a view showing an example of data stored in a storage unit of the mobile terminal according to the embodiment.
FIG. 5 is a view showing an example of data stored in a storage unit of the IC chip according to the embodiment.
FIG. 6 is a processing flow showing the overall processing flow of the system according to the embodiment.
FIG. 7 is a processing flow showing the overall processing flow of the system according to the present embodiment following FIG. 6;
FIG. 8 is a processing flow showing the overall processing flow of the system according to the present embodiment following FIG. 7;
FIG. 9 is a processing flow showing a detailed processing flow when the mobile terminal according to the present embodiment is in a client mode.
FIG. 10 is a processing flow showing a detailed processing flow of the mobile terminal according to the present embodiment following FIG. 9;
FIG. 11 is a processing flow showing a detailed processing flow when the mobile terminal according to the present embodiment is in a server mode.
FIG. 12 is a processing flow showing a detailed processing flow when the mobile terminal according to the present embodiment is in the server mode, continuing from FIG. 11;
FIG. 13 is a processing flow showing a detailed processing flow of the IC chip when the mobile terminal according to the embodiment is in a server mode.
[Explanation of symbols]
1 server
2 Mobile devices
3 IC chip
20 storage unit
21 Session Management Department
22 Communication control unit
23 Clock part
30 storage unit
31 Authentication / Session Management Department
32 Control Manager
201 Communication unit
202 Display section
203 Input section
204 memory
205 Reader / Writer
206 CPU
301 memory
302 CPU
303 Communication unit
Claims (7)
前記外部装置は、ICチップに対する制御を終了する制御終了時刻を生成し、
前記携帯通信端末は、前記外部装置が生成した制御終了時刻を取得して、この制御終了時刻まで、前記外部装置からICチップに対して送信される制御コマンドに対する前記アプリケーションプログラムによる処理を禁止して、前記制御コマンドをICチップにそのまま送信する、
ことを特徴とするICチップ制御システム。An external device that generates a control command for causing the IC chip to execute a predetermined process; a portable communication terminal configured to communicate with the external device and holding an application program for performing the predetermined process; An IC chip configured to connect to or communicate with a mobile communication terminal and to execute predetermined processing in response to a control command from the external device via the mobile communication terminal,
The external device generates a control end time for ending control on the IC chip,
The mobile communication terminal obtains a control end time generated by the external device and prohibits processing by the application program for a control command transmitted from the external device to the IC chip until the control end time. The control command is transmitted to the IC chip as it is.
An IC chip control system characterized by the above.
前記通信端末からそのまま送信された制御コマンドが、前記記憶手段に記憶されている制御条件に合致するか否か判別し、前記制御条件に合致する場合に前記サーバから受信した制御コマンドに基づく処理を実行させる制御手段を有する、
請求項1記載のICチップ制御システム。The IC chip has storage means for storing control conditions for executing a control command;
It is determined whether or not the control command transmitted as it is from the communication terminal matches the control condition stored in the storage means, and when the control command matches the control condition, processing based on the control command received from the server is performed. Having control means to execute,
The IC chip control system according to claim 1.
所定の処理を行うためのアプリケーションプログラムと、
前記外部装置が生成した制御終了時刻を取得して、この制御終了時刻まで、前記外部装置からICチップに対して送信される制御コマンドに対する前記アプリケーションプログラムによる処理を禁止して、前記制御コマンドをICチップにそのまま送信する通信制御手段と、
を有することを特徴とする通信端末。An external device that generates a control command for causing the IC chip to execute a predetermined process, and a communication terminal configured to be able to communicate with the IC chip that executes the predetermined process in response to the control command from the external device There,
An application program for performing predetermined processing;
The control end time generated by the external device is acquired, and until this control end time, the processing by the application program for the control command transmitted from the external device to the IC chip is prohibited, and the control command is changed to IC Communication control means for transmitting to the chip as it is,
A communication terminal comprising:
請求項3記載の通信端末。The communication control unit prohibits the external device from directly transmitting a control command to the IC chip when the control end time notified from the external device has elapsed;
The communication terminal according to claim 3.
請求項3〜4のいずれかの項に記載の通信端末。It further includes output means for displaying the control end time notified from the external device and outputting information for confirming whether or not the user agrees to execute the process.
The communication terminal according to any one of claims 3 to 4.
請求項3〜5のいずれかの項に記載の通信端末。In the case of individually establishing a session with the external device or IC chip, it further comprises an authentication processing means for authenticating the external device or IC chip based on a hash value based on predetermined specific information.
The communication terminal according to any one of claims 3 to 5.
コンピュータに対して、
前記外部装置が生成した制御終了時刻を取得する処理と、
前記取得した制御終了時刻まで、前記外部装置からICチップに対して送信される制御コマンドに対する前記アプリケーションプログラムによる処理を禁止して、前記制御コマンドをICチップにそのまま送信する処理と、
を実行させるコンピュータプログラム。An external device that generates a control command for causing the IC chip to execute a predetermined process, and an IC chip that executes the predetermined process in response to the control command from the external device are configured to communicate with the predetermined process. A computer program for causing a computer to function as a communication terminal that holds an application program for performing
Against the computer,
Processing for obtaining a control end time generated by the external device;
Processing for prohibiting processing by the application program for the control command transmitted from the external device to the IC chip until the acquired control end time, and transmitting the control command to the IC chip as it is;
A computer program that executes
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003033359A JP4103995B2 (en) | 2003-02-12 | 2003-02-12 | IC chip control system, communication terminal and computer program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2003033359A JP4103995B2 (en) | 2003-02-12 | 2003-02-12 | IC chip control system, communication terminal and computer program |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2004247815A JP2004247815A (en) | 2004-09-02 |
| JP4103995B2 true JP4103995B2 (en) | 2008-06-18 |
Family
ID=33019354
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2003033359A Expired - Lifetime JP4103995B2 (en) | 2003-02-12 | 2003-02-12 | IC chip control system, communication terminal and computer program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4103995B2 (en) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060059372A1 (en) * | 2004-09-10 | 2006-03-16 | International Business Machines Corporation | Integrated circuit chip for encryption and decryption having a secure mechanism for programming on-chip hardware |
| JP2006293746A (en) * | 2005-04-12 | 2006-10-26 | Nippon Telegraph & Telephone East Corp | Management server and management method |
| EP2033145B1 (en) | 2006-06-15 | 2011-04-06 | Kabushiki Kaisha Toshiba | Portable electronic device and control method thereof |
| WO2018225492A1 (en) * | 2017-06-05 | 2018-12-13 | ソニーセミコンダクタソリューションズ株式会社 | Communication device and control method |
-
2003
- 2003-02-12 JP JP2003033359A patent/JP4103995B2/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2004247815A (en) | 2004-09-02 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP1388989B1 (en) | Digital contents issuing system and digital contents issuing method | |
| US8132236B2 (en) | System and method for providing secured access to mobile devices | |
| KR100881938B1 (en) | System and method for managing multiple smart card sessions | |
| KR101654778B1 (en) | Hardware-enforced access protection | |
| US20090095812A1 (en) | System and method for managing multiple smart card sessions | |
| CN101663903A (en) | Secure soft sim credential transfer | |
| KR20040075293A (en) | Apparatus and method simplifying an encrypted network | |
| JP2007174633A (en) | Computer implementation method for securely acquiring binding key for token device and secure memory device, and system for securely binding token device and secure memory device | |
| CN102792313A (en) | Credential-based access to data | |
| JP2011222010A (en) | Method and system for securely and remotely startup, boot, and login from mobile device to computer | |
| CA2516718A1 (en) | Secure object for convenient identification | |
| KR20160123604A (en) | Method for managing of beacon device, and apparatus thereof | |
| JP7413879B2 (en) | Communication systems, electronic devices, and programs | |
| US20050250472A1 (en) | User authentication using a wireless device | |
| JP5779996B2 (en) | Wireless communication system | |
| JP2008299457A (en) | Authentication system, authentication method, and authentication socket device | |
| CA2905373C (en) | Method and apparatus for remote portable wireless device authentication | |
| US9323911B1 (en) | Verifying requests to remove applications from a device | |
| CN111125705A (en) | Capability opening method and device | |
| JP4103995B2 (en) | IC chip control system, communication terminal and computer program | |
| JP4833745B2 (en) | Data protection method for sensor node, computer system for distributing sensor node, and sensor node | |
| WO2021210594A1 (en) | Authentication verification system, device to be authenticated, authencation device, authentication verification method, authentication verification program, and computer-readable recording medium and recorded device | |
| JP2002366529A (en) | Device authentication system and device authentication method | |
| JP5937545B2 (en) | Mobile terminal, server device, information terminal, and shared terminal management system | |
| KR101386363B1 (en) | One-time passwords generator for generating one-time passwords in trusted execution environment of mobile device and method thereof |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20051130 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080304 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080319 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080319 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 4103995 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110404 Year of fee payment: 3 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120404 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130404 Year of fee payment: 5 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130404 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140404 Year of fee payment: 6 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| EXPY | Cancellation because of completion of term |