JP2004013728A - Icカードプログラムダウンロードシステム - Google Patents
Icカードプログラムダウンロードシステム Download PDFInfo
- Publication number
- JP2004013728A JP2004013728A JP2002169067A JP2002169067A JP2004013728A JP 2004013728 A JP2004013728 A JP 2004013728A JP 2002169067 A JP2002169067 A JP 2002169067A JP 2002169067 A JP2002169067 A JP 2002169067A JP 2004013728 A JP2004013728 A JP 2004013728A
- Authority
- JP
- Japan
- Prior art keywords
- card
- program
- code
- download system
- personal computer
- 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.)
- Pending
Links
Images
Landscapes
- Credit Cards Or The Like (AREA)
Abstract
【課題】
カード発行後の新プログラムをダウンロードしてインストールする作業を安全に円滑に行う仕組みを提供することを課題とする。
【解決手段】
ICカード5に備えられたカード管理手段51と、パソコンに備えられた代理ドライバ手段12と、カード発行者が設置するサーバー装置に備えられたアプレット提供手段21と、により構成され、前記代理ドライバ手段12が、前記アプレット提供手段21、および、前記カード管理手段51との中継機能を果たすことにより前記サーバー装置20から、アプリケーションプログラムをネットワークを通じて前記ICカード5にダウンロードすることにより上記課題を解決する。
【選択図】 図1
カード発行後の新プログラムをダウンロードしてインストールする作業を安全に円滑に行う仕組みを提供することを課題とする。
【解決手段】
ICカード5に備えられたカード管理手段51と、パソコンに備えられた代理ドライバ手段12と、カード発行者が設置するサーバー装置に備えられたアプレット提供手段21と、により構成され、前記代理ドライバ手段12が、前記アプレット提供手段21、および、前記カード管理手段51との中継機能を果たすことにより前記サーバー装置20から、アプリケーションプログラムをネットワークを通じて前記ICカード5にダウンロードすることにより上記課題を解決する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、ICカード発行後に利用者の手許にある当該ICカードにアプリケーションプログラムをダウンロードさせることが可能なICカードアプリケーションのダウンロードシステムに関する。
【0002】
【従来技術】
現在、磁気カードよりも便利でより安全なICカードが徐々に普及しつつある。磁気ストライプによる単なる磁気記録媒体として用いられる磁気カードと異なり、ICカードは、演算処理装置(CPU)を備え、ROMにプログラムを格納しておくことにより、単なる記録媒体としての働きではなく、何らかのアプリケーション機能をも備えた記録媒体として利用される。したがってICカードはスマートカードとも呼ばれることがある。
【0003】
ICカードは、一つのアプリケーションプログラムだけ記録させて単一機能のカードとして用いるだけではなく、複数のアプリケーションプログラムを格納させて、多機能なカードとして使うことや、搭載するアプリケーションプログラムをカード発行後に書き換えて、別の機能を備えたカードとしてあるいはバージョンアップした機能を備えたカードとして使うことが可能である。
【0004】
このような複数アプリケーションの搭載およびその利用、またカード発行後の新プログラム搭載またはプログラム書き換え等の運用を円滑に行うためには、ICカードそのものにメモリ管理、アプリケーション実行時のプロセス管理、セキュリティ管理などの管理的な機能を担当するプログラムであるOS(オペレーティングシステム)が必要となる。現在ICカードの汎用OSとしては、MULTOS(登録商標)とJavaCard(登録商標)が存在する。
【0005】
【発明が解決しようとする課題】
カード発行後の新プログラム搭載またはプログラム書き換えを行う場合、MULTOS(登録商標)カードの場合には、搭載すべき新プログラムをカードの持つ公開鍵で暗号化しておき、MULTOS(登録商標)カードはこれを自身の持つ秘密鍵で復号しながら内部に取込むことが可能となっている。すなわち、MULTOS(登録商標)においては、新アプリケーションプログラムをネットワーク経由で安全にダウンロードできる発行スキームが実現されている。具体的には、カード発行者(新プログラム供給者)とMULTOS(登録商標)カードの間の電子証明書による認証方式、送付するプログラムまたはデータの暗号化様式、その他の規約が定められている。
【0006】
一方、JavaCard(登録商標)の場合には、上記発行スキームに相当する仕組みが用意されていない。従って、カード発行後の新プログラムをネットワークを通じてダウンロードしてインストールする作業を安全に円滑に行うことができないという問題点があった。
【0007】
本発明はこのような問題点を考慮してなされたものであり、JavaCard(登録商標)の場合に、上記発行スキームに相当する仕組み、すなわちカード発行後の新プログラムをネットワークを通じてダウンロードしてインストールする作業を安全に円滑に行う仕組みを提供することを課題とする。
【0008】
【課題を解決するための手段】
課題を解決するための第1の発明は、ICカードに備えられたカード管理手段と、前記ICカードを挿入したICカードリーダーライタ装置を接続したパソコンに備えられた代理ドライバ手段と、カード発行者が設置するサーバー装置に備えられたアプレット提供手段と、により構成されるICカードプログラムダウンロードシステムであって、その第1の態様は、
前記代理ドライバ手段が、前記アプレット提供手段、および、前記カード管理手段との中継機能を果たすことにより前記サーバー装置から、アプリケーションプログラムをネットワークを通じて前記ICカードにダウンロードするよう構成されたICカードプログラムダウンロードシステムである。
【0009】
第1の態様のICカードプログラムダウンロードシステムにおいて、前記アプレット提供手段から前記カード管理手段へのアプリケーションプログラムの転送に先立って、前記アプレット提供手段と前記カード管理手段の間で、相互認証手続きおよびセッション鍵決定手続きを、この順で行い、決定されたセッション鍵によって、アプリケーションプログラムのコードを暗号化して転送することによりネットワーク上でプログラムを安全に提供できるように構成することもできる。
【0010】
課題を解決するためのICカードプログラムダウンロードシステムに係る別の態様は、ICカードに備えられたカード管理手段と、前記ICカードを挿入したICカードリーダーライタ装置を接続したパソコンに備えられたダウンロード手段と、同パソコンに備えられたICカードドライバ手段と、カード発行者が用意するサーバー装置に備えられたアプレット提供手段と、により構成されるICカードプログラムダウンロードシステムであって、
前記アプレット提供手段は、ダウンロードすべきプログラムコードを暗号化して、この暗号化されたコードをネットワークを通じて前記パソコンに送信し、これを前記ダウンロード手段が受けとり、全ての暗号化されたプログラムコードを取り込んだ後これを復号して一旦前記パソコン上にプログラムコードを保持し、前記ICカードドライバ手段が、これをICカードリーダーライタ装置を通して転送することによりアプリケーションプログラムのコードをICカードに提供できるように構成したものである。
【0011】
上記態様のICカードプログラムダウンロードシステムは、前記ICカードドライバ手段は、前記カード管理手段へのアプリケーションプログラムの転送に先立って、前記カード管理手段との間で、相互認証手続きおよびセッション鍵決定手続きを、この順で行い、決定されたセッション鍵によって、アプリケーションプログラムのコードを暗号化して転送するように構成してもよい。
【0012】
また、上記ICカードプログラムダウンロードシステムの別の態様において、前記アプレット提供手段から前記ダウンロード手段へプログラムコードを転送する場合の暗号化方式は、公開鍵暗号方式を採用して安全性と利便性を高めることもできる。
【0013】
【発明の実施の形態】
以下図面を用いて、本発明に係るICカードプログラムダウンロードシステムの実施形態を説明してゆく。図1は、本発明に係るシステムの一実施形態としてのICカードプログラムダウンロードシステム1(以下システム1)の全体構成を説明する図である。
【0014】
5はICカードである。内部に演算処理制御装置(CPU)、不揮発メモリ、ROM、RAMを内蔵している。ROMには、セキュアな記録媒体として機能させるための暗号化や認証機能、複数のアプリケーションプログラムの同時実行を可能とさせるためのメモリ管理機能、アプリケーションプログラムをインストールまたはデリートさせるための管理機能等を実現するためのOSのプログラムコードおよび、そのOSが提供する環境の上で実行されるアプリケーションプログラムのプログラムコードが記録されている。OSの機能のうち、アプリケーションプログラムをインストールまたはデリートさせる管理機能を特にカード管理手段51として図1に示す。
【0015】
10は、カード所有者が使用するパソコンである。パソコン10は、ICカード5を使用するためにICカードリーダライター11を接続している。ICカード5は接触非接触を問わないので、ICカードリーダライター11は、ICカード5のタイプに応じたものを接続する。20は、カード発行者が設置するサーバー装置である。カード所有者はパソコン10から、インターネットあるいはIP(Internet Protocol)ネットワーク9を介してサーバー装置20にアクセスする。パソコン10には代理ドライバ手段12が備えられている。サーバー装置20にはICカード5に搭載すべきプログラムコードを代理ドライバ手段12を中継してICカード5に提供するアプレット提供手段21が備えられている。
【0016】
また、ICカード5およびサーバー装置20には、カード管理手段52が後述する相互認証手続きにおいて使用するカード共通鍵52が記録されている。
【0017】
図3は、システム1の動作の流れを示したフロー図である。以下システム1の動作の流れを説明する。まず、カード所有者は、パソコン10に接続されたカードリーダーライタ装置11にICカード5を挿入し、代理ドライバ手段12を起動して、サーバー装置20にアクセスし、ICカード5のアプリケーションプログラムをダウンロードする手順を始めるよう要求する(S00)。すると、サーバー装置20に備えられたアプレット提供手段21が起動され、代理ドライバ手段12を介して、ICカード5のカード管理手段51との間で相互認証手続きの実行を始める。
【0018】
相互認証手続きは、アプレット提供手段21とカード管理手段51とが、それぞれが保持している共通鍵52が一致することを確認することでお互いを認証しあう手続きである。まず、アプレット提供手段21が適当な方法で乱数1を生成し、認証要求コマンドであることを示すヘッダーにこの乱数1を加えて、代理ドライバ手段12に送信する(S10)。代理ドライバ手段12はこれをそのままICカードリーダライタ装置11を通じて、ICカード5に送付する。カード管理手段51は、乱数1を、保持している鍵52により暗号化し、これと新たにICカード5内部で生成した乱数2を代理ドライバ手段12に返答する(S14)。代理ドライバ手段12はこれをそのままサーバー装置20に転送する。アプレット提供手段21は、暗号化された乱数1を自身が保持している鍵52で復号して、それが元々生成した乱数1と一致するかどうかを確認する。また受取った乱数2をその鍵52で暗合化してカード管理手段51に送付する(S18、以下代理ドライバ手段12の動作は中継動作だけなので説明を省略する)。カード管理手段51は、暗号化された乱数2を自身が保持している鍵52で復号して、それが元々生成した乱数2と一致するかどうかを確認する。一致すれば、ICカード5とサーバー装置20で相互に所有している鍵52が一致していることが確認され、相互認証が成功したということになる(S24)。
【0019】
この相互認証手続は、複数のアプリケーションプログラムを搭載するスマートカードの標準化組織であるGlobalPlatform(登録商標)が定めたCard Specification Version 2.1 June 2001(http://www.globalplatform.org/)の仕様に準拠したものである。
【0020】
次に、ICカード5とサーバー装置20はセッション鍵を決定する。カード管理手段51は、受取った乱数1と自ら発生させた乱数2に基づいて所定の変換処理を加えることによりセッションキーを決定する(S26)。一方、アプレット提供手段21は、自ら発生させた乱数1と受取った乱数2に基づいて同一のアルゴリズムの変換処理を加えることにより同一のセッションキーを決定する(S30)。以上がセッションキー決定手続きである。セッションキーはその場限りの一時的に使用する共通鍵である。
【0021】
以後、アプレット提供手段21は、ICカード5にダウンロードすべきプログラム(アプレット)のコードをセッションキーで暗号化してICカード5に送信する(S40)。カード管理手段51は、受信したデータをセッションキーで復号して、新しいプログラムとしてカード内部にインストールする(S44)
【0022】
以上の、カード管理手段51、代理ドライバ手段12、アプレット提供手段21の連係動作によりICカード発行後のアプリケーションプログラムのICカードへのダウンロードおよびインストールが安全に行われる。
【0023】
次に、本発明に係るICカードプログラムダウンロードシステムの別の実施形態を説明する。図2は、本発明に係るシステムの他の実施形態としてのICカードプログラムダウンロードシステム2(以下システム2)の全体構成を説明する図である。ICカード5、パソコン10、サーバー装置20の構成はシステム1と同じである。
【0024】
構成上のシステム1との相違点は、パソコン10には代理ドライバ手段12ではなく、ダウンロード手段13とICカードドライバ手段14が備えられていることである。また、パソコン10は、カードの共通鍵52とパソコン10あるいはダウンロード手段13の秘密鍵19を予め記録しておく必要がある。またサーバー装置20には、パソコン10あるいはダウンロード手段13の公開鍵18を記録しておく必要がある。カード管理手段51、アプレット提供手段21の機能はシステム1と同じである。
【0025】
図4は、システム2の動作の流れを示したフロー図である。以下システム2の動作の流れを説明する。まず、カード所有者は、パソコン10に接続されたカードリーダーライタ装置11にICカード5を挿入し、ダウンロード手段13を起動して、サーバー装置20にアクセスし、ICカード5のアプリケーションプログラムをダウンロードする手順を始めるよう要求する(S100)。すると、サーバー装置20に備えられたアプレット提供手段21が起動され、ダウンロード手段13の公開鍵18でダウンロードすべきプログラム(アプレット)を暗号化する(S110)。そして暗号化したアプレット8をパソコン10に対して送信する(S112)。ダウンロード手段13は全ての暗号化データを受取ると(S114)、それを自身の秘密鍵19で復号する(S116)。このようにして、一旦アプレット8のコードデータが全てパソコン10に保持される。
【0026】
次に、ドライバ手段14が起動され、ドライバ手段14は、乱数1を発生させ、認証要求コマンドを乱数1とともにICカードリーダライタ装置11を通じてICカード5に送付する(S118)。以後、ICカード5とパソコン10の間で相互認証手続きが行われる。その手順の詳細は、システム1の動作フローで説明した内容と同様である。相互認証手続きが問題無く終ると(S120)、セッションキー決定手続きが行われる(S122、S124)。セッションキー決定手続の手順の詳細は、システム1の動作フローで説明した内容と同様である。セッションキー決定後は、ドライバ手段14は、ステップS116で復号したアプレットのコードデータを再びこのセッションキーで暗号化して、ICカード5に転送する(S126)。カード管理手段51は、このデータを受付け、セッションキーで復号して、新たなプログラムとしてインストールする(S128)。
【0027】
以上の、カード管理手段51、ドライバ手段12、アプレット提供手段21の連係動作によりICカード発行後のアプリケーションプログラムのICカードへのダウンロードおよびインストールが安全に行われる。
【0028】
システム1とシステム2はそれぞれに長所短所がある。システム1の欠点としては次のことがいえる。システム1は、(1)相互認証手続きおよびセッション鍵決定手続きをインターネット9を介して行わなければならないこと。(2)ダウンロードするデータがサーバー装置20→パソコン10→ICカードリーダライタ11→ICカード5と移動することから、パソコン10、ICカードリーダライタの2箇所を中継することになること。したがって、(1)および(2)から、通信に時間がかかることがまずあげられる。また、この通信はインターネット9上での通信であることから、通信不安定でダウンロードに失敗した時、再び相互認証手続きおよびセッション鍵決定手続きをやり直さなければならず煩雑であり時間もかかることも難点である。
【0029】
システム2の欠点は、サーバー装置20にダウンロード手段13の公開鍵18を予め記憶させておく必要があること。パソコン10にICカード5の共通鍵52を予め記憶させておく必要があること。パソコン10にアプレットがまるまる残ることから、サーバー装置20の側で、誰にアプレットがダウンロードされたかを完全に管理できないこと、等が指摘できる。尚、サーバー装置20にダウンロード手段13の公開鍵18を記録する代わりに、パソコン10にアプレット提供手段21の公開鍵を記録しておき、アプレット提供手段21におけるアプレットのコードの暗号化はアプレット提供手段21の秘密鍵により行い、ダウンロード手段13では、アプレット提供手段21の公開鍵によりこれを復号するよう構成することもできる。
【0030】
逆に、アプレットをダウンロードした相手をきちんと管理できるというのがシステム1の長所である。カード発行者ではないカード所有者のパソコン10にICカード5の共通鍵52を記録させる必要がないことも安全管理上のメリットの一つである。一方、システム2は、ネットワーク9上のデータ転送においては、相互認証手続きおよびセッション鍵決定手続きを事前に行う必要がなく、ICカードリーダライタ装置11を介したICカード5への転送も介在しないので、ネットワーク9を介する通信に要する時間が短くてすむことが長所である。
【0031】
従って、有料のアプリケーションプログラムのダウンロード等の用途にはシステム1を、無料のアプリケーションプログラムやプログラムのバージョンアップの提供等にはシステム2というように使い分けすることもできる。
【0032】
パソコン10に、代理ドライバ手段12、ダウンロード手段13、ドライバ手段14をすべて備えて、使用時に使い分けができるように構成することも可能である。
【0033】
尚、代理ドライバ手段12またはダウンロード手段13とアプレット提供手段21と間のアプリケーションプロセスレベルの通信プロトコルとしてHTTP(HyperText Transfer Protocol)を採用することにより、アプレット提供手段21は、入手可能なWWW(Worl Wide Web)サーバーソフトウエアと、このWWWサーバーソフトウエアから呼出されるCGI(Common Gateway Interface)等の仕組みによって呼出されるサーバーサイドプログラムによって実現することが可能である。
【0034】
【発明の効果】
以上説明したように、本発明に係るICカードプログラムダウンロードシステムは、特にJavaCard(登録商標)準拠のICカードにおいて、ICカード発行後に、新たなアプリケーションプログラムあるいはバージョンアッププログラムを安全に円滑に提供できるという顕著な効果を奏する。
【図面の簡単な説明】
【図1】本発明に係るシステムの一実施形態としてのICカードプログラムダウンロードシステム1の全体構成を説明する図である。
【図2】本発明に係るシステムの他の実施形態としてのICカードプログラムダウンロードシステム2の全体構成を説明する図である。
【図3】ICカードプログラムダウンロードシステム1の動作の流れを示したフロー図である。
【図4】ICカードプログラムダウンロードシステム2の動作の流れを示したフロー図である。
【符号の説明】
1 ICカードプログラムダウンロードシステム
2 ICカードプログラムダウンロードシステム
5 ICカード
9 インターネットあるいはIPネットワーク
10 パソコン
11 ICカードリーダーライタ装置
12 代理ドライバ手段
13 ダウンロード手段
14 ICカードドライバ手段
18 ダウンロード手段13の公開鍵
19 ダウンロード手段13の秘密鍵
20 サーバー装置
21 アプレット提供手段
51 カード管理手段
52 ICカードの暗号鍵
【発明の属する技術分野】
本発明は、ICカード発行後に利用者の手許にある当該ICカードにアプリケーションプログラムをダウンロードさせることが可能なICカードアプリケーションのダウンロードシステムに関する。
【0002】
【従来技術】
現在、磁気カードよりも便利でより安全なICカードが徐々に普及しつつある。磁気ストライプによる単なる磁気記録媒体として用いられる磁気カードと異なり、ICカードは、演算処理装置(CPU)を備え、ROMにプログラムを格納しておくことにより、単なる記録媒体としての働きではなく、何らかのアプリケーション機能をも備えた記録媒体として利用される。したがってICカードはスマートカードとも呼ばれることがある。
【0003】
ICカードは、一つのアプリケーションプログラムだけ記録させて単一機能のカードとして用いるだけではなく、複数のアプリケーションプログラムを格納させて、多機能なカードとして使うことや、搭載するアプリケーションプログラムをカード発行後に書き換えて、別の機能を備えたカードとしてあるいはバージョンアップした機能を備えたカードとして使うことが可能である。
【0004】
このような複数アプリケーションの搭載およびその利用、またカード発行後の新プログラム搭載またはプログラム書き換え等の運用を円滑に行うためには、ICカードそのものにメモリ管理、アプリケーション実行時のプロセス管理、セキュリティ管理などの管理的な機能を担当するプログラムであるOS(オペレーティングシステム)が必要となる。現在ICカードの汎用OSとしては、MULTOS(登録商標)とJavaCard(登録商標)が存在する。
【0005】
【発明が解決しようとする課題】
カード発行後の新プログラム搭載またはプログラム書き換えを行う場合、MULTOS(登録商標)カードの場合には、搭載すべき新プログラムをカードの持つ公開鍵で暗号化しておき、MULTOS(登録商標)カードはこれを自身の持つ秘密鍵で復号しながら内部に取込むことが可能となっている。すなわち、MULTOS(登録商標)においては、新アプリケーションプログラムをネットワーク経由で安全にダウンロードできる発行スキームが実現されている。具体的には、カード発行者(新プログラム供給者)とMULTOS(登録商標)カードの間の電子証明書による認証方式、送付するプログラムまたはデータの暗号化様式、その他の規約が定められている。
【0006】
一方、JavaCard(登録商標)の場合には、上記発行スキームに相当する仕組みが用意されていない。従って、カード発行後の新プログラムをネットワークを通じてダウンロードしてインストールする作業を安全に円滑に行うことができないという問題点があった。
【0007】
本発明はこのような問題点を考慮してなされたものであり、JavaCard(登録商標)の場合に、上記発行スキームに相当する仕組み、すなわちカード発行後の新プログラムをネットワークを通じてダウンロードしてインストールする作業を安全に円滑に行う仕組みを提供することを課題とする。
【0008】
【課題を解決するための手段】
課題を解決するための第1の発明は、ICカードに備えられたカード管理手段と、前記ICカードを挿入したICカードリーダーライタ装置を接続したパソコンに備えられた代理ドライバ手段と、カード発行者が設置するサーバー装置に備えられたアプレット提供手段と、により構成されるICカードプログラムダウンロードシステムであって、その第1の態様は、
前記代理ドライバ手段が、前記アプレット提供手段、および、前記カード管理手段との中継機能を果たすことにより前記サーバー装置から、アプリケーションプログラムをネットワークを通じて前記ICカードにダウンロードするよう構成されたICカードプログラムダウンロードシステムである。
【0009】
第1の態様のICカードプログラムダウンロードシステムにおいて、前記アプレット提供手段から前記カード管理手段へのアプリケーションプログラムの転送に先立って、前記アプレット提供手段と前記カード管理手段の間で、相互認証手続きおよびセッション鍵決定手続きを、この順で行い、決定されたセッション鍵によって、アプリケーションプログラムのコードを暗号化して転送することによりネットワーク上でプログラムを安全に提供できるように構成することもできる。
【0010】
課題を解決するためのICカードプログラムダウンロードシステムに係る別の態様は、ICカードに備えられたカード管理手段と、前記ICカードを挿入したICカードリーダーライタ装置を接続したパソコンに備えられたダウンロード手段と、同パソコンに備えられたICカードドライバ手段と、カード発行者が用意するサーバー装置に備えられたアプレット提供手段と、により構成されるICカードプログラムダウンロードシステムであって、
前記アプレット提供手段は、ダウンロードすべきプログラムコードを暗号化して、この暗号化されたコードをネットワークを通じて前記パソコンに送信し、これを前記ダウンロード手段が受けとり、全ての暗号化されたプログラムコードを取り込んだ後これを復号して一旦前記パソコン上にプログラムコードを保持し、前記ICカードドライバ手段が、これをICカードリーダーライタ装置を通して転送することによりアプリケーションプログラムのコードをICカードに提供できるように構成したものである。
【0011】
上記態様のICカードプログラムダウンロードシステムは、前記ICカードドライバ手段は、前記カード管理手段へのアプリケーションプログラムの転送に先立って、前記カード管理手段との間で、相互認証手続きおよびセッション鍵決定手続きを、この順で行い、決定されたセッション鍵によって、アプリケーションプログラムのコードを暗号化して転送するように構成してもよい。
【0012】
また、上記ICカードプログラムダウンロードシステムの別の態様において、前記アプレット提供手段から前記ダウンロード手段へプログラムコードを転送する場合の暗号化方式は、公開鍵暗号方式を採用して安全性と利便性を高めることもできる。
【0013】
【発明の実施の形態】
以下図面を用いて、本発明に係るICカードプログラムダウンロードシステムの実施形態を説明してゆく。図1は、本発明に係るシステムの一実施形態としてのICカードプログラムダウンロードシステム1(以下システム1)の全体構成を説明する図である。
【0014】
5はICカードである。内部に演算処理制御装置(CPU)、不揮発メモリ、ROM、RAMを内蔵している。ROMには、セキュアな記録媒体として機能させるための暗号化や認証機能、複数のアプリケーションプログラムの同時実行を可能とさせるためのメモリ管理機能、アプリケーションプログラムをインストールまたはデリートさせるための管理機能等を実現するためのOSのプログラムコードおよび、そのOSが提供する環境の上で実行されるアプリケーションプログラムのプログラムコードが記録されている。OSの機能のうち、アプリケーションプログラムをインストールまたはデリートさせる管理機能を特にカード管理手段51として図1に示す。
【0015】
10は、カード所有者が使用するパソコンである。パソコン10は、ICカード5を使用するためにICカードリーダライター11を接続している。ICカード5は接触非接触を問わないので、ICカードリーダライター11は、ICカード5のタイプに応じたものを接続する。20は、カード発行者が設置するサーバー装置である。カード所有者はパソコン10から、インターネットあるいはIP(Internet Protocol)ネットワーク9を介してサーバー装置20にアクセスする。パソコン10には代理ドライバ手段12が備えられている。サーバー装置20にはICカード5に搭載すべきプログラムコードを代理ドライバ手段12を中継してICカード5に提供するアプレット提供手段21が備えられている。
【0016】
また、ICカード5およびサーバー装置20には、カード管理手段52が後述する相互認証手続きにおいて使用するカード共通鍵52が記録されている。
【0017】
図3は、システム1の動作の流れを示したフロー図である。以下システム1の動作の流れを説明する。まず、カード所有者は、パソコン10に接続されたカードリーダーライタ装置11にICカード5を挿入し、代理ドライバ手段12を起動して、サーバー装置20にアクセスし、ICカード5のアプリケーションプログラムをダウンロードする手順を始めるよう要求する(S00)。すると、サーバー装置20に備えられたアプレット提供手段21が起動され、代理ドライバ手段12を介して、ICカード5のカード管理手段51との間で相互認証手続きの実行を始める。
【0018】
相互認証手続きは、アプレット提供手段21とカード管理手段51とが、それぞれが保持している共通鍵52が一致することを確認することでお互いを認証しあう手続きである。まず、アプレット提供手段21が適当な方法で乱数1を生成し、認証要求コマンドであることを示すヘッダーにこの乱数1を加えて、代理ドライバ手段12に送信する(S10)。代理ドライバ手段12はこれをそのままICカードリーダライタ装置11を通じて、ICカード5に送付する。カード管理手段51は、乱数1を、保持している鍵52により暗号化し、これと新たにICカード5内部で生成した乱数2を代理ドライバ手段12に返答する(S14)。代理ドライバ手段12はこれをそのままサーバー装置20に転送する。アプレット提供手段21は、暗号化された乱数1を自身が保持している鍵52で復号して、それが元々生成した乱数1と一致するかどうかを確認する。また受取った乱数2をその鍵52で暗合化してカード管理手段51に送付する(S18、以下代理ドライバ手段12の動作は中継動作だけなので説明を省略する)。カード管理手段51は、暗号化された乱数2を自身が保持している鍵52で復号して、それが元々生成した乱数2と一致するかどうかを確認する。一致すれば、ICカード5とサーバー装置20で相互に所有している鍵52が一致していることが確認され、相互認証が成功したということになる(S24)。
【0019】
この相互認証手続は、複数のアプリケーションプログラムを搭載するスマートカードの標準化組織であるGlobalPlatform(登録商標)が定めたCard Specification Version 2.1 June 2001(http://www.globalplatform.org/)の仕様に準拠したものである。
【0020】
次に、ICカード5とサーバー装置20はセッション鍵を決定する。カード管理手段51は、受取った乱数1と自ら発生させた乱数2に基づいて所定の変換処理を加えることによりセッションキーを決定する(S26)。一方、アプレット提供手段21は、自ら発生させた乱数1と受取った乱数2に基づいて同一のアルゴリズムの変換処理を加えることにより同一のセッションキーを決定する(S30)。以上がセッションキー決定手続きである。セッションキーはその場限りの一時的に使用する共通鍵である。
【0021】
以後、アプレット提供手段21は、ICカード5にダウンロードすべきプログラム(アプレット)のコードをセッションキーで暗号化してICカード5に送信する(S40)。カード管理手段51は、受信したデータをセッションキーで復号して、新しいプログラムとしてカード内部にインストールする(S44)
【0022】
以上の、カード管理手段51、代理ドライバ手段12、アプレット提供手段21の連係動作によりICカード発行後のアプリケーションプログラムのICカードへのダウンロードおよびインストールが安全に行われる。
【0023】
次に、本発明に係るICカードプログラムダウンロードシステムの別の実施形態を説明する。図2は、本発明に係るシステムの他の実施形態としてのICカードプログラムダウンロードシステム2(以下システム2)の全体構成を説明する図である。ICカード5、パソコン10、サーバー装置20の構成はシステム1と同じである。
【0024】
構成上のシステム1との相違点は、パソコン10には代理ドライバ手段12ではなく、ダウンロード手段13とICカードドライバ手段14が備えられていることである。また、パソコン10は、カードの共通鍵52とパソコン10あるいはダウンロード手段13の秘密鍵19を予め記録しておく必要がある。またサーバー装置20には、パソコン10あるいはダウンロード手段13の公開鍵18を記録しておく必要がある。カード管理手段51、アプレット提供手段21の機能はシステム1と同じである。
【0025】
図4は、システム2の動作の流れを示したフロー図である。以下システム2の動作の流れを説明する。まず、カード所有者は、パソコン10に接続されたカードリーダーライタ装置11にICカード5を挿入し、ダウンロード手段13を起動して、サーバー装置20にアクセスし、ICカード5のアプリケーションプログラムをダウンロードする手順を始めるよう要求する(S100)。すると、サーバー装置20に備えられたアプレット提供手段21が起動され、ダウンロード手段13の公開鍵18でダウンロードすべきプログラム(アプレット)を暗号化する(S110)。そして暗号化したアプレット8をパソコン10に対して送信する(S112)。ダウンロード手段13は全ての暗号化データを受取ると(S114)、それを自身の秘密鍵19で復号する(S116)。このようにして、一旦アプレット8のコードデータが全てパソコン10に保持される。
【0026】
次に、ドライバ手段14が起動され、ドライバ手段14は、乱数1を発生させ、認証要求コマンドを乱数1とともにICカードリーダライタ装置11を通じてICカード5に送付する(S118)。以後、ICカード5とパソコン10の間で相互認証手続きが行われる。その手順の詳細は、システム1の動作フローで説明した内容と同様である。相互認証手続きが問題無く終ると(S120)、セッションキー決定手続きが行われる(S122、S124)。セッションキー決定手続の手順の詳細は、システム1の動作フローで説明した内容と同様である。セッションキー決定後は、ドライバ手段14は、ステップS116で復号したアプレットのコードデータを再びこのセッションキーで暗号化して、ICカード5に転送する(S126)。カード管理手段51は、このデータを受付け、セッションキーで復号して、新たなプログラムとしてインストールする(S128)。
【0027】
以上の、カード管理手段51、ドライバ手段12、アプレット提供手段21の連係動作によりICカード発行後のアプリケーションプログラムのICカードへのダウンロードおよびインストールが安全に行われる。
【0028】
システム1とシステム2はそれぞれに長所短所がある。システム1の欠点としては次のことがいえる。システム1は、(1)相互認証手続きおよびセッション鍵決定手続きをインターネット9を介して行わなければならないこと。(2)ダウンロードするデータがサーバー装置20→パソコン10→ICカードリーダライタ11→ICカード5と移動することから、パソコン10、ICカードリーダライタの2箇所を中継することになること。したがって、(1)および(2)から、通信に時間がかかることがまずあげられる。また、この通信はインターネット9上での通信であることから、通信不安定でダウンロードに失敗した時、再び相互認証手続きおよびセッション鍵決定手続きをやり直さなければならず煩雑であり時間もかかることも難点である。
【0029】
システム2の欠点は、サーバー装置20にダウンロード手段13の公開鍵18を予め記憶させておく必要があること。パソコン10にICカード5の共通鍵52を予め記憶させておく必要があること。パソコン10にアプレットがまるまる残ることから、サーバー装置20の側で、誰にアプレットがダウンロードされたかを完全に管理できないこと、等が指摘できる。尚、サーバー装置20にダウンロード手段13の公開鍵18を記録する代わりに、パソコン10にアプレット提供手段21の公開鍵を記録しておき、アプレット提供手段21におけるアプレットのコードの暗号化はアプレット提供手段21の秘密鍵により行い、ダウンロード手段13では、アプレット提供手段21の公開鍵によりこれを復号するよう構成することもできる。
【0030】
逆に、アプレットをダウンロードした相手をきちんと管理できるというのがシステム1の長所である。カード発行者ではないカード所有者のパソコン10にICカード5の共通鍵52を記録させる必要がないことも安全管理上のメリットの一つである。一方、システム2は、ネットワーク9上のデータ転送においては、相互認証手続きおよびセッション鍵決定手続きを事前に行う必要がなく、ICカードリーダライタ装置11を介したICカード5への転送も介在しないので、ネットワーク9を介する通信に要する時間が短くてすむことが長所である。
【0031】
従って、有料のアプリケーションプログラムのダウンロード等の用途にはシステム1を、無料のアプリケーションプログラムやプログラムのバージョンアップの提供等にはシステム2というように使い分けすることもできる。
【0032】
パソコン10に、代理ドライバ手段12、ダウンロード手段13、ドライバ手段14をすべて備えて、使用時に使い分けができるように構成することも可能である。
【0033】
尚、代理ドライバ手段12またはダウンロード手段13とアプレット提供手段21と間のアプリケーションプロセスレベルの通信プロトコルとしてHTTP(HyperText Transfer Protocol)を採用することにより、アプレット提供手段21は、入手可能なWWW(Worl Wide Web)サーバーソフトウエアと、このWWWサーバーソフトウエアから呼出されるCGI(Common Gateway Interface)等の仕組みによって呼出されるサーバーサイドプログラムによって実現することが可能である。
【0034】
【発明の効果】
以上説明したように、本発明に係るICカードプログラムダウンロードシステムは、特にJavaCard(登録商標)準拠のICカードにおいて、ICカード発行後に、新たなアプリケーションプログラムあるいはバージョンアッププログラムを安全に円滑に提供できるという顕著な効果を奏する。
【図面の簡単な説明】
【図1】本発明に係るシステムの一実施形態としてのICカードプログラムダウンロードシステム1の全体構成を説明する図である。
【図2】本発明に係るシステムの他の実施形態としてのICカードプログラムダウンロードシステム2の全体構成を説明する図である。
【図3】ICカードプログラムダウンロードシステム1の動作の流れを示したフロー図である。
【図4】ICカードプログラムダウンロードシステム2の動作の流れを示したフロー図である。
【符号の説明】
1 ICカードプログラムダウンロードシステム
2 ICカードプログラムダウンロードシステム
5 ICカード
9 インターネットあるいはIPネットワーク
10 パソコン
11 ICカードリーダーライタ装置
12 代理ドライバ手段
13 ダウンロード手段
14 ICカードドライバ手段
18 ダウンロード手段13の公開鍵
19 ダウンロード手段13の秘密鍵
20 サーバー装置
21 アプレット提供手段
51 カード管理手段
52 ICカードの暗号鍵
Claims (5)
- ICカードに備えられたカード管理手段と、前記ICカードを挿入したICカードリーダーライタ装置を接続したパソコンに備えられた代理ドライバ手段と、カード発行者が設置するサーバー装置に備えられたアプレット提供手段と、により構成されるICカードプログラムダウンロードシステムであって、
前記代理ドライバ手段が、前記アプレット提供手段、および、前記カード管理手段との中継機能を果たすことにより前記サーバー装置から、アプリケーションプログラムをネットワークを通じて前記ICカードにダウンロードするICカードプログラムダウンロードシステム。 - 請求項1に記載のICカードプログラムダウンロードシステムにおいて、前記アプレット提供手段から前記カード管理手段へのアプリケーションプログラムの転送に先立って、前記アプレット提供手段と前記カード管理手段の間で、相互認証手続きおよびセッション鍵決定手続きを、この順で行い、決定されたセッション鍵によって、アプリケーションプログラムのコードを暗号化して転送することによりネットワーク上でプログラムを安全に提供できることを特徴とするICカードプログラムダウンロードシステム。
- ICカードに備えられたカード管理手段と、前記ICカードを挿入したICカードリーダーライタ装置を接続したパソコンに備えられたダウンロード手段と、同じく前記パソコンに備えられたICカードドライバ手段と、カード発行者が用意するサーバー装置に備えられたアプレット提供手段と、により構成されるICカードプログラムダウンロードシステムであって、
前記アプレット提供手段は、ダウンロードすべきプログラムコードを暗号化して、この暗号化されたコードをネットワークを通じて前記パソコンに送信し、これを前記ダウンロード手段が受けとり、全ての暗号化されたプログラムコードを取り込んだ後これを復号して一旦前記パソコン上にプログラムコードを保持し、前記ICカードドライバ手段が、これを前記ICカードリーダーライタ装置を通して転送することによりアプリケーションプログラムのコードをICカードに提供できることを特徴とするICカードプログラムダウンロードシステム。 - 請求項3に記載のICカードプログラムダウンロードシステムにおいて、前記ICカードドライバ手段は、前記カード管理手段へのアプリケーションプログラムの転送に先立って、前記カード管理手段との間で、相互認証手続きおよびセッション鍵決定手続きを、この順で行い、決定されたセッション鍵によって、アプリケーションプログラムのコードを暗号化して転送することを特徴とするICカードプログラムダウンロードシステム。
- 請求項3に記載のICカードプログラムダウンロードシステムにおいて、前記アプレット提供手段によるダウンロードすべきプログラムコードの暗号化方式は、前記ダウンロード手段との間での公開鍵暗号方式を採用することを特徴とするICカードプログラムダウンロードシステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002169067A JP2004013728A (ja) | 2002-06-10 | 2002-06-10 | Icカードプログラムダウンロードシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002169067A JP2004013728A (ja) | 2002-06-10 | 2002-06-10 | Icカードプログラムダウンロードシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004013728A true JP2004013728A (ja) | 2004-01-15 |
Family
ID=30435805
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002169067A Pending JP2004013728A (ja) | 2002-06-10 | 2002-06-10 | Icカードプログラムダウンロードシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004013728A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1755340A1 (en) * | 2005-02-01 | 2007-02-21 | Matsushita Electric Industrial Co., Ltd. | Digital cable television broadcast receiver |
JP2010093663A (ja) * | 2008-10-10 | 2010-04-22 | Fuji Electric Holdings Co Ltd | Icカードシステム、その上位機器、プログラム |
US7804959B2 (en) | 2005-02-01 | 2010-09-28 | Panasonic Corporation | Digital cable television broadcasting receiver |
JP2010251974A (ja) * | 2009-04-14 | 2010-11-04 | Nec System Technologies Ltd | データ転送方法、データ転送システム及びデータ中継プログラム |
JP2015135610A (ja) * | 2014-01-17 | 2015-07-27 | 株式会社東芝 | 携帯可能電子装置、および電子回路 |
JP2020048061A (ja) * | 2018-09-19 | 2020-03-26 | 大日本印刷株式会社 | 電子情報記憶媒体、icカード、時刻データ更新方法、及びプログラム |
-
2002
- 2002-06-10 JP JP2002169067A patent/JP2004013728A/ja active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1755340A1 (en) * | 2005-02-01 | 2007-02-21 | Matsushita Electric Industrial Co., Ltd. | Digital cable television broadcast receiver |
EP1755340A4 (en) * | 2005-02-01 | 2007-05-09 | Matsushita Electric Ind Co Ltd | DIGITAL CABLE TRANSMITTER RECEIVER |
US7804959B2 (en) | 2005-02-01 | 2010-09-28 | Panasonic Corporation | Digital cable television broadcasting receiver |
JP2010093663A (ja) * | 2008-10-10 | 2010-04-22 | Fuji Electric Holdings Co Ltd | Icカードシステム、その上位機器、プログラム |
JP2010251974A (ja) * | 2009-04-14 | 2010-11-04 | Nec System Technologies Ltd | データ転送方法、データ転送システム及びデータ中継プログラム |
JP2015135610A (ja) * | 2014-01-17 | 2015-07-27 | 株式会社東芝 | 携帯可能電子装置、および電子回路 |
JP2020048061A (ja) * | 2018-09-19 | 2020-03-26 | 大日本印刷株式会社 | 電子情報記憶媒体、icカード、時刻データ更新方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1365307B1 (en) | Data updating method and data updating system | |
US7882208B2 (en) | Information management apparatus, information management method, and program for managing an integrated circuit | |
EP1388989B1 (en) | Digital contents issuing system and digital contents issuing method | |
TWI246289B (en) | Method, apparatus, and recording medium for providing a user device with a set of access codes | |
US20120173637A1 (en) | Method and system for remote activation and management of personal security devices | |
JP4607567B2 (ja) | 証明書転送方法、証明書転送装置、証明書転送システム、プログラム及び記録媒体 | |
US20040059916A1 (en) | Memory card | |
JP4516399B2 (ja) | 情報処理装置および方法、並びにプログラム | |
JP2004021755A (ja) | 記憶装置 | |
KR100544991B1 (ko) | 자율형 집적회로 카드 | |
TW200903215A (en) | Program update method and server | |
JP4097623B2 (ja) | 本人認証インフラストラクチャシステム | |
US7805611B1 (en) | Method for secure communication from chip card and system for performing the same | |
WO2009066271A2 (en) | Virtual security access module | |
WO2007119594A1 (ja) | セキュアデバイス及び読み書き装置 | |
JP2004013728A (ja) | Icカードプログラムダウンロードシステム | |
JP4236830B2 (ja) | アップロード機能付き記憶装置 | |
JP2004139242A (ja) | Icカード、icカード発行システム及びicカード発行方法 | |
JP3983097B2 (ja) | Icカードの再発行方法及びシステム | |
JP2007159009A (ja) | チケット保護方法およびクライアント | |
JP6965790B2 (ja) | 電子情報記憶媒体、コマンド処理方法、及びプログラム | |
JP4052158B2 (ja) | Icカードシステムおよびicカード発行方法 | |
JP7444325B1 (ja) | 電子情報記憶媒体、icチップ、icカード、公開鍵管理方法、及びプログラム | |
KR100671795B1 (ko) | 카드 결제 정보 처리 컴퓨터 | |
JP4708754B2 (ja) | サーバクライアントシステム、クライアント、データ処理方法、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050531 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070808 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070904 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080115 |