(57)【特許請求の範囲】
【請求項１】
電子機器装置において取り扱われる機密データ及び誤り検知符号を格納するメモリを監視するメモリ監視方法であって、
電子機器装置には、前記機密データ及び誤り検知符号が格納されたメモリと、電子機器装置の各種動作に必要な作業データが格納される作業メモリと、が備えられ、
電子機器装置の電源立ち上げ時に、前記メモリ内に格納されている前記誤り検知符号を、前記作業メモリに格納する格納工程と、
前記作業メモリへ格納後、前記メモリに格納されている機密データの誤り検知符号の計算をする計算工程と、
前記計算をした誤り検知符号と前記作業メモリに格納された誤り検知符号とを比較する比較工程と、を有し、
前記計算工程以降を繰り返して、これら２つの誤り検知符号が異なる場合に、電子機器装置の上位装置に異常であることを通知する工程を備えたことを特徴とするメモリ監視方法。
【請求項２】
前記メモリは、バックアップ電源からの電力が供給されることで格納されている内容を保持する揮発性メモリであり、非通電時においても前記機密データ及び誤り検知符号を保持していることを特徴とする請求項１記載のメモリ監視方法。
【請求項３】
電子機器装置には、前記メモリに電源からの電力の供給を制御する電源制御手段が備えられ、
前記電源制御手段は、電子機器装置の不正行為を検知した場合に、前記メモリへの電力の供給を遮断することを特徴とする請求項１又は２記載のメモリ監視方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、機密データが格納されたメモリを監視するメモリ監視方法に関する。
【背景技術】
【０００２】
カードリーダ等の電子機器装置においては、機密データ（例えば、暗号処理に使用する鍵データ）を二次電源によりバックアップされている揮発性メモリに保持しておき、電子機器装置に不正行為が生じた場合に、揮発性メモリ内に格納されている機密データを消去することが行われている。例えば、ターミナルから電子機器装置が外されたり、カバーが開放された場合などの不正行為を検知すると、揮発性メモリへの電力供給を遮断し、揮発性メモリ内の機密データが自然消去される。これにより、以後の電子機器装置の動作を不能とし、機密データの外部への漏洩を防止することができる。
【０００３】
また、揮発性メモリ内に格納されている機密データの誤り検知符号を常に監視し、誤り検知符号が異常である場合に不正行為を検知したとして、電子機器装置の動作を不能とする機能を組み込んでいる。誤り検知符号が異常であるとは、揮発性メモリ内に格納されている機密データが、不正に書き換えられたり消失したりする場合のことで、常時計算される機密データの誤り検知符号と同時に保持されている誤り検知符号とが一致しない場合のことを意味する。
【０００４】
このような機能を組み込む電子機器装置では、電源ＯＦＦの状態で不正行為を検知した場合は、二次電源からの揮発性メモリへの電力供給を遮断することで機密データが消失され、次回電源立ち上げ時にデータ消失を検知して電子機器装置の動作を不能とする。電源ＯＮの状態で不正行為を検知した場合は、主電源及び二次電源からの揮発性メモリへの電力供給を遮断することで機密データが消失される。電源ONの状態では常時機密データの誤り検知符号を計算して、揮発性メモリ内に同時に保持して格納されている誤り検知符号と比較することで異常を検知している。
【０００５】
そして、誤り検知符号と比較することで異常を検知するものとして、特許文献１に記載された監視方式が存在する。かかる監視方式では、ＯＳ（オペレーティングシステム）やＡＰ（アプリケーションプログラム）を格納するときにＢＣＣ値を算出して格納しておき、ＯＳやＡＰを起動するときにＢＣＣ値を算出して、予め格納されたＢＣＣ値と比較して一致、不一致を判断するものである。
【０００６】
【特許文献１】特開平３−５８５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来の方法では、本来格納されているべき機密データが完全に消失してall ０になった場合、初期値を０とするＣＲＣの計算結果は０となり、さらに同時に保持されているＣＲＣも０になっているため、ＣＲＣのチェック結果はＯＫとなることから、異常か否かを検知することができない。
【０００８】
このため、もう一段別の検知方法を組み込んで判断する必要があるが、常時監視処理としては冗長となってしまうとか監視システムの負荷が重くなるという欠点がある。
【０００９】
また、特許文献１記載の方法では、ＯＳの中に監視機能を有していて、ＡＰのＢＣＣ値をＯＳが常に計算し、ＡＰが保持しているＢＣＣ値と比較することによって、ＡＰの破壊を調べるものである。ＡＰやＯＳというものは本来消失しないものとして１つのメモリ内に格納されるが、ＡＰやＯＳの内容がall ０になることは考慮されていない。よって、ＡＰやＯＳが保持するＢＣＣ値は不変のものとして、例えばインストール時のＢＣＣ値を保持しているのが通常である。
【００１０】
また、ＡＰやＯＳというものは、それが漏洩しても特に不都合はないことから、不正行為による漏洩やコピー等が行われるとしても本来消失しないように格納されているものの、機密データが漏洩すると大事に至ることから、機密データの漏洩を防ぐためにも不正行為を検知したときは機密データを消失できるように格納されている。このため、機密データが消失して格納されていないのか、元々機密データが格納されていないのかを判断して、異常検知をすることが重要である。
【００１１】
本発明は、このような点に鑑みてなされたものであり、その目的は、不正行為によってデータが消失してall ０になった場合でも、ＣＲＣ等の誤り検知符号の計算結果を異常として出力することができるメモリ監視方法を提供することにある。
【課題を解決するための手段】
【００１２】
以上のような課題を解決するために、本発明のメモリ監視方法は、機密データ及び誤り検知符号が格納されたメモリと、電子機器装置の各種動作に必要な作業データが格納される作業メモリとを備えた電子機器装置において、電子機器装置の電源立ち上げ時に、メモリ内に格納されている誤り検知符号を、作業メモリに格納し、一方で、常時メモリに格納されている機密データの誤り検知符号の計算をしていき、計算をした結果算出される誤り検知符号と作業メモリに格納された誤り検知符号とを比較することを特徴とする。
【００１３】
より具体的には、本発明は、以下のものを提供する。
【００１４】
（１）  電子機器装置において取り扱われる機密データ及び誤り検知符号を格納するメモリを監視するメモリ監視方法であって、電子機器装置には、前記機密データ及び誤り検知符号が格納されたメモリと、電子機器装置の各種動作に必要な作業データが格納される作業メモリと、が備えられ、電子機器装置の電源立ち上げ時に、前記メモリ内に格納されている前記誤り検知符号を、前記作業メモリに格納する格納工程と、前記作業メモリへ格納後、前記メモリに格納されている機密データの誤り検知符号の計算をする計算工程と、前記計算をした誤り検知符号と前記作業メモリに格納された誤り検知符号とを比較する比較工程と、を有し、前記計算工程以降を繰り返して、これら２つの誤り検知符号が異なる場合に、電子機器装置の上位装置に異常であることを通知する工程を備えたことを特徴とするメモリ監視方法。
【００１５】
本発明によれば、メモリ内に格納されている誤り検知符号をメモリとは別の作業メモリに格納し、一方で、常時メモリに格納されている機密データの誤り検知符号の計算をしていき、計算をした結果算出される誤り検知符号と作業メモリに格納された誤り検知符号とを比較することによって、これら２つの誤り検知符号が異なる場合は異常と、これら２つの誤り検知符号が同じ場合は正常として、電子機器装置の上位装置に異常であることを通知することができる。
【００１６】
よって、メモリに格納されている機密データの誤り検知符号を常時計算し、別の作業メモリに電源立ち上げ時における機密データの誤り検知符号を格納しておき、これらの誤り検知符号を比較することで、機密データがall ０になった場合でも、異常を検知することができる。
【００１７】
また、「電子機器装置の電源立ち上げ時に、メモリ内に格納されている誤り検知符号を、作業メモリに格納する工程」は、電子機器装置の電源立ち上げ時ごとに行い、電源遮断後は作業メモリに格納された誤り検知符号を保持しない構成とすることで、一旦作業メモリに格納された誤り検知符号が以後も作業メモリ内に保持されたことによって、誤り検知符号が外部に漏洩するといったことを防止することができる。特に、誤り検知符号から機密データの内容を判読したり推測したりすることが可能な場合には、誤り検知符号の機密性も確保することが望ましい。
【００１８】
（２）  前記メモリは、バックアップ電源からの電力が供給されることで格納されている内容を保持する揮発性メモリであり、非通電時においても前記機密データ及び誤り検知符号を保持していることを特徴とするメモリ監視方法。
【００１９】
本発明によれば、機密データ及び誤り検知符号が揮発性メモリに格納されており、電子機器装置の非通電時においてもバックアップ電源からの電力供給によって機密データ及び誤り検知符号を保持していることから、不正行為時には揮発性メモリへの電力供給を遮断して機密データ及び誤り検知符号を消失させる一方、通常時には揮発性メモリへの電力供給を維持して機密データ及び誤り検知符号を保持することができる。
【００２０】
（３）  電子機器装置には、前記メモリに電源からの電力の供給を制御する電源制御手段が備えられ、前記電源制御手段は、電子機器装置の不正行為を検知した場合に、前記メモリへの電力の供給を遮断することを特徴とするメモリ監視方法。
【００２１】
本発明によれば、電源制御手段によってメモリへの電力の供給が制御されており、電子機器装置の不正行為を検知した場合にメモリへの電力の供給を遮断することから、特にバックアップ電源からの電力が供給されることで格納されている内容を保持する揮発性メモリの場合には、バックアップ電源からの電力の供給も遮断することができるので、揮発性メモリの内容を完全に消失することができる。
【発明の効果】
【００２２】
本発明によれば、電子機器装置の不正行為によって機密データが完全に消失した場合でも、誤り検知符号のチェック結果を異常として検知することができ、以後の電子機器装置を動作不能としたり、正常な運用を不能としたりすることができる。
【発明を実施するための最良の形態】
【００２３】
以下、本発明を実施するための最良の形態について、図面を参照しながら説明する。
【００２４】
［電子機器装置の構成］
図１は、本発明の実施の形態に係るメモリ監視方法にて使用する電子機器装置１のブロック図である。
【００２５】
電子機器装置１は、ＣＰＵ１０と、ＲＡＭ１１と、ＥＥＰＲＯＭ１２と、バックアップＲＡＭ１５と、バッテリー１６と、電源１７と、電源制御手段１８と、不正検知手段１９と、を有し、バスを介して各種接続がされている。また例えば、電子機器装置１がカードリーダの場合、装置内部の保護あるいはカード処理中のカード保護等の目的で具備されるシャッター１３や、装置内部でのカード位置を把握するために具備されるセンサ１４等も有し、各種接続がされている。
【００２６】
ＣＰＵ１０は、電子機器装置１の全体の制御を司る。例えば、シャッター１３の開閉を行ったり、センサ１４で検知したカード位置を通知したりするためのコマンドを送受信する。また、各種データをメモリ間で転送する役割も果たす。また、ＣＰＵ１０は、メモリパリティチェック機能を有しており、ＣＲＣ等の誤り検知符号を計算して、同一データか否かのチェックを行うことができる。
【００２７】
ＲＡＭ１１は、揮発性メモリの一例であって、ＣＰＵ１０がプログラムを実行するための作業領域を提供する。作業領域には、各種動作に必要な作業データが格納される。
【００２８】
ＥＥＰＲＯＭ１２は、不揮発性メモリの一例であって、鍵データがセットされたかどうかのフラグ等の電子情報が格納される。その他の不揮発性メモリとして、フラッシュメモリでもよい。
【００２９】
バックアップＲＡＭ１５は、不正行為を検知したらデータを消失するものであり、機密データ、誤り検知符号（ＣＲＣ，チェックＳＵＭ，ＢＣＣ等）を格納する。図２に示すように、鍵データ及び誤り検知符号としてのＣＲＣとによってデータが構成される。１６バイト単位の書き込みができるバックアップＲＡＭ１５に８バイトの鍵データを格納するケースの場合、鍵データは８バイト分、最終２バイト分のブロックはＣＲＣ値が格納される。
【００３０】
バッテリー１６は、バックアップ電源として、電源制御手段１８を介してバックアップＲＡＭ１５に電力を供給する。また、電源１７も、電源制御手段１８を介してバックアップＲＡＭ１５に電力を供給したり、各種接続されている手段・機器に電力を供給する。
【００３１】
電源制御手段１８は、電子機器装置１の通電時にはバッテリー１６又は電源１７からバックアップＲＡＭ１５に電力を供給し、電子機器装置１の非通電時にはバッテリー１６からバックアップＲＡＭ１５に電力を供給する制御を行うもので、さらに、不正検知手段１９によって不正行為を検知した場合には、バックアップＲＡＭ１５に電力を供給せずに、電力を遮断する制御を行うものである。
【００３２】
不正検知手段１９は、ターミナルから電子機器装置が取り外されるのを検知したり、カバーが開放されたりした場合などの不正行為を検知する回路である。
【００３３】
［メモリ監視］
図３は、電子機器装置１にて実行されるメモリ監視処理ルーチンを示すフローチャートである。
【００３４】
まず、上位装置から鍵データ登録コマンドを受信して（ステップＳ１）、鍵データを登録する作業を開始する。ＣＰＵ１０は、上記装置から受信した鍵データのＣＲＣ値を計算して（ステップＳ２）、受信した鍵データをバックアップＲＡＭ１５に（ステップＳ３）、計算したＣＲＣ値をバックアップＲＡＭ１５に（ステップＳ４）、それぞれ書き込んで格納する。
【００３５】
次に、計算したＣＲＣ値をＲＡＭ１１に格納して保持する（ステップＳ５）。なお、ＣＰＵ１０によって計算したＣＲＣ値がＲＡＭ１１に格納されている場合には、ステップＳ５を省略することができる。
【００３６】
次に、鍵データ格納済みフラグをＥＥＰＲＯＭ１２にセットして（ステップＳ６）、メモリ監視が開始される。
【００３７】
監視工程では、バックアップＲＡＭ１５に格納されている鍵データを常時ブロック単位ごとにＣＲＣ計算をし（ステップＳ７）、ステップＳ５においてＲＡＭ１１に格納したＣＲＣ値と、ステップＳ７においてＣＲＣ計算をしたものとをＣＰＵ１０にて比較する（ステップＳ８）。
【００３８】
比較の結果、ＣＲＣ値が一致しないと判断すれば、セキュリティエラーのコマンドを上位装置に発する（ステップＳ９）。一方で、ＣＲＣ値が一致すると判断すれば、ステップＳ１０に処理を移す。なお、セキュリティエラーのコマンドを発するのは、バックアップＲＡＭ１５の鍵データ格納エリア内の鍵データが不正行為によって消失したと判断した場合である。
【００３９】
ステップＳ１０では、他の監視タスクが実行され、順次ステップＳ７に処理を戻して、ＣＲＣ値の監視がされる。
【００４０】
［電源投入時のメモリ監視］
図４は、電子機器装置１にて実行される電源投入時のメモリ監視処理ルーチンを示すフローチャートである。
【００４１】
電源を投入して電子機器装置を立ち上げると（ステップＳ１１）、初期化処理の中でＥＥＰＲＯＭ１２の鍵データ格納済みフラグをチェックする（ステップＳ１２）。これは、鍵データがバックアップＲＡＭ１５にセット済みか否かをチェックするもので、フラグが立っていたら、処理をステップＳ１５に移す。一方、フラグが立っていなかったら、鍵データがバックアップＲＡＭ１５に１つもセットされていないことから、監視処理は行わずに（ステップＳ１４）、その他の監視タスクのみを実行する通常動作に移る。
【００４２】
ステップＳ１３において鍵データ格納済みフラグが立っていると判断したら、バックアップＲＡＭ１５に格納されているＣＲＣ値をＲＡＭ１１に格納して保持し（ステップＳ１５）、メモリ監視が開始される。
【００４３】
なお、メモリ監視の処理については前述したステップＳ７〜Ｓ１０と同様である。
【００４４】
ここで、ステップＳ１３において鍵データ格納済みフラグが立っていると判断したものの、バックアップＲＡＭ１５に鍵データが格納されていない場合は、非通電時において何らかの不正行為を検知して、バックアップＲＡＭ１５の内容が消失された可能性がある。
【００４５】
この場合は、ステップＳ１５におけるバックアップＲＡＭ１５のＣＲＣ値と、ステップＳ８における計算したＣＲＣ値が異なるので、ＣＲＣ計算結果をエラーとして、セキュリティエラーを発する（ステップＳ９）。
また、バックアップＲＡＭ１５の鍵データ及びＣＲＣ値が格納されているブロックがall 0になってしまった場合は、ステップＳ１５におけるバックアップＲＡＭ１５のＣＲＣ値が０で、ステップＳ８における計算したＣＲＣ値も０となるので、ＣＲＣ計算結果をエラーとして、セキュリティエラーを発する（ステップＳ９）。或いは、バックアップＲＡＭ１５のデータがall 0であるとして、セキュリティエラーを発する。
【００４６】
［応用例］
本明細書では、誤り検知符号としてＣＲＣ値を用いて説明したが、チェックＳＵＭやＢＣＣを用いてもよいし、ＣＲＣとチェックＳＵＭとＢＣＣの併用であってもよい。併用する場合には、１６バイト単位の書き込みができるバックアップＲＡＭ１５の場合、鍵データは８バイト分、チェックＳＵＭを２バイト分、ＣＲＣを２バイト分、ＢＣＣを２バイト分など、記憶領域を分割して格納することができる。
【００４７】
また、誤り検知符号をバックアップＲＡＭ１５に格納するのではなく、ＥＥＰＲＯＭ１２や別のバックアップメモリに格納することもできる。これにより、電源立ち上げ時に機密データが消失しているか否かのall 0チェックが不要となる。
【００４８】
または、誤り検知符号をバックアップＲＡＭ１５に格納すると共に、ＥＥＰＲＯＭ１２や別のバックアップメモリに格納することもできる。これにより、バックアップＲＡＭ１５とＥＥＰＲＯＭ１２や別のバックアップメモリとの双方の誤り検知符号の値を常時比較するだけで異常か否かの検知ができ、処理速度の向上につながる。
【産業上の利用可能性】
【００４９】
本発明に係るメモリ監視方法は、簡易な処理で電子機器装置の不正行為を見分けることができるものとして有用である。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施の形態に係るメモリ監視方法にて使用する電子機器装置のブロック図である。
【図２】データ構造の一例を示す図である。
【図３】電子機器装置にて実行されるメモリ監視処理ルーチンを示すフローチャートである。
【図４】電子機器装置にて実行される電源投入時のメモリ監視処理ルーチンを示すフローチャートである。
【符号の説明】
【００５１】
１  電子機器装置
１０  ＣＰＵ
１１  ＲＡＭ
１２  ＥＥＰＲＯＭ
１５  バックアップＲＡＭ（不揮発性メモリ）
１６  バッテリー
１７  電源
１８  電源制御手段
１９  不正検知手段
【図１】
0005011512.tif 000002
【図２】
0005011512.tif 000003
【図３】
0005011512.tif 000004
【図４】
0005011512.tif 000005