JPH0954691A - データ暗号化システム及び暗号化方法並びに暗号化されたデータの復号化システム及び復号化方法 - Google Patents
データ暗号化システム及び暗号化方法並びに暗号化されたデータの復号化システム及び復号化方法Info
- Publication number
- JPH0954691A JPH0954691A JP8156167A JP15616796A JPH0954691A JP H0954691 A JPH0954691 A JP H0954691A JP 8156167 A JP8156167 A JP 8156167A JP 15616796 A JP15616796 A JP 15616796A JP H0954691 A JPH0954691 A JP H0954691A
- Authority
- JP
- Japan
- Prior art keywords
- marked
- sector
- data
- key
- sectors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
- G06F21/80—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in storage media based on magnetic or optical technology, e.g. disks with sectors
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
(57)【要約】
【課題】 プログラムを不正なコピーから保護するた
めのシステム及び方法を提供することを目的とする。 【解決手段】 データ暗号化システムであって、
(a)マークされたセクタパターンを備えたマークされ
たランダムアクセス可能な移動可能なデータ記憶素子
と、(b)前記マークされたランダムアクセス可能な移
動可能なデータ記憶素子から暗号鍵を生成するための鍵
生成ユニットと、(c)前記暗号鍵に基づいて前記デー
タを暗号化する暗号化ユニットとを有する。
めのシステム及び方法を提供することを目的とする。 【解決手段】 データ暗号化システムであって、
(a)マークされたセクタパターンを備えたマークされ
たランダムアクセス可能な移動可能なデータ記憶素子
と、(b)前記マークされたランダムアクセス可能な移
動可能なデータ記憶素子から暗号鍵を生成するための鍵
生成ユニットと、(c)前記暗号鍵に基づいて前記デー
タを暗号化する暗号化ユニットとを有する。
Description
【0001】
【発明の属する技術分野】本発明は、暗号の分野に関
し、特に、特別にマークされた(marked)ランダ
ムアクセス可能な移動可能な記憶素子から暗号鍵を形成
する方法及びシステムに関する。
し、特に、特別にマークされた(marked)ランダ
ムアクセス可能な移動可能な記憶素子から暗号鍵を形成
する方法及びシステムに関する。
【0002】
【従来の技術】暗号アルゴリズムは、平文で表現された
メッセージの秘密を保持するために一般的に用いられて
いる。アルゴリズムの秘密の部分の性質を単に保持する
ことによって秘密に保持される。しかしながら、アルゴ
リズムはそのアルゴリズムを利用するユーザが非常に多
い場合、長期間に亘って利用されることによって秘密が
保持されない傾向がある。今日では、暗号アルゴリズム
は、暗号化されたデータのセキュリティーを保証するた
めに暗号鍵を用いている。
メッセージの秘密を保持するために一般的に用いられて
いる。アルゴリズムの秘密の部分の性質を単に保持する
ことによって秘密に保持される。しかしながら、アルゴ
リズムはそのアルゴリズムを利用するユーザが非常に多
い場合、長期間に亘って利用されることによって秘密が
保持されない傾向がある。今日では、暗号アルゴリズム
は、暗号化されたデータのセキュリティーを保証するた
めに暗号鍵を用いている。
【0003】復号化鍵から暗号鍵を計算しまた暗号鍵か
ら復号化鍵を計算するシンメトリックアルゴリズムは、
暗号化及び復号化の両方に等しい鍵を用いている。シン
メトリックアルゴリズムは、(ストリームアルゴリズム
では)単一のビットの、またはブロックと呼ばれるビッ
トの集合の、何れかにおける平文を処理することができ
る。電気計算機によって実行されるアルゴリズムでは、
一度に8バイト以上の大きなブロックサイズのブロック
が処理されるようになり、このため暗号化されたデータ
を復号化することがより困難となってきた。
ら復号化鍵を計算するシンメトリックアルゴリズムは、
暗号化及び復号化の両方に等しい鍵を用いている。シン
メトリックアルゴリズムは、(ストリームアルゴリズム
では)単一のビットの、またはブロックと呼ばれるビッ
トの集合の、何れかにおける平文を処理することができ
る。電気計算機によって実行されるアルゴリズムでは、
一度に8バイト以上の大きなブロックサイズのブロック
が処理されるようになり、このため暗号化されたデータ
を復号化することがより困難となってきた。
【0004】アルゴリズムのセキュリティーはこの鍵に
依存しているので、暗号化されたファイルと鍵とを別々
に保管することが賢明である。そうしなければ、たとえ
データ暗号化規格(Data Encryption
Standard:DES)のような確実な暗号化方法
を用いたとしても、鍵が暗号化されたファイルと共に保
管されている場合、この鍵は、暗号化されたファイルの
どこを検索すればよいかを知っている者によって容易に
修復されてしまう。セキュリティーの面からも、生成さ
れた鍵はまた理想的にはランダムビットストリームから
なるものであることが推賞されている。即ち、テキスト
ストリングは疑似ランダムビットストリングにクランチ
(crunch)されることが容易に分かる。鍵を生成
するための既知の方法としては、例えば、システム内の
セッション鍵を生成するために特に適したDESアルゴ
リズムを用いる、ANSI X9.17規格などがあ
る。
依存しているので、暗号化されたファイルと鍵とを別々
に保管することが賢明である。そうしなければ、たとえ
データ暗号化規格(Data Encryption
Standard:DES)のような確実な暗号化方法
を用いたとしても、鍵が暗号化されたファイルと共に保
管されている場合、この鍵は、暗号化されたファイルの
どこを検索すればよいかを知っている者によって容易に
修復されてしまう。セキュリティーの面からも、生成さ
れた鍵はまた理想的にはランダムビットストリームから
なるものであることが推賞されている。即ち、テキスト
ストリングは疑似ランダムビットストリングにクランチ
(crunch)されることが容易に分かる。鍵を生成
するための既知の方法としては、例えば、システム内の
セッション鍵を生成するために特に適したDESアルゴ
リズムを用いる、ANSI X9.17規格などがあ
る。
【0005】生成された鍵は、後に利用するために確実
に保管されなければならない。既知の方法には、ユーザ
が、リードオンリメモリ(ROM)からなる鍵若しくは
磁気カードに鍵を記憶しかつ保管する方法がある。ユー
ザは、特殊な鍵若しくは電子計算機に付属のカードを挿
入することによって鍵をシステム内に入れる。しかし、
システムのセキュリティーは、ROMからなる鍵若しく
はカードが、例えば紛失された場合には低減される。
に保管されなければならない。既知の方法には、ユーザ
が、リードオンリメモリ(ROM)からなる鍵若しくは
磁気カードに鍵を記憶しかつ保管する方法がある。ユー
ザは、特殊な鍵若しくは電子計算機に付属のカードを挿
入することによって鍵をシステム内に入れる。しかし、
システムのセキュリティーは、ROMからなる鍵若しく
はカードが、例えば紛失された場合には低減される。
【0006】電子計算機産業において、ソフトウェアの
不法なコピーもしくは著作権侵害が主要な問題となって
いる。ソフトウェアが不法にコピーされることを防止す
るために開発されたコピー防止機構は、ソフトウェアを
ベースとするか、もしくは「鍵」として働く付属のハー
ドウェアの要素を含むものである。
不法なコピーもしくは著作権侵害が主要な問題となって
いる。ソフトウェアが不法にコピーされることを防止す
るために開発されたコピー防止機構は、ソフトウェアを
ベースとするか、もしくは「鍵」として働く付属のハー
ドウェアの要素を含むものである。
【0007】ソフトウェアをベースとする方法には、デ
ィスクに記憶されたデータを符号化するような方法があ
る。ソフトウェアのプログラムによって、このデータが
チェックされ、符号化されたデータが発見された場合に
のみプログラムが動作する。標準的な動作システムのコ
ピープログラムによってはこの符号化されたデータはコ
ピーされないが、特別なコピー用のプログラムが開発さ
れ、このプログラムによってディスクに記憶されたプロ
グラムが正確にコピーされ、特別に符号化されたデータ
の目的が無効にされてきた。
ィスクに記憶されたデータを符号化するような方法があ
る。ソフトウェアのプログラムによって、このデータが
チェックされ、符号化されたデータが発見された場合に
のみプログラムが動作する。標準的な動作システムのコ
ピープログラムによってはこの符号化されたデータはコ
ピーされないが、特別なコピー用のプログラムが開発さ
れ、このプログラムによってディスクに記憶されたプロ
グラムが正確にコピーされ、特別に符号化されたデータ
の目的が無効にされてきた。
【0008】グリーミノ(Guglielmino)に
よる米国特許第4,584,641号明細書には、コピ
ーされたディスクが駆動されたときコピーされたソフト
ウェアプログラムが削除され、そのディスクが利用不能
となるコピーされたディスクからの防止手段が記載され
ている。適法なディスクには半永久的な入出力エラー、
例えば磁性材料の欠損などが設けられている。さらに誤
差検出ルーチンがディスク内に記憶されており、半永久
的なエラーの有無を確かめることによって、これらの半
永久的なエラーが検出されたときのみに、プログラムが
実行されるようになっている。
よる米国特許第4,584,641号明細書には、コピ
ーされたディスクが駆動されたときコピーされたソフト
ウェアプログラムが削除され、そのディスクが利用不能
となるコピーされたディスクからの防止手段が記載され
ている。適法なディスクには半永久的な入出力エラー、
例えば磁性材料の欠損などが設けられている。さらに誤
差検出ルーチンがディスク内に記憶されており、半永久
的なエラーの有無を確かめることによって、これらの半
永久的なエラーが検出されたときのみに、プログラムが
実行されるようになっている。
【0009】コマーフォード(Comerford)ら
による米国特許第4,577,289号明細書には、ハ
ードディスクもしくはフレキシブルディスクなどの磁性
媒体に直接識別子を符号化する方法が記載されている。
この識別子は、ディスクのセクションに設けられた非磁
性の印(indicia)からなり、この識別子は従来
の媒体への書き込み方法によっては書き換えられないも
のである。この印は少なくとも1トラック全体に亘って
設けられており、ディスクに記憶された確認プログラム
は、このマークされた印が予め決められたパターンに対
応するかどうかを確かめる。保護されたソフトウェアプ
ログラムはこのディスクが有効であることが確かめられ
た場合にのみ実行される。上述された2つの方法は、い
ずれも、ディスクが真正なディスクであるかどうかを確
かめるためにマークされたパターンのみを用いるもので
ある。
による米国特許第4,577,289号明細書には、ハ
ードディスクもしくはフレキシブルディスクなどの磁性
媒体に直接識別子を符号化する方法が記載されている。
この識別子は、ディスクのセクションに設けられた非磁
性の印(indicia)からなり、この識別子は従来
の媒体への書き込み方法によっては書き換えられないも
のである。この印は少なくとも1トラック全体に亘って
設けられており、ディスクに記憶された確認プログラム
は、このマークされた印が予め決められたパターンに対
応するかどうかを確かめる。保護されたソフトウェアプ
ログラムはこのディスクが有効であることが確かめられ
た場合にのみ実行される。上述された2つの方法は、い
ずれも、ディスクが真正なディスクであるかどうかを確
かめるためにマークされたパターンのみを用いるもので
ある。
【0010】
【発明が解決しようとする課題】上述されたシステム及
び方法の欠点を解決することのできる暗号鍵を生成する
ためのシステム及び方法を提供することが望まれる。さ
らに、生成された暗号鍵を用いてソフトウェアプログラ
ムを保護することが望まれる。
び方法の欠点を解決することのできる暗号鍵を生成する
ためのシステム及び方法を提供することが望まれる。さ
らに、生成された暗号鍵を用いてソフトウェアプログラ
ムを保護することが望まれる。
【0011】
【課題を解決するための手段】本発明に基づけば、マー
クされたディスクのようなマークされたランダムアクセ
ス可能な移動可能な記憶素子のマークされたセクタのパ
ターンから暗号鍵を生成するための鍵生成ユニットと、
この暗号鍵に基づいてデータを符号化する符号化ユニッ
トとを含む符号化されたデータを暗号化するためのシス
テムが提供される。
クされたディスクのようなマークされたランダムアクセ
ス可能な移動可能な記憶素子のマークされたセクタのパ
ターンから暗号鍵を生成するための鍵生成ユニットと、
この暗号鍵に基づいてデータを符号化する符号化ユニッ
トとを含む符号化されたデータを暗号化するためのシス
テムが提供される。
【0012】更に、マークされた記憶素子のマークされ
たセクタのパターンから暗号鍵を生成するための鍵生成
ユニットと、この暗号鍵と共に符号化された鍵を復号化
する復号器(decryptor)とを含む符号化され
たデータを復号化するシステムが提供される。
たセクタのパターンから暗号鍵を生成するための鍵生成
ユニットと、この暗号鍵と共に符号化された鍵を復号化
する復号器(decryptor)とを含む符号化され
たデータを復号化するシステムが提供される。
【0013】更に、本発明の好適な実施例に基づけば、
鍵生成ユニットは、ディスクへの書き込み及びディスク
からの読み出しを行うためのディスクドライブと、少な
くとも1つのセクタから読み出し手段によって読み出さ
れた第1の集合のデータの内容を記憶する第1メモリバ
ッファと、ランダムにデータを生成するためのランダム
ワードジェネレータとを含む。この鍵生成ユニットは、
ランダムに生成されたデータとランダムに生成されたの
データの補数とを記憶する第2メモリバッファと、セク
タコンパレータと、マークされたセクタのパターンから
暗号鍵を生成するための鍵ジェネレータとを更に含む。
セクタコンパレータは、ランダムに生成されたデータを
書き込んだ後のセクタから読み出された第1の値と、ラ
ンダムに生成されたデータの補数を書き込んだ後のセク
タから読み出された第2の値とを比較し、これらセクタ
の少なくとも一方がマークされたセクタであるか否かを
確認し、マークされたセクタのパターンを生成する。
鍵生成ユニットは、ディスクへの書き込み及びディスク
からの読み出しを行うためのディスクドライブと、少な
くとも1つのセクタから読み出し手段によって読み出さ
れた第1の集合のデータの内容を記憶する第1メモリバ
ッファと、ランダムにデータを生成するためのランダム
ワードジェネレータとを含む。この鍵生成ユニットは、
ランダムに生成されたデータとランダムに生成されたの
データの補数とを記憶する第2メモリバッファと、セク
タコンパレータと、マークされたセクタのパターンから
暗号鍵を生成するための鍵ジェネレータとを更に含む。
セクタコンパレータは、ランダムに生成されたデータを
書き込んだ後のセクタから読み出された第1の値と、ラ
ンダムに生成されたデータの補数を書き込んだ後のセク
タから読み出された第2の値とを比較し、これらセクタ
の少なくとも一方がマークされたセクタであるか否かを
確認し、マークされたセクタのパターンを生成する。
【0014】更に、本発明の好適な実施例に基づけば、
符号化されたデータを暗号化するための方法が提供さ
れ、この方法には、ディスクなどのマークされたランダ
ムアクセス可能な移動可能な記憶素子のマークされたセ
クタのパターンから暗号鍵を生成する過程が含まれてい
る。マークされた記憶素子は2つの表面を有し、これら
2つの表面の各々は複数のセクタを含む。
符号化されたデータを暗号化するための方法が提供さ
れ、この方法には、ディスクなどのマークされたランダ
ムアクセス可能な移動可能な記憶素子のマークされたセ
クタのパターンから暗号鍵を生成する過程が含まれてい
る。マークされた記憶素子は2つの表面を有し、これら
2つの表面の各々は複数のセクタを含む。
【0015】更に、本発明の好適な実施例に基づけば、
符号化されたデータを復号化するための方法が提供さ
れ、この方法には、マークされたランダムアクセス可能
な移動可能な記憶素子のマークされたセクタのパターン
から暗号鍵を生成する過程と、この暗号鍵を用いて符号
化されたデータを復号化する過程とが含まれている。マ
ークされたディスクは2つの表面を有し、これら2つの
表面の各々は複数のセクタを含む。
符号化されたデータを復号化するための方法が提供さ
れ、この方法には、マークされたランダムアクセス可能
な移動可能な記憶素子のマークされたセクタのパターン
から暗号鍵を生成する過程と、この暗号鍵を用いて符号
化されたデータを復号化する過程とが含まれている。マ
ークされたディスクは2つの表面を有し、これら2つの
表面の各々は複数のセクタを含む。
【0016】更に、本発明の好適な実施例に基づけば、
暗号鍵を生成する過程は、マークされた記憶素子を確認
する過程と、マークされたセクタの位置をメモリ記憶装
置に記憶する過程と、マークされたセクタからパターン
を生成する過程と、マークされたセクタのパターンから
暗号鍵を生成する過程とを含む。
暗号鍵を生成する過程は、マークされた記憶素子を確認
する過程と、マークされたセクタの位置をメモリ記憶装
置に記憶する過程と、マークされたセクタからパターン
を生成する過程と、マークされたセクタのパターンから
暗号鍵を生成する過程とを含む。
【0017】更に、本発明の好適な実施例に基づけば、
前記確認過程は、2つの表面を有する(ディスクなど
の)記憶素子の各表面の複数のセクタの各々がマークさ
れているか若しくはマークされていないかを確認し、マ
ークされているセクタに対してその直近の両側のセクタ
がマークされていないことを確認し、かつそのマークさ
れたセクタに対応するディスクの反対側の表面のセクタ
がマークされていないことを確認する過程を含む。
前記確認過程は、2つの表面を有する(ディスクなど
の)記憶素子の各表面の複数のセクタの各々がマークさ
れているか若しくはマークされていないかを確認し、マ
ークされているセクタに対してその直近の両側のセクタ
がマークされていないことを確認し、かつそのマークさ
れたセクタに対応するディスクの反対側の表面のセクタ
がマークされていないことを確認する過程を含む。
【0018】更に、本発明の好適な実施例に基づけば、
前記確認過程が、前記複数のセクタの各々から初めにデ
ータを読み出しこの読み出されたデータを第1のメモリ
バッファに記憶する過程と、ランダムなデータを生成し
この生成されたランダムなデータを前記読み出しが行わ
れたセクタに書き込む過程と、前記ランダムに生成され
たデータを第2のメモリバッファに記憶する過程とを含
む。前記確認過程は、前記ランダムに生成されたデータ
の補数を第2のメモリバッファに記憶し、次に前記読み
出されたセクタの2度目の読み出しを行う過程を更に含
む。この第2のメモリバッファのデータは、ランダムに
生成されたデータと比較され、この第2のメモリバッフ
ァのデータがランダムに生成されたデータと一致しない
場合、第2のセクタがマークされたセクタとして認識さ
れる。
前記確認過程が、前記複数のセクタの各々から初めにデ
ータを読み出しこの読み出されたデータを第1のメモリ
バッファに記憶する過程と、ランダムなデータを生成し
この生成されたランダムなデータを前記読み出しが行わ
れたセクタに書き込む過程と、前記ランダムに生成され
たデータを第2のメモリバッファに記憶する過程とを含
む。前記確認過程は、前記ランダムに生成されたデータ
の補数を第2のメモリバッファに記憶し、次に前記読み
出されたセクタの2度目の読み出しを行う過程を更に含
む。この第2のメモリバッファのデータは、ランダムに
生成されたデータと比較され、この第2のメモリバッフ
ァのデータがランダムに生成されたデータと一致しない
場合、第2のセクタがマークされたセクタとして認識さ
れる。
【0019】更に、本発明の好適な実施例に基づけば、
ソフトウェアを保護するためのシステムが提供され、こ
のシステムには、各々が複数のセクタを備えた2つの表
面を有するマークされたディスクのマークされたセクタ
のパターンから復号化鍵を生成する過程と、この復号化
鍵を用いてソフトウェアを復号化する過程とが含まれて
いる。
ソフトウェアを保護するためのシステムが提供され、こ
のシステムには、各々が複数のセクタを備えた2つの表
面を有するマークされたディスクのマークされたセクタ
のパターンから復号化鍵を生成する過程と、この復号化
鍵を用いてソフトウェアを復号化する過程とが含まれて
いる。
【0020】
【発明の実施の形態】図1は、電子計算機システムのデ
ィスクドライブ12に挿入された鍵ディスク10の型式
のランダムアクセス可能な移動可能な記憶素子を表して
いる。図2は、鍵ディスク10の上面図を表しており、
図3は鍵ディスク10の表面14を表している。具体例
によって説明するために、以下に説明されるシステム及
び方法は2つの表面を備えたディスクに関して行われ
る。当業者に容易に理解されるように、このシステム及
び方法はまたコンパクトディスクやリードオンリメモリ
(CD−ROM)素子などの1つの表面のみを備えたラ
ンダムアクセス可能な移動可能な記憶素子に対しても用
いることができる。
ィスクドライブ12に挿入された鍵ディスク10の型式
のランダムアクセス可能な移動可能な記憶素子を表して
いる。図2は、鍵ディスク10の上面図を表しており、
図3は鍵ディスク10の表面14を表している。具体例
によって説明するために、以下に説明されるシステム及
び方法は2つの表面を備えたディスクに関して行われ
る。当業者に容易に理解されるように、このシステム及
び方法はまたコンパクトディスクやリードオンリメモリ
(CD−ROM)素子などの1つの表面のみを備えたラ
ンダムアクセス可能な移動可能な記憶素子に対しても用
いることができる。
【0021】鍵ディスク10は当業者によく知られてい
るように、従来のディスクと同様に、ジャケット18に
包まれた磁性媒体16を有し、この磁性媒体16は複数
のセクタ24を備えた同中心の複数のデータトラック2
2を有する。
るように、従来のディスクと同様に、ジャケット18に
包まれた磁性媒体16を有し、この磁性媒体16は複数
のセクタ24を備えた同中心の複数のデータトラック2
2を有する。
【0022】本発明に要求されるように、ディスク10
はディスクの第2の表面に損傷を与えずかつ貫通孔を形
成することなくディスクの第1の表面を正確にマークす
るレーザ装置などによってマークされる。マークされた
セクタ20は予め決められたパターンを形成する。マー
クされたセクタの位置20はディスク製造時に記録それ
て記憶され、ユーザごとの特定のかつ独自のマークされ
たディスクを生み出すために用いられる。ディスクのマ
ーキングには、複製を困難とするような高いレベルの精
度が要求される。
はディスクの第2の表面に損傷を与えずかつ貫通孔を形
成することなくディスクの第1の表面を正確にマークす
るレーザ装置などによってマークされる。マークされた
セクタ20は予め決められたパターンを形成する。マー
クされたセクタの位置20はディスク製造時に記録それ
て記憶され、ユーザごとの特定のかつ独自のマークされ
たディスクを生み出すために用いられる。ディスクのマ
ーキングには、複製を困難とするような高いレベルの精
度が要求される。
【0023】本発明に基づけば、以下に説明されるよう
にマークされたセクタ20のパターンが符号化され、こ
の符号化されたパターンが標準的な暗号化方法を用いて
暗号化され専用に設計されたソフトウェアによって構成
された暗号鍵が生成される。
にマークされたセクタ20のパターンが符号化され、こ
の符号化されたパターンが標準的な暗号化方法を用いて
暗号化され専用に設計されたソフトウェアによって構成
された暗号鍵が生成される。
【0024】図4には本発明の好適な実施例に基づいて
構成されかつ動作するソフトウェアによって構成された
暗号鍵生成システム30が例示されている。
構成されかつ動作するソフトウェアによって構成された
暗号鍵生成システム30が例示されている。
【0025】ソフトウェアによって構成された暗号鍵生
成システム30は、ディスクドライブ12と、第1メモ
リバッファ32と、第2メモリバッファ33と、ランダ
ムワードジェネレータ34と、セクタコンパレータ35
と、鍵ジェネレータ36とを有する。
成システム30は、ディスクドライブ12と、第1メモ
リバッファ32と、第2メモリバッファ33と、ランダ
ムワードジェネレータ34と、セクタコンパレータ35
と、鍵ジェネレータ36とを有する。
【0026】従来の磁気ディスクドライブからなるディ
スクドライブ12は、当業者に知られているように、デ
ィスク10からデータを磁気的に読み出すセクタリーダ
37と、ディスク10へデータを磁気的に書き込むセク
タライタ38とを有する。第1メモリバッファ32と第
2メモリバッファ33はおのおの当業者に知られている
任意の従来のメモリ記憶装置からなる。ランダムワード
ジェネレータ34は、ランダムにデータを生成する当業
者に知られた任意のジェネレータからなる。セクタコン
パレータ35は、特定のセクタがマークされているかど
うかを確認するために、セクタからの1度目に読み出さ
れた第1のデータと同じセクタから2度目に読み出され
た第2のデータとを比較する。鍵ジェネレータ36は、
マークされたセクタからソフトウェアによって構成され
た暗号鍵を生成する。
スクドライブ12は、当業者に知られているように、デ
ィスク10からデータを磁気的に読み出すセクタリーダ
37と、ディスク10へデータを磁気的に書き込むセク
タライタ38とを有する。第1メモリバッファ32と第
2メモリバッファ33はおのおの当業者に知られている
任意の従来のメモリ記憶装置からなる。ランダムワード
ジェネレータ34は、ランダムにデータを生成する当業
者に知られた任意のジェネレータからなる。セクタコン
パレータ35は、特定のセクタがマークされているかど
うかを確認するために、セクタからの1度目に読み出さ
れた第1のデータと同じセクタから2度目に読み出され
た第2のデータとを比較する。鍵ジェネレータ36は、
マークされたセクタからソフトウェアによって構成され
た暗号鍵を生成する。
【0027】セクタが破損している場合にもセンタへの
書き込みが行われることがある。一方、マークされたセ
クタからのデータの読み出し時には常にエラーが発生す
る。読み出し時のエラーは、セクタが他の理由によって
故障している場合にも生ずる。そこで、マークされたセ
クタに拠らない読み出し時のエラーを見分けるために、
各セクタに関して2度の読み出し動作が行われる。
書き込みが行われることがある。一方、マークされたセ
クタからのデータの読み出し時には常にエラーが発生す
る。読み出し時のエラーは、セクタが他の理由によって
故障している場合にも生ずる。そこで、マークされたセ
クタに拠らない読み出し時のエラーを見分けるために、
各セクタに関して2度の読み出し動作が行われる。
【0028】動作時に、ディスクの予め決められた範囲
内の各セクタ24がマークされているかどうかを確かめ
るためにチェックされる。初めに、セクタ24はセクタ
リーダ37によって読み出され、読み出されたデータが
第1メモリバッファ(実線によって図示されている)に
記憶される。このとき、ランダムなデータ(例えば16
ビットガード)がランダムワードジェネレータ34によ
って生成され、第2メモリバッファ33に記憶される。
このランダムなデータはまたセクタライタ37によって
先程読み出し動作が行われたセクタ24に書き込まれ
る。次にランダムに生成されたデータの補数が第2メモ
リバッファ33に記憶される。例えばランダムに生成さ
れたデータ「100110」に対してこのデータの補数
は「011001」となる。セクタ24は(破線によっ
て図示されているように)再び読み出され、この読み出
されたデータが第2メモリバッファ33に記憶される。
内の各セクタ24がマークされているかどうかを確かめ
るためにチェックされる。初めに、セクタ24はセクタ
リーダ37によって読み出され、読み出されたデータが
第1メモリバッファ(実線によって図示されている)に
記憶される。このとき、ランダムなデータ(例えば16
ビットガード)がランダムワードジェネレータ34によ
って生成され、第2メモリバッファ33に記憶される。
このランダムなデータはまたセクタライタ37によって
先程読み出し動作が行われたセクタ24に書き込まれ
る。次にランダムに生成されたデータの補数が第2メモ
リバッファ33に記憶される。例えばランダムに生成さ
れたデータ「100110」に対してこのデータの補数
は「011001」となる。セクタ24は(破線によっ
て図示されているように)再び読み出され、この読み出
されたデータが第2メモリバッファ33に記憶される。
【0029】第2メモリバッファ33のデータはセクタ
24がマークされているか否かによって変化する。セク
タ24がマークされていない場合、第2メモリバッファ
33に記憶されたデータは、2度目にセクタが読み出さ
れた時のデータを表し、このデータはセクタ24に書き
込まれたランダムに生成されたデータと一致する。セク
タ24がマークされている場合、セクタ全体を2度目に
正しく読み出すことが不可能となる。2度目にセクタか
ら読み出されたデータを表す第2メモリバッファ33に
記憶されたデータは、セクタ24に書き込まれたランダ
ムに生成されたデータと一致しない。
24がマークされているか否かによって変化する。セク
タ24がマークされていない場合、第2メモリバッファ
33に記憶されたデータは、2度目にセクタが読み出さ
れた時のデータを表し、このデータはセクタ24に書き
込まれたランダムに生成されたデータと一致する。セク
タ24がマークされている場合、セクタ全体を2度目に
正しく読み出すことが不可能となる。2度目にセクタか
ら読み出されたデータを表す第2メモリバッファ33に
記憶されたデータは、セクタ24に書き込まれたランダ
ムに生成されたデータと一致しない。
【0030】マークされたセクタ24に記憶されたデー
タは次に鍵ジェネレータ36に送られ、この鍵ジェネレ
ータ36はそのデータを符号化してソフトウェアから構
成された暗号鍵を生成する。初めのセクタデータを記憶
するために、第1バッファメモリ30に記憶されたデー
タが、セクタ24がテストされた後に(破線で図示され
ているように)セクタ24に書き込まれる。
タは次に鍵ジェネレータ36に送られ、この鍵ジェネレ
ータ36はそのデータを符号化してソフトウェアから構
成された暗号鍵を生成する。初めのセクタデータを記憶
するために、第1バッファメモリ30に記憶されたデー
タが、セクタ24がテストされた後に(破線で図示され
ているように)セクタ24に書き込まれる。
【0031】図5は、ソフトウェアによって構成された
暗号鍵を生成する方法を表している。ディスク10はデ
ィスクドライブ12に挿入される(ステップ40)。デ
ィスク10は初めに確認される(ステップ42)、即ち
ディスクの予め決められた範囲内のセクタの各セクタが
チェックされ、マーキングが予め決められた基準と一致
するか否かが確認される。次に確認された鍵ディスクが
ソフトウェアによって構成された暗号鍵を生成するため
に用いられる(ステップ50)。
暗号鍵を生成する方法を表している。ディスク10はデ
ィスクドライブ12に挿入される(ステップ40)。デ
ィスク10は初めに確認される(ステップ42)、即ち
ディスクの予め決められた範囲内のセクタの各セクタが
チェックされ、マーキングが予め決められた基準と一致
するか否かが確認される。次に確認された鍵ディスクが
ソフトウェアによって構成された暗号鍵を生成するため
に用いられる(ステップ50)。
【0032】セクタを確認するために(ステップ4
2)、このセクタがマークされているか否かを確認する
べく、各セクタがチェックされる(ステップ44)。デ
ィスクが有効であるためには、2つのパラメータ(条
件)と適合しなければならない。第1に、ディスクの複
写を困難とするために、直近の隣接したセクタはマーク
されてはならない(ステップ46)。第2、ディスク1
0に貫通孔が形成されないことを確実にするために、デ
ィスクの反対側の表面の対応するセクタがマークされて
いないことを確かめるべくチェックされる(ステップ4
8)。この何れかの条件が成り立たない場合、このディ
スクは暗号鍵を生成するためには用いられない。
2)、このセクタがマークされているか否かを確認する
べく、各セクタがチェックされる(ステップ44)。デ
ィスクが有効であるためには、2つのパラメータ(条
件)と適合しなければならない。第1に、ディスクの複
写を困難とするために、直近の隣接したセクタはマーク
されてはならない(ステップ46)。第2、ディスク1
0に貫通孔が形成されないことを確実にするために、デ
ィスクの反対側の表面の対応するセクタがマークされて
いないことを確かめるべくチェックされる(ステップ4
8)。この何れかの条件が成り立たない場合、このディ
スクは暗号鍵を生成するためには用いられない。
【0033】図6及び図7は、セクタをチェックする過
程を表している(ステップ44)。セクタ24がマーク
されているか否かを確認するために、IBM社のパーソ
ナルコンピュータなどにおけるBIOS関数などの標準
関数が用いられる。第1バッファ32及び第2バッファ
33がクリアされる(ステップ52)。セクタ24は、
インターラプト13hex関数に配置されたリードセク
タ関数を用いて読みだされ、このデータは後に利用する
ために第1メモリバッファ32に記憶される(ステップ
54)。次に読み出し動作がチェックされる(ステップ
56)。全ての動作が順調に行われた場合、セクタはマ
ークされておらず、(ステップ57)同様の動作が次の
セクタをチェックするべく行われる。しかし、読み出し
エラーが発生した場合、このエラーは一般的な故障を若
しくはシミュレートされたマークされたセクタを原因と
することがある。シミュレートされた誤ったセクタは、
例えば、セクタデータに対する誤った検査合計(che
cksum)(CRC)を生成するためにフロッピィデ
ィスクコントローラを用い、かつ誤ってチェックサムを
そのセクタに書き込むことによって読み出される。セク
タへの2度目のデータの書き込みによって、誤ったチェ
ックサムは正しいチェックサムと書き換えられる。
程を表している(ステップ44)。セクタ24がマーク
されているか否かを確認するために、IBM社のパーソ
ナルコンピュータなどにおけるBIOS関数などの標準
関数が用いられる。第1バッファ32及び第2バッファ
33がクリアされる(ステップ52)。セクタ24は、
インターラプト13hex関数に配置されたリードセク
タ関数を用いて読みだされ、このデータは後に利用する
ために第1メモリバッファ32に記憶される(ステップ
54)。次に読み出し動作がチェックされる(ステップ
56)。全ての動作が順調に行われた場合、セクタはマ
ークされておらず、(ステップ57)同様の動作が次の
セクタをチェックするべく行われる。しかし、読み出し
エラーが発生した場合、このエラーは一般的な故障を若
しくはシミュレートされたマークされたセクタを原因と
することがある。シミュレートされた誤ったセクタは、
例えば、セクタデータに対する誤った検査合計(che
cksum)(CRC)を生成するためにフロッピィデ
ィスクコントローラを用い、かつ誤ってチェックサムを
そのセクタに書き込むことによって読み出される。セク
タへの2度目のデータの書き込みによって、誤ったチェ
ックサムは正しいチェックサムと書き換えられる。
【0034】読み出しエラーの理由をチェックするため
に、ランダムな16ビットワード(IBMパーソナルコ
ンピュータなどの場合)が生成され(ステップ58)、
第2バッファ33に記憶される(ステップ60)。生成
された16ビットワードは、インタラプト13hex関
数内に配置されたライトセクタ関数を用いてセクタ24
に書き込まれる(ステップ62)。書き込み動作の成否
がチェックされる(ステップ64)。書き込み動作が成
功しなかった場合、ディスクが書き込み保護(ライトプ
ロテクト)されているか(ステップ66)、一般的なエ
ラーを原因とするかのいずれかであり、ディスクが書き
込み保護されている場合には、書き込み保護が取り外さ
れ(ステップ68)、ステップ62とステップ64が再
び実行される。一般的なエラーを原因とする場合、セク
タはマークされない(ステップ70)。
に、ランダムな16ビットワード(IBMパーソナルコ
ンピュータなどの場合)が生成され(ステップ58)、
第2バッファ33に記憶される(ステップ60)。生成
された16ビットワードは、インタラプト13hex関
数内に配置されたライトセクタ関数を用いてセクタ24
に書き込まれる(ステップ62)。書き込み動作の成否
がチェックされる(ステップ64)。書き込み動作が成
功しなかった場合、ディスクが書き込み保護(ライトプ
ロテクト)されているか(ステップ66)、一般的なエ
ラーを原因とするかのいずれかであり、ディスクが書き
込み保護されている場合には、書き込み保護が取り外さ
れ(ステップ68)、ステップ62とステップ64が再
び実行される。一般的なエラーを原因とする場合、セク
タはマークされない(ステップ70)。
【0035】書き込みエラーが発生しなかった場合、ラ
ンダムに生成されたデータの補数が第2メモリバッファ
33に記憶される(ステップ72)。セクタ24が再び
読みだされる(ステップ74)。読み出し動作の成否が
再びチェックされる(ステップ76)。読み出し動作が
正しく行われていた場合、セクタがマークされていない
ことが表示される(ステップ77)。読み出し動作が成
功しなかった場合、第2メモリバッファ33の内容がチ
ェックされる(ステップ78)。第2メモリバッファ3
3がランダムに生成されたデータを記憶している場合、
セクタ24はマークされておらず、第1メモリバッファ
32の内容がセクタ24に書き込まれる(ステップ8
0)。しかしながら、第2メモリバッファ33がランダ
ムに生成されたデータの補数を記憶している場合、セク
タ24への2度目の読み出し動作(ステップ74)の結
果は、(ステップ62において)セクタ24に書き込ま
れたデータとは一致せず、セクタ24がマークされてい
ることになる(ステップ82)。第1メモリバッファ3
2のデータがセクタ24に書き込まれる(ステップ8
1)。ステップ52から82がディスクの予め選択され
た範囲内のセクタの各セクタ24に対して繰り返され
る。
ンダムに生成されたデータの補数が第2メモリバッファ
33に記憶される(ステップ72)。セクタ24が再び
読みだされる(ステップ74)。読み出し動作の成否が
再びチェックされる(ステップ76)。読み出し動作が
正しく行われていた場合、セクタがマークされていない
ことが表示される(ステップ77)。読み出し動作が成
功しなかった場合、第2メモリバッファ33の内容がチ
ェックされる(ステップ78)。第2メモリバッファ3
3がランダムに生成されたデータを記憶している場合、
セクタ24はマークされておらず、第1メモリバッファ
32の内容がセクタ24に書き込まれる(ステップ8
0)。しかしながら、第2メモリバッファ33がランダ
ムに生成されたデータの補数を記憶している場合、セク
タ24への2度目の読み出し動作(ステップ74)の結
果は、(ステップ62において)セクタ24に書き込ま
れたデータとは一致せず、セクタ24がマークされてい
ることになる(ステップ82)。第1メモリバッファ3
2のデータがセクタ24に書き込まれる(ステップ8
1)。ステップ52から82がディスクの予め選択され
た範囲内のセクタの各セクタ24に対して繰り返され
る。
【0036】図8には、鍵ディスクから鍵を生成する方
法が表されている。マークされた各セクタの位置は、3
つのパラメータ即ちヘッド(H)、トラック数(T)及
び相対セクタ番号(R)によって定義され、以下の式で
nはセクタ番号を表す(ステップ70)。マークされた
セクタSnは以下の式で表される。
法が表されている。マークされた各セクタの位置は、3
つのパラメータ即ちヘッド(H)、トラック数(T)及
び相対セクタ番号(R)によって定義され、以下の式で
nはセクタ番号を表す(ステップ70)。マークされた
セクタSnは以下の式で表される。
【0037】Sn=(Hn,Dn,Rn)
【0038】ディスクfは2つのヘッドを有するので、
Hnは0若しくは1である。一般的に、ディスクは40
若しくは80トラックからなり、各トラック(Tn)は
0(第1トラック)から最終トラック(即ち、39若し
くは76)からなる。1トラック当たりのセクタの個数
は変化する。一般には、1トラック当たり1から、9、
15、18、若しくは36までのセクタが設けられてい
る。
Hnは0若しくは1である。一般的に、ディスクは40
若しくは80トラックからなり、各トラック(Tn)は
0(第1トラック)から最終トラック(即ち、39若し
くは76)からなる。1トラック当たりのセクタの個数
は変化する。一般には、1トラック当たり1から、9、
15、18、若しくは36までのセクタが設けられてい
る。
【0039】2つの予め決められたルックアップテーブ
ルが検索される。変数Hn及びTnは、マークされた各
々のセクタ20に対して第1のルックアップテーブル
(HTテーブル)に書き込まれている(ステップ7
2)。同様に、第2のルックアップテーブル(Rテーブ
ル)は、各セクタ2に対する変数Rnが入力されている
(ステップ74)。各テーブルは8ビットのデータを送
り返す。次に2つの8ビットのデータHT及びRが連結
されて、16ビット(2バイトにひとしい)値を生み出
す(ステップ76)。ステップ70からステップ76は
各マークされたセクタに対して行われる(ステップ7
8)。
ルが検索される。変数Hn及びTnは、マークされた各
々のセクタ20に対して第1のルックアップテーブル
(HTテーブル)に書き込まれている(ステップ7
2)。同様に、第2のルックアップテーブル(Rテーブ
ル)は、各セクタ2に対する変数Rnが入力されている
(ステップ74)。各テーブルは8ビットのデータを送
り返す。次に2つの8ビットのデータHT及びRが連結
されて、16ビット(2バイトにひとしい)値を生み出
す(ステップ76)。ステップ70からステップ76は
各マークされたセクタに対して行われる(ステップ7
8)。
【0040】暗号鍵を生成するために、2つのルックア
ップテーブルから出力された値が、データ暗号化標準
(DES)法によって暗号化される(ステップ80及び
82)。例えば、8バイトの暗号鍵を生成するために、
4個のセクタからの2バイトの値が連結される(ステッ
プ80)。(以下に説明される)マスタ鍵84は、暗号
鍵86を生成するためにこのDES法と共に用いられ
る。
ップテーブルから出力された値が、データ暗号化標準
(DES)法によって暗号化される(ステップ80及び
82)。例えば、8バイトの暗号鍵を生成するために、
4個のセクタからの2バイトの値が連結される(ステッ
プ80)。(以下に説明される)マスタ鍵84は、暗号
鍵86を生成するためにこのDES法と共に用いられ
る。
【0041】マスタ鍵84によって、もう1つ上のレベ
ルの保護が加えられ、このマスタ鍵84は任意の適切な
保護手段からなるものであってよい。しかし、本発明に
基づけば、最大のレベルの保護を確実にするために、マ
スタ鍵84自体は、マークされたディスクの製造者によ
って作成されかつこの製造者のみに知られた独自の鍵か
らなる。即ち、特定の利用者のために作成された暗号鍵
86は独自かつ排他的なものである。
ルの保護が加えられ、このマスタ鍵84は任意の適切な
保護手段からなるものであってよい。しかし、本発明に
基づけば、最大のレベルの保護を確実にするために、マ
スタ鍵84自体は、マークされたディスクの製造者によ
って作成されかつこの製造者のみに知られた独自の鍵か
らなる。即ち、特定の利用者のために作成された暗号鍵
86は独自かつ排他的なものである。
【0042】生成された8ビットストリングの集合から
なる暗号鍵は、この暗号鍵が生み出されたマークされた
ディスクに対応しかつこのディスクと排他的なものであ
る。この暗号鍵は、暗号化のために用いられた特定のマ
ークされたディスクと共にのみ用いることがてきる。
なる暗号鍵は、この暗号鍵が生み出されたマークされた
ディスクに対応しかつこのディスクと排他的なものであ
る。この暗号鍵は、暗号化のために用いられた特定のマ
ークされたディスクと共にのみ用いることがてきる。
【0043】上述されたディスク鍵システムは、暗号鍵
を作成するため特別にマークされたディスクと処理ソフ
トウェアを用いるものである。例えば、ソフトウェア作
成業者は、この暗号鍵をDES暗号化方法と共に用い
て、その作成したソフトウェアを保護し、他のユーザが
そのソフトウェアをコピーして他のユーザ自身のコンピ
ュータにインストールすることを阻止することができ
る。
を作成するため特別にマークされたディスクと処理ソフ
トウェアを用いるものである。例えば、ソフトウェア作
成業者は、この暗号鍵をDES暗号化方法と共に用い
て、その作成したソフトウェアを保護し、他のユーザが
そのソフトウェアをコピーして他のユーザ自身のコンピ
ュータにインストールすることを阻止することができ
る。
【0044】他の実施例では、CD−ROMのセクタ
は、様々な方法によってマークされる。典型的には、2
048バイトを有するCD−ROMのセクタは、無効チ
ェックサム(invalid checksum)の書
き込みによってマークされる。セクタのデータが有効で
あるか否かを確認する手段を提供するために、通常はサ
イクリック・リランダンシー・チェックサム(cycl
ic−redundancy−checksum:CR
C)からなるチェックサムは、セクタに記憶されたデー
タから算出され、セクタに記憶されたデータと共にCD
−ROMへ書き込まれる。このセクタが読み出されたと
き、新たなCRCがセクタのデータから算出され、記憶
されているCRCと比較される。これら2つのCRCが
等しくない場合、このセクタのデータは無効であると見
なされる。このようにセクタの読み出し動作の試みによ
って、例えば、マイクロソフト社の「CD Exdin
sion API(MSCDEX)」を用いた場合、
「DATA INVALID」エラーが送り返される。
は、様々な方法によってマークされる。典型的には、2
048バイトを有するCD−ROMのセクタは、無効チ
ェックサム(invalid checksum)の書
き込みによってマークされる。セクタのデータが有効で
あるか否かを確認する手段を提供するために、通常はサ
イクリック・リランダンシー・チェックサム(cycl
ic−redundancy−checksum:CR
C)からなるチェックサムは、セクタに記憶されたデー
タから算出され、セクタに記憶されたデータと共にCD
−ROMへ書き込まれる。このセクタが読み出されたと
き、新たなCRCがセクタのデータから算出され、記憶
されているCRCと比較される。これら2つのCRCが
等しくない場合、このセクタのデータは無効であると見
なされる。このようにセクタの読み出し動作の試みによ
って、例えば、マイクロソフト社の「CD Exdin
sion API(MSCDEX)」を用いた場合、
「DATA INVALID」エラーが送り返される。
【0045】暗号鍵は、上述されたディスクに対する方
法と同様にして正しくないCD−ROMセクタのパター
ンによって生成される。
法と同様にして正しくないCD−ROMセクタのパター
ンによって生成される。
【0046】正しくないCD−ROMチェックサムの生
成は、セクタがカッティング・レーザに送られる直前に
リアルタイムで全体のセクタを読み出し、真のチェック
サムのビットに書き換え、(正しくないCRCを有す
る)変更されたセクタをカッティング・レーザに送るこ
とによって行われる。
成は、セクタがカッティング・レーザに送られる直前に
リアルタイムで全体のセクタを読み出し、真のチェック
サムのビットに書き換え、(正しくないCRCを有す
る)変更されたセクタをカッティング・レーザに送るこ
とによって行われる。
【0047】図9及び図10には、ソフトウエアを暗合
化するためのシステムを表すブロック図と、ソフトウエ
アを復号化するためのシステムのブロック図を各々表し
ている。
化するためのシステムを表すブロック図と、ソフトウエ
アを復号化するためのシステムのブロック図を各々表し
ている。
【0048】ソフトウエアからなる暗号化器100は、
暗号化されていないソフトウエア102と、暗号鍵86
と、DES暗号化器82とを有する。ソフトウエア作成
業者は、当業者に知られたソフトウエアからなる暗号化
器100、即ちDES暗号化器82を、ディスク製造業
者によって供給された暗号鍵86と共に用いて、暗号化
されていないソフトウエア102を暗号化する。その結
果暗号化されたソフトウエア114が需要者に供給され
る。
暗号化されていないソフトウエア102と、暗号鍵86
と、DES暗号化器82とを有する。ソフトウエア作成
業者は、当業者に知られたソフトウエアからなる暗号化
器100、即ちDES暗号化器82を、ディスク製造業
者によって供給された暗号鍵86と共に用いて、暗号化
されていないソフトウエア102を暗号化する。その結
果暗号化されたソフトウエア114が需要者に供給され
る。
【0049】ソフトウエアからなる復号化器110は、
DES復号化器83と、マークされたディスク112
と、暗号化されたソフトウエア114と、鍵抽出器11
6とを有する。鍵抽出器116はマークされたディスク
112から復号鍵20を生成するために用いられる。次
に抽出された復号鍵120が暗号化されたソフトウエア
114を復号化し、復号化されたソフトウエア122が
作成される。
DES復号化器83と、マークされたディスク112
と、暗号化されたソフトウエア114と、鍵抽出器11
6とを有する。鍵抽出器116はマークされたディスク
112から復号鍵20を生成するために用いられる。次
に抽出された復号鍵120が暗号化されたソフトウエア
114を復号化し、復号化されたソフトウエア122が
作成される。
【0050】アプリケーションをインストールすること
を望むユーザは、マークされたディスク112と、暗号
化されたソフトウエア114と、インストール用ソフト
ウエア118とを受け取る。鍵抽出器116は、インス
トール用ソフトウエア118の構成要素となっている。
ソフトウエアをインストールするために、ユーザは自分
のコンピュータシステム(図示されていない)のディス
クドライブ内にマークされたディスク112を挿入す
る。インストールされたソフトウエア118は、マーク
されたディスク112を読み込み、このディスクから復
号鍵120を抽出する。次に、このインストール用ソフ
トウエア118が抽出された復号鍵120を用いて暗号
化されたソフトウエア114を復号化し、アプリケーシ
ョンをインストールする。
を望むユーザは、マークされたディスク112と、暗号
化されたソフトウエア114と、インストール用ソフト
ウエア118とを受け取る。鍵抽出器116は、インス
トール用ソフトウエア118の構成要素となっている。
ソフトウエアをインストールするために、ユーザは自分
のコンピュータシステム(図示されていない)のディス
クドライブ内にマークされたディスク112を挿入す
る。インストールされたソフトウエア118は、マーク
されたディスク112を読み込み、このディスクから復
号鍵120を抽出する。次に、このインストール用ソフ
トウエア118が抽出された復号鍵120を用いて暗号
化されたソフトウエア114を復号化し、アプリケーシ
ョンをインストールする。
【0051】適法なマークされたディスクがこのユーザ
によって用いられている場合、抽出された復号鍵120
は暗号鍵86と一致し、復号化されたソフトウエア12
2は暗号化されていないソフトウエア120と一致し、
元のソフトウエアプログラムが成功裡に再構築される。
によって用いられている場合、抽出された復号鍵120
は暗号鍵86と一致し、復号化されたソフトウエア12
2は暗号化されていないソフトウエア120と一致し、
元のソフトウエアプログラムが成功裡に再構築される。
【0052】マークされていない若しくは不正にマーク
されたディスクがユーザによって用いられた場合、生成
された鍵は元の暗号鍵と一致せず、その結果復号化され
たソフトウエアは元のソフトウエアとは異なったものと
なる。従って、各々のインストールには適法にマークさ
れたディスケットが必要とされるので、ソフトウエア作
成業者はそのソフトウエアを認証されていない複写から
容易に守ることができる。
されたディスクがユーザによって用いられた場合、生成
された鍵は元の暗号鍵と一致せず、その結果復号化され
たソフトウエアは元のソフトウエアとは異なったものと
なる。従って、各々のインストールには適法にマークさ
れたディスケットが必要とされるので、ソフトウエア作
成業者はそのソフトウエアを認証されていない複写から
容易に守ることができる。
【0053】当業者には容易に理解されるように、上述
された様々な実施例は説明を目的とするものであって、
本発明のいかなる限定をも意図するものではない。
された様々な実施例は説明を目的とするものであって、
本発明のいかなる限定をも意図するものではない。
【0054】当業者には添付の特許請求の範囲によって
定義された本発明の技術的範囲を逸脱せずにこれまで説
明された好適な実施例に様々な変形及び変更がなされる
ことが容易に理解されるであろう。
定義された本発明の技術的範囲を逸脱せずにこれまで説
明された好適な実施例に様々な変形及び変更がなされる
ことが容易に理解されるであろう。
【0055】
【発明の効果】本発明によれば、マークされていない若
しくは不正にマークされたディスクがユーザによって用
いられた場合、ソフトウエア作成業者はそのソフトウエ
アを複写から容易に守ることができる。
しくは不正にマークされたディスクがユーザによって用
いられた場合、ソフトウエア作成業者はそのソフトウエ
アを複写から容易に守ることができる。
【図1】鍵ディスクが挿入されたコンピュータシステム
のディスクドライブを表す図。
のディスクドライブを表す図。
【図2】図1に示された鍵ディスクの上面図。
【図3】鍵ディスクの磁性媒体面を表す図。
【図4】本発明の好適実施例に基づくソフトウェアから
形成された暗号鍵生成ユニットを表すブロック図。
形成された暗号鍵生成ユニットを表すブロック図。
【図5】図4のソフトウェアによって形成された暗号鍵
を生成する方法を表すフローチャート。
を生成する方法を表すフローチャート。
【図6】ディスク確認方法を表すフローチャート。
【図7】ディスク確認方法を表すフローチャート。
【図8】鍵ディスクから暗号鍵を生成する方法を表すフ
ローチャート。
ローチャート。
【図9】図4のソフトウェアによって形成された暗号鍵
を用いてソフトウェアを暗号化するシステムを表すブロ
ック図。
を用いてソフトウェアを暗号化するシステムを表すブロ
ック図。
【図10】図4のソフトウェアによって形成された暗号
鍵を用いてソフトウェアを復号化するシステムを表すブ
ロック図。
鍵を用いてソフトウェアを復号化するシステムを表すブ
ロック図。
10 鍵ディスク 12 ディスクドライブ 14 ディスクの表面 16 磁性媒体 18 ジャケット 20 マークされたセクタの位置 22 同中心のデータトラック 24 セクタ
Claims (13)
- 【請求項1】 データ暗号化システムであって、 (a)マークされたセクタパターンを備えたマークされ
たランダムアクセス可能な移動可能なデータ記憶素子
と、 (b)前記マークされたランダムアクセス可能な移動可
能なデータ記憶素子から暗号鍵を生成するための鍵生成
ユニットと、 (c)前記暗号鍵に基づいて前記データを暗号化する暗
号化ユニットとを有することを特徴とするデータ暗号化
システム。 - 【請求項2】 暗号化されたデータの復号化システム
であって、 (a)マークされたランダムアクセス可能な移動可能な
データ記憶素子のマークされたセクタのパターンから暗
号鍵を生成するための鍵生成ユニットと、 (b)前記暗号鍵を用いて前記暗号化されたデータを復
号化する復号化器とを有することを特徴とする暗号化さ
れたデータの復号化システム。 - 【請求項3】 前記ランダムアクセス可能な移動可能
なデータ記憶素子がディスクからなることを特徴とする
請求項1若しくは2に記載のシステム。 - 【請求項4】 前記ランダムアクセス可能な移動可能
なデータ記憶素子が、コンパクトディスク・リードオン
リメモリ(CD−ROM)素子からなることを特徴とす
る請求項1若しくは2に記載のシステム。 - 【請求項5】 前記鍵生成ユニットが、 (a)前記ランダムアクセス可能な移動可能なデータ記
憶素子からの読み出し及び前記ランダムアクセス可能な
移動可能なデータ記憶素子への書き込みを行うためのデ
ィスクドライブと、 (b)前記読み出し手段によって少なくとも1つの前記
セクタから読み出された第1のデータの集合の内容を記
憶するための第1メモリバッファと、 (c)データをランダムに生成するためのランダムワー
ドジェネレータと、 (d)前記ランダムに生成されたデータと前記ランダム
に生成されたデータの補数とを記憶するための第2メモ
リバッファと、 (e)前記ランダムに生成されたデータを書き込んだ後
の前記セクタからの1度目の読み出しの結果と、前記ラ
ンダムに生成されたデータの前記補数の書き込んだ後の
前記セクタの2度目の読み出しの結果とを比較し、前記
セクタの内の前記少なくとも1つのセクタが前記マーク
されたセクタの1つのセクタであるかどうかを確認し、
マークされたセクタの前記パターンを形成するセクタ比
較器と、 (f)前記マークされたセクタのパターンから前記暗号
鍵を生成するための鍵ジェネレータとを有することを特
徴とする請求項1乃至4の何れかに記載のシステム。 - 【請求項6】 データ暗号化方法であって、 (a)複数のセクタを含むマークされたランダムアクセ
ス可能な移動可能なデータ記憶素子のマークされたセク
タのパターンから暗号鍵を生成する過程と、 (b)前記暗号鍵に基づいて前記データを暗号化する過
程とを有することを特徴とするデータを暗号化する方
法。 - 【請求項7】 暗号化されたデータの復号化方法であ
って、 (a)各々が複数のセクタを含む2つの表面を備えたマ
ークされたランダムアクセス可能なデータ記憶素子のマ
ークされたセクタパターンから暗号鍵を生成する過程
と、 (b)前記暗号鍵を用いて前記暗号化されたデータを復
号化する過程とを有することを特徴とする暗号化された
データの復号化方法。 - 【請求項8】 前記暗号鍵を生成する過程が、 (a)前記マークされたランダムアクセス可能な移動可
能なデータ記憶素子を検証する過程と、 (b)前記マークされたセクタの位置をメモり記憶装置
に記憶する過程と、 (c)前記マークされたセクタからパターンを形成する
過程と、 (d)前記マークされたセクタのパターンから前記暗号
鍵を生成する過程とを有することを特徴とする請求項6
若しくは7に記載の方法。 - 【請求項9】 前記ランダムアクセス可能な移動可能
なデータ記憶素子がディスクからなることを特徴とする
請求項6乃至8の何れかに記載の方法。 - 【請求項10】 前記検証過程が、 (a)前記ランダムアクセス可能な移動可能なデータ記
憶素子の前記複数のセクタの各々がマークされているか
否かを決定する過程と、 (b)マークされているセクタの各々に対して、(i)
前記マークされたセクタの直近の隣接するセクタがマー
クされていないことを検証する過程と、(ii)前記マ
ークされたセクタに対応する、前記ディスクの反対の表
面の対応するセクタがマークされていないことを検証す
る過程とを有することを特徴とする請求項9に記載の方
法。 - 【請求項11】 前記決定過程が、 (a)前記複数のセクタの各々からの1度目の読み出し
を行い、前記読み出されたデータを第1メモリバッファ
に記憶する過程と、 (b)ランダムなデータを生成し、前記生成されたラン
ダムなデータを前記読み出されたセクタに書き込み、か
つ前記ランダムに生成されたデータを第2メモリバッフ
ァに記憶する過程と、 (c)前記ランダムに生成されたデータの補数を前記第
2メモリバッファに記憶する過程と、 (d)前記読み出されたセクタからの2度目の読み出し
を行う過程と、 (e)前記第2メモリバッファの内容を前記ランダムに
生成されたデータと比較する過程と、 (f)前記第2メモリバッファの内容が前記ランダムに
生成されたデータと一致しない場合、前記セクタをマー
クされたセクタとして特定する過程とを有することを特
徴とする請求項9に記載の方法。 - 【請求項12】 ソフトウエアを保護するためのシス
テムであって、 (a)マークされたランダムアクセス可能な移動可能な
データ記憶素子のマークされたセクタのパターンから暗
号鍵を生成するための鍵生成ユニットと、 (b)前記暗号鍵に基づいて前記ソフトウエアを暗号化
するための暗号化ユニットと、 (c)前記マークされたランダムアクセス可能な移動可
能なデータ記憶素子のマークされたセクタの前記パター
ンから復号鍵を生成するための鍵抽出器と、 (d)前記復号鍵を用いて前記ソフトウエアを復号化す
るための復号化器とを有することを特徴とするソフトウ
エアを保護するためのシステム。 - 【請求項13】 ソフトウエアを保護する方法であっ
て、 (a)複数のセクタを備えたマークされたランダムアク
セス可能な移動可能なデータ記憶素子のマークされたセ
クタのパターンから暗号鍵を生成する過程と、 (b)前記暗号鍵に基づいて前記ソフトウエアを暗号化
する過程と (c)前記マークされたランダムアクセス可能な移動可
能なデータ記憶素子のマークされたセクタの前記パター
ンから復号鍵を生成する過程と、 (d)前記復号鍵を用いて前記ソフトウエアを復号化す
る過程とを有することを特徴とするソフトウエアを保護
する方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| IL11389095A IL113890A0 (en) | 1995-05-28 | 1995-05-28 | Encryption key |
| IL113890 | 1995-05-28 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0954691A true JPH0954691A (ja) | 1997-02-25 |
Family
ID=11067523
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8156167A Pending JPH0954691A (ja) | 1995-05-28 | 1996-05-28 | データ暗号化システム及び暗号化方法並びに暗号化されたデータの復号化システム及び復号化方法 |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP0745925A2 (ja) |
| JP (1) | JPH0954691A (ja) |
| IL (1) | IL113890A0 (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003505752A (ja) * | 1999-03-15 | 2003-02-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 蓄積媒体上でコピー保護を提供するための方法及びシステム及び、そのようなシステムで使用される蓄積媒体 |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100526943B1 (ko) * | 1997-05-30 | 2005-11-09 | 마크로비젼 유럽 리미티드 | 기록매체의 복사 방지방법, 복사 방지된 기록매체 및 액세스 제어정보를 검출하는 수단 |
| DE69704352T2 (de) * | 1997-08-28 | 2001-07-12 | Sony Dadc Austria Ag Anif | System zur Kopierverwaltung einer optischen Platte |
| GB2330682A (en) * | 1997-10-22 | 1999-04-28 | Calluna Tech Ltd | Password access to an encrypted drive |
| WO2009088114A1 (en) * | 2008-01-11 | 2009-07-16 | Slim Disc Corp. | Drm method using bad pattern, and digital contents recorder/player and method using that |
-
1995
- 1995-05-28 IL IL11389095A patent/IL113890A0/xx unknown
-
1996
- 1996-05-22 EP EP96303667A patent/EP0745925A2/en not_active Withdrawn
- 1996-05-28 JP JP8156167A patent/JPH0954691A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003505752A (ja) * | 1999-03-15 | 2003-02-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 蓄積媒体上でコピー保護を提供するための方法及びシステム及び、そのようなシステムで使用される蓄積媒体 |
Also Published As
| Publication number | Publication date |
|---|---|
| EP0745925A2 (en) | 1996-12-04 |
| IL113890A0 (en) | 1996-08-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR100484421B1 (ko) | 저작권보호 시스템, 기록기기 및 복호기기 | |
| CN1240066C (zh) | 有数据保护区的可记录存储介质 | |
| EP1855281B1 (en) | Apparatus for writing data to a medium | |
| US6957343B2 (en) | Validating keying material by using a validation area of read-only media to prevent playback of unauthorized copies of content stored on the media | |
| JP5690363B2 (ja) | 書き込み方法及びコンピュータシステム。 | |
| JP2005502975A (ja) | 媒体のカッティング領域に妥当性検査データを格納することによるメディア・キー・ブロックの保全性の検証 | |
| JP4355293B2 (ja) | 記憶媒体への信頼性の高いアクセス制御方法および装置 | |
| JPH08335182A (ja) | ファイル保護システム及びそのファイル保護システムを用いたソフトウエア利用システム及びそのソフトウエア利用システムに用いられる記録媒体 | |
| US20060123483A1 (en) | Method and system for protecting against illegal copy and/or use of digital contents stored on optical or other media | |
| CN101246724B (zh) | 使用用户密钥来限制存储介质的使用的方法和装置 | |
| US20020141583A1 (en) | Copy protection using a preformed ID and a unique ID on a programmable CD-ROM | |
| JP5217541B2 (ja) | コピープロテクト方法、コンテンツ再生装置およびicチップ | |
| JP2008523537A (ja) | デジタル著作物の配給及び使用を制御する方法及び装置 | |
| JPH0954691A (ja) | データ暗号化システム及び暗号化方法並びに暗号化されたデータの復号化システム及び復号化方法 | |
| JP3837368B2 (ja) | 著作権保護システム、記録機器及び復号機器 | |
| JP4051294B2 (ja) | 暗号キー管理システム及び生産・サービス用設備 | |
| CN104902208A (zh) | 一种基于aes算法的防拷贝视频加密u盘及加密方法 | |
| JP2003008567A (ja) | 著作権保護システム | |
| WO2007128418A1 (en) | Apparatus for writing data to a medium | |
| US20060253722A1 (en) | Uncopyable optical media through sector errors | |
| JP2004014112A (ja) | 著作権保護システム、記録機器及び復号機器 | |
| KR20060116810A (ko) | 디스크 암호해독 방법 및 시스템 | |
| JP2000315175A (ja) | データ書込装置、データ読取装置、記憶媒体および鍵共有方法 | |
| KR20030085513A (ko) | 매체의 컷팅 영역에 검증 데이터를 저장하는 것을 이용한매체키 블록의 무결성 확인 |