JP2006520036A - 光学メディア及び他のメディアに記録されたデジタル・コンテントに対する不正コピー及び不正な使用の防止方法及び防止システム - Google Patents

光学メディア及び他のメディアに記録されたデジタル・コンテントに対する不正コピー及び不正な使用の防止方法及び防止システム Download PDF

Info

Publication number
JP2006520036A
JP2006520036A JP2006502632A JP2006502632A JP2006520036A JP 2006520036 A JP2006520036 A JP 2006520036A JP 2006502632 A JP2006502632 A JP 2006502632A JP 2006502632 A JP2006502632 A JP 2006502632A JP 2006520036 A JP2006520036 A JP 2006520036A
Authority
JP
Japan
Prior art keywords
copy
data
content
read
characteristic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2006502632A
Other languages
English (en)
Inventor
コーヘン イヤール
Original Assignee
ヘキサロック リミテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ヘキサロック リミテッド filed Critical ヘキサロック リミテッド
Publication of JP2006520036A publication Critical patent/JP2006520036A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00094Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
    • G11B20/00115Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers wherein the record carrier stores a unique medium identifier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00166Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software
    • G11B20/00173Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised contents recorded on or reproduced from a record carrier, e.g. music or software wherein the origin of the content is checked, e.g. determining whether the content has originally been retrieved from a legal disc copy or another trusted source
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00231Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a local external medium, e.g. a card
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00413Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is input by a user
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00572Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which change the format of the recording medium
    • G11B20/00615Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which change the format of the recording medium said format change concerning the logical format of the recording medium, e.g. the structure of sectors, blocks, or frames
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00659Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a control step which is implemented as an executable file stored on the record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00746Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
    • G11B20/00753Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of copies that can be made, e.g. CGMS, SCMS, or CCI flags
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0092Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which are linked to media defects or read/write errors
    • G11B20/00927Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which are linked to media defects or read/write errors wherein said defects or errors are generated on purpose, e.g. intended scratches

Abstract

コンピュータ・システムによってコピー防止コンテントに対する不正コピーを防ぐ方法に関する。該方法は、コンピュータ・システムのオペレーティング・システム内にドライバをインストールする段階を備える。ドライバは、オペレーティング・システムのデバイス・ドライバにアクセスしようとするオペレーティング・システムのI/Oルーティンの試行を遮ることが可能である。またCRCコードを作成する段階を備える。CRCコードは、デバイスから読み取られたデータに対して作成される。尚、このデータは、オリジナル・コピーを備える。更に、デバイスに書き込まれたデータに対してのCRCコードが作成される。作成されたCRCコードが、読み取られたデータに対して作成されたCRCコードに一致するならば、そのようなデータの書き込み試行は妨げられる。
記録可能CDに格納されたコンテントの保護は、上記コンピュータ・システムによってコピー防止コンテントに対する不正コピーを防ぐ方法により行われる。該方法は、コンピュータ・システムのオペレーティング・システム内にドライバをインストールする段階を備える。ドライバは、オペレーティング・システムのデバイス・ドライバにアクセスしようとするオペレーティング・システムのI/Oルーティンの試行を遮ることが可能である。またCRCコードを作成する段階を備える。CRCコードは、デバイスから読み取られたデータに対して作成される。尚、このデータは、オリジナル・コピーを備える。更に、デバイスに書き込まれたデータに対してのCRCコードが作成される。作成されたCRCコードが、読み取られたデータに対して作成されたCRCコードに一致するならば、そのようなデータの書き込み試行は妨げられる。
記録可能CDに格納されたコンテントの保護は、CD上に第1セッションを書き込むことにより行われる。第1セッションは1若しくはそれ以上のトラックを備え、該トラックそれぞれは、特徴的及び/又は非標準形式のデータ構造を備える。保護されたコンテントはその後CD上に隠蔽形式で書き込まれる。この書き込みにおいて、認証モジュールもともに書き込まれる。認証モジュールは、特徴的及び/又は非標準形式のデータ構造の有無を決定することができる。そして、隠蔽形式のコンテントにアクセスすることが可能である。また、それを解読することが可能である。CDがアクセスされようとすると、認証モジュールは作動し、特徴的及び/又は非標準形式のデータ構造がCD上で見つかれば、隠蔽されたコンテントが明らかになり、アクセス可能となる。

Description

本発明は、デジタル・コンテントを認証し、デジタル・コンテントの不正コピー及び不正な使用からデジタル・コンテントを保護する分野に関する。
より詳しくは、本発明は、記録可能なメディアに保存されたデジタル・コンテントの不正コピー及びデジタル・コンテントの不正な使用を防止する方法及びシステムに関する。
CD-ROMやDVD等の光学メディアは、ソフトウェアを保存する一般的な方法となってきている。なぜなら光学メディアは、高密度且つ信頼性の高い記憶機能を備え、更には、比較的低廉な価格で提供されるようになってきているためである。
従来、記録装置は高価であり、専門家にのみ入手可能であった。したがって、CD-ROMのような光学メディアのコピーによる著作権侵害があまり問題とされてこなかった。
近年、オリジナルを完璧にコピーすることができる記録装置の価格が低廉となってきており、このため、予め録画、録音されているCDsやDVDsの市場規模は減少している。
結果として、ソフトウェアの不正コピーや不正使用の割合は著しく増加し、コンテント・オーナーに深刻なダメージを与えている。
コンパクト・ディスク(CD)は、デジタル情報(コンテント)の光学記録メディアである。この光学的記録メディアは、オーディオ、ビデオ、テキスト、そして他のタイプのデジタル・コンテントの記録に幅広く有効利用されている。
コンパクト・ディスク(CD)の信頼性、効率性そして低廉な価格に起因して、音楽、映画、コンピュータ・ソフトウェア、データを記録するのにコンパクト・ディスク(CD)を使うことは一般的に行われるものとなっている。
しかし、コンパクト・ディスク(CD)に記録されたコンテントは、簡単にコピーされる可能性がある。実際に、コンピュータ・オペレーティング・システム(OS)の基本ツールを利用してコンパクト・ディスク(CD)内のデジタル情報にアクセスすることができる。
しかしながら、記録可能なCD(CD-R)の出現は、CDの不正コピー品に対する複製を一層容易にしている。
近年、不正コピー品の製作のレベルが上がるにつれて、いくつかの光学ディスクのコピー防止技術の水準は向上してきた。多くのコピー防止技術は、故意にディスクのプログラム・データを破壊すること或いはディスクの光学的な特性を変えることに基づいている。
このディスクのプログラム・データの破壊は、専用のマスタリング装置によりなされている。このマスタリング装置は、光学ディスクの複製設備に適用されている。
標準的な光学ディスクレコーダーは、不正コピーを行ったとしても、光学ディスクデータを破壊するよう設計されていないため、オリジナルのコピー防止機能付きディスク内のデータを正確にコピーすることができない。
光学ディスクに付加されるソフトウェア・モジュールは、破壊されるであろうディスクの領域を読み、ディスクがオリジナルであるかコピーであるかを判断し、それに応じてディスクのコンテントにアクセスすることを可能としたり、アクセスを拒否したりする。
既存のコピー防止技術は、コンピュータゲーム等のアプリケーションのコピーを防止するのに適している。アプリケーションは、1つの破壊されたマスターデータを用いて何度も複製されている。この破壊されたマスターデータは、複製設備によって生産されている。
故意に光学ディスク内のデータを破壊することに基づくコピー防止技術の欠点は、このコピー防止技術が記録可能なディスクに容易に適用できないことである。それは、標準の光学ディスクレコーダーが、破壊された記録可能なディスク上に情報を記録するよう設計されていないからである。
記録可能な光学ディスクにおけるコピー防止に対する解決方法は、コンピュータゲームやソフトウェアの販売前の製品(Alphas、Betas等)にとって大変重要である。
コンテント・オーナーは、数量を限定して、コンテントの販売前製品を公表し、ソフトウェアのフィールドテストを行っている。このソフトウェアのフィールドテストは、製品の最終版を発売する前に、バグの存在を調査するのに重要である。
製品の最終版が市場に発売される以前に、著作権保護されるべきデジタル・コンテントを備える販売前製品が、不正にコピーされ、またインターネットを介して流通されてしまうことがある。その様な初期段階におけるソフトウェアの著作権侵害は、販売に大きな損失を生じさせる。なぜなら、最も重要な最初の売り上げのピークに損害を与えるためである。販売前に配布される製品の数は、かなり限定されている。通常、販売前に配布される数は、ほんのわずかから数百枚まである。これは多くの場合、コンテント・オーナー自身が記録可能なディスク上に複製し、これを公表しているからである。
少量のソフトウェアの最終版を発売するにあたって、認可されていない不正コピーに対して、光学的記録可能なディスクのコンテントを保護する機能は、非常に重要である。
例えば、専門的なソフトウェアは限定された専門的な市場において高値で売られている。特に、光学的記録可能なディスクのコピー防止機能は、顧客自身が、購入したいコンテントの選択をし、顧客の全ての選択を含有するディスクがすぐに編集され、記録されるというオン・デマンド環境によく利用されている。
認可されていない不正コピーに対して、光学的記録可能なディスクのコンテントを保護する機能は、政府機関、軍事の極秘情報、そして銀行の財務情報をも保護するのに非常に重要でもある。
加えて、不正コピーに対する光学的記録可能なディスクのコピー防止機能は、個人の顧客が自分自身でコピー防止機能付きコンテントを一度に一回或いは必要に応じて光学ディスク上に記録することが可能としている。このような行為は、一般的なマスタリング施設で今日行われているような大量生産プロセスを必要としないものである。
認可されていない不正コピーに対して、光学的記録可能なディスクのコンテントを保護する機能は、ある特徴を有していて良い。そのある特徴とは、コピー防止解決方法を強化するものであって良く或いは複製されたディスクに簡単に適用されないものであってもよい。
例えば、特別なシリアル・ナンバや特別な追跡情報を付加することにより、それぞれの
ディスクを特徴付ける機能である。その機能により、不正コピーが行われた、オリジナルディスクのオリジナルオーナーを追跡することができるものである。これらの特徴は、後で詳述される。
CDやDVDのような光学記録メディアのコンテントを保護するための全ての従来技術による解決策は、未だ記録可能な光学ディスクをコピー行為から保護するものではない。
そのため、記録可能なディスクのコンテントを保護する方法は、以下の手段を有することが強く望まれている。その手段とは、個人によって作り出されたコンテント及び/又は数量限定のコピー品で利用可能されたものであって、大量生産可能なマスタリングプロセスを必要とせずに得られたコピー品のコンテントを保護する手段である。
ここでCD−R及びCD−RWとの用語は「CD」と称され、エンド・ユーザによりデジタル・コンテントが「CD」上に書き込まれる。また「ディスク」との用語は、CD−R並びにCD−RWを示す。
「Cyclic Redundancy Check(周期的冗長検査):CRC」との用語は、データに対する特徴的な信号を作成する方法を意味する。この方法は、送信されたデータ内のエラーを検出するのにしばしば用いられる。
本発明は、コンピュータ・システムによって、コピー防止コンテントに対する不正コピーを防止する方法並びにシステムに関する。本発明は、コンピュータ・システムのオペレーション・システム内にソフトウェア・ドライバをインストールする段階を備える。ソフトウェア・モジュールは、オペレーション・システムのI/Oルーティンがオペレーション・システムのデバイス・ドライバにアクセスする試行を妨げる機能を備える。デバイス・ドライバからデータを読み取る試行が中断されると、以下の段階が実行される。

・認証テストが実行され、アクセスされたデバイスがオリジナル・コピーを備えるか否かが決定される。もし、アクセスされたデバイスが不正コピーを備えるならば、要求されたI/Oオペレーションは終了される。

・もし、アクセスされたデバイスがオリジナル・コピーを備えるならば、デバイスへのアクセスが可能となり、デバイスから読み取られたデータのCRCコードは、コンピュータ・システムのメモリ内で計算処理され、該メモリ内に格納される。
デバイス・ドライバにデータを書き込む試行が中断されると、以下の段階が実行される。
・データのCRCコードが計算処理され、デバイスへ書き込まれる。

・もし処理されたCRCコードが、コンピュータ・システムのメモリ内に事前に格納されたCRCコードのうち1つと等しい場合には、データを書き込む試行が終了される。

・もし処理されたCRCコードが、コンピュータ・システムのメモリ内に事前に格納されたCRCコードのいずれとも等しくない場合には、データを書き込む試行が実行されることが可能となる。
I/Oデバイスに格納されたデータは、暗号化されていてもよい。本発明は、それゆえ、暗号化されたデータを解読する段階を備えていてもよい。アクセスされたデバイスがオリジナル・コピーを備えるならば、データを解読する段階が実行される。所望するならば、解読キーが、暗号化データが読み取られるI/Oデバイスから得られるものであってもよい。
本発明は、記録可能CDに格納されたコンテントを保護する方法並びにシステムに関する。記録可能CDのディスクID並びにリード・イン スタート・タイムの値が暗号化キーに用いられる。該暗号化キーは、使用されるCD内に格納されたコンテントを暗号化するために用いられる。暗号化されたコンテントは記録可能CDに書き込まれる。CDのコンテントを読み取る試行が行われるときには、以下の段階が実行される。

・ディスクID並びにリード・イン スタート・タイムの値がCDから読み取られる。
・解読キーが読み取られた値から作成される。
・CDのコンテントが作成された解読キーで解読される。

所望ならば、同じキーを用いて暗号化並びに保護されたコンテントの解読がなされてもよい。
コンピュータ・システムによるコピー防止コンテントの不正コピーは、論理的オン状態を示すフラグをセットすることにより防止される。該フラグは、起動プロセスがコンテントからデータを読み取ろうとしたときに論理的オン状態となる。尚、当該フラグは、通常論理的OFF状態とされる。また、当該フラグは、起動プロセスに関連するものとされ、データを出力しようとするプロセスに関連するフラグの状態をチェックする。そして、もし当該フラグが論理的オン状態であるならば、データ出力が妨げられる。
本発明は、記録可能CDに格納されたコンテントを保護する方法並びにシステムに関する。該記録可能CDは、予め焼かれた第1セッションを備える。該第1セッションは、1若しくはそれ以上のトラックを備える。各トラックは、特徴的な及び/又は非標準的なデータ構造を備える。保護されたコンテントは、隠蔽形態で認証モジュールとともにCDに記録される。該認証モジュールは、特徴的な及び/又は非標準的なデータ構造の有無を決定可能である。また、該認証モジュールは、隠蔽されたコンテントにアクセスし、該コンテントを明らかにする能力を備える。もし、特徴的な及び/又は非標準的なデータ構造がCD内で見つけられたら、隠蔽されたコンテントへのアクセスが可能となる。
特徴的な及び/又は非標準的なデータ構造は、Rom Sync Shifts(ロム・シンク・シフト)、Digital Silence(デジタル・サイレンス)、Link Blocks(リンク・ブロック)及び/又はPredetermined Rom Skew values(所定のロム・スキュー値)であってもよい。記録可能CDは更に特徴的なシリアル・ナンバを備えるものであってもよい。該シリアル・ナンバは、1若しくはそれ以上のトラック内の所定場所に格納される。
該特徴的なシリアル・ナンバは、1若しくはそれ以上の特徴的なコピー・シール・シリアル・ナンバを備えるものであってもよい。このコピー・シール・シリアル・ナンバは、トラック内の所定のフレームのユーザ・データ内の所定場所に格納される。更に、特徴的なシリアル・ナンバは、1若しくはそれ以上の特徴なコピー認証シリアル・ナンバを備える。該コピー認証シリアル・ナンバは、トラック内の所定のデータ・フレームのサブ・チャネル内の所定場所に格納される。
コピー・シール・シリアル・ナンバ並びにコピー認証シリアル・ナンバは、著作権違反のコピー品を複製するために用いられた保護されたコンテントのオリジナル・コピーを識別するために用いられてもよい。本発明の好適な実施形態において、コピー・シール・シリアル・ナンバ並びにコピー認証シリアル・ナンバは記録可能なCDそれぞれに対して用いられる。コピー認証シリアル・ナンバのビットは、1若しくはそれ以上のトラック内の所定のデータ・フレームのシーケンスのQサブ・チャネルのコピー許可/禁止ビット(Copy Permit/Prohibit Bit)に格納される。
本発明の他の好適な実施形態にしたがって、以下の手順によって、コピー防止記録メディアは製造される。
連続的なアドレスを備える所定数の連続的なセクタの第1セットにデータを書き込む。そして、該第1セットに続いて、第1セットのセクタと同数の連続的なセクタの第2セットに異なるデータを書き込む。尚、第2セットのセクタは、第1セットのセクタと同じ連続的なアドレスを備える。このようにして、メディアをコピーする試行により、セットのうち1つのみをコピーすることが可能となる。
所望ならば、コピー防止記録メディアは、以下の手順により製造される。開始場所としてセクタ・アドレスを指定し、認証データ・セクタを該セクタ・アドレスに書き込む。そして、開始場所に続いて、所定数の連続的なセクタの第1セットにデータを書き込む。第1セットと同数の連続的なセクタの第2セットに異なるデータを書き込む。第2セットのセクタは、第1セットと同じ連続的なアドレスを備える。そして、第2セットに続いて、終了場所として1つのセクタを指定する。そして、第1セットに続く連続的なアドレスにセクタのアドレスをセットする。このようにして、メディアをコピーしようとする試行により、結果として、開始場所のセクタ、セットのうちの1つ並びに終了場所のセクタのコピーを行うこととなる。
コピー防止記録メディアの認証は以下の手順で行われる。
まず、セクタのうち第1セットのデータが読み取られ、各読み取られたセクタに対して識別子が作られる。そして、終了場所セクタが読み取られ、終了場所セクタに先行するセクタを降り順で読み取る。そして各読み取られたセクタに対して識別子を作成する。この識別子と、第1セット内の対応するセクタに対して事前に作成された識別子とを比較する。そして、対応するセクタに対して作成された識別子同士が一致しない場合、記録メディアがオリジナルであることを指し示す。また、識別子同士が一致する場合には、記録メディアがコピーであることを指し示す。
本発明は、コピー防止記録可能CDに関する。コピー防止CDは、以下の構成を備える。
(a)コピー防止記録可能CDは、予め焼かれたセッションを備え、該セッションは、1若しくはそれ以上のトラックを備える。
(b)コピー防止記録可能CDは、特徴的な及び/又は非標準型のデータ構造を備える。該データ構造は、トラック内の所定のフレームのユーザ・データ・フィールド及び/又はサブ・チャネルに配される。データ構造の一部のみが、従来型のレコーダによりコピー可能である。
(c)更にコピー防止記録可能CDは、1若しくはそれ以上の追加のセッションを備える。追加のセッションには暗号化されたコンテントが配される。この暗号化は暗号化キーにより行われ、暗号化キーは、データ構造から得られた値から作成される。
(d)コピー防止記録可能CDは、ソフトウェア・モジュールを備える。ソフトウェア・モジュールは、CDの第1セッション内のデータ構造の有無を識別可能であり、またCDがオリジナルであるかコピーであるかを決定可能である。CDがオリジナルであるとの決定がなされると、ソフトウェア・モジュールはデータ構造から得られた値から解読キーを作成し、追加のセッションのコンテントを解読する。
本発明の好適な実施形態によれば、1若しくはそれ以上のトラックは、異なるサブコード・フォーマットで記録される。所望ならば、特徴的な及び/又は非標準型のデータ構造は、Rom Sync Shifts(ロム・シンク・シフト)、Digital Silence(デジタル・サイレンス)、Link Blocks(リンク・ブロック)及び/又はPredetermined Rom Skew values(所定のロム・スキュー値)であってもよい。コピー防止CDは、1若しくはそれ以上のトラック内の所定場所に格納された特徴的なシリアル・ナンバを更に備えてもよい。該シリアル・ナンバは以下のものを備える。

・シリアル・ナンバは、1若しくはそれ以上の特徴的なコピー・シール・シリアル・ナンバを備える。該コピー・シール・シリアル・ナンバはトラック内の所定のデータ・フレームのユーザ・データ内の所定場所に格納される。
・シリアル・ナンバは、1若しくはそれ以上の特徴的なコピー認証シリアル・ナンバを備える。該特徴的なコピー認証シリアル・ナンバは、トラック内の所定のデータ・フレームのサブ・チャネル内の所定の場所に格納される。
本発明の他の好適な実施形態によれば、コピー・シール・シリアル・ナンバ並びにコピー認証シリアル・ナンバは、著作権違反の複製品のコピーに用いられた保護されたコンテントのオリジナル・コピーを識別するために用いられる。
本発明の他の好適な実施形態によれば、コピー・シール・シリアル・ナンバ並びにコピー認証シリアル・ナンバは、記録可能CDそれぞれに対して用いられる。コピー認証シリアル・ナンバのビットは、1若しくはそれ以上のトラック内の所定のデータ・フレームのシーケンスのQサブ・チャネルのコピー許可/禁止ビット(Copy Permit/Prohibit Bit)に格納される。
本発明の他の好適な実施形態によれば、コピー防止記録可能CDは、予め焼かれたセッションを備える。該セッションは、1若しくはそれ以上のトラックを備え、該トラックは所定場所を備える。該所定場所は、1若しくはそれ以上の特徴的なコピー・シール・シリアル・ナンバを備える。この特徴的なコピー・シール・シリアル・ナンバは、トラック内の所定のデータ・フレームのユーザ・データ内の所定場所に格納される。更に、所定場所は、1若しくはそれ以上の特徴的なコピー認証シリアル・ナンバを備える。このコピー認証シリアル・ナンバは、トラック内の所定のデータ・フレームのサブ・チャネル内の所定場所に格納される。
本発明の目的は、認可されていない不正コピーに対して、標準の記録可能なディスクに記録されるデジタル・コンテントを保護する方法とシステムを提供することである。
本発明における他の目的は、認可されていない不正コピーからデジタル・コンテントを保護する方法及びシステムを提供することである。
そのデジタル・コンテントを保護する方法及びシステムは、故意に組み込まれた論理記号やシリアル・ナンバを備えるとともに予め焼き付けられた情報を含む記録可能なディスクを使用する。デジタル・コンテントを保護する方法及びシステムは、ディスク及びディスク内に格納されたデジタル・コンテント保護機能付コピー品が真正のものであるか否かを判断するのに用いられる。
本発明の目的は、保護されたデジタル・コンテントに行われた不正コピーの元となった記録メディアの所有者を追跡することである。その方法は、オリジナルとコピーの両方に記録される特別なシリアル・ナンバに基づいて行われる。
本発明の他の目的は、ソフトウェア・ドライバを提供することである。
ソフトウェア・ドライバは、コンピュータのオペレーティング・システムにデジタル・コンテントを簡単に読む機能を提供するものである。デジタル・コンテントは、メディアが正当なオリジナルである限り、任意のメディアに暗号化されて記録されている。
ドライバは、暗号化されたコンテントをコピーすることの試みを防止するよう設計されている。本発明の他の目的や利点は、後述の説明で明らかになる。
ソフトウェアのコピー防止は通常、ソフトウェアに認証手順を設けることにより実施される。この認証手順により、ソフトウェアが記憶されるメディアがオリジナルか否かを確認される。コピー防止ソフトウェアは、用いられている記憶メディアがオリジナルであることが確認されたときには実行されるが、そうでないときは実行が終了される。
ソフトウェア以外のデジタル・コンテント(例えばテキスト、音楽)は、このような技術を用いてもコピーを防止できない。このようなコンテントにアクセスしても、記憶メディアからのプロセスが開始されることがないからである。よって、記憶メディアがオリジナルである場合もそうでない場合も、同様にアクセスされる。本発明は、ソフトウェア・ドライバ(以下、コンテント保護ドライバともいう)のためのアーキテクチャを提供する。このアーキテクチャはオペレーティング・システムにインストールされて、メディアがオリジナルである場合に限り、暗号化されたコンテントをメディアから読み取るのをサポートする。コンテントを解読するプロセスは、エンド・ユーザに何ら負担をかけるものではない。メディアはいかなる種類のコンテントを含んでもよい。コンテントとしては例えば、MPEGビデオ・ファイル或いはMP3オーディオ・ファイルが挙げられる。このコンテントは通常の方法(例えば、ユーザのコンピュータにインストール可能な任意のプレーヤでビデオ・ファイル及びオーディオ・ファイルを再生するなど)で利用できる。しかしながら、コンテントのコピーを作成する試行は全て、コンテント保護ドライバによってブロックされる。
コンテントは、好ましくは暗号化された状態でコピー防止メディアに記憶される。記憶されたコンテントのコピー防止機能は、コンテント保護ドライバにより実行される。コンテント保護ドライバは、ユーザのコンピュータから起動されるオペレーションの読み取り及び/又は書き込みを全て妨げる。暗号化されたコンテントが記憶されている記憶メディアがアクセスされると、コンテント保護ドライバは1つ若しくはそれ以上の認証手段を用いてメディアがオリジナルであることを認証する。認証手段については以下で詳述する。記憶メディアがオリジナルであれば、コンテント保護ドライバは、メディアから情報を読み取るとともに解読する。その後、コンテント保護ドライバは、読み取りオペレーションの巡回冗長検査(Cyclic Redundancy Check(CRC))コードを計算する。コンテント保護ドライバは、コンピュータのメモリに、最近実行された幾つかの読み取り操作について計算されたCRCコードを記憶させる。コンテント保護ドライバが書き込み操作を中断すると、該コンテント保護ドライバは書き込まれるべき情報のCRCコードを計算する。書き込まれるべき情報について計算されたCRCコードが、コンピュータ・メモリに記憶された最近の読み取り操作のCRCコードのうちの1つと一致すると、コンテント保護ドライバは書き込み操作をブロックするか、或いは、模造コンテント(例えば、ランダム・データ)を書き込む。
この独自の方法により、既存のコンテントのコピー防止手段或いは暗号化手段の多くが有する問題が解決される。これら既存の手段においては、暗号化されたコンテントを解読するためのシステムを完全に透過性のシステムにすること、及び全てのプログラムで該システムを利用可能とすることが不可能である。暗号化されたコンテントの記憶によるコンテント保護手段の多くにおいては、ユーザが暗号化されたコンテントへのアクセスするためには、コードを入力するか、或いは解読キーを備える外部装置を使用することが必要である。完全な透過性システムの主な問題点は、OSリソースにアクセス可能なアクティブ・プロセスであればどのようなプロセスでも暗号化されたコンテントにアクセスできることが挙げられる。つまり、全てのコピー・ソフトウェアが、同様の動作即ちコピー防止コンテントの読み取り及びコピーを行うことが可能である。例えば、完全な透過性システムによれば、MS-Windows(登録商標)(エムエス・ウィンドウズ(登録商標))のオペレーティング・システムのwindows(登録商標) explorer(ウィンドウズ(登録商標)・エクスプローラ)が、暗号化されたコンテントを読み取り、その後異なるメディアに該コンテントを書き込むことが可能である。
コピー防止システムは通常、使用されている記憶メディアがオリジナルか否かを決定する認証プロセスを備える。この認証プロセスの結果に基づいて、保護されたコンテントへのアクセスが許可されるか、或いは拒絶されるかが決定される。本発明は、メディアがオリジナルか否かを決定するための2つの異なる方法を提供する。以下では、この方法を、特に光記録ディスクに用いた場合について説明する。
第1の方法の認証プロセスは、標準的な記録ディスクについて行われる。このプロセスでは、全ての記録ディスクに存在する固有の識別記号を用いる。
第2の方法の認証プロセスは、同一のコンテントを異なる記録装置或いは異なる記録方法を用いて記録した2つの異なるディスクが本質的に何らかの小さな相違点を備えるという事実に基づいている。本発明の認証方法は、このような相違点を利用して、用いられているディスクが、オリジナルであるのか、或いは異なる記録装置を用いて作成されたか若しくは異なる記録方法を用いて作成されたコピーであるのかを決定する。
第2の方法の認証プロセスは、予め焼かれた領域を有する標準的な記録ディスクについて行われる。予め焼かれた領域には、意図的に埋め込まれた論理記号及び固有のシリアル・ナンバが記録されている。該認証プロセスは、予め焼かれた領域から情報を読み取って、該情報を用いてディスクがオリジナルか否かを決定するように設計されている。以下で説明するように、ディスクに記録された情報が同じであっても、ディスクに埋め込まれたシリアル・ナンバは全てのディスクそれぞれに固有である。不正コピーが発見された場合には、シリアル・ナンバを用いて、コピーの元となったオリジナルのディスクの所有者を特定可能である。
当業者であれば理解できることであるが、本発明の認証手段は、ほぼ全てのソフトウェアの処理に組み込むことができる。認証プロセスはソフトウェアの動作中に実行される。該認証プロセスは、記憶されているメディアがオリジナルのメディアか否かを決定する。この動作は、その結果によって継続されるか或いは終了される。加えて、これらの認証手段は、暗号化手段を用いて、本発明のコンテント保護ドライバの認証手順に組み込まれることが可能である。これにより、ソフトウェア以外にも全ての種類のデジタル・コンテントに適したコピー防止機構が提供される。
通常の記録済みのCDメディアは、連続したCDフレームからなる。図1は概略図であり、CDフレーム(100)の構造を表す。各CDフレーム(100)は、2352バイトのメイン・チャネル(110)及び98バイトのサブ・チャネル・データ(120)を備える。CDフレームは、オーディオ再生時間(分(Minutes)、秒(Seconds)、フレーム(Frames)(MSF))についてアドレス指定されている。従来通り1分は60秒とされる。
メイン・チャネル・ブロック(110)の構造は、CDに記録されている情報の種類によって決定される。オーディオ・コンテント、コンピュータ・データ・コンテント及びビデオ・コンテントは、異なるメイン・ブロック・チャネル構造を有する。図1に示すメイン・チャネル・ブロック(110)は、フィリップスのYellow Book(イエローブック)標準で定められているように、モード1データ・ブロックである。モード1データ・ブロックは、コンピュータ・データに用いられる。同期フィールド(111)は、同期パターンを維持する12バイトを備える。ヘッダ・フィールド(112)は、MSFフォーマットにしたがった現在のCDフレームのアドレスを表す3バイトの数値データ(絶対時間:absolute time、ATIME))を備える。ヘッダ・フィールド(112)はまた、メイン・チャネル・ブロック・モード(ここではモード1)を表す1バイトの数値データを備える。EDCフィールド(114)は、4バイトのCIRC(Cross-Interleaved Reed-Solomon Code)符号語であり、エラー検知に用いられる。この符号語は、同期フィールド(111)、ヘッダー・フィールド(112)及びユーザ・データ・フィールド(113)に記憶されている情報を用いて計算される。フィールド(115)は8バイトで、予約済みとされるとともに、ゼロとして設定される。ECC(error correctI/On of corrupted informatI/On)フィールド(116)は276バイトで、同期フィールド(111)、ヘッダー・フィールド(112)及びユーザ・データ・フィールド(113)内の破壊された情報(corrupted informatI/On)のエラーを訂正する。これらのフィールド(111、112、114、115、116)はコントロール・フィールドとしても知られる。これらのフィールドは、288バイトを消費する。結果として、ユーザ・データ・フィールド(113)内のユーザ・データのためには、2048バイトが残される。
ディスクのメイン・チャネルの同期パターン(同期フィールド(111))は通常、2352バイトごと(各CDフレームの最初)に現れる。しかしながら、2つの連続する同期パターン間の距離が、2352バイトより短いか、或いは長いことがある。この現象は、ロム・シンク・シフトとして知られている。ロム・シンク・シフトは通常CD−ROMマスターの製造工程でのエラーによって起こる。記録装置は通常、ロム・シンク・シフトを生むようには設計されていない。本発明によると、意図的に埋め込まれたロム・シンク・シフトがコピーを防止された記録ディスクの認証に用いられる。これについては以下で説明する。
サブ・チャネル・フィールド(120)は、2バイトの同期バイト及び96バイトのサブ・チャネル情報を備える。各サブ・チャネル・情報バイト(121)は、8ビットのサブ・チャネル・ビットに分けられる。図1に示す如く、サブ・チャネル・ビットは、ビット位置にしたがってPからWまでの文字を用いて標識される。各サブ・チャネルは、CDフレーム(96ビット)ごとに12バイトを占める。P及びQサブ・チャネルは、記録方法に関する情報を提供する。RからWまでのサブ・チャネルは、オーディオ・CDフレームについてのみ定義される。
フレームのメイン・チャネル(110)内の全ての情報(同期フィールド(111)を除く)は、スクランブルをかけられる。このスクランブルは、予め定義された値を備えるメイン・チャネル(110)の情報のXOR(排他的論理和)をとることにより行われる。読み取りアプリケーションに情報を送る前に、情報がディスクから読み取られるのと同時に、読取装置が自動的に情報のスクランブルは解除される。スクランブル後の1つ若しくはそれ以上の、ゼロを含むCDフレームの列は、「デジタル・サイレンス」と呼ばれる。標準的なディスクは通常、デジタル・サイレンスを含まない。以下で説明するように、本発明の方法によると、これらの「デジタル・サイレンス」フレームを用いて、コピーを防止された記録ディスクの認証を行うことができる。
ディスク上の情報は、セッションと呼ばれる論理構造に記録される。セッションは、3つの論理的エンティティに分けられる。エンティティは、ディスクの内周部から始まって外周部に向かって連続的に配されている。図2は、概略図であり、CDセッション(2000)の構造を示す。リード・イン(フィールド(2100))は、ディスクの中心付近の記録のない領域からの読み取りを防ぐための保護用ゾーンである。該フィールドは、ドライブに、記録済みの領域の開始場所についての信号を送る。リード・イン・フィールド(2100)はまた、プログラム領域(2200)の目次情報(Table of Contents、TOC)を備える。プログラム領域(フィールド(2200))は、ディスクのユーザ領域ともいう。例えば、オーディオCDにおいては、該領域は音楽が記録されている場所である。リードアウトフィールド(2300)は、記録のない領域からディスクの外縁部への読み取りを防止するための保護ゾーンである。該フィールドは、ドライブに、記録済みの領域の終了場所についての信号を送る。
プログラム領域(2200)は、論理的に独立した領域(トラック(2210)という)に分けられている。プログラム領域(2200)には、少なくとも1つのトラック(2210)がなければならない。トラック(2210)のそれぞれは、2つのポーズ領域を備える。すなわち、プレギャップ・フィールド(2211)及びポストギャップ・フィールド(2213)である。上記のポーズ領域の1つの領域の長さは、150CDフレームである。Pサブ・チャネルは、ギャップを識別するために予約済みとされる。プログラム領域のPサブ・チャネルの値は0であり、ギャップ領域(2211)及び(2213)の値は1に設定されている。プログラム領域内のデータ・フレームであるフィールド(2212)は、ユーザ・コンテント(例えばコンピュータ・ファイル)を記憶する。
標準的な記録装置を用いて、標準的な記録ディスクへ書き込みを行う際には、各トラックのプレギャップ領域(2211)が値ゼロを有するCDフレーム(ユーザ・データ(113)の全てのバイトが値0を有するフレーム)、或いはトラック・ディスクリプタで満たされる。いずれで満たされるかは、用いられる記録装置によって決定される。トラック・ディスクリプタを用いて、該ディスクリプタが書き込まれているトラックを記述する。トラック・ディスクリプタは、トラックの長さ及び該トラックの記録に用いられている記録方法などの情報を含む。トラック・ディスクリプタは、ディスクの機能性には影響を与えない。また上述のように、記録装置によっては、プレギャップ領域(2211)に、トラック・ディスクリプタのかわりに、ユーザ・データ・フィールド(113)に値0を有するCDフレームを書き込む。
1つのセッションは、次のような記録のシーケンスから構成される。すなわち、リード・イン(2100)、トラック領域(2200)、リードアウト(2300)である。しかしながら、マルチ・セッション技術によれば、単一のディスクがいくつかの連結したセッションを有することが可能となる。以下で述べるように、この形態は記録可能な光ディスクのコピー防止スキームの構築に利用可能である。
空の記録可能ディスクの第1フレームは、ディスクの製造者よって値は異なるが、マイナスのアドレスから始まる。このスタート・アドレスは、「リード・イン スタート・タイム」ともいう。MSFアドレス方式でのマイナスのアドレスは、アドレス00:00:00からのカウント・ダウンとして定義される。例えば、アドレス−1は、99:59:74として表示される。プログラム領域(2200)は常に、アドレス00:00:00(MSF)から開始する。よって、第1リード・インの長さは、ディスクのブランドにより異なる。第1リード・インに続くリード・イン(第2セッション及びそれ以降のセッション)の時間は通常60秒間である。空の記録ディスクにはまた、固有の32ビットの数が記録されている。この数は、ディスクIDという。ディスクIDは及びリード・イン スタート・タイムは、標準的なマルチメディアコマンドである「リード・ディスク・インフォメーション:Read Disc InformatI/On」を用いて読み取り可能である。該コマンドは、SCSI MMC−3標準(NCITS.360:2002)で定義される。
通常のCD−ROM装置は、メディアの記録のない領域を読みとることはできない。つまり、CD−ROM装置がプログラム領域(2200)の全ての領域にアクセスすること可能とするためには、プログラム領域(2200)は、保護ゾーンであるリード・イン(2100)及びリードアウト(2300)が必要とする。記録済みのディスクでは、セッションを図3のようにしてもよい。
図4は概略図であり、Qサブ・チャネルの構造を示す。各CDフレームは、98ビットのQサブ・チャネル情報を含む。フィールド(410)は、フレームの2バイトのサブ・チャネル同期バイトの、2ビットの同期ビットを含む。フィールド(420)は、4ビットの制御ビットを含む。該制御ビットは、CDフレームのコンテント・タイプを記述する。制御フィールドは、デジタル・コピー許可/禁止ビット(421)を備える。デジタル・コピー許可/禁止ビット(421)は、コンテントの所有者が、TNOフィールド(441)により示される現在のトラックに記録されているコンテントのコピーを作成することを許可しているか否かを示す。通常、同一のトラック(2210)内の全てのCDフレームは、それぞれのデジタル・コピー許可ビット(421)に、同一の値を有する。このビットの値は、コンテントの所有者により、各トラックについて設定される。この設定は、コンテントをCDに書き込む前に、書き込みソフトウェアを介して行われる。ADRフィールド(430)は、4ビットで、フィールド(440)の72ビットのデータ・ビットのコンテントを定義する。ADRフィールド(430)は、「Qモード」と呼ばれる。残りの16ビットであるフィールド(450)には、制御フィールド(420)、ADRフィールド(430)、及びデータ・フィールド(440)のCRCコードが記録される。本発明に関連するQモードは、Qモード1のみである。データCDセッションのトラック・プログラム領域(2212)内の少なくとも10のうち9の連続したCDフレームが、Qモード1情報を保持する。
図4のフィールド(441)乃至フィールド(449)は9バイトであり、Qモード1のデータ・フィールド(440)を構築する。TNOフィールド(441)は、BCDとしてトラック番号を保持する。インデックス・フィールド(442)は、トラック内のフレームを、該フレームの属するトラック・セクションによってインデックス化する。第1トラックのインデックス・フィールドの値は、01でなければならない。トラック(2210)のプレギャップ内では、トラック番号TNO(441)は、現在のトラックの番号であり、インデックス・フィールド(442)の値は00である。フィールド(443)乃至(445)(MIN、SEC、FRAME)は、トラック(2210)内のフレーム(100)の相対時間を表示する。該相対時間は、RTIME(6桁のBCDで表される)ともいう。トラック(2210)の第1フレームのRTIMEは、00:00:00である。図7に示すごとく、該RTIMEの値はトラック内のフレーム(100)ごとに増加する。プレギャップ(2211)においては、連続したフレームそれぞれのRTIMEの値は減少する。ゼロ・フィールド(446)は予約済みとされるとともに、ゼロとして設定される。フィールド(447)乃至(449)(AMIN、ASEC、AFRAME)は、プログラム領域内のフレームの絶対時間のアドレスを表示する。該絶対時間は、ATIME(6桁のBCDで表される)ともいう。
図5は概略図であり、記録可能ディスクのレイアウトを表す。CD−R/RWディスクは、第1リード・イン、パワー校正領域(Power CalibratI/On Area、PCA)及びプログラム・メモリ領域(PMA)の前に、2つの追加的領域を備える。PCAは、CD−R及びCD−RWメディアにのみ存在する。PCAはパワーの校正を目的とする。PCAは2つの領域に分けられる。すなわち、テスト領域及びカウント領域である。PMA(Program Memory Area:プログラム・メモリ領域)は、CD−R及びCD−RWメディアにのみ存在する。PMAは、メディア上のユーザ・データ領域の使用するために用いられる。記録動作が停止されると、記録装置はPMAに自動的に記録を追加する。このとき次に書き込み可能なCDフレームの正確なアドレスも記録される。
書き込み操作を開始する前に、記録装置の「書き込み形態ページ」パラメータが設定されなければならない。「書き込み形態ページ」は、内部パラメータ・テーブルであり、記録装置の書き込み機能性を制御する。書き込み機能性としては例えば、書き込み方法、書き込み速度、書き込まれるコンテントの種類(オーディオ、データなど)が挙げられる。
記録可能ディスクへの書き込みを行う方法には、3つの方法がある。すなわち、トラック・アット・ワンス(Track At Once、TAO)、セッション・アット・ワンス(SessI/On At Once、SAO)、及びディスク・アット・ワンス(Disc At Once、DAO)である。
TAOによって情報を書き込むときは、各トラックは別々の記録操作で記録される。また、記録装置のレーザ光は、各トラックの記録が終了後に停止される。SAOによって書き込みを行うときは、各セッションは連続した操作で記録される。記録装置のレーザ光は、各トラックの記録後にも停止されない。各セッションは更に、別個の操作により記録され、レーザ光は各セッションの記録が終了後に初めて停止される。
DAOのみが純粋に連続的な記録方法である。DAOによって書き込みを行うときは、最初のリード・インから最後のリードアウトまでのディスク上の全ての情報は、1つの連続的操作によって記録される。このとき、レーザ光は最後のセッションが書き込まれるまで停止されない。以下で説明するように、書き込み方法は、ディスクのデータ構造に影響を及ぼす。これらの影響をよりよく理解するためには、以下の用語を説明する必要がある。
リンク・ブロック(Link Block)
リンク・ブロックとは、レーザ光が開始されるとき及びレーザ光が停止される前に、記録装置により自動的に書き込まれるCDフレーム(100)である。リンク・ブロックは、新しい記録情報を付加するためのリンクとして記録装置に用いられる。リンク・ブロックはまた、読み取り装置によってCDフレーム(100)の正確な境界線を見つけるために用いられる。尚、記録装置がソフトウェア手段によってリンク・ブロックを書き込むことを防ぐことはできない。
図6は概略図であり、リンク・ブロック(601)及び(602)のレイアウトを表す。レーザ光が照射されると、CD記録装置は以下の5つのCDフレームを書き込む。すなわち、1つのリンク・フレーム及び4つのラン・イン フレーム(ラン・イン1、ラン・イン2、ラン・イン3、及びラン・イン4)である。レーザ光が停止される前に、記録装置は2つのラン・アウト フレーム(602)(ラン・アウト1及びラン・アウト2)を書き込む。例えば、TAO書き込み方法によって書き込みを行うとき、レーザ光は、各トラックの記録前に開始され、各トラックの記録後に停止される。この場合、記録情報フィールド(600)(図6に示す)は、CDトラック(2210)を表す。SAO書き込み方法によって書き込みを行うときは、レーザ光は、各セッションの記録前に開始され、記録後に停止される。この場合リンク・ブロック(601)及び(602)は、セッション(2000)間でのみ書き込まれる。またこの場合、記録された情報(600)は、1つのCDセッション(2000)を表す。しかしながら、DAO書き込み方法によって書き込みを行うときは、レーザ光は1回のみ開始及び停止される。ゆえに、リンク・ブロック(601)及び(602)が、トラック(2210)間或いはセッション(2000)間に書き込まれることはない。
ロム・スキュー(Rom Skew)
ロム・スキューとは、Qサブ・チャネル(400)のATIMEと、メイン・チャネル・ヘッダ・フィールド(112)のATIMEの時間差である。CD読取装置は、Qサブ・チャネル(400)を用いて、CD上の任意の場所を検索する。Qサブ・チャネル内のアドレスが見つかると、読み取り装置はメイン・チャネルに切り換えて、フレームのヘッダ内で同一のATIMEアドレスを検索する。ロム・スキュー値が大きいと、読み取りアクセスが遅くなり、値がマイナスであると、既存のCD読み取り装置との整合性に問題が起きる。標準的なCD書き込み装置内のエンコーダ、或いはCD製造工場の専門的なマスタリング装置を駆動するエンコーダを用いてディスクを作成する場合は常に、ディスクのロム・スキュー数は、エンコーダがディスク作成する間に下す決定により決められる。
サブコード・フォーマット
サブコード・フォーマットは、インデックス・フィールドの値が0であるトラックの領域(プレギャップ(2211))内のRTIMEフレーム・アドレスのフォーマットに関する。サブコード・フォーマットとしては、2つのフォーマットが可能である。すなわち、Sony(ソニー)及びPhilips(フィリップス)サブコード・フォーマットである。これらのサブコード・フォーマットの主要な相違点を図7に示す。連続するフレームのRTIMEの値は、インデックス・フィールドの値が0であるトラックの領域内では、減少するように指定されている。Philipsのフォーマットでは、RTIMEの値は、00:00:01(左から2桁は分を、次の2桁は秒を、最後の2桁はフレームを表す)まで減少する。また、RTIMEの値は、(トラック・プログラム領域(2212)の)インデックス・フィールドの値が1であるフレームに到達したときにのみ、00:00:00の値をとる。その時点で、00:00:00というRTIMEの値は連続するフレームの1フレームごとに、1ずつ増加する。Philipsのサブコード・フォーマットを用いて書き込みされたディスクでは、00:00:00というRTIMEの値を有するフレームは1つのみである。また、このフレームが、インデックス・フィールドの値が0から1に変化するフィールドである。Sonyのフォーマットでは、RTIMEの値は、インデックス・フィールドの値が0である連続するフレームにおいて00:00:00まで減少する。また、インデックス・フィールドの値が1であるトラックの第1フレームのRTIME値もまた00:00:00である。その時点で、RTIME値は、連続するフレームの1フレームごとに1ずつの増加に転ずる。Sonyのサブコード・フォーマットを用いて書き込まれたディスクでは、インデックス・フィールドの値が0から1に変化する1つのトラック内に、00:00:00というRTIME値が2つ存在する。ロム・スキューのように、ディスクのサブコード・フォーマットは、該ディスクの記録に用いるエンコーダにより決定される。
図13Aは、予め焼かれた領域を備える記録可能ディスクの構造を表す。予め焼かれた領域は、本発明の好適な実施形態にしたがって意図的に埋め込まれた論理記号を含む。ディスク(1300)は、標準的な記録可能ディスクであるが、ディスクの第1セッションに固有のパターンを焼くことにより、予め焼かれた情報(1301)の一部を付加されている。予め焼かれた情報(1301)は、追加する情報を、ディスク(1300)の記録可能領域(1302)の1つ若しくはそれ以上のセッションに、任意の標準的な記録装置を用いて焼くことにより、追加される。これは、ディスクを「オープン」のままにすることで実現される。マルチ・セッション・ディスクでは、ディスクに十分な空スペースがあり、且つディスクが「オープン」であれば、追加的なセッションを付け加えることが可能である。ディスクを「オープン」の状態を保つには、データを焼くソフトウェアにより、最後の記録済みセッションのリード・イン内の、次に書き込み可能なアドレスが特定されることが必要である。この値が不明の場合や、或いはFF:FF:FFである場合は、ディスクは閉じられ、追加的なセッションを該ディスクに付加することは不可能である。
図13bは、予め焼かれた情報(1301)の構造を表す。予め焼かれた情報(1301)は、2つのトラック(トラック1及びトラック2)を有するセッションである。第1トラック(1331)のプレギャップは、以下のような意図的に埋め込まれた論理記号を有するCDフレームを備える。

・偽のトラック・ディスクリプタ
プレギャップ1フィールド(1331)はトラック・ディスクリプタを備えるいくつかのCDフレームを有する。該トラック・ディスクリプタは、トラック1を意図的に不適切に記述するので、該トラック・ディスクリプタは標準的な記録方法には対応しないものとなる。ディスク(1300)のコピーを作成するとき、これら偽のトラック・ディスクリプタはゼロ或いは新しいトラック・ディスクリプタと置き換えられる。新しいトラック・ディスクリプタは、トラック及び用いられている記録方法を適切に記述する。

・プレギャップ領域内の「カスタム情報」
予め焼かれた情報のプレギャップ1フィールド(1331)は、いくつかのCDフレームからなる。該CDフレームは、固有のパターン(以下「カスタム情報」という)を有する。「カスタム情報」パターンは、従来のトラック・ディスクリプタ構造とは整合性を持たない。これら「カスタム情報」パターンを含むディスクのコピーを試みると、記録装置は通常、これら「カスタム情報」パターンをゼロ或いは正規のトラック・ディスクリプタと置換する。いずれと置換されるかは、用いられる記録装置及び記録方法による。
本発明の好適な実施形態ではトラック1のトラック・プログラム領域フィールド(1341)は、以下の意図的に埋め込まれた論理記号を有するCDフレームを備える。

第1のトラック即ちトラック1の相対アドレス00:02:16に位置するCDフレームは、
ISO9660にしたがって使用しない状態とされているフィールドに、1つ若しくは複数の識別マークを備える。ISO9660によると、この特定のフレーム・アドレスは、記録済みのCDに関する雑多なデータを記録するために用いられる。これらの識別マークの存在は、ディスク(1300)が、本発明にしたがってコピーから保護された記録ディスクであることを示す。このようなディスクには、暗号化されたコピー防止デジタル・コンテントを記憶可能である。

・デジタル・サイレンス
標準的な記録装置は、CDフレームをデジタル・サイレンスとともに記録するようには設計されていない。ディスク(1300)のコピーを作成するとき、デジタル・サイレンス・フレームはコピーされない。これは、CDフレームの再フォーマットが、記録装置の内部エンコーダにより実行されるからである。

・ロム・シンク・シフト
記録装置は、CDフレームをロム・シンク・シフトとともに記録するようには設計されていない。保護されたディスク(1300)のコンテントをコピーしようとすると必ず、ロム・シンク・シフトを示すCDフレームそれぞれの同期パターン(111)(図1に示す)が保存される。該同期パターン(111)同士は一致させられる。

・シリアル#A
2つの固有のシリアル・ナンバが、予め焼かれた情報(1301)に加えられる。第1の番号であるシリアル#A(コピー・シール)は、トラック1のプログラム領域の1つ若しくはそれ以上のCDフレームに書き込まれる。シリアル#Aは標準的な情報として、CDフレームのユーザ・データ・フィールド(図1のフィールド(113))に書き込まれる。これにより、確実にシリアル#Aはオリジナル・ディスクの全てのコピーに移される。予め焼かれた情報(1301)は、記録することによりディスクに付加される。よって、固有のシリアル#Aを、記録途中に、保護されたディスクのそれぞれに書き込むことが可能である。以下に説明するように、シリアル#Aは、海賊版の追跡に用いられる。

・シリアル#B
第2のシリアル・ナンバであるシリアル#B(コピー認証)の個々のビットは、デジタル・コピー許可ビット(421)に書き込まれる。デジタル・コピー許可ビット(421)は、トラック1のトラック・プログラム領域(2212)内のいくつかのCDフレームからなるシーケンスである。このように、シリアル#Bの1ビットは、トラック1内のフレームのシーケンス内にある各CDフレームのデジタル・コピー許可ビット(421)に書き込まれる。よって、コピー防止CDの第1セッションに焼かれたトラック1は、デジタル・コピー許可ビット(421)に、様々な値を有するいくつかのCDフレームを備えるように設定される。コピー防止ディスク(1300)のコンテントのコピーを試みると常に、(オリジナル・ディスクの)これらビット(421)が有する様々な値が1つの一定値に置換される。この一定値は、記録されたコピーのトラック1の全てのデジタル・コピー許可ビット(421)について一定である。
本発明の一つの好適な実施形態によると、トラック1のプレギャップ1(1331)は、Philipsサブコード・フォーマットによって記録される。一方で、トラック2のプレギャップ2(1361)はSonyサブコード・フォーマットによって記録される。このようにして、コピー防止ディスク(1300)のコンテントのコピーを試みると常に、記録されたコピーのプレギャップ領域(1331)及び(1361)の両方が、記録装置によって決定された1つのサブコード・フォーマットによって記録される。
予め焼かれた情報(1301)はまた、トラック1のポストギャップ1(1351)とトラック2のプレギャップ2(1361)の間にリンク・ブロックを備える。追加的な偽のリンク・ブロックが、意図的にトラック1のトラック・プログラム領域(2212)の中間に書き込まれる。標準的な記録装置及び記録方法を用いた場合、トラック1のトラック・プログラム領域(2212)にはリンク・ブロックは書き込まれない。これらのリンク・ブロックは、標準的なCDフレームの替わりにトラック1のプログラム領域内に書き込まれる偽のリンク・ブロックである。ディスク(1300)のコピーを作成すると、コピーを作成するのに用いた記録方法にしたがって、リンク・ブロックが書き込まれる。よって、トラック1のトラック・プログラム領域内の偽のリンク・ブロックは、記録されたコピーにはコピーされない。加えて、コピーが連続的な記録方法(SAO或いはDAO)によって記録される場合には、コピーに、フィールド(1351)とフィールド(1361)の間のリンク・ブロックが現れないこともある。
図13Bのリンク・ブロックのそれぞれは、ブロック(602)及び(601)のシーケンスからなる。各ブロックは、図6に示す構造を有する。これらの記録された構造は、従来のCD読み取り装置では読み取ることができない。したがって、このような記録された構造をコピーしようとしても、不確実なコンテントが記録される。当然ながら、コピーを記録するのに用いられる記録方法によっては、記録装置により追加的なリンク・ブロックが生成される。
上に挙げた論理記号を除いて、ディスクのPMA領域(1300)は意図的に埋め込まれた偽のPMAエントリ(1311)を備える。このPMAエントリ(1311)はディスクのレイアウトに適合しない。偽のPMAエントリの一例としては、トラック1のトラック・プログラム領域内のCDフレームのアドレスを挙げるようなものがある。これは実際のPMAエントリではない。なぜならば、PMAエントリは、記録が停止されたときにのみ書き込まれるものであり、記録装置は、トラックの途中で記録を停止するようには設計されていないからである。したがって記録装置は上記の該トラック内での記録を続ける。ディスク(1300)のコピーを作成しようとすると、記録装置はコピーに、ディスクレイアウト及び記録方法に適合するPMAエントリを付加する。すなわち、偽のPMAエントリはコピーには存在しない。
これらの意図的に埋め込まれた論理記号は、ディスクID、リード・イン スタート・タイム、及び予め焼かれた情報のロム・スキュー値と併せて、オリジナル・ディスクがオリジナルであることを証明するとともに、暗号化によって不正コピー及び不正使用からデジタル・コンテントを保護するために用いられる。以下に説明するように、保護されるべきコンテントは、記録可能領域(1302)に追加される。
図9は、全ての記録可能ディスクに存在するディスク固有の識別記号を用いて、記録可能CDを認証するプロセスを表す。該プロセスは、ステップ900から始まる。ステップ900においては、ディスクからディスクIDが読み取られる。ステップ902においては、CDからリード・イン スタート・タイムが読み取られる。ステップ903においては、ステップ900及びステップ902で読み取られた値が、CDがオリジナルCDである場合にCDから読み取られることが期待される値と比較される。読み取られた値が期待される値と等しいならば、そのCDはオリジナルである。等しくない場合は、CDはコピーである。このような認証プロセスを実行する認証ソフトウェアを用いることによって、該ソフトウェアに、該認証プロセスにおいて、ディスクID及びリード・イン スタート・タイムの期待される値が提供される。これにより、該認証ソフトウェアを記憶するメディアがオリジナルか否かを判断することが可能となる。またその結果に応じて、操作が継続或いは終了される。
図12Aおよび図12Bは、標準的な記録可能ディスクに記憶されたデジタル・コンテンツを、暗号化よって、不正コピーから保護する方法を示す。図12Aは暗号化プロセスを表し、図12Bは、解読プロセスを表す。尚、該解読プロセスは、図12Aに示すコピー防止方法によって作成されたディスクから、コピー防止コンテンツが読み取られるたびに実行される。
暗号化プロセスは、図12Aのステップ1200から開始する。ステップ1200では、ディスクIDとリード・イン スタート・タイムが読み取られる。ステップ1202では、認証プロセス(図9に示す)の、各種の期待される値が設定される。図9に示すプロセスのステップ903に示すごとく、期待される値は、実行プログラム・ファイルに組み込まれた認証プロセスによって用いられる。ステップ1202は、実行プログラム・ファイル内の固定値を、ファイルが書き込まれるディスクのディスクID及びリード・イン スタート・タイムの実際の値に置換することにより実行される。ステップ1203においては、ディスクID及びリード・イン スタート・タイムを用いて暗号キーが作成される。該暗号キーは、該ディスクIDとリード・イン スタート・タイムの値を、数学的及び/又は論理的操作を利用して、及び/又は所定のシーケンスの順列を利用して操作することにより作成される。尚、該順列は、該値について、或いは該値に対する数学的及び/又は論理的操作の結果に基づく。例えば、暗号化キーは、ディスクID及びリード・イン スタート・タイムの値の排他的論理和をとることにより、作成されてもよい。
ステップ1204では、書き込まれようとしているコンテンツ(記録されるべき実際のコンテンツ)が、ステップ1203で作成された暗号化キーを用いて暗号化される。ステップ1205では、暗号化されたコンテンツが、ディスク(CD)に書き込まれる。つまり、この方法を用いて暗号化されたコンテンツを有するディスクのコピーを試みると、記録されたコピーの暗号化コンテンツは、無用のものとなる。暗号コンテンツを適切に解読及び使用するためには、ディスクID及びリード・イン スタート・タイムの正確な値が必要である。コピーのディスクがオリジナルと同一のディスクIDとリード・イン スタート・タイムの値を有する可能性は、無視できる程度に低い。
図12Bは、ディスクから暗号化されたコンテンツを読み取るたびに実行される解読プロセスを示す。ステップ1211では、必要な暗号化コンテンツがディスクから読み取られる。ステップ1212では、ディスクID及びリード・イン スタート・タイムがディスクから読み取られる。ステップ1213では、解読キーが、ディスクID及びリード・イン スタート・タイムを用いて計算される。ステップ1213で解読キーを得るために用いられる計算プロセスは、ステップ1203で暗号化キーを作成するために用いられるプロセスと同一である。ステップ1214では、ステップ1211で読み取られた必要なコンテンツが、ステップ1213で計算された解読キーにより解読される。CDがオリジナルであれば、該ディスクのディスクID及びリード・イン スタート・タイムを用いて的確な解読キーが作成されるとともに、コンテンツが的確に解読される。一方で、ディスクが記録されたコピーであると、該ディスクのディスクID及びリード・イン スタート・タイムの値は、オリジナルにおけるそれぞれの値と異なる。よって、この場合にステップ1213で認証ソフトウェアによって計算される解読キーは、不適格な解読キーとなり、コピー防止コンテンツは的確に解読されない。
図10A及び図10Bは、記録可能ディスクに対する認証プロセスを示す。この記録可能ディスクは、図13A及び図13Bに示す本発明の予め焼かれた情報(1301)を備える。このプロセスは、図10Aのステップ1000から始まる。第1プレギャップ領域であるフィールド(1331)(図13Bに示す)がオリジナルのコピー防止ディスク(1300)上にある偽のトラック・ディスクリプタ及びカスタム情報についてスキャンされる。ステップ1001では、ステップ1000で実行されたスキャンおいて、期待されるトラック・ディスクリプタ及びカスタム情報が発見されたか否かがチェックされる。ステップ1001において、期待されるトラック・ディスクリプタ及びカスタム情報が発見されなかったと決定された場合は、ディスクはコピーであると決定される。そうでない場合は、コントロールはステップ1002に進む。
ステップ(1002)において、トラック1(フィールド1341)のトラック・プログラム領域のCDフレームが、ディスクから読み取られる。該CDフレームは、オリジナル・ディスクに存在するとともに、意図的に埋め込まれているデジタル・サイエンスを有するはずである。ステップ1011において、ステップ1002で読み取られたCDフレームがデジタル・サイエンスを有するか否かがチェックされる。もし、デジタル・サイエンスを有するフレームが発見されなければ、そのCDはコピーであると決定される。ステップ1002で読み込まれたCDフレームが、デジタル・サイレンスを有すると決定された場合には、コントロールはステップ1003に進む。ステップ1003においては、オリジナル・ディスクのトラック1のプログラム領域に意図的に埋め込まれたロム・シンク・シフトを含むCDフレームが読み取られる。ステップ1012では、ステップ1003で読み取られたCDフレーム内にロム・シンク・シフトが存在するか否かがチェックされる。ロム・シンク・シフトが存在しないと決定されると、CDはコピーであると決定される。ロム・シンク・シフトが存在すると決定されると、コントロールは、ステップ1004に進む。ステップ1004では、第1番目及び第2番目のプレギャップ(フィールド1331及びフィールド1361)のサブコード・フォーマットが決定される。ステップ1013において、ディスク上の上記の2つのプレギャップが同一のサブコード・フォーマットを有するか否かがチェックされる。2つのプレギャップが同一のサブコード・フォーマットを有すると決定された場合には、ディスクはコピーであると決定される。上記の2つのプレギャップにおいて、異なるサブコード・フォーマットが発見された場合には、コントロールは、数字「4」で示される段階を通じて、図10Bのステップ1005に進む。
図10Bのステップ1005において、予め焼かれた情報(1301)が、期待されるリンク・ブロックについてスキャンされる。ステップ1014では、ステップ1005で実行されたスキャンで、期待されるリンク・ブロックが発見されたか否かがチェックされる。期待されるリンク・ブロックが発見されなかった場合には、ディスクはコピーであると決定される。そうでない場合、すなわち該リンク・ブロックがディスク上で発見された場合には、コントロールはステップ1006に進む。ステップ1006においては、ディスクのPMAエントリがディスクのPMA領域から読み取られる。ステップ1015においては、期待される偽のPMAエントリがディスク上に存在するか否かがチェックされる。偽のPMAエントリがディスク上に存在しない場合には、ディスクはコピーであると決定される。そうでない場合、すなわち偽のPMAエントリがディスク上に存在する場合には、コントロールはステップ1007に進む。ステップ1007においては、予め焼かれた情報(1301)のロム・スキュー値がチェックされる。ステップ1016においては、ステップ1007において決定された実際のロム・スキュー値が、オリジナルのコピー防止ディスクに存在すると期待される値と等しいか否かがチェックされる。2つの値が等しくない場合は、ディスクはコピーであると決定される。そうでない場合、すなわちステップ1007において決定されたロム・スキュー値が期待される値と等しい場合には、ディスクはオリジナルであると決定される。
図10A及び図10Bに示す認証プロセスは、本発明における認証テストの全てを含む。しかしながら、これらテストを全て行わなくても、コピー防止ディスクがオリジナルであるか否かを決定可能である。つまり、上述のテストの一部に基づいた、より簡便な認証手順を用いてもよい。
図11A及び図11Bは、記録可能ディスク(1300)に埋め込まれた論理記号及びシリアル・ナンバを用いてデジタル・コンテンツを不正コピーから保護する方法を示す。図11Aは、暗号化プロセスを示し、図11Bは解読プロセスを示す。これらプロセスはコピー防止ディスクから、記録されたコンテンツを読み取るたびに実行される。
暗号化プロセスは、図11Aのステップ1100から始まる。ステップ1100においては、偽のトラック・ディスクリプタ及びカスタム情報が、ディスクの第1プレギャップ(図13Bのフィールド1131)から読み取られる。ステップ1101においては、ディスク固有のシリアル#Aが、ディスクの第1トラックのトラック・プログラム領域(フィールド1341)から読み取られる。ステップ1102においては、ディスク固有のシリアル#Bが、ディスクの第1トラックのトラック・プログラム領域(1341)から読み取られる。ステップ1103においては、ステップ1101及びステップ1102において読み取られた情報の一部もしくは全てを用いて、暗号化キーが計算される。ステップ1104においては、保護されなければならないデジタル・コンテンツが、ステップ1103において計算された暗号化キーを用いて暗号化される。ステップ1105においては、暗号化されたコンテンツが、追加的セッションにある、ディスクの記録可能領域(フィールド1302)に書き込まれる。
図11Bは、解読プロセスを示す。解読プロセスは、コンテンツがディスクから読み取られるたびに行われる。ステップ1110においては、必要なコンテンツが読み取られる。ステップ1111では、偽のトラック・ディスクリプタ及びカスタム情報が、ディスクの第1プレギャップ(図13Bのフィールド1331)から読み取られる。ステップ1112においては、ディスク固有のシリアル#Aが、ディスクの第1トラックのトラック・プログラム領域(1341)から読み取られる。ステップ1113においては、ディスク固有のシリアル#Bが、ディスクの第1トラックのトラック・プログラム領域(1341)から読み取られる。ステップ1114においては、解読キーが、ステップ1111乃至ステップ1113において読み取られた情報を用いて計算される。ステップ1115においては、ステップ1110において読み取られたデジタル・コンテンツが、ステップ1114において計算された解読キーを用いて解読される。ディスクがコピーであれば、偽のトラック・ディスクリプタが及びカスタム情報がディスクの第1プレギャップ内に存在しないはずである。また、シリアル#Bもディスク上に存在しないはずである。したがって、ステップ1114において計算された解読キーは、間違ったキーとなるはずである。よって、このような場合には、コピー防止コンテンツは適切に解読されない。一方で、ディスクがオリジナルであれば、ステップ1114において、正しい解読キーが計算されるので、該コンテンツは、適切に解読される。
ステップ1103及びステップ1114において実行される暗号化キー及び解読キーは、既に得られている値(すなわち、シリアル#A、シリアル#B、偽のトラック・ディスクリプタ及びカスタム情報)の一部若しくは全てを用いて作成される。このとき、数学的及び/又は論理的操作の利用、及び/又は前述の値或いはそれらについて行われた数学的及び/又は論理的操作の結果としての、いくつかの所定のシーケンスの利用が必要である。
図8Aは概略図であり、コンテンツ保護ドライバ(813)を含むコンピュータ・システムのアーキテクチャを表す。コンピュータのメモリ(810)は、オペレーティング・システム・ソフトウェアを備える。全てのオペレーティング・システム・ソフトウェアは、アプリケーション(811)のI/Oデバイス(816)へのアクセスを管理する2つの主要な要素からなる。第一の要素は、オペレーティング・システムのI/O API(Input/Output ApplicatI/On Interfaces)(812)である。第二の要素は、オペレーティング・システムのデバイス・ドライバ(814)である。通常のオペレーティング・システムでは、アプリケーション(811)を動作するためには、オペレーティング・システムのI/O API(812)が必要である。オペレーティング・システムのI/O API(812)は、I/Oコントローラ(815)を介しての、I/Oデバイス(816)からの又はI/Oデバイス(816)への、インプット/アウトプット操作を実行する。オペレーティング・システムのI/O API(812)はオペレーティング・システムのデバイス・ドライバ(814)を用いて、実際のインプット/アウトプット・タスクを実行する。各ドライバは、該ドライバの管理するデバイスに適した固有のI/O手順を有する。
コンテンツ保護ドライバ(813)は、オペレーティング・システムのI/O API(812)及びオペレーティング・システムのデバイス・ドライバ(814)の間にインストールされる。このインストールは、I/Oデバイス(816)及びコンピュータ・メモリ(810)の間に配されている。これによって全てのI/Oオペレーション及びデータ転送を妨げることが可能となるように行われる。このようにコンテンツ保護ドライバ(813)を配することをフッキング(hooking)ともいう。
図8Bは、コンテンツ保護ドライバ(813)をコンピュータ・オペレーティング・システムへインストールする手順を示す。ステップ800において、インストール手順は、サポートされたI/Oデバイス(816)がコンピュータ・システム内に存在するか否かをチェックする。サポートされたI/Oデバイス(816)がなければ、コンテンツ保護ドライバのインストール手順は、ステップ801で停止される。そうでない場合、すなわちサポートされたI/Oデバイス(816)がある場合は、コントロールはステップ802に進む。ステップ802において、インストール手順は、オペレーティング・システムのI/O API(812)をインストールされたコンテンツ保護ドライバ(813)までフックする。オペレーティング・システムのI/O API(812)がコンテンツ保護ドライバ(813)までフックされた後は、全てのアプリケーション(811)からの全てのI/Oリクエストは、OSデバイス・ドライバ(814)に向けてではなく、OSのI/Oルーティン及びコンテンツ保護ドライバ(813)のI/Oルーティンを通して、送信される。
コンテンツ保護ドライバ(813)は、実際にはプログラム・ファイルであり、コピー防止メディア自体に、或いは別のメディアに記憶可能である。インストールする段階は、このプログラム・ファイルを動作させることにより開始される。
ステップ803においては、既存のサポートされたI/Oデバイス(816)のそれぞれに、メディアが存在するか否かがチェックされる。メディアが存在しなければ、コントロールはステップ809に移る。ステップ809においては、フラグ(No Decrypt)が特定のI/Oデバイスから読み取られているコンテンツを解読する必要がないことを示すように設定される。コントロールがステップ809から数字「2」で示される段階を介してコンテンツ保護ドライバのメイン・ループに移るまで、オペレーションは継続する。
ステップ803においてメディアがサポートされたI/Oデバイスのうちの一つに存在すると決定されると、コントロールはステップ804に移る。ステップ804においては、メディア上のコンテンツが暗号化されているか否かがチェックされる。このチェックの方法は、メディアの種類によって変わる。CDの場合は、第1トラックの相対アドレス00:02:16にあるCDフレームを読み取ることにより行われる。上記で説明したように、このCDフレームは、本発明の暗号化プロセスにしたがって、識別記号を記憶するために用いられる。該識別記号は、ISO9660にしたがって未使用とされているフィールドに記憶される。識別記号の存在は、メディアがコピーから保護されており、該メディアのコンテンツが暗号化されていることを示す。メディアのコンテンツが暗号化されていないならば、特定のI/Oデバイスから読み取られて記憶されているコンテンツの解読を行う必要はない。よってコントロールはステップ809に移る。コンテンツが暗号化されているならば、該プロセスはステップ805に進む。ステップ805においては、認証テストが行われて、メディアがオリジナルか否かが決定される。認証テストの方法もまた、メディアの種類によって変わる。記録可能CDの場合には、この認証テストとして、図9、図10A及び図10Bに示す本発明の認証テストのうちの一つを行ってもよい。
ステップ806においては、ステップ805の認証テストの結果がチェックされる。ステップ806においてメディアがオリジナルでないと決定されると、特定のI/Oデバイスから読み取られたコンテンツの解読は行われない。またコントロールはステップ809に移る。ステップ806においてメディアがオリジナルであると決定された場合には、コントロールはステップ807に移る。ステップ807においては適切な解読キーがメディアから読み取られる。その後コントロールはステップ808に移る。ステップ808においては、No Decryptフラグをリセットされ、該フラグが特定のI/Oデバイスから読み取られたコンテンツが解読される必要があることを示すようにされる。続いてコントロールは、数字「2」で示される段階を介してメイン・ループに移る。コピー防止コンテンツを解読するのに必要な解読キーは、記憶メディアの所定位置に記憶されている。この位置は、用いられている記憶メディアの種類にしたがって決定される。例えば、CD暗号化においては、暗号化キーはプレギャップにあるシリアル#A及びシリアル#Bの値と、カスタム情報を用いて計算されてもよい。
図8Cは、コンテンツ保護ドライバ(813)のメイン・ループによって行われるプロセスを示す。ステップ831においてプロセスは、ウェイト状態に入る。この状態は、I/Oオペレーションによって作成されたI/Oイベントが、フックを用いて識別されるまで続く。該フックはステップ802において設定されたものである。I/Oイベントが作成されると、コントロールは、ステップ832に移る。ステップ832においては、イベントがサポートされたI/Oデバイス(816)のうちの一つに挿入された新しいメディアのために作成されたものであるのか否かがチェックされる。新しいメディアが挿入されているならば、コントロールはステップ838に移る。ステップ838においては、挿入されたメディアが保護されているか否かがチェックされる。ステップ838において行われるテストは、ステップ804において行われるテストと同一である。メディアが保護されていないならば、コントロールは、ステップ843に移る。ステップ843においては、No Decryptフラグが、特定のI/Oデバイスから読み取られたコンテンツの解読の必要がないことを示すように設定される。コントロールはその後、ステップ831に移り、次のI/Oイベントを待つ。
ステップ838において新しく挿入されたメディアが保護されていると決定されると、コントロールはステップ839に移る。ステップ839においては、メディアについて認証テストが行われる。ステップ839のテストは、図8Bに示すステップ805において行われるテストと同一である。この認証テストの結果は、ステップ840においてチェックされる。メディアがオリジナルでないと決定された場合には、特定のメディアから読み取られたコンテンツを解読する必要がない。よってコントロールはステップ843に移る。メディアがオリジナルであると決定された場合には、コントロールはステップ841に移る。ステップ841においては適切な解読キーがメディアから読み取られる。次のステップ842においては、No Decryptフラグがリセットされて、該フラグが、特定のI/Oデバイスから読み取られたコンテンツが解読されなければならないことを示すようにされる。
ステップ832において、新しいメディアが挿入されなかったと決定されると、コントロールはステップ833に移る。ステップ833においては、イベントが、中断された書き込み操作によって作成されたのか否かがチェックされる。もしそうであるならば、コントロールは、数字「3」で示される段階を介して、書き込み手順(図8D)に移る。イベントが中断された書き込み操作によって作成されたものではないと決定された場合には、コントロールはステップ834に移る。ステップ834においてはイベントが中断された読み取り操作のために作成されたのか否かがチェックされる。
ステップ834において、イベントが、中断された読み取り操作によって作成されたのではないと決定されると、コントロールはステップ831に戻る。ステップ831においては、該プロセスはウェイト状態(待ち状態)に入り、次のイベントを待つ。ステップ834において、イベントが中断された読み取り操作によって作成されたと決定されると、コントロールはステップ835に移る。ステップ835においては、読み取られたコンテンツが解読されるべきか否かがチェックされる。このチェックは、特定のI/OデバイスのNo Decryptフラグの状態をチェックすることにより行われる。解読が行われるべきでない場合(No Decrypt=「1」)は、コントロールはステップ831に戻り、次のイベントを待つ。解読が行われるべきである場合((No Decrypt=「0」)は、コントロールはステップ836に移る。ステップ836においては、読み取られたコンテンツが解読される。プロセスは、ステップ837に進む。ステップ837においては、読み取られたコンテンツのCRCコードが計算された後、CRCの結果がコンピュータ・メモリに記憶される。このステップはまた、最近の読み取り操作において読み取られた全てのコンテンツのCRCコードのリストを管理する。最後にコントロールはステップ831に戻って、次のイベントを待つ。
図8Dは、ステップ833(図8C)から始まる書き込み手順を表す。ステップ841において、書き込まれようとしているコンテンツのCRCコードが計算される。ステップ842においては、ステップ841で計算されて得られたCRCコードが、最近の読み取り操作で読み取られたコンテンツのために計算されたCRCコードのうちの1つと等しいか否かがチェックされる。このチェックは、図8Cに示すステップ837で管理されるリストにあるCRCコードをチェックすることにより行われる。計算されたCRCがリストにあるCRCの値のうちの1つと等しいならば、コントロールはステップ844に移る。ステップ844においては、書き込まれようとしているコンテンツが破壊される。このことは、意味のないランダム・インフォメーションを上書きすることにより行われる。
ステップ842において、計算されたチェックサムが、最近の読み取り操作で読み取られたコンテンツのために計算されたチェックサムのうちの1つと等しくないと決定された場合には、コントロールがステップ843に移る。ステップ843においては、書き込みプロセスは通常、継続を許可される。最後に、コントロールは、数字「2」で示される経路を介して、コンテンツ保護ドライバのメイン・ループ内のステップ831に戻る。
コピー防止コンテンツのコピーからの保護は、アクティブ・プロセスによって適宜更に改善できる。例えば、ステップ837において、読み取りイベントを開始させたプロセスに関連するフラグを設定してもよい。このようにして、書き込み操作がこのプロセスにより行われるたびに、ステップ842において書き込みイベントを開始させたプロセスに関連するフラグの状態がチェックされることにより、コピーが防止される。書き込みイベントが開始したプロセスと関連するフラグがオンと設定されていると決定されると、ステップ844における書き込み操作は阻止される。このようにして更に保護を行うと、開始プロセスからのいかなるアウトプット(例えば、印刷、ペースト)も防止できる。
図14は、クライアントの分配リストを管理するプロセスを表すフローチャートである。該リストは、クライアントの氏名、アドレス、及び特定のクライアントが受け取る予定の予め焼かれたディスク1300のシリアル#Aなどを備える。システムはクライアント情報をクライアント・リストから取得して、該クライアントに固有のディスクを作成する。システムはまた、リストに、分配されたディスク、全てのクライアント情報、及び各クライアントのために作成されたディスクのシリアル#Aコードを追加する。ステップ1400において、シリアル#Aが予め焼かれたディスク1300から読み取られる。ステップ1402においては、次のクライアントの情報が、クライアント・リストから読み取られる。ステップ1403においては、シリアル#A及びステップ1402において読み取られたクライアントの情報が、分配されたディスクのリストに追加される。ステップ1404においては、保護されるべきコンテンツが暗号化されるとともに、図11Aに示すプロセスを用いてディスクに書き込まれる。ステップ1409においては、クライアント・リストに、追加されたクライアントがあるか否かがチェックされる。追加されたクライアントがない場合には、プロセスは終了する。追加されたクライアントがある場合には、コントロールは、ステップ1408に移る。ステップ1408において、システムのオペレータは、新しい記録可能ディスク1300を記録装置に挿入するように求められる。
図15は、海賊版を追跡するプロセスを表す。シリアル・ナンバを有するコピー防止メディア(1300)の不正コピーが発見された場合、本発明のコピー防止方法を用いて、該コピーの元となったオリジナル・ディスクの所有者を追跡することが可能である。システムは、シリアル・ナンバを付加されたメディアのコピー(すなわち、コピー防止ディスク1300からのコピー)から、シリアル・ナンバを読み取るとともに、分配されたディスクのリストにあるクライアントのうちの1つと照合する。ステップ1501において、シリアル#Aのコードが読み取られ、ステップ1502においては分配されたディスクのリストが、対応するシリアル#Aコードを有する記録についてスキャンされる。ステップ1503においては、ステップ1502のスキャンにおいて、対応するシリアル#Aコードを備える記録が発見されたか否かがチェックされる。このような記録が見つからなかった場合は、該コピーが、分配されたディスクのリストにないディスクを用いて作成されたコピーであることが決定される。よってプロセスは終了される。対応する記録が発見された場合には、コントロールは、ステップ1504に移る。ステップ1504においては、対応する記録からクライアントの情報が読み取られる。コンテンツの所有者は、この情報を用いて、少なくとも1つの不正コピーの元となった正規のコピーを受け取った人物を特定する。
図16は、コンテンツを不正コピーから保護することを希望するコンテンツの所有者が本発明のコピー防止システムを用いる方法を示す。図13に示すごとく、コンテンツの所有者は、予め焼かれた情報を有するディスクを用いる。これらのディスクは、図16においては、アイテム1600として示される。これらディスクには、コピー防止コンテンツ(1601)が記録される。焼きこみソフトウェア(1602)は、図12Aに示す暗号化プロセスを用いて、保護されるべきファイルを各ディスクに書き込む前に暗号化する。ソフトウェアはまた、コンテンツの所有者がトラッキング情報(追跡情報)とともにリストを管理することを希望する場合には、図14に示すプロセスを用いる。保護されるべきファイル(コンテンツ)が、プログラム・ファイルであるならば、プログラム・ファイルには、図10A及び図10Bに示す認証プロセスが組み込まれている。この認証プロセスは、ディスクがオリジナルか否かを決定する。この結果にしたがって、各プログラムの実行は終了されるか或いは継続される。保護されるべきファイルが、プログラム・ファイルではなくコンテンツ・ファイルである場合は、ファイルは、単に各ディスク(図12Aを用いて説明したごとく、第1プレギャップのトラック・ディスクリプション並びにカスタム情報、及びシリアル#A並びにシリアル#B)からの既製の暗号化キーを用いて暗号化される。このプロセスの結果として、ディスクに、暗号化されたコンテンツが書き込まれる。該暗号化されたコンテンツは、このプロセスの開始前には記録可能領域であった領域(図13のフィールド1302)に書き込まれる。記録済みディスクの暗号化されたファイルを使用するためには、各ユーザは、コンテンツ保護ドライバがまだインストールされていない場合には、各自のコンピュータにコンテンツ保護ドライバをインストールしなければならない。コンテンツ保護ドライバは、コピー防止ファイルがプログラム・ファイルである場合には不要である。プログラム・ファイルは単独で認証プロセス及び解読ルーティンを実行可能であるためである。
図17は、概略図であり、仮想デジタル・ホログラム(Virtual Digital Hologram、VDH)の構造を示す。VDHは、デジタル記憶メディアの認証に用いられる。記録メディアは、情報ブロック(セクタともいう)に分割されている。情報ブロックにより、記憶された情報を効率的に読み取ることが可能となる。各セクタは固有の識別アドレスを有する。この識別アドレスを用いると、特定のセクタにアクセスして、該セクタのコンテンツを読み取ることが可能となる。
記憶メディアのVDHセクションは、いくつかの連続的な情報ブロック(セクタ)からなる。この情報ブロックは、2つに分けられている。すなわち図17のフィジカル・パート1及びフィジカル・パート2である。VDHの第1部分は、アドレスRB1、RB1+1・・・RB1+4を有する情報ブロックを備える。VDHの第2部分はオーバーラップした情報ブロックの集合を備える。該第2部分の情報ブロックは、第1部分と同じRB1、RB1+1・・・RB1+4とのアドレスを有する。情報ブロックのオーバーラップは、同一メディア上の、2つ若しくはそれ以上の情報ブロックが、同一の識別アドレスを共有することにより実現される。オーバーラップした情報ブロックは、同一のアドレスを有するが、該情報ブロックは異なる情報を備える。よって、オーバーラップした情報ブロックは、実際には、コンテンツによって区別可能なブロックである。VDHは、記録可能或いは記録不可能メディアにおいて使用可能である。ただし、該メディアは、固有の識別アドレスを有する情報ブロックに分割されていなければならない。
例えばCDにおいては、CDフレームのそれぞれが、アドレスを備え、該アドレスは3つの異なる場所に書き込まれている。3つの場所とはすなわち、Qサブ・チャネルのATIME並びにRTIME(図4に示す)、及びヘッダ(図1のブロック112)である。CD上にVDHを創出するためには、オーバーラップするCDフレームにおけるこれら3つの場所が、それぞれの識別アドレスを示すように変更されなければならない。
VDHの2つの部分は、読み取り装置には、不安定な情報(例えば、仮想ブロック1乃至仮想ブロック4)を含む1つの仮想の部分として認識される。読み取りドライブがアプリケーションから、VDH内で見つかった情報ブロックのコンテンツを読み取るようにとの要求を受信すると、該ドライブは、要求された情報のアドレスと適合するアドレスを備える2つの異なる情報ブロックを検知する。この場合、該ドライブは、該ドライブの読み取りヘッドの場所に物理的に最も近い情報ブロックにアクセスする。オーバーラップした情報ブロックと、読み取りヘッドの距離が大きいほど、該ドライブが最も近い情報ブロックを読み取る可能性が高くなる。この距離が小さい場合には、どの情報ブロックが読み取られるかは予測不可能となる。
任意のデジタル・メディアのコピーを作成するには2つの基本的な操作が必要である。すなわち、ソース・メディアからの読み取りと、それに続くターゲット・メディアへの書き込みである。VDHを有する記憶メディアのコピーは必ず、ソース・メディアの有するVDHを欠いている。読み取りプロセス中に、情報ブロックのそれぞれが読み取られたのち、ターゲット・メディアに書き込まれる。しかしながら、VDHが配される領域には、情報ブロック(オーバーラップした複数のブロック)が2組ある。該オーバーラップしたブロックは1つのブロックとして認識される。この領域を読み取るとき、オーバーラップしたブロックの組ごとにただ1つのブロックが読み取られるとともに、ソースへ書き込まれる。結果として、ターゲット・メディアは、VDH領域に読み取られた情報ブロックのみを備え、ソース・メディアのVDH領域のオーバーラップした情報ブロックを備えない。
オーバーラップした情報ブロックのうちどのブロックがターゲット・メディアのVDH領域にコピーされるかを確実に知る方法はない。しかし、この領域の情報は必ず安定となる。つまり、アプリケーションがドライブにコピー・メディアの情報ブロックのコンテンツを読み取るように要求すると、ドライブの読み取りヘッドの場所に関わらず、いつも同一の情報ブロックが読み取られることとなる。
図18は、VDHを有するデジタル・メディアの認証プロセスを表す。この認証プロセスは、VDH領域の情報ブロック(セクタ)の読み取りを2度試みる。1度は「前方に」(例えば、RB1から開始して、続いてRB1+1・・・RB1+4を読み取り、RB2で終了するように)、1度は「後方に」(例えば、RB2から開始して、続いてRB1+4・・・RB1+1を読み取り、RB1で終了するように)読み取りを試みる。
ステップ1800において、第1リセット・ブロック(RB1)が読み取られる。第1リセット・ブロックとは、VDH領域の前の第1番目のセクタである。このセクタを読み取ると、ドライブの読み取りヘッドが、VDHの第1部分の開始場所に移動される。開始場所には、第1のオーバーラップしたセクタRB1+1が位置する。ステップ1801においては、次のセクタが読み取られる。次のセクタとは、第1のオーバーラップしたセクタRB1+13である。ステップ1802においては、ステップ1801において読みとられた情報について、CRCコードが計算される。CRCコードは、コンピュータのメモリに格納される。ステップ1803においては、ステップ1801において読み取られたセクタが第1ブロックの最後のセクタ(すなわちRB1+4)であるか否かがチェックされる。読み取られたセクタが、第1部分の最後のセクタではないと決定されると、コントロールはステップ1801に移る。そうでない場合は、コントロールはステップ1804に移る。
ステップ1804において、次のセクタ(すなわちRB2(=RB1+5))が読み取られる。ステップ1805において、RB2より前のセクタ(例えばRB1+4)が読み取られ、ステップ1806において、ステップ1805において読み取られた情報について、CRCコードが計算される。ステップ1807において、ステップ1806において計算されたCRCコードが、ステップ1802において同一のセクタ(例えばRB1+4)について計算されたCRCと比較される。2つのコードが等しくない場合には、オーバーラップしたセクタのペアが検知されたと推測できる。なぜならば、2つの異なる読み取り操作において、同一のセクタ・アドレスから異なる情報が読み取られたからである。この場合、メディアがオリジナルであると結論され、プロセスは終了される。ステップ1807において比較されたCRCコードが等しい場合には、コントロールはステップ1808に移る。
ステップ1808において、ステップ1805において読み取られたセクタがVDHの第1セクタ(RB1+1)であるか否かがチェックされる。該セクタが、VDHの第1セクタであるRB1+1でない場合には、コントロールはステップ1805に移り、RB1+1より前のセクタが処理される。そうでない場合、つまり第1セクタRB1+1が読み取られている場合には、オーバーラップしたセクタのペアが検知されなかったとみなされて、メディアがVDHを備えないと結論される。よって、メディアはコピーと判断される。
CDフレームのデータ構造を概略的に示す図である。 CDセッション並びにトラックの構造を概略的に示す図である。 マルチ・セッション・レイアウトを概略的に示す図である。 Qサブ・チャネルのデータ構造を概略的に示す図である。 記録可能なCDの構造を示す図である。 リンク・ブロックの構造を示す図である。 ソニー(Sony)及びフィリップス(Phillips)サブコード・フォーマットを示す図である。 コンピュータ・オペレーティング・システム内のデータ・フローを示すブロック線図である。オペレーティング・システム内で、本発明のコンテント保護ドライバがインストールされている。 本発明のコンテント保護ドライバのインストレーション・プロセスを示すフローチャートである。 本発明のコンテント保護ドライバによって実行されるオペレーションを示すフローチャートである。 本発明のコンテント保護ドライバによって実行されるオペレーションを示すフローチャートである。 CDがオリジナルであるか否かを決定する方法を示すフローチャートである。この方法は、特徴的な識別マーク(IdentificatI/On Marks)を用いる。該識別マークは、任意の記録可能ディスク上に存在する。 CDがオリジナルであるか否かを決定する方法のフローチャートである。この方法は、意図的に埋設された論理的シンボルの有無並びにフォーマットをチェックすることにより行われる。 CDがオリジナルであるか否かを決定する方法のフローチャートである。この方法は、意図的に埋設された論理的シンボルの有無並びにフォーマットをチェックすることにより行われる。 暗号化手段により不正コピーからデジタル・コンテントを保護するための方法を示すフローチャートである。この方法は、本発明にしたがって予め焼かれた情報を備える記録可能なディスクを利用する。 保護されたデジタル・コンテントを解読するための方法を示すフローチャートである。該デジタル・コンテントは、本発明によって予め焼かれた情報を備える記録可能なディスク上に格納されている。 標準型記録可能ディスク上のデジタル・コンテントを、不正コピー並びに不正コピー品の使用から保護するための方法を示すフローチャートである。この方法は、暗号化の手段を用いる。 保護されたデジタル・コンテントを解読するための方法を示すフローチャートである。このデジタル・コンテントは、標準型記録可能ディスク上に格納されている。そして、図12A内で示されるプロセスを用いて保護されている。 記録可能なディスクのレイアウトを概略的に示す図である。該記録可能なディスクは、予め焼かれた情報を備える。該情報は意図的に埋め込まれた論理的シンボル並びにシリアル・ナンバを備える。 予め焼かれた情報の構造を概略的に示す図である。該情報は、図13Aを用いて説明されたディスク上に記録されている。 コンテント・マネージメントを追跡し、不正コピー並びにその使用からデジタル・コンテントを暗号化手段により保護する方法を示すフローチャートである。この方法は、特徴的なシリアル・ナンバを備える記録可能ディスクを用いて行われる。 デジタル・コンテントの不正なコピー品を作る著作権侵害品をトラックする方法を示すフローチャートである。該デジタル・コンテントは特徴的なシリアル・ナンバを有する記録可能ディスク上に格納される。 本発明の使用を概略的に示す図である。任意のコンテント所有者が不正コピーからコンテントを保護する使用形態を示す。 本発明の実施形態の仮想デジタル・ホログラム(Virtual Digital Hologram)の構造を示すブロック線図である。 記録メディアを認証するプロセスを示すフローチャートである。このプロセスは、本発明の仮想デジタル・ホログラムを利用する。

Claims (29)

  1. コンピュータ・システムによってコピー防止コンテントに対する不正コピーを防ぐ方法であって、
    (a)前記コンピュータ・システムのオペレーティング・システム内にドライバをインストールする段階を備え、
    該ドライバが、オペレーティング・システムのデバイス・ドライバにアクセスしようとする前記オペレーティング・システムのI/Oルーティンの試行を遮ることが可能であり、
    (b)前記デバイス・ドライバからデータを読み取る試行が遮られるときに常に、
    (b−1)前記アクセスされたデバイスがオリジナル・コピーを備えるか否かを決定する認証テストを実行し、アクセスされたデバイスが不正コピーを有するならば、要求されたI/Oオペレーションを終了させる段階と、
    (b−2)アクセスされたデバイスがオリジナル・コピーを備えるならば、前記デバイスへのアクセスを可能とし、前記コンピュータ・システムのメモリ内において、前記デバイスから読み取られたデータのCRCコードを処理し、格納する段階が、実行される段階と、
    (c)前記デバイス・ドライバへのデータの書き込みの試行が中断されると、
    (c−3)前記デバイスへ書き込まれるデータのCRCコードを処理する段階と、
    (c−4)該処理されたCRCコードが、前記コンピュータ・システムのメモリ内に事前に格納されたCRCコードのうち1つに等しいならば、前記データの書き込みの試行を中断する段階と、
    (c−5)該処理されたCRCコードが、前記コンピュータ・システムのメモリ内に事前に格納されたCRCコードのいずれにも等しくない場合に前記データの書き込みの試行の実行を可能とする段階が、
    実行される段階を備えることを特徴とする方法。
  2. 前記I/Oデバイスに格納されるデータが、暗号化された形態で格納されることを特徴とする請求項1記載の方法。
  3. 前記アクセスされたデバイスがオリジナル・コピーを備えると決定されるときに常に、
    前記暗号化されたデータが解読される段階を備えることを特徴とする請求項2記載の方法。
  4. 解読キーが、前記暗号化されたデータが読み取られる前記I/Oデバイスから得られることを特徴とする請求項3記載の方法。
  5. 前記デバイス・ドライバからデータを読み取る試行が中断されるときに常に、論理的オン状態を示すフラグがセットされる段階であって、該フラグは通常、論理的オフ状態であるとともに、前記読み取りの試行を開始したプロセスに関連する段階と、
    データを出力する試行を行うプロセスに関連するフラグの状態をチェックし、もし前記フラグが論理的オン状態であるならば、データの出力を妨げる段階を備えることを特徴とする請求項1記載の方法。
  6. 記録可能CD上に格納されたコンテントを保護する方法であって、
    (a)前記記録可能CDからディスクIDとリード・イン スタート・タイムの値を読み取る段階と、
    (b) 前記読み取られた値から暗号化キーを作成する段階と、
    (c)前記CD上に格納されるべきコンテントを、前記暗号化キーを用いて暗号化し、暗号化されたコンテントを前記記録可能CDに書き込む段階と、
    (d)CDのコンテントを読み取るための試行が行われると常に、
    (d−1)前記CDからディスクIDとリード・イン スタート・タイムの値を読み取る段階と、
    (d−2)前記読み取られた値から解読キーを作成する段階と、
    (d−3)前記解読キーを用いて、前記CDのコンテントを解読する段階からなることを特徴とする方法。
  7. 同一のキーが、前記保護されたコンテントの暗号化と解読の実行に用いられることを特徴とする請求項6記載の方法。
  8. 記録可能なCD上に格納されたコンテントを保護する方法であって、
    (a)1若しくはそれ以上のトラックを備える第1セッションを前記CD上に記録する段階であって、前記トラックのそれぞれが、特徴的な及び/或いは非標準型のデータ構造を備える段階と、
    (b)隠蔽形式の保護されたコンテントと、特徴的な及び/或いは非標準型のデータ構造の存在・非存在を決定可能であるとともに前記隠蔽されたコンテントにアクセスし、該コンテントを明らかにすることが可能な認証モジュールを前記CD上に記録する段階と、
    (c)前記CDへのアクセスの試行が行われると常に、前記認証モジュールを起動し、
    前記特徴的な及び/或いは非標準型のデータ構造が前記CD上で発見されるならば、前記隠蔽されたコンテントが明らかにされ、アクセスされることを可能とする段階を備えることを特徴とする方法。
  9. 前記特徴的な及び/或いは非標準型のデータ構造がロム・シンク・シフトを備えることを特徴とする請求項8記載の方法。
  10. 前記特徴的な及び/或いは非標準型のデータ構造がデジタル・サイレンスを備えることを特徴とする請求項8記載の方法。
  11. 前記特徴的な及び/或いは非標準型のデータ構造がリンク・ブロックを備えることを特徴とする請求項8記載の方法。
  12. 前記特徴的な及び/或いは非標準型のデータ構造が所定のロム・スキュー値を備えることを特徴とする請求項8記載の方法。
  13. 前記1若しくはそれ以上のトラック内の所定の場所に、特徴的なシリアル・ナンバを格納する段階を更に備え、前記特徴的なシリアル・ナンバが、
    (a)1若しくはそれ以上の特徴的なコピー・シール・シリアル・ナンバであって、前記トラック内の所定のデータ・フレームのユーザ・データ内の所定の場所に格納されたコピー・シール・シリアル・ナンバと、
    (b)1若しくはそれ以上の特徴的なコピー認証シリアル・ナンバであって、前記トラックの所定のデータ・フレームのサブ・チャネル内の所定の場所に格納されるコピー認証シリアル・ナンバを備えることを特徴とする請求項8記載の方法。
  14. 前記コピー・シール・シリアル・ナンバ並びにコピー認証シリアル・ナンバが、著作権侵害コピーの複製に用いられた前記保護されたコンテントのオリジナル・コピーを識別するために用いられることを特徴とする請求項13記載の方法。
  15. 前記コピー認証シリアル・ナンバのビットが、前記1若しくはそれ以上のトラック内の所定のデータ・フレームのシーケンスのQサブ・チャネルのコピー許可/禁止ビット内に格納されることを特徴とする請求項13記載の方法。
  16. コンピュータ・システムによってコピー防止コンテントの不正コピーを防止する方法であって、
    起動プロセスが、前記コンテントからデータを読み取ろうとするとき、論理的オン状態へのフラグをセットする段階を備え、
    前記フラグは通常論理的オフ状態であるとともに前記プロセスに関連し、
    データを出力しようとするプロセスに関連付けられたフラグの状態をチェックする段階と、
    もし前記フラグが論理的オン状態であるならば前記データ出力を妨げる段階を備えることを特徴とする方法。
  17. コピー防止記録可能CDであって、該CDは、
    (a)1若しくはそれ以上のトラックを備える予め焼かれたセッションと、
    (b)ユーザ・データ・フィールド内及び/或いは前記トラック内の所定のフレームのサブ・チャネル内に特徴的な及び/或いは非標準型のデータ構造を備え、
    前記データ構造の一部のみが従来型のレコーダによりコピー可能とされ、
    (c)更に、1若しくはそれ以上の追加のセッションを備え、
    該セッションは、1つの暗号化キーにより暗号化されたコンテントを備え、
    該暗号化キーは、前記データ構造から得られた値から作成され、
    (d)加えて、ソフトウェア・モジュールを備え、
    該ソフトウェア・モジュールは、CDの第1セッション内の前記データ構造の有無を識別可能であり、更に、前記CDがオリジナルであるか、コピーであるかを決定可能であり、
    CDがオリジナルであるとの決定がなされると、前記ソフトウェア・モジュールが前記データ構造から得られた値から解読キーを作成し、前記追加のセッションの内容を解読することを特徴とするコピー防止記録可能CD。
  18. 1若しくはそれ以上のトラックが異なるサブコード・フォーマットで記録されることを特徴とする請求項17記載のコピー防止記録可能CD。
  19. 前記特徴的な及び/或いは非標準型のデータ構造が、ロム・シンク・シフトを備えることを特徴とする請求項17記載のコピー防止記録可能CD。
  20. 前記特徴的な及び/或いは非標準型のデータ構造がデジタル・サイレンスを備えることを特徴とする請求項17記載のコピー防止記録可能CD。
  21. 前記特徴的な及び/或いは非標準型のデータ構造がリンク・ブロックを備えることを特徴とする請求項17記載のコピー防止記録可能CD。
  22. 前記特徴的な及び/或いは非標準型のデータ構造が所定のロム・スキュー値を備えることを特徴とする請求項17記載のコピー防止記録可能CD。
  23. 前記1若しくはそれ以上のトラック内の所定の場所に、特徴的なシリアル・ナンバを格納する段階を更に備え、前記特徴的なシリアル・ナンバが、
    (a)1若しくはそれ以上の特徴的なコピー・シール・シリアル・ナンバであって、前記トラック内の所定のデータ・フレームのユーザ・データ内の所定の場所に格納されたコピー・シール・シリアル・ナンバと、
    (b)1若しくはそれ以上の特徴的なコピー認証シリアル・ナンバであって、前記トラックの所定のデータ・フレームのサブ・チャネル内の所定の場所に格納されるコピー認証シリアル・ナンバを備えることを特徴とする請求項17記載のコピー防止記録可能CD。
  24. 前記コピー・シール・シリアル・ナンバ並びにコピー認証シリアル・ナンバが、著作権侵害コピーの複製に用いられた前記保護されたコンテントのオリジナル・コピーを識別するために用いられることを特徴とする請求項23記載のコピー防止記録可能CD。
  25. 前記コピー認証シリアル・ナンバのビットが、前記1若しくはそれ以上のトラック内の所定のデータ・フレームのシーケンスのQサブ・チャネルのコピー許可/禁止ビット内に格納されることを特徴とする請求項23記載のコピー防止記録可能CD。
  26. 1若しくはそれ以上のトラックを備える予め焼かれたセッションを有し、
    前記トラックは、前記1若しくはそれ以上のトラック内に所定の場所を備え、
    (a)1若しくはそれ以上の特徴的なコピー・シール・シリアル・ナンバであって、前記トラック内の所定のデータ・フレームのユーザ・データ内の所定の場所に格納されたコピー・シール・シリアル・ナンバと、
    (b)1若しくはそれ以上の特徴的なコピー認証シリアル・ナンバであって、前記トラックの所定のデータ・フレームのサブ・チャネル内の所定の場所に格納されるコピー認証シリアル・ナンバを備えることを特徴とする請求項17記載のコピー防止記録可能CD。
  27. コピー防止記録メディアの製造方法であって、該製造方法は、
    (a)連続的なアドレスを備える所定数の連続的なセクタの第1セットにデータを書き込む段階と、
    (b)前記第1セットに続いて、前記第1セットと同じ連続的なアドレスを備える前記所定数と同数の連続的なセクタの第2セットに異なるデータを書き込む段階とを備え、
    前記メディアをコピーすることのいかなる試行も前記セットのうち1つのみのコピーしか出来ないことを特徴とする方法。
  28. コピー防止記録メディアの製造方法であって、該方法は、
    (a)開始場所としてセクタ・アドレスを指定し、認証データ・セクタを書き込む段階と、
    (b)前記開始場所に続いて、連続的なアドレスを備える所定数の連続セクタの第1セットにデータを書き込む段階と、
    (c)前記第1セットに続いて、前記第1セットと同じ連続的なアドレスを備える前記第1セットと同数の連続的なセクタの第2セットに異なるデータを書き込む段階と、
    (d)前記第2セットに続いて、終了場所としてのセクタを指定し、前記セクタのアドレスを前記第1セットに続く連続的なアドレスをセットする段階を備え、
    前記メディアをコピーしようとする試行が、結果として、前記開始場所セクタ、前記セットのうち1つ及び終了場所セクタをコピーすることとなることを特徴とする方法。
  29. (a)前記第1セットセクタのデータを読み取り、各読み取られたセクタに識別子を作成する段階と、
    (b)前記終了場所セクタを読み取る段階と、
    (c)前記終了場所セクタに先行するセクタを降り順で読み取り、各読み取られたセクタに識別子を作成し、前記第1セットに対応するセクタに対して前回作成された識別子と前記各読み取られたセクタに対して作成された識別子とを比較する段階と、
    (d)対応するセクタに対して作り出された識別子が不整合であると決定するならば前記記録メディアがオリジナルであることを指し示し、対応するセクタに対して作り出された識別子が整合すると決定するならば前記記録メディアがコピーであることを指し示す段階を行い、
    記録メディアの認証を行う段階を備えることを特徴とする請求項28記載の方法。

JP2006502632A 2003-02-06 2004-02-04 光学メディア及び他のメディアに記録されたデジタル・コンテントに対する不正コピー及び不正な使用の防止方法及び防止システム Pending JP2006520036A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IL154346A IL154346A (en) 2003-02-06 2003-02-06 Method and system for protecting against illegal copy and/or use of digital content stored on optical or other media
PCT/IL2004/000120 WO2004070707A2 (en) 2003-02-06 2004-02-04 Method and system for protecting against illegal copy and/or use of digital contents stored on optical or other media

Publications (1)

Publication Number Publication Date
JP2006520036A true JP2006520036A (ja) 2006-08-31

Family

ID=32843809

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006502632A Pending JP2006520036A (ja) 2003-02-06 2004-02-04 光学メディア及び他のメディアに記録されたデジタル・コンテントに対する不正コピー及び不正な使用の防止方法及び防止システム

Country Status (5)

Country Link
US (1) US20060123483A1 (ja)
EP (1) EP1590806A2 (ja)
JP (1) JP2006520036A (ja)
IL (1) IL154346A (ja)
WO (1) WO2004070707A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117395A (ja) * 2006-10-31 2008-05-22 Hewlett-Packard Development Co Lp フォールトトレラントデータストレージシステムにおけるブロックレベルのデータ破損の検出および訂正

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1883069A3 (en) * 2003-10-08 2008-02-13 Macrovision Corporation Secure access and copy protection management system
US7664966B2 (en) * 2004-05-17 2010-02-16 Microsoft Corporation Secure storage on recordable medium in a content protection system
US7908477B2 (en) * 2004-07-27 2011-03-15 Seiji Eto System and method for enabling device dependent rights protection
US7950061B2 (en) * 2004-10-22 2011-05-24 Om Ahuja Copy-protected audio, video and or data optical disk
US20060218338A1 (en) * 2005-03-23 2006-09-28 Inventec Corporation Method for preventing software from being wrongly burned
US7831882B2 (en) 2005-06-03 2010-11-09 Rambus Inc. Memory system with error detection and retry modes of operation
US9459960B2 (en) 2005-06-03 2016-10-04 Rambus Inc. Controller device for use with electrically erasable programmable memory chip with error detection and retry modes of operation
US7761927B2 (en) * 2005-09-21 2010-07-20 Rovi Solutions Limited Apparatus and method for monitoring and controlling access to data on a computer readable medium
US7562285B2 (en) 2006-01-11 2009-07-14 Rambus Inc. Unidirectional error code transfer for a bidirectional data link
EP1818924A1 (en) * 2006-02-08 2007-08-15 Sony DADC Austria AG Optical disc
US8352805B2 (en) 2006-05-18 2013-01-08 Rambus Inc. Memory error detection
US20070271495A1 (en) * 2006-05-18 2007-11-22 Ian Shaeffer System to detect and identify errors in control information, read data and/or write data
US20080109911A1 (en) * 2006-11-03 2008-05-08 Microsoft Corporation Send/Lend Business Rights
KR100921748B1 (ko) * 2007-06-04 2009-10-15 삼성전자주식회사 Ecc 회로를 포함하는 메모리 시스템 및 그 구동 방법
US20110083188A1 (en) * 2009-10-07 2011-04-07 Om Ahuja Virus, trojan, worm and copy protection of audio, video, digital and multimedia, executable files and such installable programs
US8917464B2 (en) * 2013-01-03 2014-12-23 International Business Machines Corporation Utilization of disk buffer for background replication processes
CN111819547A (zh) 2018-03-26 2020-10-23 拉姆伯斯公司 命令/地址通道错误检测
CN110825639B (zh) * 2019-11-08 2023-01-31 西安雷风电子科技有限公司 一种防篡改时间的软件License验证方法
CN112149192B (zh) * 2020-09-30 2024-02-27 南京工程学院 一种基于运行时锚点的移动存储介质软件保护方法
CN113326051B (zh) * 2021-06-06 2023-11-24 深圳市昂科技术有限公司 芯片序列号烧录装置和方法

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519853A (en) * 1993-03-11 1996-05-21 Legato Systems, Inc. Method and apparatus for enhancing synchronous I/O in a computer system with a non-volatile memory and using an acceleration device driver in a computer operating system
US5809303A (en) * 1995-10-18 1998-09-15 Sun Microsystems, Inc. Device I/O monitoring mechanism for a computer operating system
US5699428A (en) * 1996-01-16 1997-12-16 Symantec Corporation System for automatic decryption of file data on a per-use basis and automatic re-encryption within context of multi-threaded operating system under which applications run in real-time
US5978805A (en) * 1996-05-15 1999-11-02 Microcom Systems, Inc. Method and apparatus for synchronizing files
US6826137B1 (en) * 1998-07-10 2004-11-30 Lg Electronics Inc. Apparatus and method for authentication/copy protection of optical storage medium and the optical storage medium
JP2000090579A (ja) * 1998-07-15 2000-03-31 Ricoh Co Ltd 光ディスクのフォ―マット装置、フォ―マット方法及び光ディスク
US6629199B1 (en) * 1999-08-20 2003-09-30 Emc Corporation Digital data storage system including directory for efficiently providing formatting information for stored records and utilization of a check value for verifying that a record is from a particular storage location
US7539828B2 (en) * 2000-08-08 2009-05-26 Faronics Corporation Method and system for automatically preserving persistent storage
JP2002123435A (ja) * 2000-10-17 2002-04-26 Hitachi Ltd 情報提供装置および方法
US7278158B2 (en) * 2001-03-16 2007-10-02 Securewave S.A. Method and system for shadowing accesses to removable medium storage devices
WO2002093334A2 (en) * 2001-04-06 2002-11-21 Symantec Corporation Temporal access control for computer virus outbreaks
EP1249958B1 (de) * 2001-04-09 2005-01-19 Alcatel Verfahren und Vorrichtung zur adaptiven Turbo Dekodierung mehrerer Funkkanäle unter Bestimmung eines CRC am Ende jeder Iteration
US7260820B1 (en) * 2001-04-26 2007-08-21 Vm Ware, Inc. Undefeatable transformation for virtual machine I/O operations

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117395A (ja) * 2006-10-31 2008-05-22 Hewlett-Packard Development Co Lp フォールトトレラントデータストレージシステムにおけるブロックレベルのデータ破損の検出および訂正
JP4668970B2 (ja) * 2006-10-31 2011-04-13 ヒューレット−パッカード デベロップメント カンパニー エル.ピー. フォールトトレラントデータストレージシステムにおけるブロックレベルのデータ破損の検出および訂正
US8145941B2 (en) 2006-10-31 2012-03-27 Hewlett-Packard Development Company, L.P. Detection and correction of block-level data corruption in fault-tolerant data-storage systems

Also Published As

Publication number Publication date
EP1590806A2 (en) 2005-11-02
US20060123483A1 (en) 2006-06-08
IL154346A (en) 2010-06-16
WO2004070707A2 (en) 2004-08-19
WO2004070707A3 (en) 2005-04-14
IL154346A0 (ja) 2009-02-11

Similar Documents

Publication Publication Date Title
US7260219B2 (en) Recordable storage medium with protected data area
JP4183724B2 (ja) 記録担体のコピー保護方法、コピー保護された記録担体およびアクセス制御情報を検出する方法
JP2006520036A (ja) 光学メディア及び他のメディアに記録されたデジタル・コンテントに対する不正コピー及び不正な使用の防止方法及び防止システム
KR100580572B1 (ko) 매체에 저장된 컨텐츠의 비인증 사본의 재생을 방지하기위해 판독-전용 매체의 검증 영역을 이용한 키 재료의검증 방법 및 장치
US7057993B2 (en) Copy protection using multiple security levels on a programmable CD-ROM
JPH11250512A (ja) コピー防止された光記録媒体の製造方法、コピー防止された光記録媒体にアクセスする方法、及びコピー防止された光記録媒体
US20020141583A1 (en) Copy protection using a preformed ID and a unique ID on a programmable CD-ROM
KR20040062442A (ko) 디지털 콘텐트 은닉 장치 및 방법
US7995754B2 (en) Recordation of encrypted data to a recordable medium
JP2002074833A (ja) データ改竄チェック方法および装置、ならびに、記録媒体
JP4073438B2 (ja) 情報記録媒体、情報記録媒体のセクタ読取り方法、情報記録媒体の真贋判定方法、情報記録媒体の真贋判定プログラム
US7624285B2 (en) Method and device for protecting user information against manipulations
US20060253722A1 (en) Uncopyable optical media through sector errors
JP2001216148A (ja) 不正に複製されたプログラムまたはデータがコンピュータで使用されるのを防止する記録媒体
Güneysu CD/DVD Copy Protection
JP2005032332A (ja) 光ディスクとその記録情報を利用するためのプログラム
JP2003281817A (ja) 光ディスク複製防止方法
KR20050016577A (ko) 사용자 정보의 부정조작을 방지하는 방법 및 장치