説明

セキュリティ保護機能付きマイクロコンピュータ

【課題】内蔵の書き換え可能な不揮発性メモリおよび他のリソースへのセキュリティ管理情報に対する保護を強化したセキュリティ保護機能付きマイクロコンピュータを提供する。
【解決手段】セキュリティ保護機能付きマイクロコンピュータ1は、セキュリティフラグを書き込む領域を有する1回だけ書き換え可能な不揮発性メモリであるPROM11と、PROM11に書き込まれたセキュリティフラグの設定に従って、セキュリティ保護機能付きマイクロコンピュータ1が内蔵する各種リソースに対するCPU13からのアクセスを制御するアクセス制御部12と、を有する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、セキュリティ保護機能付きマイクロコンピュータに関する。
【背景技術】
【0002】
マイクロコンピュータに搭載するROMをフラッシュメモリなどの書き換え可能な不揮発性メモリとし、この書き換え可能な不揮発性メモリにマイクロコンピュータで実行するプログラムを書き込み、必要に応じてプログラムを書き換えることにより、プログラムの開発を容易としたマイクロコンピュータがある。
【0003】
このようなマイクロコンピュータでは、プログラムの開発時には不揮発性メモリの書き換えを許可するが、プログラムの開発完了後は、プログラムの保護のために、不揮発性メモリへ書き込んだデータの読み出し、書き換え、消去を禁止する、というようなセキュリティ保護のための管理が必要となる。
【0004】
そのため、従来、フラッシュメモリに、プログラミングを行う領域と、このプログラミングを行う領域への管理情報である書き込みフラグ、読み出しフラグ、消去フラグを書き込むプログラミング管理領域と、を配設し、外部からのプログラミング要求があった場合、CPUが、プログラミング管理領域の管理情報を参照し、プログラミングを行う領域へのプログラミングの可否を判断するようにしたマイクロコンピュータが提案されている(例えば、特許文献1参照。)。
【0005】
しかし、上述の方法では、プログラミングを行う領域への管理情報自体が書き換え可能なフラッシュメモリに書き込まれているため、この管理情報に対するセキュリティが十分には保護されないという問題があった。
【0006】
また、セキュリティ保護の対象がフラッシュメモリのプログラミングを行う領域に限られているため、マイクロコンピュータに内蔵されるRAMなどの他のリソースのセキュリティが保護されないという問題があった。
【特許文献1】特開2000−181898号公報 (第3−4ページ、図1)
【発明の開示】
【発明が解決しようとする課題】
【0007】
そこで、本発明の目的は、内蔵の書き換え可能な不揮発性メモリおよび他のリソースへのセキュリティ管理情報に対する保護を強化したセキュリティ保護機能付きマイクロコンピュータを提供することにある。
【課題を解決するための手段】
【0008】
本発明の一態様によれば、内蔵する複数のリソースに対するセキュリティフラグを書き込む1回だけ書き込み可能な不揮発性メモリと、前記不揮発性メモリに書き込まれた前記セキュリティフラグの設定に従って前記リソースに対するアクセスを制御するアクセス制御手段とを有することを特徴とするセキュリティ保護機能付きマイクロコンピュータが提供される。
【発明の効果】
【0009】
本発明によれば、1回だけ書き込み可能な不揮発性メモリにセキュリティ管理情報を書き込むのでセキュリティ管理情報が書き換えられることを防止でき、マイクロコンピュータのセキュリティ保護機能を強化することができる。
【発明を実施するための最良の形態】
【0010】
以下、本発明の実施例を図面を参照して説明する。
【実施例】
【0011】
図1は、本発明の実施例に係るセキュリティ保護機能付きマイクロコンピュータの構成の例を示すブロック図である。
【0012】
本実施例のセキュリティ保護機能付きマイクロコンピュータ1は、セキュリティフラグを書き込む領域を有する1回だけ書き換え可能な不揮発性メモリであるPROM11と、PROM11に書き込まれたセキュリティフラグの設定に従って、セキュリティ保護機能付きマイクロコンピュータ1が内蔵する各種リソースに対するCPU13からのアクセスを制御するアクセス制御部12と、を有する。
【0013】
ここで、アクセス制御部12によってアクセスが制御されるリソースの例として、フラッシュメモリ14、RAM15、I/O領域16を示す。このうち、書き換え可能な不揮発性メモリであるフラッシュメモリ14には、セキュリティ保護機能付きマイクロコンピュータ1が実行するプログラムが書き込まれる。
【0014】
なお、アクセス制御対象のリソースはこれらに限るものではなく、他のリソースもアクセス制御の対象とすることができる。
【0015】
また、アクセス制御部12は、CPU13から各リソースへ対して発行されるリード/ライト信号の伝達を制御し、アクセスを禁止するリソースに対してはリード/ライト信号の伝達を抑止する。なお、各リソースへのデータの入出力はデータ・バスラインを介して行われる。
【0016】
セキュリティフラグが書き込まれるPROM11は複数のビットを有し、セキュリティフラグの書き込みが行われたビットが、そのビットに予め割り当てられたリソースへのアクセスの禁止を示す。セキュリティフラグの書き込みが行われなければ、そのビットに割り当てられたリソースへのアクセスは許可される。
【0017】
このセキュリティフラグの設定は、外部装置100からセキュリティデータをCPU13へ送付し、そのセキュリティデータの指定に従って、CPU13がPROM11の書き込みをビットごとに制御することによって行われる。
【0018】
PROM11は、1回しか書き込みが行えず、書き換えができないので、セキュリティフラグの設定を一旦行うと、そのセキュリティフラグを取り消すことはできない。
【0019】
図2は、セキュリティフラグの構成の例を示す図である。ここで、PROM11のセキュリティフラグの書き込み領域が8ビットであるものとし、それぞれのビットは、次に示すようなアクセスの禁止を示す。
【0020】
bit0のセキュリティフラグは、フラッシュメモリ14の書き換え禁止を指定する。例えば、フラッシュメモリ14にプログラムの書き込みを行った後に、このbit0へのセキュリティフラグの書き込みを行うと、それ以降、フラッシュメモリ14は書き換え禁止状態となり、フラッシュメモリ14に書き込まれたプログラムが保護される。
【0021】
bit1〜bit4のセキュリティフラグは、フラッシュメモリ14以外のリソースへのアクセス禁止を示す。
【0022】
bit1はRAM15へのアクセス禁止を示し、bit2はI/O領域のアクセス禁止を示す。
【0023】
また、bit3はRAM15からI/O領域16へのデータ転送禁止を示し、bit4はI/O領域16からRAM15へのデータ転送禁止を示す。データ転送を禁止するとき、アクセス制御部12は、データ転送元のリードアクセスを禁止するとともにデータ転送先のライトアクセスを禁止する。
【0024】
このように、フラッシュメモリ14以外のリソースへのアクセス禁止を指定することにより、プログラムの保護のほかに、RAM15やI/O領域16に格納されているデータの外部への流出を防止することができる。
【0025】
bit5、bit6のセキュリティフラグは、セキュリティフラグが書き込まれるPROM11の保護を図るために設定する。
【0026】
bit5は、PROM11に書き込まれたセキュリティフラグの読み出しを禁止する。これにより、セキュリティフラグがどのように設定されているかを読み出せなくする。
【0027】
bit6は、PROM11へのセキュリティフラグの追加書き込みを禁止する。PROM11の一部ビットにしか書き込みを行なわなかった場合、残りのビットへの書き込みはその後も可能である。しかし、このbit6のセキュリティフラグを設定することにより、その残りのビットへの書き込みを禁止することができる。これにより、一旦設定したセキュリティフラグの状態を保持することができる。
【0028】
bit7は、デバッグ禁止を示す。通常、オンチップデバッグなどを行う場合、外部のデバッグツールを接続してマイクロコンピュータの内部動作を確認するが、このbit7のセキュリティフラグを設定することにより、セキュリティ保護機能付きマイクロコンピュータ1は、外部デバッグツールとの接続を拒否する。これにより、セキュリティ保護機能付きマイクロコンピュータ1の内部動作状態が外部デバッグツールを介して覗かれるのを防止する。
【0029】
なお、セキュリティフラグを書き込む領域は8ビットに限られるものではなく、必要なビット数に増減させることができる。また、各ビットに割り当てるセキュリティ機能も、上述の例に限られるものではなく、ユーザが任意に設定できるものである。
【0030】
図3は、図2に示したセキュリティフラグを設定するときの手順を示すフロー図である。
【0031】
セキュリティフラグの書き込みを開始するために、外部装置100からセキュリティデータの送信を行うと(ステップS01)、CPU13は、PROM11のbit6のセキュリティフラグが設定済みかどうかを確認する(ステップS02)。
【0032】
bit6のセキュリティフラグが設定済みであれば(Y)、PROM11へのセキュリティフラグの追加書き込みが禁止状態であるので、新たなセキュリティフラグの設定を行うことはできず、セキュリティフラグの設定処理はそのまま終了する。
【0033】
bit6のセキュリティフラグが設定されていなければ(N)、以降、CPU13は、それぞれのビットごとに、送られてきたセキュリティデータ中にセキュリティフラグの設定要求があるかどうかを確認し、設定要求があればそのビットへの書き込みを行い、セキュリティフラグを設定する(ステップS03〜S16)。
【0034】
総てのビットの処理が終了すると、CPU13は、PROM11に設定されたデータを外部装置100へ返信し(ステップS17)、セキュリティフラグの設定処理を終了する。
【0035】
図4は、アクセス制御部14によるアクセス制御の処理手順の例を示すフロー図である。ここでは、フラッシュメモリ14への書き換え要求に対する処理の例を示す。
【0036】
アクセス制御部14は、CPU13からのフラッシュメモリ14への書き換え要求があると(ステップS21)、PROM11のbit0のセキュリティフラグを読み出し(ステップS22)、bit0のセキュリティフラグが書き換え禁止に設定されているかどうかを確認する(ステップS23)。
【0037】
bit0のセキュリティフラグが書き換え禁止に設定されていれば(Y)、アクセス制御部14はフラッシュメモリ14へのアクセスを禁止し(ステップS24)、bit0のセキュリティフラグが書き換え禁止に設定されていなければ(N)、アクセス制御部14はフラッシュメモリ14へのアクセスを許可して(ステップS24)、アクセス制御処理を終了する。
【0038】
このような本実施例によれば、セキュリティフラグを1回だけ書き込み可能な不揮発性メモリ(PROM)に書き込むので、一度書き込んだセキュリティフラグが書き換えられることを防止でき、マイクロコンピュータのセキュリティ保護機能を強化することができる。
【0039】
また、セキュリティフラグを書き込むPROMのビット数を複数とし、それぞれのビットにマイクロコンピュータに内蔵されるリソースに対するセキュリティ機能を割り当てることにより、マイクロコンピュータで実行されるプログラムの保護に加えて、マイクロコンピュータ内に格納されるさまざまなデータの保護が可能となり、マイクロコンピュータのセキュリティ保護機能をより向上させることができる。
【0040】
また、PROMの各ビットに割り付けるセキュリティ機能をユーザが任意に設定できるので、マイクロコンピュータの用途に応じたセキュリティレベルの設定を行うことができる。
【図面の簡単な説明】
【0041】
【図1】本発明の実施例に係るセキュリティ保護機能付きマイクロコンピュータの構成の例を示すブロック図。
【図2】セキュリティフラグの構成の例を示す図。
【図3】セキュリティフラグの設定手順の例を示すフロー図。
【図4】アクセス制御部の処理手順の例を示すフロー図。
【符号の説明】
【0042】
1 セキュリティ保護機能付きマイクロコンピュータ
11 PROM
12 アクセス制御部
13 CPU
14 フラッシュメモリ
15 RAM
16 I/O領域

【特許請求の範囲】
【請求項1】
内蔵する複数のリソースに対するセキュリティフラグを書き込む1回だけ書き込み可能な不揮発性メモリと、
前記不揮発性メモリに書き込まれた前記セキュリティフラグの設定に従って前記リソースに対するアクセスを制御するアクセス制御手段と
を有することを特徴とするセキュリティ保護機能付きマイクロコンピュータ。
【請求項2】
前記不揮発性メモリは、1ビットごとに書き込みが行われる複数のビットを有し、前記セキュリティフラグの書き込みが行われたビットが、予め指定されたリソースへのアクセスの禁止を示す
ことを特徴とする請求項1に記載のセキュリティ保護機能付きマイクロコンピュータ。
【請求項3】
前記セキュリティフラグに、前記不揮発性メモリへの書き込みの禁止を示すフラグが含まれる
ことを特徴とする請求項2に記載のセキュリティ保護機能付きマイクロコンピュータ。
【請求項4】
前記セキュリティフラグに、前記不揮発性メモリの読み出しの禁止を示すフラグが含まれる
ことを特徴とする請求項2に記載のセキュリティ保護機能付きマイクロコンピュータ。
【請求項5】
前記アクセス制御手段が、CPUから発行されるリード/ライト信号の伝達を抑止することにより、前記リソースに対するアクセスを禁止する
ことを特徴とする請求項1に記載のセキュリティ保護機能付きマイクロコンピュータ。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2008−203988(P2008−203988A)
【公開日】平成20年9月4日(2008.9.4)
【国際特許分類】
【出願番号】特願2007−36720(P2007−36720)
【出願日】平成19年2月16日(2007.2.16)
【出願人】(598010562)東芝エルエスアイシステムサポート株式会社 (119)
【出願人】(000003078)株式会社東芝 (54,554)
【Fターム(参考)】