JP2000076135A - プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード - Google Patents

プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード

Info

Publication number
JP2000076135A
JP2000076135A JP10242304A JP24230498A JP2000076135A JP 2000076135 A JP2000076135 A JP 2000076135A JP 10242304 A JP10242304 A JP 10242304A JP 24230498 A JP24230498 A JP 24230498A JP 2000076135 A JP2000076135 A JP 2000076135A
Authority
JP
Japan
Prior art keywords
program
area
memory
access
card
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP10242304A
Other languages
English (en)
Inventor
Yasuhiro Hosoda
泰弘 細田
Katsuhiko Suzuki
勝彦 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP10242304A priority Critical patent/JP2000076135A/ja
Publication of JP2000076135A publication Critical patent/JP2000076135A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】メモリへの不正アクセスを禁止し、メモリにプ
ログラムが追加されてもセキュリティ確保を可能とする
プロセッサのメモリ保護方法及びプロセッサのメモリを
保護されたICカードの提供。 【解決手段】メモリ空間1を、種々の共通サービスプロ
グラムを格納する特権プログラム領域1Aと、端末装置
によりダウンロードされたユーザプログラム4を格納す
るユーザプログラム領域1Bと、ユーザプログラム領域
1B及び特権プログラム領域1Aに格納された各プログ
ラムの実行時に一時的に使用する一時メモリ領域1Cと
に区分するメモリと共に、ユーザプログラム4から一時
メモリ領域1C以外へのアクセスはモニタを経由して行
い一時メモリ領域1C以外への不正なアクセスはユーザ
プログラム4の実行を止める制御手段を具備するという
特徴。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ICカード等のセ
キュリティを必要とする分野に使用される1チップマイ
クロコンピュータ上のユーザプログラムからの不正メモ
リアクセスに対して保護する、プロセッサのメモリ保護
方法及びプロセッサのメモリを保護されたICカードで
ある。
【0002】
【従来の技術】従来、ICカード用の1チップマイクロ
コンピュータ(チップ)は、マスクロム上にプログラム
を、EEPROM等の不揮発性メモリにユーザデータを
格納し、外部端末装置より発行されるコマンドをマスク
ロム上に書き込まれたプログラムが解釈し実行するもの
が一般的であった。そして、マスクロム上に書き込まれ
たプログラムは外部からソフト的な手段により破壊する
ことは不可能であるため、予めマスクロム作成者により
十分なセキュリティ上の確認を経て作成されたプログラ
ムはユーザデータに対する権限外の不当なアクセスは起
きないと考えられている。
【0003】しかしながら、最近のICカードアプリケ
ーションの拡大に伴い、一度発行したICカード上にプ
ログラムの追加・変更を、ICカードアプリケーション
発行機関から要求されているのが現状である。これは、
ユーザにとっても複数のカードを持ち歩く必要性がな
く、一枚のICカードで複数のサービスを享受できる点
で利点が大きい。
【0004】この要求を実現するために、ユーザデータ
だけでなくアプリケーションプログラムも不揮発性メモ
リに記憶させ、チップ作成後にダウンロードにより変更
・追加が可能とするICカードが登場している。
【0005】
【発明が解決しようとする課題】上記のようなICカー
ドでは、チップ作成時において既にICアプリケーショ
ンが他のアプリケーションが有するデータへの不正なア
クセスを不可能とすることを確認するのは無理であるの
で、別途新たにメモリ保護機能を当該チップ内に持たす
必要性がある。
【0006】このメモリ保護の実現方法として、先ずこ
れまでのプロセッサの歴史で確立されてきた種々のハー
ド的な仕掛けをプロセッサ上に盛り込むことが考えら
れ、限界レジスタ方式、キー方式、アクセスコントロー
ル方式、リングプロテクション方式(中澤喜三朗著「計
算機アーキテクチャ構成方式」pp.140−143、
朝倉書店1995年)などが考えられる。
【0007】しかしながら、これらの方式は元々マルチ
プログラミングを前提としており、現状のチップはシン
グルタスクであり、またICカード用チップは低コスト
が要求されるため、設計が複雑になること、ハード量の
不必要な増加を招くこと、命令の実行時間が長くなるこ
となどの面において問題をはらんでいる。
【0008】一方、ソフトのみでメモリ保護を実現する
ことも選択肢としてありうる。これはいわゆる仮想計算
機のチップ上に実装し、そこにメモリ保護機能を持たす
方式である。Java Card(http://ja
va.sun.com)、Multos(http:/
/www.mulos.com)等はこの方式によって
いる。
【0009】しかしながら、この方式が意味を持つため
には、チップ上へのCPUネイティブコードのダウンロ
ードを禁止し、仮想計算機のコードのみを可とする必要
がある。仮想計算機上では、メモリアクセスの正当性を
ソフトウエアにより確認するため性能上のオーバーヘッ
ドがあり、10倍乃至数十倍程度の実行性能が低下する
ことを回避することができない。
【0010】ここにおいて、本発明の解決すべき主要な
目的は以下の通りである。
【0011】本発明の第1の目的は、簡便なハードウエ
アによりメモリの不正アクセスを禁止し、プロセッサ上
にプログラムを追加してもセキュリティ確保を可能とす
るプロセッサのメモリ保護方法及びプロセッサのメモリ
を保護されたICカードを提供せんとするものである。
【0012】本発明の第2の目的は、複数のアプリケー
ションの性能をオーバーヘッドなく実行可能とするプロ
セッサのメモリ保護方法及びプロセッサのメモリを保護
されたICカードを提供せんとするものである。
【0013】本発明の第3の目的は、命令の実行に長時
間を必要とせずにセキュリティを大幅に向上させるプロ
セッサのメモリ保護方法及びプロセッサのメモリを保護
されたICカードを提供せんとするものである。
【0014】本発明の他の目的は、明細書、図面、特に
特許請求の範囲の各請求項の記載から自ずと明らかとな
ろう。
【0015】
【課題を解決するための手段】本発明方法は、上記課題
の解決に当たり、CPUとメモリとを有するプロセッサ
に小規模のハードウエアの追加とロジックにより、プロ
セッサのメモリ領域にユーザプログラムを追加変更して
も、当該メモリ領域への不正なアクセスを不可能にする
という特徴を有する。
【0016】本発明カードは、上記課題の解決に当た
り、メモリ領域を種々の共通サービスプログラムを格納
する特権プログラム領域と、端末装置によりダウンロー
ドされたユーザプログラムを格納するユーザプログラム
領域と、当該ユーザプログラム領域及び当該特権プログ
ラム領域に格納された各プログラムの実行時に一時的に
使用する一時メモリ領域とに区分するメモリと共に、当
該ユーザプログラムから当該一時メモリ領域以外へのア
クセスはモニタを経由して行い当該一時メモリ領域以外
への不正なアクセスは当該ユーザプログラムの実行を止
める制御手段を具備するという特徴を有する。
【0017】更に、具体的詳細に述べると、当該課題の
解決では、本発明が次に列挙する上位概念から下位概念
にわたる新規な特徴的構成手法又は手段を採用すること
により、上記目的を達成するように為される。
【0018】本発明方法の第1の特徴は、CPUとメモ
リとを有するプロセッサに小規模のハードウエアの追加
とロジックにより、当該プロセッサのメモリ領域にユー
ザプログラムを追加変更しても、当該メモリ領域への不
正なアクセスを不可能にするプロセッサのメモリ保護方
法の構成採用にある。
【0019】本発明方法の第2の特徴は、上記本発明方
法の第1の特徴における小規模のハードウエアが、ウイ
ンドウ回路を含んでなるプロセッサのメモリ保護方法の
構成採用にある。
【0020】本発明方法の第3の特徴は、上記本発明方
法の第1又は第2の特徴における追加・変更が、前記プ
ロセッサ対応の端末装置により行われてなるプロセッサ
のメモリ保護方法の構成採用にある。
【0021】本発明方法の第4の特徴は、上記本発明方
法の第1、第2又は第3の特徴におけるプロセッサが、
ICカード用であるプロセッサのメモリ保護方法の構成
採用にある。
【0022】本発明方法の第5の特徴は、上記本発明方
法の第1、第2又は第3の特徴におけるプロセッサが、
CPUとメモリを有する1チップマイクロコンピュータ
用であるプロセッサのメモリ保護方法の構成採用にあ
る。
【0023】本発明方法の第6の特徴は、上記本発明方
法の第1、第2、第3、第4又は第5の特徴におけるメ
モリが、各種共通のサービスプログラムを格納する特権
プログラム領域と、前記変更・追加されたユーザプログ
ラムを含むユーザプログラムを格納するユーザプログラ
ム領域と、前記特権プログラム領域、前記ユーザプログ
ラム領域に格納されたプログラムが実行される際に一時
的に使用される一時メモリ領域との三領域に区分されて
なるプロセッサのメモリ保護方法の構成採用にある。
【0024】本発明方法の第7の特徴は、上記本発明方
法の第6の特徴における一時メモリ領域が、前記メモリ
に格納された如何なるプログラムを実行するに当たり何
の制約も受けないプロセッサのメモリ保護方法の構成採
用にある。
【0025】本発明方法の第8の特徴は、上記本発明方
法の第6又は第7の特徴におけるロジックが、プログラ
ムカウンタの値が前記ユーザプログラム領域を指してい
る場合には、前記一時メモリ領域へのアクセスのみを許
可すると共に他の領域へのアクセスでは例外処理を行う
様に制御されてなるプロセッサのメモリ保護方法の構成
採用にある。
【0026】本発明方法の第9の特徴は、上記本発明方
法の第8の特徴における例外処理が、ハードウエアの割
り込みを生じさせることにより開始されてなるプロセッ
サのメモリ保護方法の構成採用にある。
【0027】本発明方法の第10の特徴は、上記本発明
方法の第6、第7、第8又は第9の特徴におけるロジッ
クが、前記ユーザプログラム領域に格納されたユーザプ
ログラムから前記一時メモリ領域以外へアクセスの必要
性がある場合には、前記アクセスの正当性の確認を行っ
てなるプロセッサのメモリ保護方法の構成採用にある。
【0028】本発明方法の第11の特徴は、上記本発明
方法の第10の特徴におけるアクセスの正当性の確認
が、前記特権プログラム領域に格納されたサービスプロ
グラムを呼出した後に、前記サービスプログラムにより
前記アクセスの正当性の判断を行ってなるプロセッサの
メモリ保護方法の構成採用にある。
【0029】本発明方法の第12の特徴は、上記本発明
方法の第11の特徴における判断が、前記呼出し前に前
記ユーザプログラムが必要とする、前記ユーザプログラ
ム領域のデータに対応した保護キーに相当する情報と当
該データのアドレスを前記一時メモリ領域に書き込み、
前記呼出しの後、前記サービスプログラムにより、前記
一時メモリ領域に書き込まれた前記保護キーに相当する
情報と、前記ユーザプログラム領域に格納された前記デ
ータの保護キーとを照合した結果、一致すれば、アクセ
スの許可を行なってなるプロセッサのメモリ保護方法の
構成採用にある。
【0030】本発明方法の第13の特徴は、上記本発明
方法の第12の特徴におけるアクセスの許可が、前記デ
ータを前記一時メモリ領域に複写した後に、制御を前記
ユーザプログラムに戻してなるプロセッサのメモリ保護
方法の構成採用にある。
【0031】一方、本発明カードの第1の特徴は、メモ
リ領域を、種々の共通サービスプログラムを格納する特
権プログラム領域と、端末装置によりダウンロードされ
たユーザプログラムを格納するユーザプログラム領域
と、当該ユーザプログラム領域及び前記特権プログラム
領域に格納された各プログラムの実行時に一時的に使用
する一時メモリ領域とに区分するメモリと共に、前記ユ
ーザプログラムから前記一時メモリ領域以外へのアクセ
スはモニタを経由して行い、当該一時メモリ領域以外へ
の不正なアクセスに対して当該ユーザプログラムの実行
を止める制御手段を具備してなるプロセッサのメモリを
保護されたICカードの構成採用にある。
【0032】本発明カードの第2の特徴は、上記本発明
カードの第1の特徴における制御手段が、プログラムカ
ウンタの値が前記ユーザプログラム領域を指している際
は前記一時メモリ領域以外の直接アクセスを禁止し、当
該一時メモリ領域以外のへのアクセスが必要な際は当該
特権プログラム領域に存在するサービスプログラムを経
由し、当該特権プログラム領域を指している際は全ての
メモリ領域へのアクセスを可能とする制御手段であるプ
ロセッサのメモリを保護されたICカードの構成採用に
ある。
【0033】本発明カードの第3の特徴は、上記本発明
カードの第1又は第2の特徴における制御手段が、前記
プログラムカウンタの値を読み出した後に指定された番
地の命令を読み出す命令フェッチ回路と、当該命令フェ
ッチ回路から前記指定された番地の命令を格納する命令
レジスタと、当該命令レジスタの値をデコードする命令
デコード回路と、当該命令デコード回路に接続されたア
ドレス演算回路と、前記命令デコード回路に接続された
ラッチと、前記プログラムカウンタに接続され前記特権
プログラム領域の境界アドレスとの関係を判断するウイ
ンドウ回路と、前記アドレス演算回路の出力結果及び演
算終了通知を受け、一時メモリ領域の境界アドレスとの
関係を判断する別のウインドウ回路と、前記ラッチと前
記ウインドウ回路と前記別のウインドウ回路との各出力
を判断する論理回路と、当該論理回路からの出力によ
り、前記プログラムカウンタに予め特権プログラム領域
に設けてある割り込みベクトルによりアドレスをロード
する割り込み回路と、を具備してなるプロセッサのメモ
リを保護されたICカードの構成採用にある。
【0034】本発明カードの第4の特徴は、上記本発明
カードの第3の特徴における命令デコード回路が、当該
命令デコード回路の前記命令レジスタの値に対する結果
の実行が直接前記メモリ領域にアクセスを必要とする場
合には、前記ラッチに対する出力をアサートすると共に
前記アドレス演算回路を作動させてなるプロセッサのメ
モリを保護されたICカードの構成採用にある。
【0035】本発明カードの第5の特徴は、上記本発明
カードの第1、第2、第3又は第4の特徴における制御
手段が、前記メモリと共に一体構成されてなるプロセッ
サのメモリを保護されたICカードの構成採用にある。
【0036】本発明カードの第6の特徴は、上記本発明
カードの第1、第2、第3、第4又は第5の特徴におけ
る共通サービスプログラムが、前記ICカード上のファ
イルを管理するプログラムを含んでなるプロセッサのメ
モリを保護されたICカードの構成採用にある。
【0037】本発明カードの第7の特徴は、上記本発明
カードの第6の特徴におけるICカード上のファイルを
管理するプログラムが、データアクセス用サービスプロ
グラムであるプロセッサのメモリを保護されたICカー
ドの構成採用にある。
【0038】本発明カードの第8の特徴は、上記本発明
カードの第7の特徴におけるデータアクセス用サービス
プログラムが、前記ユーザプログラム領域に格納された
ユーザプログラムが前記一時メモリ領域以外にアクセス
要求すると呼び出され、前記ユーザプログラムが前記一
時メモリ領域に書き込みした前記アクセス要求の正当性
を示す保護キーに相当する情報及び前記アクセス要求先
のアドレスを元にして、書き込まれた当該保護キーに相
当する情報と前記ユーザプログラム領域に格納されたア
クセス要求先のアドレスの情報に対応した保護キーとを
照合した後、一致すれば前記アクセスを許可し実行する
一連の処理プログラムであるプロセッサのメモリを保護
されたICカードの構成採用にある。
【0039】本発明カードの第9の特徴は、上記本発明
カードの第8の特徴における一連の処理プログラムが、
前記アクセス要求先のアドレスの情報を、前記一時メモ
リ領域に複写し、ユーザプログラムに戻る前記実行機能
を含んでなるプロセッサのメモリを保護されたICカー
ドの構成採用にある。
【0040】本発明カードの第10の特徴は、上記本発
明カードの第4、第5、第6、第7又は第8の特徴にお
ける前記ウインドウ回路が、前記特権プログラム領域の
境界アドレスを固定値化する特権プログラム領域の境界
アドレス固定値回路に接続してなるプロセッサのメモリ
を保護されたICカードの構成採用にある。
【0041】本発明カードの第11の特徴は、上記本発
明カードの第4、第5、第6、第7、第8又は第9の特
徴における前記別のウインドウ回路が、前記一時メモリ
領域の境界アドレスを固定値化する一時メモリ領域の境
界アドレス固定値回路に接続してなるプロセッサのメモ
リを保護されたICカードの構成採用にある。
【0042】
【発明の実施の形態】以下、添付図面を参照しながら、
本発明の実施の形態を示すカード例及び方法例を説明
し、更にカード例、方法例を用いた実施例をあげて説明
する。
【0043】(カード例)図1は、本カード例のプロセ
ッサのメモリを保護されたICカードKに関する基本構
成を示したものであり、同時に(下記する)カード例に
対応する方法例の流れについても示したものである。な
お、同図は説明上重要な部分のみを示しており、プログ
ラムカウンタ2、命令レジスタ3の他通常のプロセッサ
(特にマイクロプロセッサ)に具備されるレジスタ、入
出力関連、クロック等は図示していないが、一般の論理
回路、ディジタル回路、情報回路等にして周知であるの
で省略する。
【0044】本カード例の対象は、1チップ上に通常の
計算機でいう外部記憶、内部記憶が集積されるため、特
に区別することなく、一つのメモリ空間1上の領域とし
て考えることが可能である。そこで、この一つのメモリ
ー空間1を三区分し、メモリ空間1を特権プログラム領
域1A、ユーザプログラム領域1B、一時メモリ領域1
Cとする。
【0045】特権プログラム領域1Aは、ICカードK
上のファイル管理をはじめとする各種の共通のサービス
プログラムを格納される領域である。ユーザプログラム
領域1Bは、(図示しない)端末装置からダウンロード
されたユーザプログラム4が格納される領域である。一
時メモリ領域1Cは、特権プログラム領域1Aに格納さ
れた特権プログラム、ユーザプログラム4が実行時に一
時的に使用する領域である。
【0046】ここで、特権プログラムからは全てのメモ
リ空間1への読み書き可能である。しかし、ユーザプロ
グラム4からは一時メモリ領域1Cのみがアクセス可能
であり、それ以外の領域への不正なアクセスを試みると
ハードウエア割込みを生ぜしめユーザプログラム4の実
行を中断する。
【0047】(方法例)本方法例は、上記カード例に適
用させたものであり、図1を参照しながら説明する。
【0048】ICカードKのメモリ空間1上に格納され
るプログラムはプログラムカウンタ2の値に従って読み
出され、逐次デコード、実行される。この命令デコード
の際、メモリの内容をアクセスする要求が命令中に含ま
れている否かを判断する(ST1)。
【0049】もし含まれている場合には、(1)プログ
ラムカウンタ2の値が、特権プログラム領域1Aを指し
ていれば、全ての領域へのアクセスを許可し、(2)プ
ログラムカウンタ2の値がユーザプログラム領域1Bを
指していれば、一時メモリ領域1Cへのアクセスのみ許
可する。他の領域へのアクセスであれば、ハードウエア
割り込みを生じさせ、例外処理を開始する(ST2、S
T3、ST4)。ここで、ユーザプログラム4から一時
メモリ領域1C以外へのアクセスが必要であれば、特権
プログラム領域1Aに格納されているサービスプログラ
ムを呼出し、サービスプログラムはアクセス要求が正当
なものかを判断した上で許可するか否かを決定する。
【0050】なお、本方法例は、ICカードKのみなら
ず、通常のCPUとメモリを有する1チップマイクロコ
ンピュータであっても良い。
【0051】
【実施例】(実施例1)図2は、上記本実施形態例の実
施例を示したものである。同図を参照しながら、説明す
る。
【0052】(1)命令フェッチ回路7は、プログラム
カウンタ2の値を読み出し、そこで指定されている番地
の命令をメモリ8よりメモリ入出力回路9を介して読み
出し、命令レジスタ3に格納する。
【0053】(2)命令レジスタ3の値は、命令デコー
ド回路10によりデコードされ、その結果に従い命令が
実行される。ここで、当該命令が直接メモリ8領域への
アクセスを必要とするものであれば、信号線11がアサ
ートされると同時にアドレス演算回路12が動作しアド
レス演算を開始する。信号線11の情報はラッチ13に
取り込まれる。ここで、ラッチ13は、内部状態を持つ
回路で、クロックの立ち上げ又は立ち下げにより入力信
号を取り込み、内部状態がそのまま出力信号になる回路
である。
【0054】(3)アドレス演算が終了し演算終了通知
14がアサートされた時点で、ウインドウ回路15はア
ドレス演算回路12からのアドレス出力16のアドレス
と一時メモリ領域1Cの境界アドレス固定値回路5’に
よる一時メモリ領域1Cの境界アドレス5との関係を判
断し、一時メモリ領域1Cを外れているときは出力線を
アサートする。
【0055】(4)ウインドウ回路17は、プログラム
カウンタ2の値と特権プログラム領域1Aの境界アドレ
ス固定値回路6’による特権プログラム領域1Aの境界
アドレス6との関係を判断し、プログラムカウンタ2の
値が特権プログラム領域1Aを外れているときは出力線
をアサートする。ここで、ウインドウ回路15、17
は、プログラムカウンタ2の値PCと境界アドレス(A
D1、AD2、但しAD1<AD2)を比較し、IF
PC<AD1 OR PC>AD2 THEN1(アド
レスは境界領域を外れているので1を出力する) EL
SE 0 という動作をする回路である。
【0056】(5)2つのウインドウ回路15、17か
らのそれぞれの出力及びラッチ13からの出力の論理和
を論理和回路18によりとり、全てがアサートされたと
き、割り込み要求出力をアサートする。
【0057】(6)割込み要求がアサートされると、
(図示しない)割り込み要求回路はプログラムカウンタ
2に予め特権プログラム領域1Aの設けてある割り込み
ベクトルによりアドレスをロードし、割り込み処理を開
始する。
【0058】以上の実施例1では、実質的にウインドウ
回路15、17を付け加え簡単なロジックにより実現す
ることができるが、本発明の目的を達し下記する効果を
奏する他の回路構成、ロジックをとっても何等問題はな
い。
【0059】(実施例2)図3は、上記実施例1とは別
の実施例を示したものである。同図を参照しながら、本
実施例を説明する。
【0060】(1)ユーザプログラム領域1Bは、複数
のユーザプログラム(ユーザプログラムAα、ユーザプ
ログラムBβ、・・)と複数のデータ(データAγ、デ
ータBδ、・・)を有し、当該データにはそれぞれ保護
キー(保護キーAε、保護キーBζ、・・)が付けられ
ている。
【0061】(2)もし、ユーザプログラムAαがデー
タAγを読み出す必要が生じたときは、ユーザプログラ
ムAαはデータAγのアドレスと保護キーに相当する情
報を一時メモリ領域1Cに書き込み(ST5)、特権プ
ログラム領域1Aにあるデータアクセス用サービスプロ
グラムηを呼び出す(ST6)。
【0062】(3)サービスプログラムηは、一時メモ
リ領域1C上に書き込まれた保護キーとデータAの保護
キーεを照合し、一致すればアクセスを許可する。この
ときデータAγの情報は一時メモリ領域1Cに複写さ
れ、制御はユーザプログラムAαに戻る。
【0063】これにより、データの持つ保護キーを予め
知っているユーザプログラム以外のアクセスは禁止で
き、セキュリティを確保することができる。
【0064】以上、本発明のカード例、方法例を説明
し、更に、その実施例について説明したが、本発明は、
プロセッサのメモリを保護すると共に、同時に、メモリ
のアクセス制御方式について示したものであり、本発明
の見方により、プロセッサのメモリ保護方法はプロセッ
サのメモリアクセス方法としても見ることができ、ま
た、プロセッサのメモリが保護されたICカードは、プ
ロセッサのメモリアクセスが制御されたICカードとし
て見ることもできる。
【0065】
【発明の効果】以上説明したように、本発明によれば、
小規模なハードウエア(実質的にはウインドウ回路2
つ)の追加と簡単なロジックによりチップのセキュリテ
ィを大幅に向上させることができるので、ICカード上
へのネイティブコードのダウンロードが可能となり、複
数のアプリケーションを性能のオーバーヘッドなく実行
することができ、多種多様の要請に応えることができる
等の優れた効果を奏する。
【図面の簡単な説明】
【図1】本発明の実施の形態の基本構成を示したもので
ある。
【図2】本発明の実施例1を示したものである。
【図3】本発明の実施例2を示したものである。
【符号の説明】
K…ICカード 1…メモリ空間 1A…特権プログラム領域 1B…ユーザプログラム領域 1C…一時メモリ領域 2…プログラムカウンタ 3…命令レジスタ 4…ユーザプログラム 5…一時メモリ領域の境界アドレス 5’…一時メモリ領域の境界アドレス固定値回路 6…特権プログラム領域の境界アドレス 6’…特権プログラム領域の境界アドレス固定値回路 7…命令フェッチ回路 8…メモリ 9…メモリ入出力回路 10…命令デコード回路 11…信号線 12…アドレス演算回路 13…ラッチ 14…演算終了通知 15、17…ウインドウ回路 16…アドレス出力 18…論理和回路 α…ユーザプログラムA β…ユーザプログラムB γ…データA δ…保護キーA ε…データB ζ…保護キーB η…データアクセス用サービスプログラム
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B017 AA01 BA01 BA02 BB01 BB03 CA13 CA14 CA15 5B035 AA13 BB09 5B058 CA28 KA31

Claims (24)

    【特許請求の範囲】
  1. 【請求項1】CPUとメモリとを有するプロセッサに小
    規模のハードウエアの追加とロジックにより、当該プロ
    セッサのメモリ領域にユーザプログラムを追加・変更し
    ても、当該メモリ領域への不正なアクセスを不可能にす
    る、 ことを特徴とするプロセッサのメモリ保護方法。
  2. 【請求項2】小規模のハードウエアは、 ウインドウ回路を含む、 ことを特徴とする請求項1に記載のプロセッサのメモリ
    保護方法。
  3. 【請求項3】追加・変更は、 前記プロセッサ対応の端末装置により行われる、 ことを特徴とする請求項1又は2に記載のプロセッサの
    メモリ保護方法。
  4. 【請求項4】プロセッサは、 ICカード用である、 ことを特徴とする請求項1、2又は3に記載のプロセッ
    サのメモリ保護方法。
  5. 【請求項5】プロセッサは、 CPUとメモリを有する1チップマイクロコンピュータ
    用である、 ことを特徴とする請求項1、2又は3に記載のプロセッ
    サのメモリ保護方法。
  6. 【請求項6】メモリは、 各種共通のサービスプログラムを格納する特権プログラ
    ム領域と、 前記変更・追加されたユーザプログラムを含むユーザプ
    ログラムを格納するユーザプログラム領域と、 前記特権プログラム領域、前記ユーザプログラム領域に
    格納されたプログラムが実行される際に一時的に使用さ
    れる一時メモリ領域との三領域に区分される、 ことを特徴とする請求項1、2、3、4又は5に記載の
    プロセッサのメモリ保護方法。
  7. 【請求項7】一時メモリ領域は、 前記メモリに格納された如何なるプログラムを実行する
    に当たり何の制約も受けない、 ことを特徴とする請求項6に記載のプロセッサのメモリ
    保護方法。
  8. 【請求項8】ロジックは、 プログラムカウンタの値が前記ユーザプログラム領域を
    指している場合には、 前記一時メモリ領域へのアクセスのみを許可すると共に
    他の領域へのアクセスでは例外処理を行う様に制御され
    る、 ことを特徴とする請求項6又は7に記載のプロセッサの
    メモリ保護方法。
  9. 【請求項9】例外処理は、 ハードウエアの割り込みを生じさせることにより開始さ
    れる、 ことを特徴とする請求項8に記載のプロセッサのメモリ
    保護方法。
  10. 【請求項10】ロジックは、 前記ユーザプログラム領域に格納されたユーザプログラ
    ムから前記一時メモリ領域以外へアクセスの必要性があ
    る場合には、 前記アクセスの正当性の確認を行う、 ことを特徴とする請求項6、7、8又は9に記載のプロ
    セッサのメモリ保護方法。
  11. 【請求項11】アクセスの正当性の確認は、 前記特権プログラム領域に格納されたサービスプログラ
    ムを呼出した後に、 前記サービスプログラムにより前記アクセスの正当性の
    判断を行う、 ことを特徴とする請求項10に記載のプロセッサのメモ
    リ保護方法。
  12. 【請求項12】判断は、 前記呼出しの前に前記ユーザプログラムが必要とする、
    前記ユーザプログラム領域のデータに対応した保護キー
    に相当する情報と当該データのアドレスを前記一時メモ
    リ領域に書き込み、 前記呼出しの後、 前記サービスプログラムにより、前記一時メモリ領域に
    書き込まれた前記保護キーに相当する情報と、前記ユー
    ザプログラム領域に格納された前記データの保護キーと
    を照合した結果、一致すれば、アクセスの許可をする、 ことを特徴とする請求項11に記載のプロセッサのメモ
    リ保護方法。
  13. 【請求項13】アクセスの許可は、 前記データを前記一時メモリ領域に複写した後に、 制御を前記ユーザプログラムに戻す、 ことを特徴とする請求項12に記載のプロセッサのメモ
    リ保護方法。
  14. 【請求項14】メモリ領域を、 種々の共通サービスプログラムを格納する特権プログラ
    ム領域と、 端末装置によりダウンロードされたユーザプログラムを
    格納するユーザプログラム領域と、 当該ユーザプログラム領域及び前記特権プログラム領域
    に格納された各プログラムの実行時に一時的に使用する
    一時メモリ領域とに区分するメモリと共に、 前記ユーザプログラムから前記一時メモリ領域以外への
    アクセスはモニタを経由して行い、当該一時メモリ領域
    以外への不正なアクセスに対して当該ユーザプログラム
    の実行を止める制御手段を具備する、 ことを特徴とするプロセッサのメモリを保護されたIC
    カード。
  15. 【請求項15】制御手段は、 プログラムカウンタの値が前記ユーザプログラム領域を
    指している際は前記一時メモリ領域以外の直接アクセス
    を禁止し、当該一時メモリ領域以外のへのアクセスが必
    要な際は当該特権プログラム領域に存在するサービスプ
    ログラムを経由し、当該特権プログラム領域を指してい
    る際は全てのメモリ領域へのアクセスを可能とする制御
    手段である、 ことを特徴とする請求項14に記載のプロセッサのメモ
    リを保護されたICカード。
  16. 【請求項16】制御手段は、 前記プログラムカウンタの値を読み出した後に指定され
    た番地の命令を読み出す命令フェッチ回路と、 当該命令フェッチ回路から前記指定された番地の命令を
    格納する命令レジスタと、 当該命令レジスタの値をデコードする命令デコード回路
    と、 当該命令デコード回路に接続されたアドレス演算回路
    と、 前記命令デコード回路に接続されたラッチと、 前記プログラムカウンタに接続され前記特権プログラム
    領域の境界アドレスとの関係を判断するウインドウ回路
    と、 前記アドレス演算回路の出力結果及び演算終了通知を受
    け、一時メモリ領域の境界アドレスとの関係を判断する
    別のウインドウ回路と、 前記ラッチと前記ウインドウ回路と前記別のウインドウ
    回路との各出力を判断する論理回路と、 当該論理回路からの出力により、前記プログラムカウン
    タに予め特権プログラム領域に設けてある割り込みベク
    トルによりアドレスをロードする割り込み回路と、を具
    備する、 ことを特徴とする請求項14又は15に記載のプロセッ
    サのメモリを保護されたICカード。
  17. 【請求項17】命令デコード回路は、 当該命令デコード回路の前記命令レジスタの値に対する
    結果の実行が直接前記メモリ領域にアクセスを必要とす
    る場合には、前記ラッチに対する出力をアサートすると
    共に前記アドレス演算回路を作動させる、 ことを特徴とする請求項16に記載のプロセッサのメモ
    リを保護されたICカード。
  18. 【請求項18】制御手段は、 前記メモリと共に一体構成される、 ことを特徴とする請求項14、15、16又は17に記
    載のプロセッサのメモリを保護されたICカード。
  19. 【請求項19】共通サービスプログラムは、 前記ICカード上のファイルを管理するプログラムを含
    む、 ことを特徴とする請求項14、15、16、17又は1
    8に記載のプロセッサのメモリを保護されたICカー
    ド。
  20. 【請求項20】ICカード上のファイルを管理するプロ
    グラムは、 データアクセス用サービスプログラムである、 ことを特徴とする請求項19に記載のプロセッサのメモ
    リを保護されたICカード。
  21. 【請求項21】前記データアクセス用サービスプログラ
    ムは、 前記ユーザプログラム領域に格納されたユーザプログラ
    ムが前記一時メモリ領域以外にアクセス要求すると呼び
    出され、 前記ユーザプログラムが前記一時メモリ領域に書き込み
    した前記アクセス要求の正当性を示す保護キーに相当す
    る情報及び前記アクセス要求先のアドレスを元にして、
    書き込まれた当該保護キーに相当する情報と前記ユーザ
    プログラム領域に格納されたアクセス要求先のアドレス
    の情報に対応した保護キーとを照合した後、 一致すれば前記アクセスを許可し実行する一連の処理プ
    ログラムである、 ことを特徴とする請求項20に記載のプロセッサのメモ
    リを保護されたICカード。
  22. 【請求項22】一連の処理プログラムは、 前記アクセス要求先のアドレスの情報を、前記一時メモ
    リ領域に複写し、 ユーザプログラムに戻る前記実行機能を含む、 ことを特徴とする請求項21に記載のプロセッサのメモ
    リを保護されたICカード。
  23. 【請求項23】前記ウインドウ回路は、 前記特権プログラム領域の境界アドレスを固定値化する
    特権プログラム領域の境界アドレス固定値回路に接続す
    る、 ことを特徴とする請求項17、18、19、20又は2
    1に記載のプロセッサのメモリを保護されたICカー
    ド。
  24. 【請求項24】前記別のウインドウ回路は、 前記一時メモリ領域の境界アドレスを固定値化する一時
    メモリ領域の境界アドレス固定値回路に接続する、 ことを特徴とする請求項17、18、19、20、21
    又は22に記載のプロセッサのメモリを保護されたIC
    カード。
JP10242304A 1998-08-27 1998-08-27 プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード Pending JP2000076135A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10242304A JP2000076135A (ja) 1998-08-27 1998-08-27 プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10242304A JP2000076135A (ja) 1998-08-27 1998-08-27 プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード

Publications (1)

Publication Number Publication Date
JP2000076135A true JP2000076135A (ja) 2000-03-14

Family

ID=17087242

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10242304A Pending JP2000076135A (ja) 1998-08-27 1998-08-27 プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード

Country Status (1)

Country Link
JP (1) JP2000076135A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002037286A1 (fr) * 2000-11-02 2002-05-10 Sony Computer Entertainment Inc. Terminal capable d"empecher l"utilisation abusive d"un contenu distribue par le reseau
JP2003099293A (ja) * 2001-09-21 2003-04-04 Denso Corp 携帯端末およびコンピュータプログラム
JP2005500608A (ja) * 2001-08-13 2005-01-06 クゥアルコム・インコーポレイテッド コンピュータ装置上の記憶領域へのアプリケーションレベルのアクセス特権
JP2008176637A (ja) * 2007-01-19 2008-07-31 Toshiba Corp 情報処理装置
US7761717B2 (en) 2001-07-10 2010-07-20 Trident Microsystems (Far East) Ltd. Memory device with data security in a processor
JP2010170387A (ja) * 2009-01-23 2010-08-05 Toshiba Corp 画像処理装置、方法、及びプログラム
US9111097B2 (en) 2002-08-13 2015-08-18 Nokia Technologies Oy Secure execution architecture
JP2016206747A (ja) * 2015-04-16 2016-12-08 大日本印刷株式会社 電子情報記憶媒体、異常検知方法、及び異常検知プログラム
DE102017123812A1 (de) 2016-10-17 2018-04-19 Okuma Corporation Steuervorrichtung

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002037286A1 (fr) * 2000-11-02 2002-05-10 Sony Computer Entertainment Inc. Terminal capable d"empecher l"utilisation abusive d"un contenu distribue par le reseau
US7000104B2 (en) 2000-11-02 2006-02-14 Sony Computer Entertainment Inc. Terminal device for authorizing use of content distributed through a network
US7761717B2 (en) 2001-07-10 2010-07-20 Trident Microsystems (Far East) Ltd. Memory device with data security in a processor
JP2005500608A (ja) * 2001-08-13 2005-01-06 クゥアルコム・インコーポレイテッド コンピュータ装置上の記憶領域へのアプリケーションレベルのアクセス特権
JP2003099293A (ja) * 2001-09-21 2003-04-04 Denso Corp 携帯端末およびコンピュータプログラム
US9111097B2 (en) 2002-08-13 2015-08-18 Nokia Technologies Oy Secure execution architecture
JP2008176637A (ja) * 2007-01-19 2008-07-31 Toshiba Corp 情報処理装置
JP2010170387A (ja) * 2009-01-23 2010-08-05 Toshiba Corp 画像処理装置、方法、及びプログラム
JP2016206747A (ja) * 2015-04-16 2016-12-08 大日本印刷株式会社 電子情報記憶媒体、異常検知方法、及び異常検知プログラム
DE102017123812A1 (de) 2016-10-17 2018-04-19 Okuma Corporation Steuervorrichtung
US10366018B2 (en) 2016-10-17 2019-07-30 Okuma Corporation Control apparatus with access monitoring unit configured to request interrupt process

Similar Documents

Publication Publication Date Title
Weiser et al. TIMBER-V: Tag-isolated memory bringing fine-grained enclaves to RISC-V
JP5000573B2 (ja) 保護された関数呼び出し
JP4989543B2 (ja) メモリドメインを基にしたデータ処理システム内のセキュリティ制御
US7272832B2 (en) Method of protecting user process data in a secure platform inaccessible to the operating system and other tasks on top of the secure platform
EP1126356B1 (en) Tamper resistant microprocessor
JP5114617B2 (ja) 秘密鍵を保護する、セキュア端末、プログラム、および方法
EP3702923B1 (en) Memory protection
US7020772B2 (en) Secure execution of program code
US7444668B2 (en) Method and apparatus for determining access permission
RU2313126C2 (ru) Система и способ для защиты от недоверенного кода режима управления с системой с помощью переадресации прерывания режима управления системой и создания контейнера виртуальной машины
US8132254B2 (en) Protecting system control registers in a data processing apparatus
JP4939382B2 (ja) 情報処理装置及びそのプログラム実行制御方法
JPH09500469A (ja) メモリカード及びその作動方法
US7523279B2 (en) Information processing apparatus for accessing memory spaces including a user memory space and a secure memory space
JP2004530979A (ja) メモリの一部を保護するための方法および装置
WO2005116842A1 (en) Digital signal controller secure memory partitioning
JP2000076135A (ja) プロセッサのメモリ保護方法及びプロセッサのメモリを保護されたicカード
JP2004005679A (ja) コンピュータシステム、メモリ構造、および、プログラムを実行する方法
EP1456730B1 (en) Method and system for module chaining control in a modular software architecture
JP2011150457A (ja) 情報処理装置およびメモリアクセス制御方法
Yiu The Next Steps in the Evoluation of Embedded Processors for the Smart Connected Era,”
US11150887B2 (en) Secure code patching
CN117349853A (zh) 用于管理存储区域的访问权限的方法和对应的片上系统
JPH0363854A (ja) データプロテクト回路
JPS6155754A (ja) 記憶保護方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20041026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041224

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050830