JP2002278934A - セキュリティ管理装置およびセキュリティ管理方法 - Google Patents

セキュリティ管理装置およびセキュリティ管理方法

Info

Publication number
JP2002278934A
JP2002278934A JP2001075220A JP2001075220A JP2002278934A JP 2002278934 A JP2002278934 A JP 2002278934A JP 2001075220 A JP2001075220 A JP 2001075220A JP 2001075220 A JP2001075220 A JP 2001075220A JP 2002278934 A JP2002278934 A JP 2002278934A
Authority
JP
Japan
Prior art keywords
identification information
block
data processing
terminal
blocks
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
JP2001075220A
Other languages
English (en)
Inventor
Toru Sakai
徹 境井
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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2001075220A priority Critical patent/JP2002278934A/ja
Publication of JP2002278934A publication Critical patent/JP2002278934A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Abstract

(57)【要約】 【課題】使用可能なハンディターミナルであるかのセキ
ュリティチェックをより確実なものとし、不正コピーに
よってアプリケーション・プログラムが他のハンディタ
ーミナルに移植されることを防止できるようにする。 【解決手段】ハンディターミナルは、複数のメモリブロ
ックによって構成されたNANDチップ(CMOS・N
AND・EEPROMチップ)8を内蔵しており、この
NANDチップ8の製造時に発生され、NANDチップ
8の中に存在している各不良ブロックの位置を検出す
る。そして、この不良ブロックの位置情報に基づいてこ
のハンディターミナル対応の端末IDを生成して設定す
る。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、予め設定されて
いる装置識別情報を参照することによって、使用可能な
データ処理装置であるかを判定するセキュリティ管理装
置、そのセキュリティ管理装置に使用されるプログラ
ム、セキュリティ管理方法に関する。
【0002】
【従来の技術】一般に、ハンディターミナルにおいて
は、ハードウェアと開発キットを販売し、業務で使用す
るアプリケーション・プログラムは、ユーザやディーラ
ーが設計するようにしているため、例えば、ソフトウェ
ア込み製品をディーラーから購入し、量販店で購入した
製品にその中身をコピーするようにすれば、容易にアプ
リケーション・プログラムを不正コピーして移植するこ
とが可能となってしまう。そこで、従来、アプリケーシ
ョン・プログラムを不正コピーから保護する手段とし
て、ターミナル固有のID(端末識別情報)を不揮発性
のROMに書き込んでおき、アプリケーション自体がR
OM内の端末識別情報に基づいてアクセス可否を検証す
る方法や、消去や再書込みが可能なEEPROMにユー
ザIDを設定しておき、アプリケーション自体がEEP
ROM内のユーザIDに基づいてアクセス可否を検証す
る方法等が知られている。
【0003】
【発明が解決しようとする課題】しかしながら、ROM
内に端末識別情報を個別に設定することは、コスト的に
不利であり、また、EEPROM内にユーザIDを設定
することは、操作ミス等によって修理/交換の必要性が
生じるおそれがあった。一方、完全なコピープロテクト
を実現するには、アプリケーション・プログラム自体が
使用可能なハンディターミナルか、つまり、「ディーラ
ーが販売したハンディターミナル」であるか否かを検証
できるようにしなければならない。ところで、FLAS
Hデバイスの一種であるCMOS・NAND・EEPR
OMチップは、1バイト毎に書き込みが可能であるが、
上書きは不可能であり、かつ消去は、消去ブロックと呼
ばれている単位毎に行われるという特徴の他、製造時
(シリコン再結晶時)のバラツキとして不良ブロックが
発生するという特徴を有している。例えば、1024ブ
ロックのチップには、通常10程度の不良ブロックが存
在しているとされている。
【0004】この発明の課題は、不揮発性メモリチップ
の製造時において、その中に不良ブロックが発生すると
いう特性に基づいて装置識別情報を生成使用することに
より、使用可能なデータ処理装置であるかのセキュリテ
ィチェックをより確実なものとするセキュリティ管理を
実現できるようにすることである。
【0005】この発明の手段は、次の通りである。請求
項第1記載の発明は、予め設定されている装置識別情報
を参照することによって、使用可能なデータ処理装置で
あるかを判定する為のセキュリティチェックを行うセキ
ュリティ管理装置であって、データ処理装置に内蔵さ
れ、複数のメモリブロックによって構成された不揮発性
メモリチップを検出対象として、このメモリチップの中
に存在している不良ブロックの位置を検出する検出手段
と、この検出手段によって検出された不良ブロックの位
置情報に基づいて当該データ処理装置対応の装置識別情
報を生成する識別情報生成手段と、この識別情報生成手
段によって生成された装置識別情報を前記セキュリティ
チェック用の情報として設定する識別情報設定手段とを
具備するものである。したがって、請求項1記載の発明
においては、不揮発性メモリチップの中に存在している
不良ブロックの位置を検出して、その不良ブロックの位
置情報に基づいて装置識別情報を生成し、この装置識別
情報をセキュリティチェック用の情報として設定するよ
うにしたから、不揮発性メモリチップの製造時において
不良ブロックが発生するという特性に基づいて装置識別
情報を生成使用することにより、使用可能なデータ処理
装置であるかのセキュリティチェックをより確実なもの
とするセキュリティ管理を実現することができる。
【0006】なお、この発明は次のようなものであって
もよい。前記不揮発性メモリチップは、NAND型のE
EPROMチップによって構成され、前記検出手段は、
この不揮発性メモリチップの製造過程で発生した不良ブ
ロックの位置を検出する(請求項2記載の発明)。
【0007】前記識別情報生成手段は、前記検出手段に
よって複数の不良ブロックが検出された場合に、各不良
ブロックの位置情報を組み合わせてなるデータ構成の装
置識別情報を生成する(請求項3記載の発明)。
【0008】前記検出手段は、複数の不良ブロックを検
出した場合に、各ブロックの位置情報を検出すると共
に、不良ブロックの個数を計数し、前記識別情報生成手
段は、前記検出手段によって検出された不良ブロックの
個数および各不良ブロック対応の位置情報を組み合わせ
てなるデータ構成の識別情報を生成する(請求項4記載
の発明)。
【0009】使用可能なデータ処理装置であるかを判定
する為のセキュリティチェックを行う場合に、前記検出
手段によって検出された不良ブロックの位置と、前記設
定されている装置識別情報の各要素とを照合することに
よって、検出ブロック位置に対応する要素が全て不良ブ
ロックである場合には、使用可能なデータ処理装置であ
ると判別し、検出ブロック位置に対応する要素のいずれ
かが不良ブロックではない正常ブロックである場合に
は、使用不能なデータ処理装置であると判別するセキュ
リティ検証手段を設ける(請求項5記載の発明)。
【0010】アプリケーション・プログラムの実行開始
時に、そのプログラムが始めて起動された初期起動時で
あるかを判別する判別手段を設け、この判別手段によっ
て初期起動時であるかことが判別された場合には、前記
検出ブロック位置に基づいて生成された装置識別情報を
設定し、初期起動時でないことが判別された場合には、
前記セキュリティ検証手段によって使用可能なデータ処
理装置であるかを判別する(請求項6記載の発明)。
【0011】他の発明は、コンピュータに対して、上述
した請求項1記載の発明に示した主要機能を実現させる
ためのプログラムを提供し(請求項7記載の発明)、ま
た、上述した請求項1記載の発明に示した主要手順にし
たがった処理を行うセキュリティ管理方法を提供するも
のである(請求項8記載の発明)。
【0012】
【発明の実施の形態】以下、図1〜図5を参照してこの
発明の一実施形態を説明する。図1は、この実施形態に
おけるハンディターミナルの全体構成を示したブロック
図である。なお、このハンディターミナルには、予め設
定されている装置識別情報を参照することによって、使
用可能なハンディターミナルであるかを判定するセキュ
リティ管理機能を有している。そして、このハンディタ
ーミナル本体には、複数のメモリブロックによって構成
された不揮発性メモリチップ(上述したCMOS・NA
ND・EEPROMチップ)が内蔵されている。
【0013】このハンディターミナルは、このCMOS
・NAND・EEPROMチップの中に存在している不
良ブロックの位置を検出し、この不良ブロックの位置情
報に基づいてこのハンディターミナル対応の装置識別情
報(端末ID)を生成して設定しておくことにより、こ
の端末IDに基づいて確実なセキュリティ管理を実現
し、不正コピーによってアプリケーション・プログラム
が他のハンディターミナルに移植されることを効果的に
防止するようにしたものである。なお、この実施形態の
特徴部分を詳述する前に、この実施形態のハードウェア
上の構成について以下、説明しておく。
【0014】CPU1は、記憶装置2内のオペレーティ
ングシステムや各種アプリケーションソフトにしたがっ
てこのハンディターミナルの全体動作を制御する中央演
算処理装置である。記憶装置2は、オペレーティングシ
ステムや各種アプリケーションソフトの他、データベー
ス、文字フォント等が格納され、磁気的、光学的、半導
体メモリ等によって構成されている記録媒体3やその駆
動系を有している。この記録媒体3はハードディスク等
の固定的な媒体若しくは着脱自在に装着可能なCD−R
OM、フロッピィデスク、RAMカード、磁気カード等
の可搬型の媒体である。また、この記録媒体3内のプロ
グラムやデータは、必要に応じてCPU1の制御により
RAM(例えば、スタティックRAM)4にロードされ
たり、RAM4内のデータが記録媒体3にセーブされ
る。更に、記録媒体はサーバ等の外部機器側に設けられ
ているものであってもよく、CPU1は伝送制御部5を
介してこの記録媒体内のプログラム/データを直接アク
セスして使用することもできる。
【0015】また、CPU1は記録媒体3内に格納され
るその一部あるいは全部を他の機器側から伝送制御部5
を介して取り込み、記録媒体3に新規登録あるいは追加
登録することもできる。更に、プログラム/データはサ
ーバ等の外部機器側で記憶管理されているものであって
もよく、CPU1は伝送制御部5を介して外部機器側の
プログラム/データを直接アクセスして使用することも
できる。一方、CPU1にはその入出力周辺デバイスで
ある伝送制御部5、入力部6、表示部7、CMOS・N
AND・EEPROMチップ(以下、単にNANDチッ
プと称する)8がバスラインを介して接続されており、
入出力プログラムにしたがってCPU1はそれらの動作
を制御する。
【0016】このハンディターミナルに内蔵されている
NANDチップ8は、上述したようにFLASHデバイ
スの一種であり、1バイト毎に書き込みが可能である
が、上書きは不可能であり、かつ消去は、消去ブロック
と呼ばれている単位毎に行われるという特徴の他、製造
時(シリコン再結晶時)のバラツキとして不良ブロック
が発生するという特徴がある大容量のNAND型のEE
PROMである。ここで、NANDチップ8が1024
ブロックのチップである場合には、通常10個程度の不
良ブロックが存在している。なお、不正コピーを防止す
るために対象となるアプリケーション・プログラム等
は、NANDチップ8内に組み込んでおいてもよいが、
この実施形態においては、記録媒体3内に組み込まれて
いる。
【0017】図2(A)は、NANDチップ8内の不良
ブロック位置を検出してそれを数値化することによって
生成された端末IDのデータ構成を示している。すなわ
ち、この端末IDは、その先頭に「不良ブロックの個
数」の項目を有し、それ以降はNANDチップ8内の不
良ブロックに対応して、その「不良ブロックの位置情
報」、「不良ブロックの位置情報」‥‥の項目を不良ブ
ロック個数分組み合わせたデータ構成となっている。な
お、「不良ブロックの位置情報」は、例えば、NAND
チップ8内の1024ブロックに対して割り当てたブロ
ック番号によって表されており、また、「不良ブロック
の位置情報」の並びは、不良ブロックの検出順となって
いる。また、端末IDの初期値としては、例えば、「F
Fh」を埋め込んだ値となっている。
【0018】この場合、NANDチップ8内の不良ブロ
ックは、その製造時のバラツキによって発生するもので
あるから、その発生位置は、規則性のない自然発生的な
ものであり、不良ブロックの個数や位置はNANDチッ
プ8毎にそれぞれ相違するものとなる。また、例えば、
1024ブロックのNANDチップ8内に10個の不良
ブロックが存在しているものと仮定すると、不良ブロッ
クの発生位置に応じて端末IDの種類としては、3×1
23種類の組み合わせが発生するようになる。したが
って、検出された各不良ブロックの位置に基づいて生成
された端末IDは、そのNANDチップ8が組み込まれ
ているハンディターミナル固有の値となる。
【0019】図2(B)は、端末IDのデータ内容を例
示したもので、この例では、「不良ブロックの個数」が
“10”、「不良ブロックの位置情報」が“010
0”、“ 0500”、“0750”‥‥“nnnn”
の場合である。ここで、「不良ブロックの位置情報」
は、そのブロック番号で表している。例えば、1024
ブロックチップの場合、最初のブロックを“0”とすれ
ば、10ビット(1023=3FFh)で表現される。
したがって、「不良ブロックの個数」が“10”の場
合、それを4ビットとすると、「不良ブロックの位置情
報」の合計は、10×10=100ビットとなり、端末
IDの全体長は、13バイト構成の数値、つまり、10
進数で32桁の数値で表現される。なお、生成された端
末IDのデータは、記憶媒体3内のアプリケーション・
プログラムの実行ファイル内に記録保持される。
【0020】次に、この実施形態におけるハンディター
ミナルの主要動作を図3〜図5に示すフローチャート
(アプリケーションプログラムの概要)を参照して説明
する。ここで、これらのフローチャートに記述されてい
る各機能を実現するためのプログラム、つまり、図3に
記述したアプリケーション実行処理、図4に記述した端
末ID生成処理、図5に記述した端末ID検証処理は、
読み取り可能なプログラムコードの形態で記録媒体3に
格納されており、CPU1はこのプログラムコードにし
たがった動作を逐次実行する。また、CPU1は伝送媒
体を介して伝送されてきた上述のプログラムコードにし
たがった動作を逐次実行することもできる。すなわち、
記録媒体の他、伝送媒体を介して外部供給されたプログ
ラム/データを利用してこの実施形態特有の動作を実行
することもできる。
【0021】図3は、不正コピーを防止するために対象
となるアプリケーション・プログラムの実行処理を示し
たフローチャートである。先ず、CPU1は、当該アプ
リケーション・プログラムをアクセスすることにより、
そのアプリケーション・プログラムの実行ファイル内に
設けられている端末ID設定領域から「端末ID変数」
を読み出す(ステップA1)。ここで、「端末ID変
数」として、最初は、初期値がセットされている。つま
り、その実行ファイルの中に確保されている13バイト
領域内に予め初期セットされている初期値として、例え
ば、「FFh」の値が13バイト領域内にそれぞれ埋め
込まれている。
【0022】このように「端末ID変数」を初期セット
しておく理由は、当該アプリケーション・プログラムが
始めて起動されたか否かを判別するためである。つま
り、アプリケーション・プログラムの実行ファイル内に
端末ID設定領域を設けておき、その領域内の値が「F
Fh」の場合には、アプリケーション・プログラムが始
めて起動されたと認識することができる。最初は、ステ
ップA2で「端末ID変数」が初期値であることが判別
されるので、ステップA3に移り、端末ID生成処理が
開始される。
【0023】図4は、この端末ID生成処理を示したフ
ローチャートである。先ず、CPU1は、RAM4内に
設けられている各種のカウンタを初期化するイニシャラ
イズ処理を行う(ステップB1)。つまり、NANDチ
ップ8の各ブロックを1ブロック毎に順次指定する為の
Nカウンタ(ブロック指定カウンタ)に初期値“1”を
セットする他、NANDチップ8内に存在する不良ブロ
ックの個数を計数する為のBCカウンタ(不良ブロック
数カウンタ)の内容をクリアする初期化処理を行う。
【0024】この状態において、CPU1は、Nカウン
タの値が最終ブロック番号(1024)に達したかをチ
ェックするが(ステップB2)、いま、Nカウンタの値
は“1”であるから、次のステップB3に移り、BCカ
ウンタの値が“10”を超えたかをチェックする。すな
わち、上述したように、1024ブロックのチップの場
合には、通常10程度の不良ブロックが存在しているの
で、10個の不良ブロックを検出したかを判別する。こ
の場合、BCカウンタの値が“10”以下であれば、N
カウンタの値に対応するN番目ブロックが検出対象とし
て指定され、その指定ブロックは不良ブロックかをチェ
ックする(ステップB4)。
【0025】いま、Nカウンタの値は、“1”であるか
ら、先頭ブロックが不良ブロックでなければ(ステップ
B5)、Nカウンタの値に“1”を加算してその値を更
新する(ステップB8)。そして、ステップB2に戻
り、以下、上述の動作を繰り返す。一方、N番目ブロッ
クが不良ブロックであれば(ステップB5)、BCカウ
ンタの値に“1”を加算してその値を更新すると共に
(ステップB6)、その不良ブロック位置(Nカウンタ
の値)を端末IDの構成データとして書き込む(ステッ
プB7)。
【0026】以下、NANDチップ8内の不良ブロック
が検出される毎に、上述の動作を繰り返すことにより、
検出された不良ブロックの位置情報が端末IDの構成デ
ータとして書き込まれる。これによってNカウンタの値
が最終ブロック番号(1024)に達した場合(ステッ
プB2)あるいはBCカウンタの値が“10”を超えた
場合には(ステップB3)、BCカウンタの値を「不良
ブロック個数」として、端末IDの構成データ(先頭項
目)に書き込むことにより(ステップB9)、図2に示
した構成の端末IDが生成される。
【0027】このようにして端末ID生成処理が終了す
ると、図3のステップA4に移り、当該プログラムファ
イルをオープンした後、新規生成した端末IDをそのフ
ァイル内の「端末ID変数」の初期値に上書することに
よって、生成端末IDをファイル内に設定しておく(ス
テップA5)。その後、このプログラムファイルをクロ
ーズした後(ステップA6)、このプログラムへのアク
セスが許可されて、通常のアプリケーション実行処理が
可能となる(ステップA7)。
【0028】一方、図3において、プログラムファイル
から読み出した「端末ID変数」が初期値でないことが
判別された場合(ステップA2)、つまり、アプリケー
ション・プログラムを始めて起動した場合ではなく、2
回目以上の起動指定の場合には、ステップA8に移り、
端末ID検証処理に移る。この端末ID検証処理は、端
末IDを参照することによって使用可能なハンディター
ミナルであるかを検証する処理である。
【0029】図5は、この端末ID検証処理を示したフ
ローチャートである。先ず、CPU1は、プログラムフ
ァイル内に記録保持されている生成端末IDを読み出
し、その先頭の「不良ブロック個数」を取得する(ステ
ップC1)。そして、上述のNカウンタに初期値“1”
をセットした後(ステップC2)、このNカウンタの値
が「不良ブロック個数」を超えたかをチェックする(ス
テップC3)。いま、Nカウンタには初期値がセットさ
れているので、このNカウンタの値で指定される生成端
末IDの中からN番目の「不良ブロック位置情報」を取
得する(ステップC4)。
【0030】次に、取得した「不良ブロック位置情報」
に基づいてNANDチップ8の該当位置ブロックを指定
し、その指定ブロックは不良ブロックかをチェックする
(ステップC5)。ここで、不良ブロックであれば(ス
テップC6)、Nカウンタの値に“1”を加算してその
値を更新する(ステップC7)。以下、ステップC3に
戻り、このNカウンタの値で指定される生成端末IDの
中からN番目の「不良ブロック位置情報」を取得し、こ
の「不良ブロック位置情報」に該当するNANDチップ
8の対応ブロックは不良ブロックかをチェックする処理
を繰り返す。
【0031】この結果、Nカウンタの値が「不良ブロッ
ク個数」を超えた場合(ステップC3)、つまり、生成
端末ID内の各「不良ブロック位置情報」に該当するN
ANDチップ8の対応ブロックが全て不良ブロックであ
る場合には、使用可能なハンディターミナルであると判
断して正常表示を行う(ステップC8)。また、Nカウ
ンタの値が「不良ブロック個数」を超える前に、生成端
末ID内のいずれかの「不良ブロック位置情報」に該当
するNANDチップ8の対応ブロックが正常不良ブロッ
クである場合ことが判別された場合には(ステップC
6)、使用不可能なハンディターミナルであると判断し
てエラー表示を行う(ステップC9)。
【0032】このような端末ID検証処理が終了する
と、図3のステップA9に移り、上述した端末ID検証
の処理結果を判別し、正常表示による終了である場合に
は、そのアプリケーション・プログラムの起動を許可し
て、通常のプログラム実行処理に移るが(ステップA
7)、エラー表示による終了の場合には、このプログラ
ム実行処理が禁止されることにより、完全なコピープロ
テクトが可能となる。
【0033】以上のように、この実施形態におけるハン
ディターミナルは、複数のメモリブロックによって構成
されたNANDチップ8の中に存在している不良ブロッ
クの位置を検出し、このブロック位置情報に基づいてこ
のハンディターミナル対応の端末IDを生成して設定す
るようにしたから、使用可能なハンディターミナルであ
るかのセキュリティチェックをより確実なものとするこ
とができる。これによって例えば、不正コピーによって
アプリケーション・プログラムが他のハンディターミナ
ルに移植されることを防止することが可能となる。
【0034】また、生成された端末IDをNANDチッ
プ8に設定するようにしたから、それを記録するEEP
ROM等の専用メモリが不要となり、コスト的に有利と
なる。ここで、1024ブロックのNANDチップ8
に、10個の不良ブロックが存在しているものと仮定す
ると、端末IDのデータ内容としては、3×1023
類 の組み合わせが発生するため、端末IDは、その
NANDチップ8が組み込まれているハンディターミナ
ル固有の値となる。この場合、端末IDを構成するデー
タ内には、「不良ブロック位置情報」の他に、「不良ブ
ロックの個数」を含めたから、端末ID検証処理の実行
時には、この個数分の不良ブロックが含まれているかを
チェックすることができ、その検証がより確実なものと
なる。
【0035】また、端末ID検証処理を行う場合に、検
出された不良ブロック位置と、端末IDの各要素とを照
合することによって、検出ブロック位置に対応する要素
が全て不良ブロックである場合には、使用可能なハンデ
ィターミナルであると判別するが、検出ブロック位置に
対応する要素のいずれかが正常ブロックである場合、つ
まり、途中で不一致が検出された場合には、その時点で
使用不能なハンディターミナルであると判別するように
したから、端末ID検証処理を効率よく行うことができ
る。
【0036】また、アプリケーション・プログラムの実
行開始時に、そのプログラムが始めて起動された初期起
動時であるかを判別し、初期起動時であれば、検出ブロ
ック位置に基づいて端末IDを生成して設定し、初期起
動時でない場合には、端末ID検証処理を行うようにし
たから、アプリケーション・プログラムの不正コピーを
防止することができる。
【0037】なお、上述した実施形態においては、10
24ブロックのチップに、10個の不良ブロックが存在
しているものと仮定すると、端末IDのデータ内容とし
ては、3×1023種類の組み合わせが発生する為、不
良ブロック位置に基づいて生成された端末IDは、その
NANDチップ8が組み込まれているハンディターミナ
ル固有の値となり、同一の端末IDが発生される可能性
は極めて低いものとなるが、可能性が全くないとは言え
ず、また、NANDチップに不良ブロックが存在してい
ない場合も想定することができる。このことから、更な
る安全策として、図6に示すような端末IDの生成方法
も考えられる。
【0038】すなわち、上述した実施形態と同様に、
「不良ブロックの個数」が“10”の場合、それを4ビ
ットとすると、「不良ブロックの位置情報」の合計は、
10×10=100ビットとなり、端末IDの全体長
は、13バイト構成の数値、つまり、10進数で32桁
の数値で表現できるが、更に、ユーザが任意に入力して
設定したユーザ入力値(3バイト)を加えた合計16バ
イトの端末IDとすれば、同一の端末IDが発生される
可能性は確率的にほとんどなく、より確実な固有情報と
なる。なお、ユーザ入力値は、どのような種類のデータ
であってもよく、また、その桁数も問わない。
【0039】また、上述した実施形態においては、生成
された端末IDを記録媒体3内に設定するようにした
が、NANDチップ8に設定するようにしてもよい。メ
モリチップとして、FLASHデバイスの一種であるC
NOS・NAND・EEPROMチップを例示したが、
製造時に不良ブロックが発生するメモリチップであれ
ば、同様に適用可能である。また、上述した実施形態に
おいては、アプリケーション・プログラムの実行開始時
に、そのプログラムが始めて起動された初期起動時であ
れば、端末IDを生成して設定するようにしたが、端末
IDの設定時期としては、製品出荷時に組み込んでおい
てもよい。また、端末IDの生成設定プログラムをアプ
リケーション・プログラムから独立させてもよい。
【0040】一方、コンピュータ(ハンディターミナ
ル)に対して、上述した各手段を実行させるためのプロ
グラムコードをそれぞれ記録した記録媒体(例えば、C
D−ROM、フロッピィデスク、RAMカード等)を提
供するようにしてもよい。すなわち、コンピュータが読
み取り可能なプログラムコードを有する記録媒体であっ
て、データ処理装置に内蔵され、複数のメモリブロック
によって構成された不揮発性メモリチップを検出対象と
して、このメモリチップの中に存在している不良ブロッ
クの位置を検出する機能と、検出された不良ブロックの
位置情報に基づいて当該データ処理装置対応の装置識別
情報を生成する機能と、生成された装置識別情報を参照
することによって使用可能なデータ処理装置であるかを
判定する為のセキュリティチェック用の情報として、前
記生成された装置識別情報を設定する機能とを実現させ
るためのプログラムを記録したコンピュータが読み取り
可能な記録媒体を提供するようにしてもよい。
【0041】
【発明の効果】この発明によれば、不揮発性メモリチッ
プの中に存在している不良ブロックの位置を検出して、
その不良ブロックの位置情報に基づいて装置識別情報を
生成し、この装置識別情報をセキュリティチェック用の
情報として設定するようにしたから、不揮発性メモリチ
ップの製造時において不良ブロックが発生するという特
性に基づいて装置識別情報を生成使用することにより、
使用可能なデータ処理装置であるかのセキュリティチェ
ックをより確実なものとするセキュリティ管理を実現す
ることができる。
【図面の簡単な説明】
【図1】ハンディターミナルの全体構成を示したブロッ
ク図。
【図2】(A)は、NANDチップ8内の不良ブロック
位置を検出してそれを数値化することによって生成され
た端末IDのデータ構成を示した図、(B)は、端末I
Dのデータ内容を例示した図。
【図3】不正コピーを防止するために対象となるアプリ
ケーション・プログラムの実行処理を示したフローチャ
ート。
【図4】図3で示した端末ID生成処理を詳述する為の
フローチャート。
【図5】図3で示した端末ID検証処理を詳述する為の
フローチャート。
【図6】この実施形態の変形応用例を説明する端末ID
のデータ構成を示した図。
【符号の説明】
1 CPU 2 記憶装置 3 記録媒体 5 伝送制御部 6 入力部 8 NANDチップ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】予め設定されている装置識別情報を参照す
    ることによって、使用可能なデータ処理装置であるかを
    判定する為のセキュリティチェックを行うセキュリティ
    管理装置であって、 データ処理装置に内蔵され、複数のメモリブロックによ
    って構成された不揮発性メモリチップを検出対象とし
    て、このメモリチップの中に存在している不良ブロック
    の位置を検出する検出手段と、 この検出手段によって検出された不良ブロックの位置情
    報に基づいて当該データ処理装置対応の装置識別情報を
    生成する識別情報生成手段と、 この識別情報生成手段によって生成された装置識別情報
    を前記セキュリティチェック用の情報として設定する識
    別情報設定手段と、 を具備したことを特徴とするセキュリティ管理装置。
  2. 【請求項2】前記不揮発性メモリチップは、NAND型
    のEEPROMチップによって構成され、前記検出手段
    は、この不揮発性メモリチップの製造過程で発生した不
    良ブロックの位置を検出する、ようにしたことを特徴と
    する請求項1記載のセキュリティ管理装置。
  3. 【請求項3】前記識別情報生成手段は、前記検出手段に
    よって複数の不良ブロックが検出された場合に、各不良
    ブロックの位置情報を組み合わせてなるデータ構成の装
    置識別情報を生成する、 ようにしたことを特徴とする請求項1記載のセキュリテ
    ィ管理装置。
  4. 【請求項4】前記検出手段は、複数の不良ブロックを検
    出した場合に、各ブロックの位置情報を検出すると共
    に、不良ブロックの個数を計数し、 前記識別情報生成手段は、前記検出手段によって検出さ
    れた不良ブロックの個数および各不良ブロック対応の位
    置情報を組み合わせてなるデータ構成の識別情報を生成
    する、 ようにしたことを特徴とする請求項3記載のセキュリテ
    ィ管理装置。
  5. 【請求項5】使用可能なデータ処理装置であるかを判定
    する為のセキュリティチェックを行う場合に、前記検出
    手段によって検出された各不良ブロックの位置と、前記
    設定されている装置識別情報の各要素とを照合すること
    によって、検出ブロック位置に対応する要素が全て不良
    ブロックである場合には、使用可能なデータ処理装置で
    あると判別し、検出ブロック位置に対応する要素のいず
    れかが不良ブロックではない正常ブロックである場合に
    は、使用不能なデータ処理装置であると判別するセキュ
    リティ検証手段を設けた、 ことを特徴とする請求項1記載のセキュリティ管理装
    置。
  6. 【請求項6】アプリケーション・プログラムの実行開始
    時に、そのプログラムが始めて起動された初期起動時で
    あるかを判別する判別手段を設け、 この判別手段によって初期起動時であるかことが判別さ
    れた場合には、前記検出ブロック位置に基づいて生成さ
    れた装置識別情報を設定し、初期起動時でないことが判
    別された場合には、前記セキュリティ検証手段によって
    使用可能なデータ処理装置であるかを判別する、 ようにしたことを特徴とする請求項5記載のセキュリテ
    ィ管理装置。
  7. 【請求項7】コンピュータに対して、 データ処理装置に内蔵され、複数のメモリブロックによ
    って構成された不揮発性メモリチップを検出対象とし
    て、このメモリチップの中に存在している不良ブロック
    の位置を検出する機能と、 検出された不良ブロックの位置情報に基づいて当該デー
    タ処理装置対応の装置識別情報を生成する機能と、 生成された装置識別情報をセキュリティチェック用の情
    報として設定する機能と、 を実現させるためのプロ
    グラム。
  8. 【請求項8】予め設定されている装置識別情報を参照す
    ることによって、使用可能なデータ処理装置であるかを
    判定する為のセキュリティチェックを行うセキュリティ
    管理方法であって、 データ処理装置に内蔵され、複数のメモリブロックによ
    って構成された不揮発性メモリチップを検出対象とし
    て、このメモリチップの中に存在している不良ブロック
    の位置を検出し、 検出された不良ブロックの位置情報に基づいて当該デー
    タ処理装置対応の装置識別情報を生成し、 生成された装置識別情報を前記セキュリティチェック用
    の情報として設定するようにしたことを特徴とするセキ
    ュリティ管理方法。
JP2001075220A 2001-03-16 2001-03-16 セキュリティ管理装置およびセキュリティ管理方法 Pending JP2002278934A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001075220A JP2002278934A (ja) 2001-03-16 2001-03-16 セキュリティ管理装置およびセキュリティ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001075220A JP2002278934A (ja) 2001-03-16 2001-03-16 セキュリティ管理装置およびセキュリティ管理方法

Publications (1)

Publication Number Publication Date
JP2002278934A true JP2002278934A (ja) 2002-09-27

Family

ID=18932332

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001075220A Pending JP2002278934A (ja) 2001-03-16 2001-03-16 セキュリティ管理装置およびセキュリティ管理方法

Country Status (1)

Country Link
JP (1) JP2002278934A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012043517A (ja) * 2010-08-23 2012-03-01 Renesas Electronics Corp 半導体装置
JP2013524378A (ja) * 2010-04-12 2013-06-17 サムスン エレクトロニクス カンパニー リミテッド 記憶装置における物理的識別子を生成する方法及び機械可読記憶媒体
US9256261B2 (en) 2012-05-29 2016-02-09 Renesas Electronics Corporation Semiconductor device having identification information generating function and identification information generation method for semiconductor device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013524378A (ja) * 2010-04-12 2013-06-17 サムスン エレクトロニクス カンパニー リミテッド 記憶装置における物理的識別子を生成する方法及び機械可読記憶媒体
US9136010B2 (en) 2010-04-12 2015-09-15 Samsung Electronics Co., Ltd Method for generating physical identifier in storage device and machine-readable storage medium
JP2012043517A (ja) * 2010-08-23 2012-03-01 Renesas Electronics Corp 半導体装置
US9256261B2 (en) 2012-05-29 2016-02-09 Renesas Electronics Corporation Semiconductor device having identification information generating function and identification information generation method for semiconductor device

Similar Documents

Publication Publication Date Title
ES2297289T3 (es) Identificacion verbosa de hardware para vincular un paquete de software a un sistema informatico que tiene tolerancia a cambios de hardware.
US8281411B2 (en) Security memory device and method for making same
US7730326B2 (en) Method and system for updating firmware stored in non-volatile memory
TW480443B (en) Virus resistant and hardware independent method of flashing system BIOS
US8627020B2 (en) Security erase of a delete file and of sectors not currently assigned to a file
JP3517680B2 (ja) プログラム制御方式セキュリティ・アクセス制御を有する安全メモリ・カード
US8255655B2 (en) Authentication and securing of write-once, read-many (WORM) memory devices
RU2388051C2 (ru) Случайный пароль, автоматически формируемый базовой системой ввода-вывода (bios) для защиты устройства хранения данных
JPH03503220A (ja) メッセージの完全性をチェックする方法及び携帯装置
US8751817B2 (en) Data processing apparatus and validity verification method
JP2007133875A (ja) コードイメージを安全に更新してブーティングする方法及び装置
JP7113115B2 (ja) シリコンデバイスファームウェア上のロールバック攻撃を防止するセキュリティシステム、および、方法
US8417902B2 (en) One-time-programmable memory emulation
US20040003265A1 (en) Secure method for BIOS flash data update
US5901311A (en) Access key protection for computer system data
JP2000112824A (ja) メモリシステム
US7836219B1 (en) System and method for authentication of embedded RAID on a host RAID card
US7269725B2 (en) Autonomic binding of subsystems to system to prevent theft
JP4489915B2 (ja) 暗証コード照合機能をもった携帯型情報処理装置
JP2002278934A (ja) セキュリティ管理装置およびセキュリティ管理方法
EP1079340A2 (en) Integrated circuit card protected from unauthorized access
JP4373373B2 (ja) データ消去プログラムおよびデータ消去システム
CN111695164B (zh) 电子设备及其控制方法
US5901285A (en) Hierarchical erasure key protection for computer system data
JP6308074B2 (ja) マイクロコンピュータ