JP4901164B2 - 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム - Google Patents

情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム Download PDF

Info

Publication number
JP4901164B2
JP4901164B2 JP2005267532A JP2005267532A JP4901164B2 JP 4901164 B2 JP4901164 B2 JP 4901164B2 JP 2005267532 A JP2005267532 A JP 2005267532A JP 2005267532 A JP2005267532 A JP 2005267532A JP 4901164 B2 JP4901164 B2 JP 4901164B2
Authority
JP
Japan
Prior art keywords
content
hash
recorded
recording medium
verification
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
Application number
JP2005267532A
Other languages
English (en)
Other versions
JP2007079989A5 (ja
JP2007079989A (ja
Inventor
芳和 高島
健二朗 上田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005267532A priority Critical patent/JP4901164B2/ja
Priority to US11/531,593 priority patent/US7979709B2/en
Priority to CN200610172400.6A priority patent/CN1971745B/zh
Publication of JP2007079989A publication Critical patent/JP2007079989A/ja
Publication of JP2007079989A5 publication Critical patent/JP2007079989A5/ja
Application granted granted Critical
Publication of JP4901164B2 publication Critical patent/JP4901164B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00297Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being stored in a management area, e.g. the video manager [VMG] of a DVD
    • G11B20/00304Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being stored in a management area, e.g. the video manager [VMG] of a DVD the key being stored in the lead-in area [LIA]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00217Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source
    • G11B20/00253Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier
    • G11B20/00362Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is stored on the record carrier the key being obtained from a media key block [MKB]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00528Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein each title is encrypted with a separate encryption key for each title, e.g. title key for movie, song or data file
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/0021Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier
    • G11B20/00485Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier
    • G11B20/00492Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted
    • G11B20/00536Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier characterised by a specific kind of data which is encrypted and recorded on and/or reproduced from the record carrier wherein content or user data is encrypted wherein encrypted content data is subjected to a further, iterated encryption, e.g. interwoven encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3236Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Description

本発明は、情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラムに関する。さらに、詳細には、コンテンツ利用管理の要求される様々なコンテンツについての検証処理を実行し、不正なコンテンツ利用を防止を可能とした情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラムに関する。
音楽等のオーディオデータ、映画等の画像データ、ゲームプログラム、各種アプリケーションプログラム等、様々なソフトウエアデータ(以下、これらをコンテンツ(Content)と呼ぶ)は、記録メディア、例えば、青色レーザを適用したBlu−rayディスク、あるいはDVD(Digital Versatile Disc)、MD(Mini Disc)、CD(Compact Disc)にデジタルデータとして格納することができる。特に、青色レーザを利用したBlu−rayディスクは、高密度記録可能なディスクであり大容量の映像コンテンツなどを高画質データとして記録することができる。
これら様々な情報記録媒体(記録メディア)にデジタルコンテンツが格納され、ユーザに提供される。ユーザは、所有するPC(Personal Computer)、ディスクプレーヤ等の再生装置においてコンテンツの再生、利用を行う。
音楽データ、画像データ等、多くのコンテンツは、一般的にその作成者あるいは販売者に頒布権等が保有されている。従って、これらのコンテンツの配布に際しては、一定の利用制限、すなわち、正規なユーザに対してのみ、コンテンツの利用を許諾し、許可のない複製等が行われないようにする構成をとるのが一般的となっている。
デジタル記録装置および記録媒体によれば、例えば画像や音声を劣化させることなく記録、再生を繰り返すことが可能であり、不正コピーコンテンツのインターネットを介した配信や、コンテンツをCD−R等にコピーした、いわゆる海賊版ディスクの流通や、PC等のハードディスクに格納したコピーコンテンツの利用が蔓延しているといった問題が発生している。
DVD、あるいは近年開発が進んでいる青色レーザを利用した記録媒体等の大容量型記録媒体は、1枚の媒体に例えば映画1本〜数本分の大量のデータをデジタル情報として記録することが可能である。このように映像情報等をデジタル情報として記録することが可能となってくると不正コピーを防止して著作権者の保護を図ることが益々重要な課題となっている。昨今では、このようなデジタルデータの不正なコピーを防ぐため、デジタル記録装置および記録媒体に違法なコピーを防止するための様々な技術が実用化されている。
例えば、DVDプレーヤでは、コンテンツ・スクランブルシステム(Content Scramble System)が採用されている。コンテンツ・スクランブルシステムでは、DVD−ROM(Read Only Memory)に、ビデオデータやオーディオデータ等が暗号化されて記録されており、その暗号化されたデータを復号するのに用いる鍵が、ライセンスを受けたDVDプレーヤに与えられる。ライセンスは、不正コピーを行わない等の所定の動作規定に従うように設計されたDVDプレーヤに対して与えられる。従って、ライセンスを受けたDVDプレーヤでは、与えられたキーを利用して、DVD−ROMに記録された暗号化データを復号することにより、DVD−ROMから画像や音声を再生することができる。
一方、ライセンスを受けていないDVDプレーヤは、暗号化されたデータを復号するための鍵を有していないため、DVD−ROMに記録された暗号化データの復号を行うことができない。このように、コンテンツ・スクランブルシステム構成では、ライセンス時に要求される条件を満たしていないDVDプレーヤは、デジタルデータを記録したDVD−ROMの再生を行なえないことになり、不正コピーが防止されるようになっている。
コンテンツの不正利用を排除する1つの手法として、コンテンツ再生を実行する情報処理装置(再生装置)において、コンテンツの改ざんの有無を検証し、コンテンツに改ざんがないことが確認された場合にのみコンテンツ再生を許容し、改ざんがあることが判明した場合には、コンテンツの再生を実行しない構成とする制御構成が提案されている。
例えば、特許文献1には、再生予定のコンテンツファイルからハッシュ値を計算し、予め用意された照合用ハッシュ値、すなわち正当なコンテンツデータに基づいて予め計算済みの照合用ハッシュ値との比較を実行し、新たに算出したハッシュ値が照合用ハッシュ値と一致した場合には、コンテンツの改ざんは無いと判定して、コンテンツの再生処理に移行する制御構成を開示している。
また、特許文献2には、コンテンツ情報として記録されるTOC(Table of Content)データに基づいてハッシュを算出して、このハッシュ値を検証用データとして利用する構成が開示されている。
しかし、このようにハッシュ値をコンテンツに基づいて算出する処理を実行する場合、ハッシュ値算出の元データとしてのコンテンツデータの容量が大きい場合、計算に要する処理負荷、処理時間が多大なものとなる。昨今では動画像データの高品質化が進み、1コンテンツあたり、数GB〜数十GBのデータ量を持つ場合が多くなっている。このような大容量データに基づくコンテンツのハッシュ値算出処理を、コンテンツ再生を実行するユーザ機器に行わせることは、ユーザ機器に求められるデータ処理能力が過大になるという問題、さらに、コンテンツの検証に要する時間が長くなり、コンテンツ再生処理が効率的に行われないという問題が発生する。
また、ハッシュ値に基づく検証処理は、ハッシュ値を登録したコンテンツに対してのみ有効な検証が可能となる。従って、例えば、ハッシュ値が登録されたコンテンツを記録した情報記録媒体に、不正に入手した不正コンテンツを追加記録した海賊版ディスクが流通した場合、ハッシュ検証処理ルーチンを実行しても、ハッシュ検証処理はハッシュ値が登録された正当コンテンツのみの検証として実行されてしまい、追加記録された不正コンテンツについては検証対象外となる。すなわち、ハッシュ検証による不正コンテンツ検出は実行されないため不正コンテンツの利用防止機能を果たさないという問題をもたらす。
特開2002−358011号 特開2002−251828号
本発明は、このような状況に鑑みてなされたものであり、著作権管理など利用管理の要求される様々なコンテンツが格納された情報記録媒体のコンテンツ利用において、コンテンツの検証処理を確実に実行することを可能とした情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラムを提供することを目的とするものである。
さらに、本発明は、情報記録媒体に格納されたコンテンツの再生に際して実行するコンテンツ検証処理において、ハッシュ値の登録されていない不正追加コンテンツの検出を可能として、このような不正記録コンテンツの利用を防止することを可能とした情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラムを提供することを目的とするものである。
本発明の第1の側面は、
情報処理装置であり、
情報記録媒体に記録された記録コンテンツの検証処理を実行するコンテンツ検証手段と、
前記検証処理に基づいて記録コンテンツの正当性が確認されたことを条件としてコンテンツ再生処理を実行するコンテンツ再生手段とを有し、
前記コンテンツ検証手段は、
正当な記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルを情報記録媒体から取得し、
情報記録媒体に記録されたファイルシステム情報に基づいて生成された照合用ハッシュ値と、前記コンテンツハッシュテーブルの検証用データとを格納したコンテンツ証明書を取得し、取得したコンテンツ証明書に設定された電子署名の検証により、コンテンツ証明書の正当性を確認し、
正当性の確認されたコンテンツ証明書から前記照合用ハッシュ値を取得し、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理により、ファイルシステム情報の正当性を確認し、
正当性の確認されたファイルシステム情報から取得した情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行し、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、
前記ハッシュユニットをn個選択(ただしnは1以上の整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行する構成を有することを特徴とする情報処理装置。
さらに、本発明の情報処理装置の一実施態様において、前記コンテンツデータファイルは、コンテンツを含むデータファイルとして設定されるクリップファイルであり、前記コンテンツ検証手段における検証処理は、情報記録媒体に記録されたクリップファイルのファイルサイズと、前記コンテンツハッシュテーブルに登録されたクリップファイルに対応するハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない記録コンテンツの有無を検証するものであることを特徴とする。
さらに、本発明の第の側面は、
情報記録媒体であり、
情報記録媒体の記録コンテンツに対応するファイルシステム情報と、
前記ファイルシステム情報に基づいて生成された照合用ハッシュ値と、
情報記録媒体の記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルの検証用データと、
を格納したコンテンツ証明書、
を記録情報として有し、
情報記録媒体の記録コンテンツの再生を実行する情報処理装置において、前記コンテンツ証明書の前記照合用ハッシュ値と、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理によるファイルシステム情報の正当性確認処理を実行させ、正当性の確認されたファイルシステム情報から取得される情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証させて、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行させ、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、前記ハッシュユニットをn個選択(ただしnは1以上の整数)させて、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行させて情報記録媒体の記録コンテンツの正当性検証を実行させることを可能としたことを特徴とする情報記録媒体。
さらに、本発明の第の側面は、
情報処理方法であり、
情報記録媒体に記録された記録コンテンツの検証処理を実行するコンテンツ検証ステップと、
前記検証処理に基づいて記録コンテンツの正当性が確認されたことを条件としてコンテンツ再生処理を実行するコンテンツ再生ステップとを有し、
前記コンテンツ検証ステップは、
正当な記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルを情報記録媒体から取得し、
情報記録媒体に記録されたファイルシステム情報に基づいて生成された照合用ハッシュ値と、前記コンテンツハッシュテーブルの検証用データとを格納したコンテンツ証明書を取得し、取得したコンテンツ証明書に設定された電子署名の検証により、コンテンツ証明書の正当性を確認し、
正当性の確認されたコンテンツ証明書から前記照合用ハッシュ値を取得し、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理により、ファイルシステム情報の正当性を確認し、
正当性の確認されたファイルシステム情報から取得した情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行し、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、
前記ハッシュユニットをn個選択(ただしnは1以上の整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行するステップであることを特徴とする情報処理方法。
さらに、本発明の情報処理方法の一実施態様において、前記コンテンツデータファイルは、コンテンツを含むデータファイルとして設定されるクリップファイルであり、前記コンテンツ検証ステップにおける検証処理は、情報記録媒体に記録されたクリップファイルのファイルサイズと、前記コンテンツハッシュテーブルに登録されたクリップファイルに対応するハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない記録コンテンツの有無を検証するものであることを特徴とする。
さらに、本発明の第の側面は、
情報記録媒体に記録された記録コンテンツの検証処理を情報処理装置において実行させるコンピュータ・プログラムであり、
情報記録媒体に記録された記録コンテンツの検証処理を実行するコンテンツ検証ステップと、
前記検証処理に基づいて記録コンテンツの正当性が確認されたことを条件としてコンテンツ再生処理を実行するコンテンツ再生ステップとを有し、
前記コンテンツ検証ステップは、
正当な記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルを情報記録媒体から取得し
情報記録媒体に記録されたファイルシステム情報に基づいて生成された照合用ハッシュ値と、前記コンテンツハッシュテーブルの検証用データとを格納したコンテンツ証明書を取得し、取得したコンテンツ証明書に設定された電子署名の検証により、コンテンツ証明書の正当性を確認し、
正当性の確認されたコンテンツ証明書から前記照合用ハッシュ値を取得し、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理により、ファイルシステム情報の正当性を確認し、
正当性の確認されたファイルシステム情報から取得した情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行し、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、
前記ハッシュユニットをn個選択(ただしnは1以上の整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行するステップであることを特徴とするコンピュータ・プログラム。
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能なコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記録媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本発明の一実施例の構成によれば、正当な記録コンテンツデータに基づいて生成されたハッシュ値を登録したコンテンツハッシュテーブルの記録情報に基づいて、コンテンツハッシュテーブルにハッシュ値の登録されていない不正記録コンテンツの有無を検証する構成としたので、不正に追加記録されたコンテンツの不正利用を防止することが可能となる。例えば、情報記録媒体のコンテンツデータファイルのファイルサイズと、コンテンツハッシュテーブルに登録されたコンテンツデータファイルに対応するハッシュユニット数との整合性の検証によって、ハッシュ値の登録されていない記録コンテンツの有無を検証する構成としたので、効率的な検証処理が実現される。
また、本発明の一実施例の構成によれば、情報記録媒体に記録されたファイルシステム情報の改ざん検証処理を実行することで、不正に追加記録されたコンテンツの不正利用を防止することが可能となる。例えば、ファイルシステム情報に基づいて生成された照合用ハッシュ値を電子署名の付与されたコンテンツ証明書から取得し、コンテンツ証明書の署名検証の後、照合用ハッシュ値を取得して、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理を実行する構成としたので、確実なコンテンツ検証が可能となる。
以下、図面を参照しながら本発明の情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラムの詳細について説明する。なお、説明は、以下の記載項目に従って行う。
1.情報記録媒体の格納データ構成
2.格納コンテンツの暗号化、利用管理構成
3.情報記録媒体のデータ記録構成、暗号化構成、およびコンテンツハッシュの詳細
4.コンテンツハッシュテーブルの記録情報に基づくコンテンツ検証処理
5.ファイルシステム情報の検証に基づくコンテンツ検証処理
6,ファイルシステム情報の検証値を格納した情報記録媒体の製造処理
7.情報処理装置の構成例
[1.情報記録媒体の格納データ構成]
まず、情報記録媒体の格納データ構成について説明する。図1に、本発明の処理の適用可能なコンテンツの格納された情報記録媒体の一例を示す。ここでは、コンテンツ格納済みディスクとしてのROMディスクの情報格納例を示す。
このROMディスクは、例えば、Blu−rayディスク、DVDなどの情報記録媒体であり、正当なコンテンツ著作権、あるいは頒布権を持ついわゆるコンテンツ権利者の許可の下にディスク製造工場において製造された正当なコンテンツを格納した情報記録媒体である。なお、以下の実施例では、情報記録媒体の例としてディスク型の媒体を例として説明するが、本発明は様々な態様の情報記録媒体を用いた構成において適用可能である。
図1に示すように、情報記録媒体100は、コンテンツ等のデータを格納するデータ格納領域101と、ディスクおよび格納コンテンツに対応する付帯情報、コンテンツの復号処理に適用する鍵情報などを格納するリードイン領域102を持つ。
データ格納領域101には、暗号化コンテンツ111と、暗号化コンテンツの復号処理に適用する鍵の生成に必要となる情報としての記録シード(REC SEED)112と、コンテンツのコピー・再生制御情報としてのCCI(Copy Control Information)113、およびコンテンツの改ざん検証に適用するコンテンツのハッシュ値としてのコンテンツハッシュ114、コンテンツの正当性を示すためのコンテンツ証明書(CC:Content Cert)115、コンテンツ証明書(CC)に付与された電子署名の検証に適用する公開鍵を格納した署名検証用公開鍵証明書116が格納される。コンテンツハッシュ114はコンテンツハッシュテーブル(CHT)として格納される。コンテンツハッシュテーブル(CHT)の詳細については後述する。なお、記録シード(REC SEED)112、CCI(Copy Control Information)113、およびコンテンツハッシュ114は、コンテンツの暗号化、復号に適用する暗号鍵(ユニット鍵)の生成情報として利用される。詳細構成については、後述する。
リードイン領域102には、暗号化コンテンツ111の復号処理に適用する鍵の生成に必要となる暗号鍵情報120が格納される。暗号鍵情報120には、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックとしてのメディアキーブロック(MKB:Media Key Block)121が含まれる。さらに、情報記録媒体100は、物理インデックス(Physical Index)131が記録される。以下、これらの各種情報の概要について説明する。
(1)暗号化コンテンツ111
情報記録媒体100には、様々なコンテンツが格納される。例えば高精細動画像データであるHD(High Definition)ムービーコンテンツなどの動画コンテンツのAV(Audio Visual)ストリームや特定の規格で規定された形式のゲームプログラム、画像ファイル、音声データ、テキストデータなどからなるメインコンテンツである。これらのコンテンツは、特定のAVフォーマット規格データであり、特定のAVデータフォーマットに従って格納される。具体的には、例えばBlu−rayディスクROM規格データとして、Blu−rayディスクROM規格フォーマットに従って格納される。
さらに、例えばサービスデータとしてのゲームプログラムや、画像ファイル、音声データ、テキストデータなどがサブコンテンツとして格納される場合もある。サブコンテンツは、特定のAVデータフォーマットに従わないデータフォーマットを持つデータである。すなわち、Blu−rayディスクROM規格外データとして、Blu−rayディスクROM規格フォーマットに従わない任意のフォーマットで格納可能である。
メインコンテンツ、サブコンテンツとともに、コンテンツの種類としては、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなど、様々なコンテンツが含まれ、これらのコンテンツには、情報記録媒体100からのデータのみによって利用可能なコンテンツ情報と、情報記録媒体100からのデータと、ネットワーク接続されたサーバから提供されるデータとを併せて利用可能となるコンテンツ情報など、様々な態様の情報が含まれる。
(2)記録シード112
各コンテンツまたは複数コンテンツの集合は、コンテンツの利用管理のため、各々、個別の暗号鍵(ユニット鍵)を適用した暗号化がなされて情報記録媒体100に格納される。すなわち、コンテンツを構成するAV(Audio Visual)ストリーム、音楽データ、動画、静止画等の画像データ、ゲームプログラム、WEBコンテンツなどは、コンテンツ利用の管理単位としてのユニットに区分され、区分されたユニット毎に異なる記録シード:Vu112が割り当てられている。
コンテンツ利用に際しては、記録シード:Vu112、暗号鍵情報120を適用した所定の暗号鍵生成シーケンスに従って、各ユニット対応の暗号鍵(ユニット鍵)を割り当てる。1つのユニット鍵を割り当てる単位をコンテンツ管理ユニット(CPSユニット)と呼ぶ。すなわち、暗号化コンテンツ111は、CPSユニット単位に区分され、各CPSユニットに対応するユニット鍵で暗号化されて情報記録媒体100に格納されている。
(3)コピー・再生制御情報(CCI)113
コピー・再生制御情報(CCI)113は、情報記録媒体100に格納された暗号化コンテンツ111に対応する利用制御のためのコピー制限情報や、再生制限情報である。このコピー・再生制御情報(CCI)113は、CPSユニット個別の情報として設定される場合や、複数のCPSユニットに対応して設定される場合など、様々な設定が可能である。この情報の詳細については後段で説明する。
(4)コンテンツハッシュ114
コンテンツハッシュ114は、情報記録媒体100に格納されたコンテンツあるいは暗号化コンテンツの構成データに基づくハッシュ値であり、コンテンツの改ざん検証に適用される。本発明の構成においては、CPSユニットを構成するAVストリーム実データとしてのクリップファイルを細分化し、所定データ単位(例えば192KB)のハッシュユニットを設定し、各ハッシュユニット毎のハッシュ値を算出し、各ハッシュユニット単位のハッシュ値をコンテンツハッシュテーブル(CHT)に記録し、情報記録媒体に格納する。
情報記録媒体からのコンテンツ再生を実行する情報処理装置(再生装置)では、ハッシュユニットに基づくハッシュ値を算出し、算出ハッシュ値と情報記録媒体に格納されたコンテンツハッシュテーブル(CHT)に記録された対応するハッシュユニットの照合用ハッシュ値とを比較し、一致していれば、コンテンツ改ざんなしと判定し、コンテンツの復号、再生処理に移行する。一致していない場合は、コンテンツ改ざんありと判定し、コンテンツの復号、再生プロセスを停止する。これらの処理の詳細については後述する。
なお、コンテンツハッシュは、コンテンツの暗号処理、復号処理に適用する暗号鍵の生成情報としても利用されるデータである。コンテンツハッシュ114の生成、利用態様については後段で説明する。
(5)コンテンツ証明書
コンテンツ証明書(CC:Content Cert)は、情報記録媒体に格納されたコンテンツの正当性を示すための証明書であり、上述したコンテンツハッシュテーブル(CHT)に格納された照合用ハッシュユニットに基づくコンテンツハッシュダイジェスト等のデータが格納され、さらに電子署名が付加される。例えばディスク工場である情報記録媒体製造エンティテイなどの電子署名が付加され、改ざんの防止されたデータとされる。コンテンツ証明書の詳細については、後段で詳細に説明する。
(6)署名検証用公開鍵証明書
署名検証用公開鍵証明書は、コンテンツ証明書に付与された情報記録媒体製造エンティテイなどの電子署名の検証に適用する公開鍵を格納した公開鍵証明書である。
(7)物理インデックス131
物理インデックス131には、情報記録媒体のカテゴリ情報、例えばディスクの種別などのディスク付帯情報や、データ領域101に格納されたコンテンツに対応するコンテンツの付帯情報などが記録される。さらに、記録シード112と同様、情報記録媒体のデータ格納領域101に格納された暗号化コンテンツの復号処理に適用する鍵を生成するための鍵情報(鍵生成情報)が記録される場合もある。なお、物理インデックス113は、リードイン領域102に記録する構成としてもよい。
(8)暗号鍵情報120
暗号鍵情報120は、前述の記録シード112と同様、情報記録媒体のデータ格納領域101に格納された暗号化コンテンツの復号処理に適用する鍵を生成するための鍵情報(鍵生成情報)を取得するための暗号鍵ブロック、すなわち、ブロードキャストエンクリプション方式の一態様として知られる木構造の鍵配信方式に基づいて生成される暗号鍵ブロックとしてのメディアキーブロック(MKB(Media Key Block))121を含む。
MKB121は有効なライセンスを持つユーザの情報処理装置に格納されたデバイスキーに基づく処理(復号)によってのみ、コンテンツの復号に必要なキーであるメディアキー(Km)を取得することを可能とした鍵情報ブロックである。これはいわゆる階層型木構造に従った情報配信方式によって、ユーザデバイス(情報処理装置)が有効なライセンスを持つ場合にのみ、鍵取得を可能としたものであり、無効化(リボーク処理)されたユーザデバイスの鍵(メディアキー)取得を阻止可能としたものである。管理センタはMKBに格納する鍵情報の変更により、特定のユーザデバイスに格納されたデバイスキーでは復号できない、すなわちコンテンツ復号に必要なメディアキーを取得できない構成を持つMKBを生成することができる。従って、任意タイミングで不正デバイスを排除(リボーク)して、有効なライセンスを持つデバイスに対してのみ復号可能な暗号化コンテンツを提供することが可能となる。
[2.格納コンテンツの暗号化、利用管理構成]
次に、図2以下を参照して、情報記録媒体に格納されたコンテンツを区分して、区分コンテンツ毎に異なる利用制御を実現するコンテンツ管理構成について説明する。
前述したように、情報記録媒体に格納されるコンテンツは、区分コンテンツ毎の異なる利用制御を実現するため、区分コンテンツ毎に異なる鍵(ユニット鍵)が割り当てられ暗号化されて格納される。1つのユニット鍵を割り当てる単位をコンテンツ管理ユニット(CPSユニット)と呼ぶ。
それぞれのユニット鍵を適用して各ユニットに属するコンテンツを暗号化し、コンテンツ利用に際しては、各ユニットに割り当てられた鍵(ユニット鍵)を取得して再生を行う。各ユニット鍵は、個別に管理することが可能であり、例えばあるユニットAに対して割り当てるユニット鍵は、情報記録媒体から取得可能な鍵として設定する。また、ユニットBに対して割り当てるユニット鍵は、ネットワーク接続されるサーバにアクセスし、ユーザが所定の手続きを実行したことを条件として取得することができる鍵とするなど、各ユニット対応の鍵の取得、管理構成は、各ユニット鍵に独立した態様とすることが可能である。
1つの鍵を割り当てる単位、すなわち、コンテンツ管理ユニット(CPSユニット)の設定態様について、図2を参照して説明する。
図2に示すように、コンテンツは、(A)タイトル210、(B)ムービーオブジェクト220、(C)プレイリスト230、(D)クリップ240の階層構成を有し、再生アプリケーションによってアクセスされるインデックスファイルとしてのタイトルが指定されると、タイトルに関連付けられた再生プログラムが指定され、指定された再生プログラムのプログラム情報に従ってコンテンツの再生順等を規定したプレイリストが選択され、プレイリストに規定されたクリップ情報によって、コンテンツ実データとしてのAVストリームあるいはコマンドが読み出されて、AVストリームの再生、コマンドの実行処理が行われる。
図2には、2つのCPSユニットを示している。これらは、情報記録媒体に格納されたコンテンツの一部を構成している。CPSユニット1,301、CPSユニット2,302の各々は、アプリケーションインデックスとしてのタイトルと、再生プログラムファイルとしてのムービーオブジェクトと、プレイリストと、コンテンツ実データとしてのAVストリームファイルを含むクリップを含むユニットとして設定されたCPSユニットである。
コンテンツ管理ユニット(CPSユニット)1,301には、タイトル1,211とタイトル2,212、再生プログラム221,222、プレイリスト231,232、クリップ241、クリップ242が含まれ、これらの2つのクリップ241,242に含まれるコンテンツの実データであるAVストリームデータファイル261,262がコンテンツ管理ユニット(CPSユニット)1,301に対応付けて設定される暗号鍵であるユニット鍵:Ku1を適用して暗号化される。
コンテンツ管理ユニット(CPSユニット)2,302には、タイトル3,213、再生プログラム224、プレイリスト233、クリップ243が含まれ、クリップ243に含まれるコンテンツの実データであるAVストリームデータファイル263がコンテンツ管理ユニット(CPSユニット)2,302に対応付けて設定される暗号鍵であるユニット鍵:Ku2を適用して暗号化される。
例えば、ユーザがコンテンツ管理ユニット1,301に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)1,301に対応付けて設定された暗号鍵としてのユニット鍵:Ku1を取得して復号処理を実行することが必要であり、復号処理を実行後、アプリケーションプログラムを実行してコンテンツ再生を行なうことができる。コンテンツ管理ユニット2,302に対応するアプリケーションファイルまたはコンテンツ再生処理を実行するためには、コンテンツ管理ユニット(CPSユニット)2,302に対応付けて設定された暗号鍵としてのユニット鍵:Ku1を取得して復号処理を実行することが必要となる。
コンテンツを再生する情報処理装置において実行される再生アプリケーションプログラムは、ユーザの再生指定コンテンツに対応したコンテンツ管理ユニット(CPSユニット)を識別し、識別したCPS管理ユニット情報に対応するCPS暗号鍵の取得処理を実行する。CPS暗号鍵が取得できない場合には、再生不可能のメッセージ表示などを行なう。また、再生アプリケーションプログラムは、コンテンツ再生実行時におけるコンテンツ管理ユニット(CPSユニット)の切り替えの発生の検出を行ない、必要な鍵の取得、再生不可能のメッセージ表示などを行なう。
再生アプリケーションプログラムは、図3に示すようなユニット構成およびユニット鍵管理テーブルに基づく再生管理を実行する。ユニット構成およびユニット鍵管理テーブルは、図3に示すように、アプリケーション層のインデックスまたはアプリケーションファイル、またはデータグループに対応するコンテンツ管理ユニット(CPSユニット)と、ユニット鍵情報を対応付けたテーブルである。再生アプリケーションプログラムは、この管理テーブルに基づく管理を行う。
再生アプリケーションプログラムは、例えば、アプリケーションインデックスの切り替えによって、コンテンツ管理ユニット(CPSユニット)の切り替えが発生したことを検知すると、コンテンツ管理ユニット(CPSユニット)の切り替えによって適用する鍵の切り替えを行う。あるいはユニット鍵の取得が必要であることのメッセージ表示などの処理を実行する。
例えばコンテンツ再生処理を実行している再生装置に、コンテンツ管理ユニット(CPSユニット)1,301のユニット鍵Ku1が格納されており、コンテンツ管理ユニット(CPSユニット)2,302のユニット鍵Ku2も格納されている場合、コンテンツ再生処理を統括的に制御する再生アプリケーションプログラムは、アプリケーションのユニット間の切り替えやコンテンツの切り替えがあったことを検知すると、コンテンツ管理ユニット(CPSユニット)の切り替えに対応したユニット鍵の切り替え、すなわちKu1→Ku2の切り替えを行う。
また、コンテンツ再生処理を実行している再生装置に、コンテンツ管理ユニット(CPSユニット)1,301のユニット鍵Ku1が格納されており、コンテンツ管理ユニット(CPSユニット)2,302のユニット鍵Ku2が格納されていない場合は、コンテンツ再生処理を統括的に制御する再生アプリケーションプログラムは、アプリケーションのユニット間の切り替えやコンテンツの切り替えがあったことを検知すると、ユニット鍵の取得が必要であることのメッセージ表示などの処理を実行する。
[3.情報記録媒体のデータ記録構成、暗号化構成、およびコンテンツハッシュの詳細]
次に、情報記録媒体のデータ記録構成、暗号化構成、およびコンテンツハッシュの詳細について説明する。まず、図4を参照して、クリップファイルと、ECCブロックとの対応について説明する。情報記録媒体に格納されるデータは、コンテンツ記録再生を実行するドライブの最小データ記録再生単位としてのECCブロック単位でデータが記録される。本例では、ECCブロックは、図4(a)に示すように、64KBのデータとして設定される。図4(a)は物理レイヤーにおけるデータ記録構成を示し、(b)は、物理レイヤーに対応する記録コンテンツであるクリップファイルを示している。
コンテンツは、図2を参照して説明したように、クリップファイルが管理単位として設定される。図4(b)には、クリップAVストリームとして、
クリップNo.=#00003
クリップNo.=#00005
クリップNo.=#00023
の複数のクリップファイルが記録された構成例を示している。
図の例では、クリップ:#00001〜#00023の各クリップファイルが情報記録媒体に格納され、各クリップは、細分化され、細分化データが、UDF(ユニバーサルディスクフォーマット)で管理される1つの連続記録領域(Extent)にデータ#000nn_xとして分散されて記録される。
本発明の情報記録媒体のデータ記録構成では、各クリップの先頭データ、すなわち、クリップファイルのAVストリームデータの先頭データであるデータ[#000nn_0]は、すべて、物理レイヤーにおけるECCブロック(64KB)の先頭に一致させて記録される。これは、各クリップファイルに対応して設定されるハッシュユニットの読み取り、およびハッシュユニットからのハッシュ値算出などの処理を効率的に実行可能とするためである。これらの処理については、後段で詳細に説明する。
本実施例においては、物理レイヤーにおけるECCブロック(64KB)の先頭に一致させて記録するのは、クリップファイルのAVストリームデータの先頭データであるデータ[#000nn_0]のみであり、その他の後続データ[#000nn_1〜]は、ECCブロックの先頭に一致させることは必須としてはいない。ただし、すべての連続記録領域(Extent)データの先頭をECCブロックの先頭に一致させて記録する構成としてもよく、この構成により、ハッシュ値の算出のさらなる効率化が可能である。
次に、図5を参照して、クリップファイルと、ハッシュユニットの対応について説明する。前述したように、図1を参照して説明した情報記録媒体100の格納データとしてのコンテンツハッシュ114は、情報記録媒体100に格納されたコンテンツあるいは暗号化コンテンツの構成データに基づくハッシュ値であり、コンテンツの改ざん検証に適用される。本発明の構成においては、CPSユニットを構成するAVストリーム実データとしてのクリップファイルを細分化し、所定データ単位(例えば192KB)のハッシュユニットを設定し、各ハッシュユニット毎のハッシュ値を算出し、各ハッシュユニット単位のハッシュ値をコンテンツハッシュテーブル(CHT)に記録し、情報記録媒体に格納する。
図5の最上段に示す(b)は、図4に示す(b)に対応する物理レイヤーにおけるクリップファイルの配列を示している。各クリップファイルの構成データは、前述したように情報記録媒体に細分化され、分散して記録可能である。これらの分散データは、図5(c)に示すように、論理レイヤーにおいては、各クリップファイル毎に管理される。コンテンツ再生処理を実行する情報処理装置における再生アプリケーションは、情報記録媒体に分散記録されたクリップファイルの構成データをアドレスに従って、読み出して1つのクリップファイルを論理レイヤー上で構成して、データ復号処理、再生処理などを実行する。
コンテンツ再生処理を実行する情報処理装置における再生アプリケーションは、コンテンツの改ざん検証処理を実行する。コンテンツの改ざん検証は、例えば再生対象として選択したクリップファイルからランダムに複数のハッシュユニットを選択して、選択したハッシュユニットに対応するコンテンツデータのハッシュ値を算出し、これらの算出ハッシュ値と、予め情報記録媒体に記録されたコンテンツハッシュテーブル(CHT)の格納値(照合用ハッシュ値)との対比を実行する。これらのハッシュ値が一致すればコンテンツの改ざんなしと判定し、コンテンツの復号、再生処理に移行し、不一致の場合は、コンテンツ改ざん有りと判定し、コンテンツの復号、再生処理を中止する。
ハッシュユニットは、図5(d)に示すように、論理レイヤーにおけるクリップファイルを細分化したデータ単位(192KB)単位に設定される。図5(e)に示すように、各ハッシュユニットは、論理セクタ(2048B)96個分のデータに相当する。
図5(d)に示すように、各クリップファイルに対応して設定されるハッシュユニットには、ハッシュユニット番号(#0,#1,#2・・・)が設定される。図5には、クリップファイル(#00003)には、ハッシュユニット#0〜#1233が含まれ、クリップファイル(#00005)には、ハッシュユニット#1234〜が含まれている構成例を示している。
情報記録媒体に格納されるコンテンツハッシュテーブル(CHT)には、各ハッシュユニットのハッシュ値(照合用ハッシュ値)がそれぞれ格納されるとともに、各クリップファイルの先頭のハッシュユニット番号が記録される。この構成により、ハッシュ値検証を実行する情報処理装置(再生装置)は、再生対象のクリップに対応する検証対象のハッシュユニットをコンテンツハッシュテーブル(CHT)に記録されたクリップファイルの先頭のハッシュユニット番号に基づいて効率的に選択することが可能となる。コンテンツハッシュテーブル(CHT)の構成及びCHTを適用した処理の詳細については、後段で説明する。
図6は、情報記録媒体に格納されるデータの暗号化処理構成について説明する図である。コンテンツの暗号化は、図6(f)に示す暗号処理単位として設定されるアラインドユニット(Aligned Unit)を単位として実行される。1つの暗号処理単位(Aligned Unit)は、図6(g)に示すように、セクタデータ(2048B(バイト))3つの6144B(バイト)によって構成される。1セクタデータは、図5(e)の1つのセクタデータに相当する。
図6(h)に示すように、1つの暗号処理単位(Aligned Unit)は、16バイトの非暗号化部分と、6128バイトの暗号化部分によって構成される。非暗号化部分からブロックキー生成値としてのシードが取得され、図1を参照して説明したメディアキーブロックから取得したメディアキーなどの各種情報に基づいて生成したユニット鍵(unit Key)との暗号処理(AES_E)および配置論理和演算によってブロックキーが生成されて、平文に対する暗号化処理(AES_ECBC)が実行されて6128バイトの暗号化データが生成される。
ブロックキーを適用した暗号化処理は、AES暗号アルゴリズムのCBCモードを適用して実行される。この暗号化処理について、図7を参照して説明する。
図7(i)は、情報記録媒体に格納するコンテンツの平文を示している。平文は16バイト単位に分割され、各分割ブロックが、排他論理和演算および暗号化部(AES)を介して暗号化が実行され、その結果データが後続の16バイトデータと排他論理和され、さらにAES暗号化が実行されるという繰り返し処理として実行される。暗号化部(AES)の出力が連結されて、図7(j)に示す暗号化データが生成される。この暗号化データが図7(h)のデータであり、これは、図6(h)のデータと同一であり、2048バイトの3つのセクタデータにより構成される1つの暗号処理単位(Aligned Unit)の6128バイトの暗号化部分となる。なお、先頭の平文ユニット16バイトとの排他論理和演算処理がなされる初期値(IV)は、図6(h)に示す非暗号化部分から取得されるシードである。
このように生成された暗号化データが、ECCブロックに分割されて情報記録媒体に記録されることになる。なお、コンテンツ再生処理を実行する情報処理装置(再生装置)では、図7に示すAES暗号アルゴリズムに従ったCBCモードと同様の復号処理を実行し、暗号化データから復号データ(平文)を生成する処理を実行する。
次に、図8を参照して、情報記録媒体に記録されるECCブロック配列と、ハッシュユニットとの対応について説明する。図8(a)は、図4(a)と同様の物理レイヤーにおけるECCブロック配列を示している。図8(m)には、論理レイヤー上のハッシュユニットの配列を示している。各ハッシュユニットは、図5を参照して説明したように、それぞれいずれかのクリップファイルの構成データに対応し、各ハッシュユニットは、所定のデータ長(例えば192KB)のデータ構成からなる。
ハッシュユニットは192KBであり、一方ECCブロックは、64KB構成であるので、1つのハッシュユニットは、3つのECCブロックと同一のデータ長として設定されていることになる。ECCブロックは、ドライブにおけるデータ記録再生の処理単位である。コンテンツ再生を実行する情報処理装置(再生装置)は、コンテンツ再生に先立ち、再生対象のコンテンツ管理ユニット(CPSユニット)に属する1以上のハッシュユニットを読み取ってハッシュ値の算出を行い、コンテンツハッシュテーブル(CHT)に記録された照合用のハッシュ値との照合を行なう。
この場合、ドライブは、ECCブロック単位でのデータ読み取りを実行する。論理レイヤー上の論理セクタは、物理レイヤー上の物理セクタに分散して記録することが可能であるが、多くの場合、例えば1つのクリップファイルに含まれるセクタデータ、すなわち論理レイヤー上で連続するセクタデータは、物理レイヤー上でも連続して記録される場合が多い。
本発明のデータ記録構成は、先に、図4を参照して説明したように、各クリップファイルの先頭を物理レイヤーにおけるECCブロックの先頭に一致させた記録を行なう構成である。さらに、各ハッシュユニット(192KB)は、ECCブロック(64KB)の整数倍(3倍)のデータ長に設定される。この結果、多くの場合、ハッシュユニットの読み取りは、3つのECCブロックの読み取りによって実現されることになる。結果として、ハッシュ値に基づくデータ検証を実行する情報処理装置は、多くの場合、ハッシュ検証におけるデータ読み取り処理を最低限のECCブロックの読み取りによって実現することが可能となり効率的な検証処理を行なうことができる。
なお、ハッシュユニットは、図8(n)に示すようにデータ処理単位(暗号化処理単位)としてのアラインドユニットの連結データに対応する。図8(n)のアラインドユニットは論理レイヤー上の配列であるが、本発明のデータ記録構成では、物理レイヤーの配列も同様の配列を示す場合が多い。
データ処理単位(暗号化処理単位)としてのアラインドユニットの論理レイヤー上の配列と、物理レイヤー上の配列との対応について、図9を参照して説明する。図9(L1)が論理レイヤー上のアラインドユニット配列であり図9(P1)が本発明の構成を適用した場合の物理レイヤー上のアラインドユニット配列、最上段の図9(L2)は、従来のデータ記録処理を行った場合の物理レイヤー上のアラインドユニット配列を示している。
本発明の構成、すなわち、図9(L1)の論理レイヤー上のアラインドユニット配列と、図9(P1)の物理レイヤー上のアラインドユニット配列において、少なくとも各クリップファイルの先頭部分のデータは、図に示すように一致する配列となる。これは、先に図4を参照して説明したデータ記録処理、すなわち、クリップファイルの先頭部分を物理レイヤー上のECCブロックの先頭に一致させるデータ記録を行なったことによるものである。従来は、このようなデータ記録を行なっていないため、図9(P2)に示すように、物理レイヤー上において、データ処理単位(暗号化処理単位)としてのアラインドユニットは離間して記録される場合が多くなる。現行ルールでは、論理セクタ(2048B)をそれ以上細かく分割することは禁止されているが、暗号化単位のアラインドユニット(6144B=2048B×3)をセクタ(2048B)毎に分けることは、許されている。結果として、図9(P2)に示すようなばらばらのデータはいつがなされることが多くなる。
本発明のデータ記録構成(図9(P1))を採用することにより、ハッシュ算出の際の記録媒体アクセスが効率化されるばかりでなく、情報記録媒体に格納するコンテンツの暗号処理においても効率的な処理が可能となる。すなわち、図9(P2)に示すようにアラインドユニットが物理レイヤー上に分割されて記録された場合、データ記録の際の暗号化処理や、データ再生の際の復号処理を実行するプロセスが非効率的になる。前述したようにコンテンツの暗号化、復号には、CBCモードを用いる。連鎖の単位は、6144B(=Aligned Unitのサイズ)。従って、アラインドユニット#X_1とアラインドユニット#X_2の暗号化や復号には、(論理的に)直前のアラインドユニットの最後の16B(AESの最小単位)が必要になる。
すなわち、暗号処理には、先に図7を参照して説明したように、あるユニットの演算結果と、連続するユニット間の演算(排他論理和)を実行するプロセスを含む。従って、アラインドユニット内の論理セクタが分割されていると、アラインドユニット#1_1を暗号化する際には、アラインドユニット#1_0の最後の16Bを、離間したデータのアクセス期間中、保持しておく必要がある。1コンテンツには多数のアラインドユニットを含み、データ記録または再生時に、離間したユニットのアクセス時間が累積することになる。このようなアクセス待機時間が累積し、結果として、データ処理効率が低下してしまう。これに対し、図9(P1)のような配列とすれば、各ユニットは連続して配列されているため。データ記録、再生時のアクセスは連続的に実行可能であり、データアクセス時間が減少し、効率的な処理が可能となる。
次に、各ハッシュユニットに対応する照合用ハッシュ値、すなわち正当なコンテンツデータに基づいて予め計算済みのハッシュ値を各ハッシュユニット毎に格納したコンテンツハッシュテーブル(CHT)の構成例について説明する。図10は、情報記録媒体の1つの記録レイヤー(記録層)に対して設定される1つのコンテンツハッシュテーブル(CHT)のデータ構成例を示している。
コンテンツハッシュテーブル(CHT)には、
全クリップ数(NC)
全ハッシュユニット数(NH)
の各データに続いて、各クリップ(i)について、
クリップ(i)の先頭のハッシュユニット番号、
クリップ(i)のファイル名対応の番号
クリップ(i)のオフセット値
の各データが記録され、さらに、
各クリップ毎、ハッシュユニット毎のハッシュ値(照合用ハッシュ値)としての[Hash Value]が記録される。
ハッシュユニット毎のハッシュ値(照合用ハッシュ値)としての[Hash Value]は、正当なコンテンツの記録処理を実行する例えばディスク工場によって記録される。
全ハッシュユニット数(NH)は、例えば情報処理装置(再生装置)において、ハッシュ値算出、照合処理によるコンテンツ検証を実行する場合に、ランダムにハッシュユニット番号を選択する際に、その選択範囲としての数を取得する際に使用される。具体的な処理例については後述する。
全ハッシュ番号に対してハッシュユニットを選択することによって、改ざん検出精度を上げることができる。ハッシュユニット数を適用せず、全クリップ番号からランダムにクリップ番号を選択し、選ばれたクリップ内からランダムにハッシュユニットを選択するという方法にすると、例えば、「極端に小さいサイズの改ざんされていないクリップファイル999個」と「改ざんされている大きいサイズのクリップファイル1つ」をディスクに記録した場合、改ざんが検出される可能性が低くなるが、全ハッシュ番号に対してハッシュユニットを選択する構成により、改ざん検出の可能性を高めることができる。
クリップ(i)の先頭のハッシュユニット番号は、ディスク上のクリップファイル(例えば最大1000個)に対して、それぞれ0〜NCまで番号を与える。そして、各クリップファイルに属するハッシュユニットの(論理的に)先頭のハッシュユニットの全体における番号を記述する。これは、先に図5を参照して説明した通りである。
クリップ(i)のオフセット値とは、ディスクのレイヤー(記録層)の識別値である。レイヤー0のオフセット値は、全て0。レイヤー1のオフセット値は、レイヤー0に含むクリップのハッシュユニット数を示す値として設定される。この値によって、レイヤー1のテーブルのハッシュユニットの論理アドレスを容易に知ることが出来る。
情報記録媒体からのコンテンツ再生を実行する情報処理装置(再生装置)は、情報記録媒体再生時に情報記録媒体上のコンテンツの任意のハッシュユニットから計算されたハッシュ値とコンテンツハッシュテーブルに記載された照合用ハッシュ値を比較してコンテンツの改ざんの検証を行なうことが出来る。
コンテンツハッシュテーブル(CHT)の具体的構成について、図11を参照して説明する。図11(A)は2つの記録レイヤー(Layer0,1)を持つ情報記録媒体(ディスク)のデータ記録構成を示し、図11(B)は、この記録データに対応するコンテンツハッシュテーブルの構成を示している。
図11(A)に示すように、2つの記録レイヤー(Layer0,1)を持つ情報記録媒体(ディスク)には、4つのクリップ(Clip0〜3)が記録され、ハッシュユニットの総数(NH)は64個である。クリップ0は、16個のハッシュユニットを有し、これらの全てがレイヤー0に記録されている。クリップ1は、8個のハッシュユニットがレイヤー0に記録され、レイヤー1に12個のハッシュユニットが記録されている。クリップ2は、8個のハッシュユニットがレイヤー0に記録され、レイヤー1に4個のハッシュユニットが記録されている。クリップ3は、16個のハッシュユニットがレイヤー1に記録されたクリップである。
レイヤー0のハッシュユニット総数(L0_NH)=32、
レイヤー1のハッシュユニット総数(L1_NH)=32、
である。
この構成において、コンテンツハッシュテーブル(CHT)はレイヤー単位で設定され、2つのコンテンツハッシュテーブルが記録される。図11(B)に示すのはコンテンツハッシュテーブルのヘッダとボディの各データを示している。(B1)は、レイヤー0のコンテンツハッシュテーブルのヘッダーデータであり、レイヤー0に含まれる各クリップ(Clip0〜2)について、
クリップ(i)の先頭のハッシュユニット番号=Start、
クリップ(i)のファイル名対応の番号=Clip#
クリップ(i)のオフセット値=Offset
の各値を格納している。
(B2)は、レイヤー0のコンテンツハッシュテーブルのボディデータであり、レイヤー0に含まれる各ハッシュユニット(ハッシュ番号0〜31)の照合用ハッシュ値を格納している。
(B3)は、レイヤー1のコンテンツハッシュテーブルのヘッダーデータであり、レイヤー1に含まれる各クリップ(Clip1〜3)について、
クリップ(i)の先頭のハッシュユニット番号=Start、
クリップ(i)のファイル名対応の番号=Clip#
クリップ(i)のオフセット値=Offset
の各値を格納している。
(B4)は、レイヤー1のコンテンツハッシュテーブルのボディデータであり、レイヤー1に含まれる各ハッシュユニット(ハッシュ番号32〜63)の照合用ハッシュ値を格納している。
情報記録媒体からのコンテンツ再生を実行する情報処理装置(再生装置)は、情報記録媒体再生時に情報記録媒体上のコンテンツの任意のハッシュユニットから計算されたハッシュ値とコンテンツハッシュテーブルに記載された照合用ハッシュ値を比較してコンテンツの改ざんの検証を行なう。これらの処理については、後段で説明する。
[4.コンテンツハッシュテーブルの記録情報に基づくコンテンツ検証処理]
次に、コンテンツハッシュテーブルの記録情報に基づくコンテンツ検証処理について説明する。以下において説明するコンテンツ検証処理例では、情報記録媒体に格納されたコンテンツの利用に際してハッシュ検証によるコンテンツ改ざん検証を実行するとともに、コンテンツハッシュテーブルの記録情報に基づいて、ハッシュ検証シーケンスの前段階あるいは初期段階において、ハッシュ値が登録されたコンテンツ以外のハッシュ値の登録されていない不正コンテンツが情報記録媒体に記録されていないことを確認する処理を実行する。ハッシュ値の登録されていない不正コンテンツが情報記録媒体に記録されていることが検出された場合は、この不正記録コンテンツの利用、再生を停止する。
図12に、情報記録媒体に記録されるコンテンツおよび鍵情報などの管理情報を格納するディレクトリ構成例を示す。図12に示すディレクトリ構成は、Blu−ray Disc ROMフォーマットに従ったコンテンツ、アプリケーションを保管するディレクトリとして設定されるBDMVディレクトリを示している。BDMVディレクトリには、コンテンツ管理データ部401と、コンテンツデータ部402に区分され、コンテンツデータ部402には、先に図2を参照して説明したように、タイトル、オブジェクト、プレイリスト、クリップ情報、AVストリーム等の階層構成を持ち、これらを構成するデータファイルがBDMVディレクトリに設定される。
コンテンツ管理データ部401には、コンテンツに対応する管理ファイルが格納される。例えば、図10、図11を参照して説明したコンテンツハッシュテーブルが記録される。さらに、図12には示していないが、図3を参照して説明したユニット鍵管理テーブル、さらに、各ユニットに対応して設定されるコンテンツの再生処理やコピー処理の制限情報などからなるコンテンツ利用制御情報(CCI)などが格納される。
コンテンツ管理データ部401に設定されるコンテンツハッシュテーブル(CHT)は、情報記録媒体に記録された正当なコンテンツに対応して算出されたハッシュ値を格納したテーブルであり、先に図10他を参照して説明したように、CPSユニットを構成するAVストリーム実データとしてのクリップファイルを細分化し、所定データ単位(例えば192KB)のハッシュユニットに基づいて算出されるハッシュ値を、各ハッシュユニット単位の照合用ハッシュ値として格納したテーブルである。
コンテンツハッシュテーブル(CHT)には、先に図10、図11を参照して説明したように、ヘッダ情報、ボディ情報が含まれ、
ヘッダ情報には、
全クリップ数(NC)
全ハッシュユニット数(NH)
各クリップ(i)について、
クリップ(i)の先頭のハッシュユニット番号、
クリップ(i)のファイル名対応の番号
クリップ(i)のオフセット値
の各データが記録され、
ボディ情報には、
各クリップ毎のハッシュユニット単位のハッシュ値(照合用ハッシュ値)である[Hash Value]が記録される。
コンテンツハッシュテーブル(CHT)に記録されるハッシュ値は、CPSユニットを構成するAVストリーム実データとしてのクリップファイルを所定データ単位(例えば192KB)に細分化して設定したハッシュユニット毎のハッシュ値である。従って、情報記録媒体に記録されたコンテンツのデータサイズが大きくなれば、ハッシュユニット数は増加する。すなわち、コンテンツハッシュテーブル(CHT)のヘッダ情報中に記録されるハッシュユニット数は、その情報記録媒体に記録されているコンテンツのデータサイズに応じた数に設定されることになる。
もし、情報記録媒体に不正コンテンツが追加記録されている場合、この不正コンテンツに対応するハッシュ値はコンテンツハッシュテーブルには記録されないため、情報記録媒体に記録されたコンテンツデータサイズと、コンテンツハッシュテーブルのハッシュユニット数との整合性がくずれることになる。コンテンツ再生処理を実行する本発明の情報処理装置は、このような、コンテンツハッシュテーブルの記録データと、情報記録媒体に記録されたコンテンツのデータサイズの整合性チェックを実行し、不正な追加記録コンテンツの有無を検証する。
この整合性検証処理において、整合性がないと判定された場合は、コンテンツ再生を禁止する。この整合性検証処理において、整合性ありの判定がなされた場合は、次に、コンテンツハッシュテーブル(CHT)に記録されたハッシュ値を適用してコンテンツの改ざん検証を実行する。改ざん検証において、ハッシュ値の照合が成立しない場合は、コンテンツが改ざんされていると判定してコンテンツ再生を禁止する。改ざん検証において、ハッシュ値の照合が成立した場合は、コンテンツが改ざんされていないと判定してコンテンツ再生を許容する。このような検証シーケンスによって、不正コンテンツの利用を排除する。
図13以下を参照して、コンテンツ再生を実行する情報処理装置において実行されるコンテンツ検証処理について説明する。まず、図13に示すフローチャートを参照して、コンテンツハッシュテーブルの記録データと、情報記録媒体に記録されたコンテンツのデータサイズの整合性チェックを実行し、不正な追加記録コンテンツの有無を検証するコンテンツ整合性検証処理シーケンスについて説明する。
まず、情報記録媒体に格納されたコンテンツの再生を行なおうとする情報処理装置は、ステップS101において、情報記録媒体に記録されたコンテンツハッシュテーブル(CHT)から、クリップ番号と各クリップのハッシュユニット数を取得する。先に図10、図11を参照して説明したコンテンツハッシュテーブル(CHT)からこれらの情報を取得する。
コンテンツハッシュテーブル(CHT)の記録データに基づくクリップごとのハッシュユニット数の算出方法について、図14を参照して説明する。図14(B)は、先に、図11(B)と同様の図であり、2つの記録レイヤー(Layer0,1)を持つ情報記録媒体(ディスク)においてレイヤーごとに設定されたコンテンツハッシュテーブルの構成を示す図である。(B1)と(B3)は、レイヤー0と1のコンテンツハッシュテーブルのヘッダーデータであり、レイヤー0,1それぞれに含まれる各クリップ(Clip0〜3)について、
クリップ(i)の先頭のハッシュユニット番号=Start、
クリップ(i)のファイル名対応の番号=Clip#
クリップ(i)のオフセット値=Offset
の各値を格納している。
図14(C)は、これらのコンテンツハッシュテーブルから、各クリップ対応のハッシュユニット数を算出する手法を示している。例えばクリップ0のハッシュユニット(HU)数は、まずレイヤー0のコンテンツハッシュテーブルから、レイヤー0のクリップ0のハッシュユニット数を以下の手順で算出する。
クリップ1の先頭のハッシュユニット番号(16)から、クリップ0の先頭のハッシュユニット番号(0)を減算した数、すなわち、
レイヤー0におけるクリップ0のHU数=16−0=16
上記算出式によって、レイヤー0におけるクリップ0のHU数16が求められる。レイヤー1のコンテンツハッシュテーブルにはクリップ0のデータが存在しないので、クリップ0のハッシュユニット数は16と判定する。
クリップ1のハッシュユニット(HU)数は、
まずレイヤー0について、レイヤー0のコンテンツハッシュテーブルから、
クリップ2の先頭のハッシュユニット番号(24)から、クリップ1の先頭のハッシュユニット番号(16)を減算した数、すなわち、
レイヤー0のクリップ1のHU数=24−16=8が算出され、
次に、レイヤー1について、レイヤー01コンテンツハッシュテーブルから、
クリップ2の先頭のハッシュユニット番号(44)から、クリップ1の先頭のハッシュユニット番号(32)を減算した数、すなわち、
レイヤー1のクリップ1のHU数=44−32=12が算出される。
クリップ1のハッシュユニット(HU)数は、
レイヤー0と1の合計値、すなわち、
クリップ1のHU数=8+12=20
上記式によって、クリップ1のハッシュユニット数20が算出される。
以下、他のクリップについても同様のハッシュユニット算出処理が実行され、図14に示す例では、
クリップ0のハッシュユニット(HU)数=16
クリップ1のハッシュユニット(HU)数=20
クリップ2のハッシュユニット(HU)数=12
クリップ3のハッシュユニット(HU)数=16
これら、各クリップ対応のハッシュユニット数が、コンテンツハッシュテーブル(CHT)から求められる。
次に、ステップS102において、情報記録媒体に記録されたファイルシステム情報から、情報記録媒体に記録されたコンテンツ(AVストリームファイル)のファイル名と、ファイルサイズを取得する。なお、ファイルシステム情報は、情報記録媒体に記録されるデータファイルについての情報、例えば、コンテンツとしてのAVストリームデータを構成するファイルのファイル名、ファイルサイズ等のファイル情報である。
具体的なファイルシステムとしては、例えば、UDF(Universal Disc Format)、あるいはBlu−ray Discのファイルフオーマットとして適用されるBDFS(Blu-ray Disc File System)などが利用される。例えば、BDFSファイルシステムでは、図12に示すディレクトリの末尾に設定されたAVストリームクリップファイルのファイル名、ファイルサイズ等の情報をファイルシステム情報から取得する。UDFにおいても、同様にAVストリームに対応するクリップファイルのファイル名、ファイルサイズをファイルシステム情報から取得する。
次に、ステップS103において、各ファイルについて、ファイルサイズと、コンテンツハッシュテーブル(CHT)に記録されたハッシュユニット数の整合性を検証する。前述したように、コンテンツハッシュテーブル(CHT)に記録されるハッシュ値は、AVストリーム実データとしてのクリップファイルを所定データ単位(例えば192KB)に細分化して設定したハッシュユニット毎に設定されたハッシュ値である。従って、情報記録媒体に記録されたコンテンツのデータサイズが大きくなれば、ハッシュユニット数は増加する。すなわち、コンテンツハッシュテーブル(CHT)のヘッダ情報中に記録されるハッシュユニット数は、その情報記録媒体に記録されているコンテンツのデータサイズに応じた数に設定されることになる。
ファイルシステム情報から得られた全てのAVストリームクリップファイルについてのクリップファイルデータサイズと、コンテンツハッシュテーブル(CHT)に記録された各クリップに対応するハッシュユニットの数を比較することで、ファイルサイズに応じたハッシュユニット数が設定されているか否かを判定することができる。具体的には、コンテンツハッシュテーブル(CHT)に記録された各クリップ(i)に対応するハッシュユニット数(n)について、
192KB×n≒クリップファイルデータサイズ
が成立するか否かを判定する。
上記式が成立しないクリップデータファイルが検出された場合、このデータファイルは、コンテンツハッシュテーブルにハッシュ値が登録されていない不正コンテンツであると判断する。この場合、ステップS104の判定はNoとなり、ステップS105に進み再生禁止の処理を行なう。ファイルシステム情報から得られたすべてのクリップデータファイルについて、上記式が成立した場合は、情報記録媒体に記録されたコンテンツの全てが、コンテンツハッシュテーブル(CHT)にハッシュ値が登録された正当なコンテンツであると判定して、次のステップ、すなわち、ステップS106におけるコンテンツ改ざん検証処理に進む。ステップS106のコンテンツ改ざん検証処理は、コンテンツハッシュテーブル(CHT)に登録されたハッシュ値を適用したコンテンツの改ざん検証処理である。
図15〜図17を参照して、情報記録媒体からのコンテンツ再生を実行する情報処理装置(再生装置)において実行するコンテンツ改ざん検証処理について説明する。
情報記録媒体からのコンテンツ再生処理を実行する情報処理装置は、図13を参照して説明したコンテンツ整合性検証処理において、情報記録媒体に不正な追加コンテンツが記録されていないことが確認されると、次に、コンテンツハッシュテーブル(CHT)に登録されたハッシュ値を適用したコンテンツの改ざん検証によってコンテンツの正当性を検証する。
コンテンツ再生を実行する情報処理装置は、コンテンツの正当性を検証するコンテンツ検証手段と、コンテンツ検証手段の検証に基づいてコンテンツの正当性が確認されたことを条件としてコンテンツの再生処理を実行するコンテンツ再生手段とを有し、コンテンツ検証手段は、情報記録媒体に記録されたコンテンツの細分化データとして設定されたハッシュユニットをn個選択(ただしnは1以上整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、情報記録媒体に格納された照合用ハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合の成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行する。
図15は、情報処理装置(再生装置)におけるコンテンツ検証手段の実行する処理の概略を示している。情報処理装置(再生装置)421は、コンテンツを記録した情報記録媒体422を装着し、コンテンツ再生に先立ち、再生予定のコンテンツに対応するハッシュユニットを選択して、ハッシュユニットに対して設定されたハッシュ値の照合を実行する。
まず、ステップS301において、照合処理を実行するハッシュユニットを選択する。前述した説明から明らかなように、情報記録媒体の格納コンテンツは所定データ長(例えば192KB)のハッシュユニットに区分されている。情報処理装置421は、これらの多数のハッシュユニットから照合処理を実行するユニットの選択を実行する。ユニット選択処理の詳細については、図17を参照して後段で詳細に説明する。照合処理の対象として選択するハッシュユニットは、複数個(n個)例えば3個のハッシュユニットをランダムに選択する。
選択したハッシュユニットが、
ハッシュユニット#1
ハッシュユニット#12345
ハッシュユニット#99999
であるとする。
ステップS302では、選択されたハッシュユニットに対応するハッシュユニット対応データを情報記録媒体422から読み取り、各選択ハッシュユニットのハッシュ値を算出する。算出ハッシュ値を、それぞれ、
ハッシュユニット#1のハッシュ値=aaa
ハッシュユニット#12345のハッシュ値=bbb
ハッシュユニット#99999のハッシュ値=ccc
であるとする。
一方ステップS303では、情報記録媒体422に格納されたコンテンツハッシュテーブル423から、ステップS301において選択した照合処理対象のコンテンツハッシュユニットの照合用ハッシュ値を読み取る。読み取った照合用ハッシュ値が、
ハッシュユニット#1のハッシュ値=AAA
ハッシュユニット#12345のハッシュ値=BBB
ハッシュユニット#99999のハッシュ値=CCC
であるとする。
ステップS304では、ステップS302においてコンテンツのハッシュユニットに基づいて算出したハッシユ値と、コンテンツハッシュテーブル(CHT)から読み取った照合用ハッシュ値との比較処理を実行する。すべての対応するハッシュユニットの算出ハッシュ値と照合用ハッシュ値とが一致した場合、すなわち、
aaa=AAA
bbb=BBB
ccc=CCC
が成立した場合は、コンテンツの改ざんが無いと判定し、コンテンツ再生が許容され、コンテンツの再生処理に移行する。
一方、対応するハッシュユニットの算出ハッシュ値と照合用ハッシュ値とのいずれかの不一致が検出された場合、すなわち、
aaa≠AAA
bbb≠BBB
ccc≠CCC
のいずれかが検出された場合は、コンテンツの改ざんが有ると判定し、コンテンツ再生を禁止し、その後のコンテンツ再生処理への移行を中止する。
次に、図16、図17のフローを参照して、コンテンツ再生を実行する情報処理装置におけるコンテンツハッシュに基づくコンテンツ改ざん検証処理の処理手順について詳細に説明する。
図16の処理フローは、ハッシュ値に基づく照合処理を実行するハッシュユニットの数nをn=3とした設定の処理例である。
ステップS501において、ハッシュ値の照合を実行する情報処理装置は、初期設定として、照合処理を実行するハッシュユニットの数の初期値n=0の設定を行う。ステップS502において、n≧3か否かを判定する。n≧3でない場合、規定の照合数(n=3)に達していないので、ステップS503以下の照合処理を実行する。
ステップS503において、n=n+1の設定の後、ステップS504においてハッシュユニットを、ハッシュユニット番号に基づいて選択する。ハッシュユニットの選択は、ランダムに実行される。
具体的には、コンテンツハッシュテーブル(CHT)に記録された[全ハッシュユニット数(NH)]を読み取り、x<NHの乱数(x)を選択する。この選択した数値(x)を照合処理を実行するハッシュユニット番号#xとする。
ステップS505において、情報記録媒体に格納されたコンテンツハッシュテーブルからハッシュユニット番号#xの照合用ハッシュ値を取得する。さらに、ステップS506において、情報記録媒体に格納されたコンテンツのハッシュユニットからハッシュユニット番号#xのハッシュユニットを抽出し、抽出したハッシュユニットに基づいてハッシュ値を算出し、ステップS507において算出ハッシュ値と照合用ハッシュ値との比較処理を実行する。
ステップS508において、算出ハッシュ値と照合用ハッシュ値との一致判定を行い、一致していれば、ステップS502に戻り、n≧3の判定を行ない、規定の照合数(n=3)に達していない場合は、ステップS503においてnの更新後、ステップS504で、さらに新たなハッシュユニットの選択を実行して、以下ステップS505〜S507において、異なるハッシュユニットについて、同様の算出ハッシュ値と照合用ハッシュ値との照合処理を実行する。この処理が規定回数繰り返し実行され、規定数(n=3)すべてのハッシュ値の一致が確認された場合ステップS502において、n≧3?の判定がYesとなり、ステップS510に、再生許可がなされ、再生処理に移行する。
規定回数、n回のハッシュ値検証処理過程中、ステップS508の算出ハッシュ値と照合用ハッシュ値との一致判定において、一致が確認されなかった場合は、ステップS509に進み、再生禁止とされ、コンテンツの再生処理に移行しない。
照合対象のハッシュ値が暗号化コンテンツに対して設定されている場合は、上述の処理のように、情報記録媒体から読み取った暗号化コンテンツに対応するハッシュユニットから直接ハッシュ値を算出することができるが、先に説明した平文に対してハッシュ値が算出され、コンテンツハッシュテーブル(CHT)に照合用ハッシュ値として記録されている場合は、算出ハッシュ値も平文に基づいて算出することが必要となる。
図17を参照して、平文に基づくハッシュ値による検証を行なう処理手順について説明する。図17に示す処理は、図16に示す処理フローのステップS504〜S507の処理に対応する。ステップS501〜S503の処理が行われた後、図17のステップS521において、コンテンツハッシュテーブル(CHT)に記録された[全ハッシュユニット数(NH)]を読み取り、x<NHの乱数を選択する。
ステップS522において、情報記録媒体に格納されたコンテンツハッシュテーブルからハッシュユニット番号#xの照合用ハッシュ値(Hash Value(x))を取得する。ステップS523において、ハッシュユニット番号#xのユニットがどのクリップに属するかを計算する。
前述したように、コンテンツハッシュテーブル(CHT)には、
全クリップ数(NC)
全ハッシュユニット数(NH)
の各データに続いて、各クリップ(i)について、
クリップ(i)の先頭のハッシュユニット番号、
クリップ(i)のファイル名対応の番号
クリップ(i)のオフセット値
の各データが記録され、さらに、
各クリップ毎、ハッシュユニット毎のハッシュ値(照合用ハッシュ値)としての[Hash Value]が記録されており、
コンテンツハッシユテーブルの記録データに基づいて、ハッシュユニット番号から所属するクリップを算出する。次に、ステップS524において、クリップAVストリームの属するコンテンツ管理ユニット(CPSユニット)のユニット鍵を生成する。先に図2、図3を参照して説明したように、各クリップは、いずれかのコンテンツ管理ユニット(CPSユニット)に属し、各コンテンツ管理ユニット(CPSユニット)にはユニット鍵が対応付けられており、ユニット鍵による暗号化がなされている。ステップS524においては、このユニット鍵を生成する。なお、ユニット鍵の生成プロセスについては、後述する。
次に、ステップS525において、クリップAVストリームにアクセスし、ステップS526において、クリップAVストリームに含まれるハッシュユニット#xを取得して復号処理を実行する。さらに、ステップS527において、ハッシュユニット#xの復号データに基づいてハッシュ値を算出する。
ステップS528において、算出ハッシュ値と照合用ハッシュ値との一致判定を行い、一致していれば、さらに、他のハッシュユニットに対して同様の処理を実行し、規定の照合数(例えばn=3)に達するまで照合処理を繰りかえし実行し、規定数(n)すべてのハッシュ値の一致が確認された場合には、再生許可がなされ、再生処理に移行する。規定回数、n回のハッシュ値検証処理過程中、一致が確認されないものが出現した場合は、その時点で再生禁止とされ、コンテンツの再生処理に移行しない。
なお、上述の実施例は、図13に示すフローチャートを参照して説明したように、ファイルシステムのファイルサイズを用いることによりコンテンツ整合性検証処理を行い、所定数のコンテンツハッシュユニットのハッシュ値とコンテンツハッシュテーブルに登録されているハッシュユニットのハッシュ値とを比較することによりコンテンツ改竄検証処理を行なう処理例であるが、例えば、以下に説明する処理構成も可能である。
すなわち、図13に示すフローチャートのステップS101,S102,S103,S104、S105を実行せず、ファイルシステム上存在する全てのクリップ(Clip)とそのサイズを元に、コンテンツハッシュテーブルとは無関係にハッシュユニットを設定する処理を実行する。なお、ここで実行するハッシュユニット設定処理は、コンテンツハッシュテーブルに登録されているハッシュユニットと同様の構成を有するように、例えば一つのクリップに対しては、クリップ(Clip)サイズ(Kbyte)÷192Kbyte個のハッシュユニットを設定することにより実行する。
このようにして設定されたハッシュユニットについてハッシュ値を計算し、計算されたハッシュ値と、コンテンツハッシュテーブル上に登録されているハッシュユニットとのハッシュ値とを比較する。この比較処理において、計算されたハッシュ値と登録ハッシュ値とが一致しなければ改竄が行なわれたと判断することができる。すなわち、例えばコンテンツが追加された記録媒体においては、コンテンツハッシュユニット設定処理において、追加されたコンテンツに対してもハッシュユニットが設定されるため、コンテンツハッシュテーブルに登録されているハッシュユニットの構成とは異なり、その結果、ハッシュ値比較処理においてハッシュ値の一致が得られない。このハッシュ値照合処理によって、改竄の検出が可能となる。
この変形例ではコンテンツが改竄されていないことを完全に確かめる構成であるため、コンテンツの改竄危険性を更に低くできる。一方、先に説明した実施例においては、全てのハッシュユニットのハッシュ値の比較は必要とせず、一部のハッシュ値の計算と全体のファイルサイズの比較によりコンテンツの追加等がされていないかを確かめられる処理であり、効率のよい改竄チェックが可能となる。
[5.ファイルシステム情報の検証に基づくコンテンツ検証処理]
次に、ファイルシステム情報の検証に基づくコンテンツ検証処理について説明する。以下において説明するコンテンツ検証処理例は、先の[4.コンテンツハッシュテーブルの記録情報に基づくコンテンツ検証処理]において、図13、図14を参照して説明したコンテンツ整合性検証処理、すなわち、ハッシュ値が登録されたコンテンツ以外のハッシュ値の登録されていない不正コンテンツが情報記録媒体に記録されていないことを確認する処理を、情報記録媒体に格納されたファイルシステム情報の検証によって行なう処理例である。
先の処理例において説明したように、情報記録媒体には、情報記録媒体に記録されるデータファイルについての情報、例えば、コンテンツとしてのAVストリームデータを構成するファイルのファイル名、ファイルサイズ等のファイル情報を格納したファイルシステム情報が記録される。このファイルシステム情報が、正当なコンテンツを格納したディスク製造を実行するディスク製造業者におけるディスク製造当初から、変更されていないことが確認されれば、情報記録媒体上に不正な追加記録コンテンツは無いと判定することができる。
以下、説明するコンテンツ検証処理例は、このファイルシステム情報の改ざん検証値を予め情報記録媒体に記録し、この改ざん検証値に基づいて、ファイルシステム情報の改ざんの有無を検証することで、情報記録媒体上に不正な追加記録コンテンツがあるか否かを確認する処理を実行する処理例である。
図18にUDF(Universal Disc Format)ファイルシステムを適用した場合の情報記録媒体におけるデータ記録構成を示す。図18に示す構成において、ユーザデータ領域は、論理セクタNo.(LSN)=0〜Nの情報記録媒体記録領域に相当する。このユーザデータ領域に、以下の各データが記録される。
ボリュームストラクチャ(Volume Str.)
アンカー(Anchor)
ファイルシステム(FS(Metadata))
ファイル(File(BD管理情報))
ファイル(File(AVストリームデータ)
ドライブは、まず、ドライブに装着されたアンカー(Anchor)を読み取る。アンカーには、情報記録媒体のデータ読み取りに必要となる初期情報、例えばポインタ情報などのディレクトリ解析情報が格納されており、ドライブはアンカー情報を読みとることで、情報記録媒体の格納データの基本構成を知ることができる。なお、アンカーは、図に示すように、論理セクタNO.(LSN)=256の他、ボリューム空間の末尾と、末尾から一定間隔前方の位置の3箇所に記録される。これらは同じアンカー情報であり、情報記録媒体に発生した傷などでいずれかが読み取り不能となった場合に利用するためのバックアップデータとして記録されるものである。図に示すように、アンカーと同様、ボリュームストラクチャ(Volume Str.)、ファイルシステム(FS(Metadata))等も同様のデータがバックアップデータとして複数記録される。
ドライブはアンカー情報の読み取り後、ボリュームストラクチャを読み取り、情報記録媒体に記録された管理ファイル、データファイルの位置を確認し、その後、ファイルシステム(FS(Metadata))を読み取り、その後、再生シーケンスに従ってファイル(File(AVストリームデータ)を読み取る処理を実行する。
このファイルアクセスシーケンスについて、図19、図20を参照して説明する。図19は、UDFのVolume Structure構造の例を示しており、図20は、File Structure and Filesの内容を示したものである。ここでは、図20で示される[root/BDMV/Unit_Key_Gen_Value.inf]へアクセスする場合を例に説明する。
図19において、Volume Structureは論理Volumeに関する情報やパーティション内部に記録されているFile Structureの解析開始点に関する情報を記録したものである。なお、図19において、最左列がLSN(論理セクタ番号(Logical Sector Number)を、左から2列目が、Structureを、右から2列目がDescriptorsを、そして、最右列がLBN(論理ブロック番号(Logical Block Number))を示している。また、図20において、最左列がLBN(論理ブロック番号(Logical Block Number))を、中央の列が、Structureを、最右列がDescriptorsをそれぞれ示している。また、図20において、FID、FEはそれぞれ以下の意味を持つ。
FID:File Identifier Descriptor (ファイル名、FEの位置等を記述)
FE:File Entry(ファイル本体のアロケーション、記録日時情報等を記録)
ボリューム内のアドレス情報はLSN(論理セクタ番号)、パーティション内のアドレスはLBN(論理ブロック番号)で表記される。また、ボリューム内に複数のパーティションが存在する場合、Logical Volume Descriptor内部に複数のパーティション情報を記録することができる。
なお、図19,図20については、処理に必要な項目のみを説明し、処理に不要な項目については、適宜説明を省略する。まず、図19の番号1で示されるLSNが256の位置であるAnchor−1のアンカー情報(Anchor Volume Descriptor Pointer)を解析し、番号2で示されるVolume Descriptor Sequenceの位置を取得する。続いて、番号2で示されるLSNが32乃至47の位置となるVolume Descriptor Sequenceを解析する。Volume Descriptor Sequenceには、[Primary Volume Descriptor]、[Implementation Use Volume Descriptor]、[Partition Descriptor]、[Logical Volume Descriptor]、[Unallocated Spece Descriptor]、[Terminating Descriptor]、および、[Trailing Logical Sectors]が含まれており、それぞれ、[Primary Volume Descriptor]はボリュームを識別する情報を、[Implementation Use Volume Descriptor]は互換性を示す情報を、[Partition Descriptor]はパーティションを識別する情報を、[Logical Volume Descriptor]は論理パーティションの位置を示す情報を、[Unallocated Spece Descriptor]は未使用領域を示す情報、[Terminating Descriptor]は領域の最後の位置を示す情報を、そして、[Trailing Logical Sectors]は残りの領域の情報を格納している。
このうち、図19の番号3で示されているLSNが35の[Logical Volume Descriptor]に記載された[Logical Volume Integrity Sequence]の位置と、目的のパーティションの位置、パーティション内部のFile Set Descriptorの位置を取得する。
さらに、番号4で示されるLSNが48の[Logical Volume Integrity Sequence]を解析し、Volume情報の整合性チェックを行い、整合性に問題が無ければ、番号5で示されるLSN272乃至272Nall−272のFile Structure and Filesのパーティション内部を解析する。以上の手順で目的のパーティションへのアクセスを開始できる。
続いて、図20の番号11で示されるLBNが(A+1)のFile Set Descriptorには、rootの情報が格納されているので、これを解析し、番号12で示されるLBNが(A+3)のルートディレクトリのFile Entry(図中では、FE(Root Directory)と示されている)の位置を取得する。
さらに、番号12で示されるLBNが(A+3)のルートディレクトリのFile Entry(図中では、FE(Root Directory)と示されている)を解析し、ルートディレクトリの情報が記載された位置(LBN=A+4)を取得する。次に、ルートディレクトリの情報の中にある番号13で示されるBDMVディレクトリのFID(File Identifier Descriptor)を解析して、番号14で示されるBDMVディレクトリのFE(File Entry)(図中では、FE(BDMV)と示されている)の位置(LBN=A+5)を取得する。
さらに、番号14で示されるBDMVディレクトリのFile Entryを解析し、BDMVディレクトリの情報が記録されている位置(LBN=A+9)を取得する。
続いて、BDMVディレクトリの情報を取得し、番号15で示されるBDMVディレクトリにあるUnit_Key_Gen_Value.inf のFile Identifier Descriptorを解析してUnit_Key_Gen_Value.inf のFile Entryの位置を取得する。そして、番号16のUnit_Key_Gen_Value.infのFile Entryを解析し、Unit_Key_Gen_Value.infのデータが記録されている位置を取得し、Unit_Key_Gen_Value.infのデータが記録されたアドレスへアクセスし、目的のデータを取得する。以上の手順で[番号17で示されるroot/BDMV/Unit_Key_Gen_Value.inf]ファイルのデータを取得することができる。
UDF2.50で導入されたメタデータパーティションが使用されている場合、番号11で示されるFile Set Descriptor、番号12で示されるルートディレクトリのFile Entry、番号13で示されるBDMVディレクトリのFID(File Identifier Descriptor)、番号14で示されるBDMVディレクトリのFE(File Entry)、番号15で示されるBDMVディレクトリにあるUnit_Key_Gen_Value.infのFile Identifier Descriptor、および番号16のUnit_Key_Gen_Value.infのFile Entryはメタデータパーティション内に仮想アドレスを使用して配置される。
メタデータパーティションが記録されている位置は、メタデータファイルのファイルエントリによって取得できる。メタデータパーティション内のデータを一度にメモリに読み込むことにより、複数階層のディレクトリの下に保存されているファイルにアクセスする際も、ディレクトリを1段下るごとにFile Identifier Descriptor、File Entry、ディレクトリ情報の3の情報を個々に記録媒体上から読み出すことを避け、メモリ上に読み出されているメタデータパーティションの情報からファイルの読み出しに必要な情報を取得し解析することが可能である。なお、図20に示す情報は、ファイル構造のクラスタ化により1つのファイルとして配置され、そのファイル内の仮想アドレス上で管理される
なお、図18に示すユーザデータ領域のほぼ全体は、通常の暗号化システムに従ったコンテンツ暗号処理の対象データである。ただし、暗号鍵生成データとして適用されるシード情報などごく一部のデータは暗号化対象とされない場合もある。
図18に示すUDF(Universal Disc Format)ファイルシステムにおいて、ファイルシステム情報431には、情報記録媒体に記録されたコンテンツとしてのAVストリームデータを構成するファイルのファイル名、ファイルサイズ等のファイル情報が格納される。
本処理例においては、このファイルシステム情報の改ざん検証値を予め情報記録媒体に記録し、この改ざん検証値に基づいて、ファイルシステム情報の改ざんの有無を検証することで、情報記録媒体上に不正な追加記録コンテンツがあるか否かを確認する。
ファイルシステム情報の改ざん検証値を、情報記録媒体に記録する場合の1つの格納先としてコンテンツ証明書がある。コンテンツ証明書にファイルシステム情報のハッシュ値を格納し、このハッシュ値をファイルシステム情報の改ざん検証値とする。
コンテンツ証明書(CC:Content Cert)は、先に、図1を参照して説明したように、情報記録媒体に格納されたコンテンツの正当性を示すための証明書であり、上述したコンテンツハッシュテーブル(CHT)に格納された照合用ハッシュユニットに基づくコンテンツハッシュダイジェスト等のデータが格納され、さらに電子署名が付加される。例えばディスク工場である情報記録媒体製造エンティテイなどの電子署名が付加され、改ざんの防止されたデータとされる。
ファイルシステム情報のハッシュ値を含まない一般的なコンテンツ証明書について、図21を参照して説明する。コンテンツ証明書は、図21に示すデータ構成を有している。すなわち、
ヘッダ:このデータがコンテンツ証明書であることを示すデータ、
ハッシュダイジェスト数:コンテンツ証明書に登録されたハッシュダイジェストの数(クリップファイル数)、
ハッシュユニット数:ディスク上の全ハッシュユニット数、
ハッシュダイジェスト:各ハッシュテーブルの登録コンテンツハッシュに基づくハッシュ値、
さらに、コンテンツプロバイダID、コンテンツID、ディスク工場IDなどが登録され、
コンテンツ証明書の発行管理主体(例えば鍵管理センタ)の署名が設定される。
コンテンツ証明書に登録されるハッシュダイジェストについて、さらに、図22を参照して説明する。図22(a)は、コンテンツ証明書の構成を示している。ヘッダその他の登録データは、ハッシュダイジェストと署名以外のヘッダ他のデータ部あり、以下、複数のハッシュダイジェスト(0)〜(n)が登録され、署名が付与されている。
ハッシュダイジェストは、図22(b)に示すコンテンツハッシュテーブルに登録されたハッシュユニットのダイジェスト値である。コンテンツハッシュテーブルは、情報記録媒体に記録されたコンテンツに対応して設定される。例えば1つのCPSユニットに対応して1つのコンテンツハッシュテーブルが設定され登録される。コンテンツハッシュテーブルには、複数のコンテンツハッシュが記録される。
コンテンツハッシュは、図22(c)に示すコンテンツの構成データから選択されるハッシュユニット(例えば192KB)に基づいて生成されるハッシュ値である。図22(c)は例えば1つのCPSユニットに属する1つのコンテンツであり、このコンテンツから複数のデータ部分がハッシュユニットとして設定され、それぞれのハッシュユニットの構成データに基づいて算出されたハッシュ値が、コンテンツハッシュテーブルに記録される。
さらに、コンテンツハッシュテーブルの登録データ全体に基づいて新たなハッシュ値が算出され、これがハッシュダイジェストとして図22(a)に示すコンテンツ証明書に登録されることになる。すなわちハッシュダイジェストは、情報記録媒体に記録されるコンテンツ(CPSユニット)毎に設定されるハッシュ値となる。
図22(b)に示すコンテンツハッシュテーブルは、例えばコンテンツ再生を実行する前に実行するコンテンツの改ざん検証処理に適用される。例えば、再生対象コンテンツに設定されたハッシュユニットを選択して、予め定められたハッシュ値算出アルゴリズムに従ってハッシュ値を算出し、この算出ハッシュ値が、コンテンツハッシュテーブルに登録されたコンテンツハッシュと一致するか否かによって、コンテンツが改ざんされているか否かを判定する処理を行なう。
本処理例では、コンテンツハッシュテーブルのハッシュ値を集積したコンテンツ証明書にファイルシステム情報の改ざん検証値としてのファイルシステム情報ハッシュ値を含めた構成としている。すなわち、図23に示すような構成を持つコンテンツ証明書を情報記録媒体に格納する。図23に示すデータ例において、ヘッダその他の登録データは、ハッシュダイジェストとファイルシステム情報ハッシュ値、署名以外のデータであり、先に図21を参照して説明したヘッダ、ハッシュダイジェスト数、ハッシュユニット数、さらに、コンテンツプロバイダID、コンテンツID、ディスク工場IDなどが登録データである。
これらのデータの後に、各コンテンツハッシュテーブルの登録データに基づいて算出されたハッシュダイジェストが登録される。さらに、ファイルシステム情報ハッシュ値が格納され、コンテンツ証明書の発行管理主体(例えば鍵管理センタ)の署名が設定される。
本処理例のコンテンツ検証処理シーケンスについて、図24を参照して説明する。まず、情報記録媒体に格納されたコンテンツの再生を行なおうとする情報処理装置は、ステップS571において、情報記録媒体に記録されたコンテンツ証明書(CC)を取得する。ステップS572において、コンテンツ証明書の検証を実行し正当性確認を行なう。すなわち、コンテンツ証明書に設定された署名の検証を実行する。例えばECDSA(楕円曲線暗号に従った署名検証アルゴリズム)を適用し、署名検証処理を実行する。なお、署名の検証に必要なコンテンツ証明書の発行管理主体(例えば鍵管理センタ)は予め取得しメモリ(NVRAM)に格納しておく、必要であればネットワークを介して取得する構成としてもよい。
ステップS572における証明書の検証において、コンテンツ証明書の正当性が確認されなかった場合は、ステップS581に進み、情報記録媒体からのコンテンツの再生禁止として処理を終了する。コンテンツ証明書が改ざんされていない正当な証明書であることが確認された場合に限り、ステップS573に進み、コンテンツ証明書からファイルシステム情報ハッシュ値を取得する。
さらに、ステップS574において、情報記録媒体の格納データからファイルシステム情報を取得し、ハッシュ値を算出する。このハッシュ算出には、予め規定されたアルゴリズムを適用する。ステップS575において、ステップS573で、コンテンツ証明書から取得したファイルシステム情報ハッシュ値と、ステップS574で算出した算出ハッシュ値を比較照合する。
ステップS576において、ハッシュ値照合に成功、すなわち両ハッシュ値が一致した場合は、情報記録媒体の格納データとして設定されたファイルシステム情報に改ざんはなく正当なファイルシステム情報であると判定し、情報記録媒体に不正なコンテンツが追加記録されていないと判定する。その後、ステップS577に進み、コンテンツハッシュテーブルの登録ハッシュ値に基づくコンテンツ改ざん検証処理に移行する。この処理は、先に説明した[4.コンテンツハッシュテーブルの記録情報に基づくコンテンツ検証処理]において図15〜図17を参照して説明した検証処理と同様の処理となる。
ステップS576において、ハッシュ値照合に失敗、すなわち両ハッシュ値が一致しなかった場合は、情報記録媒体の格納データとして設定されたファイルシステム情報に改ざんがあり、正当なファイルシステム情報でないと判定し、情報記録媒体に不正なコンテンツが追加記録されている可能性があると判定する。この場合は、ステップS611に進み、情報記録媒体からのコンテンツの再生禁止として処理を終了する。
上述したように、本処理例においては、ファイルシステム情報の改ざんの有無を検証する構成としたので、正当なライセンスを受けたディスク製造工場において記録されたファイルシステム情報が改ざんされているか否かを検証することで、正当なディスクに対する不正なコンテンツの追加記録がなされているか否かを判定することが可能となり、追記不正コンテンツがある場合、その検出によって、不正コンテンツの再生利用を禁止することが可能となる。
[6,ファイルシステム情報の検証値を格納した情報記録媒体の製造処理]
次に、上述したファイルシステム情報の検証値を格納した情報記録媒体の製造処理について説明する。
上述した[5.ファイルシステム情報の検証に基づくコンテンツ検証処理]において説明した情報記録媒体は、格納コンテンツの他に、情報記録媒体の記録コンテンツに対応するファイルシステム情報と、ファイルシステム情報に基づくハッシュ値とを記録した構成を有し、ファイルシステム情報に基づくハッシュ値は、情報記録媒体の記録コンテンツデータに基づいて生成されたハッシュ値を登録したコンテンツハッシュテーブルに対応する検証用データを格納したコンテンツ証明書に格納された構成となる。
このような情報記録媒体の製造装置について説明する。図25に示すように、情報記録媒体製造装置は、情報記録媒体の記録コンテンツに対応するファイルシステム情報を生成するファイルシステム情報生成手段441と、ファイルシステム情報のハッシュ値を算出するファイルシステム情報ハッシュ値算出手段442と、情報記録媒体の記録コンテンツデータに基づいて生成されたハッシュ値を登録したコンテンツハッシュテーブルを生成するコンテンツハッシュテーブル生成手段443と、コンテンツハッシュテーブルの検証用データと、ファイルシステム情報のハッシュ値を登録情報としたコンテンツ証明書を生成するコンテンツ証明書生成手段444と、コンテンツ、コンテンツハッシュテーブル、およびコンテンツ証明書を情報記録媒体に記録する記録手段445を有する。
なお、図25に示す構成は、情報記録媒体製造装置において、ファイルシステム情報およびそのハッシュ値の記録に必要な製造装置構成を示すものであり、この他にも記録手段は、様々な管理情報を情報記録媒体に記録することが必要であり、そのデータ処理に応じた構成を持つことになる。なお、実際のディスク製造プロセスにおいては、様々な管理情報を提供する管理エンティテイや、コンテンツオーナーなどのコンテンツ権利を持つエンティテイなどが存在し、これらの各エンティテイが様々な情報を、ディスク製造エンティテイに提供して情報記録媒体の製造が行なわれる。具体的な製造プロセスについて、以下説明する。
図26に示すように、情報記録媒体に格納するコンテンツは、コンテンツ編集エンティテイ(AS:Authoring Studio)(=オーサリングファシリティ)451において編集され、その後、情報記録媒体製造エンティテイ(DM:Disc Manufacturer)(=暗号化ファシリティ)452において、例えば、CD、DVD、Blu−rayディスク等が大量に複製(レプリカ)されて、情報記録媒体450が製造され、ユーザに提供される。情報記録媒体450はユーザのデバイス(情報処理装置)453において再生される。
このディスク製造、販売、使用処理全体についての管理を実行するのが管理センタ(TC:Trusted Center)(=ライセンスエンティティ)454である。管理センタ(TC:Trusted Center)454は、情報記録媒体製造エンティテイ(DM:Disc Manufacturer)452に対して様々な管理情報、例えばメディア(情報記録媒体)に対応して設定されたメディアキーKmや、メディアキーKmを暗号化データとして格納した暗号化キーブロックとしてのMKBを提供し、情報記録媒体製造エンティテイ(DM:Disc Manufacturer)452は、管理センタ(TC:Trusted Center)454から受領した管理情報に基づいて、コンテンツ編集エンティテイ(AS:Authoring Studio)451から受領したコンテンツの編集、暗号化、鍵情報の、生成、格納処理などを行う。また、管理センタ(TC:Trusted Center)454は、ユーザの情報処理装置453に格納するデバイスキーの管理、提供も行う。
次に、図27を参照して、暗号化コンテンツ他のデータを格納した情報記録媒体の製造におけるデータの流れおよびデータ処理の全体について説明する。図27には、管理センタ(TC:Trusted Center)(=ライセンスエンティティ)510、コンテンツ編集エンティテイ(AS:Authoring Studio)(=オーサリングファシリティ)530、情報記録媒体製造エンティテイ(DM:Disc Manufacturer)(=暗号化ファシリティ)550と、最終的に製造される情報記録媒体(Disc)600を示している。
情報記録媒体製造エンティテイ550は、管理センタ510からメディアキー(Km)を格納したメディアキーブロック(MKB)を取得し、メディアキー取得するとともに、コンテンツ編集エンティテイ530から、平文コンテンツ532と、暗号化処理の詳細情報を記述した補助ファイル(MSTB.DAT)531と、ファイルシステム情報533を取得する。
情報記録媒体製造エンティテイ550は、ユニット鍵551を適用して、コンテンツの暗号化処理(ステップS591)を実行して暗号化コンテンツ552を生成する。コンテンツの暗号化処理は、セクタ単位の処理として、例えばAES−CBCモードの暗号処理(図7参照)として実行される。生成された暗号化コンテンツ552は、情報記録媒体600に格納される暗号化コンテンツ601とされる。
さらに、情報記録媒体製造エンティテイ550は、ステップS592において、生成した暗号化コンテンツ552の所定データ単位(ハッシュユニット)にハッシュ値を算出する。この処理は、ハッシュユニットのデータ長である192KBのデータ単位のハッシュ値を算出する処理である。これらのハッシュ値を照合用ハッシュ値として記録したコンテンツハッシュテーブル553が生成され、情報記録媒体600に格納されるコンテンツハッシュテーブル602とされる。
さらに、情報記録媒体製造エンティテイ550は、ステップS593において、コンテンツ証明書の生成処理を実行する。コンテンツ証明書は、先に図21〜図23を参照して説明したデータ構成を持つコンテンツの正当性を証明するためのデータである。ここには、コンテンツハッシュテーブル602に格納されたハッシュ値に基づくコンテンツハッシュダイジェスト(図21〜図23参照)が格納され、さらに、コンテンツ編集エンティテイ530から取得したファイルシステム情報533の改ざん検証値(ハッシュ値)を算出してコンテンツ証明書に格納する。これらの格納データに対応して電子署名を付加し、先に図23を参照して説明したコンテンツ証明書を生成する。
管理センタ510は、情報記録媒体製造エンティテイ550の秘密鍵(SK_MF)512、公開鍵(PK_MF)513を保持し、秘密鍵512と、公開鍵(PK_MF)513を格納した公開鍵証明書514を情報記録媒体製造エンティテイ550に提供する。
情報記録媒体製造エンティテイ550は、管理センタ510から受領した秘密鍵(SK_MF)554を適用して、コンテンツ証明書に対する電子署名を実行し、電子署名付加コンテンツ証明書555を生成する。これが、情報記録媒体600に格納されるコンテンツ証明書603とされる。
さらに、情報記録媒体製造エンティテイ550は、管理センタ510から受領した公開鍵証明書556を情報記録媒体に記録する。これが、情報記録媒体600に格納される公開鍵証明書604となる。以上のプロセスによって、コンテンツを格納した情報記録媒体600が完成する。
[7.情報処理装置の構成例]
次に、図28を参照して、コンテンツの記録処理または再生処理を行う情報処理装置の構成例について説明する。情報処理装置800は、情報記録媒体891の駆動を行ない、データ記録再生信号の入手力を行なうドライブ890、各種プログラムに従ったデータ処理を実行するCPU870、プログラム、パラメータ等の記憶領域としてのROM860、メモリ880、デジタル信号を入出力する入出力I/F810、アナログ信号を入出力し、A/D,D/Aコンバータ841を持つ入出力I/F840、MPEGデータのエンコード、デコード処理を実行するMPEGコーデック830、TS(Transport Stream)・PS(Program Stream)処理を実行するTS・PS処理手段820、各種の暗号処理を実行する暗号処理手段850を有し、バス801に各ブロックが接続されている。
情報処理装置800における暗号化処理、復号処理、ハッシュ値算出、署名検証処理は、暗号化処理手段850あるいはCPU870において、例えば、AESアルゴリズム、その他の演算処理を適用して実行される。なお、コンテンツ再生あるいは記録処理を実行するプログラムは例えばROM860内に保管されており、プログラムの実行処理中は必要に応じて、パラメータ、データの保管、ワーク領域としてメモリ880を使用する。
ROM860またはメモリ880には、例えば、デバイスキー、管理センタの公開鍵、情報処理装置対応の秘密鍵、公開鍵証明書、さらに、リボケーションリストなどが格納される。
コンテンツ再生または外部出力に際しては、コンテンツ整合性検証処理、コンテンツハッシュテーブルの登録ハッシュ値に基づくコンテンツ改ざん検証処理が実行され、さらに、暗号化コンテンツの復号処理など、先に説明した処理例の各処理シーケンスに従った処理を実行する。
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
例えば、プログラムは記録媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本発明の一実施例の構成によれば、正当な記録コンテンツデータに基づいて生成されたハッシュ値を登録したコンテンツハッシュテーブルの記録情報に基づいて、コンテンツハッシュテーブルにハッシュ値の登録されていない不正記録コンテンツの有無を検証する構成としたので、不正に追加記録されたコンテンツの不正利用を防止することが可能となる。例えば、情報記録媒体のコンテンツデータファイルのファイルサイズと、コンテンツハッシュテーブルに登録されたコンテンツデータファイルに対応するハッシュユニット数との整合性の検証によって、ハッシュ値の登録されていない記録コンテンツの有無を検証する構成としたので、効率的な検証処理が実現される。
また、本発明の一実施例の構成によれば、情報記録媒体に記録されたファイルシステム情報の改ざん検証処理を実行することで、不正に追加記録されたコンテンツの不正利用を防止することが可能となる。例えば、ファイルシステム情報に基づいて生成された照合用ハッシュ値を電子署名の付与されたコンテンツ証明書から取得し、コンテンツ証明書の署名検証の後、照合用ハッシュ値を取得して、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理を実行する構成としたので、確実なコンテンツ検証が可能となる。
情報記録媒体の格納データ構成について説明する図である。 情報記録媒体の格納コンテンツに対して設定するコンテンツ管理ユニットの設定例について説明する図である。 コンテンツ管理ユニット構成およびユニット鍵管理テーブルの例を示す図である。 情報記録媒体のデータ記録構成を説明する図であり、物理レイヤーにおけるECCブロックと、クリップAVストリームの対応について説明する図である。 情報記録媒体のデータ記録構成を説明する図であり、物理レイヤーにおけるクリップAVストリーム、論理レイヤーにおけるクリップAVストリーム、およびハッシュユニットの対応について説明する図である。 情報記録媒体のデータ記録構成および暗号化処理構成を説明する図である。 情報記録媒体の格納コンテンツの暗号化処理構成を説明する図である。 情報記録媒体のデータ記録構成を説明する図であり、ハッシュユニットと、アラインドユニットの対応について説明する図である。 情報記録媒体のデータ記録構成を説明する図であり、物理レイヤーおよび論理レイヤーにおけるアラインドユニットの対応について説明する図である。 コンテンツハッシュテーブルの構成例について説明する図である。 コンテンツハッシュテーブルの具体的構成例について説明する図である。 情報記録媒体に記録されるコンテンツおよび鍵情報などの管理情報を格納するディレクトリ構成例を示す図である。 コンテンツ再生を実行する情報処理装置におけるコンテンツ検証処理シーケンスを説明するフローチャートを示す図である。 クリップごとのハッシュユニット数の算出方法について説明する図である。 コンテンツ再生を実行する情報処理装置におけるハッシュ値に基づくコンテンツ検証処理シーケンスについて説明する図である。 コンテンツ再生を実行する情報処理装置におけるハッシュ値に基づくコンテンツ検証処理シーケンスについて説明するフロー図である。 コンテンツ再生を実行する情報処理装置における平文データに基づくハッシュ値を適用したコンテンツ検証処理シーケンスについて説明する図である。 UDF(Universal Disc Format)ファイルシステムを適用した場合の情報記録媒体におけるデータ記録構成を示す図である。 UDF(Universal Disc Format)ファイルシステムを適用した場合のファイルアクセスシーケンスについて説明する図である。 UDF(Universal Disc Format)ファイルシステムを適用した場合のファイルアクセスシーケンスについて説明する図である。 コンテンツ証明書のデータ構成例について説明する図である。 コンテンツ証明書のデータ構成の詳細について説明する図である。 ファイルシステム情報ハッシュ値を含むコンテンツ証明書のデータ構成例について説明する図である。 コンテンツ再生を実行する情報処理装置におけるファイルシステム情報の改ざん検証に基づくコンテンツ検証処理シーケンスを説明するフローチャートを示す図である。 情報記録媒体製造装置の構成例について説明する図である。 コンテンツ格納情報記録媒体の製造において、管理センタ、コンテンツ編集エンティテイ、および情報記録媒体製造エンティテイの実行する処理例について説明する図である。 コンテンツ格納情報記録媒体の製造において、管理センタ、コンテンツ編集エンティテイ、および情報記録媒体製造エンティテイの実行する処理例について説明する図である。 情報記録媒体を装着して情報の記録再生を実行する情報処理装置の構成例について説明する図である。
符号の説明
100 情報記録媒体
101 ユーザデータ領域
102 リードイン領域
111 暗号化コンテンツ
112 記録シード
113 コピー・再生制御情報
114 コンテンツハッシュ
115 コンテンツ証明書
116 署名検証用公開鍵証明書
120 暗号鍵情報
121 MKB(Media Key Block)
131 物理インデックス
210 タイトル
220 ムービーオブジェクト
230 プレイリスト
240 クリップ
261,262,263 AVストリーム
301,302 コンテンツ管理ユニット(CPSユニット)
401 コンテンツ管理データ部
402 コンテンツデータ部
421 情報処理装置(再生装置)
422 情報記録媒体
423 コンテンツハッシュテーブル
431 ファイルシステム情報
441 ファイルシステム情報生成手段
442 ファイルシステム情報ハッシュ値算出手段
443 コンテンツハッシュテーブル生成手段
444 コンテンツ証明書生成手段
445 記録手段
450 情報記録媒体
451 コンテンツ編集エンティテイ
452 情報記録媒体製造エンティテイ
453 情報処理装置
454 管理センタ
510 管理センタ
511 MKB
512 情報記録媒体製造エンティテイ秘密鍵
513 情報記録媒体製造エンティテイ公開鍵
514 公開鍵証明書
530 コンテンツ編集エンティテイ
531 補助ファイル
532 コンテンツ(平文)
533 ファイルシステム情報
550 情報記録媒体製造エンティテイ
551 ユニット鍵
552 暗号化コンテンツ
553 コンテンツハッシュテーブル
554 情報記録媒体製造エンティテイ秘密鍵
555 電子署名付加コンテンツ証明書
556 公開鍵証明書
600 情報記録媒体
601 暗号化コンテンツ
602 コンテンツハッシュテーブル
603 電子署名付加コンテンツ証明書
604 公開鍵証明書
800 情報処理装置
801 バス
810 入出力I/F
820 TS・PS処理手段
830 MPEGコーデック
840 入出力I/F
841 A/D,D/Aコンバータ
850 暗号処理手段
860 ROM
870 CPU
880 メモリ
890 ドライブ
891 情報記録媒体

Claims (6)

  1. 情報処理装置であり、
    情報記録媒体に記録された記録コンテンツの検証処理を実行するコンテンツ検証手段と、
    前記検証処理に基づいて記録コンテンツの正当性が確認されたことを条件としてコンテンツ再生処理を実行するコンテンツ再生手段とを有し、
    前記コンテンツ検証手段は、
    正当な記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルを情報記録媒体から取得し、
    情報記録媒体に記録されたファイルシステム情報に基づいて生成された照合用ハッシュ値と、前記コンテンツハッシュテーブルの検証用データとを格納したコンテンツ証明書を取得し、取得したコンテンツ証明書に設定された電子署名の検証により、コンテンツ証明書の正当性を確認し、
    正当性の確認されたコンテンツ証明書から前記照合用ハッシュ値を取得し、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理により、ファイルシステム情報の正当性を確認し、
    正当性の確認されたファイルシステム情報から取得した情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行し、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、
    前記ハッシュユニットをn個選択(ただしnは1以上整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行する構成を有することを特徴とする情報処理装置。
  2. 前記コンテンツデータファイルは、
    コンテンツを含むデータファイルとして設定されるクリップファイルであり、
    前記コンテンツ検証手段における検証処理は、
    情報記録媒体に記録されたクリップファイルのファイルサイズと、前記コンテンツハッシュテーブルに登録されたクリップファイルに対応するハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない記録コンテンツの有無を検証するものであることを特徴とする請求項1に記載の情報処理装置。
  3. 情報記録媒体であり、
    情報記録媒体の記録コンテンツに対応するファイルシステム情報と、
    前記ファイルシステム情報に基づいて生成された照合用ハッシュ値と、
    情報記録媒体の記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルの検証用データと、
    を格納したコンテンツ証明書、
    を記録情報として有し、
    情報記録媒体の記録コンテンツの再生を実行する情報処理装置において、前記コンテンツ証明書の前記照合用ハッシュ値と、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理によるファイルシステム情報の正当性確認処理を実行させ、正当性の確認されたファイルシステム情報から取得される情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証させて、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行させ、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、前記ハッシュユニットをn個選択(ただしnは1以上整数)させて、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行させて情報記録媒体の記録コンテンツの正当性検証を実行させることを可能としたことを特徴とする情報記録媒体。
  4. 情報処理方法であり、
    情報記録媒体に記録された記録コンテンツの検証処理を実行するコンテンツ検証ステップと、
    前記検証処理に基づいて記録コンテンツの正当性が確認されたことを条件としてコンテンツ再生処理を実行するコンテンツ再生ステップとを有し、
    前記コンテンツ検証ステップは、
    正当な記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルを情報記録媒体から取得し、
    情報記録媒体に記録されたファイルシステム情報に基づいて生成された照合用ハッシュ値と、前記コンテンツハッシュテーブルの検証用データとを格納したコンテンツ証明書を取得し、取得したコンテンツ証明書に設定された電子署名の検証により、コンテンツ証明書の正当性を確認し、
    正当性の確認されたコンテンツ証明書から前記照合用ハッシュ値を取得し、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理により、ファイルシステム情報の正当性を確認し、
    正当性の確認されたファイルシステム情報から取得した情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行し、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、
    前記ハッシュユニットをn個選択(ただしnは1以上整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行するステップであることを特徴とする情報処理方法。
  5. 前記コンテンツデータファイルは、
    コンテンツを含むデータファイルとして設定されるクリップファイルであり、
    前記コンテンツ検証ステップにおける検証処理は、
    情報記録媒体に記録されたクリップファイルのファイルサイズと、前記コンテンツハッシュテーブルに登録されたクリップファイルに対応するハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない記録コンテンツの有無を検証するものであることを特徴とする請求項4に記載の情報処理方法。
  6. 情報記録媒体に記録された記録コンテンツの検証処理を情報処理装置において実行させるコンピュータ・プログラムであり、
    情報記録媒体に記録された記録コンテンツの検証処理を実行するコンテンツ検証ステップと、
    前記検証処理に基づいて記録コンテンツの正当性が確認されたことを条件としてコンテンツ再生処理を実行するコンテンツ再生ステップとを有し、
    前記コンテンツ検証ステップは、
    正当な記録コンテンツデータに基づいて生成されたハッシュ値であり、予め設定されたデータ量を持つハッシュユニットごとのハッシュ値と、各コンテンツデータファイルに対応する登録ハッシュユニット数を記録したコンテンツハッシュテーブルを情報記録媒体から取得し、
    情報記録媒体に記録されたファイルシステム情報に基づいて生成された照合用ハッシュ値と、前記コンテンツハッシュテーブルの検証用データとを格納したコンテンツ証明書を取得し、取得したコンテンツ証明書に設定された電子署名の検証により、コンテンツ証明書の正当性を確認し、
    正当性の確認されたコンテンツ証明書から前記照合用ハッシュ値を取得し、情報記録媒体から読み出したファイルシステム情報に基づいて算出したハッシュ値との照合処理により、ファイルシステム情報の正当性を確認し、
    正当性の確認されたファイルシステム情報から取得した情報記録媒体のコンテンツデータファイルのファイルサイズと、前記コンテンツハッシュテーブルに記録されたコンテンツデータファイルに対応する登録ハッシュユニット数との整合性を検証して、ハッシュ値の登録されていない不正コンテンツが前記情報記録媒体に記録されているか否かの検証処理を実行し、不正コンテンツが前記情報記録媒体に記録されていないとの判定が得られた場合、さらに、
    前記ハッシュユニットをn個選択(ただしnは1以上整数)し、選択ハッシュユニットに基づく算出ハッシュ値と、前記コンテンツハッシュテーブルに格納されたハッシュ値との照合処理を実行し、選択したn個全てのハッシュ値の照合成立をコンテンツの正当性の確認条件としたコンテンツ検証処理を実行するステップであることを特徴とするコンピュータ・プログラム。
JP2005267532A 2005-09-14 2005-09-14 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム Expired - Fee Related JP4901164B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005267532A JP4901164B2 (ja) 2005-09-14 2005-09-14 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US11/531,593 US7979709B2 (en) 2005-09-14 2006-09-13 Information processing apparatus, information recording medium, apparatus and method of manufacturing information recording medium, and computer program
CN200610172400.6A CN1971745B (zh) 2005-09-14 2006-09-14 信息处理装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005267532A JP4901164B2 (ja) 2005-09-14 2005-09-14 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Publications (3)

Publication Number Publication Date
JP2007079989A JP2007079989A (ja) 2007-03-29
JP2007079989A5 JP2007079989A5 (ja) 2008-10-23
JP4901164B2 true JP4901164B2 (ja) 2012-03-21

Family

ID=37856685

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005267532A Expired - Fee Related JP4901164B2 (ja) 2005-09-14 2005-09-14 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム

Country Status (3)

Country Link
US (1) US7979709B2 (ja)
JP (1) JP4901164B2 (ja)
CN (1) CN1971745B (ja)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7644279B2 (en) * 2001-12-05 2010-01-05 Nvidia Corporation Consumer product distribution in the embedded system market
IL149759A (en) * 2002-05-20 2009-07-20 Eyal Cohen Method and system for protecting digital media from illegal copying
JP4649865B2 (ja) * 2003-11-06 2011-03-16 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4901164B2 (ja) * 2005-09-14 2012-03-21 ソニー株式会社 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
EP2636743A1 (en) 2006-04-21 2013-09-11 Intervet International B.V. Pestivirus species
KR100843075B1 (ko) * 2006-05-29 2008-07-03 삼성전자주식회사 데이터를 관리하는 장치 및 방법
JP4757179B2 (ja) * 2006-11-30 2011-08-24 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
US20080219114A1 (en) * 2007-03-08 2008-09-11 Seiko Epson Corporation Information processing device and storage medium
JP4935468B2 (ja) * 2007-04-03 2012-05-23 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2009048525A (ja) * 2007-08-22 2009-03-05 Sharp Corp コンテンツ再生装置、制御プログラム、記録媒体
WO2009032712A2 (en) 2007-08-29 2009-03-12 Nirvanix, Inc. Method and system for moving requested files from one storage location to another
JP4623176B2 (ja) * 2008-09-17 2011-02-02 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
US20100228736A1 (en) * 2009-02-20 2010-09-09 All Media Guide, Llc Recognizing a disc
US20100228704A1 (en) * 2009-02-20 2010-09-09 All Media Guide, Llc Recognizing a disc
US8620967B2 (en) * 2009-06-11 2013-12-31 Rovi Technologies Corporation Managing metadata for occurrences of a recording
US8336100B1 (en) * 2009-08-21 2012-12-18 Symantec Corporation Systems and methods for using reputation data to detect packed malware
JP5644777B2 (ja) * 2010-01-21 2014-12-24 日本電気株式会社 ファイル群整合性検証システム、ファイル群整合性検証方法およびファイル群整合性検証用プログラム
KR20120053398A (ko) 2010-11-17 2012-05-25 삼성전자주식회사 컨텐츠를 검증하기 위한 서명 장치와 검증 장치를 포함하는 검증 시스템 및 검증 방법
JP5947295B2 (ja) 2011-06-13 2016-07-06 パナソニック株式会社 端末装置、サーバ装置、コンテンツ記録制御システム、記録方法及び記録許否制御方法
JP6340668B2 (ja) * 2012-02-29 2018-06-13 グローバル ファイル システムズ ホールディングス、エルエルシー ストリーム認識およびフィルタリング
WO2013158066A1 (en) 2012-04-16 2013-10-24 Hewlett-Packard Development Company, L.P. File upload based on hash value comparison
KR102134429B1 (ko) * 2013-10-04 2020-07-15 삼성전자주식회사 컨텐츠 검증 방법 및 장치
CN111033599B (zh) * 2017-08-22 2023-04-28 日本电信电话株式会社 协商系统、协商装置以及记录介质
CN113879338B (zh) * 2021-11-24 2023-02-17 广州文远知行科技有限公司 一种行驶规划模块优化方法、装置、设备和介质

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03233629A (ja) * 1990-02-09 1991-10-17 Nec Corp 実行形式ファイルの被破壊チェック方式
EP0717337B1 (en) * 1994-12-13 2001-08-01 International Business Machines Corporation Method and system for the secured distribution of programs
US5757915A (en) * 1995-08-25 1998-05-26 Intel Corporation Parameterized hash functions for access control
US5966446A (en) * 1995-09-29 1999-10-12 Intel Corporation Time-bracketing infrastructure implementation
JP3918228B2 (ja) * 1997-05-13 2007-05-23 株式会社ニコン 情報処理装置および記録媒体
JPH1185524A (ja) * 1997-09-05 1999-03-30 Toshiba Corp 情報処理装置及び方法並びに情報処理プログラムを記録した記録媒体
SG70120A1 (en) * 1997-09-17 2000-01-25 Hitachi Ltd Recording/reproducing method and apparatus processing apparatus and recording medium for video signal having copy control information
US6477252B1 (en) * 1999-08-29 2002-11-05 Intel Corporation Digital video content transmission ciphering and deciphering method and apparatus
JP2001203686A (ja) * 2000-01-21 2001-07-27 Sony Corp データ処理装置、データ処理方法およびデータ検証値付与方法、並びにプログラム提供媒体
JP2002229829A (ja) * 2001-01-31 2002-08-16 Sanyo Electric Co Ltd ファイル管理情報作成方法及び装置
US20020112163A1 (en) 2001-02-13 2002-08-15 Mark Ireton Ensuring legitimacy of digital media
JP2002251828A (ja) 2001-02-23 2002-09-06 Sony Corp 記録装置および方法、情報処理装置および方法、記録媒体、プログラム格納媒体、並びにプログラム
JP2002268948A (ja) * 2001-03-08 2002-09-20 Toshiba Corp ディジタル情報システム及びコンテンツ情報の検証方法
US6898172B2 (en) * 2001-06-11 2005-05-24 Eastman Kodak Company System to reduce writing overhead to a hybrid optical disc
JP4392780B2 (ja) * 2001-07-10 2010-01-06 株式会社リコー データ格納処理方法、そのプログラム及び記憶媒体、並びに処理システム
JP3740038B2 (ja) * 2001-08-06 2006-01-25 株式会社アイエスエイ 公開コンテンツ提供システム
JP4909474B2 (ja) * 2001-09-13 2012-04-04 株式会社リコー セキュア電子メディア管理システム、方法、プログラム、及び記録媒体
US20040009815A1 (en) * 2002-06-26 2004-01-15 Zotto Banjamin O. Managing access to content
JP2004234641A (ja) * 2003-01-08 2004-08-19 Kddi Corp コンテンツファイル制作者の認証方式およびそのプログラム
JP4527661B2 (ja) * 2003-03-11 2010-08-18 パナソニック株式会社 コンテンツ記録再生システム、配信装置、再生装置、記録装置
JP2005051734A (ja) * 2003-07-15 2005-02-24 Hitachi Ltd 電子文書の真正性保証方法および電子文書の公開システム
CN1914850B (zh) * 2004-01-29 2010-07-21 索尼株式会社 信息处理设备和方法
JP4569228B2 (ja) * 2004-09-02 2010-10-27 ソニー株式会社 データ処理方法、情報記録媒体製造管理システム、記録データ生成装置、および方法、並びにコンピュータ・プログラム
US7971070B2 (en) * 2005-01-11 2011-06-28 International Business Machines Corporation Read/write media key block
JP4471937B2 (ja) * 2005-02-07 2010-06-02 株式会社ソニー・コンピュータエンタテインメント プロセッサのリソース管理によるコンテンツ制御方法および装置
JP4701748B2 (ja) * 2005-02-25 2011-06-15 ソニー株式会社 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP2006260614A (ja) * 2005-03-15 2006-09-28 Sony Corp ディスク製造方法、データ記録装置、情報記録媒体、情報処理装置および方法、並びにコンピュータ・プログラム
US8018609B2 (en) * 2005-09-13 2011-09-13 Sony Corporation Information processing device, information recording medium manufacturing device, information recording medium, methods therefore, and computer program
JP4901164B2 (ja) * 2005-09-14 2012-03-21 ソニー株式会社 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US20070083531A1 (en) * 2005-10-12 2007-04-12 Daniar Hussain Data storage method and apparatus utilizing evolution and hashing
US8117461B2 (en) * 2006-09-13 2012-02-14 Igt Method of randomly and dynamically checking configuration integrity of a gaming system
JP4315180B2 (ja) * 2006-10-20 2009-08-19 ソニー株式会社 信号処理装置および方法、プログラム、並びに記録媒体
JP2009245471A (ja) * 2008-03-28 2009-10-22 Sony Corp 情報処理装置および方法、プログラム、記録媒体、並びに情報処理システム
JP4561864B2 (ja) * 2008-04-08 2010-10-13 ソニー株式会社 ディスク型記録媒体および製造方法

Also Published As

Publication number Publication date
US20070061584A1 (en) 2007-03-15
JP2007079989A (ja) 2007-03-29
CN1971745B (zh) 2012-05-23
CN1971745A (zh) 2007-05-30
US7979709B2 (en) 2011-07-12

Similar Documents

Publication Publication Date Title
JP4901164B2 (ja) 情報処理装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4576936B2 (ja) 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム
US7746738B2 (en) Data processing method, information recording medium manufacturing management system, recording data generation apparatus and method, and computer program
JP5034227B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4655951B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4715233B2 (ja) 情報処理装置、および情報記録媒体製造方法、並びにコンピュータ・プログラム
JP4882636B2 (ja) 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
JP4979312B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP4899442B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
US8625967B2 (en) Information processing device, information recording medium manufacturing device, information recording medium, methods thereof, and computer program
JP4264551B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4140624B2 (ja) 情報処理装置、情報記録媒体製造装置、情報記録媒体、および方法、並びにコンピュータ・プログラム
JP4941611B2 (ja) 情報処理装置、および方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080908

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080908

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100709

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100907

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101206

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101209

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20101228

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111121

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: 20111227

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150113

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees