JPS6172345A - ソフトウエアのコピー保護装置 - Google Patents
ソフトウエアのコピー保護装置Info
- Publication number
- JPS6172345A JPS6172345A JP60157145A JP15714585A JPS6172345A JP S6172345 A JPS6172345 A JP S6172345A JP 60157145 A JP60157145 A JP 60157145A JP 15714585 A JP15714585 A JP 15714585A JP S6172345 A JPS6172345 A JP S6172345A
- Authority
- JP
- Japan
- Prior art keywords
- software
- hardware
- disk
- host
- mark
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (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)
- Storage Device Security (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明はデータ処理の分野、特にソフトウェアのコピー
保護機構に関する。より具体的には、ディスク又は他の
磁気媒体の形で提供されるソフトウェアを単一の計算装
置上で使用するように制限すると共に、保護を危う(す
る事なく「バックアップ」コピーの作成を可能にする機
構が提供される。
保護機構に関する。より具体的には、ディスク又は他の
磁気媒体の形で提供されるソフトウェアを単一の計算装
置上で使用するように制限すると共に、保護を危う(す
る事なく「バックアップ」コピーの作成を可能にする機
構が提供される。
B、開示の概要
磁気媒体を用いて配布されるソフトウェアを、単一の計
算装置上で使用するように制限する方法及び装置が開示
される。計算製蓋の一部分を成す(外部からの干渉に対
して防護された)コプロセッサに記憶されたプログラム
の実行によって変更されるまでは、オリジナルの媒体は
機能的にコピー不可能である。この後オリジナルの媒体
上の変更されたソフトウェアはコピー可能になるが、そ
のコピーは、その変更を行なったコグロセツサを有する
計算装置上でしか作動しない。
算装置上で使用するように制限する方法及び装置が開示
される。計算製蓋の一部分を成す(外部からの干渉に対
して防護された)コプロセッサに記憶されたプログラム
の実行によって変更されるまでは、オリジナルの媒体は
機能的にコピー不可能である。この後オリジナルの媒体
上の変更されたソフトウェアはコピー可能になるが、そ
のコピーは、その変更を行なったコグロセツサを有する
計算装置上でしか作動しない。
C0従来技術
ソフトウェアの海賊版作成、即ち市販のソフトウェアの
非合法のコピーの作成を禁止するために、コピー保護機
構が利用されている。パーソナル・コンピュータ、ホー
ム・コンピュータ、ワーク・ステーション及びインテリ
ジェント製品の市場の成長と共に、海賊版作成行為が次
第に問題になりつつある。コピー保護機構の目的は、ソ
フトウェアのコピーを可能な限り困難にする事によって
海賊行為を阻止する事である。現在2種類のコピー!
保護機構が開発されている。即ちソフトウェ
アに基く方式及びハードウェア・キ一方式である。
非合法のコピーの作成を禁止するために、コピー保護機
構が利用されている。パーソナル・コンピュータ、ホー
ム・コンピュータ、ワーク・ステーション及びインテリ
ジェント製品の市場の成長と共に、海賊版作成行為が次
第に問題になりつつある。コピー保護機構の目的は、ソ
フトウェアのコピーを可能な限り困難にする事によって
海賊行為を阻止する事である。現在2種類のコピー!
保護機構が開発されている。即ちソフトウェ
アに基く方式及びハードウェア・キ一方式である。
ソフトウェア方式では、多くのオペレーティング・シス
テムで利用可能な通常のコピー機構が正確には他のディ
スクにコピーできないような情報をディスク上に符号化
する。ディスク上のプログラムは、この符号化された情
報を検査し、それが存在しなければ機能しない。しかし
現在ではコピーを取るプログラムが市販されており、こ
れは上記方式で保護された多くのディスクをコピーする
事ができる。
テムで利用可能な通常のコピー機構が正確には他のディ
スクにコピーできないような情報をディスク上に符号化
する。ディスク上のプログラムは、この符号化された情
報を検査し、それが存在しなければ機能しない。しかし
現在ではコピーを取るプログラムが市販されており、こ
れは上記方式で保護された多くのディスクをコピーする
事ができる。
ハードウェア・キ一方式は、「キー」として知られる情
報の存在に依存する。キーはプログラムに利用可能であ
るが、ディスク等の変更可能な磁気媒体上ではなくシス
テム・ハードウェア中ニ存在している。プログラムはキ
ー情報を検査し、もしキーが見つからなければ機能しな
い。ディスクの複製機構は存在するが、ハードウェアの
複製機構はパーソナル・コンピュータにおいて普通には
見られない。従ってハードウェア・キーはソフトウェア
よりも複製に費用がかかるので、この方法は海賊行為の
阻止にソフトウェア方式よりも有効であり得る。
報の存在に依存する。キーはプログラムに利用可能であ
るが、ディスク等の変更可能な磁気媒体上ではなくシス
テム・ハードウェア中ニ存在している。プログラムはキ
ー情報を検査し、もしキーが見つからなければ機能しな
い。ディスクの複製機構は存在するが、ハードウェアの
複製機構はパーソナル・コンピュータにおいて普通には
見られない。従ってハードウェア・キーはソフトウェア
よりも複製に費用がかかるので、この方法は海賊行為の
阻止にソフトウェア方式よりも有効であり得る。
1つの提案されているハードウェア・キ一方式でば、コ
ンピュータの製造業者がハードウェア・キーとして各装
置にハードウェア連続番号を組み込む必要がある。この
方式では、各々のソフトウェアが特定の機械に対して注
文生産されなければならない。これはソフトウェアの可
用性及び交換可能性に制限を与える。現在用いられてい
る第2の方法は、ソフトウェアのユーザが各ソフトウェ
ア製品と一緒に特別な一片のハードウェアを購入する事
を要求する。このハードウェアはキーを提供し、対応す
るソフトウェアが実行される時は常に機械にそれを取り
付けなければならない。従ってこの方法は魅力的でない
。
ンピュータの製造業者がハードウェア・キーとして各装
置にハードウェア連続番号を組み込む必要がある。この
方式では、各々のソフトウェアが特定の機械に対して注
文生産されなければならない。これはソフトウェアの可
用性及び交換可能性に制限を与える。現在用いられてい
る第2の方法は、ソフトウェアのユーザが各ソフトウェ
ア製品と一緒に特別な一片のハードウェアを購入する事
を要求する。このハードウェアはキーを提供し、対応す
るソフトウェアが実行される時は常に機械にそれを取り
付けなければならない。従ってこの方法は魅力的でない
。
また、そのようなキーの検査が行なわれた後、システム
のワーキング・メモリから実行中のアプリケーションの
2値イメージをコピーする事に対しては、上記の保護方
法は大部分、弱体である。
のワーキング・メモリから実行中のアプリケーションの
2値イメージをコピーする事に対しては、上記の保護方
法は大部分、弱体である。
D、従来技術の問題点
ソフトウェアのコピー保護機構に関して多くの特許が発
行されているが、各々ある利点と欠点とを有している。
行されているが、各々ある利点と欠点とを有している。
2つのそのような特許、米国特許第4246658号及
び第4168396号は、互いに基本的に類似した手段
による保護機構を提供している。両者共、ある特定のパ
ーソナル・コンピュータ上で実行されるソフトウェア・
パッケージは、その特定のコンピュータに組み込まれた
解読キー及びシステムに適合するように製造業者によっ
てカストマイズされている。この方式は非常に煩雑であ
り、ユーザ及び業者に対して大きな負担を与える。また
これらの特許において説明されている装置の動作時に使
われるソフトウェアは、ユーザのコンピュータにおいて
も又ディスクにおいても構造的な変化を生じさせない。
び第4168396号は、互いに基本的に類似した手段
による保護機構を提供している。両者共、ある特定のパ
ーソナル・コンピュータ上で実行されるソフトウェア・
パッケージは、その特定のコンピュータに組み込まれた
解読キー及びシステムに適合するように製造業者によっ
てカストマイズされている。この方式は非常に煩雑であ
り、ユーザ及び業者に対して大きな負担を与える。また
これらの特許において説明されている装置の動作時に使
われるソフトウェアは、ユーザのコンピュータにおいて
も又ディスクにおいても構造的な変化を生じさせない。
米国特許第4238854号は、別の問題、即ちあるユ
ーザのファイルを他のユーザによるアクセスから保護す
るためにマルチ・ユーザのメインフレーム・コンピュー
タ・システムK 暗号化/ 解読装置を組み込む手段に
関するものである。これは、パーソナル・コンピュータ
のユーザとソフトウェア販売業者との間の流通チャネル
の実現又は保5jされたソフトウェアに関する実行環境
のいずれについても注意を払っていない。この技術は、
暗号化装置の組み込まれるべき機械の中に、特権レベル
を提供するためのハードウェア機構又ハオペレーテイン
グ・システムが既に存在している事を仮定している。こ
れはパーソナル・コンピュータにおいて一般的な事では
ない。
ーザのファイルを他のユーザによるアクセスから保護す
るためにマルチ・ユーザのメインフレーム・コンピュー
タ・システムK 暗号化/ 解読装置を組み込む手段に
関するものである。これは、パーソナル・コンピュータ
のユーザとソフトウェア販売業者との間の流通チャネル
の実現又は保5jされたソフトウェアに関する実行環境
のいずれについても注意を払っていない。この技術は、
暗号化装置の組み込まれるべき機械の中に、特権レベル
を提供するためのハードウェア機構又ハオペレーテイン
グ・システムが既に存在している事を仮定している。こ
れはパーソナル・コンピュータにおいて一般的な事では
ない。
1983年12月60日付米国特許出願第06−567
294号は、ソフトウェア方式及びハードウェア方式の
両者の最良の特徴を備えている。
294号は、ソフトウェア方式及びハードウェア方式の
両者の最良の特徴を備えている。
ハードウェア・キーはフロッピー・ディスク等の磁気媒
体上に直接符号化される。このキーは、通常の媒体書込
処理によって変更可能でないディスクの少なくとも1つ
のセクションの少なくとも1つのサブセクションにおけ
る指標より成る。指標を含むセクションから読取られた
データは、その、 −kl’/’Ei7に書込
まれたデー′とは・予測可能な方式で異なっている。デ
ィスクは、書込みに引き続いて読取りを行ない、そのよ
うな操作の結果として期待されるものと比較する事によ
って、オリジナルのディスクとして認証される。キーは
オリジナルの媒体が存在している事を示すので、ソフト
ウェアはこのキーの存在する時にのみ機能する。
体上に直接符号化される。このキーは、通常の媒体書込
処理によって変更可能でないディスクの少なくとも1つ
のセクションの少なくとも1つのサブセクションにおけ
る指標より成る。指標を含むセクションから読取られた
データは、その、 −kl’/’Ei7に書込
まれたデー′とは・予測可能な方式で異なっている。デ
ィスクは、書込みに引き続いて読取りを行ない、そのよ
うな操作の結果として期待されるものと比較する事によ
って、オリジナルのディスクとして認証される。キーは
オリジナルの媒体が存在している事を示すので、ソフト
ウェアはこのキーの存在する時にのみ機能する。
このようにしてソフトウェアの使用は、オリジナルの配
布ディスクを所有するユーザに限定される。
布ディスクを所有するユーザに限定される。
しかしこのシステムによれば、バックアップ・コピーは
取る事ができない。
取る事ができない。
E0問題点を解決するための手段
本発明によれば、ディスクによって配布されるソフトウ
ェアを単一の機械上でしか使用できないようにし且つバ
ックアップ・コピーを可能にする方式が示される。それ
によれば、配布ディスクがコプロセッサの協力を必要と
する手続きの実行によって変更されるまでは、ディスク
を機能的にコピー不可能にしておく。変更後、ソフトウ
ェアはコピー可能になるが、その変更手続きに関与した
コプロセッサを含む機械でしか使用できな(なる。
ェアを単一の機械上でしか使用できないようにし且つバ
ックアップ・コピーを可能にする方式が示される。それ
によれば、配布ディスクがコプロセッサの協力を必要と
する手続きの実行によって変更されるまでは、ディスク
を機能的にコピー不可能にしておく。変更後、ソフトウ
ェアはコピー可能になるが、その変更手続きに関与した
コプロセッサを含む機械でしか使用できな(なる。
フロッピー・ディスク等の磁気媒体上に提供されるソフ
トウェアのコピー保護のための方法及び装置を開示する
。コピー保護システムを構成する装置は、磁気媒体上に
記録されたマーク又は構造、及びコンピュータ・システ
ム中に組み込まれたハードウェア・サブシステムを含む
。ハードウェア・サブシステムは、CPU1ホスト・シ
ステムからは論理的にアクセス不可能で且つモニタの形
のソフトウェア(これは電源投入時に実行を開始する)
を含む読取専用メモIJ(ROM)、一部分がホスト・
システムからは論理的にアクセス不可能で且つ一部分が
サブシステムのCPUの制御の下にホストCPUによっ
て読取り又は書込みの可能なランダム・アクセス メモ
リ(RAM)、ホスト・システムからは論理的にアクセ
ス不可能なEEPROM等の不揮発性RAMの形のメモ
リ、ホスト・システムからは論理的にアクセス不可能な
タイマ及びリアルタイム・クロック、サブシステムCP
Uの制御の下にホストCPUによって読取り又は書込み
の可能なレジスタ、並びにサブ/ステムCPUがホスト
・システム・バスの状態を観測できるようにする1組の
バス・レシーバを有する。ハードウェア・サブシステム
の上述の全ての要素は、サブシステムCPUに取って論
理的にアクセス可能であり、ホスト計算システムのユー
ザには物理的にアクセス不可能な形で実装されている。
トウェアのコピー保護のための方法及び装置を開示する
。コピー保護システムを構成する装置は、磁気媒体上に
記録されたマーク又は構造、及びコンピュータ・システ
ム中に組み込まれたハードウェア・サブシステムを含む
。ハードウェア・サブシステムは、CPU1ホスト・シ
ステムからは論理的にアクセス不可能で且つモニタの形
のソフトウェア(これは電源投入時に実行を開始する)
を含む読取専用メモIJ(ROM)、一部分がホスト・
システムからは論理的にアクセス不可能で且つ一部分が
サブシステムのCPUの制御の下にホストCPUによっ
て読取り又は書込みの可能なランダム・アクセス メモ
リ(RAM)、ホスト・システムからは論理的にアクセ
ス不可能なEEPROM等の不揮発性RAMの形のメモ
リ、ホスト・システムからは論理的にアクセス不可能な
タイマ及びリアルタイム・クロック、サブシステムCP
Uの制御の下にホストCPUによって読取り又は書込み
の可能なレジスタ、並びにサブ/ステムCPUがホスト
・システム・バスの状態を観測できるようにする1組の
バス・レシーバを有する。ハードウェア・サブシステム
の上述の全ての要素は、サブシステムCPUに取って論
理的にアクセス可能であり、ホスト計算システムのユー
ザには物理的にアクセス不可能な形で実装されている。
磁気媒体上に記録された構造より成る装置の部分は、2
種類の構造より成る。第1の構造は、ターゲット・コン
ピュータの媒体読取/書込装置によって形成し得る磁区
パターンのレパートリには属さない、媒体上の磁区のパ
ターンである。第2の種類の構造は、ターゲット・コン
ピュータの媒体読取/書込装置によって、その上に磁区
間の境界が記録され得ないような媒体上の領域より成る
。
種類の構造より成る。第1の構造は、ターゲット・コン
ピュータの媒体読取/書込装置によって形成し得る磁区
パターンのレパートリには属さない、媒体上の磁区のパ
ターンである。第2の種類の構造は、ターゲット・コン
ピュータの媒体読取/書込装置によって、その上に磁区
間の境界が記録され得ないような媒体上の領域より成る
。
非常に大きな磁区が、第1の種類の構造の例である。ま
た媒体の欠陥部が、第2の種類の構造の例である。磁気
媒体上に記録された2種類の構造より成る装置は、それ
らの構造が互いに重なり合うように配置されている。
た媒体の欠陥部が、第2の種類の構造の例である。磁気
媒体上に記録された2種類の構造より成る装置は、それ
らの構造が互いに重なり合うように配置されている。
ホスト・システムの媒体読取/曹込装置はそれらの構造
を形成できないが、ホスト・システムの読取/書込%
置によって実行できる動作によってそれらの構造を検出
し測定する事は可能である。
を形成できないが、ホスト・システムの読取/書込%
置によって実行できる動作によってそれらの構造を検出
し測定する事は可能である。
磁区の遷移を支持しない構造を測定するのに必要な動作
は、ちょうど、磁区パターンから成る構造を破壊する動
作である。
は、ちょうど、磁区パターンから成る構造を破壊する動
作である。
他のj類の構造に対して実行される書込−読取動作によ
って、もう1つの種類の構造を破壊する事は、特定の磁
気媒体がそれ自身のサブシステムによってアクセスされ
たか否かをハードウェア・サブシステムが判定する手段
を提供する。サブシステムによって実行される手続きは
、磁気媒体からある重要な情報の転送が過去において実
行された事がない場合にだけ、その情報の磁気媒体から
σ)転送を可能にする。従って情報の転送の手続きr1
媒体上の構造を変化させるので、この種の装置は将来に
重要な情報の転送を実行する事はない。
って、もう1つの種類の構造を破壊する事は、特定の磁
気媒体がそれ自身のサブシステムによってアクセスされ
たか否かをハードウェア・サブシステムが判定する手段
を提供する。サブシステムによって実行される手続きは
、磁気媒体からある重要な情報の転送が過去において実
行された事がない場合にだけ、その情報の磁気媒体から
σ)転送を可能にする。従って情報の転送の手続きr1
媒体上の構造を変化させるので、この種の装置は将来に
重要な情報の転送を実行する事はない。
/パ−ドウ”ア゛サブ7771は・あ6情報′組4込ま
れて提供される。これは磁気媒体から転送された情報の
使用にとって重要である。従ってサブシステムはユーザ
によって複製され得ない。サブシステムはホスト・シス
テムにより行なわれる転送処理の一部を観測する事がで
きる。従って転送はホスト上で実行されるソフトウェア
によっては模倣できない。磁気媒体はユーザが複製する
事はできず、また転送のために2回以上使う事もできな
い。従って媒体は転送動作に有用な形でコピーする事が
できない。
れて提供される。これは磁気媒体から転送された情報の
使用にとって重要である。従ってサブシステムはユーザ
によって複製され得ない。サブシステムはホスト・シス
テムにより行なわれる転送処理の一部を観測する事がで
きる。従って転送はホスト上で実行されるソフトウェア
によっては模倣できない。磁気媒体はユーザが複製する
事はできず、また転送のために2回以上使う事もできな
い。従って媒体は転送動作に有用な形でコピーする事が
できない。
転送される重要な情報は、サブシステム上のアプリケー
ション・ソフトウェアの一部分を実行させるのに必要な
解読キーである。解読キーはそれ自身暗号化されている
。サブシステムに組み込まれている重要な情報は、転送
された解読キーを有用な形式に再生するのに必要な解読
キーである。
ション・ソフトウェアの一部分を実行させるのに必要な
解読キーである。解読キーはそれ自身暗号化されている
。サブシステムに組み込まれている重要な情報は、転送
された解読キーを有用な形式に再生するのに必要な解読
キーである。
従ってユーザはこの種のサブシステムの協力なしにこの
情報を使用する事はできない。
情報を使用する事はできない。
このように、一部分が暗号化された特定のソフトウェア
配布パッケージを特定のハードウェア・サブシステムに
対して束縛する手段が提供され、且つその同じ特定のソ
フトウェア配布パッケージ又はその複製物を他のシステ
ムに対して束縛する事を非常に困難にする手段が提供さ
れる。これらの手段によって、磁気媒体を用いて配布さ
れたソフトウェアはコピーから保護される。
配布パッケージを特定のハードウェア・サブシステムに
対して束縛する手段が提供され、且つその同じ特定のソ
フトウェア配布パッケージ又はその複製物を他のシステ
ムに対して束縛する事を非常に困難にする手段が提供さ
れる。これらの手段によって、磁気媒体を用いて配布さ
れたソフトウェアはコピーから保護される。
そのような束縛が行なわれた後、サポート・ハードウェ
アは保護されたソフトウェアのある一部分を実行するよ
うに要求される。そのソフトウェア・パッケージだけに
対して束縛を経験したサポート・ハードウェアは、それ
だけがソフトウェアを解読するキーを持っているので、
その要求を満足させる手段を有している。解読及び実行
の両方が、ユーザにとって論理的及び物理的にアクセス
不可能なメモリ中で行tCわれる。従ってソフトウェア
は、使用可能な形でユーザに露出される事がないので、
コピーから保護される。
アは保護されたソフトウェアのある一部分を実行するよ
うに要求される。そのソフトウェア・パッケージだけに
対して束縛を経験したサポート・ハードウェアは、それ
だけがソフトウェアを解読するキーを持っているので、
その要求を満足させる手段を有している。解読及び実行
の両方が、ユーザにとって論理的及び物理的にアクセス
不可能なメモリ中で行tCわれる。従ってソフトウェア
は、使用可能な形でユーザに露出される事がないので、
コピーから保護される。
転送処理が終了した後、サポート・ハードウェアがソフ
トウェアのある一部分の解読と実行を行なうように要求
された時、配布媒体上の構造より成る装置はアクセスさ
れない。配布媒体の他の全ての部分は再生可能なので、
ホスト・システムの媒体読取/書込装置ばはそれらを再
生し得る。従つてバックアップ・コピーは転送後に作成
可能となるが、オリジナルのシステムだけがバックアッ
プ・コピーを使用する手段を有している。
トウェアのある一部分の解読と実行を行なうように要求
された時、配布媒体上の構造より成る装置はアクセスさ
れない。配布媒体の他の全ての部分は再生可能なので、
ホスト・システムの媒体読取/書込装置ばはそれらを再
生し得る。従つてバックアップ・コピーは転送後に作成
可能となるが、オリジナルのシステムだけがバックアッ
プ・コピーを使用する手段を有している。
F、実施例
小規模なコンピュータの類に対して与えられているパー
ソナル・コンピュータ又はシングル・ユーザ・システム
又は個人用ワークステーションという名称は誤解をまね
くものである。そのコンピュータで使用されるオペレー
ティング・システムを含む全てのプログラムをユーザが
書いたのでないならば、それらの機械はシングル・オペ
レータ・システムと呼んだ方が良い。古典的なオペレー
ティング・システムの観点から見ると、この状況は、ユ
ーザあるいはオペレータに、全てのシステム・コード及
びシステム機構にアクセスできるという責任のある地位
を与えている。通常のシングル・オペレータ・システム
において、システム・コード及びシステムのハードウェ
ア機構をこのように開放する事は、コードを複製し配布
する機会を与える事になる。それらはオペレータ及びユ
ーザが多数存在する古典的な大規模計算システムでは不
可能であった。大規模システムにおいてこの安全性を確
保していた手段は、ユーザに特(V状態レベルが与えら
れ、ユーザがある命令を実行したり読取又は変更のプと
めにあるデータにアクセスしたりする事が許されるかど
うかを判定するためにシステムによりテストが行なわれ
るといつシステムの実現であった。
ソナル・コンピュータ又はシングル・ユーザ・システム
又は個人用ワークステーションという名称は誤解をまね
くものである。そのコンピュータで使用されるオペレー
ティング・システムを含む全てのプログラムをユーザが
書いたのでないならば、それらの機械はシングル・オペ
レータ・システムと呼んだ方が良い。古典的なオペレー
ティング・システムの観点から見ると、この状況は、ユ
ーザあるいはオペレータに、全てのシステム・コード及
びシステム機構にアクセスできるという責任のある地位
を与えている。通常のシングル・オペレータ・システム
において、システム・コード及びシステムのハードウェ
ア機構をこのように開放する事は、コードを複製し配布
する機会を与える事になる。それらはオペレータ及びユ
ーザが多数存在する古典的な大規模計算システムでは不
可能であった。大規模システムにおいてこの安全性を確
保していた手段は、ユーザに特(V状態レベルが与えら
れ、ユーザがある命令を実行したり読取又は変更のプと
めにあるデータにアクセスしたりする事が許されるかど
うかを判定するためにシステムによりテストが行なわれ
るといつシステムの実現であった。
本発明の目的は、ハードウェア製造業者、ソフトウェア
販売采者及び良心的なシングル・オペレータ・システム
のユーザの利益のために、シングル・オペレータ・シス
テム上にいかにして特権を利用したシステムを実現する
かを教示する事である。これは「共有化高位レベル@権
システム」と呼ばれる。というのはこれは各ソフトウェ
ア販売) 業者にユーザよりも高い特権レベルを
与えながら、いかなる業者にも他の業者の特権情報をア
クセスさせないようなものと見なす事ができるからであ
る。このシステムを用いる事によって、システムのハー
ドウェア及びソフトウェアの一部分は、シングル・オペ
レータ・システム(以下、これをホストと呼ぶ)に組み
込まれたコプロセッサ・サブシステム(以下、これをサ
ポート・ハードウェアと呼ぶ)中に隠されるので、販売
業者のソフトウェアのある部分はユーザにアクセス不可
能にできる。さらに、ユーザがシステム上の利用可能な
資源を用いてソフトウェアを調べる事ができるにもかか
わらず、ソフトウェア販売業者がソフトウェアの一部分
をユーザから隠す事を可能にするような、フロッピー・
ディスク又は他の磁気媒体上でソフトウェアを輸送する
ための方法が提供される。
販売采者及び良心的なシングル・オペレータ・システム
のユーザの利益のために、シングル・オペレータ・シス
テム上にいかにして特権を利用したシステムを実現する
かを教示する事である。これは「共有化高位レベル@権
システム」と呼ばれる。というのはこれは各ソフトウェ
ア販売) 業者にユーザよりも高い特権レベルを
与えながら、いかなる業者にも他の業者の特権情報をア
クセスさせないようなものと見なす事ができるからであ
る。このシステムを用いる事によって、システムのハー
ドウェア及びソフトウェアの一部分は、シングル・オペ
レータ・システム(以下、これをホストと呼ぶ)に組み
込まれたコプロセッサ・サブシステム(以下、これをサ
ポート・ハードウェアと呼ぶ)中に隠されるので、販売
業者のソフトウェアのある部分はユーザにアクセス不可
能にできる。さらに、ユーザがシステム上の利用可能な
資源を用いてソフトウェアを調べる事ができるにもかか
わらず、ソフトウェア販売業者がソフトウェアの一部分
をユーザから隠す事を可能にするような、フロッピー・
ディスク又は他の磁気媒体上でソフトウェアを輸送する
ための方法が提供される。
これはユーザが、彼のシステムに計算に必要なもの以上
の資源(例えばロジック・アナライザ及びディジタル・
レコーダ)を付加する事によって充分な時間と資金の投
資を行なっても、なお彼はコードを明らかにできないと
主張するものではない。
の資源(例えばロジック・アナライザ及びディジタル・
レコーダ)を付加する事によって充分な時間と資金の投
資を行なっても、なお彼はコードを明らかにできないと
主張するものではない。
むしろ、そのようなものを用いる事なしには、ユーザに
利用可能なシングル・オペレータ・システムの資源だけ
では、海賊行為のためにコードな得るには不充分である
と主張するものである。シングル・オペレータ・システ
ムの資源を用いるといつのが圧Oil的に多(の海賊行
為の手段であるので、このシステムはありふれた形態の
海賊行為を大幅に減少させ、且つ曲の場合においては時
間及びツールの点でそのコストにより海賊行為を不適当
にするであろう。
利用可能なシングル・オペレータ・システムの資源だけ
では、海賊行為のためにコードな得るには不充分である
と主張するものである。シングル・オペレータ・システ
ムの資源を用いるといつのが圧Oil的に多(の海賊行
為の手段であるので、このシステムはありふれた形態の
海賊行為を大幅に減少させ、且つ曲の場合においては時
間及びツールの点でそのコストにより海賊行為を不適当
にするであろう。
:況明のために、ホスト・ハードウェアij I B
Mパーソナル・コンピュータ(pc)であると仮定する
。またホスト・ディスク・オペレーティング・システム
は(DO,S)はIBM PCDO8であると仮定す
る。これはこσ)組み合せの動作及びDOSサービスが
、このシステムが有用であるような1次ト成の典型的な
ものだからである。これらのDO3及びハードウェア1
1力作は、この又は他のオペレーティング・システムの
下でのこの又は他の可能なホスト・システムの全ての1
.4似の動作を代表するものである。
Mパーソナル・コンピュータ(pc)であると仮定する
。またホスト・ディスク・オペレーティング・システム
は(DO,S)はIBM PCDO8であると仮定す
る。これはこσ)組み合せの動作及びDOSサービスが
、このシステムが有用であるような1次ト成の典型的な
ものだからである。これらのDO3及びハードウェア1
1力作は、この又は他のオペレーティング・システムの
下でのこの又は他の可能なホスト・システムの全ての1
.4似の動作を代表するものである。
共有化高位レベル時(ij ?用いたソフトウェア・コ
ピー保護システムは2つの部分より成る。即ち1つはワ
ーク・ステーションに組み込まれたハードウェア特権サ
ポート・システムであり、もう1つは販売業者からユー
ザへソフトウェアを輸送するために使われるフロッピー
・ディスク又は他の磁気媒体である。フロッピー・ディ
スク及びサポート・ハードウェアはディスク上のソフト
ウェアを使おうとする最初の試みによって変更される。
ピー保護システムは2つの部分より成る。即ち1つはワ
ーク・ステーションに組み込まれたハードウェア特権サ
ポート・システムであり、もう1つは販売業者からユー
ザへソフトウェアを輸送するために使われるフロッピー
・ディスク又は他の磁気媒体である。フロッピー・ディ
スク及びサポート・ハードウェアはディスク上のソフト
ウェアを使おうとする最初の試みによって変更される。
これらの変更により、ディスクを使用した事が検出可能
になる。
になる。
このシステムで使われるディスクは、通常のディスク・
ドライブによって形成されないが検出する事はできる、
ディスク上の2種類のマークを形成しである。これらの
マークは、ディスク・ドライブの書込みヘッドによって
磁化を変化させる事のできる材料の欠如(磁性材料コー
ティングが欠如しているか又は高保磁力の材料で置きか
えられ−でいる)という形式及び通常のディスク・ドラ
イブの書込みヘッドによっては形成できない磁区(例え
ばディスク・システムにおいて同期を失なわせるのに充
分な位に長い距離にわたって磁区の方位が変化しないよ
うな領域)という形式を取る。
ドライブによって形成されないが検出する事はできる、
ディスク上の2種類のマークを形成しである。これらの
マークは、ディスク・ドライブの書込みヘッドによって
磁化を変化させる事のできる材料の欠如(磁性材料コー
ティングが欠如しているか又は高保磁力の材料で置きか
えられ−でいる)という形式及び通常のディスク・ドラ
イブの書込みヘッドによっては形成できない磁区(例え
ばディスク・システムにおいて同期を失なわせるのに充
分な位に長い距離にわたって磁区の方位が変化しないよ
うな領域)という形式を取る。
本明細筈中では、媒体を変化させる事によって形成され
たマークをMMマークと呼び、磁区パターンの形式によ
って作られたマークYDPマークと呼ぶ。
たマークをMMマークと呼び、磁区パターンの形式によ
って作られたマークYDPマークと呼ぶ。
これらのマークは位置及び大きさ等の性質を有し、これ
は情報を符号化するために使う事ができる。DPマーク
の位置と大きさ及びMMマークの位置と大きさは通常の
ディスク・ドライブ上で適当な手続きを行な5年により
検出できる。
は情報を符号化するために使う事ができる。DPマーク
の位置と大きさ及びMMマークの位置と大きさは通常の
ディスク・ドライブ上で適当な手続きを行な5年により
検出できる。
DPマークのセクター内の位置はセクターを2回読み、
その2回の読取り動作の結果を比較する事によって見つ
けられる。DPマークのあるセクターは、ディスク制御
システムがそのクロックを同期させておくのに必要な遷
移を含まないので、DPマークの開始位置に続くセクタ
ーのttls分から7 読取られたデータは
2回の読取動作において互いに異なるであろう。この方
法によって発見されたDPマークの位置は、ディスク・
システムのハードウェアによって定められる限界内でほ
ぼ再現可能である。
その2回の読取り動作の結果を比較する事によって見つ
けられる。DPマークのあるセクターは、ディスク制御
システムがそのクロックを同期させておくのに必要な遷
移を含まないので、DPマークの開始位置に続くセクタ
ーのttls分から7 読取られたデータは
2回の読取動作において互いに異なるであろう。この方
法によって発見されたDPマークの位置は、ディスク・
システムのハードウェアによって定められる限界内でほ
ぼ再現可能である。
磁気媒体を変更する事によって形成されたマークは、あ
る一連の動作によって検出される。最初に、マークを含
むセクターに、どれかの磁区遷移がMMマークに一致す
るよ5な磁区パターンが書込まれる。次にそのセクター
は読取られ、読取り動作の結果は、セクターにマークが
存在しない場合の書込み動作から期待される結果と比較
される。
る一連の動作によって検出される。最初に、マークを含
むセクターに、どれかの磁区遷移がMMマークに一致す
るよ5な磁区パターンが書込まれる。次にそのセクター
は読取られ、読取り動作の結果は、セクターにマークが
存在しない場合の書込み動作から期待される結果と比較
される。
マークの位置及び大きさはこの比較結果から導き出され
る。
る。
MMマークは、前記特許出願に示されている上5に、レ
ーザ光分解切除法によってディスク上に「書込む」こと
ができる。DPマークはセクターの幅にほぼ等しい幅の
一様な磁界中で、フォーマットされたディスクを移動さ
せる事によってMMマークに重ねて形成される。このよ
うにして大きな磁区の帯がディスク上に形成される。次
にディスクは、MMマークを含むものを除いて全てのト
ラックにつき再フォーマットされる。
ーザ光分解切除法によってディスク上に「書込む」こと
ができる。DPマークはセクターの幅にほぼ等しい幅の
一様な磁界中で、フォーマットされたディスクを移動さ
せる事によってMMマークに重ねて形成される。このよ
うにして大きな磁区の帯がディスク上に形成される。次
にディスクは、MMマークを含むものを除いて全てのト
ラックにつき再フォーマットされる。
このように処理されたディスクは2種類のマークを含み
、DPマークがMMマークを覆っている。
、DPマークがMMマークを覆っている。
MMマークを読取るのに必要な動作はDPマークヶ破1
裂するようなat VAのものである事に注意されたい
。即ち、セクターにパターンを書込む動作はディスク上
に磁区を形成するが、これはディスク・システムにおけ
る同期をサポートするからである。
裂するようなat VAのものである事に注意されたい
。即ち、セクターにパターンを書込む動作はディスク上
に磁区を形成するが、これはディスク・システムにおけ
る同期をサポートするからである。
保護されたディスク上では、DPマークはMMマークを
含むセクター上に形成されている。これはDPマークの
下に存在するMMマークを読む事によってDPマークが
破壊される事を保証するだめに行なわれている。通常の
ディスク・ドライブによって形成する事はできないが読
取り動作により何らかの方法で測定できる任意の磁区構
造は、この目的で使う事ができる。
含むセクター上に形成されている。これはDPマークの
下に存在するMMマークを読む事によってDPマークが
破壊される事を保証するだめに行なわれている。通常の
ディスク・ドライブによって形成する事はできないが読
取り動作により何らかの方法で測定できる任意の磁区構
造は、この目的で使う事ができる。
2種類のマークの位置及び大きさは、ディスク上のファ
イル中に記録されている。この臂報はディスク上の他の
ファイルの準備を行なう時に使用できるが、これはディ
スクの準備が終了する前は常に暗号化されている。
イル中に記録されている。この臂報はディスク上の他の
ファイルの準備を行なう時に使用できるが、これはディ
スクの準備が終了する前は常に暗号化されている。
マークに加えて、ディスク上にはファイルが記憶されて
いる。このファイルは2つのカテゴリーに属する。即ち
、(1)保護されたアプリケーション・ソフトウェア、
及び(2)アプリケーションの暗号化部分をロードし実
行させるためにハードウェアが必要とする情報である。
いる。このファイルは2つのカテゴリーに属する。即ち
、(1)保護されたアプリケーション・ソフトウェア、
及び(2)アプリケーションの暗号化部分をロードし実
行させるためにハードウェアが必要とする情報である。
アプリケーション・ソフトウェアは、暗号化されたプロ
グラムの少なくとも1つのファイルを含んでいなければ
ならない。アプリケーション・ソフトウェアのこの部分
は、ソフトウェア販売業者によって提供されるキーを用
い工暗号化されている。このファイルのだめの解読キー
自身も、サポート・ハードウェアの製造業者によって提
供されるR3A公開キーを用いて暗号化されている。こ
の暗号化された解読キー(EDK)もディスク上のファ
イル中に記録されている。ソフトウェア販売業者に最も
興味のある点は、彼が権利を持っていると考えるアプリ
ケーション・ソフトウェアの部分を暗号化し、ユーザに
よる再配布を防止する事である。
グラムの少なくとも1つのファイルを含んでいなければ
ならない。アプリケーション・ソフトウェアのこの部分
は、ソフトウェア販売業者によって提供されるキーを用
い工暗号化されている。このファイルのだめの解読キー
自身も、サポート・ハードウェアの製造業者によって提
供されるR3A公開キーを用いて暗号化されている。こ
の暗号化された解読キー(EDK)もディスク上のファ
イル中に記録されている。ソフトウェア販売業者に最も
興味のある点は、彼が権利を持っていると考えるアプリ
ケーション・ソフトウェアの部分を暗号化し、ユーザに
よる再配布を防止する事である。
販売又は再販売用の完成したディスクは少なくとも下記
のもの夕含んでいる。 ・ 1、 ディスクに特有の21にマーク付けされた領域。
のもの夕含んでいる。 ・ 1、 ディスクに特有の21にマーク付けされた領域。
2、キー中にディスク・マーキング・パラメータを含み
得る、ソフトウェア販売業者によって選択されたキーを
用いて暗号化された少なくとも1つのプログラム・ファ
イルを有するアプリケーション。
得る、ソフトウェア販売業者によって選択されたキーを
用いて暗号化された少なくとも1つのプログラム・ファ
イルを有するアプリケーション。
6、暗号化された解読キー。但し、この暗号化は、サポ
ート・ハードウェア製造業者によって提供されるR3A
公開キーによっている。
ート・ハードウェア製造業者によって提供されるR3A
公開キーによっている。
4、サポート・ハードウェアにサービス(初回使用時の
初期設定−及びロード−解読−実行)を要求し、その要
求時にサポート・ハ、J −ドウエア
に関してホストからサービスを得るプログラム。
初期設定−及びロード−解読−実行)を要求し、その要
求時にサポート・ハ、J −ドウエア
に関してホストからサービスを得るプログラム。
5、暗号化された形式での、2重にマークされた領域の
説明。但し暗号化キーはアプリケーション・ソフトウェ
アに用いたのと同じキーである。
説明。但し暗号化キーはアプリケーション・ソフトウェ
アに用いたのと同じキーである。
ここで注意すべき事は、R8A解読キーはハードウェア
製造業者によって秘密にされなげればならない事及びソ
フトウェアを保護するだめに用いた暗号化キーがマーキ
ング情報を含むならばソフトウェア業者はより良く保護
される事である。暗号化キーはこの方法によって各ディ
スクに対して特有のものにする事ができる。このシステ
ムによって提供される保護の程度は、保護システム全体
のうち実施者がどの部分を用いたかに依存する事は明ら
かである。
製造業者によって秘密にされなげればならない事及びソ
フトウェアを保護するだめに用いた暗号化キーがマーキ
ング情報を含むならばソフトウェア業者はより良く保護
される事である。暗号化キーはこの方法によって各ディ
スクに対して特有のものにする事ができる。このシステ
ムによって提供される保護の程度は、保護システム全体
のうち実施者がどの部分を用いたかに依存する事は明ら
かである。
もし保護されたディスクの海賊版作成行為が試みられる
とすると、その海賊行為は、業者が提供したソフトウェ
アを有するディスクのコピーであって、サポート・ハー
ドウェアなしに働くもの又はサポート・ハードウェアを
有する他のシステムに移す事のできるものの作成を試み
る事になるであろう。その各々の場合を別々に説明する
。
とすると、その海賊行為は、業者が提供したソフトウェ
アを有するディスクのコピーであって、サポート・ハー
ドウェアなしに働くもの又はサポート・ハードウェアを
有する他のシステムに移す事のできるものの作成を試み
る事になるであろう。その各々の場合を別々に説明する
。
もし海賊版作成者が、サポート・ノ・−ドウエアを有す
るシステム上で動作するディスクのコピーを作成する事
を望むならば、彼は配布の準備のされたディスクの全て
の特徴を複製しなければならない。普通のコピー・プロ
グラムは、暗号化されたアプリケーション・プログラム
及び暗号化された解読キーを暗号化された実行不能な形
式のままでコピーする事は可能であるが、通常のディス
ク・ドライブは2重にマーク付けされた領域を形成する
事はできない。パーツナル・コンピュータ上で走るどの
コピー・プログラムも、販布ディスクのその部分をコピ
ーするのに必要なハードウェア機構を持っていない。後
に見るように、サポート・ハードウェアは、始めての使
用の時の初期設定においてマークを利用しそれを変更す
る。もし保護されたプログラムを最初に使用する時に、
暗号化されたファイル中に記憶されたマークについての
記述に正確に対応するような2重マーク付は領域をサポ
ート・ハードウェアが発見できなければ、それは保護さ
れたプログラムを実行させるのに必要なデータの転送を
受理しない。従ってサポート・ハードウェアを装備した
システム上で使用するために保護ディスクをコピーする
方法による海賊行為は、2重マーク付は領域を複製する
事の困難さによって禁止される。
るシステム上で動作するディスクのコピーを作成する事
を望むならば、彼は配布の準備のされたディスクの全て
の特徴を複製しなければならない。普通のコピー・プロ
グラムは、暗号化されたアプリケーション・プログラム
及び暗号化された解読キーを暗号化された実行不能な形
式のままでコピーする事は可能であるが、通常のディス
ク・ドライブは2重にマーク付けされた領域を形成する
事はできない。パーツナル・コンピュータ上で走るどの
コピー・プログラムも、販布ディスクのその部分をコピ
ーするのに必要なハードウェア機構を持っていない。後
に見るように、サポート・ハードウェアは、始めての使
用の時の初期設定においてマークを利用しそれを変更す
る。もし保護されたプログラムを最初に使用する時に、
暗号化されたファイル中に記憶されたマークについての
記述に正確に対応するような2重マーク付は領域をサポ
ート・ハードウェアが発見できなければ、それは保護さ
れたプログラムを実行させるのに必要なデータの転送を
受理しない。従ってサポート・ハードウェアを装備した
システム上で使用するために保護ディスクをコピーする
方法による海賊行為は、2重マーク付は領域を複製する
事の困難さによって禁止される。
もし海賊版作成者がサポート・ハードウェアなしのシス
テム上で走るディスクのコピーを作成したいと望むなら
ば、彼はアプリケーション・プログラムの暗号化された
部分を解読しなければならない。またサポート・ハード
ウェアを備えたシステムには2個のプロセッサが存在す
るので、アプリケーションは2個のプロセッサ上でコン
カレントに動作するか又はサポート・ハードウェア上の
特別の機構を利用するように書く事が可能である。
テム上で走るディスクのコピーを作成したいと望むなら
ば、彼はアプリケーション・プログラムの暗号化された
部分を解読しなければならない。またサポート・ハード
ウェアを備えたシステムには2個のプロセッサが存在す
るので、アプリケーションは2個のプロセッサ上でコン
カレントに動作するか又はサポート・ハードウェア上の
特別の機構を利用するように書く事が可能である。
もしもそうであればアプリケーション・プログラムは、
動作可能にするために大幅に修正しなげればならない。
動作可能にするために大幅に修正しなげればならない。
従ってアプリケーション・プログラムを解読した版をコ
ピーする方法による海賊行為は、アプリケーション及び
EDKを読取り不可能にするために用いる暗号化方法の
強度によって禁止される。
ピーする方法による海賊行為は、アプリケーション及び
EDKを読取り不可能にするために用いる暗号化方法の
強度によって禁止される。
これを事実上克服不可能な仕事にするのは実用的な事で
ある。また例え解読が行なわれたとしても、ソフトウェ
アはそれがコプロセッサなしに走るように書きかえられ
ない限り依然として使用できない。
ある。また例え解読が行なわれたとしても、ソフトウェ
アはそれがコプロセッサなしに走るように書きかえられ
ない限り依然として使用できない。
コピー保護システムを有用なものにするために、配布デ
ィスクから有用なコピーが作成できない事のみならず下
記の事項も必要である。
ィスクから有用なコピーが作成できない事のみならず下
記の事項も必要である。
1、配布ディスクは1つだけのシステムでしか使用でき
ない。
ない。
2 ユーザはディスクのバックアップ・コピーをいくら
でも作成できる。但し、そのコピーは全て、他のシステ
ムでは使用できない。
でも作成できる。但し、そのコピーは全て、他のシステ
ムでは使用できない。
ろ、 ソフトウェアは、(他のシステムにロードできる
ような完全な形で)システム・メ、 モ
リの2値イメージをユーザが作成できるような形式でシ
ステム・メモリ中に存在してはならない。
ような完全な形で)システム・メ、 モ
リの2値イメージをユーザが作成できるような形式でシ
ステム・メモリ中に存在してはならない。
保護システムのこの部分はサポート・ハードウェアによ
って実現される。サポート・ハードウェアはそれ自身、
計算システムである。それはそれ自身のプロセッサ、R
OM中のファームウェア、ハードウェア・タイマ、リア
ルタイム・クロック(又は乱数を得るための他のハード
ウェア装置)及びRAMを有している。これはパーソナ
ル・コンピュータにカード・セットとして設置される。
って実現される。サポート・ハードウェアはそれ自身、
計算システムである。それはそれ自身のプロセッサ、R
OM中のファームウェア、ハードウェア・タイマ、リア
ルタイム・クロック(又は乱数を得るための他のハード
ウェア装置)及びRAMを有している。これはパーソナ
ル・コンピュータにカード・セットとして設置される。
サポート・ハードウェアはそれが存在しているシステム
と、共通メモリの領域を経由して、及びホスト・システ
ムのポート・アドレス空間中にある1組のレジスタを経
由して通信する。共通メモリがサポート・ハードウェア
・システムの一部である事は重要である。サポート・ハ
ードウェアはそのバス・トランシーハラ制御し、ホスト
がこのメモリを読取る事を不可能にする事ができる。他
の構成も可能であるが、サポート・ノ・−ドウエア・メ
モリの一部だけしかホスト・システムによってアドレス
し得ない事が必要である。またホスト・システムによっ
てアドレス可能でないサポート・ハードウェア・メモリ
の部分は、ユーザに対して物理的にアクセス不可能にな
っている必要がある。
と、共通メモリの領域を経由して、及びホスト・システ
ムのポート・アドレス空間中にある1組のレジスタを経
由して通信する。共通メモリがサポート・ハードウェア
・システムの一部である事は重要である。サポート・ハ
ードウェアはそのバス・トランシーハラ制御し、ホスト
がこのメモリを読取る事を不可能にする事ができる。他
の構成も可能であるが、サポート・ノ・−ドウエア・メ
モリの一部だけしかホスト・システムによってアドレス
し得ない事が必要である。またホスト・システムによっ
てアドレス可能でないサポート・ハードウェア・メモリ
の部分は、ユーザに対して物理的にアクセス不可能にな
っている必要がある。
サポート・ハードウェアがアプリケーション・ソフトウ
ェアの暗号化された部分を解読し実行するのはこのメモ
リである。
ェアの暗号化された部分を解読し実行するのはこのメモ
リである。
プロセッサ、共通メモリ、ハードウェア・タイマ及びボ
ート・アドレス方式レジスタに加えて、サポート・ハー
ドウェアは、ROM及びEEPROMを含む物理的且つ
論理的に安全なメモリ空間を有している。
ート・アドレス方式レジスタに加えて、サポート・ハー
ドウェアは、ROM及びEEPROMを含む物理的且つ
論理的に安全なメモリ空間を有している。
ROMデバイスはシステム・ファームウェアを含む。そ
れは、ホスト・システムがサポート・ノ・−ドウエアに
要求するサービスをコマンドとして有するモニタの形を
とる。そのようなサービスの完全な組は最小限下記のも
のを含む。
れは、ホスト・システムがサポート・ノ・−ドウエアに
要求するサービスをコマンドとして有するモニタの形を
とる。そのようなサービスの完全な組は最小限下記のも
のを含む。
1 最初の使用時に初期設定を行なう。
2、アプリケーションをロードし、解読し実行する。
EEPROMデバイスはサポート・ハードウェアによっ
て、初期設定されたアプリケーションの解読キーが記憶
される安全且つ不揮発性のメモリとして用いられる。
て、初期設定されたアプリケーションの解読キーが記憶
される安全且つ不揮発性のメモリとして用いられる。
EFJPROM及びRO1,/iによって占められるメ
モリ並びにクロック及びハードウェア・タイマがユーザ
から適当に安全に保たれるように、サポート・ハードウ
ェア中のプロセッサは少なくとも2つの特権レベルを持
たなければならない。
モリ並びにクロック及びハードウェア・タイマがユーザ
から適当に安全に保たれるように、サポート・ハードウ
ェア中のプロセッサは少なくとも2つの特権レベルを持
たなければならない。
サポート・ハードウェア上で解読され実行される全ての
アプリケーション・ソフトウェアは、EEPROMのア
クセス、ローディング、解読及び実行動作を制御する、
ROMに存在するファームウェアよりも低い特権レベル
にある。この構造は、サポート、・ハードウェア上で走
り且つファームウェア及びEEPROMにアクセスしそ
れらの内容を共通メモリにダンプするようなモニタをユ
ーザカ書<事をサポート・ハードウェアが防止する点で
必要である。
アプリケーション・ソフトウェアは、EEPROMのア
クセス、ローディング、解読及び実行動作を制御する、
ROMに存在するファームウェアよりも低い特権レベル
にある。この構造は、サポート、・ハードウェア上で走
り且つファームウェア及びEEPROMにアクセスしそ
れらの内容を共通メモリにダンプするようなモニタをユ
ーザカ書<事をサポート・ハードウェアが防止する点で
必要である。
以前に注意したように、サポート・ハードウェアは物理
的且つ論理的に安全でなければならない。
的且つ論理的に安全でなければならない。
この安全性は、ユーザがロジック・アナライザ又は他の
ディジタル制御及び記録装置を用いて安全なメモリ空間
の内容の記録を得る事を防止するために必要である。半
導体技術の現状を仮定すると、サポート・ハードウェア
に関する物理的安全性はサポート・システム全体を単一
のチップ・パッケージ中に実装する事によって得られる
であろう。
ディジタル制御及び記録装置を用いて安全なメモリ空間
の内容の記録を得る事を防止するために必要である。半
導体技術の現状を仮定すると、サポート・ハードウェア
に関する物理的安全性はサポート・システム全体を単一
のチップ・パッケージ中に実装する事によって得られる
であろう。
このパッケージは、(解読キー及びアルゴリズムの組を
得るためにメモリー内容を探るための)いかなる物理的
アクセスの努力もROM及びEEPROM中の情報を破
壊するよ5に、製造する事ができるであろう。これは、
(パッケージに充分な応力が加えられるか又はパッケー
ジ中の応力が緩和されるならばメモリ・デバイス中のM
OSゲートを破壊する)ピエゾ電気ドライバと、パッケ
ージが空気中に露出されたならば急速に酸化する、IC
又はパッケージの導電線との組み合せを用いて達成され
る。
得るためにメモリー内容を探るための)いかなる物理的
アクセスの努力もROM及びEEPROM中の情報を破
壊するよ5に、製造する事ができるであろう。これは、
(パッケージに充分な応力が加えられるか又はパッケー
ジ中の応力が緩和されるならばメモリ・デバイス中のM
OSゲートを破壊する)ピエゾ電気ドライバと、パッケ
ージが空気中に露出されたならば急速に酸化する、IC
又はパッケージの導電線との組み合せを用いて達成され
る。
□4 単一のICパッケージがサポート・ノ
・−ドウエア用の好ましいパッケージ技術であるが、こ
のシステムは少なくとも2つの別の方法で構成する事も
できる。
・−ドウエア用の好ましいパッケージ技術であるが、こ
のシステムは少なくとも2つの別の方法で構成する事も
できる。
1 適当に暗号化されたバスを経由して互いに通信する
チップの組。
チップの組。
2、ボード上に組み立てられ且つ干渉防護システムを用
いて封入された通常のチップの組。
いて封入された通常のチップの組。
サポート・ハードウェアはホストの各ワークステーショ
ンに付加されるものである。このワークステーションは
シングル共通バス・マイクロプロセッサ方式のコンピュ
ータ・システムである。
ンに付加されるものである。このワークステーションは
シングル共通バス・マイクロプロセッサ方式のコンピュ
ータ・システムである。
IBM PCはこの種の機械の典型的なものである。
そのようなシステムはバス(所々にソケットを有する伝
送線の配列ンを、論理的に分離したサブシステム間の通
信媒体として使用する。これらのサブシステムのあるも
のは、バスを支持しているのと同じ実装要素(この場合
は「システム・ボード」と呼ばれる印刷回路板ン上に存
在する。システムの機能に必要なサブシステム又はシス
テムの機能の拡張のためのサブシステムは、ソケットに
よりバスに取り付けられる。サブシステムを構成する要
素は、サブシステムの一部が別の実装要素上に存在する
ように形成する事もできる。
送線の配列ンを、論理的に分離したサブシステム間の通
信媒体として使用する。これらのサブシステムのあるも
のは、バスを支持しているのと同じ実装要素(この場合
は「システム・ボード」と呼ばれる印刷回路板ン上に存
在する。システムの機能に必要なサブシステム又はシス
テムの機能の拡張のためのサブシステムは、ソケットに
よりバスに取り付けられる。サブシステムを構成する要
素は、サブシステムの一部が別の実装要素上に存在する
ように形成する事もできる。
第1図の[通常の計算システム]と表示した領域は、普
通の、はぼ最小限のホスト・システムである。ホストC
PU4はシングル・チップのマイクロプロセッサ及び1
群のサポート・チップより成る。ホス)CPU4は、1
つのアドレス可能要素から他のものへデータを移動する
事に関係したタスクからマイクロプロセッサを解放する
だめのDMAデバイスをサポート・チップとして有する
事もある。
通の、はぼ最小限のホスト・システムである。ホストC
PU4はシングル・チップのマイクロプロセッサ及び1
群のサポート・チップより成る。ホス)CPU4は、1
つのアドレス可能要素から他のものへデータを移動する
事に関係したタスクからマイクロプロセッサを解放する
だめのDMAデバイスをサポート・チップとして有する
事もある。
マイクロプロセッサは、バスの中のどの制御線がアサー
ト(バス定義と呼ばれるプロトコルに従って適当な電位
に変化させる事)されるかによって、バス動作の型(取
り出し、記憶、等)及び選択された要素の型(RAM、
ポート・アドレスを有するレジスタ等)を制御する。こ
れらの手段により、マイクロプロセッサは(プログラム
と呼ばれる)命令の集まりを得、1組のデータに対して
命令を実行し、そしてシステムの他の要素中に記憶され
ていたデータを命令の実行の結果に従って変更する事が
できる。
ト(バス定義と呼ばれるプロトコルに従って適当な電位
に変化させる事)されるかによって、バス動作の型(取
り出し、記憶、等)及び選択された要素の型(RAM、
ポート・アドレスを有するレジスタ等)を制御する。こ
れらの手段により、マイクロプロセッサは(プログラム
と呼ばれる)命令の集まりを得、1組のデータに対して
命令を実行し、そしてシステムの他の要素中に記憶され
ていたデータを命令の実行の結果に従って変更する事が
できる。
RAM6は、ホストCPU4がデータを取り出し又は書
き込む事のできるサブシステムである。
き込む事のできるサブシステムである。
ROM8は、データを取り出す事しかできないサブシス
テムである。これは、コンピュータの有用な動作を開始
するために必要なプログラム及び他のサブシステムを制
御するために役立つプログラムの集まりを含んでいる。
テムである。これは、コンピュータの有用な動作を開始
するために必要なプログラム及び他のサブシステムを制
御するために役立つプログラムの集まりを含んでいる。
残りのサブシステム、端末制御ユニット9、ディスプレ
イ11、入力装置13、ディスク・システム制御ユニッ
ト15及びディスク・ドライブ17は、両アドレス可能
な要素及び機械的、光学的又は電磁的な(又は他のン要
素を有しており、人間の感覚に影響を与え、人間の動作
により影響され、又は磁気媒体上の磁区間の境界を感知
及び形成する事に関係した読取り及び書込み動作を行な
うために磁気媒体を操作する。アドレス可能要素のある
ものの内容はサブシステムの機械的、光学的及び電磁的
作用体の動作を制御し、他のアドレス可能要素の内容は
機械的、光学的、及び電磁的素子によって制御篩される
。従って、これらの手段により、計算システムはユーザ
及び磁気媒体と対話する事ができる。
イ11、入力装置13、ディスク・システム制御ユニッ
ト15及びディスク・ドライブ17は、両アドレス可能
な要素及び機械的、光学的又は電磁的な(又は他のン要
素を有しており、人間の感覚に影響を与え、人間の動作
により影響され、又は磁気媒体上の磁区間の境界を感知
及び形成する事に関係した読取り及び書込み動作を行な
うために磁気媒体を操作する。アドレス可能要素のある
ものの内容はサブシステムの機械的、光学的及び電磁的
作用体の動作を制御し、他のアドレス可能要素の内容は
機械的、光学的、及び電磁的素子によって制御篩される
。従って、これらの手段により、計算システムはユーザ
及び磁気媒体と対話する事ができる。
電源投入時に、マイクロプロセッサはメモリの固定位置
から取り出された命令を実行する。このアドレスはRO
M 8によって占められているものである。そのアドレ
スに記1、モ1されている命令は、システムをテストし
初期設定するプログラムへのジャンプ命令である。シス
テム初期設定プログラムの1つハ、ディスク・オペレー
ティング・システム(DO8)と呼ばれるプログラムを
ディスクから読取り、実行させる。このプログラム(D
。
から取り出された命令を実行する。このアドレスはRO
M 8によって占められているものである。そのアドレ
スに記1、モ1されている命令は、システムをテストし
初期設定するプログラムへのジャンプ命令である。シス
テム初期設定プログラムの1つハ、ディスク・オペレー
ティング・システム(DO8)と呼ばれるプログラムを
ディスクから読取り、実行させる。このプログラム(D
。
S)は、端末制御システムを経てユーザからコマンドを
受は取る事ができる。またユーザの選択したプログラム
を、そのファイルの名前を入力する事によってシステム
上で実行させる事もできる。
受は取る事ができる。またユーザの選択したプログラム
を、そのファイルの名前を入力する事によってシステム
上で実行させる事もできる。
、7 第1図に示すサブシステムの残りの部
分10及び22は最小限のサポート・ハードウェア・シ
ステムの例である。サポート・ハードウェアの要素は2
つの部分から成るものと考えられる。1つの部分22は
、サポート・ハードウェアがホスト・ハードウェアと通
信し、(ユーザとホスト・システムとの間のように)コ
マンド及びデータを交換しうるアドレス可能要素を含ん
でいる。もう1つの部分10は、サポートCPU12、
RAM14、ROM16及び他の要素(タイマ/リアル
タイム・クロック18、及びEEPROM20ンを含み
、ホスト・システムとの通信に直接関係していない。
分10及び22は最小限のサポート・ハードウェア・シ
ステムの例である。サポート・ハードウェアの要素は2
つの部分から成るものと考えられる。1つの部分22は
、サポート・ハードウェアがホスト・ハードウェアと通
信し、(ユーザとホスト・システムとの間のように)コ
マンド及びデータを交換しうるアドレス可能要素を含ん
でいる。もう1つの部分10は、サポートCPU12、
RAM14、ROM16及び他の要素(タイマ/リアル
タイム・クロック18、及びEEPROM20ンを含み
、ホスト・システムとの通信に直接関係していない。
EEPROM20は1種の半導体メモリである。
それは、その内容がサポートCPUによる書込み動作に
よって変更できるという意味で、RAMの特性を有して
おり、且つその内容が電源断の時に失なわれないという
意味でROMの特性を有している。
よって変更できるという意味で、RAMの特性を有して
おり、且つその内容が電源断の時に失なわれないという
意味でROMの特性を有している。
タイマ18は、例えば、バスのクロック線にクロック信
号がアサートされるたびに、レジスタ中に記憶された数
字を減計数しつるサブシステムである。タイマは、タイ
マ・サブシステム内のアドレス可能要素に書込みを行な
うサポートCPUによって、この数を与えられ減計数に
開始する時を知らされる。レジスタ中の現在の値は一般
にサポートCPUにより読み取る事ができ、またタイマ
・サブシステムはその計数値がゼロに達した時にバス上
の1つの信号線をアサートするように構成できる。
号がアサートされるたびに、レジスタ中に記憶された数
字を減計数しつるサブシステムである。タイマは、タイ
マ・サブシステム内のアドレス可能要素に書込みを行な
うサポートCPUによって、この数を与えられ減計数に
開始する時を知らされる。レジスタ中の現在の値は一般
にサポートCPUにより読み取る事ができ、またタイマ
・サブシステムはその計数値がゼロに達した時にバス上
の1つの信号線をアサートするように構成できる。
リアルタイム・クロックは、特′殊なカウンタ及び電池
を含むサブシステムである。電池は、計算システムの電
源が断になっている期間中にリアルタイム・クロック及
びそのサポート・チップに電力を供給する。カウンタは
そのサポート・チップが発生するクロック信号に応答し
てそのレジスタ化増計故させるので、そのレジスタはレ
ジスタが初期設定されてからの期間を反映している。従
って、もしレジスタが時刻を初期設定されたならば、そ
の内容はほぼ正しい時刻を示し続けるであろう。
を含むサブシステムである。電池は、計算システムの電
源が断になっている期間中にリアルタイム・クロック及
びそのサポート・チップに電力を供給する。カウンタは
そのサポート・チップが発生するクロック信号に応答し
てそのレジスタ化増計故させるので、そのレジスタはレ
ジスタが初期設定されてからの期間を反映している。従
って、もしレジスタが時刻を初期設定されたならば、そ
の内容はほぼ正しい時刻を示し続けるであろう。
リアルタイム−クロックのレジスタはサポートCP’U
が読取る事ができる。
が読取る事ができる。
コマンド及びデータを交換しつるようにホスト・ハード
ウェアと通信するサポート・ハードウェアの部分22は
6つのサブシステムより成る。
ウェアと通信するサポート・ハードウェアの部分22は
6つのサブシステムより成る。
第1のサブシステムは、ホスト及びサポート・システム
の両者により読取り且つ書込む事のできるアドレス可能
要素の集まりである。これらの要素は通信レジスタ24
と呼ばれ、ホストとサポート・システムとの間の通信経
路として使われている。レジスタ24は、2重通信路、
即ちある所定の時間に一方のシステム(ホスト2又はサ
ポート10)だけがレジスタに書込む事ができ、他方の
システムはそれを読む事しかできない(書込み及び読取
りの役割はサポート・ハードウェアの制御の下に交換さ
れる)ものでもよく、又単信通信路、即チあるレジスタ
が1つのシステムにより書込まれ且つ他方のシステムに
より読取られるように永久的にセットされたものでもよ
く、又「アクセス衝突プロトコル」を実施したものでも
、又上記方式の組み合せでもよい。
の両者により読取り且つ書込む事のできるアドレス可能
要素の集まりである。これらの要素は通信レジスタ24
と呼ばれ、ホストとサポート・システムとの間の通信経
路として使われている。レジスタ24は、2重通信路、
即ちある所定の時間に一方のシステム(ホスト2又はサ
ポート10)だけがレジスタに書込む事ができ、他方の
システムはそれを読む事しかできない(書込み及び読取
りの役割はサポート・ハードウェアの制御の下に交換さ
れる)ものでもよく、又単信通信路、即チあるレジスタ
が1つのシステムにより書込まれ且つ他方のシステムに
より読取られるように永久的にセットされたものでもよ
く、又「アクセス衝突プロトコル」を実施したものでも
、又上記方式の組み合せでもよい。
第2のサブシステムは2ポ一トRAM26である。これ
ば℃・ずれのシステムのCPUによってもアクセス可能
なRAMのブロックであり、レジスタ方式の通信路の可
能な実現手法として述べた上記の構成のいずれかη1で
実施している。一般にレジスタ24の経路(はコマンド
の通信に有用であり、RAM26の経路はRAMがホス
ト・ハードウェア及びサポート・ハードウェアに共通の
メモリ領域を含んでいるので、データのブロックを通信
するのに有用である。
ば℃・ずれのシステムのCPUによってもアクセス可能
なRAMのブロックであり、レジスタ方式の通信路の可
能な実現手法として述べた上記の構成のいずれかη1で
実施している。一般にレジスタ24の経路(はコマンド
の通信に有用であり、RAM26の経路はRAMがホス
ト・ハードウェア及びサポート・ハードウェアに共通の
メモリ領域を含んでいるので、データのブロックを通信
するのに有用である。
第6のサブシステムはバス・レシーバ28である。これ
はホストCPU4からはアドレス不可能であるが、サポ
ート・ハードウェアの側10からは読取専用要素として
アドレス可能である。このシステムは、ホスト・システ
ム・ハードウェア内で起きている動作をサポート・ハー
ドウェアが観測し得るようにするものである。サポート
・システムはホスト・バス上の制御線をアサートできた
(・のでホスト・システムのアドレス可能要素はサポー
ト・システムによって直接にアクセスできなΔ
いが、サポート・システムは、ホスト・バス上の各信号
線の状態を記録する事によってホスト・システムの行な
う動作の描像を得る事ができる。この方法によって、サ
ポート・ハードウェアは、ホストが実行している命令を
判定し、それらを、(サポート・ハードウェアによって
要求されているサービスをホストが実行している場合に
期待される)命令のリストと比較できる。
はホストCPU4からはアドレス不可能であるが、サポ
ート・ハードウェアの側10からは読取専用要素として
アドレス可能である。このシステムは、ホスト・システ
ム・ハードウェア内で起きている動作をサポート・ハー
ドウェアが観測し得るようにするものである。サポート
・システムはホスト・バス上の制御線をアサートできた
(・のでホスト・システムのアドレス可能要素はサポー
ト・システムによって直接にアクセスできなΔ
いが、サポート・システムは、ホスト・バス上の各信号
線の状態を記録する事によってホスト・システムの行な
う動作の描像を得る事ができる。この方法によって、サ
ポート・ハードウェアは、ホストが実行している命令を
判定し、それらを、(サポート・ハードウェアによって
要求されているサービスをホストが実行している場合に
期待される)命令のリストと比較できる。
ここでアドレス可能要素へのアクセスについて若干の解
説を加える。そのような要素は各々、アドレス線と呼ば
れるバス中の信号線の配列、データ線と呼ばれるバス中
の信号線の配列、及び制御線と呼ばれるバス中の信号線
の配列を観測するものとみなす事ができる。各アドレス
可能要素内の小部分は、アドレス・デコーダと呼ばれる
要素である。アドレス・デコーダは、アドレス線のうち
のアサートされた信号線によって表されたアドレス及び
制御線のうちの制御信号の両者がそのアドレス可能要素
に関して適当で且つ正しい場合にのみ、アドレス可能要
素の内容にアクセスするためのデータ線を開く。もし要
素のアドレスがバス上に存在しなげれば、その要素に記
憶されているデータはその時にはアクセスできない。さ
らに、プロセッサは、アドレス可能要素によって観測さ
れる制御線もしくはアドレス1“諜乞アサートできない
か又はそのデータ線を観測できないならば、そのアドレ
ス可能要素の内容はそのプロセッサから論理的にアクセ
ス不能又は安全であると言われる。
説を加える。そのような要素は各々、アドレス線と呼ば
れるバス中の信号線の配列、データ線と呼ばれるバス中
の信号線の配列、及び制御線と呼ばれるバス中の信号線
の配列を観測するものとみなす事ができる。各アドレス
可能要素内の小部分は、アドレス・デコーダと呼ばれる
要素である。アドレス・デコーダは、アドレス線のうち
のアサートされた信号線によって表されたアドレス及び
制御線のうちの制御信号の両者がそのアドレス可能要素
に関して適当で且つ正しい場合にのみ、アドレス可能要
素の内容にアクセスするためのデータ線を開く。もし要
素のアドレスがバス上に存在しなげれば、その要素に記
憶されているデータはその時にはアクセスできない。さ
らに、プロセッサは、アドレス可能要素によって観測さ
れる制御線もしくはアドレス1“諜乞アサートできない
か又はそのデータ線を観測できないならば、そのアドレ
ス可能要素の内容はそのプロセッサから論理的にアクセ
ス不能又は安全であると言われる。
これがサポート・ハードウェア中の非通信用のアドレス
可能要素とホスト・プロセッサとの間の関係である。従
ってこれらの要素の中で実行されるサポート・ハードウ
ェアの動作は、ホスト・プロセッサから完全に隠されて
いる。これらの要素からホストへデータを移動する事は
、データを安全なアドレス可能要素から通信用のアドレ
ス可能要素に移す事によってのみ可能である。一方、ホ
スト・ハードウェアは、そのバスがバス レシーバを経
てサポート・ハードウェアにより観測できるので、サポ
ート・ハードウェアから動作を隠す事はできない。
可能要素とホスト・プロセッサとの間の関係である。従
ってこれらの要素の中で実行されるサポート・ハードウ
ェアの動作は、ホスト・プロセッサから完全に隠されて
いる。これらの要素からホストへデータを移動する事は
、データを安全なアドレス可能要素から通信用のアドレ
ス可能要素に移す事によってのみ可能である。一方、ホ
スト・ハードウェアは、そのバスがバス レシーバを経
てサポート・ハードウェアにより観測できるので、サポ
ート・ハードウェアから動作を隠す事はできない。
これらの要素を与えると、ホスト・ノ・−ドウエアに関
連してサポート・・・−ドウエアの動作を概略説明する
事ができる。
連してサポート・・・−ドウエアの動作を概略説明する
事ができる。
サポート・ノ・−ドウエアのCPU、RAM及びROM
は、電源投入時にプロセッサがROM中の固定した記憶
位置に見い出される命令を実行する事によって動作を開
始するという意味においてホスト・ハードウェアと同様
に機能する。それがホ″ストと協動して実行する動作は
流れ図に詳細に示されている。
は、電源投入時にプロセッサがROM中の固定した記憶
位置に見い出される命令を実行する事によって動作を開
始するという意味においてホスト・ハードウェアと同様
に機能する。それがホ″ストと協動して実行する動作は
流れ図に詳細に示されている。
これまでに示したように、このシステムによって保護さ
れるノアトウエアはフロッピー・ディスク等の磁気媒体
上で配布される。2重にマーク付けされた領域を形成す
るために前述のMMマーク及びDPマークを磁気媒体に
形成する方法を第2A図〜第2D図を参照して説明する
。
れるノアトウエアはフロッピー・ディスク等の磁気媒体
上で配布される。2重にマーク付けされた領域を形成す
るために前述のMMマーク及びDPマークを磁気媒体に
形成する方法を第2A図〜第2D図を参照して説明する
。
第2A図は媒体マーク32等の識別記号を有するディス
ク60の一部を示している。マーク52は製造工程中又
は後にディスク60に付けられる。
ク60の一部を示している。マーク52は製造工程中又
は後にディスク60に付けられる。
マーク32は、ディスク上のある選択された領域を、書
込みヘッドに応答して磁化方位を変化させる事のないよ
うに、その磁気的特性を変化させる。
込みヘッドに応答して磁化方位を変化させる事のないよ
うに、その磁気的特性を変化させる。
マークのサイズは1ピツトの占める領域からトラック全
体のサイズにわたる事も可能である。デイスフに情報を
書込むために、これらの領域は基本的に非磁性的か又は
永久的に磁化されている。即ち媒体上のこれらの選択さ
れた領域には非磁性又は永久磁化された標識が形成され
る。非磁性領域は、選択された領域から磁性材料を除去
する事によって形成され、一方永久磁化領域は、選択さ
れた領域に、ディスク上の元の磁性材料よりも充分に高
い保磁力を有する材料を付着する事によって形成しつる
。マーク52を形成する方法の詳細は下記に示す。
体のサイズにわたる事も可能である。デイスフに情報を
書込むために、これらの領域は基本的に非磁性的か又は
永久的に磁化されている。即ち媒体上のこれらの選択さ
れた領域には非磁性又は永久磁化された標識が形成され
る。非磁性領域は、選択された領域から磁性材料を除去
する事によって形成され、一方永久磁化領域は、選択さ
れた領域に、ディスク上の元の磁性材料よりも充分に高
い保磁力を有する材料を付着する事によって形成しつる
。マーク52を形成する方法の詳細は下記に示す。
非磁性標識は、製造時に、異なった型の媒体上に、基本
的に類似した工程によって形成される。
的に類似した工程によって形成される。
例えば、全ての媒体の製造工程は、基体を磁化可能粒子
の支持体で被覆する工程を含む。支持体は工程の開始時
には液体であり、「インク」と呼ばれる。フロッピー・
ディスク及びテープの場合、イ イ7りは
粒子サイ″′を一様に保9ために沢過され一般にプラス
チック・マイラー製の基体上にスプレー、ワイプ、ロー
ラー等の方法で被覆される。
の支持体で被覆する工程を含む。支持体は工程の開始時
には液体であり、「インク」と呼ばれる。フロッピー・
ディスク及びテープの場合、イ イ7りは
粒子サイ″′を一様に保9ために沢過され一般にプラス
チック・マイラー製の基体上にスプレー、ワイプ、ロー
ラー等の方法で被覆される。
(「マイラー」はデュポン社の商標である。)被覆され
た基体は、インクを乾燥し、平坦化しそして被覆の厚さ
を固定するためにホット・ローラー及びコールド・ロー
ラーの間を通される。完成した媒体はディスク形又はリ
ボン形に切断され、フロッピー・ディスク又はテープを
形成するためにパッケージされる。もし基体が、何の磁
化可能粒子も含まないインクか又は通常の書込みヘッド
によって影響を受は得ない高い保磁力の磁化可能粒子を
含むインクを用いて事前にマーク付けされていれば、事
前にマーク付けされた領域のインクは、普通の製造工程
においてそれらの領域において普通のインクに置きかわ
るであろう。製造工程が終了した時、事前マーク付けさ
れた領域は非磁性又は永久磁化された標識になる。
た基体は、インクを乾燥し、平坦化しそして被覆の厚さ
を固定するためにホット・ローラー及びコールド・ロー
ラーの間を通される。完成した媒体はディスク形又はリ
ボン形に切断され、フロッピー・ディスク又はテープを
形成するためにパッケージされる。もし基体が、何の磁
化可能粒子も含まないインクか又は通常の書込みヘッド
によって影響を受は得ない高い保磁力の磁化可能粒子を
含むインクを用いて事前にマーク付けされていれば、事
前にマーク付けされた領域のインクは、普通の製造工程
においてそれらの領域において普通のインクに置きかわ
るであろう。製造工程が終了した時、事前マーク付けさ
れた領域は非磁性又は永久磁化された標識になる。
製造中に非磁性標識を形成する第2の方法は、基体が被
覆される前に基体上に隆起したパターンを形成する事で
ある。インク被覆工程の間、インクは隆起領域を避け、
そこは非磁性のままになる。
覆される前に基体上に隆起したパターンを形成する事で
ある。インク被覆工程の間、インクは隆起領域を避け、
そこは非磁性のままになる。
これらの隆起領域は2つの方法で形成できる。(1)フ
ォトリングラフィ技術を使用する方法。基体を感光材料
で被覆し、マスクを用いて材料を光学的に露光する。次
に露光された感光材料を全て除去する。次に基体を通常
のようにインクで被覆する。
ォトリングラフィ技術を使用する方法。基体を感光材料
で被覆し、マスクを用いて材料を光学的に露光する。次
に露光された感光材料を全て除去する。次に基体を通常
のようにインクで被覆する。
インクが固定されると、残留したフォトレジストを除去
し、所望であれば、生じた開孔部に非磁性又は永久磁化
可能の材料を充填する。 (2)所望のパターンの隆起
スポットを有する型を用いて基体を押し加熱する。次に
通常のようにインクを用いて基体を被覆する。
し、所望であれば、生じた開孔部に非磁性又は永久磁化
可能の材料を充填する。 (2)所望のパターンの隆起
スポットを有する型を用いて基体を押し加熱する。次に
通常のようにインクを用いて基体を被覆する。
製造中に非磁性標識を形成する第3の方法は、基体の所
望の領域を、インクが付着しない材料で被覆し次に通常
のインク付着工程を行なう事である。この時、非磁性標
識jd磁性被覆中の孔になる。
望の領域を、インクが付着しない材料で被覆し次に通常
のインク付着工程を行なう事である。この時、非磁性標
識jd磁性被覆中の孔になる。
既に製造されたディスクに標識を付ける事も可能である
。これは、ディスク製造業者、ソフトウェア販売業者又
は第3者の機器製造業者によって行なわれる。これを行
なうにはいくつかの方法があるが、そのうち2つを詳述
する。第1の方法は、標識の形成されるべき領域から磁
性材料を除去する方法である。これは少なくとも3つの
方法で行なう事ができる。最初のものは例えばレーザを
用いて磁性材料を熱的に切除又は光分解する事である。
。これは、ディスク製造業者、ソフトウェア販売業者又
は第3者の機器製造業者によって行なわれる。これを行
なうにはいくつかの方法があるが、そのうち2つを詳述
する。第1の方法は、標識の形成されるべき領域から磁
性材料を除去する方法である。これは少なくとも3つの
方法で行なう事ができる。最初のものは例えばレーザを
用いて磁性材料を熱的に切除又は光分解する事である。
その利点は高速で且つ再現性のある事である。
さらに標識のパターンは、レーザ・パルスを適当にプロ
グラムする事によりディスク毎に容易に変更する事がで
きる。大量生産の環境において、有効な構成配背はレー
ザの前面でディスクを回転する事である。この時レーザ
は1つ以上のディスク・トラックに沿って円周方向に所
望のパターンを切除する。既知の位置においてディスク
上にパターンを書込む工程は、ディスクの2回転よりも
短かい時間しかかからない。必要であれば、切除工程が
終了した後に研磨により表面の不整を除く事ができる。
グラムする事によりディスク毎に容易に変更する事がで
きる。大量生産の環境において、有効な構成配背はレー
ザの前面でディスクを回転する事である。この時レーザ
は1つ以上のディスク・トラックに沿って円周方向に所
望のパターンを切除する。既知の位置においてディスク
上にパターンを書込む工程は、ディスクの2回転よりも
短かい時間しかかからない。必要であれば、切除工程が
終了した後に研磨により表面の不整を除く事ができる。
磁性材料を除(2番目の方法は、機械的手段により、所
望のパターンに切除する事である。磁性材料を除く3番
目の方法は、ディスク材料を誘電的に加熱し、例えば所
定のスポットを溶融し、磁性材料を移動させる事により
、又は機械的手段により磁性材料を除く事である。
望のパターンに切除する事である。磁性材料を除く3番
目の方法は、ディスク材料を誘電的に加熱し、例えば所
定のスポットを溶融し、磁性材料を移動させる事により
、又は機械的手段により磁性材料を除く事である。
製造済のディスク上に非磁性標識を形成する第2の方法
は、機械的な型を用いてディスク表面に開部を形成する
事である。凹部の磁性材料は読取ヘッドから離隔し、磁
性を検出できなくなる。この方法はディスク表面を両側
ともに変型させるので、片面フロッピー・ディスクにし
か用いる事ができない。
は、機械的な型を用いてディスク表面に開部を形成する
事である。凹部の磁性材料は読取ヘッドから離隔し、磁
性を検出できなくなる。この方法はディスク表面を両側
ともに変型させるので、片面フロッピー・ディスクにし
か用いる事ができない。
第2B図は正規の方法でフォーマットされたディスク5
0を示す。媒体マーク62はフォーマットされたセクタ
34に位置している。マーク32はセクタ中の1ビット
位置程度に小さくても、又1つ以上のフォーマットされ
たセクタ中にあってもよい。
0を示す。媒体マーク62はフォーマットされたセクタ
34に位置している。マーク32はセクタ中の1ビット
位置程度に小さくても、又1つ以上のフォーマットされ
たセクタ中にあってもよい。
第2C図に示すように、マーク32を含むディスクの領
域に磁界が加えられる。この磁界はその領域において通
常のセクタ構造を壊し、大きな磁区を含む領域36を生
じる。
域に磁界が加えられる。この磁界はその領域において通
常のセクタ構造を壊し、大きな磁区を含む領域36を生
じる。
16 次に第2D図に示すように、マーク6
2を含むセクタ以外の全てのセクタが再フォーマットさ
れる。フォーマットされた全てのセクタは正常なセクタ
として働き、そこにデータを書込む事ができる。媒体マ
ーク32を含むセクタ34は磁区パターン・マーク68
等の第2の標識もしくはマークを含んでいる。これは以
下説明するコピー保護方式に利用する事ができる。
2を含むセクタ以外の全てのセクタが再フォーマットさ
れる。フォーマットされた全てのセクタは正常なセクタ
として働き、そこにデータを書込む事ができる。媒体マ
ーク32を含むセクタ34は磁区パターン・マーク68
等の第2の標識もしくはマークを含んでいる。これは以
下説明するコピー保護方式に利用する事ができる。
2重マーク付は領域の使用法を、第3図及び第4A図乃
至第4D図を参照して説明する。
至第4D図を参照して説明する。
第3図は磁区パターン・マーク58の内側に媒体マーク
32を有するセクタ34を示す。マーク38は典型的に
はセクタのデータ・レコード63の内側に形成され、こ
れは正常なデータ40を含んでいる。データ・レコード
360前後にはセクタ・ヘッダ31及びCRCレコード
55がある。
32を有するセクタ34を示す。マーク38は典型的に
はセクタのデータ・レコード63の内側に形成され、こ
れは正常なデータ40を含んでいる。データ・レコード
360前後にはセクタ・ヘッダ31及びCRCレコード
55がある。
第4A図〜第4D図は、磁区パターン・マーク68及び
媒体マーク32を測定する4つのステップの工程を説明
している。ステップ1では、第4A図に示すように、磁
区パターン・マーク58を含むセクタが読取られる。磁
区パターン・マーク38から読取られたデータ42は正
常なデータとは異なり、読取りを行なう毎に異なってい
る。ステップ2では、第4B図に示すように、セクタが
再び読取られる。磁区パターン・マーク38の存在によ
り、マークの領域から読取られたデータ42′は、ステ
ップ1で読取られたデータ42とは相違している。これ
らの相違点の概略の位置と大きさは磁区パターン・マー
ク68の存在を確認し、それを測定するのに役立つ。ス
テップ6では、第4C図に示すように、データがセクタ
に書込まれ、これは磁区パターン・マーク68を破壊し
てそれを正常なデータで置きかえる。媒体マーク32は
影響を受けない。ステップ4では、第4D図に示すよう
に、セクタが再び読取られる。媒体マーク32の存在に
より、この読取データは、前回に書込んだデータとは予
測可能な形で異なっている。
媒体マーク32を測定する4つのステップの工程を説明
している。ステップ1では、第4A図に示すように、磁
区パターン・マーク58を含むセクタが読取られる。磁
区パターン・マーク38から読取られたデータ42は正
常なデータとは異なり、読取りを行なう毎に異なってい
る。ステップ2では、第4B図に示すように、セクタが
再び読取られる。磁区パターン・マーク38の存在によ
り、マークの領域から読取られたデータ42′は、ステ
ップ1で読取られたデータ42とは相違している。これ
らの相違点の概略の位置と大きさは磁区パターン・マー
ク68の存在を確認し、それを測定するのに役立つ。ス
テップ6では、第4C図に示すように、データがセクタ
に書込まれ、これは磁区パターン・マーク68を破壊し
てそれを正常なデータで置きかえる。媒体マーク32は
影響を受けない。ステップ4では、第4D図に示すよう
に、セクタが再び読取られる。媒体マーク32の存在に
より、この読取データは、前回に書込んだデータとは予
測可能な形で異なっている。
これはプログラムが媒体マーク62の存在を確認しそれ
を測定する事を可能にする。
を測定する事を可能にする。
以下の流れ図は、ホスト・ハードウェア2及びサポート
・ハードウェア10で並行して行なわれる動作を示す。
・ハードウェア10で並行して行なわれる動作を示す。
これらの流れ図の中の手続きボックスのあるものはディ
ジタル・ワードをレジスタに置くといった非常に低レベ
ルの動作を示しているが、又あるものは大きなアルゴリ
ズムの実行を示している。流れ図は4つの部分に分割さ
れる。
ジタル・ワードをレジスタに置くといった非常に低レベ
ルの動作を示しているが、又あるものは大きなアルゴリ
ズムの実行を示している。流れ図は4つの部分に分割さ
れる。
それらは、(1)ホスト中のサポート・ソフトウェア、
(2)サポート・ハードウェア上の初回使用時の初期設
定(FUr ; first use 1nitial
ization )機能(及びその入力)、C5)サポ
ート・ハードウェア上のロード、解読、実行(LDR;
1oad、decrypt。
(2)サポート・ハードウェア上の初回使用時の初期設
定(FUr ; first use 1nitial
ization )機能(及びその入力)、C5)サポ
ート・ハードウェア上のロード、解読、実行(LDR;
1oad、decrypt。
run )機能(及びその入力)、及び(4)FUI及
びLDR機能の流れ図中のある機能ブロックの詳細な展
開である。大きなアルゴリズムを表わす機能ブロックは
展開されない。とい5のは、それらの表現しているアル
ゴリズムは計算システム、オヘレーテイング・システム
(%KIBM pcDO8)及び暗号の分野の普通の
参考書中に見い出す事ができるか又は自明なコードだか
らである。
びLDR機能の流れ図中のある機能ブロックの詳細な展
開である。大きなアルゴリズムを表わす機能ブロックは
展開されない。とい5のは、それらの表現しているアル
ゴリズムは計算システム、オヘレーテイング・システム
(%KIBM pcDO8)及び暗号の分野の普通の
参考書中に見い出す事ができるか又は自明なコードだか
らである。
これらの機能ブロックは、乱数列の生成、R3A方式の
暗号化及び解読、一般的な暗号化及び解読、並びにDO
Sサービスの要求を使用しなげればならない。
暗号化及び解読、一般的な暗号化及び解読、並びにDO
Sサービスの要求を使用しなげればならない。
PCDOSサービスに関する情報はマニュアル;rIB
Mfイスク・オヘレーテイング・システム」18Mパー
ツ・ナンバー6024061及び「18Mテクニカル・
リファレンスJIBMパーツ・ナンバー6025005
又は693680Bに見い出す事ができる。
Mfイスク・オヘレーテイング・システム」18Mパー
ツ・ナンバー6024061及び「18Mテクニカル・
リファレンスJIBMパーツ・ナンバー6025005
又は693680Bに見い出す事ができる。
暗号化又は解読を要求する全てのブロックにおいて必要
とされる暗号化及び解読動作の広範な説明が、[公開キ
ー暗号の数学(Mathematics ofPubl
ic−Key Cryptography ) J、
マーチン E。
とされる暗号化及び解読動作の広範な説明が、[公開キ
ー暗号の数学(Mathematics ofPubl
ic−Key Cryptography ) J、
マーチン E。
ヘルマン(Martin E、 Hellman )著
、サイエンティフィック・アメリカン、1979年8月
号、146〜157頁に見い出される。
、サイエンティフィック・アメリカン、1979年8月
号、146〜157頁に見い出される。
第5図を参照すると、ホスト・ハードウェアにおいてサ
ポート・ソフトウェアが実行する機能が示されている。
ポート・ソフトウェアが実行する機能が示されている。
保護されたディスクの初回の使用時にはFUI機能が行
なわれる。FUI機能は1、! ′″″″−
−+yovg−t−°パ−17”7を設置した77テム
の現行ドライブに、上記コピー保護システムを用いた未
使用の配布ディスクを挿入する時に開始する。ユーザは
、プログラム名をタイプし改行キーを押す事によってソ
フトウェアの実行を要求する。DO3は44に示すよう
に、その名前を有するファイルをディスク上で見い出し
、それをロードし、実行を開始する。このファイルは、
サポート・ハードウェアのサービス(初回使用時初期設
定、及びロード−解読−実行)を要求し且つ支持する前
述のプログラムである。このプログラムはホスト・ハー
ドウェア上で走る。サポート・ソフトウェアは46に示
すように、キー・インデックス−・ファイル(KIF)
と呼ばれるファイルが存在するか否かを判定するために
ディスク・ディレクトリを調べる。このファイルが存在
しなければ、それはディスクが初期設定されるべき事を
示している。このファイルは初期設定の過程で形成され
る。ソフトウェアの保護はこのファイルには決して依存
していない。このファイルが存在しない時、サポート・
ソフトウェアは、50に示すように、FUI機能の開始
を要求するためにサポート・ハードウェア中の通信レジ
スタにフラグをセットし、次に54及び56に示すよ5
にサポート・ハードウェアからのサービス要求を得るた
めにレジスタをポーリングする。代りに、サポート・ハ
ードウェアはサービス・プログラムを共通メモリにロー
ドし、読取りアクセスを許し、サポート・ソフトウェア
によるそのプログラムの実行を要求する事もできる。K
I Fが存在する場合、プログラムは52に示すよう
に、LDRを要求するため通信レジスタをセットする。
なわれる。FUI機能は1、! ′″″″−
−+yovg−t−°パ−17”7を設置した77テム
の現行ドライブに、上記コピー保護システムを用いた未
使用の配布ディスクを挿入する時に開始する。ユーザは
、プログラム名をタイプし改行キーを押す事によってソ
フトウェアの実行を要求する。DO3は44に示すよう
に、その名前を有するファイルをディスク上で見い出し
、それをロードし、実行を開始する。このファイルは、
サポート・ハードウェアのサービス(初回使用時初期設
定、及びロード−解読−実行)を要求し且つ支持する前
述のプログラムである。このプログラムはホスト・ハー
ドウェア上で走る。サポート・ソフトウェアは46に示
すように、キー・インデックス−・ファイル(KIF)
と呼ばれるファイルが存在するか否かを判定するために
ディスク・ディレクトリを調べる。このファイルが存在
しなければ、それはディスクが初期設定されるべき事を
示している。このファイルは初期設定の過程で形成され
る。ソフトウェアの保護はこのファイルには決して依存
していない。このファイルが存在しない時、サポート・
ソフトウェアは、50に示すように、FUI機能の開始
を要求するためにサポート・ハードウェア中の通信レジ
スタにフラグをセットし、次に54及び56に示すよ5
にサポート・ハードウェアからのサービス要求を得るた
めにレジスタをポーリングする。代りに、サポート・ハ
ードウェアはサービス・プログラムを共通メモリにロー
ドし、読取りアクセスを許し、サポート・ソフトウェア
によるそのプログラムの実行を要求する事もできる。K
I Fが存在する場合、プログラムは52に示すよう
に、LDRを要求するため通信レジスタをセットする。
いずれの場合も、54に示すように通信レジスタは読取
られ、56に示1−ようにサービスが要求されたか否か
が判定される。もしサービスが要求されて℃・なければ
、プログラムはステップ54の開始点に戻る。サービス
要求のあった時、プログラムは58に示すように通信し
F2スタを読取る。ステップ60に示すように、サポー
ト・ハードウェアがサービスの開始を望んでいるか否か
が判定される。これは同期手枕きである。そのような要
求の存在しない場合、プログラムはステップ58の開始
点に戻る。もし開始が要求されていれば、プログラムは
62に示すようにサービス要求の実行に進む。サービス
が終了した時、サポート・ソフトウェアのプログラムは
、サポート・ハードウェアからの別の要求を処理するた
めに通信レジスタ読取ステップ54の開始点に戻る。
られ、56に示1−ようにサービスが要求されたか否か
が判定される。もしサービスが要求されて℃・なければ
、プログラムはステップ54の開始点に戻る。サービス
要求のあった時、プログラムは58に示すように通信し
F2スタを読取る。ステップ60に示すように、サポー
ト・ハードウェアがサービスの開始を望んでいるか否か
が判定される。これは同期手枕きである。そのような要
求の存在しない場合、プログラムはステップ58の開始
点に戻る。もし開始が要求されていれば、プログラムは
62に示すようにサービス要求の実行に進む。サービス
が終了した時、サポート・ソフトウェアのプログラムは
、サポート・ハードウェアからの別の要求を処理するた
めに通信レジスタ読取ステップ54の開始点に戻る。
第6図は、同じ時間フレーム中にサポート・ハードウェ
ア内で実行されるモニタ・ソフトウェアを示している。
ア内で実行されるモニタ・ソフトウェアを示している。
サポート・ハードウェアは64に示すように通信レジス
タを読取る。次にサポート・ハードウェアは66に示す
よ5にFUI開始要求が起きたかどうかを判定する。そ
れが起きていれば、68に示すようにFUIが開始する
。このプログラムは第7図に詳細に示されている。FU
I開始要求が起きていなければ、プログラムはステップ
70に進み、LDRの開始が要求されているかどうかを
判定する。そのような要求がなければ、プログラムはス
テップ64の開始点に戻り、再び通信レジスタを読取る
。LDR開始要求が起きていれば、プログラムはステッ
プ72に進みLDRを開始する。このプログラムは第1
1図に詳細に説明されている。
タを読取る。次にサポート・ハードウェアは66に示す
よ5にFUI開始要求が起きたかどうかを判定する。そ
れが起きていれば、68に示すようにFUIが開始する
。このプログラムは第7図に詳細に示されている。FU
I開始要求が起きていなければ、プログラムはステップ
70に進み、LDRの開始が要求されているかどうかを
判定する。そのような要求がなければ、プログラムはス
テップ64の開始点に戻り、再び通信レジスタを読取る
。LDR開始要求が起きていれば、プログラムはステッ
プ72に進みLDRを開始する。このプログラムは第1
1図に詳細に説明されている。
7つり7重図−2gZc図はサポート・ノ・−ドウエア
で実行されるFUIプログラムを示す。サポート・ハー
ドウェアは通信レジスタ中のFUI要求を見て、ステッ
プ74に示すように、ホストから見て共通メモIJf;
!:書込専用にセットし、バス上の制御線を観測し始め
る。サポート・ハードウェア中σ)ファームウェアはホ
スト上で走っているサポート・ソフトウェアのコピーを
有している事に注意されたい。ホスト・プロセッサはそ
の命令をメモリから取り出さなければならな(・。もし
ホストによって取り出された命令の系列が、サポート・
・・−ドウエアに対して知られている系列と同一でなけ
れば、ユーザはトランザクションを記録するためにサポ
ート・ソフトウェアの彼自身のバージョンを用いて初期
設定トランザクションのコピーを得ようと試みている可
能性がある。この場合、サリ ポート・ハード
ウェアは動作を中断し、従ってユーザの書いたサポート
・ソフトウェアのバージョンを用いる事によって初期設
定トランザクションに関する情報を得るという試みはく
じかれる。ファイル又はメモリから偽造情報を供給する
いかなるサポート・ソフトウェアのバージョンも、この
時点で失敗させられる。バスの制御を他のマスクに譲る
シングル・オペレータ・システム(例エバインテル社の
マルチパス)においては、サポート・ハードウェアは同
じレベルの保護を得るために、ここまでの事をする必要
はない事に注意されたい。
で実行されるFUIプログラムを示す。サポート・ハー
ドウェアは通信レジスタ中のFUI要求を見て、ステッ
プ74に示すように、ホストから見て共通メモIJf;
!:書込専用にセットし、バス上の制御線を観測し始め
る。サポート・ハードウェア中σ)ファームウェアはホ
スト上で走っているサポート・ソフトウェアのコピーを
有している事に注意されたい。ホスト・プロセッサはそ
の命令をメモリから取り出さなければならな(・。もし
ホストによって取り出された命令の系列が、サポート・
・・−ドウエアに対して知られている系列と同一でなけ
れば、ユーザはトランザクションを記録するためにサポ
ート・ソフトウェアの彼自身のバージョンを用いて初期
設定トランザクションのコピーを得ようと試みている可
能性がある。この場合、サリ ポート・ハード
ウェアは動作を中断し、従ってユーザの書いたサポート
・ソフトウェアのバージョンを用いる事によって初期設
定トランザクションに関する情報を得るという試みはく
じかれる。ファイル又はメモリから偽造情報を供給する
いかなるサポート・ソフトウェアのバージョンも、この
時点で失敗させられる。バスの制御を他のマスクに譲る
シングル・オペレータ・システム(例エバインテル社の
マルチパス)においては、サポート・ハードウェアは同
じレベルの保護を得るために、ここまでの事をする必要
はない事に注意されたい。
サポート・ハードウェアは、76に示すように、暗号化
された解読キー(EDK)及びディスクの2重マーク付
は領域について記述した暗号化されたファイル(EMD
又は暗号化されたマーク記述子)が共通メモリにロード
される事を要求する。
された解読キー(EDK)及びディスクの2重マーク付
は領域について記述した暗号化されたファイル(EMD
又は暗号化されたマーク記述子)が共通メモリにロード
される事を要求する。
FUIプログラムは次にステップ78に進み、ホスト・
バスが要求に応じているか否かモニタし、ホスト・バス
上に予期しない動作を検出すると停止する(ステップ8
2ン。ホスト・システムが正しく命令に応じている場合
、プログラムは84に進み、サポート・ハードウェアは
、ハードウェア製造業者によって組み込まれたR8A秘
密解読キーを用いてEDK′ff:解読し、解読された
暗号化キー (DDK )’g作51iする。次にプロ
グラムは86に進み、サポート・ハードウェアはDDK
を用いてE M Dを解読し、解読されたマーク記述子
(DMD)を作成する。次にプログラムは88に進み、
2重マーク付は領域についての情報を判定する。
バスが要求に応じているか否かモニタし、ホスト・バス
上に予期しない動作を検出すると停止する(ステップ8
2ン。ホスト・システムが正しく命令に応じている場合
、プログラムは84に進み、サポート・ハードウェアは
、ハードウェア製造業者によって組み込まれたR8A秘
密解読キーを用いてEDK′ff:解読し、解読された
暗号化キー (DDK )’g作51iする。次にプロ
グラムは86に進み、サポート・ハードウェアはDDK
を用いてE M Dを解読し、解読されたマーク記述子
(DMD)を作成する。次にプログラムは88に進み、
2重マーク付は領域についての情報を判定する。
この情報はサポート・ハードウェアからのサービス要求
によって得られ、前述のマーク読取り方式により行なわ
れるので、2重マーク付は領域を非可逆的に変更する。
によって得られ、前述のマーク読取り方式により行なわ
れるので、2重マーク付は領域を非可逆的に変更する。
海賊行為を目的として、初期設定トランザクションの記
録を得るだめにディジタル記録装置を用いるという試み
は2つの方法によりこの時点で阻止しつる事に注意され
たい。サポート・ノ・−ドウエアにより行なわれる要求
は、余分のセクタ読取り及び書込みを含ませる事ができ
る。このようにすれば、圧倒的な量のデータを生成する
裏が可能であり、これを海賊版作成者は全て吟味しなけ
ればならない。サポート・ハードウェアの動作はユーザ
から隠されているので、海賊版作成者はトランザクショ
ンのどの部分が重要かについて何の手かかりも与えられ
ない。さらにサポート・ノ・−ドウエアは、これも安全
な場所にあるリアルタイム・クロックを用いて、上記の
混乱を特徴とする請求をランダム化し、その結果、与え
られたサポート・ハードウェア・システム上の各々の可
能な初期設定トランザクションが互いに異なるようにす
る事ができる。これらの手続きはステップ88及び10
2で実施されている。さらにMMマークを検出するため
にマーク付はセクタに書込まれるパターンは、成功した
初期設定のホスト側の動作を再現する事によってサポー
ト・ハードウェアをあざむこうとする努力を無効にする
ために、内容的にランダムする事ができる。
録を得るだめにディジタル記録装置を用いるという試み
は2つの方法によりこの時点で阻止しつる事に注意され
たい。サポート・ノ・−ドウエアにより行なわれる要求
は、余分のセクタ読取り及び書込みを含ませる事ができ
る。このようにすれば、圧倒的な量のデータを生成する
裏が可能であり、これを海賊版作成者は全て吟味しなけ
ればならない。サポート・ハードウェアの動作はユーザ
から隠されているので、海賊版作成者はトランザクショ
ンのどの部分が重要かについて何の手かかりも与えられ
ない。さらにサポート・ノ・−ドウエアは、これも安全
な場所にあるリアルタイム・クロックを用いて、上記の
混乱を特徴とする請求をランダム化し、その結果、与え
られたサポート・ハードウェア・システム上の各々の可
能な初期設定トランザクションが互いに異なるようにす
る事ができる。これらの手続きはステップ88及び10
2で実施されている。さらにMMマークを検出するため
にマーク付はセクタに書込まれるパターンは、成功した
初期設定のホスト側の動作を再現する事によってサポー
ト・ハードウェアをあざむこうとする努力を無効にする
ために、内容的にランダムする事ができる。
第8図を参照する。これは第7B図のブロック88のよ
り詳細な流れ図である。90に示すように、リアルタイ
ム・クロックが読取られ、92に示すように乱数列が生
成される。この数列は94に示すようにディスク上のセ
クタの数に対して正規化されている。9乙に示すように
、マーク付はセクタを示す全ての数は数列から構成され
る装置に98に示すように、2重マーク付は領域の測定
に必要なディスク読取り及び書込み回数に等しい数の要
素を持つ単調増加乱数列が生成される。この数列は10
0に示すように、92で生成された数列中の要素の数に
正規化される。次にプログラム1di7B図のブロック
102へ進む。
り詳細な流れ図である。90に示すように、リアルタイ
ム・クロックが読取られ、92に示すように乱数列が生
成される。この数列は94に示すようにディスク上のセ
クタの数に対して正規化されている。9乙に示すように
、マーク付はセクタを示す全ての数は数列から構成され
る装置に98に示すように、2重マーク付は領域の測定
に必要なディスク読取り及び書込み回数に等しい数の要
素を持つ単調増加乱数列が生成される。この数列は10
0に示すように、92で生成された数列中の要素の数に
正規化される。次にプログラム1di7B図のブロック
102へ進む。
これらの手続きの正味の効果は、後にFUI動作で用(
・るため02つの乱数列を生成する事である。1つの数
列はセクタ11″r号の乱数リストであるうこれらのセ
クタ12マークの測定に使われる読取り及び書込みを隠
蔽するために読取り及び書込みされる。もう1つの数列
は、妨害用の読取り及び書込みの系列中で意味のある読
取又は書込みの行なわれるべき時を示す番号のリストで
ある。このリストによって示される動作の系列は、ユー
ザには利用できない情報(リアルタイム・クロックのべ
状態及び乱数化アルゴリズム)に依存して
いる。
・るため02つの乱数列を生成する事である。1つの数
列はセクタ11″r号の乱数リストであるうこれらのセ
クタ12マークの測定に使われる読取り及び書込みを隠
蔽するために読取り及び書込みされる。もう1つの数列
は、妨害用の読取り及び書込みの系列中で意味のある読
取又は書込みの行なわれるべき時を示す番号のリストで
ある。このリストによって示される動作の系列は、ユー
ザには利用できない情報(リアルタイム・クロックのべ
状態及び乱数化アルゴリズム)に依存して
いる。
従って、それは、ホストの供給するデータを偽造する事
で2つ以上のシステムの初期設定を可能にしようとする
試みン阻止するように作用する。
で2つ以上のシステムの初期設定を可能にしようとする
試みン阻止するように作用する。
102に示すように、引数としてセクタ系列の次の要素
を用いたサービス要求が通信レジスタ中に置かれる。プ
ログラム・ステップ102のより詳細な流れ図が第9A
図及び第9B図の流れ図に示されている。104に示す
ように、セクタ系列中の次の要素が決定される。セクタ
系列中の番号の位置H1106に示すように、第8図の
ステップIC1Oで用意された数列中のどれかの番号に
等しいか否かを判定するだめに検査される。但し最初の
要求の時は、「次の」要素はセクタ系列の第1の要素で
ある。この判定に応答して、108に示すように、判定
結果がイエスであればプログラムは110に進み、そこ
でMDデータを得るために必要な次の読取り又は書込み
が要求される。次にプログラムは112に示すようにセ
クタ内容を安全なRAMに移し、次に114に示すよう
に共通メモリを書込み専用にセットする。もし108の
質問に対する応答がノーであれば、プログラムは116
に進み、この番号が再び数列中に現れたか否かが判定さ
れる。この判定は118で行なわれ、もしその答がイエ
スであればプログラムは120に進み、その番号δで有
するセクタの読取を要求する。次に122に示すように
、共通メモリからセクタ内容を安全なRAMに移す。こ
れは後に妨害用書込み動作に使用するためである。次に
プログラムは114に進み、共通メモリを書込み専用に
セットする。もし118における応答がなければ、プロ
グラムは124に進み、そのセクタ系列中に以前に奇数
回番号が現れたか否かを判定する。この判定はステップ
126で行なわれ、もし答がイエスであればプログラム
はステップ128に移り、記憶されたセクタの内容を共
通メモリに移動させ共通メモリを読取−書込み用にセッ
トする。次にステップ130に移り、共通メモリの内容
をそのセクタに書込むように要求する。ステップ126
で応答が存在しない場合、プログラムはステップ152
に移り、その番号を有するセクタの読取を要求する。ス
テップ134に示すように、これらの可能なコースの各
々に必要な時間を同じにするために、休止状態が生じる
。これは、サポート・ハードウェアによって行なわれて
いる機能。
を用いたサービス要求が通信レジスタ中に置かれる。プ
ログラム・ステップ102のより詳細な流れ図が第9A
図及び第9B図の流れ図に示されている。104に示す
ように、セクタ系列中の次の要素が決定される。セクタ
系列中の番号の位置H1106に示すように、第8図の
ステップIC1Oで用意された数列中のどれかの番号に
等しいか否かを判定するだめに検査される。但し最初の
要求の時は、「次の」要素はセクタ系列の第1の要素で
ある。この判定に応答して、108に示すように、判定
結果がイエスであればプログラムは110に進み、そこ
でMDデータを得るために必要な次の読取り又は書込み
が要求される。次にプログラムは112に示すようにセ
クタ内容を安全なRAMに移し、次に114に示すよう
に共通メモリを書込み専用にセットする。もし108の
質問に対する応答がノーであれば、プログラムは116
に進み、この番号が再び数列中に現れたか否かが判定さ
れる。この判定は118で行なわれ、もしその答がイエ
スであればプログラムは120に進み、その番号δで有
するセクタの読取を要求する。次に122に示すように
、共通メモリからセクタ内容を安全なRAMに移す。こ
れは後に妨害用書込み動作に使用するためである。次に
プログラムは114に進み、共通メモリを書込み専用に
セットする。もし118における応答がなければ、プロ
グラムは124に進み、そのセクタ系列中に以前に奇数
回番号が現れたか否かを判定する。この判定はステップ
126で行なわれ、もし答がイエスであればプログラム
はステップ128に移り、記憶されたセクタの内容を共
通メモリに移動させ共通メモリを読取−書込み用にセッ
トする。次にステップ130に移り、共通メモリの内容
をそのセクタに書込むように要求する。ステップ126
で応答が存在しない場合、プログラムはステップ152
に移り、その番号を有するセクタの読取を要求する。ス
テップ134に示すように、これらの可能なコースの各
々に必要な時間を同じにするために、休止状態が生じる
。これは、サポート・ハードウェアによって行なわれて
いる機能。
をユーザの視点から隠すのに役立つ。次にプログラムは
114に進み、共通メモリを書込専用にセットする。
114に進み、共通メモリを書込専用にセットする。
これらの手続きの正味の効果は、必要な読取り及び書込
み動作が埋め込まれたディスク読取り及び書込みのラン
ダムな系列をホスト・システムに要求する事である。混
乱を目的としてアクセスされるセクタの系列及び測定ア
クセスの行なわれるセクタ系列中の点は、ステップ88
で生成された2つの数列によって判定される。これらの
数列はユニークであり、FUIの時にサポート・/・−
ドウエアによって決定されるので、トランザクションを
偽造しようとする試みは妨げられる。
み動作が埋め込まれたディスク読取り及び書込みのラン
ダムな系列をホスト・システムに要求する事である。混
乱を目的としてアクセスされるセクタの系列及び測定ア
クセスの行なわれるセクタ系列中の点は、ステップ88
で生成された2つの数列によって判定される。これらの
数列はユニークであり、FUIの時にサポート・/・−
ドウエアによって決定されるので、トランザクションを
偽造しようとする試みは妨げられる。
第7B図に戻る。次にプログラムは102かも166へ
進み、バスをモニタする。ステップ168ではホスト・
システムが正しく動作しているかどうかのテストが行な
われる。ホスト・システムがサポート・ハードウェアの
要求に対して正しく応じていなげれば、プログラムはス
テップ140に移り、停止する。そのような事がなけれ
ば、プログラムはステップ141に進み、サービスに関
する最後の要求が終了したか否かがテストされる。
進み、バスをモニタする。ステップ168ではホスト・
システムが正しく動作しているかどうかのテストが行な
われる。ホスト・システムがサポート・ハードウェアの
要求に対して正しく応じていなげれば、プログラムはス
テップ140に移り、停止する。そのような事がなけれ
ば、プログラムはステップ141に進み、サービスに関
する最後の要求が終了したか否かがテストされる。
もし答がノーであれば、プログラムはステップ102に
戻り、もう1回ループを回る。判定結果がイエスであれ
ば、プログラムはステップ142に進み、データからマ
ーク記述子(MD)を計算する。サポート・ハードウェ
アは、サポート・ソフトウェアによって共通メモリにロ
ードされた重要なデータを安全なメモリに移動させる。
戻り、もう1回ループを回る。判定結果がイエスであれ
ば、プログラムはステップ142に進み、データからマ
ーク記述子(MD)を計算する。サポート・ハードウェ
アは、サポート・ソフトウェアによって共通メモリにロ
ードされた重要なデータを安全なメモリに移動させる。
次にそのデータからMDが導出される。ステップ144
に示すように、DMDとの比較が行なわれ、ステップ1
45に示すように有効なMDか否かがテストされる。サ
ポート・ハードウェアは、DMDをMDと比軸して、M
DがDMDの(ハードウェアを原因とする)変動限界内
にあるか否かを判定する。
に示すように、DMDとの比較が行なわれ、ステップ1
45に示すように有効なMDか否かがテストされる。サ
ポート・ハードウェアは、DMDをMDと比軸して、M
DがDMDの(ハードウェアを原因とする)変動限界内
にあるか否かを判定する。
、4 もしそうでなげれば、ディスクは偽造と
判定され、ステップ146に示すように処理は停止する
。
判定され、ステップ146に示すように処理は停止する
。
また、いくつかの2重マーク付は領域及びいくつかのD
MDがディスク上に設けられている場合、サポート・ハ
ードウェアはそれらで再試行できる。
MDがディスク上に設けられている場合、サポート・ハ
ードウェアはそれらで再試行できる。
MDが有効な場合、プログラムはステップ148に進み
、2重マークが失なわれたかどうかを確認する。この確
認は前述のステップ88〜144と同様である。サポー
ト・ハードウェアは、2重マーク付は領域についてのデ
ータの新しい組をサポート・ソフトウェアによって得さ
せる。もし最初のMDからの比較結果が許容限界内であ
り、新しいMDがDPマークが破壊されシステムに存在
するディスクがオリジナルの配布ディスクである(これ
はそのMMマークのパターンによって示される)事を示
すならば、ステップ150のテストは真である事がわか
る。さもなければ、プログラムはステップ152に進み
、停止する。マークが消去された事が確認されると、プ
ログラムはステップ154に進み、キー・インデックス
(K I )が共通メモリに置かれ、KIによって参照
されるDDKがEEPROMに記憶される。共通メモリ
はステップ155で読取/書込用にセットされる。
、2重マークが失なわれたかどうかを確認する。この確
認は前述のステップ88〜144と同様である。サポー
ト・ハードウェアは、2重マーク付は領域についてのデ
ータの新しい組をサポート・ソフトウェアによって得さ
せる。もし最初のMDからの比較結果が許容限界内であ
り、新しいMDがDPマークが破壊されシステムに存在
するディスクがオリジナルの配布ディスクである(これ
はそのMMマークのパターンによって示される)事を示
すならば、ステップ150のテストは真である事がわか
る。さもなければ、プログラムはステップ152に進み
、停止する。マークが消去された事が確認されると、プ
ログラムはステップ154に進み、キー・インデックス
(K I )が共通メモリに置かれ、KIによって参照
されるDDKがEEPROMに記憶される。共通メモリ
はステップ155で読取/書込用にセットされる。
次に通信レジスタが、ステップ156に示すように、キ
ー・インデックス・ファイル(KIF)中にKIを記憶
するために、ファイル形成及び書込の要求をセットする
。そしてステップ158に示すようにプログラムは終了
する。
ー・インデックス・ファイル(KIF)中にKIを記憶
するために、ファイル形成及び書込の要求をセットする
。そしてステップ158に示すようにプログラムは終了
する。
ホスト中で実行されているサポート・ソフトウェアは、
要求を処理し、KIFを形成しその中にK Iを記憶す
る事によって要求に応答する。
要求を処理し、KIFを形成しその中にK Iを記憶す
る事によって要求に応答する。
このようにしてFUI機能が終了すると、サポート・ソ
フトウェアは、ロード−解読−実行機能を要求するか又
はユーザにシステムの制御を戻すことができる。
フトウェアは、ロード−解読−実行機能を要求するか又
はユーザにシステムの制御を戻すことができる。
この段階で、ディスク及びサポート・ノ・−ドウエアは
共にFUI機能によって変更されている。
共にFUI機能によって変更されている。
2vマーク付は領域は、MMマークを構成する磁化不可
能領域を発見する過程で破壊された。またサポート・ハ
ードウェアは新しく・DDKをそのEBPROMに付加
する県によって変更されている。
能領域を発見する過程で破壊された。またサポート・ハ
ードウェアは新しく・DDKをそのEBPROMに付加
する県によって変更されている。
このDDKは、ホスト・ノ・−ドウエア上のユーザ・メ
モリ中には決して露出されない。その暗号解読後、ユー
ザは、ただそれを参照するために、ユーザにはアクセス
不可能なメモリへのインデックスを与えられるだけであ
る。FUI以前に作成されたバックアップ・コピーはK
IFを持たないので無効である。従ってそれらはFTJ
Iを行なわなげれば使用できないが、それらのディスク
は正しい2重マーク付は領域が欠如しているので、FU
工に失敗する。オリジナル・ディスク上のマーク領域は
後の動作では使用されず、他のサポート・ハードウェア
を装備したシステムに受は入れられる形ではない。従っ
て他のシステムでEDKがDDKに解読され初期設定動
作が行なわれる事はない。KIFは他のシステムでは正
しい解読キーを参照しない。
モリ中には決して露出されない。その暗号解読後、ユー
ザは、ただそれを参照するために、ユーザにはアクセス
不可能なメモリへのインデックスを与えられるだけであ
る。FUI以前に作成されたバックアップ・コピーはK
IFを持たないので無効である。従ってそれらはFTJ
Iを行なわなげれば使用できないが、それらのディスク
は正しい2重マーク付は領域が欠如しているので、FU
工に失敗する。オリジナル・ディスク上のマーク領域は
後の動作では使用されず、他のサポート・ハードウェア
を装備したシステムに受は入れられる形ではない。従っ
て他のシステムでEDKがDDKに解読され初期設定動
作が行なわれる事はない。KIFは他のシステムでは正
しい解読キーを参照しない。
FUI後、ユーザはディスクのバックアップ・コピーを
何枚でも作成できる。さらにディスク上のファイルのコ
ピーをユーザのハード・ディスク上に置く事もできる。
何枚でも作成できる。さらにディスク上のファイルのコ
ピーをユーザのハード・ディスク上に置く事もできる。
情報(DDK)は、配布ソフトウェアの特定のコピーを
初期設定したサポート・ハードウェアの中にしか、使用
可能な(解読された)形で存在しない。従ってユーザの
作成したバックアップ・コピーは他のユーザには使用で
きないが、(FUI後に作成された〕各々のコピーは最
初のユーザには完全に良好なバックアンプである。
初期設定したサポート・ハードウェアの中にしか、使用
可能な(解読された)形で存在しない。従ってユーザの
作成したバックアップ・コピーは他のユーザには使用で
きないが、(FUI後に作成された〕各々のコピーは最
初のユーザには完全に良好なバックアンプである。
もし保護されたディスクの海賊版作成がFUI後に試み
られるとすれば、海賊版作成者はサポート・ハードウェ
アなしに作動するコピー又はサポート・ハードウェアな
有する他のシステムで作動可能なコピーの作成を試みる
事ができよう。しかしサポート・ハードウェアを持たな
いシステム用のコピーを作成する事は、FUI前と同じ
障害に直面するであろう。またサポート・ハードウェア
を有する他のシステムに移すために(2枚以上の)任意
の数のディスクのコピーを作成する事も以前と同様の困
4i1に直面するであろう。DPマークを配布ディスク
上で再生して、それを他のシステム′: 上
でのFUIに再使用できるよ5 j//:するという可
能性もある。もしこの困・・羨な(特殊な装置を必要と
する)仕事が成功したとしても、その成功はターゲット
・システム上でFUI動作を実行する事によってしか判
定できないであろう。それには、おそら(回復を行なう
毎に何回かの再試行が必要であろう。このようにして再
試行を行なうコスト及び(MMマークを有する)特定の
1枚だけのディスクしか海賊版ソフトウェアを保持でき
ないという事実により、海賊版作成に成功したアプリケ
ーションの利用性及び普及は大幅に減少するであろう。
られるとすれば、海賊版作成者はサポート・ハードウェ
アなしに作動するコピー又はサポート・ハードウェアな
有する他のシステムで作動可能なコピーの作成を試みる
事ができよう。しかしサポート・ハードウェアを持たな
いシステム用のコピーを作成する事は、FUI前と同じ
障害に直面するであろう。またサポート・ハードウェア
を有する他のシステムに移すために(2枚以上の)任意
の数のディスクのコピーを作成する事も以前と同様の困
4i1に直面するであろう。DPマークを配布ディスク
上で再生して、それを他のシステム′: 上
でのFUIに再使用できるよ5 j//:するという可
能性もある。もしこの困・・羨な(特殊な装置を必要と
する)仕事が成功したとしても、その成功はターゲット
・システム上でFUI動作を実行する事によってしか判
定できないであろう。それには、おそら(回復を行なう
毎に何回かの再試行が必要であろう。このようにして再
試行を行なうコスト及び(MMマークを有する)特定の
1枚だけのディスクしか海賊版ソフトウェアを保持でき
ないという事実により、海賊版作成に成功したアプリケ
ーションの利用性及び普及は大幅に減少するであろう。
第10図はFUI手続き中で利用される、ホストが正し
く動作しているか否かを監視する手続きの流れ図である
。ホストの監視は、サポート・ハードウェアがホストよ
りも大幅に速いか又はサポート・ハードウェアがこの仕
方に専用の高速のハードウェアケ含んでいる事を前提と
している。プログラムが始動すると、ステップ160に
示すようにホスト・バスの状態が読取られる。次にステ
ップ162に示すように、ホストが通信レジスタをポー
リングしている(これがホストの行なうべき事の全てで
、ちる)か否かが判定される。そのようなポーリングが
、起きている事の全てでなげれば、プログラムはステッ
プ164に進み停止する。
く動作しているか否かを監視する手続きの流れ図である
。ホストの監視は、サポート・ハードウェアがホストよ
りも大幅に速いか又はサポート・ハードウェアがこの仕
方に専用の高速のハードウェアケ含んでいる事を前提と
している。プログラムが始動すると、ステップ160に
示すようにホスト・バスの状態が読取られる。次にステ
ップ162に示すように、ホストが通信レジスタをポー
リングしている(これがホストの行なうべき事の全てで
、ちる)か否かが判定される。そのようなポーリングが
、起きている事の全てでなげれば、プログラムはステッ
プ164に進み停止する。
そのようなポーリングが起きていれば、プログラムはス
テップ160に進み、ホストが動作を開始するようVC
信号する。ホストによって実行される次の命令が、ステ
ップ168に示すよ5に、カウンタ・セット値と共にR
OMから取り出されるカウンタ・セット値は、ホストの
動作の命令取り出しフェーズを実行するのに必要な時間
の近似値でちる。次にカウンタはステップ170に示す
ようにこの値にセットされる。次にサポート・ハードウ
ェアは、ステップ172に示すように、(バス・レシー
バにより)メモリ取り出しに関してホスト・バスを監0
7.する。次にステップ174に示すように、取り出し
に許された時間が終了したか否かを見るために、カウン
タがゼロかどうかテストされる。もしカウンタが0に等
しければ、プログラムtよステップ176に進み停止す
る。もしカウンタが0に等しくなげれば、プログラムは
ステップ178に進み、期待された命令が取り出された
か否かるf判定する。もし期待された命令が取り出され
なかったη【らば、プログラムはステップ172に戻る
。もし期待された命令が取り出されたならば、プログラ
ムはステップ180に進み、取り出された命令が最後の
命令か否かを判定する。もしこれが最後の命令ならば、
プログラムはステップ182に進み、この手続ぎを出る
。これが最後の命令でなければ、プログラムはステップ
168に戻り、ホストが正しく応じていればホストが取
り出すものと期待される次の命令を取り出す。
テップ160に進み、ホストが動作を開始するようVC
信号する。ホストによって実行される次の命令が、ステ
ップ168に示すよ5に、カウンタ・セット値と共にR
OMから取り出されるカウンタ・セット値は、ホストの
動作の命令取り出しフェーズを実行するのに必要な時間
の近似値でちる。次にカウンタはステップ170に示す
ようにこの値にセットされる。次にサポート・ハードウ
ェアは、ステップ172に示すように、(バス・レシー
バにより)メモリ取り出しに関してホスト・バスを監0
7.する。次にステップ174に示すように、取り出し
に許された時間が終了したか否かを見るために、カウン
タがゼロかどうかテストされる。もしカウンタが0に等
しければ、プログラムtよステップ176に進み停止す
る。もしカウンタが0に等しくなげれば、プログラムは
ステップ178に進み、期待された命令が取り出された
か否かるf判定する。もし期待された命令が取り出され
なかったη【らば、プログラムはステップ172に戻る
。もし期待された命令が取り出されたならば、プログラ
ムはステップ180に進み、取り出された命令が最後の
命令か否かを判定する。もしこれが最後の命令ならば、
プログラムはステップ182に進み、この手続ぎを出る
。これが最後の命令でなければ、プログラムはステップ
168に戻り、ホストが正しく応じていればホストが取
り出すものと期待される次の命令を取り出す。
これでFUI手続きは終了する。アプリケーション・ソ
フトウェアをその後に使用する時は、ユーザは初期設定
された配布ディスク又(dディスクのバックアップ・コ
ピーを彼のシステムの現行ドライブに挿入する。もしデ
ィスクをハード・ディスク上にバックアップしていれば
、このステップはとばしてもよい。次にユーザは、プロ
グラム名をタイプし改行キーを押す事によってアプリケ
ーション・ソフトウェアの実行を要求する。DO8は、
その名前を持ったファイルをディスク上に見い出し、そ
れをロードし、そしてその実行を始める。このファイル
は、実際は、サポート・ハードウェアのサービス(FU
I及びLDR)g要求し支援する前述のサポート・ソフ
トウェアである。
フトウェアをその後に使用する時は、ユーザは初期設定
された配布ディスク又(dディスクのバックアップ・コ
ピーを彼のシステムの現行ドライブに挿入する。もしデ
ィスクをハード・ディスク上にバックアップしていれば
、このステップはとばしてもよい。次にユーザは、プロ
グラム名をタイプし改行キーを押す事によってアプリケ
ーション・ソフトウェアの実行を要求する。DO8は、
その名前を持ったファイルをディスク上に見い出し、そ
れをロードし、そしてその実行を始める。このファイル
は、実際は、サポート・ハードウェアのサービス(FU
I及びLDR)g要求し支援する前述のサポート・ソフ
トウェアである。
サポート・ソフトウェアはディスク・ディレクトリを調
べ、そのディスクが初期設定された事を示すファイルが
存在するかどうかを判定する。このファイルはK I
Fである。サポート・ソフトウェアばKIF及びアプリ
ケーションの暗号化部分を共通メモリにロードする。そ
して、LDR機能の開始を要求するためにサポート・ハ
ードウェア中の通信レジスタにフラグがセットされる。
べ、そのディスクが初期設定された事を示すファイルが
存在するかどうかを判定する。このファイルはK I
Fである。サポート・ソフトウェアばKIF及びアプリ
ケーションの暗号化部分を共通メモリにロードする。そ
して、LDR機能の開始を要求するためにサポート・ハ
ードウェア中の通信レジスタにフラグがセットされる。
第11図を参照すると、LDR機能に関する流れ図が示
されている。LDR機能はステップ72に示すように開
始する。サポート・ハードウェアは、ステップ184及
び18乙に示すように、サポート・ソフトウェアによっ
て共通メモリにロードされたデータを安全なメモリに移
す事によってLDR動作ヲ開始する。その代りに、サポ
ート・ハードウェアは、解読の中間結果又は最終結果が
ユーザに利用できない事を保証するために、ホストが共
通メモリを読む事を禁止してもよい。
されている。LDR機能はステップ72に示すように開
始する。サポート・ハードウェアは、ステップ184及
び18乙に示すように、サポート・ソフトウェアによっ
て共通メモリにロードされたデータを安全なメモリに移
す事によってLDR動作ヲ開始する。その代りに、サポ
ート・ハードウェアは、解読の中間結果又は最終結果が
ユーザに利用できない事を保証するために、ホストが共
通メモリを読む事を禁止してもよい。
ステップ188では、暗号化されたファイルが完全か否
かが判定される。これはファイルが共通メモリよりも大
きい時に必要である。ファイルが不完全な時、プログラ
ムはステップ189に進み、ファイルの次の部分を要求
し、ステップ186に戻る。もしファイルが完全であれ
ば、プログラム(τ1ステップ190に進み、ホスト上
のサポート・ソフトウェアに、アプリケーションの非暗
号化部分をロードし実行するように指令するために、通
信レジスタをセットする。サポート・ハードウェアはス
テップ200に示すように、ソフトウェアを解読し実行
を[:4始する。サポート・ソフトウェアは、アプリケ
ーションの非暗号化部分]でホスト・コンピュータの作
業メモリにロードし、アプリケーションの非暗号化部分
の実行を始める事によってそれ自身の実行ケ終了する。
かが判定される。これはファイルが共通メモリよりも大
きい時に必要である。ファイルが不完全な時、プログラ
ムはステップ189に進み、ファイルの次の部分を要求
し、ステップ186に戻る。もしファイルが完全であれ
ば、プログラム(τ1ステップ190に進み、ホスト上
のサポート・ソフトウェアに、アプリケーションの非暗
号化部分をロードし実行するように指令するために、通
信レジスタをセットする。サポート・ハードウェアはス
テップ200に示すように、ソフトウェアを解読し実行
を[:4始する。サポート・ソフトウェアは、アプリケ
ーションの非暗号化部分]でホスト・コンピュータの作
業メモリにロードし、アプリケーションの非暗号化部分
の実行を始める事によってそれ自身の実行ケ終了する。
サポート・ソフトウェアは、サポート・ハードウェアに
対するさらに別のサービス呼び出しに関してそのサポー
トが必要であれば、終了した後もオペレーティング・シ
ステム・サービスの拡張部としてメモリ中に留ることが
できる。サポート・ハードウェアの安全なメモリ中にあ
る解読されたアプリケーションの部分は、ホストの作業
メモリ中のアプリケーションの部分と共に(安全なメモ
リ中で)並行して実行される。こ才しらの部分は共通メ
モリ及び通信レジスタを介し7て通信することができる
。アプリケーションの終了時に、ステップ202に示す
ようにLDR機能を出る。
対するさらに別のサービス呼び出しに関してそのサポー
トが必要であれば、終了した後もオペレーティング・シ
ステム・サービスの拡張部としてメモリ中に留ることが
できる。サポート・ハードウェアの安全なメモリ中にあ
る解読されたアプリケーションの部分は、ホストの作業
メモリ中のアプリケーションの部分と共に(安全なメモ
リ中で)並行して実行される。こ才しらの部分は共通メ
モリ及び通信レジスタを介し7て通信することができる
。アプリケーションの終了時に、ステップ202に示す
ようにLDR機能を出る。
プログラムの実行を停止させホスト・メモリのロード可
能tc 2値イメージを形成しようとする事によって海
賊行為を行:+、、おうとしても、その・rターフ2は
アプリケーションの使用可能なバージョンで(−j、な
い。というのはサポート・ハードウェア上で実行される
ソフトウェアの部分が利用不可能だからである。
能tc 2値イメージを形成しようとする事によって海
賊行為を行:+、、おうとしても、その・rターフ2は
アプリケーションの使用可能なバージョンで(−j、な
い。というのはサポート・ハードウェア上で実行される
ソフトウェアの部分が利用不可能だからである。
従って、このシステムは、単一の機械使用いる斤lを除
けば、保Fj%されたコードにアクセスするあらゆる道
を閉ざしている。バックアップ・ディスクの作成を含め
7’l、正1.い所有者による使用は基本的には妨げら
れない。
けば、保Fj%されたコードにアクセスするあらゆる道
を閉ざしている。バックアップ・ディスクの作成を含め
7’l、正1.い所有者による使用は基本的には妨げら
れない。
G1発明の効果
本発明によれば、改良されたソフトウェア・コピー保護
機構が提供される。
機構が提供される。
また、本発明の1態徐によれば所与のソフトウェアが単
一の計算機械上でしか動作できないような、改良された
ソフトウェア・コピー保護機構が提供される。
一の計算機械上でしか動作できないような、改良された
ソフトウェア・コピー保護機構が提供される。
また、本発明の1態様によれば所与のソフトウェア及び
そのコピーが単一の計算機械上でしか動作できないよう
な、改良されたソフトウェア コピー保護機構が提供さ
れる。
そのコピーが単一の計算機械上でしか動作できないよう
な、改良されたソフトウェア コピー保護機構が提供さ
れる。
さらに、本発明の1態様によれば、ディスク又は他の磁
気媒体使用いて配布されるソフトウェアを単一の計算機
械上でしか使用できないようにすると共に、計算機械の
一部分を形成する干渉防護型のコプロセッサ中に記憶さ
れたプログラムの実行によってオリジナル・ディスクを
変更するまではオリジナル・ディスクが機能的にコピー
不可能であり、且つオIJ j)ナル・ディスク上の変
更されたソフトウェアはコピー可能であり、そのコピー
rよその変更を行なったコプロセッサを含む計算機1戊
上でしか動作しないような、改良されたソフトウェア・
コピー保i(% 機構が提供される。
気媒体使用いて配布されるソフトウェアを単一の計算機
械上でしか使用できないようにすると共に、計算機械の
一部分を形成する干渉防護型のコプロセッサ中に記憶さ
れたプログラムの実行によってオリジナル・ディスクを
変更するまではオリジナル・ディスクが機能的にコピー
不可能であり、且つオIJ j)ナル・ディスク上の変
更されたソフトウェアはコピー可能であり、そのコピー
rよその変更を行なったコプロセッサを含む計算機1戊
上でしか動作しないような、改良されたソフトウェア・
コピー保i(% 機構が提供される。
、1.s 1図・;rシサポート・)・−ドウエアを含
む計算システム全体の概略図、 第2A図〜−732D図は2重マーク付領域をいかにし
て形成するかを示す図、 第3図はデータ・レコードに対する2重マーク付領域の
配置を示す、ディスクのセクタの部分?示す図、 ;−ニーr J A図〜第4D図は、2重マーク付領域
の一4’7在を確認するためにディスクのセクタに読み
書きI を行tc 5工程を示す図、第5図
(はホスト計算機上で実行されるサポート・ソフトウェ
アを説明する流れ図 第6図はサポート・ハードウェア上で実行されるモニタ
・ソフトウェアを説明する流れ図、第7図は第7A図〜
第7C図の関係を説明する図、 iZA図〜第7C図はサポート・ハードウェアで実行さ
れる初回使用時初期設定(FUI)ソフトウェアを説明
する流れ図、 第8図は1197B図のステップ88の詳細な流れ図、 第9A図及び第9B図は第7B図のステップ102の詳
細な流れ図、 第10図は第7A図のステップ78及び第7B図のステ
ップ136の流れ図、 第11図はロード−解読−実行(Ll)R)プログラム
の流れ図である。 出願人 インターf”flf)L/−d之ネス・マシー
ンズ・コーポレーション代理人 弁理士 頓 宮
孝 −(外1名) 第3図 セクタ・ヘッダ デニタ、レコード
CRCLコード′
サセートj、−ドウ、アで実行8耗るモニタ・
ソフトゆエア 第6図 第7C図 86−blら FLJI中のス子ツブ88 第8図 88又1工141から 第9B図 136へ
む計算システム全体の概略図、 第2A図〜−732D図は2重マーク付領域をいかにし
て形成するかを示す図、 第3図はデータ・レコードに対する2重マーク付領域の
配置を示す、ディスクのセクタの部分?示す図、 ;−ニーr J A図〜第4D図は、2重マーク付領域
の一4’7在を確認するためにディスクのセクタに読み
書きI を行tc 5工程を示す図、第5図
(はホスト計算機上で実行されるサポート・ソフトウェ
アを説明する流れ図 第6図はサポート・ハードウェア上で実行されるモニタ
・ソフトウェアを説明する流れ図、第7図は第7A図〜
第7C図の関係を説明する図、 iZA図〜第7C図はサポート・ハードウェアで実行さ
れる初回使用時初期設定(FUI)ソフトウェアを説明
する流れ図、 第8図は1197B図のステップ88の詳細な流れ図、 第9A図及び第9B図は第7B図のステップ102の詳
細な流れ図、 第10図は第7A図のステップ78及び第7B図のステ
ップ136の流れ図、 第11図はロード−解読−実行(Ll)R)プログラム
の流れ図である。 出願人 インターf”flf)L/−d之ネス・マシー
ンズ・コーポレーション代理人 弁理士 頓 宮
孝 −(外1名) 第3図 セクタ・ヘッダ デニタ、レコード
CRCLコード′
サセートj、−ドウ、アで実行8耗るモニタ・
ソフトゆエア 第6図 第7C図 86−blら FLJI中のス子ツブ88 第8図 88又1工141から 第9B図 136へ
Claims (1)
- 【特許請求の範囲】 下記の諸ステップを含む、磁気媒体上に記憶されたソフ
トウェアのコピー保護方法。 (a)各々複数のビット記憶位置を有する複数のセクタ
に分割された複数のトラックの形に上記媒体をフォーマ
ットするステップ; (b)第1のマークを形成するために、少なくとも1つ
のトラックの少なくとも1つのセクタの少なくとも1つ
のビット記憶位置に物理的マークを形成するステツプ; (c)第2のマークを形成するために、上記物理的マー
クを含む磁気媒体の領域に磁界を印加するステップ; (d)上記物理的マークを含むセクタを少なくとも除い
た全てのセクタにおいて上記磁気媒体を再フォーマット
するステップ; (e)コピー不可能な上記第1のマーク及び第2のマー
クによつて表現された情報を、上記媒体上に記憶された
上記ソフトウェアの一部として用いるステップ。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US06/651,184 US4644493A (en) | 1984-09-14 | 1984-09-14 | Implementing a shared higher level of privilege on personal computers for copy protection of software |
| US651184 | 1984-09-14 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS6172345A true JPS6172345A (ja) | 1986-04-14 |
| JPH0312744B2 JPH0312744B2 (ja) | 1991-02-20 |
Family
ID=24611909
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP60157145A Granted JPS6172345A (ja) | 1984-09-14 | 1985-07-18 | ソフトウエアのコピー保護装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (2) | US4644493A (ja) |
| EP (1) | EP0174472B1 (ja) |
| JP (1) | JPS6172345A (ja) |
| DE (1) | DE3587658T2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63125030A (ja) * | 1986-11-05 | 1988-05-28 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 遠隔端末アクセス方法 |
| US6347846B1 (en) | 1996-01-08 | 2002-02-19 | Kabushiki Kaisha Toshiba | Method and an apparatus to control copying from a data providing device to a data receiving device |
| JP2002544592A (ja) * | 1999-05-10 | 2002-12-24 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 複写保護された素材の選別方法 |
Families Citing this family (165)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0673221B2 (ja) * | 1985-07-27 | 1994-09-14 | ティーディーケイ株式会社 | 磁気記録媒体の複製防止方法 |
| US4757533A (en) * | 1985-09-11 | 1988-07-12 | Computer Security Corporation | Security system for microcomputers |
| GB8619989D0 (en) * | 1986-08-16 | 1986-09-24 | Modray Ltd | Controlling length of time |
| US5050213A (en) * | 1986-10-14 | 1991-09-17 | Electronic Publishing Resources, Inc. | Database usage metering and protection system and method |
| US4977594A (en) * | 1986-10-14 | 1990-12-11 | Electronic Publishing Resources, Inc. | Database usage metering and protection system and method |
| EP0268139A3 (en) * | 1986-11-05 | 1991-04-10 | International Business Machines Corporation | Manipulating rights-to-execute in connection with a software copy protection mechanism |
| US5146575A (en) * | 1986-11-05 | 1992-09-08 | International Business Machines Corp. | Implementing privilege on microprocessor systems for use in software asset protection |
| US5109413A (en) * | 1986-11-05 | 1992-04-28 | International Business Machines Corporation | Manipulating rights-to-execute in connection with a software copy protection mechanism |
| US4817140A (en) * | 1986-11-05 | 1989-03-28 | International Business Machines Corp. | Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor |
| DE3751047T2 (de) * | 1986-11-05 | 1995-08-10 | Ibm | Softwareschutzsystem einschliesslich eines Einschlüsselkryptosystems, eines auf Hardware beruhenden Genehmigungssystems und eines geschützten Zusatzprozessors. |
| DE3642629A1 (de) * | 1986-12-13 | 1988-06-23 | Grundig Emv | System zur verarbeitung verschluesselt uebertragener informationen |
| US4796220A (en) * | 1986-12-15 | 1989-01-03 | Pride Software Development Corp. | Method of controlling the copying of software |
| US4866769A (en) * | 1987-08-05 | 1989-09-12 | Ibm Corporation | Hardware assist for protecting PC software |
| US4888802A (en) * | 1988-06-17 | 1989-12-19 | Ncr Corporation | System and method for providing for secure encryptor key management |
| US4959861A (en) * | 1988-07-13 | 1990-09-25 | Howlette Edward L | Security system for computer software |
| JPH0752388B2 (ja) * | 1988-08-03 | 1995-06-05 | 三菱電機株式会社 | Icメモリカード |
| US5111390A (en) * | 1988-08-22 | 1992-05-05 | Unisys Corporation | Software security system for maintaining integrity of compiled object code by restricting users ability to define compilers |
| JPH02293930A (ja) * | 1989-05-08 | 1990-12-05 | Victor Co Of Japan Ltd | 記録媒体の記録内容の盗用防止方式 |
| US5099516A (en) * | 1989-06-12 | 1992-03-24 | Dell Corporate Services Corporation | Digital computer code word identification system |
| US5166886A (en) * | 1989-07-31 | 1992-11-24 | Molnar Charles E | System to demonstrate and sell computer programs |
| US5033084A (en) * | 1990-04-02 | 1991-07-16 | Data I/O Corporation | Method and apparatus for protection of software in an electronic system |
| GB9010603D0 (en) * | 1990-05-11 | 1990-07-04 | Int Computers Ltd | Access control in a distributed computer system |
| EP0459046A1 (en) * | 1990-05-31 | 1991-12-04 | International Business Machines Corporation | Computer software protection |
| JPH0799497B2 (ja) * | 1990-12-14 | 1995-10-25 | インターナショナル・ビジネス・マシーンズ・コーポレイション | ソフトウェアの使用を管理するための装置及び方法 |
| JPH0581774A (ja) * | 1991-09-20 | 1993-04-02 | Olympus Optical Co Ltd | 情報記録再生装置 |
| JPH05122701A (ja) * | 1991-10-25 | 1993-05-18 | Canon Inc | 課金用情報処理装置 |
| US7028187B1 (en) | 1991-11-15 | 2006-04-11 | Citibank, N.A. | Electronic transaction apparatus for electronic commerce |
| US5557518A (en) * | 1994-04-28 | 1996-09-17 | Citibank, N.A. | Trusted agents for open electronic commerce |
| US5453601A (en) * | 1991-11-15 | 1995-09-26 | Citibank, N.A. | Electronic-monetary system |
| US5293422A (en) * | 1992-09-23 | 1994-03-08 | Dynatek, Inc. | Usage control system for computer software |
| US5327563A (en) * | 1992-11-13 | 1994-07-05 | Hewlett-Packard | Method for locking software files to a specific storage device |
| EP0610623A1 (en) * | 1992-12-22 | 1994-08-17 | Hewlett-Packard Company | File locking based on bad disk sectors |
| US5596639A (en) * | 1993-07-26 | 1997-01-21 | Elonex Ip Holdings Ltd. | Cd-prom |
| WO1995003655A1 (en) * | 1993-07-26 | 1995-02-02 | Oakleigh Systems, Inc. | Cd prom encryption system |
| US5412718A (en) * | 1993-09-13 | 1995-05-02 | Institute Of Systems Science | Method for utilizing medium nonuniformities to minimize unauthorized duplication of digital information |
| US5499298A (en) * | 1994-03-17 | 1996-03-12 | National University Of Singapore | Controlled dissemination of digital information |
| US6088797A (en) * | 1994-04-28 | 2000-07-11 | Rosen; Sholom S. | Tamper-proof electronic processing device |
| GB2294787A (en) * | 1994-11-07 | 1996-05-08 | Motorola Israel Ltd | Electronic device and method of cloning |
| US6963859B2 (en) * | 1994-11-23 | 2005-11-08 | Contentguard Holdings, Inc. | Content rendering repository |
| US7117180B1 (en) | 1994-11-23 | 2006-10-03 | Contentguard Holdings, Inc. | System for controlling the use of digital works using removable content repositories |
| US20050149450A1 (en) * | 1994-11-23 | 2005-07-07 | Contentguard Holdings, Inc. | System, method, and device for controlling distribution and use of digital works based on a usage rights grammar |
| JPH08263438A (ja) * | 1994-11-23 | 1996-10-11 | Xerox Corp | ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法 |
| US6865551B1 (en) | 1994-11-23 | 2005-03-08 | Contentguard Holdings, Inc. | Removable content repositories |
| US7069451B1 (en) | 1995-02-13 | 2006-06-27 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US6157721A (en) | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
| US20060206397A1 (en) * | 1995-02-13 | 2006-09-14 | Intertrust Technologies Corp. | Cryptographic methods, apparatus and systems for storage media electronic right management in closed and connected appliances |
| US7133846B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
| US7095854B1 (en) | 1995-02-13 | 2006-08-22 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
| US7133845B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | System and methods for secure transaction management and electronic rights protection |
| US5892900A (en) * | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| CN101303717B (zh) | 1995-02-13 | 2015-04-29 | 英特特拉斯特技术公司 | 用于安全交易管理和电子权利保护的系统和方法 |
| US7165174B1 (en) | 1995-02-13 | 2007-01-16 | Intertrust Technologies Corp. | Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management |
| US6948070B1 (en) | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
| US7124302B2 (en) * | 1995-02-13 | 2006-10-17 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US6658568B1 (en) * | 1995-02-13 | 2003-12-02 | Intertrust Technologies Corporation | Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management |
| US7143290B1 (en) * | 1995-02-13 | 2006-11-28 | Intertrust Technologies Corporation | Trusted and secure techniques, systems and methods for item delivery and execution |
| US5754761A (en) * | 1995-03-06 | 1998-05-19 | Willsey; John A. | Universal sofeware key process |
| US5644444A (en) * | 1995-03-10 | 1997-07-01 | Iomega Corporation | Read/write protect scheme for a disk cartridge and drive |
| US6724554B1 (en) | 1995-03-10 | 2004-04-20 | Iomega Corporation | Read/write protect scheme for a disk cartridge and drive |
| US5745886A (en) * | 1995-06-07 | 1998-04-28 | Citibank, N.A. | Trusted agents for open distribution of electronic money |
| JPH0944993A (ja) * | 1995-07-31 | 1997-02-14 | Pioneer Electron Corp | 情報記録方法及び装置、関数記録方法及び装置並びに情報再生方法及び装置 |
| US5671280A (en) * | 1995-08-30 | 1997-09-23 | Citibank, N.A. | System and method for commercial payments using trusted agents |
| US6067622A (en) * | 1996-01-02 | 2000-05-23 | Moore; Steven Jerome | Software security system using remove function to restrict unauthorized duplicating and installation of an application program |
| US20060265336A1 (en) * | 1996-02-26 | 2006-11-23 | Graphon Corporation | Automated system for management of licensed digital assets |
| US20010011253A1 (en) | 1998-08-04 | 2001-08-02 | Christopher D. Coley | Automated system for management of licensed software |
| US6088452A (en) * | 1996-03-07 | 2000-07-11 | Northern Telecom Limited | Encoding technique for software and hardware |
| AU3206397A (en) * | 1996-05-23 | 1997-12-09 | Apple Computer, Inc. | Method and apparatus for two-level copy protection |
| SG67354A1 (en) * | 1996-06-27 | 1999-09-21 | Inst Of Systems Science Nation | Computationally efficient method for trusted and dynamic digital objects dissemination |
| US6005935A (en) * | 1996-11-20 | 1999-12-21 | At&T Corp. | Method and system of using personal information as a key when distributing information |
| US6523119B2 (en) * | 1996-12-04 | 2003-02-18 | Rainbow Technologies, Inc. | Software protection device and method |
| EP0902946B1 (en) * | 1997-01-27 | 2006-05-24 | Koninklijke Philips Electronics N.V. | System for copy protection of recorded signals |
| US20050021477A1 (en) * | 1997-01-29 | 2005-01-27 | Ganapathy Krishnan | Method and system for securely incorporating electronic information into an online purchasing application |
| US5920861A (en) * | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
| US7062500B1 (en) | 1997-02-25 | 2006-06-13 | Intertrust Technologies Corp. | Techniques for defining, using and manipulating rights management data structures |
| US6233684B1 (en) | 1997-02-28 | 2001-05-15 | Contenaguard Holdings, Inc. | System for controlling the distribution and use of rendered digital works through watermaking |
| US6192475B1 (en) | 1997-03-31 | 2001-02-20 | David R. Wallace | System and method for cloaking software |
| WO1999001815A1 (en) | 1997-06-09 | 1999-01-14 | Intertrust, Incorporated | Obfuscation techniques for enhancing software security |
| KR100257538B1 (ko) * | 1997-07-14 | 2000-06-01 | 구자홍 | 복사 방지용 광디스크의 신호 기록방법 및 이 기록방법을 이용한 광디스크의 복제방지방법 |
| US6044469A (en) * | 1997-08-29 | 2000-03-28 | Preview Software | Software publisher or distributor configurable software security mechanism |
| US6112181A (en) * | 1997-11-06 | 2000-08-29 | Intertrust Technologies Corporation | Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
| US7092914B1 (en) * | 1997-11-06 | 2006-08-15 | Intertrust Technologies Corporation | Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
| US5978916A (en) * | 1997-11-25 | 1999-11-02 | International Business Machines Corporation | Method, system and computer program product for updating region-dependent software using a common update module for multiple regions |
| US6643775B1 (en) * | 1997-12-05 | 2003-11-04 | Jamama, Llc | Use of code obfuscation to inhibit generation of non-use-restricted versions of copy protected software applications |
| US7233948B1 (en) | 1998-03-16 | 2007-06-19 | Intertrust Technologies Corp. | Methods and apparatus for persistent control and protection of content |
| IL124571A0 (en) | 1998-05-21 | 1998-12-06 | Miki Mullor | Method of restricting software operation within a licensed limitation |
| US6259575B1 (en) | 1998-07-01 | 2001-07-10 | Iomega Corporation | Readable indelible mark on storage media |
| US6324026B1 (en) * | 1998-07-01 | 2001-11-27 | Iomega Corporation | Readable indelible mark on storage media |
| JP3216607B2 (ja) * | 1998-07-29 | 2001-10-09 | 日本電気株式会社 | デジタル著作物流通システム及び方法、デジタル著作物再生装置及び方法、並びに記録媒体 |
| US6438235B2 (en) * | 1998-08-05 | 2002-08-20 | Hewlett-Packard Company | Media content protection utilizing public key cryptography |
| US7068787B1 (en) | 1998-10-23 | 2006-06-27 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| US6583945B1 (en) | 1998-10-30 | 2003-06-24 | Iomega Corporation | Method for irreversibly write-securing a magnetic storage cartridge |
| AU768421B2 (en) * | 1999-02-17 | 2003-12-11 | Sony Corporation | Information processing device and method, and program storage medium |
| US6836847B1 (en) * | 1999-03-05 | 2004-12-28 | The Johns Hokins University | Software protection for single and multiple microprocessor systems |
| US6857076B1 (en) | 1999-03-26 | 2005-02-15 | Micron Technology, Inc. | Data security for digital data storage |
| US7096370B1 (en) * | 1999-03-26 | 2006-08-22 | Micron Technology, Inc. | Data security for digital data storage |
| US6937726B1 (en) | 1999-04-06 | 2005-08-30 | Contentguard Holdings, Inc. | System and method for protecting data files by periodically refreshing a decryption key |
| US7356688B1 (en) | 1999-04-06 | 2008-04-08 | Contentguard Holdings, Inc. | System and method for document distribution |
| US7286665B1 (en) | 1999-04-06 | 2007-10-23 | Contentguard Holdings, Inc. | System and method for transferring the right to decode messages |
| US6859533B1 (en) | 1999-04-06 | 2005-02-22 | Contentguard Holdings, Inc. | System and method for transferring the right to decode messages in a symmetric encoding scheme |
| US7330978B1 (en) * | 1999-04-08 | 2008-02-12 | Microsoft Corporation | Encrypted software installer |
| US7770016B2 (en) * | 1999-07-29 | 2010-08-03 | Intertrust Technologies Corporation | Systems and methods for watermarking software and other media |
| US7430670B1 (en) | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
| US7243236B1 (en) | 1999-07-29 | 2007-07-10 | Intertrust Technologies Corp. | Systems and methods for using cryptography to protect secure and insecure computing environments |
| US7028011B1 (en) | 1999-09-10 | 2006-04-11 | Eastman Kodak Company | Hybrid optical recording disc with copy protection |
| US6885748B1 (en) | 1999-10-23 | 2005-04-26 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| US6789199B1 (en) * | 2000-02-08 | 2004-09-07 | International Business Machines Corporation | Tamper resistance with pseudo-random binary sequence program interlocks |
| SG97852A1 (en) | 2000-02-25 | 2003-08-20 | Kent Ridge Digital Labs | Method and apparatus for digital content copy protection |
| US6898031B1 (en) * | 2000-04-19 | 2005-05-24 | Seagate Technology Llc | Method for replicating magnetic patterns on hard disk media |
| US8832852B2 (en) | 2000-08-28 | 2014-09-09 | Contentguard Holdings, Inc. | Method and apparatus for dynamic protection of static and dynamic content |
| US7073199B1 (en) | 2000-08-28 | 2006-07-04 | Contentguard Holdings, Inc. | Document distribution management method and apparatus using a standard rendering engine and a method and apparatus for controlling a standard rendering engine |
| US6931545B1 (en) * | 2000-08-28 | 2005-08-16 | Contentguard Holdings, Inc. | Systems and methods for integrity certification and verification of content consumption environments |
| US7743259B2 (en) | 2000-08-28 | 2010-06-22 | Contentguard Holdings, Inc. | System and method for digital rights management using a standard rendering engine |
| US7343324B2 (en) * | 2000-11-03 | 2008-03-11 | Contentguard Holdings Inc. | Method, system, and computer readable medium for automatically publishing content |
| DE60135377D1 (de) | 2000-12-14 | 2008-09-25 | Edc Systems Inc | Verfahren zur Authentifizierung eines optischen Aufzeichnungsmediums und ein optisches Aufzeichnungsmedium |
| US6912294B2 (en) | 2000-12-29 | 2005-06-28 | Contentguard Holdings, Inc. | Multi-stage watermarking process and system |
| US20030220880A1 (en) * | 2002-01-17 | 2003-11-27 | Contentguard Holdings, Inc. | Networked services licensing system and method |
| US7206765B2 (en) * | 2001-01-17 | 2007-04-17 | Contentguard Holdings, Inc. | System and method for supplying and managing usage rights based on rules |
| US6754642B2 (en) | 2001-05-31 | 2004-06-22 | Contentguard Holdings, Inc. | Method and apparatus for dynamically assigning usage rights to digital works |
| US7774279B2 (en) * | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
| US7028009B2 (en) * | 2001-01-17 | 2006-04-11 | Contentguardiholdings, Inc. | Method and apparatus for distributing enforceable property rights |
| US8069116B2 (en) * | 2001-01-17 | 2011-11-29 | Contentguard Holdings, Inc. | System and method for supplying and managing usage rights associated with an item repository |
| WO2002057922A1 (en) | 2001-01-17 | 2002-07-25 | Contentguard Holdings, Inc. | Method and apparatus for managing digital content usage rights |
| US20020141583A1 (en) * | 2001-01-29 | 2002-10-03 | Eastman Kodak Company | Copy protection using a preformed ID and a unique ID on a programmable CD-ROM |
| US7057993B2 (en) * | 2001-01-29 | 2006-06-06 | Eastman Kodak Company | Copy protection using multiple security levels on a programmable CD-ROM |
| US7526795B2 (en) * | 2001-03-27 | 2009-04-28 | Micron Technology, Inc. | Data security for digital data storage |
| US20030043852A1 (en) * | 2001-05-18 | 2003-03-06 | Bijan Tadayon | Method and apparatus for verifying data integrity based on data compression parameters |
| US8001053B2 (en) * | 2001-05-31 | 2011-08-16 | Contentguard Holdings, Inc. | System and method for rights offering and granting using shared state variables |
| US8275709B2 (en) * | 2001-05-31 | 2012-09-25 | Contentguard Holdings, Inc. | Digital rights management of content when content is a future live event |
| US7725401B2 (en) * | 2001-05-31 | 2010-05-25 | Contentguard Holdings, Inc. | Method and apparatus for establishing usage rights for digital content to be created in the future |
| US7152046B2 (en) * | 2001-05-31 | 2006-12-19 | Contentguard Holdings, Inc. | Method and apparatus for tracking status of resource in a system for managing use of the resources |
| US8099364B2 (en) * | 2001-05-31 | 2012-01-17 | Contentguard Holdings, Inc. | Digital rights management of content when content is a future live event |
| US6876984B2 (en) | 2001-05-31 | 2005-04-05 | Contentguard Holdings, Inc. | Method and apparatus for establishing usage rights for digital content to be created in the future |
| US6973445B2 (en) * | 2001-05-31 | 2005-12-06 | Contentguard Holdings, Inc. | Demarcated digital content and method for creating and processing demarcated digital works |
| US20030009424A1 (en) * | 2001-05-31 | 2003-01-09 | Contentguard Holdings, Inc. | Method for managing access and use of resources by verifying conditions and conditions for use therewith |
| US7222104B2 (en) * | 2001-05-31 | 2007-05-22 | Contentguard Holdings, Inc. | Method and apparatus for transferring usage rights and digital work having transferrable usage rights |
| US6895503B2 (en) * | 2001-05-31 | 2005-05-17 | Contentguard Holdings, Inc. | Method and apparatus for hierarchical assignment of rights to documents and documents having such rights |
| US8275716B2 (en) | 2001-05-31 | 2012-09-25 | Contentguard Holdings, Inc. | Method and system for subscription digital rights management |
| US6976009B2 (en) | 2001-05-31 | 2005-12-13 | Contentguard Holdings, Inc. | Method and apparatus for assigning consequential rights to documents and documents having such rights |
| CA2432189A1 (en) * | 2001-06-07 | 2002-12-19 | Contentguard Holdings, Inc. | Cryptographic trust zones in digital rigths management |
| AU2002345577A1 (en) * | 2001-06-07 | 2002-12-23 | Contentguard Holdings, Inc. | Protected content distribution system |
| BR0210932A (pt) * | 2001-06-07 | 2004-06-08 | Contentguard Holdings Inc | Método e aparelho para gerenciar a transferência de direitos |
| US7774280B2 (en) * | 2001-06-07 | 2010-08-10 | Contentguard Holdings, Inc. | System and method for managing transfer of rights using shared state variables |
| US7421411B2 (en) * | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
| US7562396B2 (en) * | 2001-08-21 | 2009-07-14 | Ecd Systems, Inc. | Systems and methods for media authentication |
| US7316032B2 (en) | 2002-02-27 | 2008-01-01 | Amad Tayebi | Method for allowing a customer to preview, acquire and/or pay for information and a system therefor |
| US7562397B1 (en) | 2002-02-27 | 2009-07-14 | Mithal Ashish K | Method and system for facilitating search, selection, preview, purchase evaluation, offering for sale, distribution, and/or sale of digital content and enhancing the security thereof |
| US7643393B2 (en) * | 2001-12-12 | 2010-01-05 | Ecd Systems, Inc. | Systems and methods for optical media modification |
| US7088823B2 (en) * | 2002-01-09 | 2006-08-08 | International Business Machines Corporation | System and method for secure distribution and evaluation of compressed digital information |
| US7716485B2 (en) * | 2002-02-01 | 2010-05-11 | Sca Ipla Holdings Inc. | Systems and methods for media authentication |
| US20050086173A1 (en) * | 2003-10-20 | 2005-04-21 | Kalwit Sham R. | Auto-regulated electronic license key mechanism |
| US7323212B2 (en) * | 2003-10-29 | 2008-01-29 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and system of controlling dummy dispense |
| US7461259B2 (en) * | 2004-06-30 | 2008-12-02 | Nokia Corporation | Method and apparatus to provide secure mobile file system |
| US20060020552A1 (en) * | 2004-07-26 | 2006-01-26 | James Sloan | Copy-restriction system for digitally recorded, computer disk-based music recordings |
| US7716439B2 (en) | 2005-01-07 | 2010-05-11 | Roland Corporation | Data processing system and method with copy protection |
| US7281652B2 (en) * | 2005-05-18 | 2007-10-16 | Foss Jonathan G | Point-of-sale provider evaluation |
| US20060271493A1 (en) * | 2005-05-24 | 2006-11-30 | Contentguard Holdings, Inc. | Method and apparatus for executing code in accordance with usage rights |
| US7438078B2 (en) * | 2005-08-05 | 2008-10-21 | Peter Woodruff | Sleeping bag and system |
| JP4298736B2 (ja) * | 2005-11-09 | 2009-07-22 | キヤノン株式会社 | 情報処理装置、電子文書処理方法およびプログラム |
| IL171963A0 (en) | 2005-11-14 | 2006-04-10 | Nds Ltd | Secure read-write storage device |
| JP2009027525A (ja) * | 2007-07-20 | 2009-02-05 | Nec Corp | 光伝送システムおよび光伝送方法 |
| WO2009065135A1 (en) * | 2007-11-17 | 2009-05-22 | Uniloc Corporation | System and method for adjustable licensing of digital products |
| US20100323790A1 (en) * | 2009-06-19 | 2010-12-23 | Etchegoyen Craig S | Devices and Methods for Auditing and Enforcing Computer Game Licenses |
| US9633183B2 (en) | 2009-06-19 | 2017-04-25 | Uniloc Luxembourg S.A. | Modular software protection |
| US20100324983A1 (en) * | 2009-06-22 | 2010-12-23 | Etchegoyen Craig S | System and Method for Media Distribution |
Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5987571A (ja) * | 1982-11-08 | 1984-05-21 | ボ−ルト・コ−ポレイシヨン | 記録されたデ−タの不許可のコピ−作成を防止する方法および装置 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4168396A (en) * | 1977-10-31 | 1979-09-18 | Best Robert M | Microprocessor for executing enciphered programs |
| US4352952A (en) * | 1978-06-12 | 1982-10-05 | Motorola Inc. | Data security module |
| US4246638A (en) * | 1978-09-14 | 1981-01-20 | Thomas William J | Method and apparatus for controlling usage of a programmable computing machine |
| US4465901A (en) * | 1979-06-04 | 1984-08-14 | Best Robert M | Crypto microprocessor that executes enciphered programs |
| US4558176A (en) * | 1982-09-20 | 1985-12-10 | Arnold Mark G | Computer systems to inhibit unauthorized copying, unauthorized usage, and automated cracking of protected software |
| EP0110511B1 (en) * | 1982-11-22 | 1988-03-02 | Dysan Corporation | Method and apparatus for authenticating memory disk |
| US4573119A (en) * | 1983-07-11 | 1986-02-25 | Westheimer Thomas O | Computer software protection system |
| US4577289A (en) * | 1983-12-30 | 1986-03-18 | International Business Machines Corporation | Hardware key-on-disk system for copy-protecting magnetic storage media |
-
1984
- 1984-09-14 US US06/651,184 patent/US4644493A/en not_active Expired - Fee Related
-
1985
- 1985-07-18 JP JP60157145A patent/JPS6172345A/ja active Granted
- 1985-07-23 DE DE85109182T patent/DE3587658T2/de not_active Expired - Fee Related
- 1985-07-23 EP EP85109182A patent/EP0174472B1/en not_active Expired - Lifetime
-
1986
- 1986-11-12 US US06/930,219 patent/US4903296A/en not_active Expired - Fee Related
Patent Citations (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5987571A (ja) * | 1982-11-08 | 1984-05-21 | ボ−ルト・コ−ポレイシヨン | 記録されたデ−タの不許可のコピ−作成を防止する方法および装置 |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63125030A (ja) * | 1986-11-05 | 1988-05-28 | インターナシヨナル・ビジネス・マシーンズ・コーポレーシヨン | 遠隔端末アクセス方法 |
| US6347846B1 (en) | 1996-01-08 | 2002-02-19 | Kabushiki Kaisha Toshiba | Method and an apparatus to control copying from a data providing device to a data receiving device |
| US6842521B2 (en) | 1996-01-08 | 2005-01-11 | Kabushiki Kaisha Toshiba | Method and apparatus to control copying from a drive device to a data reproducing device |
| JP2002544592A (ja) * | 1999-05-10 | 2002-12-24 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 複写保護された素材の選別方法 |
| JP2011076622A (ja) * | 1999-05-10 | 2011-04-14 | Koninkl Philips Electronics Nv | 複写保護された素材の選別方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0174472B1 (en) | 1993-11-18 |
| EP0174472A2 (en) | 1986-03-19 |
| DE3587658T2 (de) | 1994-05-11 |
| JPH0312744B2 (ja) | 1991-02-20 |
| EP0174472A3 (en) | 1989-12-13 |
| US4644493A (en) | 1987-02-17 |
| US4903296A (en) | 1990-02-20 |
| DE3587658D1 (de) | 1993-12-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6172345A (ja) | ソフトウエアのコピー保護装置 | |
| US4577289A (en) | Hardware key-on-disk system for copy-protecting magnetic storage media | |
| US5327563A (en) | Method for locking software files to a specific storage device | |
| US6847948B1 (en) | Method and apparatus for secure distribution of software/data | |
| JP5362675B2 (ja) | メモリ装置による鍵配布 | |
| KR20020042868A (ko) | 디지털 저작물의 배포 및 사용을 규제하는 방법 및 장치 | |
| JPS63191228A (ja) | コンピュータソフトウェア用の請求システム | |
| WO2003042988A1 (en) | System and method for controlling the use and duplication of digital content distributed on removable media | |
| CA2332034C (en) | A method and system for providing copy-protection on a storage medium and storage medium for use in such a system | |
| GB2131580A (en) | Frustrating the unauthorized copying of recorded data | |
| JP2007510240A (ja) | セキュアなアクセス及び複製保護の管理システム | |
| CN100458948C (zh) | 存储数字作品的记录载体及记录数字作品的方法和装置 | |
| KR20010043582A (ko) | 기록 액세스시에 위치와 키를 무작위화하여 저장매체 상에복제 방지를 하는 방법 및 장치 | |
| CN101587723B (zh) | 一种光存储介质的防复制方法 | |
| JP2007172579A (ja) | 不正コピー防止装置及び方法 | |
| JPH07503566A (ja) | ドングル | |
| EP0610623A1 (en) | File locking based on bad disk sectors | |
| JPH07161172A (ja) | データ記録媒体 | |
| TWI300928B (ja) | ||
| JPS59173847A (ja) | コンピユ−タソフトウエアの保護方法およびその装置 | |
| JP2001023299A (ja) | プログラムの不正コピー防止方法及びその対策を施した情報記録媒体 | |
| JP2004246851A (ja) | 記録媒体の読み出し制限方式 | |
| JPS63219044A (ja) | 情報記憶装置 | |
| JPH05325418A (ja) | プログラムのコピー防止装置及び防止方法 |