説明

改善されたスマートカード・システム

プログラム可能なスマートカード装置(10)は、ファイル・システム(22,24)と、オン・デバイス・ファイル・システムが少なくとも1つのオフ・デバイス・ファイル又はアプリケーションとインターフェースするためのオペレーティング・ソフトウエアとを備えている。スマートカード装置はさらに、スクリプト・エンジン(32)を備え、該エンジンは、1又は複数のアプリケーション・プロトコル・データ・ユニット(APDU)を実行してファイル・システムの構造及びコンテンツの少なくとも一方、又は、ファイル・システムをアクセスするために使用されるコマンド、又は、ファイル・システムに関連するセキュリティ条件を編集することができる。スマートカード装置(10)はまた、スクリプト・エンジン(32)によって実行されるセキュリティAPDUによってコンフィギュレーションが可能であり、かつ、アプリケーションを実行するためのコマンドを1又は複数の参照コマンドと比較する比較手段(34)であって、その対比結果に基づいて、オン・デバイス・データ、又は、ファイル・システム、又は該システムにアクセスするために使用されるコマンド、又は、該システムに関連するセキュリティ条件にアクセス及び編集し、かつ、データ、ファイル・システム、コマンド、又はセキュリティ条件への更なるアクセス及び編集を制限又は阻止するための比較手段(34)を備えている。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、国際特許出願番号WO03/049056号に記載されたスマートカード・システムの改善に関する。より詳細には、本発明は、このようなシステムにおける改善されたセキュリティ・アレンジメントの可能性に関する。
【背景技術】
【0002】
上記のようなスマートカード・システムは、ファイル・システムを担持しているプログラム可能なスマートカード装置を備えている。該スマートカード装置は、オン・デバイス・ファイル・システムがオフ・デバイス・ファイル及びアプリケーションの少なくとも1つをインターフェースすることができるようにするためのソフトウエアを実行し、かつ、スマートカード装置は、1又は複数のアプリケーション・プロトコル・データ・ユニット(APDU)を実行することができるスクリプト・エンジンを備えて、ファイル・システムの構造及び/又はコンテンツ、若しくは、ファイル・システム又は該システムに関連するセキュリティ条件にアクセスするために使用されるコマンドを編集することができるように構成されている。
【0003】
このようなシステムにおいて、プログラム可能なスマートカード装置は、1又は複数のアプリケーションと、該装置上のメモリに記憶されたデータ・ファイルとの少なくとも一方を担持している。例えば、ファイルは、カード保持者の銀行収支の詳細、又は、既に実行された又は実行すべきファイナンシャル・トランザクションの詳細を記憶する。データを安全に保護するために、これらファイルを保持するメモリ及びこれらに含まれるデータは、カード自体上にあるプロセッサによってのみアクセス可能である。該プロセッサは、スクリプト・エンジンを備え、該スクリプト・エンジンは、該カードが挿入されて接続されたインターフェース装置からアップロードされたスクリプトを実行することができ、それにより、該カード上のファイル・システムの構造又はコンテンツ、若しくは、該ファイル・システム又は該システムに関連するセキュリティ条件にアクセスするために使用されるコマンドを編集(修正)することができる。
【0004】
国際特許出願番号WO03/049056号のシステムにおいて、スクリプトは、自己記述メッセージ用のウエブ(インターネット)標準言語にフォーマット化されたファイルとして書かれており、インターネットを介して中央の銀行ルームから1又は複数のインターフェース装置に安全に転送される。該インターフェース装置において、スクリプトがユーザのスマートカード装置にロードされる。このように、インターネットを介して、拡張マークアップ言語(XML)等のウエブ標準言語のファイルを転送することができるので、スマートカード装置上に保持されたアプリケーション・ソフトウエアへのアップグレードを分配することができ、又は、システムにおいて使用されたカード上のデータを編集すなわち再フォーマット化を、良好な安全レベルを保持しつつインターネットを用いて直ちに実行することができる。
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、国際特許出願番号WO03/049056号の基本的システムは安全ではあるが、該システムのセキュリティを更に改善することが望まれている。ファイナンシャル・トランザクション等を処理する高度に安全のスマートカード・アプリケーションについて、スマートカード装置へのコマンド及びスマートカード装置からのレスポンス(応答)のシーケンスは、特殊なフローに沿って行われる必要がある。ガード上で実行されるアプリケーション特定用ソフトウエアを開発することができるが、該ソフトウエアは、期待される次のコマンドを受け取った場合にのみ通常応答し、逆に、コマンドが期待されるものではない場合にエラーが発行されるものである。したがって、この手法は、特にアップグレード及び編集の管理において、通常の問題点をすべて有してしまうことになる。
【課題を解決するための手段】
【0006】
本発明におけるスマートカードは、スクリプト・エンジンにより実行されるセキュリティAPDUによってコンフィギュレーション(環境設定)可能な比較手段を備え、該比較手段は、アプリケーションを実行するためのコマンドを1又は複数の参照コマンドと比較するよう構成され、その対比結果に基づいて、オン・デバイス・データ、又は、ファイル・システム、又は該システムにアクセスするために使用されるコマンド、又は、該システムに関連するセキュリティ条件にアクセス及び編集し、かつ、データ、ファイル・システム、コマンド、又はセキュリティ条件への更なるアクセス及び編集を制限又は阻止する。
【0007】
このように、国際特許出願番号WO03/04956に開示されたスマートカード装置において、スクリプト・エンジンが該カードをセットアップするために使用されているが、一方、コマンド・コードのみの対比又はコード及びオペランド両方の対比のいずれかにより、スマートカードはあるコマンド・シーケンスの発生を予期しそれを監視するように該カードをセットアップすることによって、改善されたセキュリティを提供することができる。
本発明はまた、上記のようにスマートカードをコンフィギュレーションするための方法を提供する。
【発明を実施するための最良の形態】
【0008】
以下に、本発明のスマートカード装置の概略図を示す図面を参照して、本発明の実施例を詳細に説明する。
先に概略を述べたシステムにおいて使用されるスマートカード装置10を図に示している。
スマートカード装置10は、ファイル22及び24を記憶したオン・デバイス・メモリ20と、スクリプト・エンジン32及びコンフィギュレーション可能なコンパレータ34を備えたプロセッサ30とを備えている。上述したように、オン・デバイス・メモリ20は、プロセッサ30によってのみアクセス可能であり、スマートカード装置10の外部から直接アクセスすることができない。スマートカード装置10はまた、インターフェース手段40を備え、該インターフェース手段は、スマートカード装置10が外部のインターフェース装置(不図示)とインターラクト(対話)することを可能にしている。
【0009】
例えば、格納されたファイル22及び24は、スマートカード装置のユーザが保持しているファイナンシャル預金口座に関する現在の口座残高及び直近の口座残高をそれぞれ表すデータを含んでいる。スマートカード装置が使用されてユーザの口座から資金の転送が是認されると、スマートカード装置10は、インターフェース装置と対話(インターラクト)して、1又は複数のアプリケーション・プロトコル・データ・ユニット(APDU)を含んでいるファイルをアップロードする。APDUは、スマートカード装置10上でスクリプト・エンジン32によって実行されて、装置のメモリ20に保持された種々のファイルのコンテンツ(内容)を修正する。トランザクションは、通常極めて複雑であり、多数のファイルのコンテンツを修正するための多数のコマンドを必要としているが、本明細書では、説明の単純化のためにただ1つの修正のみについて説明する。
【0010】
スマートカードのユーザが該スマートカード装置10を使用して、支払いを第3の団体に認可する場合、ファイル22に格納された現在の残高が、直近の残高を格納するファイル24にコピーされ、そして、ファイル22における現在の残高がより低額の新しい残高を示すように更新される。
【0011】
このようなトランザクションにおいては、該トランザクションを有効化するために、スクリプト・エンジン32によって実行されるAPDUにおけるコマンド・シーケンスに、以下のコマンド対を発見することを予期する。
ファイル22の値をファイル24にコピー
ファイル22への新しい現在の残高の書き込み
【0012】
上述したシステムにおいて、トランザクションを開始すべき場合、スマートカード装置10は、インターフェース装置に挿入又は接続され、1又は複数のAPDUを装置のプロセッサ30にアップロードし、該APDUがスクリプト・エンジン32によって実行されて、内部のファイル22及び24におけるデータが編集される。本発明によれば、APDUはセキュリティすなわち「ウオッチドッグ」APDUを含んでおり、このAPDUにより、実行されるトランザクションに対応する適宜の方法でコンパレータ34がコンフィギュレーションされる。これにより、セキュリティAPDUは、参照コマンド又は参照コードを提供し、該参照コマンド又はコードに対して、スクリプト・エンジン32によって実行されるコマンドがチェックされる。
【0013】
上述した例において、セキュリティAPDUは、スクリプト・エンジン32によって実行されたときに、コンパレータ34をコンフィギュレーションし、該コンパレータ34が、期待されるコマンド対、すなわち、「ファイル22の値をファイル24にコピー」及び「ファイル22への新しい現在の残高の書き込み」を検出する。コンパレータが一致を検出しない場合、トランザクションは中止される。
【0014】
上記の例は極めて単純であるが、コンパレータ32が同様な方法でより長いコマンド・シーケンスを監視するようにコンフィギュレーションすることができることは、当業者には理解されるであろう。
【0015】
さらに、コンパレータ32は、コマンドの一部のみをセキュリティAPDUによって提供された参照のものと対比するようにコンフィギュレーションすることもできる。例えば、「コピー」コマンドが、実行される特定のトランザクションのコンテンツにデータがコピーされることが期待される箇所からのファイルの名前又は識別子を含んでいるかどうかを決定してもよい。このようにする代わりに、コマンド内のオペランド、すなわち、監視されるシーケンスのみが対比されて、「コピー」コマンドの次に「書き込み」コマンドが常に続いているかどうかをチェックするようにしてもよい。
【0016】
ある環境下においては、コンパレータ32をコンフィギュレーションして、一致が検出された場合に、トランザクションを中止するようにしても良い。上述したトランザクションにおいて、例えば、スクリプト・エンジン32にファイル24からファイル22へのコピーをするための正当な道理がなく、それが検出された場合、それは不正が行われていることを意味する。したがって、コンパレータ34は、「ファイル24空ファイル22へのコピー」のコマンドの出現を検出するようにコンフィギュレーションし、これにより、スマートカード装置10上のファイル又はデータの更なる修正を制限又は阻止することができる。
【0017】
トランザクションを許可するポジティブな一致を検出する際、ネガティブな一致は部分的対比に基づいている。例えば、コンパレータ34は、特定のオン・デバイス・ファイルの名前、例えば特定のコマンド・シーケンスに記述されているべきではない「ファイル24」等の特定のコードを検索するようにコンフィギュレーションしてもよい。
【0018】
このようにする代わりに、コンパレータ34は、コマンド・コードとオペランドとの組み合わせを検出するようにしてもよい。上述の例では、コンパレータ34は、ファイル24からのコピーを要求する任意のコマンドを検出するようにしてもよく、これは、このようなコマンドが当該トランザクションを有効化するために不適当であるからである。
【0019】
複雑な状況下において、スクリプト・エンジン32及びセキュリティAPDUによる参照の組とのポジティブな一致又はネガティブな一致が希望されると、コンパレータ34は、1つのコマンドではなく特定の複数のコマンドからなるコマンド・シーケンスを検出するようにコンフィギュレーションされる。期待されるコマンドの組が単純な線形的シーケンスではなく、国際特許出願番号WO2005−064555号に記載されているようなロジック又は算術駆動ブランチを含んでいる場合、スクリプト・エンジンの能力が用いられて、コンパレータ34を介してこれらのコマンド経路をマッピングする。
【0020】
コンパレータ34はまた、必要に応じて、単一ではなく複数の可能な期待される所定の組又は範囲とコマンドを対比するようにコンフィギュレーション可能である。
【0021】
このように、APDUの「期待されるコマンド」スクリプト及びコンパレータが協働して1つの状態マシーンのように機能し、該スクリプト内のコマンドが期待されるコマンド・シーケンスを表しているかどうかを、現れるべきコマンド又は現れるべきではないコマンドを検出し、ある特定の対比において所定の結果が得られた場合に、状態を「エラー」と設定する。
【0022】
トランザクションが行われようとするときに、スマートカード装置10に設けられたコンパレータ34が各トランザクションに関するコマンド・シーケンスの部分としてアップロードされたセキュリティAPDUに依存して、スクリプト・エンジン32によってコンフィギュレーションされるので、実行されるトランザクションのタイプに適するチェックを、コンパレータ34が行うことが好適である。
【0023】
スマートカードの技術分野以外の従来例装置は、対比をすることができるチェック装置又は監視装置を使用しているが、これらの装置は、従来例装置内にハード・ワイヤされたものであり、多数の異なるタイプのトランザクションを提供する必要があることから、スマートカード装置に搭載可能なものよりも多くの処理パワー及びメモリ容量を必要とする。トランザクションを行おうとするときに該トランザクションに関してコンフィギュレーションされたコンパレータ34を使用することによって、従来のスマートカード・システムにおいては不可能であった高レベルのセキュリティ・チェックを提供することができ、しかも、スマートカード装置上に搭載可能な比較的小型のプロセッサ及びメモリの制限の下で、それを実現することができる。
【0024】
さらに、コンパレータ34をコンフィギュレーションするためにスクリプト・エンジン32によって使用される、トランザクションの各タイプ用のセキュリティAPDUは、セキュリティ上において新たな不正行為が発見され又はトランザクションの新たな形態が実施された場合、必要に応じて直ちに修正することができる。
【図面の簡単な説明】
【0025】
【図1】本発明に係るシステムにおいて使用されるスマートカードの構成を示すブロック図である。

【特許請求の範囲】
【請求項1】
ファイル・システム(22,24)を備えたプログラム可能なスマートカード装置(10)であって、該装置は、ファイル・システムが該装置に備えられていない少なくとも1つのオフ・デバイス・ファイル及びアプリケーションの少なくとも一方をインターフェースするためのオペレーティング・ソフトウエアを備え、該ソフトウエアが、1又は複数のアプリケーション・プロトコル・データ・ユニット(APDU)を実行してファイル・システムの構造及びコンテンツの少なくとも一方、又は、ファイル・システムをアクセスするために使用されるコマンド、又は、ファイル・システムに関連するセキュリティ条件を編集することができるスクリプト・エンジン(32)を備え、プログラム可能なスマートカード装置(10)は、
スクリプト・エンジン(32)によって実行されるセキュリティAPDUによってコンフィギュレーションか可能であり、かつ、アプリケーションを実行するためのコマンドを1又は複数の参照コマンドと比較する比較手段(34)であって、その対比結果に基づいて、オン・デバイス・データ、又は、ファイル・システム、又は該システムにアクセスするために使用されるコマンド、又は、該システムに関連するセキュリティ条件にアクセス及び編集し、かつ、データ、ファイル・システム、コマンド、又はセキュリティ条件への更なるアクセス及び編集を制限又は阻止するための比較手段(34)
を備えていることを特徴とするスマートカード装置。
【請求項2】
請求項1記載のスマートカード装置において、比較手段(34)は、オン・デバイス・データ、ファイル、コマンド、又はセキュリティ条件を編集するために、スクリプト・エンジン(32)によって実行されるAPDUのコードを、参照コードと対比することを特徴とするスマートカード装置。
【請求項3】
請求項2記載のスマートカード装置において、比較手段(34)はさらに、スクリプト・エンジンによって実行されるAPDUの少なくとも1つのオペランドを、参照オペランドと対比することを特徴とするスマートカード装置。
【請求項4】
請求項2又は3記載のスマートカード装置において、比較手段(34)は、スクリプト・エンジンによって実行されるAPDUのコード及びオペランドの少なくとも一方を、複数の参照値を表す参照コード又はオペランドと対比することを特徴とするスマートカード装置。
【請求項5】
請求項1〜4いずれかに記載のスマートカード装置において、比較手段(34)は、アプリケーションにおいて実行されるコマンド・シーケンスを、参照シーケンスと対比することを特徴とするスマートカード装置。
【請求項6】
請求項1〜5いずれかに記載のスマートカード装置において、比較手段(34)は、予期される1又は複数のコマンド若しくはコマンド・シーケンスを表す1又は複数の参照コマンドとの一致を検出しない場合に、データ、ファイル・システム、コマンド、又はセキュリティ条件への更なるアクセス又は編集を制限又は阻止することを特徴とするスマートカード装置。
【請求項7】
請求項1〜5いずれかに記載のスマートカード装置において、比較手段(34)は、1又は複数の参照コマンドとの一致を検出した場合に、データ、ファイル・システム、コマンド、又はセキュリティ条件への更なるアクセス又は編集を制限又は阻止することを特徴とするスマートカード装置。
【請求項8】
請求項1〜7いずれかに記載のスマートカード装置において、スクリプト・エンジン(32)は、自己記述メッセージ用のウエブ(インターネット)標準言語にフォーマットされた少なくとも1つから導出された1又は複数のAPDUを実行可能であることを特徴とするスマートカード装置。
【請求項9】
請求項1〜8いずれかに記載のプログラム可能なスマートカード装置をコンフィギュレーションする方法において、
該プログラム可能なスマートカード装置をカードリーダにおいてインターフェースするためのカード読取インターフェース装置を用意するステップと、
プログラム可能なスマートカード装置に、オンデバイス・ファイル・システムの構造及びコンテンツの定義、又は該ファイル・システム又はそれに関連するセキュリティ条件にアクセスするために使用されるコマンドを編集するための少なくとも1つのAPDUを備えているアプリケーション・スクリプトをロードするステップと
からなり、
プログラム可能なスマートカード装置にアップロードされるスクリプトはさらに、比較手段をコンフィギュレーションするためにスマートカード装置上でスクリプト・エンジンによって実行されるセキュリティAPDUを備えており、比較手段は、オン・デバイス・データ、ファイル・システム、若しくは、該ファイル・システム又はそれに関連するセキュリティ条件にアクセスするために使用されるコマンドにアクセス及び編集の少なくとも一方を行うために、アプリケーションの実行において使用されるコマンドを、1又は複数の参照コマンドと対比するよう構成されており、
データ、ファイル・システム、コマンド、又はセキュリティ条件へのアクセス又は編集は、比較手段によって実行された比較結果に応じて、制限又は阻止される
ことを特徴とする方法。
【請求項10】
請求項9記載の方法において、複数の異なるアプリケーション・スクリプトがプログラム可能なスマートカード装置にロード可能であり、アプリケーション・スクリプトは、各々、関連するセキュリティAPDUを有し、該セキュリティAPDUは、アプリケーション・スクリプトがロードされるときは常にスマートカード装置にロードされて、スクリプト・エンジンによって異なるアプリケーション・スクリプトが実行される度に、比較手段が再度コンフィギュレーションされることを特徴とする方法。
【請求項11】
請求項9又は110記載の方法において、アプリケーション・スクリプト及びセキュリティAPDUは、自己記述メッセージ用のウエブ(インターネット)標準言語にフォーマットされた少なくとも1つのファイルから導出されることを特徴とする方法。

【図1】
image rotate


【公表番号】特表2009−506447(P2009−506447A)
【公表日】平成21年2月12日(2009.2.12)
【国際特許分類】
【出願番号】特願2008−528573(P2008−528573)
【出願日】平成18年8月29日(2006.8.29)
【国際出願番号】PCT/GB2006/003205
【国際公開番号】WO2007/026139
【国際公開日】平成19年3月8日(2007.3.8)
【出願人】(504218369)エセブス・リミテッド (6)
【Fターム(参考)】