JP4568933B2 - Information processing apparatus and method, and program storage medium - Google Patents
Information processing apparatus and method, and program storage medium Download PDFInfo
- Publication number
- JP4568933B2 JP4568933B2 JP36608699A JP36608699A JP4568933B2 JP 4568933 B2 JP4568933 B2 JP 4568933B2 JP 36608699 A JP36608699 A JP 36608699A JP 36608699 A JP36608699 A JP 36608699A JP 4568933 B2 JP4568933 B2 JP 4568933B2
- Authority
- JP
- Japan
- Prior art keywords
- content
- cpu
- data
- time
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 166
- 230000010365 information processing Effects 0.000 title claims description 19
- 230000008569 process Effects 0.000 claims description 116
- 238000003672 processing method Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 claims description 2
- 230000010076 replication Effects 0.000 claims 7
- 238000012545 processing Methods 0.000 description 56
- 230000033458 reproduction Effects 0.000 description 56
- 238000004891 communication Methods 0.000 description 23
- 230000006870 function Effects 0.000 description 22
- 238000012546 transfer Methods 0.000 description 21
- 238000010586 diagram Methods 0.000 description 19
- 238000001914 filtration Methods 0.000 description 18
- 230000006835 compression Effects 0.000 description 17
- 238000007906 compression Methods 0.000 description 17
- 230000004044 response Effects 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000005236 sound signal Effects 0.000 description 7
- 239000004065 semiconductor Substances 0.000 description 6
- 238000013478 data encryption standard Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 230000010355 oscillation Effects 0.000 description 4
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 3
- 229910052782 aluminium Inorganic materials 0.000 description 3
- 239000013078 crystal Substances 0.000 description 3
- 230000001681 protective effect Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 229940048662 kwai Drugs 0.000 description 2
- 238000003825 pressing Methods 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000000593 degrading effect Effects 0.000 description 1
- 230000002542 deteriorative effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00094—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers
- G11B20/00123—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving measures which result in a restriction to authorised record carriers the record carrier being identified by recognising some of its unique characteristics, e.g. a unique defect pattern serving as a physical signature of the record carrier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00166—Circuits 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/00173—Circuits 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0021—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/0071—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a purchase action
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/00746—Circuits 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/00746—Circuits 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/00753—Circuits 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
- G11B20/00768—Circuits 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 wherein copy control information is used, e.g. for indicating whether a content may be copied freely, no more, once, or never, by setting CGMS, SCMS, or CCI flags
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/00086—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
- G11B20/00731—Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
- G11B20/0084—Circuits 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 time or date
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Management Or Editing Of Information On Record Carriers (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、情報処理装置および方法、並びにプログラム格納媒体に関し、特に、例えば、コンテンツの複製を適切に制限することができるようにした情報処理装置および方法、並びにプログラム格納媒体に関する。
【0002】
【従来の技術】
著作権が設定されているAVコンテンツ(例えば、音楽や画像)の複製を制限する方法として、SCMS(Serial Copy Management System)、CGMS(Copy Generation Management Sysytem)などが提案されている。
【0003】
これらのシステムにおいては、図1に示すように、著作権が設定されたコンテンツA1(第1世代)を複製し、コンテンツA2(第2世代)を得ることは(記録することは)できるが、コンテンツA2(第2世代)自体をさらに複製して、コンテンツA3(第3世代)を得ることはできない。
【0004】
【発明が解決しようとする課題】
しかしながら、この場合、図1に示すように、コンテンツA1の複製を繰り返すことより、複数の第2世代のコンテンツA2を得ることができ、コンテンツA1の著作権が十分に保護されない課題があった。
【0005】
そこで、コンテンツA1を1度だけ複製することができるようにした方法として、UCS(Uni Copy System)が提案されているが、この場合、ユーザは、個人の使用の範囲においても、1度だけしか複製することができず、ユーザに不利益を与える課題があった。
【0006】
本発明はこのような状況に鑑みてなされたものであり、ユーザの利益を大きく損なうことなく、大量の複製を実質的に禁止することができるようにするものである。
【0007】
【課題を解決するための手段】
本発明の情報処理装置は、第1の記録媒体に記録されているコンテンツを複製し、その結果得られるコピーコンテンツを前記第1の記録媒体とは異なる第2の記録媒体に記録する複製手段と、前記第1の記録媒体に記録されている前記コンテンツが前記複製手段によって複製される毎、前記コンテンツを識別する識別情報に前記コンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースを更新する更新手段と、第1の記録媒体に記録されている前記コンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報を取得する取得手段と、取得された前記識別情報に対応するコンテンツが前回複製されたときの時刻情報を前記期限データベースから読み出し、複製が指示された前記コンテンツが前回複製されてから所定の時間が経過している合には、前記複製手段に対して前記コンテンツの複製を許可し、複製が指示された前記コンテンツが前回複製されてから所定の時間が経過していない場合には、前記複製手段に対して前記コンテンツの複製を禁止する複製制御手段とを含む。
【0008】
本発明の情報処理方法は、第1の記録媒体に記録されているコンテンツを複製し、その結果得られるコピーコンテンツを前記第1の記録媒体とは異なる第2の記録媒体に記録する複製手段を備える情報処理装置の情報処理方法において、前記第1の記録媒体に記録されている前記コンテンツが前記複製手段によって複製される毎、前記コンテンツを識別する識別情報に前記コンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースを更新する更新ステップと、第1の記録媒体に記録されている前記コンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報を取得する取得ステップと、取得された前記識別情報に対応するコンテンツが前回複製されたときの時刻情報を前記期限データベースから読み出し、複製が指示された前記コンテンツが前回複製されてから所定の時間が経過している場合には、前記複製手段に対して前記コンテンツの複製を許可し、複製が指示された前記コンテンツが前回複製されてから所定の時間が経過していない場合には、前記複製手段に対して前記コンテンツの複製を禁止する複製制御ステップとを含む。
【0009】
本発明のプログラム格納媒体は、第1の記録媒体に記録されているコンテンツを複製し、その結果得られるコピーコンテンツを前記第1の記録媒体とは異なる第2の記録媒体に記録する複製手段を備える情報処理装置の制御用のプログラムであって、前記第1の記録媒体に記録されている前記コンテンツが前記複製手段によって複製される毎、前記コンテンツを識別する識別情報に前記コンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースを更新する更新ステップと、第1の記録媒体に記録されている前記コンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報を取得する取得ステップと、取得された前記識別情報に対応するコンテンツが前回複製されたときの時刻情報を前記期限データベースから読み出し、複製が指示された前記コンテンツが前回複製されてから所定の時間が経過している場合には、前記複製手段に対して前記コンテンツの複製を許可し、複製が指示された前記コンテンツが前回複製されてから所定の時間が経過していない場合には、前記複製手段に対して前記コンテンツの複製を禁止する複製制御ステップとを含む処理を情報処理装置のコンピュータに実行させるプログラムが格納されている。
【0010】
本発明においては、第1の記録媒体に記録されているコンテンツが複製手段によって複製される毎、コンテンツを識別する識別情報にコンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースが更新され、第1の記録媒体に記録されているコンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報が取得され、取得された識別情報に対応するコンテンツが前回複製されたときの時刻情報が期限データベースから読み出され、複製が指示されたコンテンツが前回複製されてから所定の時間が経過している場合には、複製手段に対してコンテンツの複製が許可される。反対に、複製が指示されたコンテンツが前回複製されてから所定の時間が経過していない場合には、複製手段に対してコンテンツの複製が禁止される。
【0011】
【発明の実施の形態】
図2は、本発明に係る音声データ管理システムの一実施の形態を示す図である。パーソナルコンピュータ1は、ローカルエリアネットワークまたはインターネットなどから構成されるネットワーク2に接続されている。パーソナルコンピュータ1は、EMD(Elecrical Music Distribution)サーバ4−1乃至4−3から受信した、または後述するCD(Compact Disc)から読み取った音楽のデータ(以下、コンテンツと称する)を、所定の圧縮の方式(例えば、ATRAC3(商標))に変換するとともにDES(Data Encryption Standard)などの暗号化方式で暗号化して記録する。
【0012】
パーソナルコンピュータ1は、暗号化して記録しているコンテンツに対応して、コンテンツの利用条件を示す利用条件のデータを記録する。利用条件のデータは、例えば、その利用条件のデータに対応するコンテンツを同時に3台のポータブルデバイス(Portable Device(PDとも称する))6−1乃至6−3で利用できる、コピー(ポータブルデバイス6−1乃至6−3にコンテンツを記憶させても、パーソナルコンピュータ1が記録しているコンテンツは使用できる。ポータブルデバイス6−1乃至6−3にコンテンツを記憶させることができる回数は制限される場合がある。この場合、その回数は、増えることがない。)することができる、他のパーソナルコンピュータに移動する(ポータブルデバイス6−1乃至6−3にコンテンツを記憶させた後、パーソナルコンピュータ1が記録しているコンテンツは使用できなくなる。)ことができるなどを示す。利用条件のデータの詳細は、後述する。
【0013】
パーソナルコンピュータ1は、暗号化して記録しているコンテンツを、コンテンツに関連するデータ(例えば、曲名、または再生条件など)と共に、USB(Universal Sirial Bus)ケーブル7−1を介して、接続されているポータブルデバイス6−1に記憶させるとともに、ポータブルデバイス6−1に記憶させたことに対応して、記憶させたコンテンツに対応する利用条件のデータを更新する(以下、チェックアウトと称する)。より詳細には、チェックアウトしたとき、パーソナルコンピュータ1が記録している、そのコンテンツに対応する利用条件のデータのチェックアウトできる回数は、1減らされる。チェックアウトできる回数が0のとき、対応するコンテンツは、チェックアウトすることができない。
【0014】
パーソナルコンピュータ1は、暗号化して記録しているコンテンツを、コンテンツに関連するデータと共に、USBケーブル7−2を介して、接続されているポータブルデバイス6−2に記憶させるとともに、ポータブルデバイス6−2に記憶させたことに対応して、記憶させたコンテンツに対応する利用条件のデータを更新する。パーソナルコンピュータ1は、暗号化して記録しているコンテンツを、コンテンツに関連するデータと共に、USBケーブル7−3を介して、接続されているポータブルデバイス6−3に記憶させるとともに、ポータブルデバイス6−3に記憶させたことに対応して、記憶させたコンテンツに対応する利用条件のデータを更新する。
【0015】
また、パーソナルコンピュータ1は、USBケーブル7−1を介して、接続されているポータブルデバイス6−1にパーソナルコンピュータ1がチェックアウトしたコンテンツを、ポータブルデバイス6−1に消去させて(または、使用できなくさせて)、消去させたコンテンツに対応する利用条件のデータを更新する(以下、チェックインと称する)。より詳細には、チェックインしたとき、パーソナルコンピュータ1が記録している、対応するコンテンツの利用条件のデータのチェックアウトできる回数は、1増やされる。
【0016】
パーソナルコンピュータ1は、USBケーブル7−2を介して、接続されているポータブルデバイス6−2にパーソナルコンピュータ1がチェックアウトしたコンテンツを、ポータブルデバイス6−2に消去させて(または、使用できなくさせて)、消去させたコンテンツに対応する利用条件のデータを更新する。パーソナルコンピュータ1は、USBケーブル7−3を介して、接続されているポータブルデバイス6−3にパーソナルコンピュータ1がチェックアウトしたコンテンツを、ポータブルデバイス6−3に消去させて(または、使用できなくさせて)、消去させたコンテンツに対応する利用条件のデータを更新する。
【0017】
パーソナルコンピュータ1は、図示せぬ他のパーソナルコンピュータがポータブルデバイス6−1にチェックアウトしたコンテンツをチェックインできない。
パーソナルコンピュータ1は、他のパーソナルコンピュータがポータブルデバイス6−2にチェックアウトしたコンテンツをチェックインできない。パーソナルコンピュータ1は、他のパーソナルコンピュータがポータブルデバイス6−3にチェックアウトしたコンテンツをチェックインできない。
【0018】
EMD登録サーバ3は、パーソナルコンピュータ1がEMDサーバ4−1乃至4−3からコンテンツの取得を開始するとき、パーソナルコンピュータ1の要求に対応して、ネットワーク2を介して、パーソナルコンピュータ1とEMDサーバ4−1乃至4−3との相互認証に必要な認証鍵をパーソナルコンピュータ1に送信するとともに、EMDサーバ4−1乃至4−3に接続するためのプログラムをパーソナルコンピュータ1に送信する。
【0019】
EMDサーバ4−1は、パーソナルコンピュータ1の要求に対応して、ネットワーク2を介して、コンテンツに関連するデータ(例えば、曲名、または再生制限など)と共に、パーソナルコンピュータ1にコンテンツを供給する。EMDサーバ4−2は、パーソナルコンピュータ1の要求に対応して、ネットワーク2を介して、コンテンツに関連するデータと共に、パーソナルコンピュータ1にコンテンツを供給する。EMDサーバ4−3は、パーソナルコンピュータ1の要求に対応して、ネットワーク2を介して、コンテンツに関連するデータと共に、パーソナルコンピュータ1にコンテンツを供給する。
【0020】
EMDサーバ4−1乃至4−3のそれぞれが供給するコンテンツは、同一または異なる圧縮の方式で圧縮されている。EMDサーバ4−1乃至4−3のそれぞれが供給するコンテンツは、同一または異なる暗号化の方式で暗号化されている。
【0021】
WWW(World Wide Web)サーバ5−1は、パーソナルコンピュータ1の要求に対応して、ネットワーク2を介して、コンテンツを読み取ったCD(例えば、CDのアルバム名、またはCDの販売会社など)、およびCDから読み取ったコンテンツに対応するデータ(例えば、曲名、または作曲者名など)をパーソナルコンピュータ1に供給する。WWWサーバ5−2は、パーソナルコンピュータ1の要求に対応して、ネットワーク2を介して、コンテンツを読み取ったCD、およびCDから読み取ったコンテンツに対応するデータをパーソナルコンピュータ1に供給する。
【0022】
ポータブルデバイス6−1は、パーソナルコンピュータ1から供給されたコンテンツ(すなわち、チェックアウトされたコンテンツ)を、コンテンツに関連するデータ(例えば、曲名、または再生制限など)と共に記憶する。ポータブルデバイス6−1は、コンテンツに関連するデータに基づいて、記憶しているコンテンツを再生し、図示せぬヘッドフォンなどに出力する。
【0023】
例えば、コンテンツに関連するデータとして記憶されている、再生制限としての再生回数を超えて再生しようとしたとき、ポータブルデバイス6−1は、対応するコンテンツの再生を停止する。コンテンツに関連するデータとして記憶されている再生制限としての、再生期限を過ぎた後に再生しようとしたとき、ポータブルデバイス6−1は、対応するコンテンツの再生を停止する。
【0024】
使用者は、コンテンツを記憶したポータブルデバイス6−1をパーソナルコンピュータ1から取り外して、持ち歩き、記憶しているコンテンツを再生させて、コンテンツに対応する音楽などをヘッドフォンなどで聴くことができる。
【0025】
ポータブルデバイス6−2は、パーソナルコンピュータ1から供給されたコンテンツを、コンテンツに関連するデータと共に記憶する。ポータブルデバイス6−2は、コンテンツに関連するデータに基づいて、記憶しているコンテンツを再生し、図示せぬヘッドフォンなどに出力する。使用者は、コンテンツを記憶したポータブルデバイス6−2をパーソナルコンピュータ1から取り外して、持ち歩き、記憶しているコンテンツを再生させて、コンテンツに対応する音楽などをヘッドフォンなどで聴くことができる。
【0026】
ポータブルデバイス6−3は、パーソナルコンピュータ1から供給されたコンテンツを、コンテンツに関連するデータと共に記憶する。ポータブルデバイス6−3は、コンテンツに関連するデータに基づいて、記憶しているコンテンツを再生し、図示せぬヘッドフォンなどに出力する。使用者は、コンテンツを記憶したポータブルデバイス6−3をパーソナルコンピュータ1から取り外して、持ち歩き、記憶しているコンテンツを再生させて、コンテンツに対応する音楽などをヘッドフォンなどで聴くことができる。
【0027】
以下、ポータブルデバイス6−1乃至6−3を個々に区別する必要がないとき、単にポータブルデバイス6と称する。
【0028】
図3は、パーソナルコンピュータ1の構成を説明する図である。CPU(Central Processing Unit)11は、各種アプリケーションプログラム(詳細については後述する)や、OS(Operating System)を実際に実行する。ROM(Read-only Memory)12は、一般的には、CPU11が使用するプログラムや演算用のパラメータのうちの基本的に固定のデータを格納する。RAM(Random-Access Memory)13は、CPU11の実行において使用するプログラムや、その実行において適宜変化するパラメータを格納する。これらはCPUバスなどから構成されるホストバス14により相互に接続されている。
【0029】
ホストバス14は、ブリッジ15を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス16に接続されている。
【0030】
キーボード18は、CPU11に各種の指令を入力するとき、使用者により操作される。マウス19は、ディスプレイ20の画面上のポイントの指示や選択を行うとき、使用者により操作される。ディスプレイ20は、液晶表示装置またはCRT(Cathode Ray Tube)などから成り、各種情報をテキストやイメージで表示する。HDD(Hard Disk Drive)21は、ハードディスクを駆動し、それらにCPU11によって実行するプログラムや情報を記録または再生させる。
【0031】
ドライブ22は、装着されている磁気ディスク41、光ディスク42(CDを含む)、光磁気ディスク43、または半導体メモリ44に記録されているデータまたはプログラムを読み出して、そのデータまたはプログラムを、インターフェース17、外部バス16、ブリッジ15、およびホストバス14を介して接続されているRAM13に供給する。
【0032】
USBポート23−1には、USBケーブル7−1を介して、ポータブルデバイス6−1が接続される。USBポート23−1は、インターフェース17、外部バス16、ブリッジ15、またはホストバス14を介して、HDD21、CPU11、またはRAM13から供給されたデータ(例えば、コンテンツまたはポータブルデバイス6−1のコマンドなどを含む)をポータブルデバイス6−1に出力する。
【0033】
USBポート23−2には、USBケーブル7−2を介して、ポータブルデバイス6−2が接続される。USBポート23−2は、インターフェース17、外部バス16、ブリッジ15、またはホストバス14を介して、HDD21、CPU11、またはRAM13から供給されたデータ(例えば、コンテンツまたはポータブルデバイス6−2のコマンドなどを含む)をポータブルデバイス6−2に出力する。
【0034】
USBポート23−3には、USBケーブル7−3を介して、ポータブルデバイス6−3が接続される。USBポート23−3は、インターフェース17、外部バス16、ブリッジ15、またはホストバス14を介して、HDD21、CPU11、またはRAM13から供給されたデータ(例えば、コンテンツまたはポータブルデバイス6−3のコマンドなどを含む)をポータブルデバイス6−3に出力する。
【0035】
IEC(Internationl Electrotechnical Commission)60958端子を有する音声入出力インタフェース24は、デジタル音声入出力、あるいはアナログ音声入出力のインタフェース処理を実行する。スピーカ45は、音声入出力インタフェース24から供給された音声信号を基に、コンテンツに対応する所定の音声を出力する。
【0036】
これらのキーボード18乃至音声入出力インタフェース24は、インターフェース17に接続されており、インターフェース17は、外部バス16、ブリッジ15、およびホストバス14を介してCPU11に接続されている。
【0037】
通信部25は、ネットワーク2が接続され、CPU11、またはHDD21から供給されたデータ(例えば、登録の要求、またはコンテンツの送信要求など)を、所定の方式のパケットに格納して、ネットワーク2を介して、送信するとともに、ネットワーク2を介して、受信したパケットに格納されているデータ(例えば、認証鍵、またはコンテンツなど)をCPU11、RAM13、またはHDD21に出力する。
【0038】
半導体ICとして、一体的に形成され、パーソナルコンピュータ1に装着されるアダプタ26のCPU32は、外部バス16、ブリッジ15、およびホストバス14を介してパーソナルコンピュータ1のCPU11と共働し、各種の処理を実行する。RAM33は、CPU32が各種の処理を実行する上において必要なデータやプログラムを記憶する。不揮発性メモリ34は、パーソナルコンピュータ1の電源がオフされた後も保持する必要があるデータを記憶する。ROM36には、パーソナルコンピュータ1から、暗号化されているプログラムが転送されてきたとき、それを復号するプログラムが記憶されている。RTC(Real Time Clock)35は、計時動作を実行し、時刻情報を提供する。
【0039】
通信部25およびアダプタ26は、外部バス16、ブリッジ15、およびホストバス14を介してCPU11に接続されている。
【0040】
以下、USBポート23−1乃至23−3を個々に区別する必要がないとき、単に、USBポート23と称する。以下、USBケーブル7−1乃至7−3を個々に区別する必要がないとき、単にUSBケーブル7と称する。
【0041】
次に、ポータブルデバイス6の構成を図4を参照して説明する。電源回路52は、乾電池51から供給される電源電圧を所定の電圧の内部電力に変換して、CPU53乃至表示部67に供給することにより、ポータブルデバイス6全体を駆動させる。
【0042】
USBコントローラ57は、USBコネクタ56を介して、パーソナルコンピュータ1とUSBケーブル7を介して接続された場合、パーソナルコンピュータ1から転送されたコンテンツを、内部バス58を介して、CPU53に供給する。
【0043】
コンテンツは、1パケット当たり64バイトのデータから構成され、12Mbit/secの転送レートでパーソナルコンピュータ1から転送される。
【0044】
ポータブルデバイス6に転送されるコンテンツは、ヘッダおよび音声データ(コンテンツの実体である、音声信号に対応したデータ)から構成され、ヘッダには、ファイル名、ヘッダサイズ、コンテンツ鍵、ファイルサイズ、コーデックID、ファイル情報などが格納されていると共に、再生制限処理に必要な再生制限データ、開始日時、終了日時、回数制限、および再生回数カウンタなどが格納されている。音声データは、ATRAC3などの符号化方式で符号化され、暗号化されている、所定の曲の音声信号に対応するデータである。
【0045】
ヘッダサイズは、ヘッダのデータ長(例えば、33バイトなど)を表し、ファイルサイズは、音声データのデータ長(例えば、33,636,138バイトなど)を表す。
【0046】
コンテンツ鍵は、暗号化されている音声データを復号するための鍵であり、パーソナルコンピュータ1とポータブルデバイス6との相互認証の処理で生成されたセッション鍵(一時鍵)を基に暗号化された状態で、パーソナルコンピュータ1からポータブルデバイス6に送信される。
【0047】
ポータブルデバイス6がUSBケーブル7を介してパーソナルコンピュータ1のUSBポート23に接続されたとき、ポータブルデバイス6とパーソナルコンピュータ1とは、相互認証の処理を実行する。この相互認証の処理は、例えば、チャレンジレスポンス方式の認証の処理である。ちなみに、ポータブルデバイス6のDSP59は、チャレンジレスポンス方式の認証の処理を行うとき、暗号解読(復号)の処理を実行する。
【0048】
チャレンジレスポンス方式とは、例えば、パーソナルコンピュータ1が生成するある値(チャレンジ)に対して、ポータブルデバイス6がパーソナルコンピュータ1と共有している秘密鍵を使用して生成した値(レスポンス)で応答する方式である。チャレンジレスポンス方式の相互認証の処理においては、パーソナルコンピュータ1が生成する値は認証の処理毎に毎回変化するので、例えば、ポータブルデバイス6が出力した、秘密鍵を使用して生成された値が読み出されて、いわゆる、なりすましの攻撃を受けても、次の相互認証の処理では、相互認証に使用される値が異なるので、パーソナルコンピュータ1は不正を検出できる。
【0049】
コーデックIDは、音声データの符号化方式に対応したIDであり、例えば、コーデックID”1”は、ATRAC3に対応し、コーデックID”0”は、MP3(MPEG(Moving Picture Experts Group) Audio Layer-3)に対応する。
【0050】
ファイル名は、コンテンツに対応するパーソナルコンピュータ1が記録しているコンテンツファイル(後述する)をASCII(American National Standard Code for Information Interchange)コードに変換したデータであり、ファイル情報は、コンテンツに対応する曲名、アーティスト名、作詞者名、または作曲者名などをASCIIコードに変換したデータである。
【0051】
再生制限データは、コンテンツの再生が可能な期間(すなわち、開始日時または終了日時)または回数制限(再生の回数の制限)が設定されているか否かを示すデータである。再生制限データには、回数制限が設定されているとき、”1”が割り当てられ、再生が可能な期間が設定されているとき、”2”が割り当てられ、回数制限および再生が可能な期間がいずれも設定されていないとき(いわゆる、買い取りで購入されたとき)、”0”が割り当てられる。
【0052】
開始日時および終了日時は、再生制限データが”2”であるとき、再生可能期間の範囲を示すデータである。例えば、開始日時が”00040F”であり、終了日時が”00070F”であるとき、対応するコンテンツは、2000年4月15日から2000年7月15日まで、再生が可能である。
【0053】
同様に、回数制限および再生回数カウンタは、再生制限データが”1”または”2”であるとき、回数制限は、そのコンテンツに対応して予め設定された再生可能な回数であり、再生回数カウンタは、そのコンテンツの再生の処理を実行したときCPU53により更新される、コンテンツが再生された回数を示す。例えば、回数制限が”02”であるとき、そのコンテンツの再生可能な回数は2回であり、再生回数カウンタが”01”であるとき、そのコンテンツが再生された回数は1回である。
【0054】
例えば、再生制限データが”2”であり、開始日時が”00040F”であり、終了日時が”00070F”であり、再生制限データが”2”であるとき、ポータブルデバイス6は、対応するコンテンツを、2000年4月15日から2000年7月15日までの期間において、1日2回ずつ繰り返し再生できる。
【0055】
例えば、再生制限データが”1”であり、開始日時が”000000”であり、終了日時が”000000”であり、再生制限データが”0a”であり、再生回数カウンタが”05”であるとき、対応するコンテンツは、再生可能な期間の制限がなく、再生可能な回数が10回であり、再生された回数が5回である。
【0056】
ポータブルデバイス6が、パーソナルコンピュータ1からコンテンツと共にコンテンツの書き込み命令を受信した場合、ROM55からRAM54に読み出したメインプログラムを実行するCPU53は、書き込み命令を受け取り、フラッシュメモリコントローラ60を制御して、パーソナルコンピュータ1から受信したコンテンツをフラッシュメモリ61に書き込ませる。
【0057】
フラッシュメモリ61は、約64MByteの記憶容量を有し、コンテンツ(音声データ)を記憶する。また、フラッシュメモリ61には、所定の圧縮方式で圧縮されている音声データを伸張するための再生用コードが予め格納されている。
【0058】
なお、フラッシュメモリ61は、ポータブルデバイス6に着脱可能とすることができる。
【0059】
使用者による、図示せぬ再生/停止ボタンの押し下げ操作に対応した再生命令が操作キーコントローラ62を介してCPU53に供給されると、CPU53は、フラッシュメモリコントローラ60に、フラッシュメモリ61から、再生用コードと音声データとを読み出させ、DSP59に転送させる。
【0060】
DSP59は、フラッシュメモリ61から転送された再生用コードに基づいて音声データをCRC(Cyclic Redundancy Check)方式で誤り検出をした後、再生して、再生したデータ(図4中においてD1で示す)をディジタル/アナログ変換回路63に供給する。
【0061】
DSP59は、内部に設けられた図示せぬ発信回路とともに一体に構成され、外付けされた水晶で成る発信子59AからのマスタークロックMCLKを基に、音声データを再生するとともに、マスタークロックMCLK、マスタークロックMCLKを基に内部の発振回路で生成した所定の周波数のビットクロックBCLK、並びにフレーム単位のLチャンネルクロックLCLK、およびRチャンネルクロックRCLKからなる動作クロックLRCLKをディジタルアナログ変換回路63に供給する。
【0062】
DSP59は、音声データを再生するとき、再生用コードに従って上述の動作クロックをディジタルアナログ変換回路63に供給して、音声データを再生しないとき、再生用コードに従って動作クロックの供給を停止して、ディジタルアナログ変換回路63を停止させて、ポータブルデバイス6全体の消費電力量を低減する。
【0063】
同様に、CPU53およびUSBコントローラ57も、水晶でなる発振子53Aまたは57Aがそれぞれ外付けされ、発振子53Aまたは57Aからそれぞれ供給されるマスタークロックMCLKに基づき、所定の処理を実行する。
【0064】
このように構成することで、ポータブルデバイス6は、CPU53,DSP59,USBコントローラ57等の各回路ブロックに対してクロック供給を行うためのクロック発生モジュールが不要となり、回路構成を簡素化すると共に小型化することができる。
【0065】
ディジタルアナログ変換回路63は、再生した音声データをアナログの音声信号に変換して、これを増幅回路64に供給する。増幅回路64は、音声信号を増幅して、ヘッドフォンジャック65を介して、図示せぬヘッドフォンに音声信号を供給する。
【0066】
このように、ポータブルデバイス6は、図示せぬ再生/停止ボタンが押圧操作されたとき、CPU53の制御に基づいてフラッシュメモリ61に記憶されている音声データを再生するとともに、再生中に再生/停止ボタンが押圧操作されたとき、音声データの再生を停止する。
【0067】
ポータブルデバイス6は、停止後に再度再生/停止ボタンが押圧操作されたとき、CPU53の制御に基づいて停止した位置から音声データの再生を再開する。再生/停止ボタンが押圧操作により再生を停止して操作が加わることなく数秒間経過したとき、ポータブルデバイス6は、自動的に電源をオフして消費電力を低減する。
【0068】
因みに、ポータブルデバイス6は、電源がオフになった後に再生/停止ボタンが押圧操作されたとき、前回の停止した位置から音声データを再生せず、1曲目から再生する。
【0069】
また、ポータブルデバイス6のCPU53は、LCDコントローラ68を制御して、表示部67に、再生モードの状態(例えば、リピート再生、イントロ再生など)、イコライザ調整(すなわち、音声信号の周波数帯域に対応した利得の調整)、曲番号、演奏時間、再生、停止、早送り、早戻しなどの状態、音量および乾電池51の残量等の情報を表示させる。
【0070】
さらに、ポータブルデバイス6は、EEPROM68に、フラッシュメモリ80に書き込まれているコンテンツの数、それぞれのコンテンツが書き込まれているフラッシュメモリ61のブロック位置、およびその他種々のメモリ蓄積情報等のいわゆるFAT(File Allocation Table)を格納する。
【0071】
因みに、本実施の形態においては、音声データは、64KByteを1ブロックとして扱われ、1曲のコンテンツに対応したブロック位置がFATに格納される。
【0072】
フラッシュメモリ61にFATが格納される場合、例えば、1曲目のコンテンツがCPU53の制御によりフラッシュメモリ61に書き込まれると、1曲目のコンテンツに対応するブロック位置がFATとしてフラッシュメモリ61に書き込まれ、次に、2曲目のコンテンツがフラッシュメモリ61に書き込まれると、2曲目のコンテンツに対応するブロック位置がFATとしてフラッシュメモリ61(1曲目と同一の領域)に書き込まれる。
【0073】
このように、FATは、フラッシュメモリ61へのコンテンツの書き込みの度に書き換えられ、更に、データの保護の為、同一のデータがリザーブ用に2重に書き込まれる。
【0074】
FATがフラッシュメモリ61に書き込まれると、1回のコンテンツの書き込みに対応して、フラッシュメモリ61の同一の領域が2回書き換えられるので、少ないコンテンツの書き込みの回数で、フラッシュメモリ61に規定されている書き換えの回数に達してしまい、フラッシュメモリ61の書き換えができなくなってしまう。
【0075】
そこで、ポータブルデバイス6は、FATをEEPROM68に記憶させて、1回のコンテンツの書き込みに対応するフラッシュメモリ61の書き換えの頻度を少なくしている。
【0076】
書き換えの回数の多いFATをEEPROM68に記憶させることにより、FATをフラッシュメモリ61に記憶させる場合に比較して、ポータブルデバイス6は、コンテンツの書き込みができる回数を数十倍以上に増やすことができる。更に、CPU53は、EEPROM68にFATを追記するように書き込ませるので、EEPROM68の同一の領域の書き換えの頻度を少なくして、EEPROM68が短期間で書き換え不能になることを防止する。
【0077】
ポータブルデバイス6は、USBケーブル7を介してパーソナルコンピュータ1に接続されたとき(以下、これをUSB接続と称する)、USBコントローラ57からCPU53に供給される割り込み信号に基づき、USB接続されたことを認識する。
【0078】
ポータブルデバイス6は、USB接続されたことを認識すると、パーソナルコンピュータ1からUSBケーブル7を介して規定電流値の外部電力の供給を受けるとともに、電源回路52を制御して、乾電池51からの電力の供給を停止させる。
【0079】
CPU53は、USB接続されたとき、DSP59の音声データの再生の処理を停止させる。これにより、CPU53は、パーソナルコンピュータ1から供給される外部電力が規定電流値を超えてしまうことを防止して、規定電流値の外部電力を常時受けられるように制御する。
【0080】
このようにCPU53は、USB接続されると、乾電池51から供給される電力からパーソナルコンピュータ1から供給される電力に切り換えるので、電力単価の安いパーソナルコンピュータ1からの外部電力が使用され、電力単価の高い乾電池51の消費電力が低減され、かくして乾電池51の寿命を延ばすことができる。
【0081】
なお、CPU53は、パーソナルコンピュータ1からUSBケーブル7を介して外部電力の供給を受けたとき、DSP59の再生処理を停止させることにより、DSP59からの輻射を低減させ、その結果としてパーソナルコンピュータ1を含むシステム全体の輻射を一段と低減させる。
【0082】
図5は、CPU11の所定のプログラムの実行等により実現される、パーソナルコンピュータ1の機能の構成を説明するブロック図である。コンテンツ管理プログラム111は、EMD選択プログラム131、チェックイン/チェックアウト管理プログラム132、暗号方式変換プログラム133、圧縮方式変換プログラム134、暗号化プログラム135、利用条件変換プログラム136、署名管理プログラム137、認証プログラム138、復号プログラム139、PD用ドライバ140、購入用ドライバ141、および購入用ドライバ142などの複数のプログラムで構成されている。
【0083】
コンテンツ管理プログラム111は、例えば、シャッフルされているインストラクション、または暗号化されているインストラクションなどで記述されて、その処理内容を外部から隠蔽し、その処理内容の読解が困難になる(例えば、使用者が、直接、コンテンツ管理プログラム111を読み出しても、インストラクションを特定できないなど)ように構成されている。
【0084】
EMD選択プログラム131は、コンテンツ管理プログラム111がパーソナルコンピュータ1にインストールされるとき、コンテンツ管理プログラム111には含まれず、後述するEMDの登録の処理において、ネットワーク2を介して、EMD登録サーバ3から受信される。EMD選択プログラム131は、EMDサーバ4−1乃至4−3のいずれかとの接続を選択して、購入用アプリケーション115、または購入用ドライバ141若しくは142に、EMDサーバ4−1乃至4−3のいずれかとの通信(例えば、コンテンツを購入するときの、コンテンツのダウンロードなど)を実行させる。
【0085】
チェックイン/チェックアウト管理プログラム132は、チェックインまたはチェックアウトの設定、およびコンテンツデータベース114に記録されている利用条件ファイル162−1乃至162−Nに基づいて、コンテンツファイル161−1乃至161−Nに格納されているコンテンツをポータブルデバイス6−1乃至6−3のいずれかにチェックアウトするか、またはポータブルデバイス6−1乃至6−3に記憶されているコンテンツをチェックインする。
【0086】
チェックイン/チェックアウト管理プログラム132は、チェックインまたはチェックアウトの処理に対応して、コンテンツデータベース114に記録されている利用条件ファイル162−1乃至162−Nに格納されている利用条件のデータを更新する。
【0087】
暗号方式変換プログラム133は、ネットワーク2を介して、購入用アプリケーションプログラム115がEMDサーバ4−1から受信したコンテンツの暗号化の方式、購入用ドライバ141がEMDサーバ4−2から受信したコンテンツの暗号化の方式、または購入用ドライバ142がEMDサーバ4−3から受信したコンテンツの暗号化の方式を、コンテンツデータベース114が記録しているコンテンツファイル161−1乃至161−Nに格納されているコンテンツと同一の暗号化の方式に変換する。
【0088】
また、暗号方式変換プログラム133は、ポータブルデバイス6−1または6−3にコンテンツをチェックアウトするとき、チェックアウトするコンテンツを、ポータブルデバイス6−1または6−3が利用可能な暗号化方式に変換する。
【0089】
圧縮方式変換プログラム134は、ネットワーク2を介して、購入用アプリケーションプログラム115がEMDサーバ4−1から受信したコンテンツの圧縮の方式、購入用ドライバ141がEMDサーバ4−2から受信したコンテンツの圧縮の方式、または購入用ドライバ142がEMDサーバ4−3から受信したコンテンツの圧縮の方式を、コンテンツデータベース114が記録しているコンテンツファイル161−1乃至161−Nに格納されているコンテンツと同一の圧縮の方式に変換する。
【0090】
圧縮方式変換プログラム134は、例えばCDから読み取られ、録音プログラム113から供給されたコンテンツ(圧縮されていない)を、コンテンツデータベース114が記録しているコンテンツファイル161−1乃至161−Nに格納されているコンテンツと同一の符号化の方式で符号化する。
【0091】
また、圧縮方式変換プログラム134は、ポータブルデバイス6−1または6−3にコンテンツをチェックアウトするとき、チェックアウトするコンテンツを、ポータブルデバイス6−1または6−3が利用可能な圧縮の方式に変換する。
【0092】
暗号化プログラム135は、例えばCDから読み取られ、録音プログラム113から供給されたコンテンツ(暗号化されていない)を、コンテンツデータベース114が記録しているコンテンツファイル161−1乃至161−Nに格納されているコンテンツと同一の暗号化の方式で暗号化する。
【0093】
利用条件変換プログラム136は、ネットワーク2を介して、購入用アプリケーションプログラム115がEMDサーバ4−1から受信したコンテンツの利用条件を示すデータ(いわゆる、Usage Rule)、購入用ドライバ141がEMDサーバ4−2から受信したコンテンツの利用条件を示すデータ、または購入用ドライバ142がEMDサーバ4−3から受信したコンテンツの利用条件を示すデータを、コンテンツデータベース114が記録している利用条件ファイル162−1乃至162−Nに格納されている利用条件データと同一のフォーマットに変換する。
【0094】
また、利用条件変換プログラム136は、ポータブルデバイス6−1または6−3にコンテンツをチェックアウトするとき、チェックアウトするコンテンツに対応する利用条件のデータを、ポータブルデバイス6−1または6−3が利用可能な利用条件のデータに変換する。
【0095】
署名管理プログラム137は、チェックインまたはチェックアウトの処理を実行する前に、コンテンツデータベース114に記録されている利用条件ファイル162−1乃至162−Nに格納されている利用条件のデータに含まれている署名(後述する)を基に、利用条件のデータの改竄を検出する。署名管理プログラム137は、チェックインまたはチェックアウトの処理に伴う、コンテンツデータベース114に記録されている利用条件ファイル162−1乃至162−Nに格納されている利用条件のデータを更新に対応して、利用条件のデータに含まれる署名を更新する。
【0096】
認証プログラム138は、コンテンツ管理プログラム111と購入用アプリケーションプログラム115との相互認証の処理、およびコンテンツ管理プログラム111と購入用ドライバ141との相互認証の処理を実行する。また、認証プログラム138は、EMDサーバ4−1と購入用アプリケーションプログラム115との相互認証の処理、EMDサーバ4−2と購入用ドライバ141との相互認証の処理、およびEMDサーバ4−3と購入用ドライバ142との相互認証の処理で利用される認証鍵を記憶している。
【0097】
認証プログラム138が相互認証の処理で利用する認証鍵は、コンテンツ管理プログラム111がパーソナルコンピュータ1にインストールされたとき、認証プログラム138に記憶されておらず、表示操作指示プログラム112により登録の処理が正常に実行されたとき、EMD登録サーバ3から供給され、認証プログラム138に記憶される。
【0098】
復号プログラム139は、コンテンツデータベース114が記録しているコンテンツファイル161−1乃至161−Nに格納されているコンテンツをパーソナルコンピュータ1が再生するとき、コンテンツを復号する。
【0099】
PD用ドライバ140は、ポータブルデバイス6−2に所定のコンテンツをチェックアウトするとき、またはポータブルデバイス6−2から所定のコンテンツをチェックインするとき、ポータブルデバイス6−2にコンテンツまたはポータブルデバイス6−2に所定の処理を実行させるコマンドを供給する。
【0100】
PD用ドライバ140は、ポータブルデバイス6−1に所定のコンテンツをチェックアウトするとき、またはポータブルデバイス6−1から所定のコンテンツをチェックインするとき、デバイスドライバ116−1にコンテンツ、またはデバイスドライバ116−1に所定の処理を実行させるコマンドを供給する。
【0101】
PD用ドライバ140は、ポータブルデバイス6−3に所定のコンテンツをチェックアウトするとき、またはポータブルデバイス6−3から所定のコンテンツをチェックインするとき、デバイスドライバ116−2にコンテンツ、またはデバイスドライバ116−2に所定の処理を実行させるコマンドを供給する。
【0102】
購入用ドライバ141は、いわゆる、プラグインプログラムであり、コンテンツ管理プログラム111と共にインストールされ、EMD登録サーバ3からネットワーク2を介して供給され、または所定のCDに記録されて供給される。購入用ドライバ141は、パーソナルコンピュータ1にインストールされたとき、コンテンツ管理プログラム111の有する所定の形式のインターフェースを介して、コンテンツ管理プログラム111とデータを送受信する。
【0103】
購入用ドライバ141は、ネットワーク2を介して、EMDサーバ4−2に所定のコンテンツの送信を要求するとともに、EMDサーバ4−2からコンテンツを受信する。また、購入用ドライバ141は、EMDサーバ4−2からコンテンツを受信するとき、課金の処理を実行する。
【0104】
購入用ドライバ142は、コンテンツ管理プログラム111と共にインストールされるプログラムであり、ネットワーク2を介して、EMDサーバ4−3に所定のコンテンツの送信を要求するとともに、EMDサーバ4−3からコンテンツを受信する。また、購入用ドライバ142は、EMDサーバ4−3からコンテンツを受信するとき、課金の処理を実行する。
【0105】
表示操作指示プログラム112は、フィルタリングデータファイル181、表示データファイル182、画像ファイル183−1乃至183−K、または履歴データファイル184を基に、ディスプレイ20に所定のウィンドウの画像を表示させ、キーボード18またはマウス19への操作を基に、コンテンツ管理プログラム111にチェックインまたはチェックアウトなどの処理の実行を指示する。
【0106】
フィルタリングデータファイル181は、コンテンツデータベース114に記録されているコンテンツファイル161−1乃至161−Nに格納されているコンテンツそれぞれに重み付けをするためのデータを格納して、HDD21に記録されている。
【0107】
表示データファイル182は、コンテンツデータベース114に記録されているコンテンツファイル161−1乃至161−Nに格納されているコンテンツに対応するデータを格納して、HDD21に記録されている。
【0108】
画像ファイル183−1乃至183−Kは、コンテンツデータベース114に記録されているコンテンツファイル161−1乃至161−Nに対応する画像、または後述するパッケージに対応する画像を格納して、HDD21に記録されている。
【0109】
以下、画像ファイル183−1乃至183−Kを個々に区別する必要がないとき、単に、画像ファイル183と称する。
【0110】
履歴データファイル184は、コンテンツデータベース114に記録されているコンテンツファイル161−1乃至161−Nに格納されているコンテンツがチェックアウトされた回数、チェックインされた回数、その日付などの履歴データを格納して、HDD21に記録されている。
【0111】
表示操作指示プログラム112は、登録の処理のとき、ネットワーク2を介して、EMD登録サーバ3に、予め記憶しているコンテンツ管理プログラム111のIDを送信するとともに、EMD登録サーバ3から認証用鍵およびEMD選択プログラム131を受信して、コンテンツ管理プログラム111に認証用鍵およびEMD選択プログラム131を供給する。
【0112】
録音プログラム113は、所定のウィンドウの画像を表示させて、キーボード18またはマウス19への操作を基に、ドライブ22に装着された光ディスク42であるCDからコンテンツの録音時間などのデータを読み出す。
【0113】
録音プログラム113は、CDに記録されているコンテンツの録音時間などを基に、ネットワーク2を介して、WWWサーバ5−1または5−2にCDに対応するデータ(例えば、アルバム名、またはアーティスト名など)またはCDに記録されているコンテンツに対応するデータ(例えば、曲名など)の送信を要求するとともに、WWWサーバ5−1または5−2からCDに対応するデータまたはCDに記録されているコンテンツに対応するデータを受信する。
【0114】
録音プログラム113は、受信したCDに対応するデータまたはCDに記録されているコンテンツに対応するデータを、表示操作指示プログラム112に供給する。
【0115】
また、録音の指示が入力されたとき、録音プログラム113は、ドライブ22に装着された光ディスク42であるCDからコンテンツを読み出して、コンテンツ管理プログラム111に出力する。
【0116】
コンテンツデータベース114は、コンテンツ管理プログラム111から供給された所定の方式で圧縮され、所定の方式で暗号化されているコンテンツを、コンテンツファイル161−1乃至161−Nのいずれかに格納する(HDD21に記録する)。コンテンツデータベース114は、コンテンツファイル161−1乃至161−Nにそれぞれ格納されているコンテンツに対応する利用条件のデータを、コンテンツが格納されているコンテンツファイル161−1乃至161−Nにそれぞれ対応する利用条件ファイル162−1乃至162−Nのいずれかに格納する(HDD21に記録する)。
【0117】
コンテンツデータベース114は、コンテンツファイル161−1乃至161−Nまたは利用条件ファイル162−1乃至162−Nをレコードとして記録してもよい。
【0118】
例えば、コンテンツファイル161−1に格納されているコンテンツに対応する利用条件のデータは、利用条件ファイル162−1に格納されている。コンテンツファイル161−Nに格納されているコンテンツに対応する利用条件のデータは、利用条件ファイル162−Nに格納されている。
【0119】
なお、利用条件ファイル162−1乃至162−Nに記録されているデータは、後述する期限データベースに記録されているデータ、または曲データベースに記録されているデータに対応する。すなわち、コンテンツデータベース114は、後述する期限データベースおよび曲データベースを包含して、構成されている。
【0120】
以下、コンテンツファイル161−1乃至161−Nを個々に区別する必要がないとき、単に、コンテンツファイル161と称する。以下、利用条件ファイル162−1乃至162−Nを個々に区別する必要がないとき、単に、利用条件ファイル162と称する。
【0121】
購入用アプリケーションプログラム115は、EMD登録サーバ3からネットワーク2を介して供給され、または所定のCDに記録されて供給される。購入用アプリケーションプログラム115は、ネットワーク2を介して、EMDサーバ4−1に所定のコンテンツの送信を要求するとともに、EMDサーバ4−1からコンテンツを受信して、コンテンツ管理プログラム111に供給する。また、購入用アプリケーションプログラム115は、EMDサーバ4−1からコンテンツを受信するとき、課金の処理を実行する。
【0122】
次に、表示データファイル82に格納されているデータとコンテンツデータベースに格納されているコンテンツファイル161−1乃至161−Nとの対応付けについて説明する。
【0123】
コンテンツファイル161−1乃至161−Nのいずれかに格納されているコンテンツは、所定のパッケージに属する。パッケージは、より詳細には、オリジナルパッケージ、マイセレクトパッケージ、またはフィルタリングパッケージのいずれかである。
【0124】
オリジナルパッケージは、1以上のコンテンツが属し、EMDサーバ4−1乃至4−3におけるコンテンツの分類(例えば、いわゆるアルバムに対応する)、または一枚のCDに対応する。コンテンツは、いずれかのオリジナルパッケージに属し、複数のオリジナルパッケージに属することができない。また、コンテンツが属するオリジナルパッケージは、変更することができない。使用者は、オリジナルパッケージに対応する情報の一部を編集(情報の追加、または追加した情報の変更)することができる。
【0125】
マイセレクトパッケージは、使用者が任意に選択した1以上のコンテンツが属する。マイセレクトパッケージにいずれのコンテンツが属するかは、使用者が任意に編集することができる。コンテンツは、1以上のマイセレクトパッケージに同時に属することができる。また、コンテンツは、いずれのマイセレクトパッケージに属しなくともよい。
【0126】
フィルタリングパッケージには、フィルタリングデータファイル181に格納されているフィルタリングデータを基に選択されたコンテンツが属する。フィルタリングデータは、EMDサーバ4−1乃至4−3またはWWWサーバ5−1若しくは5−2などからネットワーク2を介して供給され、または所定のCDに記録されて供給される。使用者は、フィルタリングデータファイル181に格納されているフィルタリングデータを編集することができる。
【0127】
フィルタリングデータは、所定のコンテンツを選択する、またはコンテンツに対応する重みを算出する基準となる。例えば、今週のJ−POP(日本のポップス)ベストテンに対応するフィルタリングデータを利用すれば、パーソナルコンピュータ1は、今週の日本のポップス1位のコンテンツ乃至今週の日本のポップス10位のコンテンツを特定することができる。
【0128】
フィルタリングデータファイル181は、例えば、過去1月間にチェックアウトされていた期間が長い順にコンテンツを選択するフィルタリングデータ、過去半年間にチェックアウトされた回数が多いコンテンツを選択するフィルタリングデータ、または曲名に”愛”の文字が含まれているコンテンツを選択するフィルタリングデータなどを含んでいる。
【0129】
このようにフィルタリングパッケージのコンテンツは、コンテンツに対応するコンテンツ用表示データ221(コンテンツ用表示データ221に使用者が設定したデータを含む)、または履歴データ184などと、フィルタリングデータとを対応させて選択される。
【0130】
図6は、WWWサーバ5−2からCDの情報を受信したとき、録音プログラム113がディスプレイ20に表示させるウィンドウを説明する図である。WWWサーバ5−2から受信したCDの情報を基に、録音プログラム113は、フィールド201に、例えば、”アシンクロナイズド”などのCDのタイトルを表示する。WWWサーバ5−2から受信したCDの情報を基に、録音プログラム113は、フィールド202に、例えば、”クワイ”などのアーティスト名を表示する。
【0131】
WWWサーバ5−2から受信したCDの情報を基に、録音プログラム113は、フィールド203の曲名を表示する部分に、例えば、”ヒート”,”プラネット”,”ブラック”,”ソウル”などの曲名を表示する。同様に、録音プログラム113は、フィールド203のアーティストを表示する部分に、例えば、”クワイ”などのアーティスト名を表示する。
【0132】
録音プログラム113が所定のCDの情報を受信した後、録音プログラム113は、HDD21の所定のディレクトリにCDの情報を格納する。
【0133】
ボタン204などがクリックされて、CDの情報の取得の指示を受けたとき、録音プログラム113は、始めに、HDD21の所定のディレクトリを検索する。録音プログラム113は、そのディレクトリにCDの情報が格納されているとき、図示せぬダイアログボックスを表示して、使用者にディレクトリに格納されているCDの情報を利用するか否かを選択させる。
【0134】
録音プログラム113が表示させるウィンドウに配置されているコンテンツの録音の開始を指示するボタン206がクリックされたとき、録音プログラム113は、ドライブ22に格納されているCDからコンテンツを読み出して、CDから読み出したコンテンツをCDの情報と共にコンテンツ管理プログラム111に供給する。コンテンツ管理プログラム111の圧縮方式変換プログラム134は、録音プログラム113から供給されたコンテンツを所定の圧縮の方式で圧縮して、暗号化プログラム135は、圧縮されたコンテンツを、暗号化する。また、利用条件変換プログラム136は、圧縮され、暗号化されたコンテンツに対応する利用条件のデータを生成する。
【0135】
コンテンツ管理プログラム111は、圧縮され、暗号化されたコンテンツを利用条件のデータと共に、コンテンツデータベース114に供給する。
【0136】
コンテンツデータベース114は、コンテンツ管理プログラム111から受信したコンテンツに対応するコンテンツファィル161および利用条件ファイル162を生成して、コンテンツファィル161にコンテンツを格納するとともに、利用条件ファイル162に利用条件のデータを格納する。
【0137】
コンテンツ管理プログラム111は、コンテンツデータベース114にコンテンツおよびコンテンツに対応する利用条件のデータが格納されたとき、録音プログラム113から受信したCDの情報および利用条件のデータを表示操作指示プログラム112に供給する。
【0138】
表示操作指示プログラム112は、録音の処理でコンテンツデータベース114に格納されたコンテンツに対応する利用条件のデータおよびCDの情報を基に、オリジナルパッケージ用表示データ201およびコンテンツ用表示データ221を生成する。
【0139】
録音プログラム113が表示させるウィンドウには、更に、CDから読み出したコンテンツをコンテンツデータベース114に記録したとき、自動的に、CDから読み出したコンテンツをポータブルデバイス6−1乃至6−3のいずれかにチェックアウトさせるか否かの設定を行うボタン205が配置されている。
【0140】
例えば、ボタン205がクリックされたとき、録音プログラム113は、ポータブルデバイス6−1乃至6−3のリストを示すプルダウンメニューを表示する。使用者が、そのプルダウンメニューからポータブルデバイス6−1乃至6−3のいずれかを選択したとき、パーソナルコンピュータ1は、選択されたポータブルデバイス6−1乃至6−3のいずれかに、自動的に、CDから記録したコンテンツをチェックアウトする。使用者が、そのプルダウンメニューから”チェックアウトしない”を選択した場合、パーソナルコンピュータ1は、CDからコンテンツを記録したとき、チェックアウトしない。
【0141】
次に、図7のフローチャートを参照して、録音プログラム113を実行するCPU11による、ドライブ22に装着されたCDから再生した音楽データをHDD21に転送し、コピーする場合の処理について説明する。使用者がキーボード18またはマウス19を操作して、インタフェース17を介してCPU11に対してドライブ22に装着されたCD(図示せず)から再生された音楽データをHDD21に転送、コピーする指令を入力すると、CPU11は、ステップS11において、インタフェース17を介してディスプレイ20にコピーする曲を選択するためのGUI(Graphical User Interface)を表示させる。
【0142】
具体的には、例えば、CPU11は、ドライブ22に装着されたCDのTOC(Table Of Contents)を読み込み、そのCDに含まれる曲の情報を得て、ディスプレイ20に表示させる。または、CPU11は、CDに含まれている各曲毎のISRC(International Standard Recording Code)を読み出し、その曲の情報を得て、ディスプレイ20に表示させる。あるいはまた、CPU11は、ネットワーク2を介してWWWサーバ5−1または5−2にアクセスし、TOCを用いて、そのCDの曲の情報を得て、対応するGUIをディスプレイ20に表示させる。使用者は、ディスプレイ20のGUIを利用してキーボード18またはマウス19を操作し、コピーする曲を選択する。
【0143】
次に、ステップS12において、CPU11は、HDD21に格納されている期限データベース(図5に示すコンテンツデータベース114の利用条件ファイル162−1乃至162−Nに対応する)をチェックする。この期限データベースチェック処理の詳細は、図8のフローチャートに示されている。
【0144】
ステップS31においてCPU11は、アダプタ26のCPU32と共働して、期限データベース全体のハッシュ値を計算し、ステップS32において、その計算された値と、前回保存しておいたハッシュ値と比較する。
【0145】
なお、期限データベースにデータが何ら記録されていないとき、CPU11は、ハッシュ値を計算しない。
【0146】
すなわち、HDD21には、期限データベースが形成されており、この期限データベースには、図9に示すように、HDD21に記録されている音楽データ(コンテンツ)を管理する管理情報として、過去に記録されたことのある曲のISRCとコピー日時が対応して記憶されている。この例においては、アイテム1乃至アイテム3の3つのアイテムについて、それぞれのISRCとコピー日時が記憶されている。この期限データベースに記録されている全ての曲のISRCとコピー日時に基づいた期限データベース全体のハッシュ値が、後述するように、ステップS38において、アダプタ26のCPU32により計算され、不揮発性メモリ34に記憶されている。ハッシュ値は、データに対してハッシュ関数を適用して得られた値である。ハッシュ関数は、一般的に可変長の長いデータを、固定長の短い値にマップする一方向性の関数であり、ハッシュ値同士の衝突が起こりにくい性質を有している。ハッシュ関数の例としては、SHA(Secure Hash Algorithm),MD(Message Digest)5などがある。CPU11は、ステップS31において、CPU32が実行したのと同様にハッシュ値を計算する。そして、ステップS32において、CPU11は、CPU32に、不揮発性メモリ34に記憶されているハッシュ値の読み出しを要求し、転送を受けたハッシュ値と、ステップS31で、いま自分自身が計算したハッシュ値とを比較する。
【0147】
ステップS33において、CPU11は、ステップS31でいま計算したハッシュ値と、不揮発性メモリ34に記憶されている前回の期限データベースのハッシュ値とが一致するか否かを判定し、一致しない場合には、期限データベースが改竄されたものと判定し、CPU11は、ステップS34において、例えば、「期限データベースが改竄されたので、コピーができません」といったメッセージを発生し、インタフェース17を介してディスプレイ20に出力し、表示させ、以後、処理を終了させる。すなわち、この場合には、CDに記録されている音楽データを再生し、HDD21にコピーする処理が禁止される。
【0148】
ステップS31で計算したハッシュ値と、前回のハッシュ値とが一致する場合には、ステップS35に進み、CPU11は、ステップS11で指定されたコピーする曲として選択された曲(選択曲)のISRCをCDから取得する。CDにISRCが記録されていない場合、CPU11は、そのCDのTOCのデータを読み出し、そのデータにハッシュ関数を適用するなどして、例えば、58ビットなどの適当な長さのデータを得て、これをISRCに代えて用いる。
【0149】
ステップS36において、CPU11は、ステップS35で取得したISRC(すなわち、選択曲)が期限データベース(図9)に登録されているか否かを判定する。ISRCが期限データベースに登録されていない場合には、その曲はまだHDD21に記録されていないことになるので、ステップS37に進み、CPU11は、その曲のISRCと現在の日時とを期限データベースに登録する。なお、CPU11は、この現在の日時として、CPU32から転送を受けた、アダプタ26のRTC35が出力する値を利用する。そして、ステップS38において、CPU11は、その時点における期限データベースのデータを読み出し、アダプタ26のCPU32に転送する。CPU32は、転送されてきたデータのハッシュ値を計算し、不揮発性メモリ34に保存してする。上述したように、このようにして保存されたハッシュ値が、ステップS32において、前回保存しておいたハッシュ値として利用される。
【0150】
次に、ステップS39において、CPU11は、選択曲が期限データベースに登録されていないことを表す未登録のフラグを設定する。このフラグは、後述する図7のステップS13において、選択曲が期限データベースに登録されているか否かの判定を行うときに用いられる。
【0151】
ステップS36において、選択曲のISRCが期限データベースに登録されていると判定された場合、その選択曲は、少なくとも一度、HDD21に登録されたことがある曲であるということになる。そこで、この場合、ステップS40に進み、CPU11は、期限データベースに登録されているその選択曲の登録日時より、現在の日時(アダプタ26のRTC35が出力した現在の日時)が48時間以上経過しているか否かを判定する。現在時刻が、登録日時より、既に48時間以上経過している場合には、HDD21に、少なくとも一度は記録したことがあるが、既に、その時から48時間以上経過しているので、その曲を再度コピーさせたとしても、それほど実害がないので、この場合には、HDD21へのコピーが許容される。そこで、ステップS41に進み、CPU11は、期限データベースの日時を、過去の登録日時から現在の日時(RTC35の出力する日時)に変更させる。そして、ステップS38に戻り、CPU11は、再び、期限データベース全体のハッシュ値をCPU32に計算させ、不揮発性メモリ34に保存させるとともに、ステップS39において、その曲に対して未登録のフラグを設定する。
【0152】
一方、ステップS40において、現在時刻が登録日時より、まだ48時間以上経過していないと判定された場合、その選択曲のHDD21へのコピーが禁止される。そこで、この場合には、ステップS42に進み、CPU11は、その選択曲に対応して登録済みのフラグを設定する。
【0153】
以上のようにして、期限データベースチェック処理により、選択曲がHDD21に登録されているか否かを表すフラグが設定される。
【0154】
図7に戻り、ステップS13においてCPU11は、選択曲が期限データベースに登録済みであるか否かを、上述したフラグから判定する。選択曲が登録済みである場合には、ステップS14に進み、CPU11は、ディスプレイ20に、例えば、「この曲は一度コピーされてからまだ48時間以上経過していないので、コピーすることができません」のようなメッセージを表示させる。これにより、使用者は、その曲をHDD21にコピーすることができない理由を知ることができる。
【0155】
ステップS13において、選択した曲が期限データベースに登録されていないと判定された場合、ステップS15に進み、CPU11は、ドライブ22を制御し、そこに装着されているCDから音楽データを読み出させる。この音楽データには、図10に示すように、所定の位置にウォータマークコードが挿入されている。
CPU11は、ステップS16において、音楽データに含まれているウォータマークコードを抽出し、そのウォータマークコードがコピー禁止を表しているいるか否かをステップS17において判定する。ウォータマークコードがコピー禁止を表している場合には、ステップS18に進み、CPU11は、インタフェース17を介してディスプレイ20に、例えば、「コピーは禁止されています」のようなメッセージを表示させ、コピー処理を終了させる。
【0156】
これに対して、ステップS17において、ウォータマークがコピー禁止を表していないと判定された場合、ステップS19に進み、CPU11は、音楽データを、例えば、ATRAC(Adaptive Transform Acoustic Coding)3(商標)などの方式で、ソフトウェア処理により圧縮させる。ステップS20において、CPU11は、予め設定され、メモリ13に記憶されている暗号鍵を用いて、例えば、DES(Data Encryption Standard)方式、FEAL(Fast Encripherment Algotithm)方式などの暗号化方法により、音楽データを暗号化する。暗号鍵は、この他、例えば、ソフトウェアにより発生した乱数、あるいはアダプタ26のCPU32により発生させた乱数に基づいて生成したものを用いることもできる。このように、パーソナルコンピュータ1だけではなく、それに付随して装着されたハードウェアとしてのアダプタ26のCPU32と、共働して暗号化処理を実行するようにすることで、解読がより困難となる暗号化を行うことが可能となる。
【0157】
次に、ステップS21において、CPU11は、暗号化されたデータをHDD21に転送し、1つのファイル(コンテンツファィル161として)としてファイル名を付けて保存させる。あるいはまた、1つのファイルの一部として、そのファイル名の位置情報(例えば、先頭からのバイト数)を与えて保存するようにしてもよい。
【0158】
この保存処理と、上記した圧縮符号化処理および暗号化処理とは別々に行うようにしてもよいし、同時に平行的に行うようにしてもよい。
【0159】
さらに、ステップS22において、CPU11は、予め定められているRAM13に記憶されている保存用鍵(不正な読み出しでは読み出しが困難になるように記憶されている)を使って、上述したDES方式、FEAL方式などの方式で、音楽データを暗号化した暗号鍵を暗号化し、HDD21の曲データベース(図5に示すコンテンツデータベース114の利用条件ファイル162−1乃至162−Nに対応する)に保存する。
【0160】
ステップS23において、CPU11は、保存したファイルに関する情報、暗号化された暗号鍵、その曲の情報、使用者がGUIを介して入力した曲名の情報の要素を組にしてHDD21の曲データベースに登録する。そして、ステップS24において、CPU11は、CPU32に、曲データベース全体のハッシュ値を計算させ、不揮発性メモリ34に保存させる。
【0161】
このようにして、例えば、図11に示すような曲データベースが、HDD21上に登録される。この例においては、アイテム1乃至アイテム3のファイル名、暗号化された暗号鍵、曲名、長さ、再生条件(開始日時、終了日時、回数制限)、再生回数カウンタ、再生時課金条件、コピー条件(回数)、コピー回数カウンタ、およびコピー条件(SCMS)が記録されている。
【0162】
複製されて一定期間が経過すると、再び複製することができるようにしたので、ユーザの個人の使用の範囲とされる、数回の複製が可能となる。一方、個人の使用の範囲を超えて、例えば、大量に複製しようとすると、莫大な時間が必要とされ、現実的に不可能になる。また、例えば、パーソナルコンピュータ1が故障して、HDD21に記録されていたコンテンツが消去された場合においても、一定期間の経過後、消去されたコンテンツを再び複製し、HDD21に記録することができる。
【0163】
また、例えば、ネットワーク2を介してHDD21に記録されている期限データベースの内容を共有することもできる。
【0164】
以上においては、ISRCに対応して複製された日時が記憶されている場合を例として説明したが、コンテンツやCDを識別する情報であれば、他のもの(例えば、曲名、アルバム名、それらの組み合わせなど)を利用することもできる。
【0165】
次に、図12乃至図14のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11およびメインプログラムを実行するCPU53による、HDD21からポータブルデバイス6のフラッシュメモリ61(例えば、メモリースティック(商標))に、音楽データを移動する処理について説明する。ステップS51において、CPU11は、曲データベース全体のハッシュ値を計算し、ステップS52で、前回CPU32に計算させ、不揮発性メモリ34に保存しておいたハッシュ値と比較する。両者が一致しない場合、CPU11は、ステップS53に進み、例えば、「曲データベースが改竄された恐れがあります」のようなメッセージをディスプレイ20に表示させた後、処理を終了させる。この場合の処理は、図8のステップS31乃至ステップS34の処理と同様の処理である。この場合においては、HDD21からポータブルデバイス6への音楽データの移動が実行されないことになる。
【0166】
次に、ステップS54において、CPU11は、HDD21に形成されている曲データベースから、そこに登録されている曲の情報を読み出し、ディスプレイ20に、選択のためのGUIとして表示させる。使用者は、この選択のためのGUIに基づいて、HDD21からポータブルデバイス6へ移動させる曲を、キーボード18またはマウス19を操作して選択する。次に、ステップS55において、CPU11は、ステップS54で選択された選択曲の再生条件、コピー条件、再生時課金条件などを調べる。この処理の詳細は、図15のフローチャートを参照して後述する。
【0167】
次に、ステップS56において、パーソナルコンピュータ1のCPU11とポータブルデバイス6のCPU53との間において、相互認証処理が行われ、通信用鍵が共有される。
【0168】
例えば、ポータブルデバイス6のフラッシュメモリ61(または、EEPROM68)には、マスター鍵KMが予め記憶されており、パーソナルコンピュータ1のRAM13(または、HDD21の所定のファイル)には、個別鍵KPとIDが予め記憶されているものとする。CPU53は、CPU11から、RAM13に予め記憶されているIDの供給を受け、そのIDと自分自身が有するマスター鍵KMにハッシュ関数を適用して、RAM13に記憶されているパーソナルコンピュータ1の個別鍵と同一の鍵を生成する。このようにすることで、パーソナルコンピュータ1とポータブルデバイス6の両方に、共通の個別鍵が共有されることになる。この個別鍵を用いてさらに、一時的な通信用鍵を生成することができる。
【0169】
あるいはまた、パーソナルコンピュータ1のRAM13にIDとマスター鍵KMPを予め記憶させておくとともに、ポータブルデバイス6のフラッシュメモリ61にもポータブルデバイス6のIDとマスター鍵KMMを記憶させておく。そして、それぞれのIDとマスター鍵をお互いに他方に送信することで、他方は一方から送信されてきたIDとマスター鍵にハッシュ関数を適用して、他方の個別鍵を生成する。
そして、その個別鍵から、一時的な通信用鍵をさらに生成するようにする。
【0170】
なお、認証の方法としては、例えば、IOS(International Organization for Standardization) 9798−2を利用することができる。
【0171】
相互認証が正しく行われなかったとき、処理は終了されるが、正しく行われたとき、さらに、ステップS57において、CPU11は、選択曲のファイル名を曲データベースから読み出し、そのファイル名の音楽データ(例えば、図7のステップS20の処理で暗号化されている)をHDD21から読み出す。ステップS58において、CPU11は、ステップS57で読み出したデジタル音楽データの圧縮符号化方式(ステップS19の処理)、暗号化方式(ステップS20の処理)、フォーマットなどをポータブルデバイス6のものに変換する処理を実行する。
この変換処理の詳細は、図17のフローチャートを参照して後述する。
【0172】
ステップS59において、CPU11は、ステップS58で変換した音楽データを、ステップS56の相互認証処理により共有した通信用鍵で暗号化し、ポータブルデバイス6にUSBポート23を介して転送する。ステップS60において、ポータブルデバイス6のCPU53は、USBコネクタ56を介してこの伝送されてきた音楽データを受信すると、その音楽データを、そのままフラッシュメモリ61に記憶させる。
【0173】
ステップS61において、CPU11は、さらに、曲データベースに登録されているその選択曲の再生条件(開始日時、終了日時、回数制限など)を、ポータブルデバイス6が管理している形式に変換する。ステップS62において、CPU11は、さらに選択曲の曲データベース中に登録されているコピー条件中のSCMS情報を、ポータブルデバイス6の管理する形式に変換する。そして、ステップS63において、CPU11は、ステップS61で変換した再生条件と、ステップS62で変換したSCMS情報を、ポータブルデバイス6に転送する。ポータブルデバイス6のCPU53は、転送を受けた再生条件とSCMS情報を、フラッシュメモリ61に保存する。
【0174】
ステップS64において、CPU11はまた、選択曲の曲データベース中に登録されている再生条件、再生時課金条件、コピー条件などを、CPU11が曲データベース中で扱っている形式のまま、ポータブルデバイス6に転送し、フラッシュメモリ61に保存させる。
【0175】
ステップS65において、CPU11は、選択曲の暗号化されている暗号鍵を曲データベースから読み出し、ステップS66において、その暗号鍵をRAM13に保存されている保存用鍵で復号し、通信用鍵で暗号化する。そして、通信用鍵で暗号化した暗号鍵を、CPU11は、ポータブルデバイス6に転送する。
【0176】
ポータブルデバイス6のCPU53は、ステップS67で、パーソナルコンピュータ1から転送されてきた暗号鍵を相互認証処理で共有した通信用鍵を用いて復号し、自分自身の保存用鍵を用いて暗号化し、既に保存したデータと関連付けて、フラッシュメモリ61に保存する。
【0177】
CPU53は、暗号鍵の保存が完了すると、ステップS68において、パーソナルコンピュータ1に対して暗号鍵を保存したことを通知する。パーソナルコンピュータ1のCPU11は、ポータブルデバイス6からこの通知を受けると、ステップS69において、HDD21から、その音楽データのファイルを削除するとともに、曲データベースからその曲の要素の組を削除する。すなわち、これにより、コピーではなく、移動(ムーブ)が行われることになる。そして、ステップS70において、CPU11は、アダプタ26のCPU32に、曲データベースのデータを転送し、全体のハッシュ値を計算させ、不揮発性メモリ34に保存させる。このハッシュ値が、上述したステップS52において、前回保存しておいたハッシュ値として用いられることになる。
【0178】
次に、コンテンツ管理プログラム111を実行するCPU11による、図12のステップS55における選択曲の再生条件などのチェック処理について説明する。ステップS81において、CPU11は、曲データベースから、各種の条件を読み出す。CPU11は、ステップS82において、ステップS81で読み出した各種条件のうち、コピー回数がコピー制限回数を既に過ぎているか否かを判定する。コピー回数が、コピー制限回数を既にすぎている場合には、それ以上コピーを許容する訳にはいかないので、ステップS83に進み、CPU11は、例えば、「既にコピー回数がコピー制限回数に達しています」のようなメッセージをディスプレイ20に表示させ、処理を終了させる。ステップS82において、コピー回数がコピー制限回数を過ぎていないと判定された場合、ステップS84に進み、現在日時が再生終了日時を過ぎているか否かの判定が行われる。現在日時としては、アダプタ26のRTC35より出力されたものが用いられる。これにより、使用者が、パーソナルコンピュータ1の現在時刻を意図的に過去の値に修正したものが用いられるようなことが防止される。CPU11は、この現在日時をCPU32から提供を受けて、ステップS84の判断を自ら行うか、または、ステップS81で、曲データベースから読み出した再生条件をアダプタ26のCPU32に供給し、CPU32に、ステップS84の判定処理を実行させる。
【0179】
現在日時が再生終了日時を過ぎている場合、ステップS85に進み、CPU11は、選択曲をHDD21から消去するとともに、曲データベースから、その選択曲の情報を消去する。ステップS86において、CPU11は、CPU32に、曲データベースのハッシュ値を計算させ、それを不揮発性メモリ34に保存させる。以後、処理は終了される。従って、この場合、音楽データの移動が実行されない。
【0180】
ステップS84において、現在日時が、再生終了日時を過ぎていないと判定された場合、ステップS87に進み、CPU11は、その選択曲の再生時課金条件(例えば、再生1回当たりの料金)が曲データベース中に登録されているか否かを判定する。再生時課金条件が登録されている場合には、CPU11は、ステップS88において、ポータブルデバイス6と通信し、ポータブルデバイス6に課金機能が存在するか否かを判定する。ポータブルデバイス6に課金機能が存在しない場合には、選択曲をポータブルデバイス6に転送する訳にはいかないので、ステップS89において、CPU11は、例えば、「転送先が課金機能を有しておりません」のようなメッセージをディスプレイ20に表示させ、音楽データの移動処理を終了させる。
【0181】
ステップS87において再生時課金条件が登録されていないと判定された場合、または、ステップS88において、ポータブルデバイス6に課金機能が存在すると判定された場合、ステップS90に進み、CPU11は、選択曲に関し、例えば、再生制限回数などのその他の再生条件が登録されているか否かを判定する。
その他の再生条件が登録されている場合には、ステップS91に進み、CPU11は、ポータブルデバイス6に、その再生条件を守る機能が存在するか否かを判定する。ポータブルデバイス6が、その再生条件を守る機能を有していない場合には、ステップS92に進み、CPU11は、例えば、「転送先の装置が再生条件を守る機能を有しておりません」のようなメッセージをディスプレイ20に表示させ、処理を終了させる。
【0182】
ステップS90において、再生条件が登録されていないと判定された場合、またはステップS91において、ポータブルデバイス6が再生条件を守る機能を有している判定された場合、再生条件等のチェック処理が終了され、図12のステップS56に戻る。
【0183】
図16は、ポータブルデバイス6が管理している(守ることが可能な)再生条件の例を表している。この例においては、アイテム1乃至アイテム3の各曲について、再生開始日時と再生終了日時が登録されているが、再生回数は、アイテム2についてのみ登録されており、アイテム1とアイテム3については登録されていない。従って、アイテム2の曲が選択曲とされた場合、再生回数の再生条件は守ることが可能であるが、アイテム1またはアイテム3の曲が選択曲とされた場合、再生回数の条件は守ることができないことになる。
【0184】
次に、図17のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11による、図12のステップS58におけるフォーマット変換処理の詳細について説明する。ステップS101において、CPU11は、HDD21に記録されている選択曲のフォーマット(再生条件、使用条件、コピー条件など)を調べる。ステップS102において、CPU11は、相手先の機器(今の場合、ポータブルデバイス6)に設定することが可能な条件を調べる。すなわち、CPU11は、ポータブルデバイス6のCPU53に設定可能な条件を問い合わせ、その回答を得る。ステップS103においてCPU11は、曲データベース中に登録されているフォーマットの条件のうち、相手先の機器に設定可能な条件をステップS102で調べた条件に基づいて決定する。
【0185】
ステップS104において、CPU11は、設定可能な条件が存在するか否かを判定し、設定可能な条件が存在しない場合には、ステップS105に進み、音楽データをポータブルデバイス6に移動する処理を禁止する。すなわち、この場合には、曲データベース中に登録されている条件をポータブルデバイス6が守ることができないので、そのようなポータブルデバイス6には、音楽データを移動することが禁止されるのである。
【0186】
ステップS104において設定可能な条件が存在すると判定された場合、ステップS106に進み、CPU11は、その条件を相手先の機能フォーマットの条件に変換する。そして、ステップS107において、変換した条件を相手先の機器に設定する。その結果、ポータブルデバイス6は、設定された条件に従って(その条件を守って)、音楽データ再生することが可能となる。
【0187】
次に、図18乃至図20のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11およびメインプログラムを実行するCPU53による、HDD21からポータブルデバイス6に音楽データをコピーする場合の処理について説明する。この図18乃至図20のステップS111乃至ステップS127の処理は、図12乃至図14のHDD21からポータブルデバイス6へ音楽データを移動させる場合のステップS51乃至ステップS67の処理と同様の処理である。すなわち、この場合においても、曲データベースの改竄がチェックされた後、選択曲の再生条件とのチェック処理が行われる。さらに、ポータブルデバイス6と、パーソナルコンピュータ1との間の相互認証処理の後、音楽データが、パーソナルコンピュータ1のHDD21からポータブルデバイス6のフラッシュメモリ61に転送され、保存される。その後、ステップS128において、パーソナルコンピュータ1のCPU11は、曲データベースのコピー回数カウンタを1だけインクリメントする。そして、ステップS129において、CPU11は、CPU32に、曲データベース全体のハッシュ値を計算させ、その値を不揮発性メモリ34に保存させる。
【0188】
次に、図21のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11およびメインプログラムを実行するCPU53による、ポータブルデバイス6からHDD21に音楽データを移動する処理について説明する。ステップS161において、パーソナルコンピュータ1のCPU11は、ポータブルデバイス6のCPU53に対してフラッシュメモリ61に記憶されている曲の情報の読み出しを要求する。CPU53は、この要求に対応して、フラッシュメモリ61に記憶されている曲の情報をパーソナルコンピュータ1に送信する。パーソナルコンピュータ1のCPU11は、この情報に基づいて、ディスプレイ20に、フラッシュメモリ61に記憶されている曲を選択するためのGUIを表示させる。使用者は、キーボード18またはマウス19を操作して、そのGUIに基づいて、ポータブルデバイス6からHDD21に移動させる曲を指定する。
【0189】
ステップS162において、CPU11は、CPU53との間において、相互認証処理を実行し、通信用鍵を共有する。この処理は、図12のステップS56における場合と同様の処理である。
【0190】
次に、ステップS163において、CPU53は、フラッシュメモリ61に記憶されている暗号化されている選択曲の音楽データを読み出し、パーソナルコンピュータ1に転送する。パーソナルコンピュータ1のCPU11は、ステップS164において、ポータブルデバイス6から転送されてきた音楽データを、1つのファイルとしてファイル名を付けて、HDD21に保存する。この保存は、例えば、1つのファイルの一部として、ファイル名の位置情報(例えば、先頭からのバイト数)を与えて行うようにすることもできる。
【0191】
ステップS165において、CPU53は、フラッシュメモリ61に記憶されている選択曲の暗号化されている暗号鍵を読み出し、それを自分自身の保存用鍵で復号し、さらに通信用鍵で暗号化した後、パーソナルコンピュータ1に転送する。この暗号鍵は、例えば、図14のステップS67の処理でフラッシュメモリ61に保存されていたものである。
【0192】
ステップS166において、パーソナルコンピュータ1のCPU11は、ポータブルデバイス6から暗号鍵の転送を受けると、それを通信用鍵で復号し、自分自身の保存用鍵で暗号化する。ステップS167で、CPU11は、ステップS164で保存した音楽データのファイルのファイル名、その曲の情報を使用者がGUIを介して入力した曲名、ステップS166で暗号化した暗号鍵などを、HDD21の曲データベースに登録する。そして、ステップS168において、CPU11は、その曲データベース全体のハッシュ値をCPU32に計算させ、不揮発性メモリ34に保存させる。
【0193】
ステップS169において、パーソナルコンピュータ1のCPU11は、ポータブルデバイス6に対して暗号鍵が保存されたことを通知し、その曲の音楽データの削除を要求する。CPU53は、パーソナルコンピュータ1から、その曲の音楽データの削除が要求されてきたとき、ステップS170において、フラッシュメモリ61に記憶されているその曲の音楽データを削除する。
【0194】
次に、コンテンツ管理プログラム111を実行するCPU11およびメインプログラムを実行するCPU53による、ポータブルデバイス6からHDD21へ音楽データをコピーする場合の処理について、図22のフローチャートを参照して説明する。この図22に示すステップS181乃至ステップS188の処理は、図21のポータブルデバイス6からHDD21へ音楽データを移動させる場合の処理におけるステップS161乃至ステップS168の処理と同様の処理である。すなわち、コピー処理の場合は、図21のステップS169,S170の処理が省略される点を除いて、移動の場合の処理と基本的に同様の処理となるので、その説明は省略する。
【0195】
次に、図23のフローチャートを参照して、EMDサーバ4およびコンテンツ管理プログラム111を実行するCPU11による、EMDサーバ4から転送を受けた音楽データをHDD21にコピーする処理について説明する。ステップS201において、CPU11は、キーボード18またはマウス19を介して使用者からEMDサーバ4へのアクセスが指令されたとき、通信部25を制御し、ネットワーク2を介してEMDサーバ4にアクセスさせる。EMDサーバ4は、このアクセスに対応して、自分自身が保持している曲の曲番号、曲名、各情報などの情報を、ネットワーク2を介してパーソナルコンピュータ1に転送する。パーソナルコンピュータ1のCPU11は、通信部25を介して、この情報を取得したとき、それをインタフェース17を介してディスプレイ20に表示させる。使用者は、ディスプレイ20に表示されたGUIを利用して、ステップS202において、コピーを希望する曲を指定する。この指定情報は、ネットワーク2を介してEMDサーバ4に転送される。ステップS203において、CPU11は、EMDサーバ4との間において、ネットワーク2を介して相互認証処理を実行し、通信用鍵を共有する。
【0196】
パーソナルコンピュータ1とEMDサーバ4との間で行われる相互認証処理は、例えば、ISO 9798−3で規定される公開鍵と秘密鍵を用いて行うようにすることができる。この場合、パーソナルコンピュータ1は、自分自身の機密鍵とEMDサーバ4の公開鍵を予め有しており、EMDサーバ4は、自分自身の秘密鍵を有し、相互認証処理が行われる。パーソナルコンピュータ1の公開鍵は、EMDサーバ4から転送したり、あるいはパーソナルコンピュータ1に予め配布されている証明書(certificate)をパーソナルコンピュータ1からEMDサーバ4に転送し、その証明書をEMDサーバ4が確認し、公開鍵を得るようにしてもよい。さらに、ステップS204において、CPU11は、EMDサーバ4との間において課金に関する処理を実行する。この課金の処理の詳細は、図24のフローチャートを参照して後述する。
【0197】
次に、ステップS205において、EMDサーバ4は、パーソナルコンピュータ1に対して、ステップS202で指定された曲の暗号化されている音楽データをネットワーク2を介してパーソナルコンピュータ1に転送する。このとき、時刻情報も適宜転送される。ステップS206において、CPU11は、転送を受けた音楽データをファイル名を付けてHDD21に1つのファイルとして保存する。ステップS207において、EMDサーバ4は、さらに、その曲の暗号鍵をステップS203でパーソナルコンピュータ1と共有した通信用鍵を用いて暗号化し、パーソナルコンピュータ1へ転送する。
【0198】
CPU11は、ステップS208において、EMDサーバ4より転送を受けた暗号鍵を単独で、またはアダプタ26のCPU32と共同して通信用鍵を用いて復号し、復号して得られた暗号鍵を自分自身の保存用鍵で暗号化する。ステップS209において、CPU11は、その曲のファイル名、曲の情報、使用者が入力した曲名、暗号化された暗号鍵を組にして、HDD21の曲データベースに登録する。さらに、ステップS210において、CPU11は、その曲データベース全体のハッシュ値をCPU32に計算させ、不揮発性メモリ34に保存させる。
【0199】
なお、ステップS205においてEMDサーバ4は、音楽データとともに、時刻データをパーソナルコンピュータ1に送信する。この時刻データは、パーソナルコンピュータ1からアダプタ26に転送される。アダプタ26のCPU32は、パーソナルコンピュータ1より転送されてきた時刻データを受信すると、ステップS211において、RTC35の時刻を修正させる。このようにして、相互認証の結果、正しい装置と認識された外部の装置から得られた時刻情報に基づいて、アダプタ26のRTC35の時刻情報を修正するようにしたので、アダプタ26を常に正しい時刻情報を保持することが可能となる。
【0200】
次に、図24のフローチャートを参照して、EMDサーバ4およびコンテンツ管理プログラム111を実行するCPU11による、図23のステップS204における課金に関する処理の詳細について説明する。ステップS221において、パーソナルコンピュータ1のCPU11は、ステップS201でEMDサーバ4から伝送されてきた価格情報の中から、ステップS202で指定された選択曲の価格情報を読み取り、これをHDD21上の課金ログに書き込む。図25は、このような課金ログの例を表している。この例においては、使用者は、アイテム1乃至アイテム3を、EMDサーバ4からコピーしており、アイテム1とアイテム2の領域は50円とされ、アイテム3の料金は60円とされている。その時点における課金ログのハッシュ値も、CPU32により計算され、不揮発性メモリ34に登録されている。
【0201】
次に、ステップS222において、パーソナルコンピュータ1のCPU11は、ステップS221で書き込んだ課金ログをHDD21から読み出し、これをネットワーク2を介してEMDサーバ4に転送する。EMDサーバ4は、ステップS223において、パーソナルコンピュータ1から転送を受けた課金ログに基づく課金計算処理を実行する。すなわち、EMDサーバ4は、内蔵するデータベースに、パーソナルコンピュータ1の使用者から伝送されてきた課金ログを追加更新する。そして、ステップS224において、EMDサーバ4は、その課金ログについて直ちに決裁するか否かを判定し、直ちに決裁する場合には、ステップS225に進み、EMDサーバ4は、決裁に必要な商品名、金額などを決裁サーバ(図示せず)に転送する。そして、ステップS226において、決裁サーバは、パーソナルコンピュータ1の使用者に対する決裁処理を実行する。ステップS224において、決裁は直ちには行われないと判定された場合、ステップS225とS226の処理はスキップされる。すなわち、この処理は、例えば、月に1回など、定期的にその後実行される。
【0202】
次に、図26と図27のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11による、音声入出力インタフェース24のIEC60958端子から入力された、図示せぬCDプレーヤなどからの再生音楽データを、HDD21にコピーする場合の処理について説明する。ステップS241において、使用者は、CDプレーヤのIEC60958出力端子を、パーソナルコンピュータ1の音声入出力インタフェース24のIEC60958端子に接続する。ステップS242において、使用者は、キーボード18またはマウス19を操作し、CDプレーヤからコピーする曲の曲名(または、曲に対応する番号)を入力する。そして、ステップS243において使用者は、CDプレーヤのボタンを操作し、CDプレーヤの再生を開始させる。CDプレーヤとパーソナルコンピュータ1との間に制御信号を送受する線が接続されている場合には、パーソナルコンピュータ1のキーボード18またはマウス19を介して再生開始指令を入力することで、CDプレーヤにCDの再生を開始させることも可能である。
【0203】
CDプレーヤにおいて、CDの再生が開始されると、ステップS244において、CDプレーヤから出力された音楽データが、IEC60958端子を介してパーソナルコンピュータ1に転送されてくる。ステップS245において、CPU11は、IEC60958端子を介して入力されてくるデータから、SCMS(Serial Copy Management System)データを読み取る。このSCMSデータには、コピー禁止、コピー1回限り可能、コピーフリーなどのコピー情報が含まれている。そこで、ステップS246において、CPU11は、SCMSデータがコピー禁止を表しているか否かを判定し、コピー禁止を表している場合には、ステップS247に進み、CPU11は、ディスプレイ20に、例えば、「コピーが禁止されています」といったメッセージを表示させ、コピー処理を終了する。すなわち、この場合には、HDD21へのコピーが禁止される。
【0204】
CPU11は、ステップS246において、ステップS245で読み取ったSCMS情報がコピー禁止を表していないと判定した場合、ステップS248に進み、ウォータマークコードを読み出し、そのウォータマークがコピー禁止を表しているか否かをステップS249において判定する。ウォータマークコードがコピー禁止を表している場合には、ステップS247に進み、上述した場合と同様に、所定のメッセージが表示され、コピー処理が終了される。
【0205】
ステップS249において、ウォータマークがコピー禁止を表していないと判定された場合、ステップS250に進み、期限データベースチェック処理が行われる。期限データベースチェックの結果、選択曲が既に登録されていれば、ステップS251,S252の処理で、処理が終了される。この処理は、図7のステップS13,S14の処理と同様の処理である。
【0206】
選択曲がまだHDD21に登録されていない曲であれば、ステップS253乃至S258で、その登録処理が実行される。このステップS253乃至ステップS258の処理は、ステップS257において、IEC60958端子から供給されてくるSCMS情報も曲データベースに登録される点を除き、図7のステップS19乃至ステップS24の処理と同様の処理であるので、その説明は省略する。
【0207】
次に、図28と図29のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11による、音楽データをHDD21からIEC60958端子に出力(再生)する場合の処理について説明する。ステップS271乃至ステップS273において、図18のステップS111乃至S113における場合と同様に、曲データベース全体のハッシュ値が計算され、前回保存しておいたハッシュ値と一致するか否かが判定され、曲データベースの改竄のチェック処理が行われる。曲データベースの改竄が行われていないと判定された場合、ステップS274に進み、CPU11は、HDD21の曲データベースにアクセスし、そこに登録されている曲の情報を読み出し、ディスプレイ20に表示させる。使用者は、その表示を見て、キーボード18またはマウス19を適宜操作して、再生出力する曲を選択する。ステップS275において、CPU11は、選択曲の再生条件等のチェック処理を実行する。この再生条件等のチェック処理の詳細は、図30のフローチャートを参照して後述する。
【0208】
次に、ステップS276において、CPU11は、ステップS274において選択された曲の暗号鍵を曲データベースから読み出し、保存用鍵で復号する。ステップS277において、CPU11は、選択曲のSCMS情報を曲データベースから読み出し、IEC60958端子から出力するSCMS情報を、SCMSシステムの規則に従って決定する。例えば、再生回数に制限があるような場合、再生回数は1だけインクリメントされ、新たなSCMS情報とされる。ステップS278において、CPU11はさらに、選択曲のISRCを曲データベースから読み出す。
【0209】
次に、ステップS279において、CPU11は、曲データベースから選択曲ファイル名を読み出し、そのファイル名を基に、その音楽データをHDD21から読み出す。CPU11はさらに、その音楽データに対応する暗号鍵を曲データベースから読み出し、保存用鍵で復号し、復号した暗号鍵を用いて、暗号化されている音楽データを復号する。CPU11は、さらに、その音楽データの圧縮符号を復号する。ステップS280において、CPU11は、ステップS279で、復号したデジタル音楽データを、ステップS277で決定したSCMS情報、並びにステップS278で読み出したISRC情報とともに、IEC60958の規定に従って、IEC60958端子から出力する。さらにまた、デジタル音楽データをアナログ化し、音声入出力インタフェース24のアナログ出力端子から出力する。
【0210】
ステップS281において、CPU11は、曲データベース中の再生回数カウンタの値を1だけインクリメントする。そして、ステップS282において、選択曲に再生時課金条件が付加されているか否かを判定する。再生時課金条件が付加されている場合には、ステップS283に進み、CPU11は、対応する料金を課金ログに書き込み、ステップS284において、曲データベース全体のハッシュ値をCPU32に計算させ、不揮発性メモリ34に記憶させる。ステップS282において、選択曲に再生時課金条件が付加されていないと判定された場合、ステップS283とステップS284の処理はスキップされる。
【0211】
次に、図30のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11による、図28のステップS275の再生条件等のチェック処理の詳細について説明する。ステップS301において、CPU11は、曲データベースの各種条件を読み出す。ステップS302においてCPU11は、読み出した条件のうち、再生回数が制限回数を過ぎているか否かを判定し、過ぎている場合には、ステップS303に進み、選択曲をHDD21から削除させるとともに、曲データベースから選択曲の情報を削除させる。ステップS304において、CPU11はさらに、曲データベースの新たなハッシュ値をCPU32に計算させ、そのハッシュ値を不揮発性メモリ34に保存させる。この場合、再生出力は禁止される。
【0212】
ステップS302において、再生回数が制限回数を過ぎていないと判定された場合、ステップS305に進み、CPU11は、再生終了日時が現在日時を過ぎているか否かを判定する。再生終了日時が現在日時を過ぎている場合には、上述した場合と同様にステップS303において、選択曲をHDD21から削除させるとともに、曲データベースからも削除させる。そして、ステップS304において、新たな曲データベースのハッシュ値が計算され、保存される。この場合にも、再生出力は禁止される。
【0213】
ステップS305において、再生終了日時が現在日時を過ぎていないと判定された場合は、ステップS306に進み、CPU32は、その選択曲に対して再生時課金条件が付加されているか否かを判定する。再生時課金条件が付加されている場合には、ステップS307に進み、CPU11は、再生時課金条件が付加されている旨のメッセージと料金を、ディスプレイ20に表示させる。ステップS306において、再生時課金条件が付加されていないと判定された場合、ステップS307の処理はスキップされる。
【0214】
次に、図31と図32のフローチャートを参照して、コンテンツ管理プログラム111を実行するCPU11およびメインプログラムを実行するCPU53による、HDD21からポータブルデバイス6経由で音楽データを出力(再生)する場合の処理について説明する。ステップS321乃至ステップS325において、曲データベースの改竄チェックと選択曲の指定、並びに選択曲の再生条件等のチェック処理が行われる。その処理は、図28のステップS271乃至ステップS275の処理と同様の処理であるので、その説明は省略する。
【0215】
ステップS326において、ポータブルデバイス6とパーソナルコンピュータ1の間で相互認証処理が実行され、相互の間で、通信用鍵が共有される。ステップS327において、パーソナルコンピュータ1のCPU11は、ポータブルデバイス6に対して、これから送る暗号化音声データを再生するように命令する。ステップS328において、CPU11は、ステップS324で指定された選択曲のファイル名を曲データベースから読み出し、そのファイル名の音楽データをHDD21から読み出す。CPU11は、ステップS329において、音楽データの圧縮符号化方式、暗号化方式、フォーマットなどをポータブルデバイス6の方式のものに変換する処理を実行する。そして、ステップS330において、CPU11は、ステップS329において変換した音楽データを通信用鍵で暗号化し、ポータブルデバイス6に転送する。
【0216】
ステップS331において、ポータブルデバイス6のCPU53は、ステップS327において、パーソナルコンピュータ1から転送されてきた命令に対応して、転送を受けた各データを通信用鍵で復号し、再生出力する。ステップS332において、CPU11は、曲データベースの再生回数カウントを1だけインクリメントする。さらに、ステップS333において、CPU11は、選択曲に再生時課金条件が付加されているか否かを判定し、付加されている場合には、ステップS334において、その料金を課金ログに書き込み、ステップS335において、CPU32に、曲データベース全体のハッシュ値を新たに計算させ、保存させる。選択曲に再生時課金条件が付加されていない場合には、ステップS334,ステップS335の処理はスキップされる。
【0217】
本発明においては、音楽データが不正に複製されるのを防止するために、各種の工夫が凝らされている。例えば、CPU11を動作させるプログラムは、その実行順序が毎回変化するような、いわゆるタンパーレジスタントソフトウェアとされている。
【0218】
さらに、上述したように、CPU11の機能の一部は、ハードウェアとしてのアダプタ26に分担され、両者が共働して各種の処理を実行するようになされている。これにより、より安全性を高めることが可能となっている。
【0219】
例えば、上述したように、曲データベースのハッシュ値は、曲データベース自体に保存されるのではなく、アダプタ26の不揮発性メモリ34に保存される。
すなわち、図8のステップS32,S33などの前回保存しておいたハッシュ値との比較処理において、比較対象とされる過去のハッシュ値は、不揮発性メモリ34に記憶されているものとされる。これにより、例えば、HDD21に保存されている音楽データを、他の記録媒体にコピーまたは移動させる前に、HDD21の記録内容をバックアップしておき、HDD21から、そこに保存されている音楽データを他の記録媒体にコピーまたはムーブした後、HDD21にバックアップしておいたデータを再びリストアするようにすることで、実質的に再現なく、コピーまたはムーブができてしまうようなことが防止される。
【0220】
例えば、図33に示すように、HDD21に曲A,Bが保存されている場合、不揮発性メモリ34には、曲Aと曲Bの情報に対応するハッシュ値が保存されている。この状態において、HDD21の記録データを他の記録媒体251にバックアップしたとする。その後、HDD21に保存されている曲Aと曲Bのうち、曲Aを他の記録媒体252に移動させた場合、その時点において、HDD21に記録されている曲は、曲Bだけとなるので、不揮発性メモリ34のハッシュ値も、曲Bに対応するハッシュ値に変更される。
【0221】
従って、その後、記録媒体251にバックアップしておいたHDD21の内容をHDD21にリストアして、HDD21に、再び曲Aと曲Bを保存させたとしても、不揮発性メモリ34には、曲Bの情報から演算されたハッシュ値が記憶されており、曲Aと曲Bの情報から演算されたハッシュ値は記憶されていない。これにより、その時点において、HDD21に記憶されている曲Aと曲Bに基づくハッシュ値が、不揮発性メモリ34に記憶されている過去のハッシュ値と一致しないことになり、曲データベースが改竄されたことが検出される。その結果、以後、HDD21に保存されている曲Aと曲Bの利用が制限されてしまうことになる。
【0222】
さらに、上述したように、アダプタ26は、RTC35を内蔵しており、このRTC35の値は、正しい認証結果が得られた他の装置(例えば、EMDサーバ4)から転送されてきた時刻データに基づいて、その時刻情報を修正する。そして、現在日時としては、パーソナルコンピュータ1が管理するものではなく、RTC35が出力するものが利用される。従って、使用者が、パーソナルコンピュータ1の現在時刻を故意に過去の時刻に修正し、再生条件としての再生終了日時の判定を免れるようなことができなくなる。
【0223】
また、アダプタ26は、暗号化されて転送されてきたプログラムをROM36に予め記憶されているプログラムに従って復号し、実行するように構成することで、より安全性が高められている。次に、この点について、図34のフローチャートを参照して説明する。
【0224】
すなわち、パーソナルコンピュータ1は、アダプタ26に対して、所定の処理を実行させたいとき、ステップS351において、アダプタ26に実行させるべきプログラムをRAM13に予め記憶されている暗号鍵を用いて暗号化してアダプタ26に転送する。アダプタ26のROM36には、パーソナルコンピュータ1から転送されてきた、暗号化されているプログラムを復号し、実行するためのプログラムが予め記憶されている。CPU32は、このROM36に記憶されているプログラムに従って、パーソナルコンピュータ1から転送されてきた暗号化されているプログラムをステップS352において復号する。そして、ステップS313において、CPU32は、復号したプログラムをRAM33に展開し、ステップS354において、そのプログラムを実行する。
【0225】
例えば、上述したように、パーソナルコンピュータ1のCPU11は、HDD21の曲データベースのハッシュ値をアダプタ26に計算させるとき、曲データベースのデータを暗号鍵で暗号化してアダプタ26のCPU32に転送する。CPU32は、転送されてきた曲データベースのデータに対してハッシュ関数を適応し、ハッシュ値を計算する。そして、計算されたハッシュ値を不揮発性メモリ34に記憶させる。あるいは、そのハッシュ値を、CPU32は、予め記憶されている過去のハッシュ値と比較し、比較結果をパーソナルコンピュータ1のCPU11に転送する。
【0226】
図35は、アダプタ26の内部のより具体的な構成を表している。アダプタ26は、半導体ICとして形成される。アダプタ26は、図3に示したインタフェース31、CPU32、RAM33、不揮発性メモリ34、RTC35、ROM36以外に、RAM33に対する書き込みと読み出しを制御するRAMコントローラ261、並びに論理回路262を有している。論理回路262は、例えば、暗号化されている音楽データを解読した後、解読したデータをアダプタ26から直接出力するような場合の処理のために用いられる。
【0227】
これらのインタフェース31乃至ROM36、RAMコントローラ261、並びに論理回路262は、半導体IC内に一体的に組み込まれ、外部からは分解できないように構成されている。
【0228】
水晶振動子271は、アダプタ26が各種の処理を実行する上において、基準となるクロックを生成するとき用いられる。発振回路272は、RTC35を動作させるための発振回路である。バッテリ273は、発振回路272、不揮発性メモリ34、およびRTC35に対してバックアップ用の電力を供給している。アダプタ26のその他の回路には、パーソナルコンピュータ1の電源供給回路281からの電力が供給されている。
【0229】
不揮発性メモリ34は、書き込み消去可能なROMで構成することも可能であるが、バッテリ273からのバックアップ電源でバックアップされるRAMで構成する場合には、例えば、図36に示すように、不揮発性メモリ34の上に保護アルミニウム層291を形成し、さらに、その保護アルミニウム層291と同一平面上となるように、不揮発性メモリ34にバッテリ273からの電力を供給する電源パターン292を形成するようにすることができる。このようにすると、例えば、不揮発性メモリ34を改竄すべく、保護アルミニウム層291を削除しようとすると、同一平面上の電源パターン292も削除されてしまい、不揮発性メモリ34に対する電力の供給が断たれ、内部に記憶されているデータが消去されてしまうことになる。このように構成することで、タンパーレジスト性をより高めることができる。
【0230】
さらに、図37に示すように、不揮発性メモリ34に対するデータの書き込みまたは読み出しのための配線301−1乃至301−3は、対応する位置で、上下(深さ)方向に重なりあうように形成されている。これにより、より下層の配線301−3からデータを読み出すためには、上方の配線301−1,101−2を除去しなければならず、複数の配線301−1,301−2,301−3から同時にデータを読み取ることができなくなる。さらにまた、この配線301−1乃至301−3を冗長に形成し、直接プローブすると、その付加容量により、その内容を解析することが困難になるようにすることができる。
【0231】
以上においては、記録媒体として、ポータブルデバイス6を用いる場合を例として説明したが、本発明は、その他の記録媒体にデータを移転またはコピーする場合にも応用することが可能である。
【0232】
また、データは、音楽データ以外に、画像データ、その他のデータとすることもできる。
【0233】
以上のように、本発明によれば、次のような効果を奏することができる。
【0234】
(1) HDD21に暗号化してデータを記録するとともに、暗号鍵も保存用鍵で暗号化した上でHDD21に記録するようにしたので、HDD21に記録されている音楽データをコピーしても、これを復号することができないので、複製が大量に配布されることを防止することができる。
【0235】
(2) 所定の曲を1回コピーしたとき、一定時間(上記例の場合、48時間)の間、その曲をコピーすることができないようするために、その曲と録音日時を曲データベース上に登録するようにしたので、そのコピー回数を制限することができ、複製を大量に配布することを防止することができる。
【0236】
さらにデータベースを更新する度に、データのハッシュ値を計算し保存するようにしたので、データベースの改竄を防止することが容易となる。
【0237】
(3) 外部の装置に音楽データを渡したら、HDD21上の音楽データを消去するようにしたので、HDD21内に元のデジタル音楽データが残らず、その複製を大量に配布することが防止される。
【0238】
(4) HDD21内に曲データベースを設け、全体のハッシュ値を毎回チェックするようにしたので、HDD21の内容をムーブの直前にバックアップし、ムーブ直後にバックアップしたデータをHDD21にリストアするようにしたとしても、送り元のデータを確実に消去することが可能となる。
【0239】
(5) パーソナルコンピュータ1が外部の機器にデータを渡すとき、その前に相互認証処理を行うようにしたので、不正な機器にデータを渡してしまうようなことが防止される。
【0240】
(6) 外部機器から、パーソナルコンピュータ1に対してデータを渡す前に、パーソナルコンピュータ1のソフトウェアが正当なものであるか否かを相互認証により確認するようにしたので、不正なソフトウェアに対して音楽データを渡してしまうようなことが防止される。
【0241】
(7) 曲の同一性の判定にISRCを用い、ISRCが取得できないときは、TOCを用いるようにしたので、ISRCが取得できなくとも、曲の同一性を判定することが可能になる。
【0242】
(8) パーソナルコンピュータ1におけるソフトウェア機能のうち、所定の部分をパーソナルコンピュータ1に外付けされるアダプタ26に負担させるようにしたので、パーソナルコンピュータ1のソフトウェアを解析しただけでは、全体としてどのような処理となっているのかが判らないので、ソフトウェアを改竄をして、意図する機能を持たせるようなことが困難となる。
【0243】
なお、アダプタ26が実行する処理は、セキュアなプログラムでCPU11が実行するようにしてもよい。この場合において、パーソナルコンピュータ1は、アダプタ26のRTC35が供給する現在時刻に代えて、ネットワーク2に接続されている特定のサーバ(例えば、EMD登録サーバ3)から現在時刻のデータをダウンロードして、その現在時刻を基に、判定の処理を実行する。また、この場合において、パーソナルコンピュータ1は、所定の時間間隔で現在時刻を記憶して、記憶している時刻より以前の時刻が設定されたとき、エラーの表示を行い、時刻の設定を受け付けないようにしてもよい。
【0244】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【0245】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図3に示すように、磁気ディスク41(フロッピディスクを含む)、光ディスク42(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク43(MD(Mini-Disc)を含む)、若しくは半導体メモリ44などよりなるパッケージメディア、または、プログラムが一時的若しくは永続的に格納されるROM12や、HDD21などにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じて通信部25などのインタフェースを介して、ローカルエリアネットワークまたはインターネットなどのネットワーク2、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【0246】
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0247】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0248】
【発明の効果】
本発明によれば、ユーザの利益を大きく損なうことなく、大量の複製を実質的に禁止することができるようになる。
【図面の簡単な説明】
【図1】 SCMSおよびCGMSを説明するための図である。
【図2】本発明に係る音声データ管理システムの一実施の形態を示す図である。
【図3】パーソナルコンピュータ1の構成を説明する図である。
【図4】ポータブルデバイス6の構成を説明する図である。
【図5】パーソナルコンピュータ1の機能の構成を説明するブロック図である。
【図6】録音プログラム113がディスプレイ20に表示させるウィンドウの例を説明する図である。
【図7】コンパクトディスクからHDD21にコピーする場合の処理を説明するフローチャートである。
【図8】図7のステップS12の期限データベースチェック処理を説明するフローチャートである。
【図9】期限データベースの例を示す図である。
【図10】ウォータマークを説明する図である。
【図11】曲データベースの例を示す図である。
【図12】 HDD21からポータブルデバイス6へデータを移動する動作を説明するフローチャートである。
【図13】 HDD21からポータブルデバイス6へデータを移動する動作を説明するフローチャートである。
【図14】 HDD21からポータブルデバイス6へデータを移動する作を説明するフローチャートである。
【図15】図12のステップS55の選択曲の再生条件などのチェック処理を説明するフローチャートである。
【図16】ポータブルデバイス6が管理している再生条件を説明する図である。
【図17】図12のステップS58のフォーマット変換処理の詳細を説明するフローチャートである。
【図18】 HDD21からポータブルデバイス6へデータをコピーする場合の動作を説明するフローチャートである。
【図19】 HDD21からポータブルデバイス6へデータをコピーする場合の動作を説明するフローチャートである。
【図20】 HDD21からポータブルデバイス6へデータをコピーする場合の動作を説明するフローチャートである。
【図21】ポータブルデバイス6からHDD21へデータを移動する場合の動作を説明するフローチャートである。
【図22】ポータブルデバイス6からHDD21へデータをコピーする場合の動作を説明フローチャートである。
【図23】 EMDサーバ4からHDD21へデータをコピーする場合の処理を説明するフローチャートである。
【図24】図23のステップS204の課金に関する処理の詳細を説明するフローチャートである。
【図25】課金ログを説明する図である。
【図26】図3のパーソナルコンピュータ1のIEC60958端子からHDD21へデータをコピーする2合の処理を説明するフローチャートである。
【図27】図3のパーソナルコンピュータ1のIEC60958端子からHDD21へデータをコピーする場合の処理を説明するフローチャートである。
【図28】 HDD21からIEC60958端子にデータを出力する場合の動作を説明するフローチャートである。
【図29】 HDD21からIEC60958端子にデータを出力する場合の動作を説明するフローチャートである。
【図30】図28のステップS275の再生条件などのチェック処理を説明するフローチャートである。
【図31】 HDD21からポータブルデバイス6経由でデータを出力する場合の動作を説明するフローチャートである。
【図32】 HDD21からポータブルデバイス6経由でデータを出力する場合の動作を説明するフローチャートである。
【図33】不揮発性メモリ34の機能を説明する図である。
【図34】アダプタ26の動作を説明するフローチャートである。
【図35】アダプタ26の内部の構成を示す図である。
【図36】不揮発性メモリ34の内部の構成例を示す図である。
【図37】不揮発性メモリ34の内部の構成例を示す図である。
【符号の説明】
1 パーソナルコンピュータ, 2 ネットワーク, 3 EMD登録サーバ,11 CPU, 12 ROM, 13 RAM, 21 HDD, 24 音声入出力インターフェース, 26 アダプタ, 32 CPU, 33 RAM, 34 不揮発性メモリ, 35 RTC, 36 ROM, 41 磁気ディスク, 42 光ディスク, 43 光磁気ディスク, 44 半導体メモリ, 53 CPU, 54 RAM, 55 ROM, 59 DSP, 61 フラッシュメモリ, 111 コンテンツ管理プログラム, 112 表示操作指示プログラム, 113 録音プログラム, 114 コンテンツデータベース, 131 EMD選択プログラム, 132 チェックイン/チェックアウト管理プログラム, 133 暗号方式変換プログラム, 134 圧縮方式変換プログラム, 135 暗号化プログラム, 136 利用条件変換プログラム, 137 署名管理プログラム, 138 認証プログラム, 139 復号プログラム, 140 PD用ドライバ, 141 購入用ドライバ, 142 購入用ドライバ, 181 フィルタリングデータファイル, 182 表示データファイル, 183 画像ファイル, 184 履歴データファイル[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an information processing apparatus and method, and a program storage medium, and more particularly, to an information processing apparatus and method and a program storage medium that can appropriately limit content duplication, for example.
[0002]
[Prior art]
SCMS (Serial Copy Management System), CGMS (Copy Generation Management System), and the like have been proposed as methods for restricting copying of copyrighted AV content (for example, music and images).
[0003]
In these systems, as shown in FIG. 1, the content A1 (first generation) to which the copyright is set can be copied and the content A2 (second generation) can be obtained (recorded). The content A2 (second generation) itself cannot be further copied to obtain the content A3 (third generation).
[0004]
[Problems to be solved by the invention]
However, in this case, as shown in FIG. 1, there is a problem that a plurality of second generation contents A2 can be obtained by repeating copying of the contents A1, and the copyright of the contents A1 is not sufficiently protected.
[0005]
Therefore, UCS (Uni Copy System) has been proposed as a method that enables the content A1 to be copied only once. In this case, the user can only copy the content A1 once. There is a problem in that it cannot be duplicated and is disadvantageous to the user.
[0006]
The present invention has been made in view of such a situation, and makes it possible to substantially prohibit a large amount of duplication without greatly deteriorating the profit of the user.
[0007]
[Means for Solving the Problems]
The present inventionThe information processing deviceDuplication means for duplicating the content recorded on the first recording medium and recording the resulting copy content on a second recording medium different from the first recording medium; and on the first recording medium Updating means for updating a time-limit database that stores time information when the content is copied in association with identification information for identifying the content each time the recorded content is copied by the copying unit; When the user instructs to copy the content recorded on the first recording medium, the copying is instructed.Acquisition means for acquiring content identification information;When the time information when the content corresponding to the acquired identification information was copied last time is read from the time limit database, and when the predetermined time has passed since the content instructed to be copied was last copied When the content is instructed to be copied and a predetermined time has not elapsed since the previous copy, the content is copied to the copy means. Copy control means to prohibitIncludingMu.
[0008]
The information processing method according to the present invention includes a duplicating unit that duplicates content recorded on a first recording medium and records the resulting copy content on a second recording medium different from the first recording medium. In the information processing method of the information processing apparatus provided, each time the content recorded on the first recording medium is duplicated by the duplication unit, the time when the content is duplicated in the identification information for identifying the content An update step for updating a time limit database stored in association with information, and when the user instructs to copy the content recorded in the first recording medium, identification information of the content instructed to be copied An acquisition step of acquiring, and time information when the content corresponding to the acquired identification information was copied last time; When a predetermined time has passed since the content that was instructed to be copied and copied last time, the content is instructed to be copied by allowing the copying means to copy the content. A copy that prohibits the copy means from copying the content if a predetermined time has not passed since the last copySystemIncluding steps.
[0009]
The program storage medium of the present invention includes a duplicating means for duplicating the content recorded on the first recording medium and recording the resulting copy content on a second recording medium different from the first recording medium. A program for controlling an information processing apparatus provided, wherein each time the content recorded on the first recording medium is duplicated by the duplication unit, the content is duplicated in identification information for identifying the content An update step for updating a time limit database that stores time information in association with each other and a copy of the content recorded on the first recording medium is instructed by the user. An acquisition step of acquiring identification information, and time information when the content corresponding to the acquired identification information was previously replicated. When a predetermined time has passed since the content instructed to be read and copied from the previous database has been copied last time, the copying means is allowed to copy the content, and the copy is instructed. Duplication that prohibits duplication of the content to the duplication means if a predetermined time has not passed since the content was last duplicatedSystemA program for causing a computer of the information processing apparatus to execute processing including control steps is stored.
[0010]
The present inventionInEach time the content recorded on the first recording medium is duplicated by the duplicating means, the time limit database that stores the time information when the content is duplicated in association with the identification information that identifies the content is updated, When the user gives an instruction to copy the content recorded on the first recording medium, the user is instructed to copyContent identification information is obtained,When the time information when the content corresponding to the acquired identification information was copied last time is read from the time limit database, and when a predetermined time has passed since the content instructed to be copied was last copied, Content copying is permitted to the copying means. On the other hand, if a predetermined time has not elapsed since the content instructed to be copied has been copied last time, the copying means is prohibited from copying the content.
[0011]
DETAILED DESCRIPTION OF THE INVENTION
FIG. 2 is a diagram showing an embodiment of an audio data management system according to the present invention. The
[0012]
The
[0013]
The
[0014]
The
[0015]
Also, the
[0016]
The
[0017]
The
The
[0018]
When the
[0019]
In response to a request from the
[0020]
The content supplied by each of the EMD servers 4-1 to 4-3 is compressed by the same or different compression method. The content supplied by each of the EMD servers 4-1 to 4-3 is encrypted by the same or different encryption method.
[0021]
A WWW (World Wide Web) server 5-1 responds to a request from the
[0022]
The portable device 6-1 stores the content supplied from the personal computer 1 (that is, the checked-out content) together with data related to the content (for example, a song title or playback restriction). The portable device 6-1 reproduces the stored content based on data related to the content, and outputs it to a headphone (not shown).
[0023]
For example, when the reproduction is attempted to exceed the number of reproductions as reproduction restrictions stored as data related to the content, the portable device 6-1 stops reproduction of the corresponding content. When playback is attempted after the playback deadline has passed as a playback limit stored as data related to the content, the portable device 6-1 stops playback of the corresponding content.
[0024]
The user can remove the portable device 6-1 storing the content from the
[0025]
The portable device 6-2 stores the content supplied from the
[0026]
The portable device 6-3 stores the content supplied from the
[0027]
Hereinafter, when it is not necessary to individually distinguish the portable devices 6-1 to 6-3, they are simply referred to as
[0028]
FIG. 3 is a diagram for explaining the configuration of the
[0029]
The host bus 14 is connected via a
[0030]
The
[0031]
The drive 22 reads the data or program recorded in the magnetic disk 41, the optical disk 42 (including the CD), the magneto-optical disk 43, or the semiconductor memory 44 that is loaded, and the data or program is read from the
[0032]
The portable device 6-1 is connected to the USB port 23-1 via the USB cable 7-1. The USB port 23-1 receives data (for example, contents or commands of the portable device 6-1) supplied from the
[0033]
The portable device 6-2 is connected to the USB port 23-2 via the USB cable 7-2. The USB port 23-2 receives data (for example, content or commands of the portable device 6-2) supplied from the
[0034]
The portable device 6-3 is connected to the USB port 23-3 via the USB cable 7-3. The USB port 23-3 receives data (for example, contents or commands of the portable device 6-3) supplied from the
[0035]
An audio input /
[0036]
The
[0037]
The
[0038]
The
[0039]
The
[0040]
Hereinafter, when it is not necessary to individually distinguish the USB ports 23-1 to 23-3, they are simply referred to as the
[0041]
Next, the configuration of the
[0042]
When the USB controller 57 is connected to the
[0043]
The content is composed of 64 bytes of data per packet, and is transferred from the
[0044]
The content transferred to the
[0045]
The header size represents the data length of the header (for example, 33 bytes), and the file size represents the data length of the audio data (for example, 33,636, 138 bytes).
[0046]
The content key is a key for decrypting the encrypted audio data, and is encrypted based on the session key (temporary key) generated by the mutual authentication process between the
[0047]
When the
[0048]
The challenge response method is, for example, responding to a certain value (challenge) generated by the
[0049]
The codec ID is an ID corresponding to the encoding method of the audio data. For example, the codec ID “1” corresponds to ATRAC3, and the codec ID “0” is MP3 (MPEG (Moving Picture Experts Group) Audio Layer- Corresponds to 3).
[0050]
The file name is data obtained by converting a content file (described later) recorded by the
[0051]
The reproduction restriction data is data indicating whether a period during which content can be reproduced (that is, start date and time or end date and time) or number of times (restriction of the number of times of reproduction) is set. When the number limit is set, “1” is assigned to the reproduction limit data. When the period during which reproduction is possible is set, “2” is assigned, and the number limit and period during which reproduction is possible are set. When neither is set (so-called purchase by purchase), “0” is assigned.
[0052]
The start date and time and end date and time are data indicating the range of the reproducible period when the reproduction restriction data is “2”. For example, when the start date and time is “00040F” and the end date and time is “0000000F”, the corresponding content can be played back from April 15, 2000 to July 15, 2000.
[0053]
Similarly, when the reproduction restriction data is “1” or “2”, the number restriction and the reproduction number counter are the number of reproductions set in advance corresponding to the content, and the reproduction number counter Indicates the number of times the content is reproduced, which is updated by the
[0054]
For example, when the playback restriction data is “2”, the start date / time is “0000000F”, the end date / time is “0000000F”, and the playback restriction data is “2”, the
[0055]
For example, when the reproduction restriction data is “1”, the start date and time is “000000”, the end date and time is “000000”, the reproduction restriction data is “0a”, and the reproduction number counter is “05”. The corresponding content has no limitation on the reproducible period, the reproducible frequency is 10 times, and the reproducible frequency is 5 times.
[0056]
When the
[0057]
The
[0058]
Note that the
[0059]
When a playback command corresponding to a pressing operation of a playback / stop button (not shown) by the user is supplied to the
[0060]
The
[0061]
The
[0062]
The
[0063]
Similarly, an oscillator 53A or 57A made of crystal is externally attached to the
[0064]
With this configuration, the
[0065]
The digital-
[0066]
As described above, the
[0067]
When the playback / stop button is pressed again after stopping, the
[0068]
Incidentally, when the play / stop button is pressed after the power is turned off, the
[0069]
Further, the
[0070]
Further, the
[0071]
Incidentally, in this embodiment, the audio data is handled as 64 KByte as one block, and the block position corresponding to the content of one song is stored in the FAT.
[0072]
When the FAT is stored in the
[0073]
In this way, the FAT is rewritten every time content is written to the
[0074]
When the FAT is written in the
[0075]
Therefore, the
[0076]
By storing the FAT with a large number of rewrites in the
[0077]
When the
[0078]
When the
[0079]
When the
[0080]
As described above, when the
[0081]
The
[0082]
FIG. 5 is a block diagram illustrating a functional configuration of the
[0083]
The
[0084]
The
[0085]
The check-in / check-out
[0086]
The check-in / check-out
[0087]
The encryption
[0088]
Also, when checking out content to the portable device 6-1 or 6-3, the encryption
[0089]
The compression method conversion program 134 compresses the content received by the purchase application program 115 from the EMD server 4-1 via the
[0090]
The compression method conversion program 134 is stored in the content files 161-1 to 161-N recorded in the
[0091]
Further, when the content is checked out to the portable device 6-1 or 6-3, the compression method conversion program 134 converts the content to be checked out into a compression method that can be used by the portable device 6-1 or 6-3. To do.
[0092]
For example, the
[0093]
The use
[0094]
In addition, when the content is checked out to the portable device 6-1 or 6-3, the usage
[0095]
The
[0096]
The
[0097]
The authentication key used by the
[0098]
The
[0099]
When the
[0100]
When the
[0101]
When the
[0102]
The
[0103]
The
[0104]
The purchase driver 142 is a program that is installed together with the
[0105]
The display operation instruction program 112 displays an image of a predetermined window on the
[0106]
The filtering data file 181 stores data for weighting each content stored in the content files 161-1 to 161-N recorded in the
[0107]
The display data file 182 stores data corresponding to the content stored in the content files 161-1 to 161 -N recorded in the
[0108]
The image files 183-1 to 183-K store images corresponding to the content files 161-1 to 161-N recorded in the
[0109]
Hereinafter, when it is not necessary to individually distinguish the image files 183-1 to 183-K, they are simply referred to as an
[0110]
The history data file 184 stores history data such as the number of times the content stored in the content files 161-1 to 161-N recorded in the
[0111]
During the registration process, the display operation instruction program 112 transmits the ID of the
[0112]
The
[0113]
The
[0114]
The
[0115]
When a recording instruction is input, the
[0116]
The
[0117]
The
[0118]
For example, the usage rule data corresponding to the content stored in the content file 161-1 is stored in the usage rule file 162-1. The usage rule data corresponding to the content stored in the content file 161-N is stored in the usage rule file 162-N.
[0119]
Note that the data recorded in the use condition files 162-1 to 162-N corresponds to data recorded in a term database, which will be described later, or data recorded in a song database. That is, the
[0120]
Hereinafter, when it is not necessary to individually distinguish the content files 161-1 to 161 -N, they are simply referred to as the
[0121]
The application program for purchase 115 is supplied from the
[0122]
Next, the association between the data stored in the display data file 82 and the content files 161-1 to 161-N stored in the content database will be described.
[0123]
The content stored in any of the content files 161-1 to 161-N belongs to a predetermined package. More specifically, the package is either an original package, a My Select package, or a filtering package.
[0124]
One or more contents belong to the original package, and correspond to a classification of contents (for example, corresponding to a so-called album) in the EMD servers 4-1 to 4-3, or one CD. The content belongs to one of the original packages and cannot belong to a plurality of original packages. Also, the original package to which the content belongs cannot be changed. The user can edit a part of information corresponding to the original package (addition of information or change of added information).
[0125]
One or more contents arbitrarily selected by the user belong to the My Select package. The user can arbitrarily edit which content belongs to the My Select package. Content can belong to one or more My Select packages at the same time. Further, the content does not have to belong to any My Select package.
[0126]
The content selected based on the filtering data stored in the filtering data file 181 belongs to the filtering package. The filtering data is supplied from the EMD servers 4-1 to 4-3 or the WWW server 5-1 or 5-2 through the
[0127]
The filtering data is a reference for selecting a predetermined content or calculating a weight corresponding to the content. For example, if filtering data corresponding to this week's J-POP (Japanese pops) best ten is used, the
[0128]
The filtering data file 181 includes, for example, filtering data that selects content in the order of the longest check-out period in the past month, filtering data that selects content that has been checked out frequently in the past half year, or a song title. It includes filtering data that selects content that includes the word “love”.
[0129]
As described above, the content of the filtering package is selected by associating the filtering data with the display data 221 for content corresponding to the content (including the data set by the user in the display data 221 for content) or the
[0130]
FIG. 6 is a diagram for explaining a window that the
[0131]
Based on the CD information received from the WWW server 5-2, the
[0132]
After the
[0133]
When the
[0134]
When the
[0135]
The
[0136]
The
[0137]
When the
[0138]
The display operation instruction program 112 generates original
[0139]
In the window displayed by the
[0140]
For example, when the
[0141]
Next, with reference to the flowchart of FIG. 7, a process when the
[0142]
Specifically, for example, the
[0143]
Next, in step S12, the
[0144]
In step S31, the
[0145]
Note that when no data is recorded in the term database, the
[0146]
That is, a time limit database is formed in the
[0147]
In step S33, the
[0148]
If the hash value calculated in step S31 matches the previous hash value, the process proceeds to step S35, and the
[0149]
In step S36, the
[0150]
Next, in step S39, the
[0151]
If it is determined in step S36 that the ISRC of the selected song is registered in the time limit database, the selected song is a song that has been registered in the
[0152]
On the other hand, if it is determined in step S40 that the current time has not yet passed 48 hours from the registration date and time, copying the selected song to the
[0153]
As described above, a flag indicating whether or not the selected song is registered in the
[0154]
Returning to FIG. 7, in step S <b> 13, the
[0155]
If it is determined in step S13 that the selected song is not registered in the time limit database, the process proceeds to step S15, and the
In step S16, the
[0156]
On the other hand, if it is determined in step S17 that the watermark does not indicate copy prohibition, the process proceeds to step S19, and the
[0157]
Next, in step S21, the
[0158]
This storage process and the above-described compression encoding process and encryption process may be performed separately or in parallel.
[0159]
Further, in step S22, the
[0160]
In step S23, the
[0161]
In this way, for example, a song database as shown in FIG. 11 is registered on the
[0162]
When a certain period of time has passed since the copy, the copy can be made again, so that the copy can be performed several times, which is within the range of personal use of the user. On the other hand, exceeding the range of personal use, for example, when trying to replicate in large quantities, enormous time is required, making it practically impossible. Further, for example, even when the
[0163]
Further, for example, the contents of the term database recorded in the
[0164]
In the above description, the case where the date and time copied according to ISRC is stored is described as an example. However, as long as the information identifies the content or CD, other information (for example, song name, album name, and their names) Combination) can also be used.
[0165]
Next, referring to the flowcharts of FIGS. 12 to 14, the
[0166]
Next, in step S54, the
[0167]
Next, in step S56, mutual authentication processing is performed between the
[0168]
For example, the master key KM is stored in advance in the flash memory 61 (or EEPROM 68) of the
[0169]
Alternatively, the ID and master key KMP are stored in advance in the
Then, a temporary communication key is further generated from the individual key.
[0170]
As an authentication method, for example, IOS (International Organization for Standardization) 9798-2 can be used.
[0171]
When the mutual authentication is not correctly performed, the process is terminated. When the mutual authentication is correctly performed, in step S57, the
Details of this conversion processing will be described later with reference to the flowchart of FIG.
[0172]
In step S <b> 59, the
[0173]
In step S <b> 61, the
[0174]
In step S64, the
[0175]
In step S65, the
[0176]
In step S67, the
[0177]
When the storage of the encryption key is completed, the
[0178]
Next, a description will be given of a check process such as the playback condition of the selected tune in step S55 of FIG. 12 by the
[0179]
When the current date and time has passed the playback end date and time, the process proceeds to step S85, and the
[0180]
If it is determined in step S84 that the current date / time is not past the playback end date / time, the process proceeds to step S87, and the
[0181]
If it is determined in step S87 that the charging condition for playback is not registered, or if it is determined in step S88 that the
If other playback conditions are registered, the process proceeds to step S91, and the
[0182]
If it is determined in step S90 that the playback condition is not registered, or if it is determined in step S91 that the
[0183]
FIG. 16 shows an example of playback conditions managed (protectable) by the
[0184]
Next, details of the format conversion process in step S58 in FIG. 12 by the
[0185]
In step S104, the
[0186]
If it is determined in step S104 that there is a settable condition, the process proceeds to step S106, and the
[0187]
Next, processing when music data is copied from the
[0188]
Next, a process of moving music data from the
[0189]
In step S162, the
[0190]
Next, in step S <b> 163, the
[0191]
In step S165, the
[0192]
In step S166, upon receiving the transfer of the encryption key from the
[0193]
In step S169, the
[0194]
Next, processing when music data is copied from the
[0195]
Next, a process of copying music data transferred from the EMD server 4 to the
[0196]
The mutual authentication process performed between the
[0197]
Next, in step S205, the EMD server 4 transfers the encrypted music data of the song designated in step S202 to the
[0198]
In step S208, the
[0199]
In step S205, the EMD server 4 transmits time data to the
[0200]
Next, with reference to the flowchart of FIG. 24, the details of the processing related to charging in step S204 of FIG. 23 by the
[0201]
Next, in step S <b> 222, the
[0202]
Next, referring to the flowcharts of FIGS. 26 and 27, the music data reproduced from the CD player or the like (not shown) input from the IEC60958 terminal of the audio input /
[0203]
When CD playback is started in the CD player, the music data output from the CD player is transferred to the
[0204]
If the
[0205]
If it is determined in step S249 that the watermark does not indicate copy prohibition, the process proceeds to step S250, and a time limit database check process is performed. If the selected music piece has already been registered as a result of the time limit database check, the process ends in steps S251 and S252. This process is the same as the process of steps S13 and S14 in FIG.
[0206]
If the selected song is not yet registered in the
[0207]
Next, processing when the music data is output (reproduced) from the
[0208]
Next, in step S276, the
[0209]
In step S279, the
[0210]
In step S281, the
[0211]
Next, with reference to the flowchart of FIG. 30, the details of the checking process such as the reproduction condition in step S275 of FIG. 28 by the
[0212]
If it is determined in step S302 that the number of reproductions has not exceeded the limit number, the process proceeds to step S305, and the
[0213]
If it is determined in step S305 that the playback end date / time has not passed the current date / time, the process proceeds to step S306, and the
[0214]
Next, referring to the flowcharts of FIG. 31 and FIG. 32, processing when music data is output (played back) from the
[0215]
In step S326, a mutual authentication process is executed between the
[0216]
In step S331, in response to the command transferred from the
[0217]
In the present invention, various ideas have been devised in order to prevent illegal duplication of music data. For example, the program for operating the
[0218]
Furthermore, as described above, a part of the function of the
[0219]
For example, as described above, the hash value of the music database is not stored in the music database itself, but is stored in the
That is, in the comparison process with the previously stored hash value such as steps S32 and S33 in FIG. 8, the past hash value to be compared is stored in the
[0220]
For example, as shown in FIG. 33, when songs A and B are stored in the
[0221]
Therefore, even if the contents of the
[0222]
Further, as described above, the
[0223]
Further, the
[0224]
That is, when the
[0225]
For example, as described above, when the
[0226]
FIG. 35 shows a more specific configuration inside the
[0227]
The
[0228]
The
[0229]
The
[0230]
Further, as shown in FIG. 37, wirings 301-1 to 301-3 for writing or reading data to / from the
[0231]
In the above description, the case where the
[0232]
In addition to music data, the data can be image data or other data.
[0233]
As described above, according to the present invention, the following effects can be obtained.
[0234]
(1) The data is encrypted and recorded on the
[0235]
(2) When a given song is copied once, the song and recording date and time are stored in the song database so that the song cannot be copied for a certain period of time (48 hours in the above example). Since registration is performed, the number of times of copying can be limited, and distribution of a large number of copies can be prevented.
[0236]
Further, since the hash value of the data is calculated and stored every time the database is updated, it becomes easy to prevent falsification of the database.
[0237]
(3) Since the music data on the
[0238]
(4) Since the song database is provided in the
[0239]
(5) Since the
[0240]
(6) Before the data is transferred from the external device to the
[0241]
(7) When ISRC is used to determine the identity of a song and the ISRC cannot be obtained, the TOC is used. Therefore, even if the ISRC cannot be obtained, the identity of the song can be judged.
[0242]
(8) Of the software functions in the
[0243]
The processing executed by the
[0244]
The series of processes described above can be executed by hardware, but can also be executed by software. When a series of processing is executed by software, a program constituting the software may execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, it is installed from a program storage medium in a general-purpose personal computer or the like.
[0245]
As shown in FIG. 3, a program storage medium that stores a program that is installed in a computer and can be executed by the computer includes a magnetic disk 41 (including a floppy disk), an optical disk 42 (CD-ROM (Compact Disc- Package media including a read-only memory (DVD) (including a digital versatile disc (DVD)), a magneto-optical disk 43 (including an MD (mini-disc)), or a semiconductor memory 44, or a program temporarily or permanently. The
[0246]
In the present specification, the step of describing the program stored in the program storage medium is not limited to the processing performed in time series according to the described order, but is not necessarily performed in time series. Or the process performed separately is also included.
[0247]
Further, in this specification, the system represents the entire apparatus constituted by a plurality of apparatuses.
[0248]
【The invention's effect】
The present inventionAccording toYu-It will be possible to effectively ban a large amount of duplication without significantly degrading the profit of the user.
[Brief description of the drawings]
FIG. 1 is a diagram for explaining SCMS and CGMS.
FIG. 2 is a diagram showing an embodiment of an audio data management system according to the present invention.
FIG. 3 is a diagram illustrating a configuration of a
4 is a diagram illustrating a configuration of a
FIG. 5 is a block diagram illustrating a functional configuration of a
6 is a diagram illustrating an example of a window displayed on the
FIG. 7 is a flowchart for explaining processing when copying from a compact disc to the
FIG. 8 is a flowchart for explaining a time limit database check process in step S12 of FIG.
FIG. 9 is a diagram illustrating an example of a time limit database.
FIG. 10 is a diagram illustrating a watermark.
FIG. 11 is a diagram showing an example of a music database.
FIG. 12 is a flowchart for explaining the operation of moving data from the
FIG. 13 is a flowchart for explaining the operation of moving data from the
FIG. 14 is a flowchart illustrating an operation of moving data from the
FIG. 15 is a flowchart illustrating a check process such as a playback condition for a selected song in step S55 of FIG.
FIG. 16 is a diagram for explaining playback conditions managed by the
FIG. 17 is a flowchart illustrating details of the format conversion process in step S58 of FIG.
FIG. 18 is a flowchart for explaining an operation when data is copied from the
FIG. 19 is a flowchart for explaining an operation when data is copied from the
FIG. 20 is a flowchart for explaining an operation when data is copied from the
FIG. 21 is a flowchart illustrating an operation when data is moved from the
FIG. 22 is a flowchart illustrating an operation when data is copied from the
FIG. 23 is a flowchart for explaining processing when data is copied from the EMD server 4 to the
FIG. 24 is a flowchart illustrating details of processing related to charging in step S204 of FIG.
FIG. 25 is a diagram illustrating a billing log.
26 is a flowchart illustrating two processes for copying data from the IEC60958 terminal of the
27 is a flowchart for explaining processing when data is copied from the IEC60958 terminal of the
FIG. 28 is a flowchart for explaining the operation when data is output from the
FIG. 29 is a flowchart for explaining the operation when data is output from the
30 is a flowchart for describing a check process such as a reproduction condition in step S275 in FIG.
FIG. 31 is a flowchart for explaining the operation when data is output from the
32 is a flowchart for explaining the operation when data is output from the
33 is a diagram illustrating the function of a
34 is a flowchart illustrating the operation of the
35 is a diagram showing an internal configuration of the
36 is a diagram showing an example of the internal configuration of a
37 is a diagram showing an example of the internal configuration of a
[Explanation of symbols]
1 Personal computer, 2 Network, 3 EMD registration server, 11 CPU, 12 ROM, 13 RAM, 21 HDD, 24 Audio input / output interface, 26 Adapter, 32 CPU, 33 RAM, 34 Non-volatile memory, 35 RTC, 36 ROM, 41 magnetic disk, 42 optical disk, 43 magneto-optical disk, 44 semiconductor memory, 53 CPU, 54 RAM, 55 ROM, 59 DSP, 61 flash memory, 111 content management program, 112 display operation instruction program, 113 recording program, 114
Claims (7)
前記第1の記録媒体に記録されている前記コンテンツが前記複製手段によって複製される毎、前記コンテンツを識別する識別情報に前記コンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースを更新する更新手段と、
第1の記録媒体に記録されている前記コンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報を取得する取得手段と、
取得された前記識別情報に対応するコンテンツが前回複製されたときの時刻情報を前記期限データベースから読み出し、
複製が指示された前記コンテンツが前回複製されてから所定の時間が経過している場合には、前記複製手段に対して前記コンテンツの複製を許可し、
複製が指示された前記コンテンツが前回複製されてから所定の時間が経過していない場合には、前記複製手段に対して前記コンテンツの複製を禁止する複製制御手段と
を含む情報処理装置。Duplicating means for duplicating the content recorded on the first recording medium and recording the resulting copy content on a second recording medium different from the first recording medium;
Each time the content recorded on the first recording medium is duplicated by the duplicating means, a time limit for storing the identification information for identifying the content in association with time information when the content is duplicated Update means for updating the database;
An acquisition unit configured to acquire identification information of the content instructed to be copied when the user instructs to copy the content recorded in the first recording medium;
Read time information when the content corresponding to the acquired identification information was last copied from the time limit database,
When a predetermined time has elapsed since the content that was instructed to be replicated was previously replicated, the replication means is permitted to replicate the content,
An information processing apparatus comprising: a copy control unit that prohibits the copy unit from copying the content when a predetermined time has not passed since the content instructed to be copied was previously copied.
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the identification information is ISRC (International Standard Recording Code).
請求項1に記載の情報処理装置。The information processing apparatus according to claim 1, wherein the identification information is a table of contents (TOC).
請求項1に記載の情報処理装置。The acquisition means reads the ISRC, which is identification information of the content, from the first recording medium in which the content is stored, and when the ISRC is not recorded in the first recording medium, The information processing apparatus according to claim 1, wherein TOC is used as content identification information.
前記複製制御手段は、前記期限データベースの改竄が検出された場合にも、前記複製手段に対して前記コンテンツの複製を禁止する
請求項1に記載の情報処理装置。A detection unit for detecting falsification of the deadline database using a hash function;
The information processing apparatus according to claim 1, wherein the duplication control unit prohibits the duplication unit from duplicating the content even when falsification of the time limit database is detected.
前記第1の記録媒体に記録されている前記コンテンツが前記複製手段によって複製される毎、前記コンテンツを識別する識別情報に前記コンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースを更新する更新ステップと、
第1の記録媒体に記録されている前記コンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報を取得する取得ステップと、
取得された前記識別情報に対応するコンテンツが前回複製されたときの時刻情報を前記期限データベースから読み出し、
複製が指示された前記コンテンツが前回複製されてから所定の時間が経過している場合には、前記複製手段に対して前記コンテンツの複製を許可し、
複製が指示された前記コンテンツが前回複製されてから所定の時間が経過していない場合には、前記複製手段に対して前記コンテンツの複製を禁止する複製制御ステップと
を含む情報処理方法。Information processing method of information processing apparatus provided with duplicating means for duplicating the content recorded on the first recording medium and recording the resulting copy content on a second recording medium different from the first recording medium In
Each time the content recorded on the first recording medium is duplicated by the duplication unit, the time limit when the content is duplicated and stored in association with identification information for identifying the content An update step to update the database;
An acquisition step of acquiring identification information of the content instructed to be copied when the user instructs to copy the content recorded in the first recording medium;
Read time information when the content corresponding to the acquired identification information was last copied from the time limit database,
When a predetermined time has elapsed since the content that was instructed to be replicated was previously replicated, the replication means is permitted to replicate the content,
If the replication is the content that is instructed not a predetermined time elapses since the replicated last time, information processing method and a replication control step of prohibiting the duplication of the content to the duplication unit.
前記第1の記録媒体に記録されている前記コンテンツが前記複製手段によって複製される毎、前記コンテンツを識別する識別情報に前記コンテンツが複製されたときの時刻情報を対応付けて記憶している期限データベースを更新する更新ステップと、
第1の記録媒体に記録されている前記コンテンツの複製がユーザから指示された場合、複製が指示されたコンテンツの識別情報を取得する取得ステップと、
取得された前記識別情報に対応するコンテンツが前回複製されたときの時刻情報を前記期限データベースから読み出し、
複製が指示された前記コンテンツが前回複製されてから所定の時間が経過している場合には、前記複製手段に対して前記コンテンツの複製を許可し、
複製が指示された前記コンテンツが前回複製されてから所定の時間が経過していない場合には、前記複製手段に対して前記コンテンツの複製を禁止する複製制御ステップと
を含む処理を情報処理装置のコンピュータに実行させるプログラムが格納されているプログラム格納媒体。For controlling an information processing apparatus provided with duplication means for duplicating content recorded on a first recording medium and recording copy content obtained as a result on a second recording medium different from the first recording medium A program,
Each time the content recorded on the first recording medium is duplicated by the duplication unit, the time limit when the content is duplicated and stored in association with identification information for identifying the content An update step to update the database;
An acquisition step of acquiring identification information of the content instructed to be copied when the user instructs to copy the content recorded in the first recording medium;
Read time information when the content corresponding to the acquired identification information was last copied from the time limit database,
When a predetermined time has elapsed since the content that was instructed to be replicated was previously replicated, the replication means is permitted to replicate the content,
If the replication is the content that is instructed not a predetermined time elapses since the replicated last time, the information processing apparatus a process that includes a replication control step of prohibiting the duplication of the content to the duplication unit A program storage medium storing a program to be executed by a computer.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP1999/007302 WO2000039800A1 (en) | 1998-12-25 | 1999-12-24 | Information processing device and method, and program storage medium |
CNB998054518A CN1144212C (en) | 1998-12-25 | 1999-12-24 | Information processing device and method, and program storage medium |
JP36608699A JP4568933B2 (en) | 1998-12-25 | 1999-12-24 | Information processing apparatus and method, and program storage medium |
AU18013/00A AU1801300A (en) | 1998-12-25 | 1999-12-24 | Information processing device and method, and program storage medium |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP36941498 | 1998-12-25 | ||
JP11-39222 | 1999-02-17 | ||
JP3922299 | 1999-02-17 | ||
JP10-369414 | 1999-02-17 | ||
JP36608699A JP4568933B2 (en) | 1998-12-25 | 1999-12-24 | Information processing apparatus and method, and program storage medium |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2000305854A JP2000305854A (en) | 2000-11-02 |
JP2000305854A5 JP2000305854A5 (en) | 2006-04-27 |
JP4568933B2 true JP4568933B2 (en) | 2010-10-27 |
Family
ID=27290077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP36608699A Expired - Fee Related JP4568933B2 (en) | 1998-12-25 | 1999-12-24 | Information processing apparatus and method, and program storage medium |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP4568933B2 (en) |
CN (1) | CN1144212C (en) |
AU (1) | AU1801300A (en) |
WO (1) | WO2000039800A1 (en) |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002108710A (en) * | 2000-07-24 | 2002-04-12 | Sony Corp | System and method for processing information, information processor and program providing medium |
JP2002116960A (en) * | 2000-08-03 | 2002-04-19 | Sony Corp | Device and method for processing information, reproducing device and method and program storage medium |
JP2002236808A (en) * | 2001-02-07 | 2002-08-23 | Sony Corp | Information processing device and method, program storage medium and program |
JP2002236767A (en) * | 2001-02-07 | 2002-08-23 | Sony Corp | Device and method for processing information, program storage medium and program |
JP2002288041A (en) * | 2001-03-23 | 2002-10-04 | Sony Corp | Information processing device and method, program storage medium and program |
JP4716068B2 (en) * | 2001-03-26 | 2011-07-06 | ソニー株式会社 | Information distribution method, information distribution system, and client device |
JP3778009B2 (en) * | 2001-06-13 | 2006-05-24 | ソニー株式会社 | Data transfer system, data transfer device, data recording device, and data management method |
JP4200686B2 (en) * | 2002-05-08 | 2008-12-24 | ソニー株式会社 | Information communication terminal, information distribution apparatus, information distribution system, information reception method, information distribution method |
KR20070030312A (en) | 2004-07-20 | 2007-03-15 | 마츠시타 덴끼 산교 가부시키가이샤 | Content management system and content management unit |
JP2007243703A (en) * | 2006-03-09 | 2007-09-20 | Toshiba Corp | Portable terminal |
JP4636008B2 (en) * | 2006-11-17 | 2011-02-23 | 日本電気株式会社 | Data replication system, data replication method, data replication program |
JP4423314B2 (en) * | 2007-07-09 | 2010-03-03 | 株式会社日立製作所 | Digital information recording / reproducing apparatus and display apparatus |
JP2008257847A (en) * | 2008-04-03 | 2008-10-23 | Hitachi Ltd | Digital broadcasting signal receiving method |
JP4927974B2 (en) * | 2010-06-29 | 2012-05-09 | シャープ株式会社 | Information playback device |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07226733A (en) * | 1994-02-16 | 1995-08-22 | Nippon Telegr & Teleph Corp <Ntt> | Method and device for copying digital information |
JPH103745A (en) * | 1996-06-12 | 1998-01-06 | Sony Corp | Recording medium, digital copy management method, reproducing device and recording device |
JPH10222931A (en) * | 1997-01-31 | 1998-08-21 | Victor Co Of Japan Ltd | Method and equipment for preventing illegal act |
JPH1153818A (en) * | 1997-08-05 | 1999-02-26 | Matsushita Electric Ind Co Ltd | Recording apparatus |
JP2000207832A (en) * | 1999-01-14 | 2000-07-28 | Sony Corp | Duplication restricting method of information signal, duplication control system of information signal, and information signal recorder |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03250878A (en) * | 1990-02-28 | 1991-11-08 | Canon Inc | Recording and reproducing device |
JP3092432B2 (en) * | 1994-02-17 | 2000-09-25 | 株式会社日立製作所 | Information recording / reproducing device |
JP3060819B2 (en) * | 1994-03-04 | 2000-07-10 | 株式会社日立製作所 | Helical scanning type recording / reproducing device |
JP3781796B2 (en) * | 1995-01-12 | 2006-05-31 | ソニー株式会社 | Recording apparatus and method, and recording / reproducing apparatus |
-
1999
- 1999-12-24 JP JP36608699A patent/JP4568933B2/en not_active Expired - Fee Related
- 1999-12-24 AU AU18013/00A patent/AU1801300A/en not_active Abandoned
- 1999-12-24 CN CNB998054518A patent/CN1144212C/en not_active Expired - Fee Related
- 1999-12-24 WO PCT/JP1999/007302 patent/WO2000039800A1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07226733A (en) * | 1994-02-16 | 1995-08-22 | Nippon Telegr & Teleph Corp <Ntt> | Method and device for copying digital information |
JPH103745A (en) * | 1996-06-12 | 1998-01-06 | Sony Corp | Recording medium, digital copy management method, reproducing device and recording device |
JPH10222931A (en) * | 1997-01-31 | 1998-08-21 | Victor Co Of Japan Ltd | Method and equipment for preventing illegal act |
JPH1153818A (en) * | 1997-08-05 | 1999-02-26 | Matsushita Electric Ind Co Ltd | Recording apparatus |
JP2000207832A (en) * | 1999-01-14 | 2000-07-28 | Sony Corp | Duplication restricting method of information signal, duplication control system of information signal, and information signal recorder |
Also Published As
Publication number | Publication date |
---|---|
WO2000039800A1 (en) | 2000-07-06 |
CN1298537A (en) | 2001-06-06 |
CN1144212C (en) | 2004-03-31 |
JP2000305854A (en) | 2000-11-02 |
AU1801300A (en) | 2000-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100862371B1 (en) | Information processing system | |
CA2328932C (en) | Information processing device and method, and program storage medium | |
KR100654879B1 (en) | Information processing device and method, and program storage medium | |
JP4568933B2 (en) | Information processing apparatus and method, and program storage medium | |
KR100633588B1 (en) | Semiconductor IC, information processing method, information processing device, and program storage medium | |
JP2000305846A (en) | Information processor, its method and program storing medium | |
JP4556277B2 (en) | Information processing apparatus and method, information processing system, and program storage medium | |
JP4379653B2 (en) | Information processing apparatus and method, and program storage medium | |
JP4300442B2 (en) | Information processing apparatus and method, and program storage medium | |
JP2000347852A (en) | Device and method for processing information and program storage medium | |
JP4304819B2 (en) | Information processing apparatus and method, and program storage medium | |
JP2000306006A (en) | Information processor, information processing method and program storage medium | |
JP2000349751A (en) | Information processor, information processing method, authentication method and program storage medium | |
JP2000348105A (en) | Method and device for providing information and program storage medium | |
JP2000347851A (en) | Device and method for information processing and program storage medium | |
JP2000305855A (en) | Information processor, its method and program storing medium | |
JP2000347847A (en) | Device and method for information processing, semiconductor ic, information processing system and program storage medium | |
AU2003257706B2 (en) | Information processing apparatus and method, and program storage medium | |
JP2000307568A (en) | Semiconductor ic, information processing method, information processor and program storing medium | |
JP2000347848A (en) | Semiconductor ic, information processing method, information processor, and program storage medium | |
JP2000347849A (en) | Device and method for providing information and program storage medium | |
JP2000347850A (en) | Device and method for information processing and program storage medium | |
AU2003262491A1 (en) | Information processing system | |
MXPA00010101A (en) | Information processing device and method, and program storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060310 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060310 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090827 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20091016 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100225 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100419 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100713 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100726 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130820 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130820 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |