JP4559623B2 - セキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法 - Google Patents
セキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法 Download PDFInfo
- Publication number
- JP4559623B2 JP4559623B2 JP2000552576A JP2000552576A JP4559623B2 JP 4559623 B2 JP4559623 B2 JP 4559623B2 JP 2000552576 A JP2000552576 A JP 2000552576A JP 2000552576 A JP2000552576 A JP 2000552576A JP 4559623 B2 JP4559623 B2 JP 4559623B2
- Authority
- JP
- Japan
- Prior art keywords
- security
- code
- key
- security code
- generating
- 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.)
- Expired - Lifetime
Links
- 238000000034 method Methods 0.000 title claims description 26
- 238000012546 transfer Methods 0.000 claims description 27
- 238000004364 calculation method Methods 0.000 claims description 20
- 238000012545 processing Methods 0.000 claims description 13
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 12
- 230000005540 biological transmission Effects 0.000 claims description 11
- 230000001934 delay Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 8
- 238000003780 insertion Methods 0.000 description 6
- 230000037431 insertion Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 2
- 239000000758 substrate Substances 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/123—Restricting unauthorised execution of programs by using dedicated hardware, e.g. dongles, smart cards, cryptographic processors, global positioning systems [GPS] devices
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/20—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
- A63F2300/201—Playing authorisation given at platform level
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/20—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterised by details of the game platform
- A63F2300/206—Game information storage, e.g. cartridges, CD ROM's, DVD's, smart cards
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Remote Sensing (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Description
【0001】
本発明は、セキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法に関する。
【背景技術】
【0002】
従来、プログラム、例えばゲーム・プログラムが記憶されたROM等の記憶装置から不正にプログラムをコピーすることを防止するためには、プログラムごとに異なるキーを有するICを別に用意しておき、ROM等の記憶装置から得られたパスワードとICから得られたキーとをソフトウェアで比較して、その不一致によりROM等の不正を判断していた。
【0003】
図1は、従来のコピー防止またはプログラム・プロテクション方法の概要をブロック図で示す。
【0004】
図1において、記憶装置130はプログラムを記憶した装置(例えばROM)であり、キーIC140は記憶装置130に特有のキーを記憶したICである。記憶装置130とキーIC140とは同じ基板160上に搭載された例えばゲーム基板160となっており、バス150に着脱可能に接続している。データ処理装置100はCPU等の処理装置であり、記憶装置110は、プログラム・プロテクションのためのソフトウェアを記憶した他のROM等(不図示)から該ソフトウェアがロードされるRAM等の記憶装置である。機能モジュール120は、記憶装置130(ROM等)に記憶されたプログラムの実行に伴って処理される各種の機能、例えばビデオ信号の処理等の機能が集まったモジュールである。これらのデータ処理装置100、記憶装置110および機能モジュール120はバス150に接続している。
データ処理装置100は、記憶装置110にロードされたコピー・プロテクション用のソフトウェアを実行して、まず記憶装置130の内容から所定の演算により記憶装置130の内容に特有のパスワードを生成する。次にこのパスワードとキーIC140内にあるキーとを比較して、不一致の場合は記憶装置130が不正にコピーされたものであると判断し、機能モジュール120に対して動作の停止を指示する。
【発明の開示】
【発明が解決しようとする課題】
【0005】
上述のコピー・プロテクション方法は、例えば古いゲーム・プログラムAが記憶された記憶装置130を他の例えば新しいゲーム・プログラムBが記憶された記憶装置130と付け替えることにより、古いゲーム・プログラムAが搭載されていたゲーム基板160をそのまま利用した不正品に対しては対処が可能である。
【0006】
しかし上述の従来例の方法では、データ処理装置100がソフトウェアによりコピー・プロテクションを行っているため、コピー・プロテクションを回避するソフトウェアを製作されてしまう可能性が高い。さらに、記憶装置130が不正品であることが検出されても、機能モジュール120を停止させないように基板160を含む全体の基板を改造されてしまう可能性も高い。上述の従来例の方法では、これらのいずれの場合にも対処ができない。
【課題を解決するための手段】
【0007】
そこで、本発明の目的は上記問題を解決するためになされたものであり、コピー・プロテクションの実行をハードウェアで行い、かつこのハードウェアと機能モジュールとを一体に形成することにより、コピー・プロテクションを回避するソフトウェアまたは基板の改造に対処することができるセキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法を提供することにある。
【0008】
本発明は、プログラムを記憶した記憶装置と、
第1セキュリティ・コードを生成するキー装置と、
前記キー装置と直接接続するセキュリティ装置であって、前記記憶装置に記憶されたプログラムを入力して、該プログラムから算出された第2キー・コードを初期値として第2セキュリティ・コードを生成し、前記キー装置から第1セキュリティ・コードを入力して、第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を生成するセキュリティ装置と、
前記セキュリティ装置により生成されたエラー信号によって動作を制御される、前記セキリティ装置と一体に形成された機能モジュールとを備え、
前記セキュリティ装置は、
前記記憶装置から入力されたプログラムに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出手段と、
前記第2キー・コード算出手段により得られた第2セキュリティ・コードを生成する第2セキュリティ・コード生成手段と、
前記キー装置に対して第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成手段と、
前記転送要求信号生成手段により生成された信号を送信するセキュリティ装置側送信手段と、
前記キー装置から転送された第1セキュリティ・コードを受信するセキュリティ装置側受信手段と、
前記セキュリティ装置側受信手段が前記キー装置から第1セキュリティ・コードを受信するまで、前記第2セキュリティ・コード生成手段が前記第2キー・コード算出手段から第2キー・コードを入力することを遅延させる遅延手段と、
前記セキュリティ装置側受信手段により受信された第1セキュリティ・コードと前記第2セキュリティ・コード生成手段により生成された第2セキュリティ・コードとの一致を比較する比較手段と、
前記比較手段による比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成手段と
を備えたことを特徴とする。
【0009】
また、本発明は、プログラムを記憶した記憶装置と、予め記憶された第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードを生成するキー装置と、
前記キー装置と直接接続するセキュリティ装置であって、前記記憶装置に記憶されたプログラムを入力して、該プログラムから算出された第2キー・コードを初期値として所定の乱数を発生させることにより第2セキュリティ・コードを生成し、前記キー装置から第1セキュリティ・コードを入力して、第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を生成するセキュリティ装置と、
前記セキュリティ装置により生成されたエラー信号によって動作を制御される、前記セキュリティ装置と一体に形成された機能モジュールとを備え、
前記セキュリティ装置は、
前記記憶装置から入力されたプログラムに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出手段と、
前記第2キー・コード算出手段により得られた第2キー・コードを記憶する第2キー・コード記憶手段と、
前記第2キー・コード記憶手段から第2キー・コードを入力し、該第2キー・コードを初期値として所定の乱数を発生させることにより第2セキュリティ・コードを生成する第2セキュリティ・コード生成手段と、
前記キー装置に対して第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成手段と、
前記転送要求信号生成手段により生成された信号を送信するセキュリティ装置側送信手段と、
前記キー装置から転送された第1セキュリティ・コードを受信するセキュリティ装置側受信手段と、
前記セキュリティ装置側受信手段が前記キー装置から第1セキュリティ・コードを受信するまで、前記第2セキュリティ・コード生成手段が前記第2キー・コード算出手段から第2キー・コードを入力することを遅延させる遅延手段と、
前記セキュリティ装置側受信手段により受信された第1セキュリティ・コードと前記第2セキュリティ・コード生成手段により生成された第2セキュリティ・コードとの一致を比較する比較手段と、
前記比較手段による比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成手段と
を備え、
前記キー装置は、
前記セキュリティ装置側送信手段から送信された信号を受信するキー装置側受信手段と、
受信した信号が転送要求信号であることを検出する検出手段と、
予め第1キー・コードを記憶する第1キー・コード記憶手段と、
前記第1キー・コード記憶手段から第1キー・コードを入力し、該第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードを生成する第1セキュリティ・コード生成手段と、
発生した第1セキュリティ・コードを前記セキュリティ装置へ送信するキー装置側送信手段とを備えたことを特徴とする。
【0010】
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
【0011】
図2は、本発明のプログラム・プロテクション方法の概要をブロック図で示す。図2において、図1と同じ符号を付したものは同じ機能を有するものであるため、説明は省略する。
【0012】
図2において、セキュリティ装置200はセキュリティ・チェック(プログラム・プロテクション)をハードウェアで行なう装置であり、機能モジュール120と一体に形成されているものであって、たとえばカスタムIC等で作成することができる。キーIC210は、図1のキーIC140と同様の機能を有するが、キーIC140と異なりバス150に直接接続されずセキュリティ装置200と接続されている。その他の回路230は、図1の記憶装置110等を含む回路であり、バス240に接続されている。
【0013】
データ処理装置100はバス240を介して直接にキーIC210へアクセスできず、セキュリティ装置200のみが直接にキーIC210へアクセスできる。したがって、コピー・プロテクションを回避するような改造ソフトウエアの製造は極めて困難となる。キーIC210は物理的な操作で内部を解析される可能性をなくすため、CPLD(Complex Programmable Logic Device)で製作することが望ましい。機能モジュール120とセキュリティ装置200とは上述のように一体に形成されて1つのICパッケージに入っているため、基板の改造では本発明のプログラム・プロテクション・システムを解除することはできない。
【0014】
図3は、セキュリティ装置200の機能をブロック図で示す。
【0015】
図3において、バス240はデータ処理装置100と接続したバスであり、図2にも示したように記憶装置130とも接続されている。このバス240を介して記憶装置130から例えばゲーム・プログラムがキー・コード算出回路330へ入力される。キー・コード算出回路330は、入力したプログラムを基に乱数回路340で乱数の初期値とするキー・コードを算出して、内部の記憶部(不図示)に算出したキー・コードを記憶しておく。キー・コードの算出方法は、記憶装置130に記憶されたゲーム・プログラムの全部または一部を用いる方法である。例えば、ゲーム・プログラムを32ビットごとに区切ってx1とし、これに任意の関数fを作用させてf(x1)を求める。次の32ビットをx2としてf(x2+f(x1))を求める。これを記憶装置130のゲーム・プログラムの全部または一部に対して実行して、キー・コードを求める。乱数回路340は、このキー・コードをライン335を介して入力し、初期値として用いて乱数を発生させ、この乱数をセキュリティ・コードとして用いる。乱数の発生法は既知の方法を用いることができる。スタート・パターン挿入回路350は、キーIC210に対してキーIC210側のセキュリティ・コードを転送するように要求するパターンを生成する回路である。通常このパターンは生成されず、ライン345からの信号がそのままライン355に出力される。すなわち、スタート・パターン挿入回路350はシフト・レジスタとして構成することができる。スタート・パターン挿入回路350でスタート・パターンが挿入されることにより、ライン355にスタート・パターンが出力されて、キーIC210へ転送される。このようにして、セキュリティ・コードの転送要求をキーIC210へ示すことができる。このスタート・パターンとしては、例えば5ビットで構成される任意のパターンを用いることができる。この場合、スタート・パターン挿入回路は5ビットのシフト・レジスタとして構成することができる。スタート・パターンは、直接キーIC210へ転送することもできるが、図3に示されるように暗号化回路360により暗号化を施してから、ライン403を介してキーIC210へ転送することもできる。暗号化の方法は、信号にダミー・ビットを挿入する方法、信号をシャッフルする方法、その他の既知の方法を用いることができる。スタート・パターンを挿入する指示はスタート信号385が行なう。スタート信号385はスタート・パターン挿入回路350に入力しているが、これは一定の期間ごとに発生する信号であれば任意の信号を使用することができる。例えば機能モジュール120中のビデオ処理モジュール(不図示)が使用するビデオ同期信号とすることができる。その他ハード・ディスク(不図示)のシーク信号であってもよい。
【0016】
キーIC210からはライン450を介してキーIC210側のセキュリティ・コードが転送されてくる。このキーIC210側のセキュリティ・コードは、後述のようにキーIC200側で暗号化を施されていれば暗号解除回路300により暗号が解除される。キーIC200側で暗号化を施されていなければ、暗号解除回路300は用いないことも可能である。キーIC210側からセキュリティ・コードが転送されるまでの間、乱数回路340はキー・コード算出回路330中の記憶部からキー・コードを取り出さないでおく。このためにスタート信号385は遅延回路370にも入力しており、一定期間遅延させた後キー・コード・ロード信号375を乱数回路340へ送る。この後キー・コード・ロード信号375が入力すると、乱数回路340はキー・コード算出回路330中の記憶部(不図示)からキー・コードを取り出して乱数を発生させ、この乱数をセキュリティ・コードとしてライン345へ出力する。
【0017】
乱数比較回路310はキーIC210からのセキュリティ・コードをライン305から入力し、乱数回路340からのセキュリティ・コードをライン345から入力して、両者を比較する。比較結果は例えば一致の場合は1を、不一致の場合は0をライン315を介してエラー・カウンタ320へ出力する。エラー・カウンタ320はある一定の数だけエラーをカウントすると、エラー発生通知信号390を機能モジュール120へ送る。スタート信号385が遅延回路370で待たされている間は、ライン345にもライン305にもセキュリティ・コードが現れない結果、乱数比較回路310は比較結果が不一致と判断して0をライン315へ出力し続ける。したがって一定の数だけカウントすることにより、この出力を無視することができる。さらに、一定の数エラーをカウントすることにより、データ処理装置100がキーコード算出回路330へデータを書き込む時間をかせぐこともできる。
【0018】
図4は、キーIC210を説明するブロック図を示す。
【0019】
図4において、セキュリティ装置200からのライン403上の信号は、暗号解除回路400に入力される。暗号化が暗号化回路360により施されていない場合は、ライン403上の信号はそのままライン405に出力される。スタート・パターン検出回路410は、スタート・パターン挿入回路350により挿入されたスタート・パターンを検出する。スタート・パターンが検出されると、キー・コード・ロード信号415が乱数回路430へ出力される。この信号415により乱数回路430は、予めキー・コードが記憶されたキー・コード記憶部420からキー・コードをライン445を介して取り出し、このキー・コードを初期値として乱数を発生させてセキュリティ・コードを得る。キー・コード記憶部420に予め記憶されているキー・コードから得られるセキュリティ・コードは、記憶装置130にあるゲーム・プログラムに対応する固有のセキュリティ・コードである。得られたセキュリティ・コードはライン4365を介して暗号化回路440へ出力される。暗号化を施さない場合は、ライン435上の信号はそのままライン450を通ってセキュリティ装置200へ出力される。暗号化の方法は、信号にダミー・ビットを挿入する方法、信号をシャッフルする方法、その他の既知の方法を用いることができる。
【0020】
上述のように、記憶装置130にあるゲーム・プログラムに対応する固有のセキュリティ・コードはキーIC210により得られるものである。このキーIC210はCPLDで作成されているため、この固有のセキュリティ・コードが物理的な操作により内部を解析して得られる可能性は極めて低いものである。記憶装置130が別のゲーム・プログラムが記憶された記憶装置と交換された場合、または不正な改造品と交換された場合、この交換された記憶装置から得られるセキュリティ・コードと、キーIC210から得られるセキュリティ・コードとは等しくならない。その結果セキュリティ装置200は機能モジュール120へエラー発生信号390を出力して、機能モジュール120の動作を停止等させることができる。例えば機能モジュール120中のビデオ信号処理モジュール(不図示)の動作を停止させて、画面上にエラー表示を出力し、ゲームの進行を停止させることができる。
【0021】
セキュリティ装置200の暗号化回路360が施す暗号と、キーIC210の暗号化回路440が施す暗号とは、同一であってもよいし異なるものであってもよい。
【0022】
また、暗号化回路360および暗号化回路440が実行する暗号処理は上述の例に限らず各種の周知の暗号化方法を使用することができる。たとえば、乱数器が与える値に代わり、プログラムのデータ容量を計数し、その計数結果の示す値をセキュリティコードの作成に使用することができる。また、コピー防止対象のデータはプログラムだけに限らず、図形、写真、その他各種のデータとすることができる。
【0024】
(発明の効果)
以上説明したように、本発明のセキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法によれば、コピー・プロテクションの実行をハードウェアで行い、かつこのハードウェアと機能モジュールとを一体に形成することにより、コピー・プロテクションを回避するソフトウェアまたは基板の改造に対処することができるセキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法を提供することができる。
【図面の簡単な説明】
【0025】
【図1】従来のコピー防止またはプログラム・プロテクション方法の概要を示すブロック図である。
【図2】本発明のプログラム・プロテクション方法の概要を示すブロック図である。
【図3】本発明のセキュリティ装置の機能を示すブロック図である。
【図4】本発明のキーICを説明するブロック図である。
Claims (8)
- プログラムを記憶した記憶装置と、
第1セキュリティ・コードを生成するキー装置と、
前記キー装置と直接接続するセキュリティ装置であって、前記記憶装置に記憶されたプログラムを入力して、該プログラムから算出された第2キー・コードを初期値として第2セキュリティ・コードを生成し、前記キー装置から第1セキュリティ・コードを入力して、第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を生成するセキュリティ装置と、
前記セキュリティ装置により生成されたエラー信号によって動作を制御される、前記セキリティ装置と一体に形成された機能モジュールとを備え、
前記セキュリティ装置は、
前記記憶装置から入力されたプログラムに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出手段と、
前記第2キー・コード算出手段により得られた第2セキュリティ・コードを生成する第2セキュリティ・コード生成手段と、
前記キー装置に対して第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成手段と、
前記転送要求信号生成手段により生成された信号を送信するセキュリティ装置側送信手段と、
前記キー装置から転送された第1セキュリティ・コードを受信するセキュリティ装置側受信手段と、
前記セキュリティ装置側受信手段が前記キー装置から第1セキュリティ・コードを受信するまで、前記第2セキュリティ・コード生成手段が前記第2キー・コード算出手段から第2キー・コードを入力することを遅延させる遅延手段と、
前記セキュリティ装置側受信手段により受信された第1セキュリティ・コードと前記第2セキュリティ・コード生成手段により生成された第2セキュリティ・コードとの一致を比較する比較手段と、
前記比較手段による比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成手段と
を備えたことを特徴とするプログラム・プロテクション・システム。 - 請求項1に記載のプログラム・プロテクション・システムにおいて、前記機能モジュールは、プログラムの実行に伴い生成されたビデオ信号を処理するビデオ処理モジュールであることを特徴とするプログラム・プロテクション・システム。
- 予め記憶された第1キー・コードを初期値として第1セキュリティ・コードをキー装置において生成する第1セキュリティ・コード生成ステップと、
プログラムを記憶した記憶装置に記憶されたプログラムを入力して、該プログラムから算出された第2キー・コードを初期値として第2セキュリティ・コードをセキュリティ装置において生成する第2セキュリティ・コード生成ステップであって、前記キー装置と前記セキュリティ装置は直接接続されている生成ステップと、
第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を前記セキュリティ装置において生成するエラー信号生成ステップと、
生成された前記エラー信号によって、前記プログラムの実行に伴って処理される機能を有する機能モジュールの動作を制御する制御ステップとを備え、
前記第2セキュリティ・コード生成ステップは、
前記記憶装置から入力されたプログラムに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出ステップと、
前記第2キー・コード算出手段により得られた第2セキュリティ・コードを生成する第2セキュリティ・コード生成ステップとを備え、
前記エラー信号生成ステップは、
前記第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成ステップと、
前記転送要求信号生成ステップにより生成された信号を送信するセキュリティ装置側送信ステップと、
転送された第1セキュリティ・コードを受信するセキュリティ装置側受信ステップと、
前記セキュリティ装置側受信ステップが前記キー装置から第1セキュリティ・コードを受信するまで、前記第2セキュリティ・コード生成ステップが前記第2キー・コード算出ステップから第2キー・コードを入力することを遅延させる遅延ステップと、
前記セキュリティ装置側受信ステップにより受信された第1セキュリティ・コードと前記第2セキュリティ・コード生成ステップにより生成された第2セキュリティ・コードとの一致を比較する比較ステップと、
前記比較ステップによる比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成ステップと
を備えたことを特徴とするプログラム・プロテクション方法。 - データを記憶した記憶装置と、
予め記憶された第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードを生成するキー装置と、
前記キー装置と直接接続するセキュリティ装置であって、前記記憶装置に記憶されたデータを入力して、該データから算出された第2キー・コードを初期値として第2セキュリティ・コードを生成し、前記キー装置から第1セキュリティ・コードを入力して、第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を生成するセキュリティ装置と、
前記セキュリティ装置により生成されたエラー信号によって動作を制御される機能モジュールとを備え、
前記セキュリティ装置は、
前記記憶装置から入力されたデータに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出手段と、
前記第2キー・コード算出手段により得られた第2セキュリティ・コードを生成する第2セキュリティ・コード生成手段と、
前記キー装置に対して第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成手段と、
前記転送要求信号生成手段により生成された信号を送信するセキュリティ装置側送信手段と、
前記キー装置から転送された第1セキュリティ・コードを受信するセキュリティ装置側受信手段と、
前記セキュリティ装置側受信手段が前記キー装置から第1セキュリティ・コードを受信するまで、前記第2セキュリティ・コード生成手段が前記第2キー・コード算出手段から第2キー・コードを入力することを遅延させる遅延手段と、
前記セキュリティ装置側受信手段により受信された第1セキュリティ・コードと前記第2セキュリティ・コード生成手段により生成された第2セキュリティ・コードとの一致を比較する比較手段と、
前記比較手段による比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成手段と
を備えたことを特徴とするプログラム・プロテクション・システム。 - プログラムを記憶した記憶装置と、予め記憶された第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードを生成するキー装置と、
前記キー装置と直接接続するセキュリティ装置であって、前記記憶装置に記憶されたプログラムを入力して、該プログラムから算出された第2キー・コードを初期値として所定の乱数を発生させることにより第2セキュリティ・コードを生成し、前記キー装置から第1セキュリティ・コードを入力して、第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を生成するセキュリティ装置と、
前記セキュリティ装置により生成されたエラー信号によって動作を制御される、前記セキュリティ装置と一体に形成された機能モジュールとを備え、
前記セキュリティ装置は、
前記記憶装置から入力されたプログラムに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出手段と、
前記第2キー・コード算出手段により得られた第2キー・コードを記憶する第2キー・コード記憶手段と、
前記第2キー・コード記憶手段から第2キー・コードを入力し、該第2キー・コードを初期値として所定の乱数を発生させることにより第2セキュリティ・コードを生成する第2セキュリティ・コード生成手段と、
前記キー装置に対して第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成手段と、
前記転送要求信号生成手段により生成された信号を送信するセキュリティ装置側送信手段と、
前記キー装置から転送された第1セキュリティ・コードを受信するセキュリティ装置側受信手段と、
前記セキュリティ装置側受信手段が前記キー装置から第1セキュリティ・コードを受信するまで、前記第2セキュリティ・コード生成手段が前記第2キー・コード算出手段から第2キー・コードを入力することを遅延させる遅延手段と、
前記セキュリティ装置側受信手段により受信された第1セキュリティ・コードと前記第2セキュリティ・コード生成手段により生成された第2セキュリティ・コードとの一致を比較する比較手段と、
前記比較手段による比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成手段と
を備え、
前記キー装置は、
前記セキュリティ装置側送信手段から送信された信号を受信するキー装置側受信手段と、
受信した信号が転送要求信号であることを検出する検出手段と、
予め第1キー・コードを記憶する第1キー・コード記憶手段と、
前記第1キー・コード記憶手段から第1キー・コードを入力し、該第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードを生成する第1セキュリティ・コード生成手段と、
発生した第1セキュリティ・コードを前記セキュリティ装置へ送信するキー装置側送信手段とを備えたことを特徴とするプログラム・プロテクション・システム。 - 請求項5に記載のプログラム・プロテクション・システムにおいて、
前記セキュリティ装置側送信手段は、前記キー装置へ転送する信号に暗号化を施す暗号化手段を備え、
前記キー装置側受信手段は、前記暗号化手段により施された暗号を解除する暗号解除手段を備えたことを特徴とするプログラム・プロテクション・システム。 - 請求項5に記載のプログラム・プロテクション・システムにおいて、
前記キー装置側送信手段は、前記セキュリティ装置へ転送する第2セキュリティ・コードに暗号化を施す第2セキュリティ・コード暗号化手段を備え、
前記セキュリティ装置側受信手段は、前記第2セキュリティ・コード暗号化手段により施された暗号を解除する第2セキュリティ・コード暗号解除手段を備えたことを特徴とするプログラム・プロテクション・システム。 - 予め記憶された第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードをキー装置において生成する第1セキュリティ・コード生成ステップと、
プログラムを記憶した記憶装置に記憶されたプログラムを入力して、該プログラムから算出された第2キー・コードを初期値として所定の乱数を発生させることにより第2セキュリティ・コードをセキュリティ装置において生成する第2セキュリティ・コード生成ステップであって、前記キー装置と前記セキュリティ装置は直接接続されている生成ステップと、
第1セキュリティ・コードと第2セキュリティ・コードとを比較して、不一致の場合はエラー信号を前記セキュリティ装置において生成するエラー信号生成ステップと、
生成された前記エラー信号によって、前記プログラムの実行を処理する機能モジュールの動作を制御する制御ステップとを備え、前記第2セキュリティ・コード生成ステップは、
入力したプログラムに対して所定の演算を行うことにより、第2キー・コードを算出する第2キー・コード算出ステップと、
前記第2キー・コード算出ステップにより得られた第2キー・コードを記憶する第2キー・コード記憶ステップと、
前記第2キー・コードを初期値として所定の乱数を発生させることにより第2セキュリティ・コードを生成する第2セキュリティ・コード生成ステップと、
第1セキュリティ・コードの転送を要求する信号を生成する転送要求信号生成ステップと、 前記転送要求信号を送信する転送要求信号送信ステップと、
第1セキュリティ・コードを受信するまで、第2キー・コードの入力を遅延させる遅延ステップと、
第1セキュリティ・コードを受信する第1セキュリティ・コード受信ステップと、
前記第1セキュリティ・コードと前記第2セキュリティ・コードとの一致を比較する比較ステップと、
前記比較ステップによる比較結果が一致しない場合、所定の時間の後に前記機能モジュールに対して不一致を通知するエラー信号を生成するエラー信号生成ステップと
を備え、
前記第1セキュリティ・コード生成ステップは、
送信された信号を受信する受信ステップと、
受信した信号が転送要求信号であることを検出する検出ステップと、
予め第1キー・コードを記憶する第1キー・コード記憶ステップと、
前記第1キー・コードを初期値として所定の乱数を発生させることにより第1セキュリティ・コードを生成する第1セキュリティ・コード生成ステップと、
生成した第1セキュリティ・コードを前記セキュリティ装置へ送信する第1セキュリティ・コード送信ステップとを備えたことを特徴とするプログラム・プロテクション方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15612098 | 1998-06-04 | ||
PCT/JP1999/002980 WO1999063429A1 (fr) | 1998-06-04 | 1999-06-03 | Dispositif de securite, dispositif de codage et systeme et procede de protection de programme |
Publications (1)
Publication Number | Publication Date |
---|---|
JP4559623B2 true JP4559623B2 (ja) | 2010-10-13 |
Family
ID=15620765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000552576A Expired - Lifetime JP4559623B2 (ja) | 1998-06-04 | 1999-06-03 | セキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7334256B2 (ja) |
JP (1) | JP4559623B2 (ja) |
WO (1) | WO1999063429A1 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6681212B1 (en) | 1999-04-23 | 2004-01-20 | Nianning Zeng | Internet-based automated system and a method for software copyright protection and sales |
JP2006244185A (ja) * | 2005-03-04 | 2006-09-14 | Matsushita Electric Ind Co Ltd | セキュリティ回路およびセキュリティ解除方法 |
TW200840238A (en) * | 2007-03-27 | 2008-10-01 | Nat Univ Chung Cheng | The method of electric circuit encryption with external bits and adjustable time pulses |
US8239967B2 (en) * | 2008-01-15 | 2012-08-07 | Microsoft Corporation | Simultaneous tamper-proofing and anti-piracy protection of software |
US20100090949A1 (en) * | 2008-07-22 | 2010-04-15 | Shanda Computer (Shanghai) Co., Ltd. | Method and Apparatus for Input Device |
JP6547349B2 (ja) * | 2015-03-18 | 2019-07-24 | 株式会社リコー | データ伝送システム、端末装置、プログラムおよび方法 |
CN109981612B (zh) * | 2019-03-11 | 2020-02-21 | 北京纬百科技有限公司 | 防止密码机设备非法复制的方法和系统及密码机设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS623331A (ja) * | 1985-06-28 | 1987-01-09 | Nintendo Co Ltd | 真偽判別素子、およびそれを用いた外部記憶装置 |
JPH06165863A (ja) * | 1993-09-07 | 1994-06-14 | Rejiyaa Electron Technol:Kk | 遊技機制御用マイクロコンピュータ |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2918855B2 (ja) * | 1991-04-22 | 1999-07-12 | 株式会社エルイーテック | 遊技機用マイクロプロセッサー |
JP2975522B2 (ja) * | 1991-04-22 | 1999-11-10 | 株式会社エルイーテック | 遊技機用マイクロプロセッサー |
JPH06161902A (ja) * | 1992-11-26 | 1994-06-10 | Nintendo Co Ltd | 補助記憶媒体の真偽判別装置およびそれに用い られる補助記憶装置 |
-
1999
- 1999-06-03 WO PCT/JP1999/002980 patent/WO1999063429A1/ja active Application Filing
- 1999-06-03 JP JP2000552576A patent/JP4559623B2/ja not_active Expired - Lifetime
-
2004
- 2004-05-05 US US10/839,438 patent/US7334256B2/en not_active Expired - Lifetime
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS623331A (ja) * | 1985-06-28 | 1987-01-09 | Nintendo Co Ltd | 真偽判別素子、およびそれを用いた外部記憶装置 |
JPH06165863A (ja) * | 1993-09-07 | 1994-06-14 | Rejiyaa Electron Technol:Kk | 遊技機制御用マイクロコンピュータ |
Also Published As
Publication number | Publication date |
---|---|
WO1999063429A1 (fr) | 1999-12-09 |
US7334256B2 (en) | 2008-02-19 |
US20040268134A1 (en) | 2004-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1298517B1 (en) | Information processing system, apparatus and methods | |
EP0809379B1 (en) | Authentication apparatus according to the challenge-response principle | |
CN1871568B (zh) | 程序执行设备 | |
US20020083319A1 (en) | Information processing apparatus, information processing method, information processing system and recording medium | |
KR20150011802A (ko) | 프로세스 작업 세트 격리를 위한 방법 및 시스템 | |
KR100434836B1 (ko) | 데이타 암호화 장치 및 불법 변경 방지 시스템 | |
JP2005157930A (ja) | 機密情報処理システムおよびlsi | |
JPH11328032A (ja) | ソフトウェアの不正利用防止システム | |
KR100358705B1 (ko) | Pc 기반의 유.에스.비. 보안 모듈과 암호칩을 사용한정보 보호 장치 | |
JP4559623B2 (ja) | セキュリティ装置、キー装置、プログラム・プロテクション・システムおよび方法 | |
US11562050B2 (en) | System and method for licensing and for measuring use of an IP block | |
JP2002244989A (ja) | デバイスドライバ作動方法 | |
WO2007059701A1 (fr) | Procede de cryptage systeme par micro-ordinateur mono-circuit polyvalent d'appoint | |
US7636838B2 (en) | Method and system for handling operation of multiple devices within a single system-on-chip (SoC) integrated circuit (IC) | |
CN113228012A (zh) | 用于鉴别fpga配置的方法和设备 | |
WO2006046484A1 (ja) | 認証方法 | |
JPH10274928A (ja) | ユーザ認証装置および方法 | |
MXPA00005079A (en) | Method and apparatus for controlling access to confidential data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060320 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20060320 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090515 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090714 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20100302 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100602 |
|
RD13 | Notification of appointment of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7433 Effective date: 20100603 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20100603 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20100623 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100716 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100723 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4559623 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130730 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130730 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |