説明

メモリ装置、メモリ認証システム、及びメモリ認証プログラム

【課題】外部装置に標準的に実装されているアクセス手段を利用して、半導体メモリに対する書込み及び読出しの認証を行うことができる、メモリ装置を提供すること。
【解決手段】
非接触ICカード10は、カード処理装置20からの読出し及び書込みを受ける非接触ICカード10であって、カード処理装置20による読出し及び書込みの認証が行われた場合にのみ、情報の読出し及び書込みが可能な不揮発性メモリ12と、認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能なデータ交換用レジスタ13と、第1認証情報を生成し、当該生成した第1認証情報をデータ交換用レジスタ13に書込む、認証情報生成部14aと、カード処理装置20からデータ交換用レジスタ13に書込まれた第2認証情報を当該データ交換用レジスタ13から読出し、当該読出した第2認証情報に基づいて認証を行う認証制御部14bとを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、メモリ装置、メモリ認証システム、及びメモリ認証プログラムに関する。
【背景技術】
【0002】
近年、半導体メモリの高密度化・小型化に伴い、非接触型ICカード、携帯電話、携帯ゲーム機用メディア等において半導体メモリが広く用いられている。この半導体メモリには、ICカードや携帯電話のID番号、ユーザの個人情報等、第三者による不正なアクセスから保護すべきデータや、ゲームのコンテンツ等、不正なコピーを防ぐべきデータ等が格納される。従って、半導体メモリに格納されるこれらのデータを不正アクセスや不正コピーから保護するため、次のような保護方法が従来用いられている。
【0003】
例えば、半導体メモリに対する外部装置による不正アクセス等を防ぐため、半導体メモリと外部装置との間で認証を行う方法がある。この認証方式としては、例えばチャレンジ/レスポンス方式がある。このチャレンジ/レスポンス方式においては、半導体メモリにアクセスをしようとする外部装置が認証要求を半導体メモリに送信すると、半導体メモリは外部装置に対して乱数等のチャレンジデータを送信する。このチャレンジデータに基づき、外部装置は特定の関数を用いてレスポンスデータを生成し、当該生成したレスポンスデータを半導体メモリに送信する。半導体メモリは、外部装置に送信したチャレンジデータから別途生成したレスポンスデータと、外部装置から受信したレスポンスデータとを比較し、両者が一致するか否かに基づいて外部装置の認証を行う。これにより、特定の関数を有する外部装置のみが半導体メモリへアクセス可能となる(例えば、特許文献1参照)。
【0004】
また、半導体メモリと外部装置との間でデータの通信を行なう際に、データ自体を公開鍵暗号方式等の暗号技術を用いて暗号化することにより、第三者によるデータのコピーや閲覧等を防止する方法や、電子署名が付されていない不正コピーされたデータの利用を禁止する方法等も利用されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2007−183991(段落0057)
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかし、上述の如き従来のチャレンジ/レスポンス方式では、チャレンジ/レスポンス方式による認証専用のコマンドを用いなければならない等、通常のメモリシステムにおけるメモリへのアクセス手段とは異なるアクセス手段を用いる必要があった。従って、NFC(Near Field Communication)規格等、認証専用のコマンドがない通信規格を利用する機器においては、従来のチャレンジ/レスポンス方式を利用して認証を行うことが困難であった。
【0007】
本発明は、上記に鑑みてなされたものであって、外部装置に標準的に実装されているアクセス手段を利用して、半導体メモリに対する書込み及び読出しの認証を行うことができる、メモリ装置、メモリ認証システム、及びメモリ認証プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
この請求項1に記載のメモリ装置、請求項3に記載のメモリ認証システム又は請求項7に記載のメモリ認証プログラムによれば、メモリ装置は、外部装置による読出し及び書込みの認証が行われた場合にのみ、情報の読出し及び書込みが可能な第1記憶手段と、認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段とを備え、第2記憶手段から第1認証情報を読出した外部装置によって当該第2記憶手段に書込まれた第2認証情報に基づいて認証を行う。従って、外部装置に標準的に実装されているアクセス手段を利用して、第2記憶手段を介してメモリ装置に対する書込み及び読出しの認証を行うことができる。
【0009】
また、請求項2に記載のメモリ装置、又は請求項4に記載のメモリ認証システムによれば、メモリ装置は、情報の読出し及び書込みが可能な第1記憶手段と、認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段とを備え、外部装置は、第2記憶手段から第1認証情報を読出したメモリ装置によって第2記憶手段に書込まれた第2認証情報に基づいて認証を行う。従って、外部装置に標準的に実装されているアクセス手段を利用して、第2記憶手段を介してメモリ装置の認証を行うことができる。
【0010】
また、請求項5に記載のメモリ認証システムによれば、第1記憶手段は不揮発性メモリであり、第2記憶手段は不揮発性メモリのメモリ空間外のメモリ番地が割り当てられたレジスタであるので、外部装置に標準的に実装されている、不揮発性メモリへのアクセス手段を利用して、レジスタを介してメモリ装置に対する書込み及び読出しの認証を行うことができる。
【0011】
また、請求項6に記載のメモリ認証システムによれば、不揮発性メモリは、レジスタと同じメモリ番地が割り当てられたダミーメモリを含み、認証情報生成手段や認証要求手段は、認証情報をレジスタに書込む際にダミーメモリへの書込みも行う。これにより、レジスタに情報を書き込む場合でも不揮発性メモリへの情報の書込み時と同様の電力消費、及び書込み時間を発生させることができ、外部から観測した消費電力や書き込み時間に基づいて第1認証情報の出力等の認証に関する処理の実行の有無を推測されることを防止できる。
【図面の簡単な説明】
【0012】
【図1】メモリ認証システムの電気的構成を機能概念的に示したブロック図である。
【図2】アクセス管理部の回路構成を概念的に例示した図である。
【図3】認証処理のフローチャートである。
【図4】非接触ICカードの電気的構成を機能概念的に示したブロック図である。
【図5】バスAのバス構成を概念的に示した図である。
【図6】不揮発性メモリからの読出しにおけるシステムバスのタイミングチャートである。
【図7】不揮発性メモリへの書込みにおけるシステムバスのタイミングチャートである。
【図8】認証処理のフローチャートである。
【図9】実施の形態3に係るメモリ認証システムの電気的構成を機能概念的に示したブロック図である。
【図10】認証処理のフローチャートである。
【発明を実施するための形態】
【0013】
以下に添付図面を参照して、この発明に係るメモリ装置、メモリ認証システム、及びメモリ認証プログラムの各実施の形態を詳細に説明する。
【0014】
まず、〔I〕各実施の形態の具体的内容について順次説明し、次に、〔II〕各実施の形態に対する変形例について説明する。ただし、各実施の形態によって本発明が限定されるものではない。なお、メモリ装置、メモリ認証システム、及びメモリ認証プログラムの適用対象は任意で、例えば、この発明に係るメモリ装置を、非接触ICカード、携帯情報端末、携帯ゲーム機用メディア等のメモリ装置に適用することができる。また、この発明に係るメモリ認証システムを、メモリ装置として非接触ICカード、携帯情報端末、又は携帯ゲーム機用メディア等を備え、当該メモリ装置に対応する外部装置としてカード処理装置、端末情報処理装置、又は携帯ゲーム機等を備えるメモリ認証システムに適用することができる。以下の実施の形態では、メモリ装置として非接触ICカードが用いられ、外部装置としてカード処理装置及びカード処理システムが用いられる場合を例示して説明する。
【0015】
〔I〕各実施の形態の具体的内容
まず、各実施の形態の具体的内容について説明する。
【0016】
〔実施の形態1〕
最初に、実施の形態1について説明する。この形態は、メモリ装置に対する外部装置による読出し及び書込みの認証を行う形態である。
【0017】
(構成)
まず、メモリ認証システムの構成を説明する。図1はメモリ認証システムの電気的構成を機能概念的に示したブロック図である。図1に示すようにメモリ認証システム1は、非接触ICカード10、カード処理装置20、及びカード処理システム30を備えている。
【0018】
(構成−非接触ICカード)
非接触ICカード10は、カード処理装置20からの読出し及び書込みを受けるメモリ装置であって、通信部11、不揮発性メモリ12、データ交換用レジスタ13、及び制御部14を、システムバス15にて通信可能に接続して構成されている。
【0019】
通信部11は、カード処理装置20との間で情報の非接触通信を行なう通信手段である。この通信部11は、例えば公知のRFフロントエンドとして構成されている。
【0020】
不揮発性メモリ12は、カード処理装置20との間における認証が行われた場合にのみ、当該カード処理装置20に対する読出しコマンドによる情報の読出し及び書込みコマンドによる情報の書き込みが可能なメモリであり、特許請求の範囲における第1記憶手段に対応する。この不揮発性メモリ12としては、例えばEEPROM(Electrically Erasable and Programmable Read Only Memory)が用いられる。本実施の形態1では、不揮発性メモリ12はアドレス0x00から0xEFにマッピングされているものとする。
【0021】
データ交換用レジスタ13は、不揮発性メモリ12に対するコマンドと同様の読出し及び書込みコマンドによって、認証に関する情報の読出し及び書込みが可能なレジスタであり、特許請求の範囲における第2記憶手段に対応する。このデータ交換用レジスタ13としては、例えばフリップフロップ等の回路素子を用いた公知のレジスタが用いられる。本実施の形態1では、データ交換用レジスタ13は不揮発性メモリ12のアドレスとは異なるアドレス0xF0から0xFFにマッピングされている。
【0022】
制御部14は、非接触カードとカード処理装置20との間の認証に関する制御を行う制御手段であり、例えばアナログ回路やデジタル回路、及び当該回路上で動作する各種のプログラムによって構成されており、機能概念的に、認証情報生成部14a、認証制御部14b、及びアクセス管理部14cを備える。認証情報生成部14aは、認証に関する第1認証情報を生成し、当該生成した第1認証情報をデータ交換用レジスタ13に書込む、認証情報生成手段である。この「第1認証情報」は、従来のチャレンジ/レスポンス方式におけるチャレンジデータに対応する。認証制御部14bは、カード処理装置20からデータ交換用レジスタ13に書込まれた、認証に関する第2認証情報を当該データ交換用レジスタ13から読出し、当該読出した第2認証情報に基づいて認証を行う認証制御手段である。この「第2認証情報」は、従来のチャレンジ/レスポンス方式におけるレスポンスデータに対応する。アクセス管理部14cは、認証結果に基づき、カード処理装置20からの不揮発性メモリ12やデータ交換用レジスタ13に対するアクセスの管理を行うアクセス管理手段である。図2は、アクセス管理部14cの回路構成を概念的に例示した図である。図2に示すように、アクセス管理部14cは、コンパレータ14d、第1ANDゲート14e、及び第2ANDゲート14fを備える。例えばアクセス管理部14cが不揮発性メモリ12に対する書込みの管理を行う場合、コンパレータ14dは、不揮発性メモリ12のアドレスと、カード処理装置20からの書込み対象となるアドレスとの入力を受け、その比較結果(例えば、両者が一致した場合に「1」、不一致の場合に「0」)を出力する。第1ANDゲート14eには、コンパレータ14dからの出力値と、認証制御部14bによる認証結果に対応する認証済みフラグ(例えば、認証された場合に「1」、認証が拒否された場合に「0」)とが入力される。第2ANDゲート14fには、第1ANDゲート14eからの出力値と、書込み制御信号(例えば、書込み要求がある場合に「1」)とが入力される。あるいは、アクセス管理部14cが不揮発性メモリ12からの読出しの管理を行う場合には、コンパレータ14dは、不揮発性メモリ12のアドレスと、カード処理装置20からの読出し対象となるアドレスとの入力を受ける。また、第2ANDゲート14fには、第1ANDゲート14eからの出力値と、読出し制御信号とが入力される。
【0023】
(構成−カード処理装置)
図1に戻り、カード処理装置20は、非接触ICカード10に対する情報の読出し及び書込みを行う外部装置であって、通信給電部21、ネットワークインタフェース(以下「ネットワークIF」)22、及び制御部23を、システムバス24にて通信可能に接続して構成されている。
【0024】
通信給電部21は、非接触ICカード10との間で情報の通信を行なうとともに、当該非接触ICカード10に電磁誘導等の公知の方法で給電する通信給電手段である。
【0025】
ネットワークIF22は、カード処理装置20がカード処理システム30との間でネットワーク2を介した通信を行うための通信制御インターフェースである。このネットワークIF22は、例えばネットワークボードとして構成されている(後述するネットワークIF31についても同じ)。
【0026】
制御部23は、カード処理装置20の各部を制御する制御手段であり、CPUや、このCPU上で解釈実行される各種のプログラム(OSなどの制御プログラムや、各種の処理手順などを規定したプログラム)、及び所要プログラムや所要データを格納するための内部メモリを備えて構成される(後述する制御部32についても同じ)。
【0027】
(構成−カード処理システム)
カード処理システム30は、ネットワークIF31及び制御部32を、システムバス33にて通信可能に接続して構成されている。
【0028】
ネットワークIF31は、カード処理システム30がカード処理装置20との間でネットワーク2を介した通信を行うための通信制御インターフェースである。
【0029】
制御部32は、カード処理システム30の各部を制御する制御手段であり、機能概念的に認証要求部32aを備える。認証要求部32aは、第1認証情報をカード処理装置20の通信給電部21を介してデータ交換用レジスタ13から読出し、当該読出した第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報をカード処理装置20の通信給電部21を介してデータ交換用レジスタ13に書込む、認証要求手段である。
【0030】
(処理)
次に、図1に示したメモリ認証システム1にて行われる認証処理について説明する。図3は認証処理のフローチャートである。この認証処理は、例えば、カード処理装置20から非接触ICカード10の制御部14に対して通信部11を介してアクセス要求が行われた場合に起動される。
【0031】
認証処理が起動すると、非接触ICカード10の認証情報生成部14aは第1認証情報を生成する(SA1)。例えば、認証情報生成部14aは第1認証情報として擬似乱数を生成する。この擬似乱数は、例えば、不揮発性メモリ12に格納されている可変情報(例えば、キャッシュカードに格納されている預金残高の情報等)を、固定の乱数生成鍵を用いて暗号化することによって得られる。
【0032】
続いて、認証情報生成部14aは、SA1で生成した第1認証情報をデータ交換用レジスタ13に書込むとともに、認証制御部14bに転送する(SA2)。
【0033】
次に、カード処理装置20の制御部23は、データ交換用レジスタ13に対応するアドレス0xF0から0xFFに格納されている第1認証情報を、通信給電部21を介して読出しコマンドを用いて読出し、当該読出した第1認証情報をネットワークIF22を介してカード処理システム30に転送する(SA3)。
【0034】
カード処理システム30の認証要求部32aは、カード処理装置20から転送された第1認証情報を、第2認証情報に変換し、第2認証情報をネットワークIF31を介してカード処理装置20に転送する(SA4)。例えば、認証要求部32aは、カード処理システム30に格納されている認証鍵を暗号鍵として、第1認証情報を第2認証情報に暗号化する。例えば、AES(Advanced Encryption Standard)暗号アルゴリズムにより暗号化を行う関数Fを使用して、第2認証情報=F(第1認証情報、暗号鍵)として暗号化を行うことができる。
【0035】
カード処理装置20の制御部23は、カード処理システム30からネットワークIF31を介して転送された第2認証情報を、通信給電部21を介して書込み専用コマンドを用いてデータ交換用レジスタ13に対応するアドレス0xF0から0xFFに書込む(SA5)。
【0036】
非接触ICカード10の認証制御部14bは、データ交換用レジスタ13に書込まれた第2認証情報を読出す(SA6)。そして、当該非接触ICカード10に格納されている認証鍵を暗号鍵として、読出した第2認証情報を第1認証情報に復号化する(SA7)。
【0037】
続いて、認証制御部14bは、SA7で復号化した第1認証情報と、SA2で認証情報生成部14aから転送された第1認証情報とを比較し、両者が一致するか否かを判定する(SA8)。その結果、両者が一致すると判定した場合(SA8、Yes)、認証制御部14bは、カード処理装置20によるアクセスは正当であるとし、不揮発性メモリ12に対するカード処理装置20による読出し及び書込みの認証を行う(SA9)。この場合、アクセス管理部14cは、カード処理装置20からの不揮発性メモリ12に対する情報の読出し及び書込みを可能とする。
【0038】
例えば、SA9において認証制御部14bにより読出し及び書込みの認証が行われた場合、図2に示した認証済みフラグとして「1」が第1ANDゲート14eに入力される。また、カード処理装置20から入力された書込み対象となるアドレスと、不揮発性メモリ12のアドレスとが一致している場合、コンパレータ14dから「1」が第1ANDゲート14eに入力される。この場合、第1ANDゲート14eから第2ANDゲート14fには「1」が入力される。従って、第2ANDゲート14fに書込み制御信号として「1」が入力された場合、第2ANDゲート14fからは書込み制御信号「1」が出力され、書込み対象となるアドレスに情報の書込みが行われる。
【0039】
一方、SA7で復号化した第1認証情報と、SA2で認証情報生成部14aから転送された第1認証情報とが一致しないと判定した場合(SA8、No)、認証制御部14bは、カード処理装置20によるアクセスは不正であるとし、不揮発性メモリ12に対するカード処理装置20による読出し及び書込みの認証を拒否する(SA10)。この場合、アクセス管理部14cは、カード処理装置20からの不揮発性メモリ12に対する情報の読出し及び書込みを不可とする。
【0040】
例えば、SA10において認証制御部14bにより読出し及び書込みの認証が拒否された場合、図2に示した認証済みフラグとして「0」が第1ANDゲート14eに入力される。また、カード処理装置20から入力された書込み対象となるアドレスと、不揮発性メモリ12のアドレスとが一致している場合、コンパレータ14dから「1」が第1ANDゲート14eに入力される。この場合、第1ANDゲート14eから第2ANDゲート14fには「0」が入力される。従って、第2ANDゲート14fに書込み制御信号として「1」が入力されたとしても、第2ANDゲート14fからは書込み制御信号「0」が出力されるため、書込み対象となるアドレスに情報の書込みが行われることはない。
【0041】
SA9又はSA10の処理の後、非接触ICカード10、カード処理装置20、及びカード処理システム30は、認証処理を終了する。
【0042】
〔実施の形態2〕
次に、実施の形態2について説明する。この形態は、第1認証情報や第2認証情報をデータ交換用レジスタ13に書込む際、レジスタと同じメモリ番地が割り当てられたダミーメモリにも書込む形態である。なお、実施の形態2の構成は、特記する場合を除いて実施の形態1の構成と略同一であり、実施の形態1の構成と略同一の構成についてはこの実施の形態1で用いたものと同一の符号及び/又は名称を必要に応じて付して、その説明を省略する。
【0043】
(構成−非接触ICカード)
まず、非接触ICカード10の構成を説明する。図4は、非接触ICカード10の電気的構成を機能概念的に示したブロック図である。図4に示したように、本実施の形態2に係る通信部11は、クロック生成部11aを備えている。クロック生成部11aは、一定周期のクロック信号を出力する。
【0044】
不揮発性メモリ12は、メモリセル12a及びチャージポンプ12bを備えている。メモリセル12aは、情報の記憶を行う記憶素子である。チャージポンプ12bは、メモリセル12aへの情報の書込みを行う際に必要な書込み電圧を発生させるための、昇圧回路である。このチャージポンプ12bは、例えばコンデンサとスイッチとを組合わせて構成される。
【0045】
また、本実施の形態2に係る不揮発性メモリ12は、データ交換用レジスタ13と同じアドレスが割り当てられたダミーメモリ12cを含む。
【0046】
制御部14は、実施の形態1における認証情報生成部14a、認証制御部14b、及びアクセス管理部14cに加えて、カウンタ14gを備える。カウンタ14gは、クロック生成部11aから出力されたクロック信号を計数し、予め設定された最大値を超えてオーバーフローした時にはラッチ信号を出力する。このカウンタ14gとしては、例えば、シフトレジスタ等を用いたプログラマブル・カウンタを用いることができる。
【0047】
システムバス15は、バスA15a及びバスB15bを備えている。図5は、バスA15aのバス構成を概念的に示した図である。なお、バスB15bのバス構成もバスA15aと同様である。図5に示したように、バスA15aは、データバス15c、アドレスバス15d、及びコントロールバス15eを備える。データバス15cはデータを転送するためのバスであり、例えば図5に示したように、D0からD7までの8ビットのバス幅を有している。アドレスバス15dはアドレスを転送するためのバスであり、例えば図5に示したように、A0からA7までの8ビットのバス幅を有している。コントロールバス15eは不揮発性メモリ12やデータ交換用レジスタ13等の周辺装置の制御情報を転送するためのバスである。この制御情報として、周辺装置の活性化信号であるチップ・イネーブル信号(CE)、周辺装置への読出し指示信号であるアウトプット・イネーブル信号(OE)、及び周辺装置への書込み指示信号であるライト・イネーブル信号(WE)が含まれる。なお、以下の説明ではこれらの信号は負論理(信号が低レベルの場合にTRUE、高レベルの場合にFALSE)で出力されるものとする。
【0048】
また、バスB15bには、バスA15aを流れる信号を公知のインバータ(図示省略)により反転した信号が常時流される。これにより、システムバス15全体としての消費電力は、バスA15a及びバスB15bを流れる信号の内容、信号の出力元や出力先のアドレス、用いられたコマンド等に関わらず、一定に保たれる。
【0049】
(動作)
次に、非接触ICカード10の内部における情報の読出し及び書込みの動作について説明する。図6は不揮発性メモリ12からの読出しにおけるシステムバス15のタイミングチャート、図7は不揮発性メモリ12への書込みにおけるシステムバス15のタイミングチャートである。
【0050】
(動作−不揮発性メモリからの情報の読出し)
図6に示すように、不揮発性メモリ12から情報の読出しを行う場合、制御部14は、読出し対象である不揮発性メモリ12を活性化するため、不揮発性メモリ12に対するチップ・イネーブル信号を低レベルとする(t1)。続いて、読出し対象のアドレスをアドレスバス15dに出力し(t2)、更に不揮発性メモリ12に対するアウトプット・イネーブル信号を低レベルとする(t3)。
【0051】
不揮発性メモリ12は、チップ・イネーブル信号が低レベルの場合、アウトプット・イネーブル信号が低レベルになると、その次のクロックの立下りで読出し対象のアドレスをアドレスバス15dから取得し(t4)、当該アドレスに対応して格納されている情報を次のクロックの立下りでデータバス15cに出力する(t5)。データバス15cに出力された情報は、制御部14によって取得される。
【0052】
(動作−不揮発性メモリへの情報の書込み)
図7に示すように、不揮発性メモリ12への情報の書込みを行う場合、制御部14は、書込み対象である不揮発性メモリ12を活性化するため、不揮発性メモリ12に対するチップ・イネーブル信号を低レベルとする(t6)。続いて、書込み対象のアドレスをアドレスバス15dに出力するとともに、書込み対象の情報をデータバス15cに出力する(t7)。その後、不揮発性メモリ12に対するライト・イネーブル信号を低レベルとする(t8)。
【0053】
不揮発性メモリ12は、チップ・イネーブル信号が低レベルの場合、ライト・イネーブル信号が低レベルになると、その次のクロックの立下りで書込み対象のアドレスをアドレスバス15dから取得するとともに、書込み対象の情報をデータバス15cから取得する(t9)。そして、さらに次のクロックの立下りでチャージポンプ12bを動作させることで書込み電圧を発生させ、取得した情報をメモリセル12aに書込む(t10)。
【0054】
なお、メモリセル12aに書込みを行うためには十分な電荷を蓄積する必要があるため、一般的には1ミリ秒オーダの時間が必要となる。この電荷の蓄積時間は、例えばカウンタ14gを用いて計時される。
【0055】
(動作−データ交換用レジスタからの情報の読出し)
データ交換用レジスタ13からの情報の読出しは、不揮発性メモリ12からの情報の読出しと同様である。すなわち、データ交換用レジスタ13に対するチップ・イネーブル信号を低レベルとした後、読出し対象のアドレスをアドレスバス15dに出力し、更にデータ交換用レジスタ13に対するアウトプット・イネーブル信号を低レベルとすることにより、データ交換用レジスタ13からの情報の読出しが行われる。
【0056】
(動作−データ交換用レジスタへの情報の書込み)
データ交換用レジスタ13への情報の書込みを行う場合、制御部14は、データ交換用レジスタ13に対するチップ・イネーブル信号を低レベルとした後、書込み対象のアドレスをアドレスバス15dに出力とともに、書込み対象の情報をデータバス15cに出力し、更にデータ交換用レジスタ13に対するライト・イネーブル信号を低レベルとする。
【0057】
データ交換用レジスタ13は、チップ・イネーブル信号が低レベルの場合、ライト・イネーブル信号が低レベルになると、その次のクロックの立下りで書込み対象のアドレスをアドレスバス15dから取得するとともに、書込み対象の情報をデータバス15cから取得し、当該データ交換用レジスタ13への書込みを行う。データ交換用レジスタ13への書込みの場合は、メモリセル12aへの書込みと異なり、高圧の書込み電圧を発生させる必要がなく、書込み自体も高速であるため、不揮発性メモリ12への書込みと比較して極めて短時間書込みが終了する。例えば、EEPROMへの書込み(厳密には消去+書込み)の時間は、EEPROMのセル構造や書込みプロセスによって異なるが、概ね数msオーダであるのに対して、データ交換用レジスタ13への書込みは、受信キャリア(fc=13.56MHz)を4分周してバス・クロックとし、4クロック(ステート)で書き込みを行う場合を想定すると、4×4/(13.56×10−6)≒1.18μsとなる。
【0058】
更に、データ交換用レジスタ13への情報の書込みを行う際、制御部14は不揮発性メモリ12に対してもチップ・イネーブル信号を低レベルとする。これにより、書き込み対象であるデータ交換用レジスタ13と同じアドレスのダミーメモリ12cに対しても、情報の書込みが行われる。これに伴い、不揮発性メモリ12に書込みを行うためのチャージポンプ12bの動作が発生し、上述の不揮発性メモリ12への情報の書込み時と同様の電力消費、及び書込み時間が発生する。
【0059】
(処理)
次に、本実施の形態2に係るメモリ認証システム1にて行われる認証処理について説明する。図8は認証処理のフローチャートである。なお、本実施の形態2における認証処理のSB3からSB12の各処理は、実施の形態1における認証処理のSA1からSA10と同様であるので、説明を省略する。
【0060】
認証処理が起動すると、認証情報生成部14aは、カウンタ14gがラッチ信号を出力するための最大値を設定する(SB1)。この最大値は、例えば擬似乱数として生成される。
【0061】
続いて、認証情報生成部14aは、カウンタ14gからラッチ信号が入力されたか否かを判定し(SB2)、ラッチ信号が入力されていない場合(SB2、No)、ラッチ信号が入力されるまで待機する。そして、ラッチ信号が入力されたと判定した場合(SB2、Yes)、認証情報生成部14aは第1認証情報を生成する(SB3)。
【0062】
これにより、カード処理装置20から非接触ICカード10の制御部14に対して通信部11を介してアクセス要求が行われてから第1認証情報が生成されるまでに要する時間は、認証処理が実行される毎に、カウンタ14gの最大値に応じてランダムに変化することになる。
【0063】
〔実施の形態3〕
次に、実施の形態3について説明する。この形態は、メモリ装置の認証を行う形態である。なお、実施の形態3の構成は、特記する場合を除いて実施の形態1の構成と略同一であり、実施の形態1の構成と略同一の構成についてはこの実施の形態1で用いたものと同一の符号及び/又は名称を必要に応じて付して、その説明を省略する。
【0064】
(構成)
まず、メモリ認証システム1の構成を説明する。図9は実施の形態3に係るメモリ認証システム1の電気的構成を機能概念的に示したブロック図である。
【0065】
(構成−非接触ICカード)
本実施の形態3においては、非接触ICカード10の制御部14は、実施の形態1の制御部14における認証情報生成部14a及び認証制御部14bに代えて、認証要求部14hを備える。認証要求部14hは、カード処理装置20から書込まれた第1認証情報をデータ交換用レジスタ13から読出し、当該読出した第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報をデータ交換用レジスタ13に書込む、認証要求手段である。
【0066】
(構成−カード処理システム)
本実施の形態3においては、カード処理システム30の制御部32は、実施の形態1の制御部32における認証要求部32aに代えて、認証情報生成部32b及び認証制御部32cを備える。認証情報生成部32bは、第1認証情報を生成し、当該生成した第1認証情報を、カード処理装置20を介してデータ交換用レジスタ13に書込む、認証情報生成手段である。認証制御部32cは、認証要求部14hによって書込みされた第2認証情報を、カード処理装置20を介してデータ交換用レジスタ13から読出し、当該読出した第2認証情報に基づいて認証を行う認証制御手段である。
【0067】
(処理)
次に、図9に示したメモリ認証システム1にて行われる認証処理について説明する。図10は認証処理のフローチャートである。この認証処理は、例えば、非接触ICカード10からカード処理装置20の制御部23に対して通信給電部21を介してアクセス要求が行われた場合に起動される。
【0068】
認証処理が起動すると、カード処理システム30の認証情報生成部32bは第1認証情報を生成し、認証制御部32cに転送するとともに、ネットワークIF31を介してカード処理装置20に転送する(SC1)。例えば、認証情報生成部32bは第1認証情報として擬似乱数を生成する。この擬似乱数は、例えば、年月日等の可変情報を、固定の乱数生成鍵を用いて暗号化することによって得られる。
【0069】
続いて、カード処理装置20の制御部23は、SC1で転送された第1認証情報を、通信給電部21を介して書込み専用コマンドを用いてデータ交換用レジスタ13に対応するアドレス0xF0から0xFFに書込む(SC2)。
【0070】
次に、非接触ICカード10の認証要求部14hは、データ交換用レジスタ13に書込まれた第1認証情報を読出し(SC3)、当該非接触ICカード10に格納されている認証鍵を暗号鍵として、第2認証情報に変換する(SC4)。そして、認証要求部14hは、変換した第2認証情報をデータ交換用レジスタ13に書込む(SC5)。
【0071】
カード処理装置20の制御部23は、データ交換用レジスタ13に対応するアドレス0xF0から0xFFに格納されている第2認証情報を、通信給電部21を介して読出しコマンドを用いて読出し、当該読出した第2認証情報をネットワークIF22を介してカード処理システム30に転送する(SC6)。カード処理システム30の認証制御部32cは、当該カード処理システム30に格納されている認証鍵を暗号鍵として、読出した第2認証情報を第1認証情報に復号化する(SC7)。
【0072】
続いて、認証制御部32cは、SC7で復号化した第1認証情報と、SC2で認証情報生成部32bから転送された第1認証情報とを比較し、両者が一致するか否かを判定する(SC8)。その結果、両者が一致すると判定した場合(SC8、Yes)、認証制御部32cは、非接触ICカード10によるアクセスは正当であるとし、非接触ICカード10の認証を行う(SC9)。
【0073】
一方、SC7で復号化した第1認証情報と、SC2で認証情報生成部32bから転送された第1認証情報とが一致しないと判定した場合(SC8、No)、認証制御部32cは、非接触ICカード10によるアクセスは不正であるとし、非接触ICカード10の認証を拒否する(SC10)。
【0074】
SC9又はSC10の処理の後、非接触ICカード10、カード処理装置20、及びカード処理システム30は、認証処理を終了する。
【0075】
〔II〕各実施の形態に対する変形例
以上、本発明に係る各実施の形態について説明したが、本発明の具体的な構成及び手段は、特許請求の範囲に記載した各発明の技術的思想の範囲内において、任意に改変及び改良することができる。以下、このような変形例について説明する。
【0076】
(変形例−相互認証について)
上述した実施の形態1と実施の形態3とを組合わせて、非接触ICカード10とカード処理システム30との間で相互に認証を行うように構成してもよい。例えば、非接触ICカード10の制御部14とカード処理システム30の制御部32との双方に、認証情報生成部、認証制御部、及び認証要求部を設け、実施の形態1で説明した認証処理と、実施の形態3で説明した認証処理とを実行させる。これにより、非接触ICカード10に対するカード処理システム30による読出し及び書込みの認証と、カード処理システム30にアクセスする非接触ICカード10の認証とが共に行われた場合にのみ、非接触ICカード10の制御部14とカード処理システム30とを相互にアクセス可能とすることができる。
【0077】
(変形例−認証情報生成部について)
上述した各実施の形態の非接触ICカード10の制御部14に、認証制御部14b、認証情報生成部14a、又は認証要求部14h等と比較して消費電力の大きい素子を実装し、当該消費電力が常時変動するように動作させてもよい。これにより、非接触ICカード10の消費電力が外部から計測された場合に、当該消費電力に基づいて第1認証情報の出力等の認証に関する処理の実行の有無を推測されることを防止できる。
【0078】
(変形例−データ交換用レジスタについて)
上述した各実施の形態では、データ交換用レジスタ13に一定のアドレス(0xF0から0xFF)が割り当てられているが、異なるアドレスを各非接触カード10のデータ交換用レジスタ13に割り当ててもよい。このような異なるアドレスの割り当て方法としては、例えば、以下の2つの方法が挙げられる。第1の方法は、データ交換用レジスタ13のアドレスとして、各非接触ICカード10の製造時や発行時に、カード毎又はロット毎に異なるアドレスを書き込む方法である。第2の方法は、データ交換用レジスタ13のアドレスとして、同一の非接触ICカード10においてセッション毎に異なるアドレスを持たせる方法であり、電磁誘導等による給電を受ける毎に、第1認証情報として使用する擬似乱数又はその一部を新規なアドレスとして使用する方法である。このような2つの方法によりアドレスの設定を行った場合においては、当該アドレスが非接触ICカード10の外部から指定された際に、当該アドレスに基づいてデータ交換用レジスタ13にアクセスすることで、一層秘匿性の高い通信を行うことが可能となる。
【0079】
あるいは、非接触ICカード10とカード処理装置20との間の通信セッション毎に、データ交換用レジスタ13のアドレスを変更するようにしてもよい。例えば、通信セッション毎に、公知の乱数生成手段を用いて生成した乱数を用いてデータ交換用レジスタ13のアドレスを更新すると共に、当該更新したデータ交換用レジスタ13のアドレスを、データ交換用レジスタ13とは別に非接触ICカード10に設けたアドレス格納用レジスタに格納し、認証情報生成部14a、認証制御部14b、及びカード処理装置20がデータ交換用レジスタ13に対する書込みや読出しを行う際に、そのアドレス格納用レジスタに格納されたデータ交換用レジスタ13のアドレスを参照するようにしてもよい。
【0080】
このような方法を実現するためには、非接触ICカード10に持たせるアドレスとカード処理装置20に保持させるアドレスを相互に一致させる必要があるが、例えば同一の計算方法を利用してアドレス値を変化させることで、常に同一のアドレスを保持することが可能となる。
【0081】
(変形例−分散や統合について)
また、上述した各電気的構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各部の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成できる。例えば、カード処理装置20とカード処理システム30とを相互に統合してもよい。
【符号の説明】
【0082】
1 メモリ認証システム
2 ネットワーク
10 非接触ICカード
11 通信部
11a クロック生成部
12 不揮発性メモリ
12a メモリセル
12b チャージポンプ
12c ダミーメモリ
13 データ交換用レジスタ
14、23、32 制御部
14a、32b 認証情報生成部
14b、32c 認証制御部
14c アクセス管理部
14d コンパレータ
14e 第1ANDゲート
14f 第2ANDゲート
14g カウンタ
14h、32a 認証要求部
15、24、33 システムバス
15a バスA
15b バスB
15c データバス
15d アドレスバス
15e コントロールバス
20 カード処理装置
21 通信給電部
22、31 ネットワークIF
30 カード処理システム

【特許請求の範囲】
【請求項1】
外部装置からの読出し及び書込みを受けるメモリ装置であって、
前記外部装置による読出し及び書込みの認証が行われた場合にのみ、情報の読出し及び書込みが可能な第1記憶手段と、
前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成手段と、
前記外部装置から前記第2記憶手段に書込まれた第2認証情報を当該第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御手段と、
を備えることを特徴とするメモリ装置。
【請求項2】
外部装置からの読出し及び書込みを受けるメモリ装置であって、
情報の読出し及び書込みが可能な第1記憶手段と、
前記外部装置による当該メモリ装置の認証に関する、第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
前記外部装置から書込まれた前記第1認証情報を前記第2記憶手段から読出し、当該読出した前記第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報を前記第2記憶手段に書込む、認証要求手段と、
を備えることを特徴とするメモリ装置。
【請求項3】
メモリ装置と、前記メモリ装置に対する情報の読出し及び書込みを行う外部装置とを備え、前記メモリ装置に対する前記外部装置による読出し及び書込みの認証を行う、メモリ認証システムであって、
前記メモリ装置は、
前記認証が行われた場合にのみ、情報の読出し及び書込みが可能な第1記憶手段と、
前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成手段と、
前記外部装置から前記第2記憶手段に書込まれた第2認証情報を当該第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御手段と、を備え、
前記外部装置は、
前記第1認証情報を前記第2記憶手段から読出し、当該読出した前記第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報を前記第2記憶手段に書込む、認証要求手段を備えること、
を特徴とするメモリ認証システム。
【請求項4】
メモリ装置と、前記メモリ装置に対する情報の読出し及び書込みを行う外部装置とを備え、前記メモリ装置の認証を行う、メモリ認証システムであって、
前記メモリ装置は、
情報の読出し及び書込みが可能な第1記憶手段と、
前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みが可能な第2記憶手段と、
前記外部装置から書込まれた前記第1認証情報を前記第2記憶手段から読出し、当該読出した前記第1認証情報に基づいて第2認証情報を生成し、当該生成した第2認証情報を前記第2記憶手段に書込む、認証要求手段を備え、
前記外部装置は、
前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成手段と、
前記認証要求手段によって書込みされた前記第2認証情報を前記第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御手段と、を備えること、
を特徴とするメモリ認証システム。
【請求項5】
前記第1記憶手段は、
不揮発性メモリであり、
前記第2記憶手段は、
前記不揮発性メモリのメモリ空間外のメモリ番地が割り当てられたレジスタであること、
を特徴とする請求項3又は4に記載のメモリ認証システム。
【請求項6】
前記不揮発性メモリは、
前記レジスタと同じメモリ番地が割り当てられたダミーメモリを含み、
前記認証情報生成手段は、
前記第1認証情報を前記レジスタに書込む際、当該第1認証情報を前記ダミーメモリに書込み、
前記認証要求手段は、
前記第2認証情報を前記レジスタに書込む際、当該第2認証情報を前記ダミーメモリに書込むこと、
を特徴とする請求項5に記載のメモリ認証システム。
【請求項7】
外部装置からの読出し及び書込みを受けるメモリ装置としてのコンピュータに実行させるメモリ認証プログラムであって、
前記コンピュータに、
前記外部装置による読出し及び書込みの認証が行われた場合にのみ、前記メモリ装置が備える第1記憶手段に対して情報の読出し及び書込みを行う第1記憶ステップと、
前記メモリ装置が備える第2記憶手段に対して、前記認証に関する第1認証情報及び第2認証情報の読出し及び書込みを行う第2記憶ステップと、
前記第1認証情報を生成し、当該生成した第1認証情報を前記第2記憶手段に書込む、認証情報生成ステップと、
前記外部装置から前記第2記憶手段に書込まれた第2認証情報を当該第2記憶手段から読出し、当該読出した第2認証情報に基づいて前記認証を行う認証制御ステップと、
を実行させることを特徴とするメモリ認証プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2010−237772(P2010−237772A)
【公開日】平成22年10月21日(2010.10.21)
【国際特許分類】
【出願番号】特願2009−82363(P2009−82363)
【出願日】平成21年3月30日(2009.3.30)
【出願人】(390039996)株式会社クオカード (2)
【Fターム(参考)】