(57)【要約】【課題】ライフサイクル等の時間経過情報毎に管理されている機密情報へ不正にアクセスできないようにすることができるセキュリティ制御装置を提供する。【解決手段】データの暗号化及び復号化の処理を行うセキュリティ処理部４を有するセキュリティモジュール７において、機密情報が記憶されるＯＴＰメモリ６と、ライフサイクル情報毎に設定されたＯＴＰメモリ６へのアクセス権に基づいて、セキュリティ処理部４又は外部からのＯＴＰメモリ６へのアクセス制御を行うＯＴＰアクセスコントローラ５と、を有することを特徴とする。【選択図】図３
2017004293.tif 000002
【特許請求の範囲】
【請求項１】
機密情報に基づいてデータの暗号化及び復号の処理を行う暗号処理部を有するセキュリティ制御装置において、
前記機密情報が記憶されるセキュリティ情報記憶部と、
前記時間経過情報を保持する時間経過情報保持部と、
時間経過に伴って変更される時間経過情報の時間経過単位でアクセス要求元毎に設定された前記セキュリティ情報記憶部へのアクセス権に基づいて、前記アクセス要求元からの前記セキュリティ情報記憶部へのアクセス制御を行うアクセス制御部と、
を有することを特徴とするセキュリティ制御装置。
【請求項２】
前記セキュリティ情報記憶部には、前記機密情報が複数記憶され、
前記時間経過情報保持部には、前記時間経過情報を時間経過方向のみに更新することができる記憶素子で構成され、複数の前記機密情報にそれぞれ対応して複数の前記時間経過情報が保持されている、
ことを特徴とする請求項１に記載のセキュリティ制御装置。
【請求項３】
前記時間経過情報保持部は、前記時間経過情報の時間経過単位を複数の前記機密情報毎に細分化して保持することを特徴とする請求項２に記載のセキュリティ制御装置。
【請求項４】
前記アクセス制御部は、外部からの要求により前記セキュリティ情報記憶部への書き込みを行った際における応答通知を行わないことを特徴とする請求項１乃至３のうちいずれか一項に記載のセキュリティ制御装置。
【請求項５】
外部から前記時間経過情報の変更のためのアクセス監視を行う時間経過情報変更管理部を更に有することを特徴とする請求項１乃至４のうちいずれか一項に記載のセキュリティ制御装置。
【請求項６】
前記暗号処理部は、外部から入力されたデータが正規のデータであるかの監視を行うアクセス監視部を更に有することを特徴とする請求項１乃至５のうちいずれか一項に記載のセキュリティ制御装置。
【請求項７】
少なくとも前記セキュリティ情報記憶部及び前記アクセス制御部のうちいずれかへのアクセス記録を蓄積するアクセス記録蓄積部を更に有することを特徴とする請求項１乃至６のうちいずれか一項に記載のセキュリティ制御装置。
【請求項８】
請求項１乃至７のうちいずれか一項に記載のセキュリティ制御装置を有することを特徴とする電子機器。
【請求項９】
機密情報に基づいてデータの暗号化及び復号の処理を行う暗号処理工程を含むセキュリティ制御方法において、
時間経過に伴って変更される時間経過情報の時間経過単位でアクセス要求元毎に設定された、前記機密情報が記憶されるセキュリティ情報記憶部へのアクセス権に基づいて、前記アクセス要求元からの前記セキュリティ情報記憶部へのアクセス制御を行うアクセス制御工程を含むことを特徴とするセキュリティ制御方法。
【請求項１０】
請求項９に記載のセキュリティ制御方法をコンピュータにより実行させることを特徴とするセキュリティ制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、セキュリティ制御装置、電子機器、セキュリティ制御方法及びセキュリティ制御プログラムに関する。
【背景技術】
【０００２】
近年、インターネット等から様々なアプリケーションをダウンロードし、そのアプリケーションを実行できるような組み込み機器が知られている。この種の機器には、電子マネー、電子チケット、デジタルコンテンツといった機密性を高めなければいけない情報等が含まれることがあり、内外部からの攻撃に対して守る必要がある。
【０００３】
このような問題に対して、例えば、特許文献１には、ＭＰＵと不揮発性メモリとの間でやり取りされるデータの暗号化・復号処理を行うモジュールをＭＰＵと不揮発性メモリとの間に配置する構成が開示されている。
【０００４】
しかしながら、特許文献１に記載された情報処理装置は、その装置または当該装置を有する産業用機器がライフサイクルといった時間経過による管理がなされていなかった。ライフサイクルとは、一般的に生産、物流、販売、サービス、回収又は廃棄等の機器が生産されてから廃棄又はリサイクルされるまでの一連のサイクルをいう。
【０００５】
特許文献１の場合、サービス運用中に悪意あるユーザが、当該組み込み機器のデバッグ機能を利用するなどの手段でＭＰＵバスやローカルバス等を伝送されるデータをモニタすることで、機密情報を不正に取得することが可能となるという問題があった。
【０００６】
また、特許文献１の場合、ライフサイクルに基づいた機密情報の管理がなされていないので、ライフサイクルの特定のステージのみで使用される機密情報であっても、いつでもアクセスすることが可能となっていた。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明はかかる問題を解決することを目的としている。即ち、本発明は、例えば、ライフサイクル等の時間経過情報に基づいて管理されている機密情報へ不正にアクセスできないようにすることができるセキュリティ制御装置を提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記に記載された課題を解決するために、本発明は、機密情報に基づいてデータの暗号化及び復号の処理を行う暗号処理部を有するセキュリティ制御装置において、前記機密情報が記憶されるセキュリティ情報記憶部と、前記時間経過情報を保持する時間経過情報保持部と、時間経過に伴って変更される時間経過情報の時間経過単位でアクセス要求元毎に設定された前記セキュリティ情報記憶部へのアクセス権に基づいて、前記アクセス要求元からの前記セキュリティ情報記憶部へのアクセス制御を行うアクセス制御部と、を有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、時間経過情報の時間経過単位毎に設定されたアクセス権に基づいてセキュリティ情報記憶部へのアクセス制御を行うことができるので、時間経過情報に基づいて管理されている機密情報へ不正にアクセスできないようにすることができる。
【図面の簡単な説明】
【００１０】
【図１】ライフサイクルの一例を示す図である。
【図２】車両に搭載される制御モジュールの例を示す図である。
【図３】本発明の第１の実施形態にかかるセキュリティモジュールを有する制御モジュールのブロック構成図である。
【図４】図３に示されたＯＴＰメモリ内の記憶領域の一例を示した説明図である。
【図５】図３に示された制御モジュールの暗号化動作の制御フロー図である。
【図６】図３に示されたＯＴＰアクセスコントローラに設定されるアクセス権のテーブルの例である。
【図７】図３に示された制御モジュールの機密情報書き込み動作の制御フロー図である。
【図８】本発明の第２の実施形態にかかるセキュリティモジュールのＯＴＰメモリへの書き込みが正しく行われているかを確認する動作の制御フロー図である。
【図９】本発明の第３の実施形態にかかるセキュリティモジュールのＯＴＰアクセスコントローラのライフサイクルステージ変更監視テーブルの例である。
【図１０】本発明の第４の実施形態にかかるセキュリティ制御プログラムが実行されるセキュリティモジュールの構成図である。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
本発明の一実施形態にかかるセキュリティ制御装置を図１乃至図７を参照して説明する。まず、時間経過情報としてのライフサイクル情報について説明する。図１は、電子機器として組み込み機器のライフサイクルの一例を示す。
【００１２】
組み込み機器等の電子機器のライフサイクル状態（ステージ）には、ユーザが単にその組み込み機器を利用する過程だけでなく、工場で組み込み機器を製造する生産ステージ１０１、販売するためにトラックなどの輸送手段で運搬する物流ステージ１０２がある。そして、組み込み機器のライフサイクル状態には、販売店で組み込み機器を販売する販売ステージ１０３、ユーザが利用している最中に組み込み機器が故障した場合などに修理を行うなどのサービスを提供するサービスステージ１０４がある。さらに、組み込み機器のライフサイクル状態には、環境保護の観点から組み込み機器を回収し、リサイクルする回収リサイクルステージ１０５がある。組み込み機器によっては、回収リサイクル過程とともに、またはその代わりに組み込み機器を廃棄する廃棄ステージ１０６がある。この各ステージは、時間経過情報の時間経過単位となる。
【００１３】
図１に示されるライフサイクルは、国や地域などの仕向けによって異なることがあるが、本実施形態では、一例としてこれらの各ステージを通じて組み込み機器を運用することを総称してライフサイクルという。本実施形態では、例えば、環境保護の観点から確実に回収を行いリサイクルすることや、廃棄後に不正な利用をさせないために、正規のルートで（正規のステージを通じて）ライフサイクルが運用されるように制御する。
【００１４】
次に、組み込み機器の一例として車両に搭載される機器（制御モジュール）を図２に示す。図２の場合は、駆動制御モジュール２００、エンジン制御モジュール３００、ナビゲーションモジュール４００、および車載カメラモジュール５００が示されている。そして、これらの制御モジュールは、バス５０によって接続されてネットワークを構成する。バス５０に使用される規格としては、ＣＡＮ（Controller Area Network）、ＬＩＮ（Local Interconnect Network）、イーサネット（登録商標）（Ethernet（登録商標））、ＦｌｅｘＲａｙ（登録商標）等が挙げられる。
【００１５】
なお、本実施形態では、電子機器として車両に搭載される制御モジュールを一例に説明するが、車両に搭載される制御モジュールに限らないことは言うまでもない。例えば、産業用機器の制御モジュールや、家電機器或いは情報通信機器等に含まれるモジュール、基板、半導体集積回路等であってもよい。勿論組み込み機器に限らず、機密情報を扱う電子機器であればよい。
【００１６】
図３に制御モジュールの構成例を示す。以下の説明では、制御モジュールに符号１０を付して説明する。制御モジュール１０は、図１に示したように、ＣＰＵ（Central Processing Unit）１と、ＲＯＭ（Read Only Memory）２と、ＲＡＭ（Random Access Memory）３と、セキュリティモジュール７と、バス８と、を有している。また、制御モジュール１０は、ナビゲーションモジュール４００であればＧＰＳモジュール、車載カメラモジュール５００であればカメラモジュールといった他の機能モジュールがバス８に接続されている。
【００１７】
ＣＰＵ１は、制御モジュール１０の全体制御を司り、ＲＯＭ２に記憶されているプログラムに基づいて動作する。また、ＣＰＵ１は、ＲＡＭ３に記憶されている所定のデータをセキュリティモジュール７に暗号化させる要求等も行う。また、ＣＰＵ１は、セキュリティモジュール７内に保持されているライフサイクル情報を更新（変更）する。
【００１８】
ＲＯＭ２は、ＣＰＵ１で動作するプログラムやデータ等が記憶されている。ＲＡＭ３は、ＣＰＵ１で処理されるデータ等が一時的に記憶される。また、ＲＡＭ３には、セキュリティモジュール７で暗号化されるデータも一時的に記憶される。
【００１９】
本発明の第１の実施形態にかかるセキュリティ制御装置としてのセキュリティモジュール７は、図３に示したように、セキュリティ処理部４と、ＯＴＰアクセスコントローラ５と、ＯＴＰ（One Time Programmable）メモリ６と、を有している。
【００２０】
暗号処理部としてのセキュリティ処理部４は、ＣＰＵ１からの要求に基づいてＲＡＭ３に記憶されているデータをＯＴＰメモリ６に記憶されている機密情報としての秘密鍵情報に基づいて暗号化及び復号の処理を行う。なお、暗号化のアルゴリズムはＤＥＳ（Data Encryption Standard）等周知のものを用いればよく特に限定されない。
【００２１】
アクセス制御部としてのＯＴＰアクセスコントローラ５は、セキュリティ処理部４やＣＰＵ１からの要求に対応して、後述するＯＴＰメモリ６へのアクセス権に基づいてＯＴＰメモリ６に対するリードやライト等のアクセス制御を行う。
【００２２】
セキュリティ情報記憶部及び時間経過情報保持部としてのＯＴＰメモリ６は、セキュリティ処理部４で使用される秘密鍵情報やライフサイクル情報が記憶されるメモリである。ＯＴＰメモリ６は、各ビットの情報を０から１へ（或いは１から０へ）一度のみ書き換えることができる特性を持った周知のメモリである。ＯＴＰメモリ６は、前記した特性を持つため、秘密鍵情報のような一度だけ書き込むことが許されるような機密情報が記憶されるメモリに適している。また、ライフサイクル情報のような時間が経過するごとにステージが一方向に変化する（時間経過方向のみに更新することが可能な）情報を管理するために用いるメモリにも適している。なお、本実施形態では、ＯＴＰメモリ６がセキュリティ情報記憶部及び時間経過情報保持部の機能を兼ねる構成としているが、２つのメモリに分けてもよい。
【００２３】
図４にＯＴＰメモリ６内の記憶領域の一例を示す。ＯＴＰメモリ６の記憶領域は、図４に示したように、機密情報が複数記憶可能なデータエリア６１と、ライフサイクル情報６２と、から構成されている。
【００２４】
データエリア６１には、本実施形態では前記した秘密鍵情報が記憶されている。また、データエリア６１は、制御モジュール１０の機能や用途に応じて複数の秘密鍵情報が記憶できるように複数設けられている。勿論、１つであってもよい。
【００２５】
ライフサイクル情報６２には、データエリア毎に現在のライフサイクルが設定されている。例えば、データエリア＃０に対応するライフサイクル情報（データエリア＃０のライフサイクル情報）は、図１に記載した生産ステージ１０１〜廃棄ステージ１０６の６つのステージに分けて設定される。ここで、ＯＴＰメモリ６の特性上同一のビットに対して２回以上書き換えることがはきないので、例えば、ＬＳＢからＭＳＢに向かってライフサイクルのステージ順（時間経過順）に１ビットずつ割り当てる。この場合、生産ステージ１０１の場合、０００００１、物流ステージ１０２の場合００００１１、販売ステージ１０３の場合０００１１１などと“１”を書き込むビットが順に増加するように変更する。
【００２６】
ところで、データエリア６１に記憶する秘密鍵情報等の機密情報は、図１に示したステージを更に細分化（階層化）して管理する場合がある。例えば、サービスステージ１０４のステージを運用と保守に細分化するなどである。このような管理ができるようにするために、ライフサイクル情報６２は、データエリア毎にビット数を可変に設定できるようにしている。即ち、ライフサイクル情報を機密情報毎に細分化して保持している。
【００２７】
図４の例では、データエリア＃１のライフサイクル情報は、サービスステージ１０４を運用と保守に分けている。このようにすることでデータエリア＃１に対して運用のみにアクセス可能とするようなアクセス権を設定することができる。
【００２８】
そして、データエリア＃０のライフサイクル情報、データエリア＃１のライフサイクル情報、データエリア＃２のライフサイクル情報は、それぞれライフサイクルのステージ移行（変更）に伴って、同じように内容が変更される。但し、ステージを細分化した場合は、その細分化したステージについては他のデータエリアのライフサイクル情報と異なる場合がある。
【００２９】
例えば、図４において、販売からサービスにステージが移行した場合、データエリア＃０のライフサイクル情報は、サービスが“１”になるが、データエリア＃１のライフサイクル情報は、運用が“１”になる。その後保守を行った場合は、データエリア＃０のライフサイクル情報は変化しないが、データエリア＃１のライフサイクル情報は、保守が“１”になる。そして、サービス（保守）から回収リサイクルにステージが移行した場合、データエリア＃０、＃１のライフサイクル情報ともに回収リサイクルが“１”になる。
【００３０】
なお、図４の例の場合、保守を行わないで回収リサイクルに移行することが許されている場合は、運用から回収リサイクルに移行する際に、保守も“１”に変化させるようにしてもよい。
【００３１】
バス８は、ＣＰＵ１、ＲＯＭ２、ＲＡＭ３、セキュリティモジュール７等との間で、データの転送をする。バス８は、周知のように各機能ブロック等がデータを交換するために用いる共通の経路であればよく、例えばＡＸＩ（Advanced eXtensible Interface）バスなどが挙げられる。
【００３２】
次に、上述した構成の制御モジュール１０の暗号化動作を図５の制御フロー図を参照して説明する。まず、ＣＰＵ１がセキュリティ処理部４（セキュリティモジュール７）に対して暗号化処理を要求する（ステップＳ１０１）。セキュリティ処理部４では、ＯＴＰアクセスコントローラ５に対して機密情報（秘密鍵情報）を要求する（ステップＳ１０２）。
【００３３】
ＯＴＰアクセスコントローラ５は、対象のデータ領域の書き込みが可能かどうかを判断するためＯＴＰメモリ６のライフサイクル情報６２から現在のライフサイクルのステージを読出し（ステップＳ１０３、Ｓ１０４）、読み出したライフサイクルのステージに基づいてアクセス権を確認する（ステップＳ１０５）。ＯＴＰアクセスコントローラ５に設定されるアクセス権の例を図６に示す。
【００３４】
図６は、ライフサイクルのステージ毎にそれぞれ設定されている。そして、各ステージにおいて、アクセス者（アクセス要求元）としてＣＰＵ１とセキュリティ処理部４にライト可やリード可やアクセス不可等のアクセス権が設定されている。即ち、ライフサイクルステージ（時間経過情報毎）にアクセス要求元毎にアクセス権が設定されている。ステップＳ１０５では、ＯＴＰアクセスコントローラ５は、自身に設定されている図６に示したようなアクセス権テーブルに基づいてアクセス権を確認する。図５の制御フロー図の場合、セキュリティ処理部４からの秘密鍵情報の要求であるので、いずれのステージであってもアクセス可能となる。従って、ＯＴＰアクセスコントローラ５は、秘密鍵情報（対象の機密情報）を読み出してセキュリティ処理部４に出力する（ステップＳ１０６、Ｓ１０７、Ｓ１０８）。
【００３５】
なお、図６では、ＣＰＵ１とセキュリティ処理部４しか示していないが、他のアクセス者（機能モジュール等）があってもよい。
【００３６】
即ち、ステップＳ１０３〜Ｓ１０８が、時間経過に伴って変更されるライフサイクルのステージ毎に設定された、機密情報が記憶されるＯＴＰメモリ６へのアクセス権に基づいて、セキュリティ処理部４からのＯＴＰメモリ６へのアクセス制御を行うアクセス制御工程となる。
【００３７】
次に、セキュリティ処理部４では、暗号化する情報をＲＡＭ３から読み出す（ステップＳ１０９、Ｓ１１０）。なお、このステップＳ１０９、Ｓ１１０はステップＳ１０３〜Ｓ１０８の間に実行してもよい。
【００３８】
続いて、セキュリティ処理部４は、ＯＴＰアクセスコントローラ５から出力された秘密鍵情報を用いて暗号化処理を行い（ステップＳ１１１）、暗号化されたデータをＲＡＭ３に書き込む（ステップＳ１１２、Ｓ１１３）。ここでステップＳ１１３は、データが書き込めたことを示すＲＡＭ３からの応答である。また、暗号化処理が完了すると同時にセキュリティ処理部４は秘密鍵情報を破棄する。そして、セキュリティ処理部４は、暗号化処理が完了したことをＣＰＵ１に通知する（ステップＳ１１４）。
【００３９】
次に、制御モジュール１０の機密情報（秘密鍵情報）書き込み動作を図７の制御フロー図を参照して説明する。まず、ＣＰＵ１がＯＴＰアクセスコントローラ５に対して秘密鍵情報のアクセス要求を行う（ステップＳ２０１）。このときＯＴＰメモリ６に書き込む秘密鍵情報も同時に出力する。ＯＴＰアクセスコントローラ５は、対象のデータ領域の書き込みが可能かどうかを判断するためＯＴＰメモリ６からライフサイクル情報を読出し（ステップＳ２０２、Ｓ２０３）、アクセス権を確認する（ステップＳ２０４）。ステップＳ２０２〜Ｓ２０４は、図５で説明したステップＳ１０３〜Ｓ１０５と同様である。アクセス権があることを確認できた場合は、ＯＴＰアクセスコントローラ５は、秘密鍵情報をＯＴＰメモリ６に書き込む（ステップＳ２０５、Ｓ２０６）。
【００４０】
なお、図７において、ＯＴＰアクセスコントローラ５は、書き込みが成功したか失敗したかの応答は返さない。即ち、外部からの要求によりＯＴＰメモリ６（セキュリティ情報記憶部）への書き込みを行った際における応答通知を行わない。このようにすることで、悪意のある者がＣＰＵ１を利用してＯＴＰメモリ６に不正に書き込むことを回避する。例えば、悪意のある者がＯＴＰメモリ６への書き込みを何度も行っても、それがうまくいったことを知ることができない。そのため、悪意のある者自身が不正の書き込みの確認をすることが煩雑かつ困難となり、不正に利用されることを低減することができる。
【００４１】
本実施形態によれば、ライフサイクル情報のステージ毎に設定されたＯＴＰメモリ６へのアクセス権に基づいて、セキュリティ処理部４又は外部からのＯＴＰメモリ６へのアクセス制御を行うＯＴＰアクセスコントローラ５を有している。このようにすることにより、機密情報が記憶されるＯＴＰメモリ６にはＯＴＰアクセスコントローラ５を介さないとアクセスできないので、機密情報へ不正にアクセスすることができないようにすることができる。
【００４２】
また、ライフサイクル情報のステージ毎に機密情報へのアクセス権が設定されているので、ライフサイクルのステージに基づいて機密情報が適切に管理することができる。
【００４３】
また、セキュリティモジュール７がＯＴＰメモリ６とセキュリティ処理部４を有しているので、ＯＴＰメモリ６に記憶されている機密情報がセキュリティモジュール７外に出力されることがなく、バス８から機密情報を不正に取得することを防止できる。
【００４４】
また、ＯＴＰメモリ６が、一度“１”に書き換えると“０”に戻すことはできないので、ライフサイクルのステージを時系列的に戻すことが不可能となり、ライフサイクル情報を不正に書き換えて戻すことを防止することができる。
【００４５】
また、ＯＴＰメモリ６は、データエリア６１に複数の機密情報が記憶できるようにし、ライフサイクル情報６２には、複数の機密情報にそれぞれ対応して複数のライフサイクル情報が保持されている。このようにすることにより、機能、用途別に機密情報を記憶し、運用することができる。
【００４６】
また、ライフサイクル情報６２は、ライフサイクル情報を機密情報毎に細分化して保持するので、機密情報毎にきめ細かいアクセス権を設定することができる。
【００４７】
なお、図４に示した例では、複数の機密情報を使い分けるために、データエリア毎にライフサイクル情報を細分化して設定することができるようにしていたがそれに限らない。例えば、リサイクルする場合に、ライフサイクルの１周目はデータエリア＃０とデータエリア＃０のライフサイクル情報を使用し、２周目はデータエリア＃１とデータエリア＃１のライフサイクル情報を使用する。このようにライフサイクルの周回数に合わせて使い分けるようにしてもよい。
【００４８】
ＯＴＰメモリ６は、その特性上、一度“１”に書き換えると“０”に戻すことはできないため、上記のように使用することで、リサイクルに対応しながらライフサイクルのステージを戻すといった不正なアクセスを防止することができる。
【００４９】
また、上述したリサイクルに対応した使用方法と図４に示した使用方法を組み合わせてもよい。例えば、機密情報を記憶する複数のデータエリアと対応する複数のライフサイクル情報とを１セットとして、そのセットを複数設けることで、１セット目は１周目のライフサイクル、２セット目は２周目のライフサイクルといった使用方法が可能となる。
【００５０】
（第２実施形態）
次に、本発明の第２の実施形態にかかるセキュリティ処理部装置を図８を参照して説明する。なお、前述した第１の実施形態と同一部分には、同一符号を付して説明を省略する。
【００５１】
第１の実施形態では、ＯＴＰメモリ６への書き込みが成功したか失敗したかの応答は返さないようにしていた。しかし、この機能のみの場合、書き込みが失敗した場合に、ＣＰＵ１等が把握できないので、誤った情報がＯＴＰメモリ６に書き込まれたまま出荷等されてしまう可能性がある。そこで、本実施形態では、ＯＴＰメモリ６への書き込み要求自体に対する直接的な応答は行わないものの、その後ＣＰＵ１等からの確認要求等をセキュリティモジュール７に対して行うことで、書き込みが成功したか失敗したかのを把握できるようにしたものである。
【００５２】
ＯＴＰメモリ６への書き込みが正しく行われているかを確認する動作を図８の制御フロー図を参照して説明する。まず、ＣＰＵ１がセキュリティ処理部４（セキュリティモジュール７）に対して書き込みチェック（確認）を要求する（ステップＳ３０１）。この書き込みチェック要求には、書き込んだデータを含めて送信する。
【００５３】
セキュリティ処理部４では、ＣＰＵ１からのアクセスが許可された者からのアクセスかを確認する（ステップＳ３０２）。このステップＳ３０２は、ＣＰＵ１以外の機能モジュール等や外部機器等からも書き込みを許可していた場合に有効であり、そのアクセスが正当な者かを確認する。正当でない者からのアクセスの場合は、以降の処理を行わない。
【００５４】
次に、セキュリティ処理部４は、ＯＴＰメモリ６の書き込みデータを要求する。つまり、ＯＴＰメモリ６に書き込まれたデータを読み出すためＯＴＰアクセスコントローラ５に対してデータの読み出し要求を行う（ステップＳ３０３）。
【００５５】
ＯＴＰアクセスコントローラ５は、ＯＴＰメモリ６のライフサイクル情報６２から現在のライフサイクルのステージを読出し（ステップＳ３０４、Ｓ３０５）、読み出したステージに基づいてアクセス権を確認する（ステップＳ３０６）。アクセス権の確認は、図５のステップＳ１０５と同様である。ＯＴＰアクセスコントローラ５は、書き込まれたデータ（対象の機密情報）を読み出してセキュリティ処理部４に出力する（ステップＳ３０７、Ｓ３０８、Ｓ３０９）。
【００５６】
次に、セキュリティ処理部４は、ステップＳ３０１で受信した書き込みチェック要求に含まれる書き込みデータと、ステップＳ３０９でＯＴＰアクセスコントローラ５（ＯＴＰメモリ６）から取得した書き込みデータとを比較する（ステップＳ３１０）。そして、比較結果をＣＰＵ１等の書き込みチェック要求を出力した者に通知する（ステップＳ３１１）。ＣＰＵ１等は、比較結果が一致しない場合は、例えば、以降の処理に反映させたり、書き込みエラー等の通知を上位のホストコンピュータや外部機器等に出力する。
【００５７】
本実施形態によれば、ＯＴＰメモリ６への書き込みの確認を、書き込み要求後に別途行うようにしているので、書き込み要求に対する直接の応答がない場合でも、書き込みが成功したか否かを確認することができる。
【００５８】
（第３実施形態）
次に、本発明の第３の実施形態にかかるセキュリティ処理部装置を図９を参照して説明する。なお、前述した第１、第２の実施形態と同一部分には、同一符号を付して説明を省略する。
【００５９】
本実施形態は、第１の実施形態と基本的な機能構成は同じである。本実施形態では、ＯＴＰアクセスコントローラ５やセキュリティ処理部４が有する他の機能について説明する。
【００６０】
第１の実施形態で説明したように、セキュリティモジュール７では、ＯＴＰメモリ６を用いることで、ライフサイクルのステージを前に戻せないようにしているが、それに加えて、不正にライフサイクルのステージを進めないようにもなっている。
【００６１】
ＯＴＰアクセスコントローラ５は、ＣＰＵ１等の外部からライフサイクルのステージを変更するための要求を受信してＯＴＰメモリ６のライフサイクル情報６２を変更することができるが、その際に、当該ステージにおいて許可された者からの要求か否かを監視している。
【００６２】
監視に際しては、図９に示したようなテーブルに基づいて監視し、不可のアクセス者からの要求については、ライフサイクルのステージの変更をしない。図８において、外部Ｉ／Ｆとは、図１のバス８に接続される外部機器とのインタフェース（回路、コネクタ等）である。つまり、制御モジュール１０は、外部Ｉ／Ｆを介して外部機器等からステージの変更を可能としている。但し、外部機器等からステージの変更を無制限に可能とすると、不正にライフサイクルのステージが進められてしまう可能性が高くなるので、変更可能とするステージを制限している。図９の場合、外部Ｉ／Ｆは、生産ステージ１０１においては、アクセス不可であるため、次の物流ステージ１０２への変更はできない。
【００６３】
図８の例では、ＣＰＵ１と外部Ｉ／Ｆしか示していないが、他のアクセス者があってもよい（例えばバス８に接続された機能モジュール等）。また、ＣＰＵ１は全てのステージの変更が可能となっていたが、制限を掛けてもよい。その場合、少なくとも他の１つのアクセス者がステージの変更ができるようにしなければならないことは言うまでもない。
【００６４】
このようにすることにより、外部からライフサイクルのステージ変更のためのアクセス監視を行う時間経過情報変更管理部としてＯＴＰアクセスコントローラ５を機能させているので、不正にライフサイクルのステージ変更をすることを防止できる。
【００６５】
また、ＯＴＰアクセスコントローラ５は、自身を介したＯＴＰメモリ６へのアクセス記録（ログ）を蓄積するメモリ等を有している。このログには、上述した不正なアクセス要求に限らず、第１の実施形態で説明した正規のアクセスの場合も蓄積する。蓄積する内容例としては、アクセス者、アクセス時間（年月日、時刻）等が挙げられる。
【００６６】
このようにすることにより、ＯＴＰアクセスコントローラ５（ＯＴＰメモリ６）へのアクセス記録を蓄積するアクセス記録蓄積部としてＯＴＰアクセスコントローラ５を機能させているので、不正アクセスの解析ができる。また、セキュリティモジュール７自体の不具合の解析等にもログを活用することができる。
【００６７】
次に、セキュリティ処理部４の他の機能について説明する。上述したライフサイクルのステージの変更について、ＯＴＰアクセスコントローラ５に対して直接ＣＰＵ１等から要求すると、その要求の内容がバス８をモニタすることで悪意のあるものに不正に取得され、それに基づいて、不正なアクセスをさせる可能性がある。そのため、例えば、ＯＴＰアクセスコントローラ５に対して直接要求できるのは、例えば生産ステージ１０１のみとし、以降のステージの変更はセキュリティ処理部４を介するようにすることで、不正なアクセスを低減させるようにする。
【００６８】
この場合、正規の秘密鍵によって暗号化した要求をセキュリティ処理部４に出力し、セキュリティ処理部４が暗号を復号してＯＴＰアクセスコントローラ５に出力してＯＴＰメモリ６内のライフサイクル情報６２を変更する。
【００６９】
上述したセキュリティ処理部４を利用したライフサイクルのステージ変更の場合であっても、悪意のある者が不正な秘密鍵（正規でない秘密鍵）により暗号化をした要求を送信してステージ変更を試みる場合がある。そこで、セキュリティ処理部４は、不正な秘密鍵によるアクセスも監視する。そして、不正な秘密鍵によるアクセスがあった場合は、ＯＴＰアクセスコントローラ５に復号結果を出力しない。
【００７０】
なお、セキュリティ処理部４は、上述したライフサイクルのステージ変更要求に限らず、ＯＴＰメモリ６への不正な秘密鍵によるアクセス（データの書き込み等）に対しても同様の処理を行う。また、このような不正な秘密鍵によるアクセスをＯＴＰアクセスコントローラ５に通知して、ログとして蓄積するようにしてもよい。
【００７１】
このようにすることにより、セキュリティ処理部４を、外部から入力されたデータが正規のデータをあるかの監視を行うアクセス監視部として機能させているので、不正な秘密鍵によるアクセスを防止することができる。
【００７２】
（第４実施形態）
次に、本発明の第４の実施形態にかかるセキュリティ制御プログラムを図１０を参照して説明する。なお、前述した第１〜第３の実施形態と同一部分には、同一符号を付して説明を省略する。
【００７３】
本実施形態は、第１の実施形態で説明したセキュリティ処理部４と、ＯＴＰアクセスコントローラ５と、をＣＰＵ１Ａ（コンピュータ）で動作するコンピュータプログラムとして機能させている。また、これらをコンピュータプログラムとして動作させるに当たり、図１０に示したように、コンピュータプログラムが格納されるＲＯＭ２とＯＴＰメモリ６とをバス８とは別途設けたローカルバス９により接続している。
【００７４】
ローカルバス９は、ＲＯＭ２とＯＴＰメモリ６以外は接続されないバスであり、バス８から直接アクセスができないようになっている。
【００７５】
なお、図１０に示したバス８は、ＲＡＭ３しか記載されていないが、第１の実施形態と同様に他の機能モジュール等や外部Ｉ／Ｆ等が接続されている。
【００７６】
図１０に示した構成においては、ＣＰＵ１がローカルバス９に接続されたＲＯＭ２からセキュリティ制御プログラムを読み出して実行する。このようにすることにより、図１に示したセキュリティ処理部４とＯＴＰアクセスコントローラ５の第１〜第３の実施形態に記載したような機能をソフト的に奏することができる。従って、図５、図７の制御フロー図のうち、ＣＰＵ１、セキュリティ処理部４、ＯＴＰアクセスコントローラ５に関する部分はＣＰＵ１Ａ内の動作となる。
【００７７】
ＯＴＰメモリ６は、上述したようにローカルバス９に接続し、ＣＰＵ１Ａがローカルバス９を介して読み書きを行う。
【００７８】
本実施形態によれば、ＣＰＵ１Ａがローカルバス９に接続されたＲＯＭに記憶されたセキュリティ制御プログラムを実行することで、セキュリティ処理部４、ＯＴＰアクセスコントローラ５として機能することができる。そのため、機密情報が記憶されるＯＴＰメモリ６にはＣＰＵ１を介さないとアクセスできないので、機密情報へ不正にアクセスすることができないようにすることができる。
【００７９】
なお、上述した実施形態では、時間経過情報としてライフサイクル情報で説明したが、それに限らない。例えば、年単位、月単位、日単位或いは時単位といった単純な時間情報であってもよい。また、時間経過単位も一定期間であってもよいし、ライフサイクルのようにその都度外部からのトリガによって期間が定まる不定期間であってもよい。
【００８０】
なお、本発明は上記実施形態に限定されるものではない。即ち、当業者は、従来公知の知見に従い、本発明の骨子を逸脱しない範囲で種々変形して実施することができる。かかる変形によってもなお本発明のセキュリティ処理装置の構成を具備する限り、勿論、本発明の範疇に含まれるものである。
【符号の説明】
【００８１】
１、１Ａ    ＣＰＵ
２          ＲＯＭ
３          ＲＡＭ
４、４Ａ    セキュリティ処理部（暗号処理部）
５、５Ａ    ＯＴＰアクセスコントローラ（アクセス制御部）
６          ＯＴＰメモリ（セキュリティ情報記憶部）
７          セキュリティモジュール（セキュリティ制御装置、時間経過情報保持部）
１０        制御モジュール（電子機器）
【先行技術文献】
【特許文献】
【００８２】
【特許文献１】特開２００６−３５０４９４号公報
【図１】
2017004293.tif 000003
【図２】
2017004293.tif 000004
【図３】
2017004293.tif 000005
【図４】
2017004293.tif 000006
【図５】
2017004293.tif 000007
【図６】
2017004293.tif 000008
【図７】
2017004293.tif 000009
【図８】
2017004293.tif 000010
【図９】
2017004293.tif 000011
【図１０】
2017004293.tif 000012