(57)【特許請求の範囲】
【請求項１】
機密データを含む電子情報が格納された不揮発性メモリと、各種動作に必要な作業データが格納される揮発性メモリと、が備えられた機密データを取り扱う電子機器装置の不正操作を防止する不正操作防止方法であって、
電子機器装置は、その通電状態において、
前記不揮発性メモリ内に格納されている電子情報の内容が正しいか否かを判断する工程と、
電子情報の内容が正しい場合に、
前記不揮発性メモリ内に格納されている電子情報を、前記揮発性メモリに格納する工程と、
前記不揮発性メモリから揮発性メモリに格納された電子情報を、当該不揮発性メモリ内から消去する工程と、
上位装置から電源を切ることを許可する電源切断許可コマンドを受信後、前記揮発性メモリ内に格納されている電子情報を前記不揮発性メモリに格納する工程と、
を有し、
電子機器装置は、前記電源切断許可コマンドを受信することなく通電状態から非通電状態となった後、再度の通電状態において、前記不揮発性メモリ内に格納されている電子情報の内容が誤りであると判断して上位装置にエラーを通知することを特徴とする不正行為防止方法。
【請求項２】
前記電子情報には実行プログラムを含むことを特徴とする請求項１記載の不正行為防止方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機密データを取り扱う電子機器装置の不正操作を防止する不正操作防止方法に関する。
【背景技術】
【０００２】
カードリーダ等の電子機器装置においては、機密データ（例えば、暗号処理に使用する鍵データ）を二次電源によりバックアップされている揮発性メモリに保持しておき、必要に応じてその都度、揮発性メモリから作業用メモリに機密データが読み出され、各種の処理が実行される。機密データは、各種処理の実行に際して必要不可欠なものであることから、通常は消失することがないように保持されている。何らかの異常を検知した際には揮発性メモリに対する二次電源及び主電源からの電源供給を遮断して機密データを消去する。
【０００３】
また、特許文献１に記載の耐タンパ装置も、セキュリティ情報や個人情報は、通常は消失することがないように保持されており、何らかの異常を検出した際には、記憶部に格納しているセキュリティ情報や個人情報を無条件で消去して読み出しを防止するものである。
【０００４】
【特許文献１】特開２００３−１８６７５２号公報（［０００２］）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記２例のような機能を構築するためには通常の機能に対して特別な回路や電子部品の追加が必要となりコストがかかるため、機密データやセキュリティ情報や個人情報といった必要不可欠な電子情報を保持する手段として、安価な不揮発性メモリを搭載し、かつ耐タンパ性を顧慮した回路や機構を組み込まないのが一般的である。
【０００６】
そのため、これらの電子情報を保持する不揮発性メモリが電子機器装置ごと取り外されたり、スキミング等の不正な仕掛けを仕組むためや電子情報を盗み出すために一旦電子機器装置を取り外したりされても、不揮発性メモリに保持されている電子情報はそのままで、不正行為があったことを検知できないのみならず、機密データ等の電子情報が外部へ漏洩し、その発見も遅れるという欠点がある。
【０００７】
また、何らかの異常を検出して電子情報を無条件に消去するにしても、不揮発性メモリに保持されているデータを消去するには、時間と外部電力の供給が必要となることから、特許文献１に記載の技術によっては、不完全なデータの消去となる可能性があり、耐タンパ性の確保が完全に行われるとは限らない。
【０００８】
また、機密データを二次電源によりバックアップされている揮発性メモリに保持しておき、不正行為を回路的に検知して揮発性メモリへの電力供給を遮断する制御を行うものもあるが、これでは、二次電源や電力供給を制御する制御手段など構成が複雑になってしまう。
【０００９】
本発明は、このような点に鑑みてなされたものであり、その目的は、不正行為を検知したときは、電子機器装置を動作不能としたり、機密データを含む電子情報を確実に消去、消失することで、不正行為を未然に防止する不正行為防止方法を提供することにある。
【課題を解決するための手段】
【００１０】
以上のような課題を解決するために、本発明の不正行為防止方法は、機密データを含む電子情報が格納された不揮発性メモリと、各種動作に必要な作業データが格納される揮発性メモリと、が電子機器装置に備えられており、電子機器装置の通電状態においては、不揮発性メモリに格納された電子情報が揮発性メモリ内に格納されて不揮発性メモリ内が消去され、所定のコマンドを実行することなく非通電状態に移行すると、揮発性メモリ内の電子情報は消去される結果、電子機器装置内に電子情報を残さないことを特徴とする。
【００１１】
より具体的には、本発明は、以下のものを提供する。
【００１２】
（１）  機密データを含む電子情報が格納された不揮発性メモリと、各種動作に必要な作業データが格納される揮発性メモリと、が備えられた機密データを取り扱う電子機器装置の不正操作を防止する不正操作防止方法であって、電子機器装置は、通電状態において、前記不揮発性メモリ内に格納されている電子情報の内容が正しいか否かを判断する工程と、電子情報の内容が正しい場合に、前記不揮発性メモリ内に格納されている電子情報を、前記揮発性メモリに格納する工程と、前記不揮発性メモリから揮発性メモリに格納された電子情報を、当該不揮発性メモリ内から消去する工程と、上位装置から電源を切ることを許可する電源切断許可コマンドを受信後、前記揮発性メモリ内に格納されている電子情報を前記不揮発性メモリに格納する工程と、を有し、電子機器装置は、前記電源切断許可コマンドを受信することなく通電状態から非通電状態となった後、再度の通電状態において、前記不揮発性メモリ内に格納されている電子情報の内容が誤りであると判断して上位装置にエラーを通知することを特徴とする不正行為防止方法。
【００１３】
本発明によれば、電子機器装置の電源を立ち上げて通電状態となったときに、不揮発性メモリに格納された電子情報を揮発性メモリ内に格納し、不揮発性メモリ内を消去する。電源切断許可コマンドを受信することなく電源が切れて非通電状態となった場合には、揮発性メモリ内の電子情報が消失され、また、不揮発性メモリ内も既に消去されていることから、電子機器装置内の電子情報が消失されて残っていない。一方で、電源切断許可コマンドを受信して非通電状態にする場合は、揮発性メモリ内に格納されている電子情報を不揮発性メモリに格納する工程を経て非通電状態とすることから、電子機器装置内の電子情報は不揮発性メモリに保持される。
【００１４】
よって、電源切断許可コマンドを受信することなく非通電状態に移行した場合を不正操作として、かかる不正操作を防止することができる。
【００１５】
ここで、「不揮発性メモリから揮発性メモリに格納された電子情報を、不揮発性メモリ内から消去する工程」は、揮発性メモリへの電子情報移行完了後又は揮発性メモリへの電子情報移行と共に随時行うことが可能である。また、かかる工程は、不揮発性メモリをフォーマット（初期化）する機能のほか、電子情報とは無関係の特定のデータを書きこんで、もとの電子情報を実質上消去し、格納されていた電子情報が特定できないようにする機能もある。
【００１６】
（２）  前記電子情報には、実行プログラムを含むことを特徴とする不正行為防止方法。
【００１７】
本発明によれば、機密データ以外の実行プログラムも不揮発性メモリに格納して、通電状態において不揮発性メモリから揮発性メモリに格納することから、電源切断許可コマンドを受信することなく非通電状態となった場合は実行プログラムも消失され、以後は電子機器装置の動作を不能とすることができる。また、実行プログラムの一部を不揮発性メモリから揮発性メモリに格納するとで、通常は不揮発性メモリと揮発性メモリとに格納されたプログラムで電子機器装置を正常に運用する一方、源切断許可コマンドを受信することなく非通電状態となった場合は実行プログラムの一部が消失され、以後は電子機器装置の運用を正常に行うことができなくなる。
【発明の効果】
【００１８】
本発明によれば、不揮発性メモリに保持されている電子情報を外部へ漏洩することを防ぎ、不正操作を検知したときは、以後の電子機器装置を動作不能としたり、正常な運用を不能としたりすることができることから、かかる不正操作を防止することができる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００２０】
［電子機器装置の構成］
図１は、本発明の実施の形態に係る不正行為防止方法にて使用する電子機器装置１のブロック図である。
【００２１】
電子機器装置１は、ＣＰＵ１０と、ＲＡＭ１１と、ＥＥＰＲＯＭ１２と、を有し、バスを介して各種接続がされている。また例えば、電子機器装置１がカードリーダの場合、装置内部の保護あるいはカード処理中のカード保護等の目的で具備されるシャッター１３や、装置内部でのカード位置を把握するために具備されるセンサ１４等も有し、各種接続がされている。
【００２２】
ＣＰＵ１０は、電子機器装置１の全体の制御を司る。例えば、シャッター１３の開閉を行ったり、センサ１４で検知したカード位置を通知をしたりするためのコマンドを送受信する。また、各種データをメモリ間で転送する役割も果たす。
【００２３】
ＲＡＭ１１は、揮発性メモリの一例であって、ＣＰＵ１０がプログラムを実行するための作業領域を提供する。作業領域には、各種動作に必要な作業データが格納され、ＥＥＰＲＯＭ１２からの電子情報も格納される。
【００２４】
ＥＥＰＲＯＭ１２は、不揮発性メモリの一例であって、機密データ、実行プログラム、誤り検知符号（ＣＲＣ，チェックＳＵＭ，ＢＣＣ）等の電子情報が格納される。その他の不揮発性メモリとして、フラッシュメモリでもよい。図２に示すように、鍵データ及び誤り検知符号としてのＣＲＣとによってデータが構成され、ＥＥＰＲＯＭ１２に格納される。１６バイト単位の書き込みができるＥＥＰＲＯＭ１２に８バイトの鍵データを格納するケースの場合、鍵データは８バイト分、最終２バイト分のブロックはＣＲＣ値が格納される。
【００２５】
［正常時］
図３は、正常時において電子機器装置１にて実行される処理ルーチンを示すフローチャートである。
【００２６】
電子機器装置１の電源を立ち上げて通電状態となると（ステップＳ１）、ＥＥＰＲＯＭ１２の鍵データ格納エリアのＣＲＣをチェックする（ステップＳ２）。チェックの結果、ＣＲＣ値が正しいと判断するとステップＳ５に処理を移す。一方で、チェックの結果、ＣＲＣ値が不正と判断するとセキュリティエラーを上位装置に通知する（ステップＳ４）。
【００２７】
セキュリティエラーを上位装置に通知するのは、ＥＥＰＲＯＭ１２の鍵データ格納エリア内に鍵データの全部又は一部がなく不正であると判断した場合である。例えば、前回の使用時に不正操作によってデータを消失させた場合がある。セキュリティエラーが発せられると、以後の動作は不可能となる。
【００２８】
ステップＳ５では、ＥＥＰＲＯＭ１２の鍵データをＲＡＭ１１に退避すべく、鍵データをＲＡＭ１１に格納する。退避と共に、或いは、退避完了後に、ＥＥＰＲＯＭ１２の鍵データ格納エリアを消去して、ＥＥＰＲＯＭ１２からＲＡＭ１１に格納された鍵データを、ＥＥＰＲＯＭ１２から消去する。消去とは、「all 0xFF」や「all 0x00」に書き換えることを意味する場合もあるが、別の特定のデータ（例えば「all 0x11」や「all 0x22」など）に書き換えることでも同等の効果を得ることができる。また、１ブロック（１６バイト）のデータ領域を、「0x00，0x01，0x02，0x03，・・・，0x0F」という16パターンで書き換えたり、「0x01，0x02」という２パターンを繰り返して書き換えることでも同等の効果が得られる。その他、乱数で書き換えることでも同等の効果が得られる。さらには、全データ領域について書き換えるではなく、予め指定された又はランダムに選択された特定のデータ領域のみについて、データを書き換えることでも同等の効果が得られる。
【００２９】
これらの一連の処理（ステップＳ１〜Ｓ６）が終わると、ＲＡＭ１１に格納されている実行プログラムの下で各種の処理が実行され、電子機器装置の通常運用を行うことができる（ステップＳ７）。
【００３０】
通常運用終了後、操作者が電源を切る操作を行うと、上位装置から電源を切ることを許可する電源切断許可コマンドが電子機器装置に送信され、電子機器装置はそれを受信する（ステップＳ８）。
【００３１】
かかるコマンドを受信した電子機器装置は、ＲＡＭ１１内に格納されている鍵データをＥＥＰＲＯＭ１２に書き込んで（write）格納する（ステップＳ９）。
【００３２】
ＲＡＭ１１内に格納されている鍵データをＥＥＰＲＯＭ１２に書き込む作業が終了すると、電源が切断されて非通電状態となる（ステップＳ１０）。再度電源を投入すると、ステップＳ１からの処理が繰り返し実行される。
【００３３】
このように、図３に示す各種の処理を正常に実行することで、鍵データは電子機器装置内に保持される。
【００３４】
［不正行為時］
図４は、不正行為時において電子機器装置１にて実行される処理ルーチンを示すフローチャートである。
【００３５】
図４のステップＳ７は、図３と同様であり、電子機器装置の通常運用が行われている状態である。
【００３６】
通常運用終了後、ステップＳ８の電源切断許可コマンドを受信することなく電源が切られた場合で（ステップＳ１１）、以後に、電源を投入して通電状態にすると（ステップＳ１）、ＣＲＣチェックにて（ステップＳ２）、チェック結果がエラーとなり、セキュリティエラーを上位装置に通知する（ステップＳ４）。
【００３７】
これは、電源切断許可コマンドを受信することなく電源が切られた場合には、ステップＳ９を実行することがないので、ＲＡＭ１１内に格納されている鍵データをＥＥＰＲＯＭ１２に書き込むことなく、非通電状態となる。そのため、ＲＡＭ１１内に格納されている鍵データは消失され、ステップＳ６において既にＥＥＰＲＯＭ１２の鍵データは消去されていることから、電子機器装置内に鍵データが残っておらず、常にセキュリティエラーとなるものである。
【００３８】
このように、図３に示す各種の処理を実行することなく非通電状態に移行することで、鍵データは電子機器装置内に保持されずに消失する。
【００３９】
［消去の例］
以下、ＥＥＰＲＯＭ１２内に格納されている電子情報をＲＡＭ１１に格納して、ＥＥＰＲＯＭ１２の電子情報をＲＡＭ１１に退避した後に、ＥＥＰＲＯＭ１２内に格納されている電子情報を消去する例について説明する。なお、電子情報の退避は、ＥＥＰＲＯＭ１２内に格納されている電子情報の全てであってもよく、ＥＥＰＲＯＭ１２内に格納されている電子情報の一部（例えば、鍵データ）であってもよい。ＥＥＰＲＯＭ１２内に格納されている電子情報の全部又は一部を消去するのは、ＥＥＰＲＯＭ１２内の電子情報を特定することができないようにするためであり、以下では、電子情報の一部である鍵データを退避させて消去する例を説明する。
【００４０】
第１の例として、既述したように、ＥＥＰＲＯＭ１２内の鍵データのみを全てＲＡＭ１１に格納し、その後、ＥＥＰＲＯＭ１２内の鍵データを全て消去する。
【００４１】
第２の例として、ＥＥＰＲＯＭ１２内の鍵データのみを全てＲＡＭ１１に格納し、その後、ＥＥＰＲＯＭ１２内の鍵データを全て消去して、消去前の鍵データを特定不能な状態にする。特定不能な状態にするとは、鍵データのある特定の一部だけを消去したり、鍵データをランダムに一部だけを消去したりする。
【００４２】
第３の例として、ＥＥＰＲＯＭ１２内の鍵データをＲＡＭ１１に格納し、その後、ＲＡＭ１１に格納した鍵データについて、ＥＥＰＲＯＭ１２から全て消去する。第４の例として、ＥＥＰＲＯＭ１２内の鍵データをＲＡＭ１１に格納し、その後、ＲＡＭ１１に格納した鍵データについて、ＥＥＰＲＯＭ１２から消去して、消去前の鍵データを特定不能な状態にする。特定不能な状態にするとは、既述した通りである。
【００４３】
また、電子情報の全部を退避させて消去する例としては、以下のとおりである。
【００４４】
第１の例として、ＥＥＰＲＯＭ１２内の鍵データを含む全ての電子情報をＲＡＭ１１に格納し、その後、ＥＥＰＲＯＭ１２の鍵データを含む全ての電子情報を消去する。
【００４５】
第２の例として、ＥＥＰＲＯＭ１２内の鍵データを含む全ての電子情報をＲＡＭ１１に格納し、その後、ＥＥＰＲＯＭ１２の鍵データを含む全ての電子情報の一部を消去して、消去前の鍵データを特定不能な状態にする。特定不能な状態にするとは、既述した通りである。
【００４６】
［応用例］
鍵データの他に、実行プログラムの一部もＲＡＭ１１に格納して、ＲＡＭ１１とＥＥＰＲＯＭ１２とに格納された実行プログラムで運用することもできる、この場合、電源切断許可コマンドを受信することなく電源が切断されたときは、実行プログラムの一部も消失されてしまうため、以後正常に動作できなくなる。ＥＥＰＲＯＭ１２からＲＡＭ１１に移動する実行プログラムの一部としては、各割り込みのジャンプ先が指定されているテーブルや、モニタ管理されるタスクが指定されているタスクテーブルなどがある。
【産業上の利用可能性】
【００４７】
本発明に係る不正行為防止方法は、簡易な構成で不正操作による電子情報の外部漏洩を防ぐことができるものとして有用である。
【図面の簡単な説明】
【００４８】
【図１】本発明の実施の形態に係る不正行為防止方法にて使用する電子機器装置のブロック図である。
【図２】データ構造の一例を示す図である。
【図３】正常時において電子機器装置にて実行される処理ルーチンを示すフローチャートである。
【図４】不正行為時において電子機器装置にて実行される処理ルーチンを示すフローチャートである。
【符号の説明】
【００４９】
１  電子機器装置
１０  ＣＰＵ
１１  ＲＡＭ（揮発性メモリ）
１２  ＥＥＰＲＯＭ（不揮発性メモリ）
【図１】
0004675980.tif 000002
【図２】
0004675980.tif 000003
【図３】
0004675980.tif 000004
【図４】
0004675980.tif 000005