説明

ICカード認証方法、装置及びプログラム

【課題】ユーザがICカードリーダを取り替えることなく、複数タイプのICカードリーダで複数タイプのICカードに対応可能にする。
【解決手段】電源投入時等のシステムリセットパルス(41)又は操作パネル17からの初期化指示入力に応答して、ICカードリーダ接続ポート23〜25のそれぞれにつき、ポートナンバとAPI関数のタイプ識別情報でもあるリーダタイプナンバとを対応付けた接続情報を作成し、これに基づいて各ポートを介し、該ポートに接続されたICカードリーダに対しポーリングしてICカードから認証情報を読み取る。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ICカードから認証情報を読み取り認証するICカード認証方法、装置及びプログラムに関する。
【背景技術】
【0002】
画像形成装置には、下記特許文献1に開示されているように、ICカードリーダが備えられ、ユーザがICカードをICカードリーダに挿入し又はかざすことにより、ユーザ認証が行われてログイン状態となる。
【0003】
従来では、1つの画像形成装置には1つのICカードリーダしか備えられていなかった。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−214958号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
このため、例えば国内の会社に設置された画像形成装置と海外の関連会社に設置された画像形成装置とで異なるタイプのICカードやICカードリーダが用いられ、これに対応できるようにするには、ICカードリーダを複数用意しておき、これらに対応したソフトウェアを画像形成装置にインストールしておくとともに、ユーザが所持しているICカードのタイプに応じて、ユーザがICカードリーダを取り替える必要があり、煩雑であった。
【0006】
本発明の目的は、このような問題点に鑑み、ユーザがICカードリーダを取り替えることなく、複数タイプのICカードリーダで複数のタイプのICカードに対応可能にするICカード認証方法、装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0007】
本発明の第1態様では、コンピュータが、ICカードから認証情報を読み取り認証するICカード認証方法において、
(a)ICカードリーダ接続状態初期化イベントの発生に応答して、複数のICカードリーダ接続ポートのそれぞれにつき、所定複数タイプのそれぞれのAPI関数でICカードリーダとの接続確立を試み、接続が確立した場合、そのポート識別情報とそのタイプ識別情報とを対応付けた接続情報を記憶手段に格納し、
(b)該接続情報に含まれる各ポート識別情報に対応したポートを介し、対応するタイプのAPI関数で定期的に、該ポートに接続されたICカードリーダに対しポーリングして、ICカードから認証情報を読み取る。
【0008】
本発明によるICカード認証方法、装置及びプログラムの第2態様では、第1態様において、該ICカードリーダ接続状態初期化イベントは、該コンピュータのリセット又は入力手段からのICカードリーダ接続状態初期化指示入力に基づいて発生する。
【発明の効果】
【0009】
上記第1態様の構成によれば、ICカードリーダ接続状態初期化イベントの発生に応答して、複数のICカードリーダ接続ポートのそれぞれにつき、ポート識別情報とAPI関数のタイプ識別情報とを対応付けた接続情報を作成し、これに基づいて各ポートを介し、該ポートに接続されたICカードリーダに対しポーリングしてICカードから認証情報を読み取るので、ユーザは自己が所持するICカードのタイプに応じてICカードリーダを取り替える必要がなく、操作性が向上するという効果を奏する。
【0010】
上記第2態様の構成によれば、コンピュータへの電源投入後においてICカードリーダ接続状態を変更しても、初期化指示を入力することにより上記接続情報が更新されるという効果を奏する。
【0011】
本発明の他の目的、特徴的な構成及び効果は、以下の説明を特許請求の範囲及び図面の記載と関係づけて読むことにより明らかになる。
【図面の簡単な説明】
【0012】
【図1】本発明の実施例1に係る画像形成装置に備えられた認証処理部の機能ブロック部である。
【図2】図1中のICカードリーダ接続状態初期化部の処理を示す概略フローチャートである。
【図3】図1中のICカードリーダ接続状態記憶部に格納されるテーブルの説明図である。
【図4】図2の処理で実行される具体例を示すシーケンス図である。
【図5】画像形成装置のハードウェア構成を示す概略ブロック図である。
【実施例1】
【0013】
図5は、画像形成装置10のハードウェア構成を示す概略ブロック図である。
【0014】
画像形成装置10では、CPU21がインターフェイス12を介してPROM13、DRAM14、ハードディスクドライブ15、ネットワークインターフェイス16、操作パネル17、スキャナ18、プリンタ19、ファックスモデム20及び通信部21に結合されている。
【0015】
PROM13は、例えばフラッシュメモリであり、BIOS(Basic Input/Output System)、OS(Operating System)、各種ドライバ、及び、画像形成装置として機能させるためのアプリケーションが格納されている。このアプリケーションには、認証プログラムが含まれている。DRAM14は、主記憶装置として用いられる。ハードディスクドライブ15には、印刷用データ、スキャナ2Aで読み取った画像データ及びファクシミリ受信データが保存される。操作パネル17は、キー及び表示パネルを供えている。スキャナ18は、印刷及びファクシミリ送信の入力装置として用いられるとともに、画像ファイル生成のために用いられる。プリンタ19は、プリントエンジン並びに用紙の給紙部、搬送部及び排紙部を備え、DRAM14に生成されたビットマップデータが供給され、このデータに基づいて感光ドラムに静電潜像を形成し、この像をトナーで現像し、トナー像を用紙に転写し定着させ、排紙する。
【0016】
通信部21は、インターフェイス12とICカードリーダとの間を仲介するものであって、USBインターフェイス、RS232Cインターフェイス又はネットワークインターフェイス等のハードウェアと、対応するソフトウェアドライバとを備えている。通信部21は、マルチプレクサ22のポート23、24又は25に選択的に接続され、その切替は、マルチプレクサ22に対する切替制御部26により行われる。
【0017】
切替制御部26は、初期モードとスキャンモードとを有し、初期モードでは、ICカードリーダ接続状態記憶部44からの指示に応答してマルチプレクサ22に対しポート23、24又はポート25を択一的に選択制御し、スキャンモードでは、ポート23、24及び25を定期的、例えば1秒ごとに順次選択状態にさせる。
【0018】
ポート23、24及び25にはそれぞれ、任意のタイプのICカードリーダ、例えばICカードリーダ27、28及び29のいずれかが接続可能となっている。但し、ICカードリーダには、通信部21と同じタイプの通信インターフェイスを備えておく必要がある。
【0019】
図1は、上記認証プログラムに関係した認証処理部の機能ブロック部である。
【0020】
例えば、ICカードリーダ27は、タイプAのICカード30を読取り可能であり、ICカードリーダ28はタイプB及びCのICカード31及び32を読取り可能であり、ICカードリーダ29はタイプDのICカード33を読取り可能である。
【0021】
ICカードリーダ接続状態初期化部40は、リセットパルス発生部41からのリセットパルス又はUI部42からの特定のフラグのセット(両者の論理和43が‘1’へ遷移すること)に応答して、処理を介しする。この処理は、ポート23、24及び25のそれぞれにどのタイプのICリーダが接続されているかを調べてその結果をICカードリーダ接続状態記憶部44に格納するためのものである。
【0022】
リセットパルス発生部41は、画像形成装置10への電源投入又はリセットボタン押下に応答して、リセットパルスを発生する。UI部42は、操作パネル17の操作に応じて操作パネル17の表示部にICカード設定画面を表示させている状態で、特定のキーが押下されたことに応答して、上記フラグをセットする。
【0023】
図1中のブロック40、42及び45はCPU11と13に格納されたプログラムとで構成され、ブロック44及び47はそれぞれDRAM14内及びPROM13内の記憶領域である。切替制御部26は、CPU11と13に格納されたプログラムとで構成され又はハードウェアで構成される。
【0024】
ここで、画像形成装置10で対応可能なICカードリーダのタイプが3つであり、それぞれをリーダタイプナンバ0、1及び2で識別する。例えばICカードリーダ27、28及び29はそれぞれリーダタイプナンバ1、0及び2である。図3(B)に示すように、リーダタイプナンバ0、1及び2のICカードリーダはそれぞれ、API群名A、B及びCのAPI関数呼び出しに対応可能となっており、このテーブルはPROM13に予め格納され、システムリセット時にICカードリーダ接続状態記憶部44にコピーされる。API関数0〜2をそれぞれAPI群名(例えば、DLLファイル名)A、B及びCのAPI群中の接続確立関数とする。また、ポート23、24及び25を識別するポートナンバをそれぞれ0、1及び2とする。
【0025】
図2は、ICカードリーダ接続状態初期化部40の処理を示す概略フローチャートである。図3はICカードリーダ接続状態記憶部44に格納されるデータの説明図である。図4は、図2の処理の説明図である。以下、括弧内は図2中のステップ識別符号である。
【0026】
(S0)上記フラグをリセットし、切替制御部26を上記初期モードにし、また、ポートナンバ変数iに初期値0を代入する。
【0027】
(S1)切替制御部26を介しマルチプレクサ22に対し、ポートナンバ変数iのポートを選択させる。
【0028】
(S2)リーダタイプナンバjに初期値0を代入する。
【0029】
(S3)ICカードリーダ接続状態初期化部40は、通信部21及びマルチプレクサ22を介し、API関数j呼出情報をICカードリーダ27に送信して、ICカードリーダに対しAPI関数jを呼び出す(コマンドを与える)ことにより接続確立を試みる。ICカードリーダがAPI関数jに対応していれば、例えばバイナリ値"True"が戻り値として、マルチプレクサ22及び通信部21を介してICカードリーダ接続状態初期化部40に供給され(接続が確立し)、対応していなければ、エラー情報、例えばエラーコード又はバイナリ値"False"、が、戻り値としてICカードリーダ接続状態初期化部40に供給される。換言すれば、このようにICカードリーダ27〜29のインターフェイスが構成されている。
【0030】
すなわち、ICカードリーダの本体部にAPI関数jの呼び出しが供給される前にAPI関数jがこのICカードリーダに適合しているか否かが前段部でチェックされ、否定判定された場合にはエラー情報が戻り値としてICカードリーダ接続状態初期化部40に供給され、肯定判定された場合にはICカードリーダの本体部にAPI関数jの呼び出しが供給され、その戻り値が該前段部を介しICカードリーダ接続状態初期化部40に供給される。
【0031】
(S4)API関数jの戻り値が接続確立を示していれば、ステップS5へ進み、そうでなければステップS6へ進む。
【0032】
(S5)ICカードリーダ接続状態記憶部44には、図3(A)に示すようなポートナンバ変数iとリーダタイプナンバjとを対応付けたテーブルが定義(記憶領域が確保)されており、ポートナンバ変数iに対応したアドレスにリーダタイプナンバjの値を書き込み、ステップS8へ進む。
【0033】
(S6)リーダタイプナンバjの値を1だけインクリメントする。
【0034】
(S7)j<rmaxであればステップS3へ戻り、そうでなければステップS8へ進む。ここに、rmaxはICカードリーダのタイプ数であり、図1の場合rmax=3である。
【0035】
(S8)ポートナンバ変数iの値を1だけインクリメントする。
【0036】
(S9)i<pmaxであればステップS1へ戻り、そうでなければ処理を終了する。ここに、pmaxはマルチプレクサ22のポート数である。
【0037】
このようなICカードリーダ接続状態初期化処理により、例えば、図4に示すような動作が行われて、図3(A)に示すテーブルが作成される。
【0038】
図1に戻って、この初期化処理後に、認証情報読取部46は切替制御部26を上記スキャンモードにし、切替制御部26の選択状態(ポートナンバi)に応じて、図3(A)のテーブルからリーダタイプナンバjを読み取り、次いで図3(B)のテーブルから、このリーダタイプナンバjに対応したAPI群名を読み取り、通信部21及び切替制御部26を介しICカードリーダに対し、このAPI群中のポーリング関数を呼び出して(コマンドを与えて)、ICカードに対するポーリングを行わせる。
【0039】
ユーザが例えばICカード30をICカードリーダ27にかざし、切替制御部26がポート23を選択状態にしたときに、ポーリング応答が認証情報読取部46に返され、認証部45に制御が移る。認証部45は、認証情報読取部46を介し上記同様にして、前記API群名の所定関数でICカードリーダ27を動作させてICカード30から認証情報を読み取らせ、これを取得し、登録認証情報記憶部47を参照してユーザ認証を行う。その結果が正規のユーザであることを示していれば、画像形成装置10の機能を使用可能となる。
【0040】
本実施例1によれば、電源投入時等のシステムリセットパルス又は操作パネル17からの初期化指示入力に応答して、ICカードリーダ接続ポート23〜25のそれぞれにつき、ポートナンバとAPI関数のタイプ識別情報でもあるリーダタイプナンバとを対応付けた接続情報を図3(A)に示すように作成し、これに基づいて各ポートを介し、該ポートに接続されたICカードリーダに対しポーリングしてICカードから認証情報を読み取るので、ユーザは自己が所持するICカードのタイプに応じてICカードリーダを取り替える必要がなく、操作性が向上するという効果を奏する。
【0041】
また、画像形成装置10への電源投入後においてICカードリーダ接続状態を変更しても、初期化指示を操作パネル17から入力することにより上記接続情報が更新されるという効果を奏する。
【0042】
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記実施例で述べた各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
【0043】
例えば、上記実施例ではマルチプレクサ22を用いる場合を説明したが、通信部21をネットワークインターフェイスで構成した場合には、マルチプレクサ22を用いなくてよい。この場合、ブロードキャストにより、ICカードリーダ27〜29に対し同時に接続確立の試み及びポーリングを行うことができる。
【0044】
また、操作パネル27からUI部52を介してICカードリーダ接続状態初期化部40に初期化指示を入力する替わりに、ICカードリーダがポートに接続されたことを検出し。その検出信号を初期化指示入力として用いてもよい。
【0045】
さらに、ICカードリーダの替わりに、ICカードリーダ・ライタを用いて、例えば画像形成装置の使用情報をICカードに書き込むようにしてもよいことは勿論である。
【符号の説明】
【0046】
10 画像形成装置
11 CPU
12 インターフェイス
13 PROM
14 DRAM
15 ハードディスクドライブ
16 ネットワークインターフェイス
17 操作パネル
18 スキャナ
19 プリンタ
20 ファックスモデム
21 通信部
22 マルチプレクサ
23〜25 ポート
26 切替制御部
27〜29 ICカードリーダ
30〜33 ICカード
40 ICカードリーダ接続状態初期化部
41 リセットパルス発生部
42 UI部
44 ICカードリーダ接続状態記憶部
45 認証部
46 認証情報読取部
47 登録認証情報記憶部
i ポートナンバ
j リーダタイプナンバ
rmax リーダタイプ数
pmax ポート数

【特許請求の範囲】
【請求項1】
コンピュータが、ICカードから認証情報を読み取り認証するICカード認証方法において、
(a)ICカードリーダ接続状態初期化イベントの発生に応答して、複数のICカードリーダ接続ポートのそれぞれにつき、所定複数タイプのそれぞれのAPI関数でICカードリーダとの接続確立を試み、接続が確立した場合、そのポート識別情報とそのタイプ識別情報とを対応付けた接続情報を記憶手段に格納し、
(b)該接続情報に含まれる各ポート識別情報に対応したポートを介し、対応するタイプ識別情報に係るAPI関数で定期的に、該ポートに接続されたICカードリーダに対しポーリングして、ICカードから認証情報を読み取る、
ことを特徴とするICカード認証方法。
【請求項2】
該ICカードリーダ接続状態初期化イベントは、該コンピュータのリセット又は入力手段からのICカードリーダ接続状態初期化指示入力に基づいて発生することを特徴とする請求項1に記載のICカード認証方法。
【請求項3】
ICカードから認証情報を読み取り認証するICカード認証装置において、
ICカードリーダ接続状態初期化イベントを発生させるイベント発生手段と、
記憶手段と、
該ICカードリーダ接続状態初期化イベントの発生に応答して、複数のICカードリーダ接続ポートのそれぞれにつき、所定複数タイプのそれぞれのAPI関数でICカードリーダとの接続確立を試み、接続が確立した場合、そのポート識別情報とそのタイプ識別情報とを対応付けた接続情報を該記憶手段に格納するICカードリーダ接続状態初期化手段と、
該接続情報に含まれる各ポート識別情報に対応したポートを介し、対応するタイプ識別情報に係るAPI関数で定期的に、該ポートに接続されたICカードリーダに対しポーリングして、ICカードから認証情報を読み取る認証情報読取手段と、
を有することを特徴とするICカード認証装置。
【請求項4】
該イベント発生手段は、該コンピュータに対するリセット信号発生手段又はICカードリーダ接続状態初期化指示を入力する入力手段であることを特徴とする請求項3に記載のICカード認証装置。
【請求項5】
コンピュータに対し、ICカードから認証情報を読み取らせて認証するICカード認証プログラムにおいて、該コンピュータに対し、
(a)ICカードリーダ接続状態初期化イベントの発生に応答して、複数のICカードリーダ接続ポートのそれぞれにつき、所定複数タイプのそれぞれのAPI関数でICカードリーダとの接続確立を試みさせ、接続が確立した場合、そのポート識別情報とそのタイプ識別情報とを対応付けた接続情報を記憶手段に格納させ、
(b)該接続情報に含まれる各ポート識別情報に対応したポートを介し、対応するタイプ識別情報に係るAPI関数で定期的に、該ポートに接続されたICカードリーダに対しポーリングさせて、ICカードから認証情報を読み取らせる、
ことを特徴とするICカード認証プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2011−243074(P2011−243074A)
【公開日】平成23年12月1日(2011.12.1)
【国際特許分類】
【出願番号】特願2010−115867(P2010−115867)
【出願日】平成22年5月20日(2010.5.20)
【出願人】(000006150)京セラミタ株式会社 (13,173)
【Fターム(参考)】