JP5990259B2 - サーバ装置、再生装置及びコンテンツ配信システム - Google Patents

サーバ装置、再生装置及びコンテンツ配信システム Download PDF

Info

Publication number
JP5990259B2
JP5990259B2 JP2014506032A JP2014506032A JP5990259B2 JP 5990259 B2 JP5990259 B2 JP 5990259B2 JP 2014506032 A JP2014506032 A JP 2014506032A JP 2014506032 A JP2014506032 A JP 2014506032A JP 5990259 B2 JP5990259 B2 JP 5990259B2
Authority
JP
Japan
Prior art keywords
content
unit
user
title key
key
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.)
Active
Application number
JP2014506032A
Other languages
English (en)
Other versions
JPWO2013140774A1 (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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Publication of JPWO2013140774A1 publication Critical patent/JPWO2013140774A1/ja
Application granted granted Critical
Publication of JP5990259B2 publication Critical patent/JP5990259B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • 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/00224Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving encryption or decryption of contents recorded on or reproduced from a record carrier the cryptographic key used for encryption and/or decryption of contents recorded on or reproduced from the record carrier being read from a specific source wherein the key is obtained from a remote server
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1012Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to domains
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1015Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to users
    • 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/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
    • 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/00855Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a step of exchanging information with a remote server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • 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/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • 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/088Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Description

本発明は、デジタルのコンテンツのユーザに対する使用の許諾を管理する技術に関する。
映画、音楽、ゲーム、電子書籍などのデジタルのコンテンツは、複製が容易である。このため、コンテンツの不正な複製の防止が求められている。
特許文献1によると、記憶媒体は、当該記憶媒体に固有の媒体固有番号及び暗号化電子化データを記録している。許諾側装置は、記憶媒体に記録されている媒体固有番号をもとに媒体固有鍵を生成する。次に、この媒体固有鍵を用いて、暗号化電子化データを復号するための復号鍵を暗号化して記憶媒体に許諾情報として書き込む。使用側装置は、記憶媒体から媒体固有番号を読み出し、読み出した媒体固有番号をもとに媒体固有鍵を生成し、この媒体固有鍵によって、記憶媒体に記録されている許諾情報を復号して復号鍵を生成し、復号鍵を用いて、記憶媒体に記録されている暗号化電子化データを復号し、平文を生成する。
この技術によると、記憶媒体(以下、正規の記憶媒体)に記録されている暗号化電子化データと許諾情報を他の記憶媒体(以下、不正な記憶媒体)に複製したとしても、正規の記憶媒体の媒体固有番号を不正な記憶媒体に複製することはできない。このため、不正な記憶媒体から、正規の記憶媒体の媒体固有番号を読み出すことはできない。従って、正しい媒体固有鍵を生成できず、許諾情報から復号鍵を正しく復号することができず、その結果、暗号化電化データを正しく復号することができない。こうして、コンテンツの不正な複製を防止している。
日本国特開平05−257816号公報 米国特許第7984489号明細書
特許文献1により開示された技術によると、正規の記憶媒体を用いる限り、使用者が誰であっても、当該記憶媒体に記録されているコンテンツを復号することができる。このため、コンテンツの使用が許可されていないユーザが、正規の記憶媒体に記録されているコンテンツを、不正に利用することが可能となる。
また、特許文献1により開示された技術によると、正規の記憶媒体に記録されているコンテンツをバックアップ用として、他の記憶媒体に複製することはできない。このため、正規の記憶媒体が破損した場合に、ユーザは、再度、正規の記憶媒体を購入しなければならない。
本発明は、コンテンツ提供者の権利及びユーザの利便性に考慮して、別の許諾形態によりコンテンツを提供することができるサーバ装置及び再生装置を提供することを目的とする。
上記目的を達成するために、本発明の一態様は、再生装置と、コンテンツを提供するサーバ装置とから構成されるコンテンツ配信システムである。前記サーバ装置は、ユーザに固有の固有情報を取得する第1取得手段と、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、前記コンテンツの利用条件を取得する第2取得手段と、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段とを備える。前記再生装置は、ユーザからの前記固有情報の入力を受け付ける受付手段と、前記受付手段により受け付けた前記固有情報を用いて、前記バインド情報を取得する第3取得手段と、前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する第3生成手段と、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、復号により生成された復号コンテンツを再生する再生手段とを備える。
この態様によると、ユーザに紐付けてコンテンツの使用を許諾することができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
本発明に係る実施の形態1としてのコンテンツ配信システム10aの構成を示す。 本発明に係る実施の形態2としてのコンテンツ配信システム10bの構成を示す。 サーバ装置100bの構成を示すブロック図である。 (a)利用条件123bのデータ構造を示す。(b)ユーザテーブル125bのデータ構造を示す。(c)バインド情報テーブル126bのデータ構造を示す。 ダウンロード装置500b及びメモリカード600bの構成を示すブロック図である。 再生装置700b及びメモリカード600bの構成を示すブロック図である。 ログイン及びバインド情報の取得の動作を示すシーケンス図である。 コンテンツのダウンロードの動作を示すシーケンス図である。 コンテンツの再生の動作を示すシーケンス図である。 本発明に係る実施の形態3としてのコンテンツ配信システム10cの構成を示す。 コンテンツ制作装置100の構成を示すブロック図である。 コンテンツ制作装置100による動作を示すフローチャートである。 鍵発行装置200の構成を示すブロック図である。 各証明書のデータ構造を示す。(a)鍵配信装置証明書C101のデータ構造を示す。(b)コンテンツ制作装置証明書C106のデータ構造を示す。(c)端末装置証明書C111のデータ構造を示す。(d)記憶媒体装置証明書C116のデータ構造を示す。 鍵発行装置200による動作を示すフローチャートである。 コンテンツ配信装置300の構成を示すブロック図である。 配信依頼データC121のデータ構造を示す。 コンテンツ配信装置300による動作を示すフローチャートである。 鍵配信装置400の構成を示すブロック図である。 UR(利用条件)1410のデータ構造を示す。 認証部A100及び認証部B100の構成を示すブロック図である。 鍵配信装置400による動作を示すフローチャートである。 書き込み時における端末装置500の構成を示すブロック図である。 再生時における端末装置500の構成を示すブロック図である。 第2アカウント情報1510及びログイン第2アカウント情報1530のデータ構造を示す。 コンテンツ一覧画面1520を示す。 アカウント表示画面1550を示す。 第2アカウントログイン画面1560を示す。 端末装置500における書き込み時の動作を示すフローチャートである。 端末装置500における再生時の動作を示すフローチャートである。 記憶媒体装置600の構成を示すブロック図である。 記憶媒体装置600の動作を示すフローチャートである。 権利管理装置700の構成を示すブロック図である。 コンテンツ管理情報テーブル1700のデータ構造を示す。 第2アカウント管理情報テーブル1710のデータ構造を示す。 視聴権管理情報テーブル1720のデータ構造を示す。 視聴権確認要求データ17301のデータ構造を示す。 視聴権確認応答データ17401のデータ構造を示す。 視聴権管理情報テーブル17202のデータ構造を示す。 視聴権確認要求データ17302のデータ構造を示す。 視聴権確認応答データ17402のデータ構造を示す。 権利管理装置700の動作を示すフローチャートである。 本発明に係る実施の形態4としてのコンテンツ配信システム10dの構成を示す。 サーバ装置3401の構成を示すブロック図である。 端末装置3402の構成を示すブロック図である。 記憶媒体装置3403の構成を示すブロック図である。 記憶媒体装置3403に記録されている利用条件3804のデータ構造を示す。 コンテンツの記録時の動作を示すシーケンス図である。図49へ続く。 コンテンツの記録時の動作を示すシーケンス図である。 本発明に係る実施の形態5としてのコンテンツ配信システム10eの構成を示す。 サーバ装置4101の構成を示すブロック図である。 端末装置4102の構成を示すブロック図である。 コンテンツの再生時の動作を示すシーケンス図である。図54へ続く。 コンテンツの再生時の動作を示すシーケンス図である。図55へ続く。 コンテンツの再生時の動作を示すシーケンス図である。 本発明に係る実施の形態6としてのコンテンツ配信システム10fの構成を示す。 端末装置4701の構成を示すブロック図である。 コンテンツの再生時の動作を示すシーケンス図である。図59へ続く。 コンテンツの再生時の動作を示すシーケンス図である。図60へ続く。 コンテンツの再生時の動作を示すシーケンス図である。 本発明に係る実施の形態7におけるコンテンツ一覧画面5201を示す。 コンテンツ一覧画面5202及びコンテンツ一覧画面5203を示す。 コンテンツ一覧画面5204を示す。 トップ画面5301を示す。 トップ画面5401及びコンテンツ画面5402を示す。 ユーザIDによりログインしている状態で表示される表示画面5501を示す。 ユーザIDによりログインしていない状態で表示される表示画面5502を示す。
本発明の一態様は、再生装置と、コンテンツを提供するサーバ装置とから構成されるコンテンツ配信システムである。前記サーバ装置は、ユーザに固有の固有情報を取得する第1取得手段と、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、前記コンテンツの利用条件を取得する第2取得手段と、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段とを備える。前記再生装置は、ユーザからの前記固有情報の入力を受け付ける受付手段と、前記受付手段により受け付けた前記固有情報を用いて、前記バインド情報を取得する第3取得手段と、前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する第3生成手段と、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、復号により生成された復号コンテンツを再生する再生手段とを備える。
この態様によると、ユーザに紐付けてコンテンツの使用を許諾することができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
本発明の別の一態様は、コンテンツを提供するサーバ装置であって、ユーザに固有の固有情報を取得する第1取得手段と、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、前記コンテンツの利用条件を取得する第2取得手段と、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段とを備える。
この態様によると、ユーザに紐付けてコンテンツの提供を行うことができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態を採用することができる。
ここで、前記第1取得手段は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、前記第1生成手段は、前記ユーザ識別情報を含む前記バインド情報を生成するとしてもよい。
この態様によると、前記バインド情報は、ユーザ識別情報を含むので、コンテンツをユーザに紐付けることができる。
ここで、前記第1取得手段は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、前記第1生成手段は、前記ユーザ識別情報を要約して要約値を生成し、生成した要約値を含む前記バインド情報を生成するとしてもよい。
この態様によると、前記バインド情報は、ユーザ識別情報を要約した要約値を含むので、コンテンツをユーザに紐付けることができる。
ここで、前記第2生成手段は、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記タイトル鍵及び前記要約値に、前記変換として、排他的論理和演算を施して、前記変換タイトル鍵を生成するとしてもよい。
この態様によると、バインド情報及び利用条件を要約して要約値を生成し、タイトル鍵及び要約値に、前記変換として、排他的論理和演算を施して、変換タイトル鍵を生成するので、変換タイトル鍵をバインド情報に関連付けることができる。
ここで、前記第2生成手段は、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成するとしてもよい。
この態様によると、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成するので、要約値をバインド情報に関連付けることができる。
本発明の別の一態様は、コンテンツを提供するサーバ装置で用いられる方法であって、ユーザに固有の固有情報を取得する第1取得ステップと、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成ステップと、前記コンテンツの利用条件を取得する第2取得ステップと、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成ステップと、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力ステップとを含む。
この態様によると、ユーザに紐付けてコンテンツの提供を行うことができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態を採用することができる。
本発明の別の一態様は、コンテンツを提供するサーバ装置で用いられるコンピュータプログラムを記録しているコンピュータ読取可能なプログラム記録媒体であって、コンピュータである前記サーバ装置に、ユーザに固有の固有情報を取得する第1取得ステップと、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成ステップと、前記コンテンツの利用条件を取得する第2取得ステップと、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成ステップと、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力ステップとを実行させるための前記コンピュータプログラムを記録している。
この態様によると、ユーザに紐付けてコンテンツの提供を行うことができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態を採用することができる。
本発明の別の一態様は、コンテンツを提供するサーバ装置を構成する集積回路であって、ユーザに固有の固有情報を取得する第1取得手段と、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、前記コンテンツの利用条件を取得する第2取得手段と、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段とを備える。
この態様によると、ユーザに紐付けてコンテンツの提供を行うことができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態を採用することができる。
本発明の別の一態様は、サーバ装置が提供するコンテンツを再生する再生装置である。前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する。前記再生装置は、ユーザからの前記固有情報の入力を受け付ける受付手段と、前記受付手段により受け付けた前記固有情報前記固有情報を用いて、前記バインド情報を取得する取得手段と、前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成手段と、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、復号により生成された復号コンテンツを再生する再生手段とを備える。
この態様によると、ユーザに紐付けたコンテンツの使用ができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
ここで、前記利用条件は、バインド識別フラグを含み、前記受付手段は、前記固有情報として、ユーザ識別情報とパスワードを受け付け、前記再生装置は、読み出した前記利用条件に含まれる前記バインド識別フラグが、ユーザにバインドされたコンテンツであることを示すか否かを確認する確認手段を備え、前記取得手段は、前記バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合に、前記受付手段により受け付けた前記ユーザ識別情報と前記パスワードに基づき、前記バインド情報を算出してもよい。
この態様によると、ユーザに紐付けたコンテンツと、ユーザに紐付けないコンテンツとを同時に扱うことが可能となる。また、前記受付手段により受け付けた前記ユーザ識別情報と前記パスワードに基づき、前記バインド情報を算出する。このため、再生装置は、自装置でバインド情報を算出して、ユーザに紐付けたコンテンツを使用できる。
ここで、前記生成手段は、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記変換タイトル鍵及び前記要約値に、前記逆変換として、排他的論理和演算を施して、前記復号タイトル鍵を生成してもよい。
この態様によると、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記変換タイトル鍵及び前記要約値に、前記逆変換として、排他的論理和演算を施して、前記復号タイトル鍵を生成する。このため、バインド情報が正しい場合にのみ、正しい復号タイトル鍵が生成される。
ここで、前記生成手段は、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成してもよい。
この態様によると、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成する。このため、バインド情報が正しい場合にのみ、正しい要約値が生成される。
ここで、前記サーバ装置は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、前記バインド情報を前記ユーザ識別情報に対応付けて記憶し、前記取得手段は、前記受付手段により、前記ユーザ識別情報の入力が受け付けられたとき、前記ユーザ識別情報に対応して記憶されている前記バインド情報を取得してもよい。
この態様によると、サーバ装置は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、前記バインド情報を前記ユーザ識別情報に対応付けて記憶する。再生装置は、前記ユーザ識別情報の入力が受け付けられたとき、前記ユーザ識別情報に対応して記憶されている前記バインド情報を取得する。このため、入力されたユーザ識別情報が正しい場合にのみ、正しいバインド情報が取得される。
本発明の別の一態様は、サーバ装置が提供するコンテンツを再生する再生装置で用いられる方法である。前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する。前記方法は、ユーザからの前記固有情報の入力を受け付ける受付ステップと、前記受付ステップにより受け付けた前記固有情報を用いて、前記バインド情報を取得する取得ステップと、前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出ステップと、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成ステップと、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号ステップと、復号により生成された復号コンテンツを再生する再生ステップとを含む。
この態様によると、ユーザに紐付けたコンテンツの使用ができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
ここで、前記利用条件は、バインド識別フラグを含み、前記受付ステップは、前記固有情報として、ユーザ識別情報とパスワードを受け付け、前記方法は、読み出した前記利用条件に含まれる前記バインド識別フラグが、ユーザにバインドされたコンテンツであることを示すか否かを確認する確認ステップを含み、前記取得ステップは、前記バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合に、前記受付ステップで受け付けた前記ユーザ識別情報と前記パスワードに基づき、前記バインド情報を算出するとしてもよい。
本発明の別の一態様は、サーバ装置が提供するコンテンツを再生する再生装置で用いられるコンピュータプログラムを記録しているコンピュータ読取可能なプログラム記録媒体である。前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する。前記プログラム記録媒体は、コンピュータである前記再生装置に、ユーザからの前記固有情報の入力を受け付ける受付ステップと、前記受付ステップにより受け付けた前記固有情報を用いて、前記バインド情報を取得する取得ステップと、前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出ステップと、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成ステップと、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号ステップと、復号により生成された復号コンテンツを再生する再生ステップとを実行させるための前記コンピュータプログラムを記録している。
この態様によると、ユーザに紐付けたコンテンツの使用ができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
本発明の別の一態様は、サーバ装置が提供するコンテンツを再生する再生装置を構成する集積回路である。前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する。前記集積回路は、ユーザからの前記固有情報の入力を受け付ける受付手段と、前記受付手段により受け付けた前記固有情報を用いて、前記バインド情報を取得する取得手段と、前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成手段と、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、復号により生成された復号コンテンツを再生する再生手段とを備える。
この態様によると、ユーザに紐付けたコンテンツの使用ができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
従来の技術では、正規の記憶媒体を用いる限り、使用者が誰であっても、当該記憶媒体に記録されているコンテンツを復号することができる。この場合、コンテンツ提供者は、最初に正規の記憶媒体を購入した第1のユーザから使用料相当の対価を徴収することができる。しかし、第1のユーザが当該記憶媒体を第2のユーザに転売した場合に、コンテンツ提供者は、第2のユーザから使用料相当の対価を徴収することが困難である。
本発明のコンテンツ配信システムにおいては、ユーザに紐付けてコンテンツの使用を許諾することができる。これにより、許諾されていない第2のユーザによるコンテンツの不正な利用を防止し、かつ、許諾された第1のユーザによる他の記憶媒体への複製を許可することが可能となる。
1.実施の形態1
本発明に係る実施の形態1としてのコンテンツ配信システム10aについて、図面を参照しながら説明する。
(1)コンテンツ配信システム10a
コンテンツ配信システム10aは、図1に示すように、サーバ装置100a、記憶媒体600a及び再生装置700aから構成されている。
再生装置700aにコンテンツを提供するサーバ装置100aは、図1に示すように、第1取得部101a、第1生成部102a、第2取得部103a、第2生成部104a及び出力部105aから構成されている。
第1取得部101aは、ユーザに固有の固有情報を取得する。
第1生成部102aは、前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する。
第2取得部103aは、前記コンテンツの利用条件を取得する。
第2生成部104aは、前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する。
出力部105aは、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体600aに出力する。
サーバ装置100aからコンテンツの提供を受ける再生装置700aは、図1に示すように、受付部701a、取得部702a、読出部703a、生成部704a、復号部705a及び再生部706aから構成されている。
受付部701aは、ユーザからの前記固有情報の入力を受け付ける。
取得部702aは、受付部701aにより受け付けた前記固有情報を用いて、前記バインド情報を取得する。
読出部703aは、記憶媒体600aから前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す。
生成部704aは、取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する。
復号部705aは、生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する。
再生部706aは、復号により生成された復号コンテンツを再生する。
(2)ここで、第1取得部101aは、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、第1生成部102aは、前記ユーザ識別情報を含む前記バインド情報を生成してもよい。
(3)ここで、第1取得部101aは、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、第1生成部102aは、前記ユーザ識別情報を要約して要約値を生成し、生成した要約値を含む前記バインド情報を生成してもよい。
(4)ここで、第2生成部104aは、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記タイトル鍵及び前記要約値に、前記変換として、排他的論理和演算を施して、前記変換タイトル鍵を生成してもよい。
(5)ここで、第2生成部104aは、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成してもよい。
(6)ここで、前記利用条件は、バインド識別フラグを含むとしてもよい。受付部701aは、前記固有情報として、ユーザ識別情報とパスワードを受け付ける。再生装置700aは、さらに、読み出した前記利用条件に含まれる前記バインド識別フラグが、ユーザにバインドされたコンテンツであることを示すか否かを確認する確認部を備える。取得部702aは、前記バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合に、受付部701aにより受け付けた前記ユーザ識別情報と前記パスワードに基づき、前記バインド情報を算出する。
(7)ここで、生成部704aは、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記変換タイトル鍵及び前記要約値に、前記逆変換として、排他的論理和演算を施して、前記復号タイトル鍵を生成してもよい。
(8)ここで、生成部704aは、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成してもよい。
(9)ここで、サーバ装置100aは、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、前記バインド情報を前記ユーザ識別情報に対応付けて記憶してもよい。
取得部702aは、受付部701aにより、前記ユーザ識別情報の入力が受け付けられたとき、前記ユーザ識別情報に対応して記憶されている前記バインド情報を取得してもよい。
2.実施の形態2
本発明に係る実施の形態2としてのコンテンツ配信システム10bについて、図面を参照しながら説明する。
2.1 コンテンツ配信システム10b
コンテンツ配信システム10bは、図2に示すように、サーバ装置100b、ダウンロード装置500b、再生装置700b及びメモリカード600bから構成されている。サーバ装置100b、ダウンロード装置500b及び再生装置700bは、それぞれ、インターネットに代表されるネットワーク20bに接続されている。メモリカード600bは、可搬型の記憶媒体装置である。
コンテンツ配信システム10bにおいて、サーバ装置100bは、ユーザの有する再生装置700bに対してコンテンツを提供する。
再生装置700bは、ユーザからユーザID及びパスワードの入力を受け付ける。ここで、ユーザIDは、ユーザを識別する識別情報であり、パスワードは、ユーザ本人を確認するための認証情報である。また、ユーザID及びパスワードは、ユーザに固有に固有情報である。再生装置700bは、ユーザID及びパスワードを用いて、ログインする。ログインに成功すると、再生装置700bは、ユーザの指示により、バインド情報の取得を要求する。ここで、バインド情報は、ユーザとコンテンツとを紐付ける情報である。バインド情報は、ユーザに固有の固有情報であるユーザID及びパスワードに基づいて生成される情報である。なお、ユーザに固有の固有情報は、ユーザIDであり、バインド情報は、ユーザIDに基づいて生成される情報であるとしてもよい。バインド情報の生成の詳細については、後述する。ユーザIDに対応するバインド情報が存在しなければ、サーバ装置100bは、ユーザID及びパスワードから、新たにバインド情報を生成し、ユーザIDに対応付けて、バインド情報を記憶する。ユーザIDに対応するバインド情報が存在すれば、サーバ装置100bは、ユーザIDに対応するバインド情報を読み出す。次に、サーバ装置100bは、生成したバインド情報又は読み出したバインド情報を出力する。再生装置700bは、バインド情報を取得する。取得したバインド情報は、再生装置700bにおいて、ログインしている期間中に限り、有効である。次に、再生装置700bはログオフする。ログオフすると、受信したバインド情報は、無効化される。
ユーザは、メモリカード600bをダウンロード装置500bに装着する。ダウンロード装置500bは、ユーザからユーザID及びパスワードの入力を受け付け、ユーザID及びパスワードを用いて、サーバ装置100bにログインする。ログインに成功すると、ユーザの指示により、サーバ装置100bから暗号化コンテンツ、利用条件(UR(Usage Rule))及び演算タイトル鍵を取得する。演算タイトル鍵は、タイトル鍵、バインド情報及び利用条件に基づいて生成されたものである。タイトル鍵は、コンテンツを暗号化して暗号化コンテンツを生成する際に用いられる暗号鍵である。利用条件は、コンテンツを利用する際の条件を示す情報である。次に、ダウンロード装置500bは、取得した暗号化コンテンツ、利用条件及び演算タイトル鍵をメモリカード600bに書き込む。ダウンロード装置500bは、ログオフする。
次に、ユーザは、メモリカード600bをダウンロード装置500bから取り外し、暗号化コンテンツ、利用条件及び演算タイトル鍵が記録されたメモリカード600bを再生装置700bに装着する。再生装置700bは、ユーザからユーザID及びパスワードの入力を受け付け、ユーザID及びパスワードを用いて、ログインする。ログインに成功すると、再生装置700bは、ユーザIDに対応するバインド情報を取得する。再生装置700bは、取得したバインド情報、並びに、メモリカード600bに記録されている利用条件及び演算タイトル鍵に基づいて、復号タイトル鍵を生成する。次に、再生装置700bは、生成した復号タイトル鍵を用いて、メモリカード600bに記録されている暗号化コンテンツを復号し、再生し、出力する。
2.2 サーバ装置100b
サーバ装置100bは、図3に示すように、記憶部101b、演算部102b、ハッシュ部103b、暗号化部104b、制御部105b及び送受信部106bから構成されている。
サーバ装置100bは、具体的には、プロセッサ、ROM、RAM、ハードディスクユニット、通信ユニットなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記プロセッサが、前記コンピュータプログラムに従って動作することにより、サーバ装置100bの演算部102b、ハッシュ部103b、暗号化部104b及び制御部105bとしての機能が実現する。
(1)記憶部101b
記憶部101bは、一例として、ハードディスクユニットから構成されている。記憶部101bは、タイトル鍵121b、バインド情報テーブル126b、利用条件123b、コンテンツ124b及びユーザテーブル125bを記憶するための領域を備えている。
タイトル鍵121bは、コンテンツを暗号化するために用いられる暗号鍵である。一例として、タイトル鍵121bは、128ビット長である。タイトル鍵121bは、コンテンツを識別する識別情報であるコンテンツIDに対応付けられている。
バインド情報テーブル126bは、図4(c)に示すように、複数個のユーザIDとバインド情報の組を記憶するための領域を備えている。各組のユーザIDとバインド情報とは、対応付けられている。
ユーザIDは、ユーザを識別する識別情報である。
バインド情報は、ユーザに固有の固有情報に基づいて生成される情報であり、ユーザとコンテンツとを紐付けるために用いられる。バインド情報の生成方法については、後述する。
バインド情報テーブル126bは、図4(c)に示すように、一例として、ユーザID(127b)に対応付けて、バインド情報122bを含んでいる。
利用条件123bは、ユーザがコンテンツを取り扱う際の条件を示す情報である。一例として、利用条件123bは、図4(a)に示すように、「MOVE禁止」及び「コピー不可」を含む。「MOVE禁止」は、コンテンツの移動を禁止することを示す。また、「コピー不可」は、コンテンツの複製の禁止を示す。利用条件123bは、コンテンツの最大再生回数、コンテンツに許される再生期間などを含むとしてもよい。利用条件123bは、コンテンツIDに対応付けられている。
コンテンツ124bは、一例として、デジタルの映像データ及び音声データが圧縮されて生成された圧縮データである。コンテンツ124bは、コンテンツIDに対応付けられている。なお、コンテンツ124bは、デジタルの音楽データ、デジタルの音声データ、デジタルの動画データ、デジタルの静止画データ、電子書籍データ、データベース、スプレッドシート、テキストデータ、コンピュータプログラムであるとしてもよい。
ユーザテーブル125bは、一例として、図4(b)に示すように、複数のユーザデータから構成されている。各ユーザデータは、ユーザID、パスワード及びユーザ名を含む。ユーザID及びパスワードについては、上述した通りである。ユーザ名は、当該ユーザを示す名称である。
(2)ハッシュ部103b
(要約値の生成)
ハッシュ部103bは、以下に示すようにして、バインド情報と利用条件とを結合して結合体を生成し、生成した結合体に一方向性演算を施して、要約値を生成する。
ハッシュ部103bは、制御部105bの制御により、記憶部101bのバインド情報テーブル126bからユーザIDに対応するバインド情報122bを読み出すことにより、バインド情報122bを取得する。また、記憶部101bからコンテンツIDに対応する利用条件123bを読み出すことにより、利用条件123bを取得する。次に、ハッシュ部103bは、読み出したバインド情報122b及び利用条件123bをこの順序で連結して、結合体を生成する。
結合体=バインド情報||利用条件
ここで、A||Bは、データAとデータBとをこの順序で連結して得られるデータである。
次に、ハッシュ部103bは、結合体に対して、ハッシュ演算Hashを施して、ハッシュ値を生成する。
ハッシュ値=Hash(結合体)=Hash(バインド情報||利用条件) (式1)
ここで、Hash(A)は、データAに対してハッシュ演算Hashを施して得られたハッシュ値である。また、ハッシュ演算Hashは、一方向性演算であり、生成されたハッシュ値は、要約値である。また、ハッシュ演算Hashは、一例として、SHA−1である。なお、SHA−1の代りに、SHA−224、SHA−256、SHA−384、SHA−512のいずれかを用いるとしてもよい。
なお、(式1)で用いるハッシュ演算Hashは、後述する(式3)で用いるハッシュ演算Hashと、同一のものでなければならない。
次に、ハッシュ部103bは、生成したハッシュ値を演算部102bに対して出力する。
(バインド情報の生成)
また、ハッシュ部103bは、以下に示すようにして、ユーザに固有の固有情報に基づいて、バインド情報を生成する。
ハッシュ部103bは、制御部105bから、ユーザに固有の固有情報であるユーザID及びパスワードを受け取る。上述したように、ユーザIDは、ユーザを識別する識別情報であり、パスワードは、本人を確認するための認証情報である。次に、制御部105bの制御により、受け取ったユーザID及びパスワードをこの順序で連結して、結合体を生成する。
結合体=ユーザID||パスワード
次に、ハッシュ部103bは、結合体に対して、一方向性演算であるハッシュ演算Hashを施して、バインド情報を生成する。
バインド情報=Hash(結合体)=Hash(ユーザID||パスワード) (式2)
ここで、Hash(A)は、データAに対してハッシュ演算Hashを施して得られたハッシュ値である。ハッシュ演算として、SHA−1を用いる。なお、SHA−1の代りに、SHA−224、SHA−256、SHA−384、SHA−512のいずれかを用いるとしてもよい。
言い換えると、ハッシュ部103bは、ユーザに固有の固有情報を要約して、バインド情報を生成する。
また、(式2)で用いるハッシュ演算Hashは、各実施の形態及び各変形例において用いられるハッシュ演算Hashと、同一のものであってもよいし、異なるものであってもよい。
なお、ユーザIDを含むバインド情報を生成してもよい。
次に、ハッシュ部103bは、生成したバインド情報を制御部105bに対して出力する。
(3)演算部102b
演算部102bは、以下に示すようにして、ハッシュ部103bによりバインド情報及び利用条件を要約して生成された要約値及びタイトル鍵に、可逆の変換を施して、変換タイトル鍵(以下において、演算タイトル鍵と呼ぶ。)を生成する。ここで、可逆の変換の一例は、以下に示すように、排他的論理和である。なお、可逆の変換として、例えば、AES(Advanced Encryption Standard)による暗号化アルゴリズムを用いるとしてもよい。
演算部102bは、制御部105bの制御により、記憶部101bからコンテンツIDに対応するタイトル鍵121bを読み出す。次に、演算部102bは、ハッシュ部103bからハッシュ値を受け取る。
次に、演算部102bは、読み出したタイトル鍵121b及び受け取ったハッシュ値に排他的論理和演算XORを施して、演算タイトル鍵を生成する。
演算タイトル鍵=タイトル鍵 XOR ハッシュ値
ここで、排他的論理和は、可逆の変換である。また、「XOR」は、排他的論理和を示す演算子である。例えば、「A XOR B」は、データAとデータBとに排他的論理和演算を施して得られた演算結果を示す。
次に、演算部102bは、制御部105bの制御により、演算タイトル鍵を、送受信部106b及びネットワーク20bを介して、ダウンロード装置500bへ送信する。
(4)暗号化部104b
暗号化部104bは、制御部105bの制御により、記憶部101bからコンテンツIDに対応するタイトル鍵121b及びコンテンツ124bを読み出す。次に、暗号化部104bは、タイトル鍵121bを暗号鍵として用いて、コンテンツ124bに暗号化アルゴリズムEを施して、暗号化コンテンツを生成する。
暗号化コンテンツ=E(タイトル鍵、コンテンツ)
ここで、E(A、B)は、暗号鍵Aを用いてデータBに暗号化アルゴリズムEを施して生成した暗号文である。暗号化アルゴリズムEは、共通鍵暗号方式による暗号化アルゴリズムである。暗号化アルゴリズムEは、一例として、AESによるものである。
次に、暗号化部104bは、制御部105bの制御により、生成した暗号化コンテンツを、送受信部106b及びネットワーク20bを介して、ダウンロード装置500bへ送信する。
(5)送受信部106b
送受信部106bは、一例として、通信ユニットから構成されている。
送受信部106bは、制御部105bの制御により、ネットワーク20bに接続された他の装置との間で、データの送受信を行う。
具体的には、送受信部106bは、演算タイトル鍵及び暗号化コンテンツをダウンロード装置500bへ送信する。また、記憶部101bから利用条件123bを読み出し、読み出した利用条件123bをダウンロード装置500bへ送信する。また、バインド情報を再生装置700bへ送信する。さらに、各メッセージを再生装置700b及びダウンロード装置500bへ送信する。
また、送受信部106bは、再生装置700b及びダウンロード装置500bから、ユーザに固有の固有情報であるユーザID及びパスワードを受信することにより、取得する。また、再生装置700bから、バインド情報の要求を受信する。また、ダウンロード装置500bからコンテンツID及びコンテンツの要求を受信する。
(6)制御部105b
制御部105bは、演算部102b、ハッシュ部103b、暗号化部104b及び送受信部106bを制御する。
制御部105bは、ダウンロード装置500b又は再生装置700bから、ユーザID及びパスワードの組を受け取る。ユーザID及びパスワードの組を受け取ると、この組と同じ組が、ユーザテーブル125bに含まれているか否かを判断する。同じ組がユーザテーブル125bに含まれていると判断する場合、ダウンロード装置500b又は再生装置700bに対して、ログインを許可する。同じ組がユーザテーブル125bに含まれていないと判断する場合、ダウンロード装置500b又は再生装置700bに対して、ログインを許可しない。
ログインされている状態において、再生装置700bは、サーバ装置100bに対して、バインド情報を要求することができる。また、メモリカード600bに記録されている暗号化コンテンツを復号し、再生することができる。また、ログインされている状態において、ダウンロード装置500bは、サーバ装置100bから利用条件、演算タイトル鍵及び暗号化コンテンツを取得することができる。
制御部105bは、送受信部106bから、バインド情報の要求を受け取る。バインド情報の要求を受け取ると、制御部105bは、受け取ったユーザIDがバインド情報テーブル126bに含まれるか否かを判断する。含まれないと判断する場合、制御部105bは、ハッシュ部103bに対して、バインド情報を生成するように指示する。次に、ハッシュ部103bから、バインド情報を受け取り、受け取ったバインド情報とユーザIDとをバインド情報テーブル126bに書き込む。受け取ったユーザIDがバインド情報テーブル126bに含まれると判断する場合、制御部105bは、ユーザIDに対応するバインド情報を、バインド情報テーブル126bから読み出す。
制御部105bは、生成したバインド情報又は読み出したバインド情報を、再生装置700bに対して送信するよう、送受信部106bを制御する。
2.3 ダウンロード装置500b
ダウンロード装置500bは、図5に示すように、送受信部501b、入力部502b、表示部503b、制御部504b及び入出力部505bから構成されている。
ダウンロード装置500bは、具体的には、プロセッサ、ROM、RAM、ハードディスクユニット、入出力ユニット、通信ユニット、液晶ディスプレィ、キーボードなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記プロセッサが、前記コンピュータプログラムに従って動作することにより、ダウンロード装置500bの制御部504bとしての機能が実現する。
(1)送受信部501b
送受信部501bは、一例として、通信ユニットから構成されている。
送受信部501bは、制御部504bの制御により、入出力部505b及び制御部504bと、ネットワーク20bに接続された外部の装置との間で、データの送受信を行う。
具体的には、送受信部501bは、サーバ装置100bから、演算タイトル鍵、利用条件及び暗号化コンテンツを受信する。次に、受け取った演算タイトル鍵、利用条件及び暗号化コンテンツを入出力部505bに対して出力する。また、送受信部501bは、サーバ装置100bから、各メッセージを受信する。
また、送受信部501bは、ユーザID、パスワード、コンテンツID及びコンテンツの要求をサーバ装置100bに対して送信する。
(2)入出力部505b
入出力部505bは、ダウンロード装置500bにメモリカード600bが装着されている場合、制御部504bの制御により、メモリカード600bに対して、データを出力する。また、メモリカード600bから、データを受け取る。
具体的には、入出力部505bは、制御部504bの制御により、送受信部501bから、演算タイトル鍵、利用条件及び暗号化コンテンツを受け取る。次に、受け取った演算タイトル鍵、利用条件及び暗号化コンテンツをメモリカード600bに対して出力する。
(3)制御部504b、入力部502b及び表示部503b
制御部504bは、入力部502b、表示部503b、送受信部501b及び入出力部505bを制御する。
入力部502bは、一例として、キーボードから構成されている。入力部502bは、ユーザからデータの入力を受け付け、受け付けられたデータを制御部504bに対して出力する。
表示部503bは、一例として、液晶ディスプレィから構成されている。表示部503bは、制御部504bの制御により、データを表示する。
2.4 メモリカード600b
メモリカード600bは、可搬型の記憶媒体装置である。メモリカード600bは、図5に示すように、耐タンパ性を有するコントローラ601b、入出力部602b及びメモリ部603bから構成されている。
(1)メモリ部603b
メモリ部603bは、不揮発性の半導体メモリである。
メモリ部603bは、図5に一例として示すように、演算タイトル鍵621b、利用条件622b及び暗号化コンテンツ623bを記憶するための領域を備えている。
演算タイトル鍵、利用条件及び暗号化コンテンツについては、上述した通りである。
(2)入出力部602b
入出力部602bは、メモリカード600bがダウンロード装置500b又は再生装置700bに装着されたときに、これらの装置と、コントローラ601b及びメモリ部603bとの間でデータの入出力を行う。
(3)コントローラ601b
コントローラ601bは、プロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ROM又は前記RAMには、コンピュータプログラムが記憶されている。前記プロセッサが、前記コンピュータプログラムに従って動作することにより、コントローラ601bは、その機能を達成する。
コントローラ601bは、メモリ部603bに対するデータの書き込み、及び、メモリ部603bからのデータの読み出しを制御する。
2.5 再生装置700b
再生装置700bは、図6に示すように、送受信部701b、記憶部702b、制御部703b、ハッシュ部704b、演算部705b、復号部706b、再生部707b、入出力部708b及び入力部709bから構成されている。再生装置700bには、モニタ710bが接続されている。
再生装置700bは、具体的には、プロセッサ、ROM、RAM、ハードディスクユニット、入出力ユニット、通信ユニット、キーボードなどから構成されるコンピュータシステムである。前記RAM又は前記ハードディスクユニットには、コンピュータプログラムが記憶されている。前記プロセッサが、前記コンピュータプログラムに従って動作することにより、再生装置700bの制御部703b、ハッシュ部704b、演算部705b、復号部706b及び再生部707bとしての機能が実現する。
(1)記憶部702b
記憶部702bは、一例として、ハードディスクユニットから構成されている。
記憶部702bは、バインド情報721b及び利用条件722bを記憶するための領域を備えている。
バインド情報及び利用条件については、上述した通りである。
(2)送受信部701b
送受信部701bは、一例として、通信ユニットから構成されている。
送受信部701bは、制御部703bの制御により、入出力部708b、制御部703b及び記憶部702bと、ネットワーク20bに接続された外部の装置との間で、データの送受信を行う。
具体的には、送受信部701bは、サーバ装置100bから、後述する入力部709bにより入力を受け付けたユーザIDに対応して記憶されているバインド情報を受信することにより、取得する。次に、受信したバインド情報を記憶部702bに対して書き込む。また、サーバ装置100bから、各メッセージを受信する。
また、送受信部701bは、ユーザID、パスワード及びバインド情報の要求をサーバ装置100bに対して送信する。
(3)入出力部708b
入出力部708bは、再生装置700bにメモリカード600bが装着されている場合、制御部504bの制御により、メモリカード600bに対して、データを出力する。また、メモリカード600bから、データを受け取る。
具体的には、入出力部708bは、制御部504bの制御により、メモリカード600bから、演算タイトル鍵、利用条件及び暗号化コンテンツを読み出す。次に、入出力部708bは、読み出した演算タイトル鍵を演算部705bに対して出力する。また、入出力部708bは、読み出した暗号化コンテンツを復号部706bに対して出力する。さらに、読み出した利用条件を記憶部702bに対して書き込む。
(4)ハッシュ部704b
ハッシュ部704bは、以下に示すようにして、バインド情報及び利用条件を連結して結合体を生成し、生成した結合体に一方向性演算を施して、要約値を生成する。
ハッシュ部704bは、制御部703bの制御により、記憶部702bからバインド情報721b及び利用条件722bを読み出す。次に、ハッシュ部704bは、読み出したバインド情報721b及び利用条件722bをこの順序で連結して、結合体を生成する。
結合体=バインド情報||利用条件
次に、ハッシュ部704bは、結合体に対して、一方向性演算であるハッシュ演算Hashを施して、要約値であるハッシュ値を生成する。
ハッシュ値=Hash(結合体)=Hash(バインド情報||利用条件) (式3)
ここで、ハッシュ演算Hashについては、上述した通りである。
なお、(式3)で用いるハッシュ演算Hashは、上述した(式1)で用いるハッシュ演算Hashと、同一のものでなければならない。
次に、ハッシュ部704bは、生成した要約値としてのハッシュ値を演算部705bに対して出力する。
(5)演算部705b
演算部705bは、以下に示すようにして、ハッシュ部704bにより生成されたバインド情報及び利用条件を要約した要約値及び演算タイトル鍵に、演算部102bによる変換の逆変換として、排他的論理和演算XORを施して、復号タイトル鍵を生成する。
演算部705bは、制御部703bの制御により、入出力部708bから演算タイトル鍵621bを受け取る。次に、演算部705bは、ハッシュ部704bからハッシュ値を受け取る。
次に、演算部705bは、演算タイトル鍵及びハッシュ値に排他的論理和演算XORを施して、復号タイトル鍵を生成する。
復号タイトル鍵=演算タイトル鍵 XOR ハッシュ値
次に、演算部705bは、生成した復号タイトル鍵を、復号部706bに対して出力する。
(6)復号部706b
復号部706bは、制御部703bの制御により、入出力部708bから暗号化コンテンツを受け取る。また、復号部706bは、演算部705bから復号タイトル鍵を受け取る。次に、復号部706bは、受け取った復号タイトル鍵を復号鍵として用いて、受け取った暗号化コンテンツに復号アルゴリズムDを施して、コンテンツを生成する。
コンテンツ=D(復号タイトル鍵、暗号化コンテンツ)
ここで、D(A、B)は、復号鍵Aを用いて暗号化データBに復号アルゴリズムDを施して生成した復号文である。また、復号アルゴリズムDは、暗号化アルゴリズムEにより生成された暗号文を復号する。復号アルゴリズムDは、共通鍵暗号方式による復号アルゴリズムである。復号アルゴリズムDは、一例として、AESによるものである。
次に、復号部706bは、生成したコンテンツを、再生部707bに対して出力する。
(7)再生部707b、入力部709b及びモニタ710b
再生部707bは、復号部706bからコンテンツを受け取る。次に、受け取ったコンテンツを伸張して画像データ及び音声データを生成し、生成した画像データ及び音声データをモニタ710bに対して出力する。
入力部709bは、ユーザからデータの入力を受け付ける。具体的には、入力部709bは、ユーザから、ユーザに固有の固有情報であるユーザID及びパスワードの入力を受け付けることにより、取得する。次に、ユーザID及びパスワードを制御部703bに対して出力する。
モニタ710bは、再生部707bから画像データ及び音声データを受け取る。次に、画像データを映像として表示する。また、音声データを音声として出力する。また、モニタ710bは、制御部703bの制御により、情報を表示する。
(8)制御部703b
制御部703bは、送受信部701b、記憶部702b、ハッシュ部704b、演算部705b、復号部706b、再生部707b及び入出力部708bを制御する。
2.6 コンテンツ配信システム10bの動作
コンテンツ配信システム10bの動作について説明する。
(1)ログインとバインド情報の取得の動作
ここでは、図7に示すシーケンス図を用いて、再生装置700bがサーバ装置100bにログインし、サーバ装置100bからバインド情報を取得する動作について説明する。
入力部709bは、ユーザからユーザID及びパスワードの組の入力を受け付ける。次に、入力を受け付けたユーザID及びパスワードの組を制御部703bに対して出力する(ステップS1101)。
次に、制御部703bは、送受信部701bに対してユーザID及びパスワードの組を出力する。送受信部701bは、受け取ったユーザID及びパスワードの組を、ネットワーク20bを介して、サーバ装置100bに対して送信する(ステップS1102)。
送受信部106bは、再生装置700bから、ネットワーク20bを介して、ユーザID及びパスワードの組を受信する(ステップS1102)。
制御部105bは、ユーザID及びパスワードの組を受け取る。次に、受け取ったユーザID及びパスワードの組が、ユーザテーブル125bに含まれているか否かを判断する(ステップS1103)。含まれていない場合(ステップS1103で「NO」)、制御部105bは、受け取ったユーザID及びパスワードの組が、ユーザテーブル125bに登録されていないことを示すメッセージを生成する。次に、生成したメッセージを、送受信部106bを介して、再生装置700bに対して送信する(ステップS1104)。
含まれている場合(ステップS1103で「YES」)、制御部105bは、受け取ったユーザID及びパスワードの組が、ユーザテーブル125bに登録されていることを示すメッセージを生成する。次に、生成したメッセージを、送受信部106bを介して、再生装置700bに対して送信する(ステップS1105)。
送受信部701bは、サーバ装置100bから、ネットワーク20bを介して、メッセージを受信する(ステップS1104、S1105)。制御部703bは、受け取ったメッセージがユーザID及びパスワードの組が登録されていることを示すか否かを判断する(ステップS1106)。
受け取ったメッセージがユーザID及びパスワードの組が登録されていないことを示す場合(ステップS1106で「未登録」)、制御部703bは、ログインの処理を終了する。
受け取ったメッセージがユーザID及びパスワードの組が登録されていることを示す場合(ステップS1106で「登録有」)、入力部709bは、ユーザからバインド情報の要求の入力を受け付ける(ステップS1107)。
制御部703bは、バインド情報の要求を送受信部701bに対して出力する。送受信部701bは、受け取ったバインド情報の要求を、ネットワーク20bを介して、サーバ装置100bに対して送信する(ステップS1108)。
送受信部106bは、再生装置700bから、ネットワーク20bを介して、バインド情報の要求を受信する(ステップS1108)。
制御部105bは、受け取ったユーザIDに対応するバインド情報が記憶部101bのバインド情報テーブル126bに記憶されているか否かを判断する(ステップS1109)。
ユーザIDに対応するバインド情報がバインド情報テーブル126bに記憶されていないと判断する場合(ステップS1109で「無し」)、制御部105bは、次の式により、バインド情報を生成する。
バインド情報=Hash(ユーザID||パスワード) (ステップS1110)
次に、制御部105bは、ユーザIDに対応付けて、バインド情報をバインド情報テーブル126bに書き込む(ステップS1111)。
ユーザIDに対応するバインド情報がバインド情報テーブル126bに記憶されていると判断する場合(ステップS1109で「有り」)、制御部105bは、ユーザIDに対応するバインド情報をバインド情報テーブル126bから読み出す(ステップS1112)。
次に、制御部105bは、読み出したバインド情報又は生成したバインド情報を送受信部106b及びネットワーク20bを介して、再生装置700bに対して送信する(ステップS1113)。
送受信部701bは、バインド情報を受信し(ステップS1113)、受信したバインド情報を記憶部702bに書き込む(ステップS1114)。
これで、ログインとバインド情報の取得の動作が終了する。
(2)コンテンツのダウンロードの動作
ここでは、図8に示すシーケンス図を用いて、ダウンロード装置500bがサーバ装置100bから暗号化コンテンツ及びその他の情報を取得するダウンロードの動作について説明する。
ダウンロード装置500bは、サーバ装置100bに対してログインする。このとき、ダウンロード装置500bは、ユーザIDとパスワードをサーバ装置100bに対して送信する(ステップS1120)。なお、サーバ装置100bに対するログインの動作は、図7に示すステップS1101〜S1106と同様であるので、詳細の説明を省略する。
入力部502bは、ユーザからコンテンツの指定を受け付ける。具体的には、コンテンツIDの入力を受け付ける。ここで、コンテンツIDは、コンテンツを識別する識別情報である。次に、入力を受け付けたコンテンツIDを制御部504bに対して出力する(ステップS1121)。
制御部504bは、コンテンツの要求及びコンテンツIDを、送受信部501b及びネットワーク20bを介して、サーバ装置100bに対して送信する(ステップS1122)。
送受信部106bは、ダウンロード装置500bから、ネットワーク20bを介して、コンテンツの要求及びコンテンツIDを受信する。次に、コンテンツの要求及びコンテンツIDを制御部105bに対して出力する(ステップS1122)。
コンテンツの要求を受け取った場合、ハッシュ部103bは、制御部105bの制御により、受け取ったユーザIDに対応するバインド情報を、バインド情報テーブル126bから読み出す。次に、受け取ったコンテンツIDに対応する利用条件を記憶部101bから読み出す。次に、次の式により、バインド情報と利用条件からハッシュ値を算出する。次に、算出したハッシュ値を演算部102bに出力する。
ハッシュ値=Hash(バインド情報||利用条件) (ステップS1123)
次に、演算部102bは、制御部105bの制御により、受け取ったコンテンツIDに対応するタイトル鍵を記憶部101bから読み出す。また、ハッシュ部103bからハッシュ値を受け取る。次に、次の式により、タイトル鍵とハッシュ値から演算タイトル鍵を算出する。
演算タイトル鍵=タイトル鍵 XOR ハッシュ値 (ステップS1124)
次に、暗号化部104bは、制御部105bの制御により、受け取ったコンテンツIDに対応するコンテンツを記憶部101bから読み出す。受け取ったコンテンツIDに対応するタイトル鍵を記憶部101bから読み出す。次に、読み出したタイトル鍵を用いて、コンテンツに暗号化アルゴリズムEを施して、暗号化コンテンツを生成する。
暗号化コンテンツ=E(タイトル鍵、コンテンツ) (ステップS1125)。
次に、制御部105bは、送受信部106bに対して、記憶部101bに記憶され、受け取ったコンテンツIDに対応する利用条件、演算部102bにより生成された演算タイトル鍵、及び、暗号化部104bにより生成された暗号化コンテンツを、ネットワーク20bを介して、ダウンロード装置500bに対して送信するように、制御する(ステップS1126)。
送受信部501bは、サーバ装置100bから、ネットワーク20bを介して、利用条件、演算タイトル鍵及び暗号化コンテンツを受け取る(ステップS1126)。
入出力部505bは、利用条件、演算タイトル鍵及び暗号化コンテンツをメモリカード600bに対して出力する。入出力部602bは、利用条件、演算タイトル鍵及び暗号化コンテンツを受け取り、受け取った利用条件、演算タイトル鍵及び暗号化コンテンツをメモリ部603bに書き込む(ステップS1127)。
これで、コンテンツのダウンロードの動作を終了する。
(3)コンテンツの再生の動作
ここでは、図9に示すシーケンス図を用いて、再生装置700bがメモリカード600bに記憶されている暗号化コンテンツを復号し、再生する動作について説明する。
再生装置700bは、サーバ装置100bに対してログインし、ユーザIDに対応するバインド情報を取得する。このとき、再生装置700bは、ユーザIDとパスワードをサーバ装置100bに対して送信する(ステップS1140)。なお、ログイン及びバインド情報の取得についての詳細は、図7に示す通りである。
入力部709bは、ユーザからコンテンツの指定を受け付ける。具体的には、コンテンツIDの入力を受け付ける。次に、入力を受け付けたコンテンツIDを制御部703bに対して出力する(ステップS1141)。
次に、制御部703bは、入力を受け付けたコンテンツIDに対応する利用条件をメモリカード600bから読み出し、コンテンツIDにより識別されるコンテンツが読み出した利用条件を満たしているか否かを判断する(ステップS1142)。利用条件を満たしていない場合(ステップS1142で「NO」)、再生装置700bは、コンテンツの再生の動作を終了する。
利用条件を満たしている場合(ステップS1142で「YES」)、ハッシュ部704bは、制御部703bの制御により、記憶部702bからバインド情報を読み出す。次に、読み出したバインド情報と読み出した利用条件とをこの順序で結合して結合体を生成する。次に、生成した結合体にハッシュ演算を施して、ハッシュ値を算出し、算出したハッシュ値を演算部705bに出力する。
ハッシュ値=Hash(バインド情報||利用条件) (ステップS1143)
次に、演算部705bは、制御部703bの制御により、メモリカード600bから演算タイトル鍵を読み出し、ハッシュ部704bからハッシュ値を受け取る。次に、読み出した演算タイトル鍵と受け取ったハッシュ値とに排他的論理和演算XORを施して、復号タイトル鍵を生成し、生成した復号タイトル鍵を復号部706bに対して出力する。
復号タイトル鍵=演算タイトル鍵 XOR ハッシュ値 (ステップS1144)
次に、復号部706bは、制御部703bの制御により、演算部705bから復号タイトル鍵を受け取り、メモリカード600bから暗号化コンテンツ623bを読み出す。次に、受け取った復号タイトル鍵を用いて、読み出した暗号化コンテンツ623bを復号してコンテンツを生成し、生成したコンテンツを再生部707bに対して出力する。
コンテンツ=D(復号タイトル鍵、暗号化コンテンツ) (ステップS1145)
次に、再生部707bは、復号部706bからコンテンツを受け取る。次に、受け取ったコンテンツを伸張して画像データ及び音声データを生成する。モニタ710bは、画像データを映像として表示し、音声データを音声として出力する(ステップS1146)。
これで、再生装置700bによるコンテンツの再生の動作を終了する。
2.7 まとめ
以上説明したように、コンテンツ配信システム10bによると、ユーザに依存してコンテンツの使用を許諾することができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができる。
2.8 変形例
(1)上記において、サーバ装置100bは、ユーザID及びパスワードをこの順序で連結して、結合体を生成し、結合体に対して、一方向性演算であるハッシュ演算Hashを施して、バインド情報を生成している。しかし、バインド情報の生成方法は、これには、限定されない。バインド情報は、ユーザに固有に生成されるものであればよい。
サーバ装置100bは、生成部を含み、生成部は、ユーザに固有の固有情報であるユーザIDに基づいてバインド情報を生成するとしてもよい。
例えば、生成部は、ユーザIDを含むバインド情報を生成してもよい。
また、例えば、生成部は、ユーザIDを要約して、バインド情報を生成してもよい。具体的には、ユーザIDに一方向性演算であるハッシュ演算Hashを施してハッシュ値を生成し、生成したハッシュ値をバインド情報としてもよい。
サーバ装置100bは、ユーザIDとバインド情報とを対応付けて記憶する。再生装置700bは、ユーザIDに対応付けられたバインド情報を、サーバ装置100bから取得する。
(2)ダウンロード装置500b及び再生装置700bは、一台の記録再生装置として構成されていてもよい。
また、当該記録再生装置は、可搬型のメモリカード600bの装着に代えて、内蔵型のメモリデバイス及び制御用LSIが組になったメモリユニットを備えるとしてもよい。メモリデバイスは、データを記憶する。制御用LSIは、メモリデバイスに記憶されているデータの入出力を制御する。メモリユニットは、メモリカード600bと同様の構成を有する。
記録再生装置は、サーバ装置100bから利用条件、演算タイトル鍵及び暗号化コンテンツを受信し、受信した利用条件、演算タイトル鍵及び暗号化コンテンツをメモリユニットに書き込む。
また、記録再生装置は、サーバ装置100bから、バインド情報を取得し、メモリユニットから利用条件、演算タイトル鍵及び暗号化コンテンツを読み出す。次に、バインド情報、利用条件、演算タイトル鍵及び暗号化コンテンツを用いて、暗号化コンテンツを復号し、再生する。
3.実施の形態3
本発明に係る実施の形態3としてのコンテンツ配信システム10cについて、図面を参照しながら説明する。
3.1 コンテンツ配信システム10c
コンテンツ配信システム10cは、図10に示すように、コンテンツ制作装置100、鍵発行装置200、コンテンツ配信装置300、鍵配信装置400、端末装置500、記憶媒体装置600及び権利管理装置700から構成される。
コンテンツ制作装置100、鍵発行装置200、コンテンツ配信装置300、鍵配信装置400、端末装置500及び権利管理装置700は、インターネットを代表とするネットワークに接続されている。記憶媒体装置600は、可搬型のメモリカードであり、端末装置500に装着される。
以下において、コンテンツ制作装置100により制作されるコンテンツと、コンテンツ制作装置100により生成されるタイトル鍵とがコンテンツを再生する端末装置500に届くまでの配信経路について、その概要を説明する。
コンテンツ制作装置100は、制作したコンテンツをコンテンツ配信装置300に対して送信する。コンテンツ配信装置300は、タイトル鍵を用いて、受信したコンテンツを暗号化する。次に、コンテンツ配信装置300は、暗号化コンテンツを端末装置500に対して送信する。端末装置500は、暗号化コンテンツを受信し、受信した暗号化コンテンツを記憶媒体装置600に記録する。
次に、コンテンツ制作装置100は、タイトル鍵をコンテンツの暗号化に用いた後、当該タイトル鍵を鍵配信装置400に送信する。鍵配信装置400は、タイトル鍵をUR(Usage Rule、利用条件)と共に加工する。次に、鍵配信装置400は、加工されたタイトル鍵を、端末装置500を土管として経由して、記憶媒体装置600に送信する。記憶媒体装置600は、加工されたタイトル鍵を記録する。
端末装置500は、記憶媒体装置600に記録された暗号化コンテンツ、及び、加工されたタイトル鍵を読み出して、暗号化コンテンツを復号し、再生する。
鍵配信装置400は、アカウント情報を管理する。アカウント情報は、ユーザがサーバ装置にログインするための権利情報である。鍵配信装置400は、ユーザが所有しているコンテンツに関する情報及びコンテンツ番号を権利管理装置700に登録する。コンテンツを使用する権利がドメインに属する場合、鍵配信装置400は、Usage Ruleに埋め込まれてタイトル鍵計算に利用されるコンテンツ秘密番号を生成し、コンテンツ秘密番号を権利管理装置700に登録する。
ここで、ドメインは、コンテンツを管理する管理主体である。コンテンツを使用する権利がドメインに属する場合に、コンテンツを使用したいユーザは、その管理主体に対してコンテンツの使用の許諾を求める。
権利管理装置700は、端末装置500からコンテンツの再生のリクエストを受け、コンテンツの再生権利の有無を端末装置500に通知する。
3.2 コンテンツ制作装置100の詳細構成
図11に、コンテンツ制作装置100の詳細構成を示す。
図11に示すように、コンテンツ制作装置100は、制作装置秘密鍵・証明書受信部110、制作装置秘密鍵・証明書格納部111、素材格納部120、編集部121、タイトル鍵生成部130、タイトル鍵格納部131、暗号部140、コンテンツ格納部141、コンテンツ識別情報生成部150、署名部151、コンテンツ識別情報格納部152、コンテンツ登録部160、UR入力部170、UR格納部171、タイトル鍵・UR登録部180から構成される。
(制作装置秘密鍵・証明書受信部110)
制作装置秘密鍵・証明書受信部110は、鍵発行装置200から制作装置秘密鍵及び制作装置証明書のペアを受信する。
(制作装置秘密鍵・証明書格納部111)
制作装置秘密鍵・証明書格納部111は、制作装置秘密鍵・証明書受信部110により受信された制作装置秘密鍵及び制作装置証明書のペアを格納する。
(素材格納部120)
素材格納部120は、映画などのビデオ及びオーディオ等の素材を格納する。ビデオ及びオーディオの制作の方法については、説明を省略する。
(編集部121)
編集部121は、オペレータの操作により、素材格納部120に格納されている素材を編集する。この結果、ビデオ・オーディオデータが生成される。
(タイトル鍵生成部130)
タイトル鍵生成部130は、タイトル鍵を生成する。タイトル鍵生成部130は、例えば、乱数を生成し、生成した乱数をタイトル鍵とする。ここで、タイトル鍵は、一例として、128ビット長である。
(タイトル鍵格納部131)
タイトル鍵格納部131は、タイトル鍵生成部130により生成されたタイトル鍵を格納する。
(暗号部140)
暗号部140は、編集部121により編集されて生成されたビデオ・オーディオデータを、タイトル鍵格納部131に格納されているタイトル鍵を用いて暗号化して、コンテンツを生成する。以降、特に注釈がない限り、コンテンツは暗号化された状態を指す。
(コンテンツ格納部141)
コンテンツ格納部141は、暗号部140により生成されたコンテンツ(暗号化されたビデオ・オーディオデータ)を格納する。
(コンテンツ識別情報生成部150)
コンテンツ識別情報生成部150は、コンテンツ格納部141に格納されているコンテンツからコンテンツ識別情報を生成する。
コンテンツ識別情報生成部150は、例えば、コンテンツを複数の部分に分割し、それぞれの部分のハッシュ値を演算する。次に、得られた複数のハッシュ値を含むハッシュテーブルを生成する。さらに、生成したハッシュテーブルのハッシュ値を演算して、このハッシュ値をコンテンツを識別するためのコンテンツ識別情報としてもよい。
あるいは、コンテンツ識別情報生成部150は、生成したハッシュテーブルを、鍵発行装置200に送信する。鍵発行装置200は、受信したハッシュテーブルにユニークな値を割り当て、ユニークな値をハッシュテーブルデータに付加する。さらに、ユニークな値が付加されたハッシュテーブルに対してデジタル署名を施して、署名データを生成する。生成した署名データをハッシュテーブルに付加する。このように、ハッシュテーブルに署名データを付加することで、前記ユニークな値の改竄対策とする。次に、ハッシュテーブルをコンテンツ制作装置100に送信する。コンテンツ識別情報生成部150は、ハッシュテーブルを受信し、ハッシュテーブルからユニークな値を抽出し、抽出したユニークな値を前記コンテンツ識別情報としてもよい。
(署名部151)
署名部151は、コンテンツ識別情報生成部150により生成されたコンテンツ識別情報に対して、制作装置秘密鍵・証明書格納部111に格納されている制作装置秘密鍵を用いて、デジタル署名を施して、署名データを生成する。次に、生成した署名データをコンテンツ識別情報に付加する。このようにして、コンテンツ識別情報を改竄から保護することができる。なお、コンテンツ識別情報生成部150の説明において、例示したように、鍵発行装置200が署名データを付与する場合には、署名部151による署名データの付与は冗長となるので、署名部151による署名データの付与を実施しなくてもよい。
(コンテンツ識別情報格納部152)
コンテンツ識別情報格納部152は、署名部151及びコンテンツ識別情報生成部150により生成されたコンテンツ識別情報を格納する。
(コンテンツ登録部160)
コンテンツ登録部160は、コンテンツ格納部141に格納されているコンテンツ、及び、コンテンツ識別情報生成部150による生成の過程で生成したハッシュテーブルを、一つのコンテンツとして、コンテンツ配信装置300に送信し、コンテンツ配信装置300に当該コンテンツを登録させる。なお、ハッシュテーブルはなくてもよい。
(UR入力部170)
UR入力部170は、オペレータからURの入力を受け付ける。ここで、URは、コンテンツが記憶媒体装置600に記録されている状態で、そのコンテンツの再生や移動の条件を示す情報である。
(UR格納部171)
UR格納部171は、UR入力部170により入力を受け付けたURを格納する。
(タイトル鍵・UR登録部180)
タイトル鍵・UR登録部180は、タイトル鍵格納部131から格納されているタイトル鍵を読み出し、UR格納部171から格納されているURを読み出す。次に、タイトル鍵及びURを合わせて、鍵配信装置400に送信し、鍵配信装置400にタイトル鍵及びURを登録させる。
3.3 コンテンツ制作装置100における動作
コンテンツ制作装置100における動作について、図12に示すフローチャートを用いて説明する。
制作装置秘密鍵・証明書受信部110は、鍵発行装置200から制作装置秘密鍵及び制作装置証明書のペアを受信し、制作装置秘密鍵・証明書格納部111は、制作装置秘密鍵及び制作装置証明書のペアを格納する(S101)。
編集部121は、素材格納部120が格納している素材を編集して、ビデオ・オーディオデータを生成する(S102)。
タイトル鍵生成部130は、タイトル鍵を生成し、生成したタイトル鍵をタイトル鍵格納部131に格納する(S103)。
暗号部140は、編集部121により編集して生成されたビデオ・オーディオデータを、タイトル鍵格納部131に格納されているタイトル鍵を用いて暗号化し、生成したコンテンツをコンテンツ格納部141に格納する(S104)。
コンテンツ識別情報生成部150は、コンテンツ格納部141が格納しているコンテンツを読み出し、コンテンツに一意のコンテンツ識別情報を生成する。さらに、署名部151は、コンテンツ識別情報生成部150が生成したコンテンツ識別情報にデジタル署名を施して、署名データを生成し、署名データをコンテンツ識別情報に付加し、コンテンツ識別情報をコンテンツ識別情報格納部152に格納する(S106)。
コンテンツ登録部160は、コンテンツ格納部141に格納されているコンテンツをコンテンツ配信装置300に送信し、コンテンツ配信装置300にコンテンツを登録させる(S107)。
UR入力部170は、コンテンツ制作装置100のオペレータから、コンテンツの再生や移動等に関するルールであるURの入力を受け付け、入力されたURをUR格納部171に格納する(S108)。
タイトル鍵・UR登録部180は、タイトル鍵格納部131に格納されているタイトル鍵、及び、UR格納部171に格納されているURを組みにして、鍵配信装置400に送信し、タイトル鍵及びURを鍵配信装置400に登録させる(S109)。
3.4 鍵発行装置200の詳細構成
図13に、鍵発行装置200の詳細構成を示す。
図13に示すように、鍵発行装置200は、ルート鍵ペア生成部210、ルート鍵ペア格納部211、ルート公開鍵送信部212、鍵配信装置鍵ペア生成部220、証明書生成部221、鍵配信装置秘密鍵・証明書格納部222、鍵配信装置秘密鍵・証明書送信部223、コンテンツ制作装置鍵ペア生成部230、証明書生成部231、コンテンツ制作装置秘密鍵・証明書格納部232、コンテンツ制作装置秘密鍵・証明書送信部233、端末装置鍵ペア生成部240、証明書生成部241、端末装置秘密鍵・証明書格納部242、端末装置秘密鍵・証明書送信部243、記憶媒体装置鍵ペア生成部250、証明書生成部251、記憶媒体装置秘密鍵・証明書格納部252、記憶媒体装置秘密鍵・証明書送信部253、権利管理装置番号生成・格納部260、権利管理装置番号送信部261から構成される。
(ルート鍵ペア生成部210)
ルート鍵ペア生成部210は、鍵発行装置200のルート公開鍵及びルート秘密鍵の鍵ペアを生成する。ルート公開鍵及びルート秘密鍵の鍵ペアは、コンテンツ配信システム10cにおけるセキュリティの根幹となる。
(ルート鍵ペア格納部211)
ルート鍵ペア格納部211は、ルート鍵ペア生成部210により生成されたルート公開鍵及びルート秘密鍵の鍵ペアを格納する。
(ルート公開鍵送信部212)
ルート公開鍵送信部212は、ルート鍵ペア格納部211に格納されているルート公開鍵を、鍵配信装置400、端末装置500及び記憶媒体装置600に送信する。
(鍵配信装置鍵ペア生成部220)
鍵配信装置鍵ペア生成部220は、鍵配信装置400に割り当てられる鍵配信装置公開鍵及び鍵配信装置秘密鍵からなる鍵配信装置鍵ペアを生成する。
(証明書生成部221)
証明書生成部221は、ルート鍵ペア格納部211が格納しているルート秘密鍵を用いて、鍵配信装置鍵ペア生成部220が生成した鍵配信装置公開鍵及びその他のデータにデジタル署名を施して、署名データを生成する。次に、生成した署名データを鍵配信装置公開鍵及びその他のデータに付与し、鍵配信装置証明書を生成する。
鍵配信装置証明書の一例を図14(a)に示す。図14(a)に示す鍵配信装置証明書C101は、鍵配信装置ID(C102)、鍵配信装置公開鍵C103及び署名データC104を含んでいる。
(鍵配信装置秘密鍵・証明書格納部222)
鍵配信装置秘密鍵・証明書格納部222は、鍵配信装置鍵ペア生成部220により生成された鍵配信装置秘密鍵と、証明書生成部221により生成された鍵配信装置証明書をペアとして格納する。
(鍵配信装置秘密鍵・証明書送信部223)
鍵配信装置秘密鍵・証明書送信部223は、鍵配信装置秘密鍵・証明書格納部222に格納されている鍵配信装置秘密鍵と鍵配信装置証明書のペアを鍵配信装置400に対して送信する。
(コンテンツ制作装置鍵ペア生成部230)
コンテンツ制作装置鍵ペア生成部230は、コンテンツ制作装置100に割り当てられるコンテンツ制作装置公開鍵及びコンテンツ制作装置秘密鍵からなるコンテンツ制作装置鍵ペアを生成する。
(証明書生成部231)
証明書生成部231は、ルート鍵ペア格納部211に格納されているルート秘密鍵を用いて、コンテンツ制作装置鍵ペア生成部230により生成されたコンテンツ制作装置公開鍵及びその他のデータにデジタル署名を施して、署名データを生成する。次に、コンテンツ制作装置公開鍵及びその他のデータに署名を付与し、コンテンツ制作装置証明書を生成する。
コンテンツ制作装置証明書の一例を図14(b)に示す。図14(b)に示すコンテンツ制作装置証明書C106は、コンテンツ制作装置ID(C107)、コンテンツ制作装置公開鍵C108及び署名データC109を含んでいる。
(コンテンツ制作装置秘密鍵・証明書格納部232)
コンテンツ制作装置秘密鍵・証明書格納部232は、コンテンツ制作装置鍵ペア生成部230により生成されたコンテンツ制作装置秘密鍵と、証明書生成部231により生成されたコンテンツ制作装置証明書をペアとして格納する。
(コンテンツ制作装置秘密鍵・証明書送信部233)
コンテンツ制作装置秘密鍵・証明書送信部233は、コンテンツ制作装置秘密鍵・証明書格納部232に格納されているコンテンツ制作装置秘密鍵とコンテンツ制作装置証明書のペアをコンテンツ制作装置100に対して送信する。
(端末装置鍵ペア生成部240)
端末装置鍵ペア生成部240は、端末装置500に割り当てられる端末装置公開鍵及び端末装置秘密鍵からなる端末装置鍵ペアを生成する。
(証明書生成部241)
証明書生成部241は、ルート鍵ペア格納部211に格納されているルート秘密鍵を用いて、端末装置鍵ペア生成部240により生成された端末装置公開鍵及びその他のデータにデジタル署名を施して、署名データを生成する。次に、端末装置公開鍵及びその他のデータに署名データを付与し、端末装置証明書を生成する。
図14(c)に端末装置証明書の一例を示す。図14(c)に示す端末装置証明書C111は、端末装置ID(C112)、端末装置公開鍵C113及び署名データC114を含んでいる。
(端末装置秘密鍵・証明書格納部242)
端末装置秘密鍵・証明書格納部242は、端末装置鍵ペア生成部240により生成された端末装置秘密鍵と、証明書生成部241により生成された端末装置証明書をペアとして格納する。
(端末装置秘密鍵・証明書送信部243)
端末装置秘密鍵・証明書送信部243は、端末装置秘密鍵・証明書格納部242に格納されている端末装置秘密鍵と端末装置証明書のペアを端末装置500に対して送信する。
(記憶媒体装置鍵ペア生成部250)
記憶媒体装置鍵ペア生成部250は、記憶媒体装置600に割り当てられる記憶媒体装置公開鍵及び記憶媒体装置秘密鍵からなる記憶媒体装置鍵ペアを生成する。
(証明書生成部251)
証明書生成部251は、ルート鍵ペア格納部211に格納されているルート秘密鍵を用いて、記憶媒体装置鍵ペア生成部250により生成された記憶媒体装置公開鍵及びその他のデータにデジタル署名を施して、署名データを生成する。次に、署名データを記憶媒体装置公開鍵及びその他のデータに付与し、記憶媒体装置証明書を生成する。
図14(d)に記憶媒体装置証明書の一例を示す。図14(d)に示す記憶媒体装置証明書C116は、記憶媒体装置ID(C117)、記憶媒体装置公開鍵C118及び署名データC119を含んでいる。
(記憶媒体装置秘密鍵・証明書格納部252)
記憶媒体装置秘密鍵・証明書格納部252は、記憶媒体装置鍵ペア生成部250により生成された記憶媒体装置秘密鍵と、証明書生成部251により生成された記憶媒体装置証明書とをペアとして格納する。
(記憶媒体装置秘密鍵・証明書送信部253)
記憶媒体装置秘密鍵・証明書送信部253は、記憶媒体装置秘密鍵・証明書格納部252に格納されている記憶媒体装置秘密鍵及び記憶媒体装置証明書のペアを記憶媒体装置600に対して、出力する。
(権利管理装置番号生成・格納部260)
権利管理装置番号生成・格納部260は、権利管理装置700に割り当てられる一意の権利管理装置番号を生成し、生成した権利管理装置番号を格納する。
(権利管理装置番号送信部261)
権利管理装置番号送信部261は、権利管理装置番号生成・格納部260に格納されている権利管理装置番号の一つを、権利管理装置700のリクエストに応じて、権利管理装置700に対して送信する。
3.5 鍵発行装置200による鍵発行の動作
鍵発行装置200による鍵発行の動作について、図15に示すフローチャートを用いて説明する。
鍵発行装置200は、ルート公開鍵及びルート秘密鍵のルート鍵ペアを生成し、ルート公開鍵及びルート秘密鍵のルート鍵ペアを格納する。さらに、要求に応じて、ルート公開鍵を鍵配信装置400、端末装置500に送信し、ルート公開鍵を記憶媒体装置600に出力する(S201)。
鍵発行装置200は、鍵配信装置公開鍵及び鍵配信装置秘密鍵の鍵ペアを生成し、鍵配信装置公開鍵及び鍵配信装置秘密鍵の鍵ペアを格納し、鍵配信装置公開鍵及び鍵配信装置秘密鍵の鍵ペアを鍵配信装置400に送信する(S202)。
鍵発行装置200は、コンテンツ制作装置公開鍵及びコンテンツ制作装置秘密鍵の鍵ペアを生成し、コンテンツ制作装置公開鍵及びコンテンツ制作装置秘密鍵の鍵ペアを格納し、コンテンツ制作装置公開鍵及びコンテンツ制作装置秘密鍵の鍵ペアをコンテンツ制作装置100に送信する(S203)。
鍵発行装置200は、端末装置公開鍵及び端末装置秘密鍵の鍵ペアを生成し、端末装置公開鍵及び端末装置秘密鍵の鍵ペアを格納し、端末装置公開鍵及び端末装置秘密鍵の鍵ペアを端末装置500に送信する(S204)。
鍵発行装置200は、記憶媒体装置公開鍵及び記憶媒体装置秘密鍵の鍵ペアを生成し、記憶媒体装置公開鍵及び記憶媒体装置秘密鍵の鍵ペアを格納し、記憶媒体装置公開鍵及び記憶媒体装置秘密鍵の鍵ペアを記憶媒体装置600に送信する(S205)。
鍵発行装置200は、権利管理装置700に割り当てる権利管理装置番号を生成し、権利管理装置番号を格納し、権利管理装置700のリクエストに応じて権利管理装置番号を権利管理装置700に送信する(S206)。
3.6 コンテンツ配信装置300の詳細構成
図16にコンテンツ配信装置300の詳細構成を示す。
図16に示すように、コンテンツ配信装置300は、コンテンツ受信部310、コンテンツ格納部320、配信依頼受信部330及びコンテンツ配信部340から構成される。
(コンテンツ受信部310)
コンテンツ受信部310は、コンテンツ制作装置100からコンテンツを受け取る。次に、受け取ったコンテンツをコンテンツ格納部320に書き込む。
(コンテンツ格納部320)
コンテンツ格納部320は、一例として、ハードディスクユニットから構成される。コンテンツ格納部320は、コンテンツ受信部310が受け取ったコンテンツを格納するための領域を備えている。
(配信依頼受信部330)
配信依頼受信部330は、端末装置500からコンテンツの配信依頼データを受け取る。配信依頼データを受け取ると、配信依頼データにより指定されたコンテンツの配信を、コンテンツ配信部340に指示する。
図17に、配信依頼データのデータ構造の一例を示す。図17に示す配信依頼データC121は、コンテンツ著作権者ID(C122)及びコンテンツ識別情報C123を含んでいる。コンテンツ著作権者ID(C122)は、コンテンツの著作権を有する者を識別する識別情報である。コンテンツ識別情報C123は、コンテンツを識別する識別情報である。
(コンテンツ配信部340)
コンテンツ配信部340は、配信依頼受信部330からコンテンツの配信の指示を受け取る。配信の指示を受け取ると、コンテンツ配信部340は、配信依頼データに含まれるコンテンツ識別情報により識別されるコンテンツをコンテンツ格納部320から検索する。次に、当該コンテンツを発見すると、発見したコンテンツを端末装置500に対して、配信する。
3.7 コンテンツ配信装置300によるコンテンツの配信の動作
コンテンツ配信装置300によるコンテンツの配信の動作について、図18に示すフローチャートを用いて説明する。
コンテンツ配信装置300は、コンテンツ制作装置100からコンテンツを受け取り、受け取ったコンテンツをコンテンツ格納部320に格納する(S301)。
コンテンツ配信装置300は、端末装置500から配信依頼データを受け取る(S302)。
コンテンツ配信装置300は、配信依頼データを受け取ると、配信依頼データに含まれるコンテンツ識別情報に対応するコンテンツをコンテンツ格納部320から検索する。対応するコンテンツを発見した場合、当該コンテンツを依頼元の端末装置500に配信する。発見できなかった場合は、依頼元の端末装置500に発見できなかった旨を送信する(S303)。
3.8 鍵配信装置400の詳細構成
図19に鍵配信装置400の詳細構成を示す。
図19に示すように、鍵配信装置400は、権利管理装置番号受信・格納部405、ルート公開鍵受信部410、ルート公開鍵格納部411、鍵配信装置秘密鍵・証明書受信部414、鍵配信装置秘密鍵・証明書格納部415、タイトル鍵・UR受信部421、タイトル鍵・コンテンツ秘密番号・UR生成格納部422、コンテンツ登録依頼部423、相互認証部430、タイトル鍵演算部440、暗号復号部441、記憶媒体装置ID受信部450、MAC演算部451、第1アカウント発行部460、アカウント管理部461、第2アカウント発行依頼部462、アカウント制御部470及び視聴権登録依頼部471から構成されている。
(権利管理装置番号受信・格納部405)
権利管理装置番号受信・格納部405は、権利管理装置700から権利管理装置番号を受信し、受信した権利管理装置番号を格納する。
(ルート公開鍵受信部410)
ルート公開鍵受信部410は、鍵発行装置200からルート公開鍵を受信し、受信したルート公開鍵をルート公開鍵格納部411に書き込む。
(ルート公開鍵格納部411)
ルート公開鍵格納部411は、ルート公開鍵受信部410により受信されたルート公開鍵を格納する。
(鍵配信装置秘密鍵・証明書受信部414)
鍵配信装置秘密鍵・証明書受信部414は、鍵発行装置200から鍵配信装置秘密鍵及び鍵配信装置証明書のペアを受信し、受信した鍵配信装置秘密鍵及び鍵配信装置証明書のペアを鍵配信装置秘密鍵・証明書格納部415に書き込む。
(鍵配信装置秘密鍵・証明書格納部415)
鍵配信装置秘密鍵・証明書格納部415は、鍵配信装置秘密鍵・証明書受信部414により受信された鍵配信装置秘密鍵及び鍵配信装置証明書のペアを格納する。
(タイトル鍵・UR受信部421)
タイトル鍵・UR受信部421は、コンテンツ制作装置100からタイトル鍵及びURを受信し、受信したタイトル鍵及びURをタイトル鍵・コンテンツ秘密番号・UR生成格納部422に書き込む。
(タイトル鍵・コンテンツ秘密番号・UR生成格納部422)
タイトル鍵・コンテンツ秘密番号・UR生成格納部422は、タイトル鍵・UR受信部421により受信されたタイトル鍵及びURを格納する。
図20にURの一例を示す。図20に示すUR(1410)は、出力制御情報領域1411、ドメイン識別情報領域1412、コンテンツ秘密番号領域1413、権利管理装置番号領域1414及びコンテンツ番号領域1415から構成されている。
出力制御情報領域1411には、コンテンツの出力方法に関する規定が含まれる。出力方法に関する規定は、例えば、MOVEの可否、コピーの可否、コピー回数、デジタル出力の可否、アナログ出力の可否などである。ドメイン識別情報領域1412には、コンテンツの権利がドメインに属することを示すフラグ、又は、ドメインに属さないことを示すフラグが含まれる。権利がドメインに属するコンテンツを、ドメインコンテンツと呼ぶ。また、権利がドメインに属さないコンテンツを非ドメインコンテンツと呼ぶ。ドメインに属さない場合(これを非ドメインと呼ぶ)、ドメインの管理主体による管理から独立してコンテンツの再生が可能である。コンテンツ秘密番号領域1413には、コンテンツがドメインに属する場合には、コンテンツ秘密番号が書き込まれる。コンテンツがドメインに属さない場合には、ゼロ埋めされたデータが書き込まれる。権利管理装置番号領域1414には、権利管理装置番号が書き込まれる。コンテンツ番号領域には、コンテンツを識別するコンテンツ識別情報(コンテンツ番号)が書き込まれる。
また、タイトル鍵・コンテンツ秘密番号・UR生成格納部422は、タイトル鍵及びURと対として、コンテンツ秘密番号を生成し、生成したコンテンツ秘密番号を内部に格納する。コンテンツ秘密番号として、例えば128ビットの乱数を生成してもよい。128ビットの乱数の場合は、乱数発生器を用いて乱数を発生させることが可能である。
また、タイトル鍵・コンテンツ秘密番号・UR生成格納部422は、端末装置500から、格納しているURの要求を受けると、URのドメイン識別情報領域1412に、ユーザが取得したコンテンツの権利に応じてドメインコンテンツか非ドメインコンテンツを示すフラグを書き込む。URのコンテンツ秘密番号領域1413に、ゼロ埋めされたデータを書き込む。URの権利管理装置番号領域1414に、権利管理装置番号受信・格納部405に格納されている権利管理装置番号を上書きする。URのコンテンツ番号領域1415に、コンテンツ登録依頼部423によりコンテンツの登録が行われたときに発行されるコンテンツ番号を上書きする。次に、URを端末装置500に送信する。
(コンテンツ登録依頼部423)
コンテンツ登録依頼部423は、タイトル鍵・コンテンツ秘密番号・UR生成格納部422に、タイトル鍵、コンテンツ秘密番号、URの組が追加で格納されると、権利管理装置700に対して、コンテンツの登録をするよう依頼する。コンテンツ登録依頼部423は、コンテンツを識別するコンテンツ番号(例えば、C01など)を生成し、コンテンツ番号と紐づけて、コンテンツ秘密番号を権利管理装置700に送信する。
(相互認証部430)
相互認証部430は、端末装置500又は記憶媒体装置600との間で、相互認証を行い、端末装置500又は記憶媒体装置600と共通鍵を共有する。相互認証については、後述する。
(タイトル鍵演算部440)
タイトル鍵演算部440は、タイトル鍵・コンテンツ秘密番号・UR生成格納部422から、格納されているタイトル鍵とURを取得する。次に、URにハッシュ演算を施し、得られたハッシュ値とタイトル鍵とにXORなどの可逆の変換を施して、演算タイトル鍵を生成する。
演算タイトル鍵=タイトル鍵 XOR Hash(UR) (式4)
なお、(式4)で用いるHash演算は、後述する(式7)及び(式8)で用いるHash演算と同一でなければならない。
次に、タイトル鍵演算部440は、演算タイトル鍵を、暗号復号部441を経由して、記憶媒体装置600に送信する。
このとき、コンテンツがドメインコンテンツか非ドメインコンテンツであるかによってタイトル鍵演算に用いるURの一部を変更する。
ドメインコンテンツの場合、UR1410のドメイン識別情報領域1412には、「1」(ドメインコンテンツを示す)を書き込み、UR1410のコンテンツ秘密番号領域1413には、タイトル鍵・コンテンツ秘密番号・UR生成格納部422に格納され、指定されたコンテンツに関するコンテンツ秘密番号を上書きする。
一方、非ドメインコンテンツの場合、UR1410のドメイン識別情報領域1412には、「0」(非ドメインコンテンツを示す)を書き込み、UR1410のコンテンツ秘密番号領域1413には、ゼロを埋めておく。なお、ゼロで埋めるとしたが、ゼロでなくて、ゼロ以外の固定の値であってもよいし、何らかのルールで決まる値、例えば、コンテンツの番号から計算される値を埋めるとしてよい。
(暗号復号部441)
暗号復号部441は、相互認証部430による相互認証のプロセスで生成された共通鍵を用いて、タイトル鍵演算部440が生成した演算タイトル鍵を共通鍵で暗号化して、記憶媒体装置600に送信する。
(記憶媒体装置ID受信部450)
記憶媒体装置ID受信部450は、端末装置500から暗号復号部441を経由して、書込み先となる記憶媒体装置を識別する記憶媒体装置IDを受け取る。具体的には、記憶媒体装置IDが鍵配信装置400に届いた時点では、記憶媒体装置IDは共通鍵で暗号化されているが、記憶媒体装置ID受信部450に渡る前に、暗号復号部441において共通鍵による復号を行うことで、暗号化された記憶媒体装置IDは、元の記憶媒体装置IDとなる。
(MAC演算部451)
MAC演算部451は、タイトル鍵・コンテンツ秘密番号・UR生成格納部422に格納されているタイトル鍵と、記憶媒体装置ID受信部450により受信された記憶媒体装置IDを用いて、MAC演算により、MAC(Message Authentication Code)値を計算し、計算したMAC値を端末装置500に送信する。
MAC演算部451は、MAC演算の一例として、以下の式により、タイトル鍵と記憶媒体装置IDとをこの順序で結合して、結合体を生成し、生成した結合体に対して、一方向性演算であるハッシュ演算Hashを施して、MAC値を算出する。
MAC値=Hash(タイトル鍵||記憶媒体装置ID) (式5)
なお、(式5)で用いるHash演算は、後述する(式9)で用いるHash演算と同一でなければならない。
(第1アカウント発行部460)
第1アカウント発行部460は、端末装置500からのリクエストに応じて、アカウント名とパスワードの組を生成する。次に、生成したアカウント名とパスワードの組をアカウント管理部461に記録させる。次に、アカウント名とパスワードの組を端末装置500に送信する。
なお、端末装置500から、アカウント名とパスワードの組の候補を受け取り、アカウント管理部461に記録された既存のアカウントの中に同一のアカウント名がなければ、受け取ったアカウント名とパスワードの組の候補を正式なアカウントとして承認し、アカウント管理部461に追加してもよい。
なお、アカウントは、端末装置500からのリクエストにより発行するとしているが、端末装置500からのリクエストでなくてもよい。例えば、タブレットデバイス、スマートフォン、フィーチャーフォン、TV、Blu−rayプレーヤ、DVDプレーヤといったデバイスにインストールされているアプリケーションや、スマートフォン、フィーチャーフォン、TV、Blu−rayプレーヤ、DVDプレーヤといったデバイスにインストールされているブラウザがリクエストを送信してもよい
(アカウント管理部461)
アカウント管理部461は、第1アカウント発行部460から受け取ったアカウント名とパスワードの組を格納する。この組を第1アカウントと呼ぶ。
(第2アカウント発行依頼部462)
第2アカウント発行依頼部462は、第1アカウント発行部460が第1アカウントを新規に発行すると、権利管理装置700に第2アカウントの発行を依頼する。次に、権利管理装置700から第2アカウントを受信する。第2アカウントは、アカウント名とパスワードの組を含む。第2アカウントを受信すると、受信した第2アカウントを、アカウント管理部461に格納された第1アカウントと組で格納する。次に、第1アカウント発行部460に依頼して、端末装置500に新たに発行された第2アカウントを送信する。
(アカウント制御部470)
アカウント制御部470は、端末装置500からアカウント名及びパスワードの組の第1アカウントを受信すると、アカウント管理部461に格納されている第1アカウントと一致するか確認し、一致する場合、引き続き、タイトル鍵、及び、URのダウンロード処理を継続する。一致しない場合、タイトル鍵、及び、URのダウンロード処理を中止する。
(視聴権登録依頼部471)
視聴権登録依頼部471は、ある第1アカウントに関して、コンテンツの取得が発生すると、コンテンツ及び第1アカウントに対応する第2アカウントを権利管理装置700に送信し、視聴権登録を依頼する。
3.9 相互認証の手順
装置間の相互認証の手順について説明する。
鍵配信装置400の相互認証部430は、一例として、図21に示す認証部A100である。また、後述する端末装置500の相互認証部530又は記憶媒体装置600の相互認証部620は、一例として、図21に示す認証部B100である。
認証部A100は、図21に示すように、乱数生成部A10、復号部A20、乱数比較部A30及び暗号化部A40から構成される。また、認証部B100は、図21に示すように、暗号化部B10、乱数生成部B20、復号部B30及び乱数比較部B40から構成される。
相互認証の手順は、以下の通りである。
(a)乱数生成部A10は、乱数R1を生成する。生成した乱数R1を、認証部B100の暗号化部B10に送信する。
(b)暗号化部B10は、乱数R1を受信し、受信した乱数R1を固有鍵Kscを用いて暗号化して暗号文(E(Ksc、R1))を生成し、暗号文(E(Ksc、R1))を認証部A100の復号部A20に送信する。
(c)認証部A100の復号部A20は、固有鍵Kscを用いて受信した暗号文(E(Ksc、R1))を復号する。
復号文=D(Ksc、(E(Ksc、R1)))
(d)認証部A100の乱数比較部A30は、(c)で復号した結果と(a)で生成した乱数が一致するか否かを確認する。一致すれば、認証部A100は、認証部B100を正規のモジュールであると決定する。
(e)認証部B100の乱数生成部B20は、乱数R2を生成し、生成した乱数R2を、認証部A100の暗号化部A40に送信する。
(f)認証部A100の暗号化部A40は、乱数R2を受け取り、乱数R2を固有鍵Kscを用いて暗号化して暗号文(E(Ksc、R2))を生成し、暗号文(E(Ksc、R2))を認証部B100の復号部B30に送信する。
(g)認証部B100の復号部B30は、固有鍵Kscを用いて受信した暗号文E(Ksc、R2)を復号して、復号文を生成する。
復号文=D(Ksc、(E(Ksc、R2)))
(h)認証部B100の乱数比較部B40は、(g)で復号した結果と(e)で生成した乱数が一致するか否かを確認する。一致する場合に、認証部B100は、認証部A100が正規モジュールであると決定する。
(i)認証部A100及び認証部B100は、それぞれ、乱数R1と乱数R2とを結合して結合体R1||R2を生成する。次に、生成した結合体に対して、Kscを用いた一方向性演算Hashを施して得られた値を共通鍵とする。
共通鍵=Hash(Ksc、R1||R2) (式6)
ここで、Hash(A、B)は、鍵Aを用いて、データBに対してハッシュ演算を施して得られたハッシュ値である。このハッシュ演算は、鍵付きハッシュ演算と呼ばれる。
また、認証部A100及び認証部B100のそれぞれで用いられるHash演算は、同一でなければならない。
なお、ここで示した相互認証の手順は一例であり、他の相互認証方式を用いてもよい。
3.10 鍵配信装置400の動作
鍵配信装置400の動作について、図22に示すフローチャートを用いて説明する。
鍵配信装置400は、鍵発行装置200からルート公開鍵並びに鍵配信装置秘密鍵及び鍵配信装置証明書のペアを受信し、ルート公開鍵並びに鍵配信装置秘密鍵及び鍵配信装置証明書のペアを格納する(S401)。
次に、鍵配信装置400は、コンテンツ制作装置100から、タイトル鍵及びURを受信し、受信したタイトル鍵及びURを格納する。このタイミングでは、図20に示すUR1410のドメイン識別情報領域1412に格納されるフラグ(コンテンツがドメインに属するか、非ドメインに属するかを示す)が確定していなくてもよいし、確定していてもよい。タイトル鍵及びURを格納する時点では、ドメイン及び非ドメインの両方が指定可能であり、鍵配信装置400がタイトル鍵及びUR1410を配信するときに、コンテンツがドメインに属するか、または非ドメインに属するかを確定してもよい(S402)。
鍵配信装置400は、端末装置500から、アカウント発行依頼を受け取ると、第1アカウント発行部460は、アカウント名とパスワードの組からなる第1アカウントを発行し、発行した第1アカウントをアカウント管理部461に格納する。第1アカウントがアカウント管理部461に格納されると、第2アカウント発行依頼部462は、権利管理装置700にアカウント発行依頼を送る。次に、発行されたアカウント名とパスワードの組からなる第2アカウントを受け取る。アカウント管理部461は、発行された第1アカウントと発行された第2アカウントを関連付けて格納する。第1アカウント発行部460は、さらに発行された第2アカウントを端末装置500に送信する(S403)。
鍵配信装置400は、端末装置500又は記憶媒体装置600から、タイトル鍵の送信要求を受け取った場合、以下に示すS404、S405、S406、S407及びS408の処理を行う。
鍵配信装置400は、端末装置500から、発行済みの第1アカウントのアカウント名及びパスワードを受け取る。鍵配信装置400は、受け取った第1アカウントの情報が、アカウント管理部461の格納する情報と一致するか確認し、一致すれば、以降の処理を継続する。端末装置500は、さらにTVやタブレット機器といった表示デバイスにコンテンツ一覧を表示し、ユーザにどのコンテンツをダウンロードするか選択させる。コンテンツが選択されると、端末装置500は、そのコンテンツのタイトル鍵をダウンロードするために、鍵配信装置400にコンテンツを指定して、タイトル鍵の配信を依頼する(S404)。
相互認証部430が端末装置500又は記憶媒体装置600と相互認証を実行し、端末装置500又は記憶媒体装置600が正規に機器であるかを確認し、正規の機器であると決定された場合に、両方の装置において、共通鍵を生成する。以降の通信では、共通鍵を用いて、記憶媒体装置600と鍵配信装置400との間で、送信するデータを暗号した上で送信し、暗号化されたデータを受信すると共通鍵で復号する。これにより、送受信されるデータが保護される(S405)。
タイトル鍵演算部440は、タイトル鍵・コンテンツ秘密番号・UR生成格納部422に格納されているタイトル鍵及びURを取得する。コンテンツが非ドメインコンテンツの場合、ドメイン識別情報領域1412に「0」(非ドメインコンテンツを示す)を格納し、コンテンツ秘密番号領域1413にゼロ埋めして、URを加工する。一方、コンテンツがドメインコンテンツの場合、ドメイン識別情報領域1412に、「1」(ドメインコンテンツを示す)を格納し、コンテンツ秘密番号領域1413に、タイトル鍵・コンテンツ秘密番号・UR生成格納部422が格納している本コンテンツのコンテンツ秘密番号で上書きして、URを加工する。次に、加工されたURのハッシュ計算を行い、ハッシュ値とタイトル鍵をXORなどの可逆計算可能な演算を行って演算タイトル鍵を生成する。次に、演算タイトル鍵を暗号復号部441を経由して、記憶媒体装置600に送信する(S406)。
記憶媒体装置ID受信部450は、記憶媒体装置600から暗号復号部441を経由して記憶媒体装置IDを受信し、MAC演算部451は、記憶媒体装置ID受信部450により受信された記憶媒体装置ID及びタイトル鍵・コンテンツ秘密番号・UR生成格納部422に格納されているタイトル鍵を用いたMACを演算し、演算により得られたMAC値を端末装置500に送信する。また、タイトル鍵・コンテンツ秘密番号・UR生成格納部422は、格納しているURを端末装置500に送信する。なお、配信時にドメインコンテンツか非ドメインコンテンツかが確定する場合、UR1410のドメイン識別情報領域1412に「0」(非ドメインコンテンツを示す)及び「1」(ドメインコンテンツを示す)の一方の値を上書きしておく(S407)。
視聴権登録依頼部471は、鍵配信装置400から記憶媒体装置600への鍵配信が完了すると、第1アカウントに対応する第2アカウントをアカウント管理部461から読みみ出す。次に、ダウンロードしたコンテンツのコンテンツ番号をタイトル鍵・コンテンツ秘密番号・UR生成格納部422から読み出す。次に、第2アカウントのアカウント名、パスワード、コンテンツ番号を権利管理装置700に送信し、指定したユーザアカウントに、指定したコンテンツの視聴権を取得した旨を通知し、管理情報の更新を依頼する。例えば、レンタル的な視聴権利の場合は、失効する時刻(例えば、2012年5月24日のような日付情報)、視聴可能な期間(例えば、3か月間)、ダウンロード可能回数(例えば、SD画質ダウンロードが5回まで無料、HD画質ダウンロードは2回まで無料)というような詳細な権利情報を通知して、権利管理装置700で詳細な視聴権を管理してもよい(S408)。
3.11 端末装置500の詳細構成
図23及び図24に端末装置500の詳細構成を示す。
図23には、端末装置500がコンテンツ配信装置300及び鍵配信装置400と連携してコンテンツ及びコンテンツの保護、再生に必要な鍵などのデータを受信し、コンテンツ及びデータなどを記憶媒体装置600に書き込む処理に関連する構成を記す。
図24には、記憶媒体装置600にコンテンツ及びコンテンツの保護、再生に必要な鍵などのデータがすでに書き込まれた状況において、端末装置500が記憶媒体装置600からコンテンツ及びコンテンツの保護、再生に必要な鍵などのデータを読み出して、再生する処理に関連する構成を記す。
受信及び書込み関連処理と、再生処理の間で重複している構成には同一の名称及び同一符号を割り振る。
図23及び図24に示すように、端末装置500は、アカウント発行依頼部505、アカウント表示部506、コンテンツ一覧提示・コンテンツ選択入力部507、端末装置秘密鍵・証明書格納部510、ルート公開鍵格納部511、第1アカウント入力部515、第1アカウント制御部516、第2アカウント入力部517、第2アカウント制御部518、第2アカウント情報記憶部519、コンテンツ受信部520、コンテンツ識別情報取得部521、コンテンツ書込み部522、相互認証部530、記憶媒体装置ID取得部531、暗号復号部532、記憶媒体装置ID・コンテンツ識別情報送信部540、記憶媒体装置ID・MAC・UR受信部545、記憶媒体装置ID・MAC・UR書込み部546、伝送部547、演算タイトル鍵受信部550、UR読み出し部555、タイトル鍵再演算部556、記憶媒体装置ID・MAC読出し部557、再生判断部558、コンテンツ読出し部560、コンテンツ復号部561及びコンテンツ再生部562から構成されている。
(アカウント発行依頼部505)
アカウント発行依頼部505は、ユーザの指示を受けて新たなアカウントを発行する。
まず、アカウント発行依頼部505は、ユーザの指示により、鍵配信装置400に第1アカウントの発行依頼を送信する。アカウント発行依頼部505は、鍵配信装置400から、第1アカウントのアカウント名及びパスワードの組、並びに、第2アカウントのアカウント名及びパスワードの組を受信する。
アカウントの発行依頼に関しては、端末装置500がアカウント名を指定してもよい。また、ユーザが希望するアカウント名を入力して、端末装置500が第1アカウントのアカウント名が過去に発行したものと重複しないか確認し、重複がなければ、ユーザの指定したアカウント名を採用してもよい。同じようにして、第2アカウントについても、第1アカウントのアカウント名やユーザが入力したアカウント名を権利管理装置700に送信して、権利管理装置700が第2アカウントのアカウント名が過去に発行したものと重複しないか確認し、重複しなければ、鍵配信装置400から受け取ったアカウント名を採用してもよい。
(アカウント表示部506)
アカウント表示部506は、受信した第1アカウント及び第2アカウントの情報をTV、タブレットデバイス、スマートフォンなどの表示デバイスに表示してもよい。また、E−mailでユーザに送信してもよい。ユーザは、表示又はメール受信するなどして受け取った第1アカウント及び第2アカウントを記憶し、再生時に利用する。
なお、端末装置500が第1アカウント、第2アカウントを記憶しておいて、再生時のユーザによる入力の手間を省いてもよい。
アカウント表示時の画面の一例として、図27にアカウント表示画面1550を示す。アカウント表示画面1550は、第1アカウント名1551、第1アカウントパスワード1552、第2アカウント名1553及び第2アカウントパスワード1554を含んでいる。第1アカウント名1551は、表示される情報のタイトル「第1アカウント名」及び実際のアカウント名を含む。第1アカウントパスワード1552は、表示される情報のタイトル「第1アカウントパスワード」及び実際のパスワードを含む。第2アカウント名1553は、表示される情報のタイトル「第2アカウント名」及び実際のアカウント名を含む。第2アカウントパスワード1554は、表示される情報のタイトル「第2アカウントパスワード」及び実際のパスワードを含む。
(コンテンツ一覧提示・コンテンツ選択入力部507)
コンテンツ一覧提示・コンテンツ選択入力部507は、コンテンツのダウンロード時に、鍵配信装置400などから配信可能なコンテンツ名一覧を取得して、表示デバイスに表示して、ユーザに選択させる。また、コンテンツの再生時に、接続された記憶媒体装置600に記録されているコンテンツ名などの一覧を取得し、表示デバイスに表示して、ユーザに選択させる。
配信可能なコンテンツ名一覧の取得するための仕組みや記憶媒体装置600から記録されているコンテンツ名一覧を取得するための仕組みについては、公知であるので、説明を省略する。
(端末装置秘密鍵・証明書格納部510)
端末装置秘密鍵・証明書格納部510は、鍵発行装置200から受け取った端末装置秘密鍵及び端末装置証明書のペアを格納する。具体的には、端末装置500を製造する端末製造装置が端末装置秘密鍵及び端末装置証明書のペアの書込みを行う。
(ルート公開鍵格納部511)
ルート公開鍵格納部511は、鍵発行装置200から受け取ったルート公開鍵を格納する。具体的には、端末装置を製造する端末製造装置がルート公開鍵の書込みを行う。
(第1アカウント入力部515)
第1アカウント入力部515は、表示デバイスなどに入力のためのフォームを表示し、ユーザから、第1アカウントのアカウント名、及び、パスワードの入力を受け付ける。
(第1アカウント制御部516)
第1アカウント制御部516は、第1アカウント入力部515により入力された第1アカウントのアカウント名及びパスワードの組を鍵配信装置400に送信する。次に、鍵配信装置400から正しいアカウントである旨の返送を受信すると、第1アカウントによるログイン状態で取得できる全てのコンテンツについて、第1アカウントのユーザがその使用権利を有するものとして扱う。
(第2アカウント入力部517)
第2アカウント入力部517は、表示デバイスなどに入力のためのフォームを表示し、ユーザから第2アカウントのアカウント名及びパスワードの入力を受け付ける。
(第2アカウント制御部518)
第2アカウント制御部518は、第2アカウント入力部517により入力された第2アカウントのアカウント名及びパスワードの組を権利管理装置700に送信する。次に、権利管理装置700から、正しいアカウントである旨の返送を受信する。このとき、第2アカウント制御部518は、第2アカウントによるログイン状態で取得できるコンテンツコンテンツが、第1アカウントによる使用権利を有するコンテンツか否かを確認し、再生可否を判断してもよい。
また、第2アカウント制御部518は、タイトル鍵再演算部556のリクエストを受けて、権利管理装置700に第2アカウントのアカウント名(例えば、Rio)、対応するパスワード(例えば、54 AA 9B 1F BC CE)、コンテンツ番号(例えば、C01)の組を送信し、第2アカウントが本コンテンツ番号に対する視聴権を所有しているかという視聴権の確認の要求を示す視聴権確認要求データを送信する。次に、権利管理装置700から視聴権確認応答データを受け取る。受け取った視聴権確認応答データが視聴権ありを示す場合、タイトル鍵再演算部556に視聴権ありを通知すると共に、指定したコンテンツのコンテンツ秘密番号を通知する。
図37に視聴権確認要求データ17301を示す。視聴権確認要求データ17301は、権利管理装置番号領域1731、端末装置証明書領域1732、アカウント名領域1733、パスワード領域1734、コンテンツ番号領域1735及びログイン状態領域1736を含む。
権利管理装置番号領域1731には、権利管理装置700に割り当てられている権利管理装置番号、例えば、「R01」が記載される。端末装置証明書領域1732には、端末装置500に割り当てられる端末装置証明書が記載される。アカウント名領域1733には、第2アカウントのアカウント名が記載される。パスワード領域1734には、第2アカウントのパスワードが記載される。コンテンツ番号領域1735には、権利管理装置700により管理されるコンテンツ番号が記載される。ログイン状態領域1736には、視聴権があると確認された場合、端末装置500として視聴権ありの状態を維持する条件が記載される。例えば、ログイン状態領域1736に「自動ログオフなし」が記載されている場合、ユーザの指示でログオフするときを除いて、また、端末装置500のファーム更新に伴って、ログオフされるときを除いて、端末装置500は指定した第2アカウントのログイン状態を継続する。また、例えば、「2週間後の自動ログオフ」が記載されているとしてもよい。この場合、2週間後に端末装置500は第2アカウントのログイン状態を解消するので、ユーザは再ログインが必要になる。
図38に、視聴権確認要求データに対する応答のデータである視聴権確認応答データ17401を示す。視聴権確認応答データ17401は、アカウント名領域1741、コンテンツ番号領域1742、権利領域1743、コンテンツ秘密番号領域1744及び理由領域1745を含んでいる。
アカウント名領域1741には、第2アカウントのアカウント名が記載される。コンテンツ番号領域1742には、コンテンツ番号が記載される。権利領域1743には、視聴権の有無が記載される。コンテンツ秘密番号領域1544には、タイトル鍵再演算に必要なコンテンツ秘密番号が記載される。理由領域1745には、視聴権が無いとされる場合に、視聴権が無いと判断された理由が記載される。例えば、ユーザアカウントが過去に発行したものと一致せず不正とみなされたケース、ユーザアカウントは正規と判断されたが、本ユーザに指定されたコンテンツの視聴権がないケース、過去に視聴権があったがすでに視聴期限が切れているケース、視聴期間が終了しているケース、視聴回数の制限ですでに視聴できないなどのケースが考えられ、それぞれの理由が記載される。
(第2アカウント情報記憶部519)
第2アカウント情報記憶部519は、第2アカウント制御部518が制御している第2アカウントと視聴権のあるコンテンツ番号、及び、コンテンツのコンテンツ秘密番号や視聴権の条件等を関連付けて記憶する。
図25に、第2アカウント情報記憶部519に記憶されている第2アカウント情報の一例を示す。図25に示す第2アカウント情報1510は、アカウント名1511、パスワード1512及びコンテンツ権利情報1513を含む。コンテンツ権利情報1513は、権利管理装置番号1514及び1個以上のコンテンツ権利関連情報を含む。各コンテンツ権利関連情報は、コンテンツ番号1515、権利1516、コンテンツ秘密番号1517及び条件1518を含む。コンテンツ権利情報には、他の構成要素が追加されていてもよい。また、コンテンツ権利関連情報には、他の構成要素が追加されていてもよい。
ここで、アカウント名1511は、第2アカウントのアカウント名である。パスワード1512は、第2アカウントに対応するパスワードである。コンテンツ権利情報1513には、コンテンツの権利関連の情報が記載される。権利管理装置番号1514は、一台の権利管理装置を識別する識別情報である。コンテンツは、複数のグループに分けられ、個々のグループに一台の権利管理装置が対応する。一のグループに属するコンテンツは、そのグループに対応する権利管理装置により管理される。コンテンツ番号1515は、ユーザが権利を所有するコンテンツを識別するコンテンツ番号である。なお、権利がないコンテンツのコンテンツ番号が含まれるとしてもよい。権利1516は、第2アカウントが指定されたコンテンツ番号に関して視聴権の有無を示す。コンテンツ秘密番号1517は、コンテンツのタイトル鍵再演算に必要なコンテンツ秘密番号を示す。条件1518は、視聴が可能な条件を示す情報である。例えば、期間によるコンテンツの再生の限定、期限によるコンテンツの再生の限定、ダウンロード回数によるコンテンツの取得の限定を示す。
第2アカウントを記憶することで、再度、権利管理装置700に視聴権確認要求を実行しなくてもよい。また、ユーザが第2アカウントを再入力してなくもよい。このため、ユーザの手間を省くことが可能である。
(コンテンツ受信部520)
コンテンツ受信部520は、コンテンツ配信装置300からコンテンツを受信する。
(コンテンツ識別情報取得部521)
コンテンツ識別情報取得部521は、コンテンツ受信部520が受信したコンテンツとともに配信されるハッシュテーブルを取得する。次に、ハッシュテーブルの中に、コンテンツを一意に特定可能なコンテンツ識別情報が埋め込まれていれば、ハッシュテーブルからコンテンツ識別情報を抽出する。
(コンテンツ書込み部522)
コンテンツ書込み部522は、コンテンツ受信部520により受信したコンテンツを記憶媒体装置600に書き込む。
(相互認証部530)
相互認証部530は、鍵配信装置400又は記憶媒体装置600との間で、相互認証を行い、鍵配信装置400又は記憶媒体装置600と共通鍵を共有する。相互認証については、上述した通りである。
(記憶媒体装置ID取得部531)
記憶媒体装置ID取得部531は、相互認証部530による相互認証処理のプロセスの間に受信する記憶媒体装置600の記憶媒体装置証明書から記憶媒体装置IDを取得する。
(暗号復号部532)
暗号復号部532は、端末装置500と鍵配信装置400の間、又は、端末装置500と記憶媒体装置600との間で送受信されるデータを保護する。具体的には、暗号復号部532は、データの送信時には、相互認証部530により共有した共通鍵を用いて、データを暗号化する。また、データの受信時には、相互認証部530により共有した共通鍵を用いて、暗号化された送信データを復号する。これにより、伝送路上のデータを保護することができる。
(記憶媒体装置ID・コンテンツ識別情報送信部540)
記憶媒体装置ID・コンテンツ識別情報送信部540は、記憶媒体装置ID取得部531により取得された記憶媒体装置IDを、書込み先の記憶媒体装置を識別する記憶媒体装置IDとし、コンテンツ識別情報取得部521が取得したコンテンツ識別情報と記憶媒体装置IDとをセットにして、暗号復号部532を経由して鍵配信装置400へ送信する。
(記憶媒体装置ID・MAC・UR受信部545)
記憶媒体装置ID・MAC・UR受信部545は、鍵配信装置400からMAC値を、暗号復号部532を経由して受け取る。ここで、MAC値は、タイトル鍵を用いて、記憶媒体装置IDにMAC演算を施して生成された値である。タイトル鍵は、記憶媒体装置ID・コンテンツ識別情報送信部540により送信したコンテンツ識別情報で特定されるコンテンツを保護するための暗号化鍵である。また、記憶媒体装置IDは、記憶媒体装置ID・コンテンツ識別情報送信部540により送信されたものである。
また、記憶媒体装置ID・MAC・UR受信部545は、記憶媒体装置ID・コンテンツ識別情報送信部540により送信されたコンテンツ識別情報で特定されるコンテンツに関するURを、鍵配信装置400から暗号復号部532経由せず、受信する。
(記憶媒体装置ID・MAC・UR書込み部546)
記憶媒体装置ID・MAC・UR書込み部546は、記憶媒体装置ID・MAC・UR受信部545により受信された記憶媒体装置のMAC値、及び、URを記憶媒体装置600に書き込む。
(演算タイトル鍵受信部550)
演算タイトル鍵受信部550は、記憶媒体装置600から暗号復号部5320を経由して演算タイトル鍵を受信する。
(伝送部547)
伝送部547は、記憶媒体装置600から通信データを受け取り、受け取った通信データを鍵配信装置400へ送信する。また、鍵配信装置400から通信データを受け取り、受け取った通信データを記憶媒体装置600へ送信する。
伝送部547は、通信の終了通知情報など制御に関するデータを除き、通信データの内容を知ることなく、鍵配信装置400と記憶媒体装置600の間で通信する。この鍵配信装置400と記憶媒体装置600と間の通信では、例えば、演算タイトル鍵は、暗号化により、保護された状態で伝送される。
(UR読出し部555)
UR読出し部555は、コンテンツを記録している記憶媒体装置600から、あるコンテンツに関連するURを読み出す。
(タイトル鍵再演算部556)
タイトル鍵再演算部556は、以下に示すように、UR読出し部555により読み出されたURを確認する。
図20に示すUR1410のドメイン識別情報領域1412に、「1」(ドメインコンテンツを示す)が格納されている場合、タイトル鍵再演算部556は、第2アカウント制御部518に要求して第2アカウントログイン状態であるか確認する。第2アカウントログイン状態でなければ、第2アカウント入力部517に指示して第2アカウントを入力させて、第2アカウント制御部518に権利管理装置700に正規の第2アカウントであるか、また、指定したコンテンツの視聴権があるかないか確認させて、正規アカウントでなかったり、正規のアカウントであるが視聴権がなかったりした場合は、表示デバイスに当該コンテンツを視聴できない旨を表示する。正規アカウントで、かつ、視聴権がある場合、UR1410のコンテンツ秘密番号領域1413に、権利管理装置700から受信したコンテンツ秘密番号を上書きし、上書きされたURのハッシュ値を計算する。次に、演算タイトル鍵受信部550により受信した演算タイトル鍵とハッシュ値とに排他的論理和演算XORを施すことで元のタイトル鍵を算出する。
元のタイトル鍵=演算タイトル鍵 XOR Hash(UR) (式7)
UR1410のドメイン識別情報領域1412が「0」(非ドメインコンテンツを示す)の場合、タイトル鍵再演算部556は、そのままのURのハッシュ値を計算し、演算タイトル鍵受信部550が受信した演算タイトル鍵とハッシュ値に対して排他的論理和演算XORを施して、元のタイトル鍵を算出する。
元のタイトル鍵=演算タイトル鍵 XOR Hash(UR) (式8)
なお、(式7)及び(式8)で用いるHash演算は、上述する(式4)で用いるHash演算と同一でなければならない。
(記憶媒体装置ID・MAC読出し部557)
記憶媒体装置ID・MAC読出し部557は、記憶媒体装置600から、再生しようとするコンテンツに関連する記憶媒体装置のMAC値を読み出す。
(再生判断部558)
再生判断部558は、以下の式により、タイトル鍵再演算部556により算出されたタイトル鍵を用いて、記憶媒体装置ID取得部531により取得された記憶媒体装置IDのMAC値を計算する。
MAC値=Hash(タイトル鍵||記憶媒体装置ID) (式9)
なお、(式9)で用いるHash演算は、上述する(式5)で用いるHash演算と同一でなければならない。
次に、再生判断部558は、計算して得られたMAC値と、記憶媒体装置ID・MAC読出し部557により読み出されたMAC値とが一致するか否かを判断する。一致すると判断する場合、再生を許可する。一致しないと判断する場合、再生を停止、又は、出力画面に再生不可の旨を表示して、ユーザに通知するなどして、再生を抑制する。
(コンテンツ読出し部560)
コンテンツ読出し部560は、再生判断部558が再生を許可した場合、記憶媒体装置600からコンテンツを読み出す。再生判断部558が再生を許可しない場合、記憶媒体装置600からのコンテンツの読出しを抑制する。
(コンテンツ復号部561)
コンテンツ復号部561は、コンテンツ読出し部560により読み出されたコンテンツをタイトル鍵再演算部556により算出されたタイトル鍵を用いて復号する。これにより、復号済みコンテンツを生成する。
(コンテンツ再生部562)
コンテンツ再生部562は、コンテンツ復号部561が復号した復号済みコンテンツを再生し、テレビ等の表示デバイスに出力する。
なお、コンテンツ読出し部560は、再生判断部558が再生を許可した場合、記憶媒体装置600からコンテンツを読み出すとしているが、コンテンツ復号部561が、再生判断部558による再生判断に従って、復号し、又は、復号を抑制するとしてもよい。また、コンテンツ再生部562が、再生判断部558による再生判断に従って、再生し、又は、再生を抑制するとしてもよい。さらに、最後にコンテンツ再生部562がデコードした後、テレビ等の表示デバイスに出力する前までに、再生判断に従って、出力し、又は、出力を抑制してもよい。
3.12 端末装置500の動作
端末装置500による書き込みの動作及び再生の動作について、説明する。
(1)端末装置500による書き込みの動作
端末装置500による書き込みの動作について、図29に示すフローチャートを用いて説明する。
端末装置を製造する場合に、端末装置500は、端末装置秘密鍵、端末装置証明書及びルート公開鍵を格納する(S501)。
ユーザアカウントを発行する場合に、端末装置500は、アカウント発行依頼を鍵配信装置400に送信する。次に、第1アカウントのアカウント名及びパスワードを受信する。また、第2アカウントのアカウント名及びパスワードを受信する。さらに、表示デバイスに第1アカウントのアカウント名及びパスワード、並びに、第2アカウントのアカウント名及びパスワードを表示する。ユーザは、これらを記憶しておく。なお、端末装置500は、発行された第1アカウント及び第2アカウントを電子メールにより受信してもよい(S511)。
コンテンツ、UR等を記憶媒体装置600に記録する場合に、端末装置500は、ログイン用の画面を使って、ユーザから、すでに発行された第1アカウントのアカウント名及びパスワードの入力を受け付ける。また、端末装置500は、取得可能なコンテンツの一覧を表示し、ユーザの所望のコンテンツを特定する(S521)。
端末装置500は、コンテンツ配信装置300からユーザの所望のコンテンツを受信する。次に、受信したコンテンツを解析して、コンテンツ識別情報を取得し、あらかじめ特定していたコンテンツ識別情報と一致するか確認し、一致すると確認された場合に、当該コンテンツを記憶媒体装置600に書き込む(S522)。
端末装置500が鍵配信装置400(又は記憶媒体装置600)にアクセスする場合、相互認証部530は、鍵配信装置400(又は記憶媒体装置600)との相互認証を実行する。これにより、鍵配信装置400(又は記憶媒体装置600)が正規の装置であるかを確認する。鍵配信装置400(又は記憶媒体装置600)が正規の装置であると確認された場合に、端末装置500及び鍵配信装置400(又は記憶媒体装置600)の両方において、それぞれ同一の共通鍵を生成する。以降の通信では、共通鍵を用いて、データを暗復号することにより、通信するデータを保護する。また、相互認証部530は、相互認証のプロセスにおいて、鍵配信装置400の鍵配信装置ID(又は、記憶媒体装置600の記憶媒体装置ID)が、別系統で配信されたリボークファイルに記載されている無効化情報と一致するか否か判断する。一致する場合、鍵配信装置400(又は、記憶媒体装置600)が不正であるとみなし、相互認証部530による通信、及び、以降の処理を中止してもよい(S523)。
端末装置500は、相互認証のプロセスで特定した記憶媒体装置IDとコンテンツを特定するコンテンツ識別情報とをセットにして、鍵配信装置400に送信する(S524)。
端末装置500は、鍵配信装置400から、記憶媒体装置のMAC値、及び、URを受信し、URを記憶媒体装置600に書き込む。さらに、端末装置500は、鍵配信装置400と記憶媒体装置600との間で通信データの伝送を中継する。この鍵配信装置400と記憶媒体装置600との間の通信データについて、端末装置500は関与できない。演算タイトル鍵は、暗号化により保護され、安全に伝送される(S525)。
以上により、端末装置500による書き込みの動作を終了する。
(2)端末装置500による再生の動作
端末装置500による再生の動作について、図30に示すフローチャートを用いて説明する。端末装置500は、コンテンツ及びそのコンテンツの再生に必要な関連データを記録している記憶媒体装置600からコンテンツ及び関連データを読み出し、コンテンツを再生する。
端末装置500は、記憶媒体装置600に記録されたコンテンツの一覧を表示デバイスに表示する(S551)。
図26に、記憶媒体装置600に記録されたコンテンツの一覧表示の例を示す。図26に示すコンテンツ一覧画面1520は、ログイン権利管理装置番号1531、ログイン第2アカウント名1532、権利管理装置切替えボタン1533、ログインアカウント切替えボタン1534及び記憶媒体装置に記録されたコンテンツの一覧1535を含んでいる。
ログイン権利管理装置番号1531は、ログインしている権利管理装置700を識別する権利管理装置番号を示す。ログイン第2アカウント名1532は、ログインしている第2アカウントのアカウント名を示す。権利管理装置切替えボタン1533は、ログインしている権利管理装置700を他の権利管理装置に切り替えるためのボタンである。例えば、図26に示す例では、権利管理装置番号「R01」により識別される権利管理装置700にログインしている状態から、他の権利管理装置番号(例えば、「R02」)により識別される権利管理装置に切り替えて、ログインしたい場合、操作されるボタンである。ログインアカウント切替えボタン1534は、ログイン中の第2アカウントを他の第2アカウントに切り替えるための画面に遷移するためのボタンである。コンテンツの一覧1535は、複数のコンテンツ関連情報を含んでいる。各コンテンツ関連情報は、コンテンツに対応している。各コンテンツ関連情報は、コンテンツ番号、コンテンツ名、権利、視聴条件、再生時間、権利管理装置ロゴ及び操作をそれぞれ表示するフィールドを含む。
コンテンツ番号は、コンテンツを識別する番号を示す。コンテンツ名は、コンテンツを識別する名称を示す。権利は、当該コンテンツが非ドメインコンテンツであるかを示す。また、権利は、当該コンテンツがドメインコンテンツである場合には、視聴権の有無を示す。視聴条件は、視聴可能期間、視聴可能期限、ダウンロード可能回数などの視聴権利に関する条件を示す。再生時間は、当該コンテンツの再生に要する時間を示す。権利管理装置ロゴは、当該コンテンツが属している権利管理装置700のログマークを示す。これにより、当該コンテンツがどの権利管理装置700に関連付いているか、ユーザにとって理解しやすくなる。操作は、本コンテンツに対する可能な操作や実施できない操作などを示す。コンテンツの一覧1535には、一例として、Play(1538)、Delete(1541)及びログイン(1539)を示す。ここで、Play(1538)は、コンテンツの再生の操作を示す。Delete(1541)は、コンテンツの削除の操作を示す。ログイン(1539)は、ログインの操作を示す。コンテンツの一覧1535には示していない例として、「購入」は、コンテンツの購入の操作を示す。「更新」は、権利管理装置700にアクセスして視聴権を最新状態に更新する操作を示す。「ログイン切替え」は、別の第2アカウントを使ってログインし直す操作を示す。
図28に、権利管理装置の切替え、又は、第2アカウントによるログインで用いられる第2アカウントログイン画面1560を示している。
第2アカウントログイン画面1560は、ログイン権利管理装置番号であることを示すラベル1561、ログイン権利管理装置番号を表示する表示領域1562、権利管理装置700のロゴ表示1563及び1564、ログイン第2アカウント名であることを示すラベル1565、ログイン第2アカウント名を表示する表示領域1566、ログイン第2アカウントパスワードであることを示すラベル1567、ログイン第2アカウントパスワードを表示する表示領域1568及び決定ボタン1569を含んでいる。
表示領域1562には、ログイン中の権利管理装置番号が表示される。これにより、ユーザは、どの権利管理装置700に関する視聴権が表示されているかを把握できる。ロゴ表示1563及び1564には、図28に示す例では、「Rainbowライツロッカー」と「X−Rayライツロッカー」というロゴマークが表示されている。ロゴマークがボタンになっていて、いずれかのボタンを選択することで、ログインしている権利管理装置700を切り替えるという操作に用いてもよい。
表示領域1566には、ログイン中の第2アカウントが表示される。さらに、表示領域1566に別の第2アカウントを表示して、ログイン切替えに利用してもよい。
表示領域1568には、第2アカウントのパスワードが表示される。さらに、この領域に別の第2アカウントのパスワードを表示して、ログイン切替えに利用してもよい。
決定ボタン1569は、第2アカウントを他の第2アカウントに切り替えるために、用いられる。第2アカウントログイン画面1560において、表示中の第2アカウントのアカウント名及びパスワードを、他の第2アカウントのアカウント名及びパスワードに書き直した後、決定ボタン1569を操作する。
図30に戻って、端末装置500による再生の動作の説明を継続する。
端末装置500は、鍵配信装置400との間で相互認証を行う。相互認証に失敗すれば、その時点で再生の動作を終了する。相互認証に成功すれば、鍵配信装置400と共通鍵を共有する。また、端末装置500は、記憶媒体装置600との間で相互認証を行う。相互認証に失敗すれば、その時点で再生の動作を終了する。相互認証に成功すれば、記憶媒体装置600と共通鍵を共有する(S552)。
次に、端末装置500は、記憶媒体装置600からURを読み出す。読み出したURのドメイン識別情報領域内に記録されているフラグを用いて、コンテンツが非ドメインコンテンツかドメインコンテンツかを確認する(S553)。非ドメインコンテンツの場合は(S553で「非ドメイン」)、S557へ進む。ドメインコンテンツの場合(S553で「ドメイン」)、S554へ進む。
ドメインコンテンツの場合(S553で「ドメイン」)、端末装置500は、コンテンツが属する権利管理装置700により発行された第2アカウントを記憶しているか確認する(S554)。つまり、第2アカウントのアカウント名及びパスワードが正規のもので、かつ、ログイン状態であり、さらに、再生しようとしているコンテンツに関して、視聴権があるといった情報をすでに端末装置500が保持していれば(S554で「あり」)、S557へ進む。いずれかの情報が不足している場合(S554で「なし」)、S555へ進む。
いずれかの情報が不足している場合(S554で「なし」)、第2アカウントがログインされていない場合、第2アカウントのアカウント名及びパスワードをユーザに入力させて、権利管理装置700にアクセスし、ログイン可能か判断する(S555)。ログイン不可であれば(S555で「No」)、S560へ進む。ログインが可能であれば、さらにコンテンツを指定して、コンテンツの視聴権を確認する(S555)。視聴権がなければ(S555で「No」)、S560へ進む。視聴権があれば(S555で「Yes」)、S557へ進む。
端末装置500は、記憶媒体装置600から、記憶媒体装置ID、MAC値、演算タイトル鍵を読み出す。次に、読み出したURのハッシュ値を計算し、演算タイトル鍵とXORの計算を行うことで、元のタイトル鍵を算出する。
元のタイトル鍵=演算タイトル鍵 XOR Hash(UR) (S557)
端末装置500は、記憶媒体装置ID、タイトル鍵から記憶媒体装置のMAC値を計算する。
MAC値=Hash(タイトル鍵||記憶媒体装置ID)
次に、記憶媒体装置600から読み出したMAC値と、計算により得られたMAC値がと一致するかを確認することにより、再生の可否を判断する(ステップS558)。
再生が可と判断される場合(S558で「Yes」)、端末装置500は、記憶媒体装置600からコンテンツを読み出し、タイトル鍵を用いてコンテンツを復号し、再生(デコード)して、モニタなどの表示デバイスに出力する(S559)。
再生が不可と判断される場合(S558で「No」)、端末装置500は、再生を停止する(S560)。
以上で、端末装置500による再生の動作の説明を終了する。
3.13 記憶媒体装置600の詳細構成
図31に記憶媒体装置600の詳細構成を示す。
図31に示すように、記憶媒体装置600は、記憶媒体装置秘密鍵・証明書格納部610、ルート公開鍵格納部611、相互認証部620、暗号復号部630、演算タイトル鍵格納部640、記憶媒体装置ID格納部650、コンテンツ格納部660、UR格納部670、MAC値格納部680から構成されている。
(記憶媒体装置秘密鍵・証明書格納部610)
記憶媒体装置秘密鍵・証明書格納部610は、鍵発行装置200から受け取った記憶媒体装置秘密鍵及び記憶媒体装置証明書のペアを格納する。具体的には、記憶媒体装置600を製造する記憶媒体製造装置が記憶媒体装置秘密鍵及び記憶媒体装置証明書のペアの書き込みを行う。
(ルート公開鍵格納部611)
ルート公開鍵格納部611は、鍵発行装置200から受け取ったルート公開鍵を格納する。具体的には、記憶媒体装置を製造する記憶媒体製造装置がルート公開鍵の書き込みを行う。
(相互認証部620)
相互認証部620は、鍵配信装置400(又は、端末装置500)との間で、相互認証を行う。相互認証に成功した場合に、鍵配信装置400(又は、端末装置500)と共通鍵を共有する。なお、相互認証については、上記において説明した通りである。
(暗号復号部630)
暗号復号部630は、記憶媒体装置600と鍵配信装置400との間で、相互認証部620により共有した共通鍵を用いて、データを送信するときは、データを暗号化し、受信するときは、暗号化されたデータを復号する。これにより、伝送路上のデータを保護する。
暗号復号部630は、記憶媒体装置600と端末装置500の間においても、上記と同様に、伝送路上のデータを保護する。
(演算タイトル鍵格納部640)
演算タイトル鍵格納部640は、鍵配信装置400から演算タイトル鍵を受け取り、受け取った演算タイトル鍵を格納する。また、端末装置500からの取得要求を受け取ると、タイトル鍵は、端末装置500に対して出力される。
(記憶媒体装置ID格納部650)
記憶媒体装置ID格納部650は、記憶媒体装置を識別するための記憶媒体装置IDを格納している。
(コンテンツ格納部660)
コンテンツ格納部660は、端末装置500からコンテンツを受信し、受信したコンテンツを格納する。また、端末装置500から読出し要求を受け取ると、コンテンツは、端末装置500に対して出力される。
(UR格納部670)
UR格納部670は、端末装置500からURを受信し、受信したURを格納する。また、端末装置500から読み出し要求を受け取ると、URは、端末装置500に対して出力される。
(MAC値格納部680)
MAC値格納部680は、端末装置500からMAC値を受信し、受信したMAC値を格納する。また、端末装置500から読み出し要求を受け取ると、MAC値は、端末装置500に対して出力される。
3.14 記憶媒体装置600の動作
記憶媒体装置600の動作について、図32に示すフローチャートを用いて説明する。
記憶媒体装置600の製造時において、記憶媒体装置600は、記憶媒体装置ID、記憶媒体装置秘密鍵、記憶媒体装置証明書及びルート公開鍵を格納する(S601)。
記憶媒体装置600に対して、鍵配信装置400(又は、端末装置500)からのアクセスがあると、相互認証部620は、鍵配信装置400(又は、端末装置500)との相互認証を行う。これにより、相互認証部620は、鍵配信装置400(又は、端末装置500)が正規の装置であるか否かを確認する。相互認証に成功した場合、鍵配信装置400(又は、端末装置500)との間で、同一の共通鍵を生成する。以降の通信では、共通鍵を用いて、データを暗復号することにより、伝送路上で送受信されるデータを保護する。また、相互認証部620による相互認証のプロセスの途中で、鍵配信装置400(又は、端末装置500)の装置IDが、別途配信されたリボークファイルに記載されている無効化情報と一致するか否か判断する。一致する場合、通信しようとしている鍵配信装置400(又は、端末装置500)が不正な装置であるとみなして、相互認証部620による通信、及び、以降の処理を中止する(S611)。
記憶媒体装置600は、鍵配信装置400から演算タイトル鍵を受け取り、演算タイトル鍵を格納する。また、端末装置500からの取得要求を受け取り、演算タイトル鍵を端末装置500に対して出力する(S612)。
記憶媒体装置600は、端末装置500からの取得要求を受け取り、記憶媒体装置IDを端末装置500に対して出力する(S613)。
記憶媒体装置600は、端末装置500からコンテンツを受信し、格納する。また、端末装置500からの取得要求を受け取り、端末装置500に対してコンテンツを出力する(S614)。
記憶媒体装置600は、端末装置500からURを受信し、格納する。また、端末装置500からの取得要求を受け取り、端末装置500に対してURを出力する(S615)。
記憶媒体装置600は、端末装置500からMAC値を受信し、格納する。また、端末装置500からの取得要求を受け取り、端末装置500に対してMAC値を出力する(S616)。
3.15 権利管理装置700の詳細構成
図33に権利管理装置700の詳細構成を示す。
権利管理装置700は、権利管理装置番号受信部705、権利管理装置番号・UI情報格納部706、ルート公開鍵受信部710、ルート公開鍵格納部711、コンテンツ登録部720、コンテンツ管理部721、第2アカウント発行部730、第2アカウント視聴権利管理部731、視聴権利登録部732、視聴権利確認部750及び署名検証部751から構成されている。
(権利管理装置番号受信部705)
権利管理装置番号受信部705は、権利管理装置700のオペレータの操作指示により、鍵発行装置200に権利管理装置番号の発行を依頼する。また、鍵発行装置200から発行された権利管理装置番号を受信する。
(権利管理装置番号・UI情報格納部706)
権利管理装置番号・UI情報格納部706は、権利管理装置番号受信部705により受信された権利管理装置番号を格納する。また、権利管理装置700のロゴマークを表す権利管理装置UI情報を格納している。また、端末装置500からの要求に応じて、権利管理装置番号及び権利管理装置UI情報は、端末装置500に送信される。
(ルート公開鍵受信部710)
ルート公開鍵受信部710は、鍵発行装置200からルート公開鍵を受信する。
(ルート公開鍵格納部711)
ルート公開鍵格納部711は、ルート公開鍵受信部710により受信されたルート公開鍵を格納する。
(コンテンツ登録部720)
コンテンツ登録部720は、鍵配信装置400からコンテンツの登録要求を受け取る。コンテンツの登録要求は、コンテンツ番号、タイトル鍵及びコンテンツ秘密番号の組からなる。登録要求に従って、コンテンツ番号、タイトル鍵及びコンテンツ秘密番号の組をコンテンツ管理部721に登録する。
(コンテンツ管理部721)
コンテンツ管理部721は、コンテンツ管理情報テーブル1700を保持している。
コンテンツ管理情報テーブル1700は、図34に示すように、複数のコンテンツ管理情報を含む。各コンテンツ管理情報は、コンテンツ番号、タイトル鍵及びコンテンツ秘密番号の組からなる。なお、コンテンツ番号、タイトル鍵及びコンテンツ秘密番号については、上述した通りである。図34に示すように、コンテンツ管理情報テーブル1700に含まれる一つのコンテンツ管理情報は、コンテンツ番号1701「C01」、タイトル鍵1702「48 7F 48・・・」及びコンテンツ秘密番号1703「68 1D F3・・・」を含んでいる。
コンテンツ管理部721は、コンテンツ登録部720が受け取ったコンテンツ登録要求からコンテンツ番号、タイトル鍵及びコンテンツ秘密番号を抽出する。次に、コンテンツ番号、タイトル鍵及びコンテンツ秘密番号からなるコンテンツ管理情報を生成する。次に、生成したコンテンツ管理情報をコンテンツ管理情報テーブル1700に格納する。
(第2アカウント発行部730)
第2アカウント発行部730は、鍵配信装置400から第2アカウント発行の要求を受け取る。前記要求を受け取ると、第2アカウントのアカウント名とパスワードの組を発行する。次に、第2アカウントのアカウント名とパスワードの組を、第2アカウント視聴権利管理部731に対して出力する。また、発行した第2アカウントを鍵配信装置400に対して送信する。
(第2アカウント視聴権利管理部731)
第2アカウント視聴権利管理部731は、第2アカウント管理情報テーブル1710及び視聴権管理情報テーブル1720を保持している。
第2アカウント管理情報テーブル1710は、図35に示すように、複数の第2アカウント管理情報を含む。各第2アカウント管理情報は、アカウント番号、アカウント名及びパスワードを含む。アカウント名及びパスワードについては、上述した通りである。アカウント番号は、対応するアカウント名及びパスワードを識別する番号である。
視聴権管理情報テーブル1720は、図36に示すように、複数の視聴権管理情報を含む。各視聴権管理情報は、アカウント番号及び1個又は複数個のコンテンツ関連情報を含む。アカウント番号は、第2アカウントを識別する番号である。各コンテンツ関連情報は、コンテンツに対応している。各コンテンツ関連情報は、コンテンツ番号及び視聴権情報を含む。視聴権情報は、権利、期間制約、ダウンロード回数制約及びその他の条件を含む。権利は、コンテンツの視聴権の有無を示す。期間制約は、視聴権がある場合に、期間による制約が存在すれば、その制約を示す。ダウンロード回数制約は、視聴権がある場合に、ダウンロード回数による制約が存在すれば、その制約を示す。その他の条件は、視聴権がある場合に、その他の条件を示す。
視聴権管理情報テーブル1720に含まれる一の視聴権管理情報は、図36に示すように、アカウント番号1721、コンテンツ番号1722及び視聴権情報1723を含む。視聴権情報1723は、権利1724、期間制約1725、ダウンロード回数制約1726及びその他の条件1727を含む。
視聴権管理情報テーブル1720の別の例を、図39に示す。図39に示す視聴権管理情報テーブル17202は、視聴権情報において、視聴権管理情報テーブル1720のダウンロード回数制約及びその他の条件に代えて、ログイン回数制約及びログイン数を含む。ログイン回数制約は、ログインの回数に関する制約を示す。例えば、最大ログイン回数やログイン回数に制約がないことなどを示す。ログイン数は、これまでにログインがされた回数を示す。
視聴権管理情報テーブル17202に含まれる一の視聴権管理情報は、図39に示すように、アカウント番号1721、コンテンツ番号1722及び視聴権情報17232を含む。視聴権情報17232は、権利1724、期間制約1725、ログイン回数制約1728及びログイン数1729を含む。
第2アカウント視聴権利管理部731は、第2アカウント発行部730から第2アカウントのアカウント名とパスワードの組を受け取る。第2アカウントのアカウント名とパスワードの組を受け取ると、一意にアカウント番号を生成し、生成したアカウント番号、受け取ったアカウント名及びパスワードを、第2アカウント管理情報として、第2アカウント管理情報テーブル1710に書き込む。
また、第2アカウント視聴権利管理部731は、視聴権利登録部732から特定第2アカウントに対する特定コンテンツの視聴権利の登録要求を受け取る。登録要求は、コンテンツ番号及び視聴権情報を含む。視聴権情報は、権利、期間制約、ダウンロード回数制約及びその他の条件を含む。登録要求を受け取ると、第2アカウント視聴権利管理部731は、登録要求を元にして、視聴権管理情報を生成する。視聴権管理情報は、アカウント番号、コンテンツ番号及び視聴権情報を含む。視聴権情報は、権利、期間制約、ダウンロード回数制約及びその他の条件を含む。ここで、アカウント番号を、特定第2アカウントに対応するアカウント番号とする。次に、生成した視聴権管理情報を視聴権管理情報テーブル1720に格納する。
(視聴権利登録部732)
視聴権利登録部732は、鍵配信装置400から、各第2アカウントを指定した、特定コンテンツの視聴権の登録要求を受け取る。登録要求を受け取ると、第2アカウント視聴権利管理部731に対して、特定コンテンツの視聴権を登録するように制御する。
(視聴権利確認部750)
視聴権利確認部750は、端末装置500から、視聴権確認要求データ17301を受け取り、視聴権の状況を確認し、端末装置500に視聴権確認応答データ17401として返送する。
図37に、視聴権確認要求データ17301の例を示している。視聴権確認要求データ17301は、権利管理装置番号領域1731、端末装置証明書領域1732、アカウント名領域1733、パスワード領域1734、コンテンツ番号領域1735及びログイン状態領域1736からなる。権利管理装置番号領域1731には、権利管理装置番号が格納される。端末装置証明書領域1732には、端末装置証明書が格納される。アカウント名領域1733には、第2アカウントのアカウント名が格納される。パスワード領域1734には、第2アカウントのパスワードが格納される。コンテンツ番号領域1735には、コンテンツ番号が格納される。ログイン状態領域1736には、視聴権があると確認された場合、端末装置500として視聴権ありの状態を維持する条件が格納される。
図37に示す視聴権確認要求データ17301において、権利管理装置番号領域1731には、権利管理装置番号「R01」が格納されている。端末装置証明書領域1732には、端末装置証明書が格納されている。アカウント名領域1733には、アカウント名「Kakeru」が格納されている。パスワード領域1734には、パスワード「FE 47 42・・・」が格納されている。コンテンツ番号領域1735には、コンテンツ番号「C01」が格納されている。ログイン状態領域1736には、「自動ログオフなし」が格納されている。
図40に、視聴権確認要求データ17301の別の例を示している。図40に示す視聴権確認要求データ17302は、視聴権確認要求データ17301と同じデータ構造を有している。図40に示す視聴権確認要求データ17302において、権利管理装置番号領域1731には、権利管理装置番号「R01」が格納されている。端末装置証明書領域1732には、端末装置証明書が格納されている。アカウント名領域1733には、アカウント名「Rio」が格納されている。パスワード領域1734には、パスワード「54 AA 9B・・・」が格納されている。コンテンツ番号領域1735には、コンテンツ番号「C02」が格納されている。ログイン状態領域1736には、「2週間保持」が格納されている。
視聴権利確認部750は、視聴権確認要求データ17301を受け取ると、視聴権確認要求データ17301の権利管理装置番号領域1731に格納された権利管理装置番号が権利管理装置番号・UI情報格納部706に格納された権利管理装置番号と一致するかを確認する。
一致しない場合、視聴権利確認部750は、視聴権確認要求データ17301に対して、エラーであることを示すメッセージを返す。
一致する場合、視聴権利確認部750は、端末装置証明書領域1732に格納された端末装置証明書を署名検証部751に出力し、署名検証を依頼する。署名検証の結果、署名検証に失敗した場合、視聴権確認要求データ17301に対して、エラーであることを示すメッセージを返す。署名検証に成功した場合、視聴権利確認部750は、アカウント名領域1733及びパスワード領域1734に格納された第2アカウントが、第2アカウント視聴権利管理部731が保持する第2アカウント管理情報テーブル1710に登録されているか確認する。登録されていない場合、視聴権利確認部750は、視聴権確認要求データ17301に対して、エラーであることを示すメッセージを返す。登録されている場合、視聴権利確認部750は、第2アカウント視聴権利管理部731に依頼して、コンテンツ番号領域1735に記載されたコンテンツ番号に対する視聴権の状態を確認する。次に、視聴権の状態を視聴権確認応答データ17401を用いて応答する。
図38に、視聴権確認応答データ17401の一例を示す。この図に示す視聴権確認応答データ17401は、アカウント名領域1741、コンテンツ番号領域1742、権利領域1743、コンテンツ秘密番号領域1744及び理由領域1745からなる。
アカウント名領域1741には、第2アカウントのアカウント名が格納される。コンテンツ番号領域1742には、コンテンツ番号が格納される。権利領域1743には、権利の有無が格納される。コンテンツ秘密番号領域1744には、コンテンツ秘密番号が格納される。理由領域1745には、権利が無い場合に、その理由が格納される。
指定された第2アカウントに指定されたコンテンツの視聴権がある場合、図38の視聴権確認応答データ17401に示すように、権利領域1743に「あり」が格納され、コンテンツ秘密番号領域1744に、実際のコンテンツ秘密番号が格納される。
一方、指定された第2アカウントに指定されたコンテンツの視聴権がない場合、図41の視聴権確認応答データ17402に示すように、権利領域1743に「なし」が格納され、コンテンツ秘密番号領域1744には、何も格納されない。理由領域1745には、権利領域1743が「なし」となった理由として、視聴権がない旨が記載される。
(署名検証部751)
署名検証部751は、視聴権利確認部750からの要求を受けて、受け取った端末装置証明書の署名データを、ルート公開鍵格納部711が格納するルート公開鍵を用いて検証し、その検証結果を視聴権利確認部750に返す。
3.16 権利管理装置700の動作
権利管理装置700の動作について、図42に示すフローチャートを用いて説明する。
権利管理装置700は、鍵発行装置200から権利管理装置番号、ルート公開鍵並びに鍵配信装置秘密鍵及び鍵配信装置証明書のペアを受信し、受信したルート公開鍵並びに鍵配信装置秘密鍵及び鍵配信装置証明書のペアを格納する(S710)。
鍵配信装置400からコンテンツの登録要求を受け取ると、権利管理装置700は、受け取った登録要求に対応するコンテンツ管理情報を生成し、生成したコンテンツ管理情報をコンテンツ管理情報テーブル1700に格納する(S721)。
鍵配信装置400から第2アカウントの発行の要求を受け取ると、権利管理装置700は、第2アカウントを発行する。また、発行した第2アカウントを鍵配信装置400に送信する。さらに、第2アカウントを含む第2アカウント情報を生成し、生成した第2アカウント情報を第2アカウント管理情報テーブル1710に格納する。さらに、鍵配信装置400から第2アカウントを指定した視聴権の登録の要求を受け取ると、受け取った登録の要求から視聴権管理情報を生成し、生成した視聴権管理情報を視聴権管理情報テーブル1720に格納する(S722)。
権利管理装置700は、端末装置500から、視聴権確認要求データを受け取る(S723)。
権利管理装置700は、受け取った視聴権確認要求データに含まれる権利管理装置番号が正しいか確認する(S724)。間違っている場合(S724で「エラー」)、S728へ進む。正しい場合(S724で「正しい」)、S725へ進む。
権利管理装置700は、受け取った視聴権管理要求データの端末装置証明書の署名検証を行う(S725)。署名検証に失敗した場合(S725で「失敗」)、S728へ進む。署名検証に成功した場合(S725で「成功」)、S726に進む。
権利管理装置700は、受け取った視聴権管理要求データに含まれる第2アカウント名とパスワードが正しいか確認する(S726)。間違っている場合(S726で「エラー」)、S728へ進む。正しい場合(S726で「正しい」)、S727へ進む。
権利管理装置700は、視聴権管理情報テーブル1720を確認し、視聴権の状態を端末装置500に送信し(S727)、次に、後処理を行う(S729)。
また、権利管理装置700は、エラーとして再生できない旨を表示デバイスを用いて表示する(S728)。次に、後処理を行う(S729)。
これで、権利管理装置700の動作についての説明を終了する。
4.実施の形態4
本発明に係る実施の形態4としてのコンテンツ配信システム10dについて、図面を参照しながら説明する。
4.1 コンテンツ配信システム10dの構成
コンテンツ配信システム10dは、図43に示すように、サーバ装置3401、端末装置3402及び記憶媒体装置3403から構成されている。
なお、記憶媒体装置3403は、制御手段(コントローラ)と記憶手段(フラッシュメモリなど)により構成される取り外し可能な記憶媒体であってもよい。また、記憶媒体装置3403は、同様に、制御手段(コントローラ)と記憶手段(フラッシュメモリなど)により構成され、端末装置3402に内蔵される内蔵メモリであってもよい。
端末装置3402は、ユーザが入力したユーザID、パスワード及びユーザが選択したコンテンツを一意に識別するコンテンツIDをサーバ装置3401へ送信する。
サーバ装置3401は、受信したユーザID、パスワード及びコンテンツIDに基づき、対応する暗号化コンテンツ、タイトル鍵、利用条件を端末装置3402へ送信する。端末装置3402は、暗号化コンテンツ、タイトル鍵、利用条件を受信する。次に、受信した暗号化コンテンツ、タイトル鍵、利用条件を記憶媒体装置3403へ記録する。
サーバ装置3401と記憶媒体装置3403との間では、相互認証処理及び鍵共有処理が実行され、安全な通信路が確立される。タイトル鍵は、安全な通信路上で安全に、つまり、暗号化されて送信される。また、利用条件については、その改ざんを防止するために、同じく暗号化して送信したり、タイトル鍵と関連付けて送信したりする。例えば、利用条件のハッシュ値とタイトル鍵とをXOR演算することにより、利用条件が改ざんされた場合、正しいタイトル鍵が導出できないようにする。
サーバ装置3401、端末装置3402、記憶媒体装置3403については、以降でその詳細を述べる。
4.2 サーバ装置3401の構成
サーバ装置3401の詳細な構成について説明する。
サーバ装置3401は、図44に示すように、送受信手段3501、暗号化コンテンツ記憶手段3502、タイトル鍵記憶手段3503、相互認証手段3504、利用条件記憶手段3505、利用条件更新手段3506、コンテンツ再生権利管理手段3507、ユーザID管理手段3508及び制御手段3509から構成される。
サーバ装置3401は、具体的には図示されていないプロセッサ及びRAM、ROM、ハードディスクなどから構成される。前記RAM、前記ROM及び前記ハードディスクには、コンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムに従って動作することにより、サーバ装置3401は、その機能を果たす。
なお、サーバ装置3401の送受信手段3501、暗号化コンテンツ記憶手段3502、タイトル鍵記憶手段3503、相互認証手段3504、利用条件記憶手段3505、利用条件更新手段3506、コンテンツ再生権利管理手段3507、ユーザID管理手段3508、制御手段3509等の各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは、個別に1チップ化されてもよいし、1以上の手段、又は各手段の一部を含むように1チップ化されてもよい。
また、集積回路化の手法は、LSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらに、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。
最後に、各機能ブロックは、ソフトウェアで実現されてもよいし、LSIとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは、耐タンパ化されていてもよい。
(1)送受信手段3501
送受信手段3501は、端末装置3402からユーザID、パスワード及びコンテンツIDを受信する。また、暗号化コンテンツ、タイトル鍵及び利用条件を端末装置3402に対して送信する。
(2)暗号化コンテンツ記憶手段3502、タイトル鍵記憶手段3503及び利用条件記憶手段3505
暗号化コンテンツ記憶手段3502、タイトル鍵記憶手段3503及び利用条件記憶手段3505は、それぞれ、暗号化コンテンツ、タイトル鍵及び利用条件を記憶する。
(3)相互認証手段3504
相互認証手段3504は、鍵データを記憶し、記憶する鍵データを用いて、記憶媒体装置3403との間で相互認証処理及び鍵共有処理を実行して安全な通信路を確立する。特に、タイトル鍵は、サーバ装置3401と記憶媒体装置3403との間で共有した共有鍵を用いて暗号化され、サーバ装置3401から記憶媒体装置3403へ安全に送られる。
(4)利用条件更新手段3506
利用条件更新手段3506は、コンテンツごとに管理される利用条件を利用条件記憶手段3505から読み出し、送受信手段3501により受信したユーザID及びパスワードに基づきバインド情報を生成して利用条件のバインド情報記憶領域を更新する。
ここで、バインド情報とは、コンテンツをユーザに紐付けるための情報を意味する。
利用条件更新手段3506は、例えば、ユーザIDと対応するパスワードを結合して結合体を生成する。次に、生成した結合体に対して、ハッシュ演算を施し、その演算結果の一部、又は全部をバインド情報とする。
バインド情報=Hash(ユーザID||パスワード)の一部又は全部 (式10)
ここで、(式10)で用いられるハッシュ演算Hashは、後述する(式11)で用いられるハッシュ演算Hashと同一でなければならない。
図47に利用条件の一例を示す。図47に示す利用条件3804は、コンテンツ番号記憶領域3801、バインド識別フラグ記憶領域3802及びバインド情報記憶領域3803から構成されている。
コンテンツ番号記憶領域3801は、コンテンツを一意に識別する識別子(コンテンツID)を記憶する。
バインド識別フラグ記憶領域3802は、バインド識別フラグを記憶する。
図47に示す例では、バインド識別フラグを「1」としている。バインド識別フラグ「1」は、当該コンテンツIDにより識別されるコンテンツがユーザに紐付けられていることを示す。ユーザに紐付けられるとは、そのユーザだけがコンテンツの再生権利を持ち再生可能なことを意味する。
また、例えば、バインド識別フラグ「0」は、当該コンテンツIDにより識別されるコンテンツがユーザとの紐付けがなく、メディアにだけ紐付いていることを示す。そのコンテンツは如何なるユーザが保有する端末装置においても再生が可能となる。
バインド情報記憶領域3803は、ユーザID及びパスワードに基づき生成されたバインド情報(0xACE482D7)を記憶する。
(5)コンテンツ再生権利管理手段3507
コンテンツ再生権利管理手段3507は、ユーザが保有するコンテンツの再生権利をデータベースとして管理する。このデータベースは、ユーザIDと1個以上のコンテンツIDとを対応付けて記憶している。ユーザIDにより識別されるユーザは、ユーザIDに対応するコンテンツIDにより識別されるコンテンツの再生権利を有している。例えば、このデータベースは、ユーザ「A」は、コンテンツ「1」及びコンテンツ「5」の再生権利を保有し、ユーザ「B」は、コンテンツ「5」及びコンテンツ「7」の再生権利を保有していることを示す。
(6)ユーザID管理手段3508
ユーザID管理手段3508は、ユーザIDとパスワードとを対応付けて記憶している。例えば、ユーザID及びパスワードは、サーバ装置3401、又は、提供されるサービスを利用するためのユーザIDとパスワードである。端末装置3402を用いて、ユーザが入力したユーザIDとパスワードの対と、ユーザID管理手段3508が記憶しているユーザIDとパスワードの対が一致した場合に限り、当該サービスの利用が許可される。
(7)制御手段3509
制御手段3509は、送受信手段3501、暗号化コンテンツ記憶手段3502、タイトル鍵記憶手段3503、相互認証手段3504、利用条件記憶手段3505、利用条件更新手段3506、コンテンツ再生権利管理手段3507、ユーザID管理手段3508を管理し制御して、端末装置3402との通信や、各種データの記憶、更新、管理などを実現する。
4.3 端末装置3402の構成
端末装置3402の詳細な構成について説明する。
端末装置3402は、図45に示すように、送受信手段3601、表示手段3602、ユーザ入力受付手段3603及び制御手段3604から構成される。
端末装置3402は、具体的には、図示されていないプロセッサ及びRAM、ROM、ハードディスクなどから構成される。前記RAM、前記ROM及び前記ハードディスクには、コンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムに従って動作することにより、端末装置3402は、その機能を果たす。
なお、端末装置3402の送受信手段3601及び制御手段3604等の各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは、個別に1チップ化されてもよいし、1以上の手段、又は各手段の一部を含むように1チップ化されてもよい。
また、集積回路化の手法は、LSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAや、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。
最後に、各機能ブロックは、ソフトウェアで実現されてもよいし、LSIとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは、耐タンパ化されていてもよい。
(1)送受信手段3601
送受信手段3601は、サーバ装置3401へユーザID、パスワード及びコンテンツIDを送信する。また、サーバ装置3401から、暗号化コンテンツ、タイトル鍵及び利用条件を受信する。さらに、暗号化コンテンツ、タイトル鍵及び利用条件を、記憶媒体装置3403へ出力して書き込む。
(2)表示手段3602及びユーザ入力受付手段3603
表示手段3602は、表示画面にユーザIDやパスワードの入力を促す画面を表示する。ユーザ入力受付手段3603は、ユーザが入力したユーザIDやパスワードを受け付ける。また、表示手段3602は、コンテンツリストや一覧などを表示し、ユーザが選択したコンテンツをユーザ入力受付手段3603が受け付ける。
(3)制御手段3604
制御手段3604は、送受信手段3601、表示手段3602、ユーザ入力受付手段3603を管理し制御して、サーバ装置3401、記憶媒体装置3403との通信や、ユーザへの画面表示、ユーザ入力の受付などを実現する。
4.4 記憶媒体装置3403の構成
記憶媒体装置3403の詳細な構成について説明する。
記憶媒体装置3403は、図46に示すように、送受信手段3701、暗号化コンテンツ記憶手段3702、タイトル鍵記憶手段3703、利用条件記憶手段3704、相互認証手段3705及び制御手段3706から構成されている。
記憶媒体装置3403は、具体的には、図示されていないプロセッサ及びRAM、ROMなどから構成される。前記RAM及び前記ROMには、コンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムに従って動作することにより、記憶媒体装置3403は、その機能を果たす。
なお、記憶媒体装置3403の送受信手段3701、暗号化コンテンツ記憶手段3702、タイトル鍵記憶手段3703、利用条件記憶手段3704、相互認証手段3705、制御手段3706等の各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは、個別に1チップ化されてもよいし、1以上の手段、又は各手段の一部を含むように1チップ化されてもよい。
また、集積回路化の手法は、LSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAや、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。
最後に、各機能ブロックは、ソフトウェアで実現されてもよいし、LSIとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは、耐タンパ化されていてもよい。
(1)送受信手段3701
送受信手段3701は、端末装置3402から暗号化コンテンツ、タイトル鍵及び利用条件を受信する。次に、受信した暗号化コンテンツ、タイトル鍵及び利用条件を、それぞれ、暗号化コンテンツ記憶手段3702、タイトル鍵記憶手段3703及び利用条件記憶手段3704に書き込む。
(2)暗号化コンテンツ記憶手段3702、タイトル鍵記憶手段3703及び利用条件記憶手段3704
暗号化コンテンツ記憶手段3702、タイトル鍵記憶手段3703及び利用条件記憶手段3704は、それぞれ、暗号化コンテンツ、タイトル鍵及び利用条件を記憶する。
(3)相互認証手段3705
相互認証手段3705は、鍵データを記憶し、記憶する鍵データを用いて、サーバ装置3401との間で相互認証処理及び鍵共有処理を実行して安全な通信路を確立する。特にタイトル鍵は、共有した共有鍵で暗号化されて、サーバ装置3401から記憶媒体装置3403へ安全に送られる。
(4)制御手段3706
制御手段3706は、送受信手段3701、暗号化コンテンツ記憶手段3702、タイトル鍵記憶手段3703、利用条件記憶手段3704及び相互認証手段3705を管理し制御して、端末装置3402との通信や、各種データの記憶、更新、管理などを実現する。
4.5 コンテンツ記録時の動作
コンテンツ記録時のサーバ装置3401、端末装置3402及び記憶媒体装置3403の動作について、図48〜図49に示すシーケンス図を用いて説明する。
端末装置3402のユーザ入力受付手段3603は、ユーザのユーザID及びパスワードの入力を受け付け、受け付けたユーザID及びパスワードを送受信手段3601を介してサーバ装置3401へ送信する(ステップS3901)。
サーバ装置3401の送受信手段3501は、ユーザID及びパスワードを受信して、ユーザID管理手段3508において、ユーザ情報を確認してログイン処理を実行する(ステップS3902)。ここで、ログインに失敗した場合は、その旨を端末装置3402へ通知する。
サーバ装置3401は、送受信手段3501を介してコンテンツ一覧を端末装置3402へ送信する(ステップS3903)。コンテンツ一覧を受信した端末装置3402の表示手段3602は、コンテンツ一覧を表示する。ユーザ入力受付手段3603は、ユーザによるコンテンツの選択を受け付け、選択したコンテンツを一意に識別するための識別子(コンテンツID)をサーバ装置3401へ送信する(ステップS3904)。
サーバ装置3401の利用条件更新手段3506は、利用条件記憶手段3505から利用条件を読み出す。次に、受信したユーザID及びパスワードに基づき、コンテンツIDが示すコンテンツをユーザに紐付けるためのバインド情報を生成する。次に、生成したバインド情報を利用条件のバインド情報記憶領域に書き込む(ステップS3905)。
サーバ装置3401と記憶媒体装置3403は、各種データを安全に送受信するために相互認証手段3504及び3705で、相互認証処理及び鍵共有処理を実行する(ステップS4001、ステップS4002)。このとき、端末装置3402の送受信手段3601は、相互認証処理及び鍵共有処理に関連する各種データの送受信を中継する(ステップS4003)。
安全な通信路の確立後、サーバ装置3401は、更新した利用条件、暗号化コンテンツ及びタイトル鍵を送受信手段3501を介して端末装置3402へ送信する(ステップS4004)。端末装置3402は、利用条件、暗号化コンテンツ及びタイトル鍵を受信し、さらに利用条件、暗号化コンテンツ及びタイトル鍵を記憶媒体装置3403へ送信する(ステップS4005)。記憶媒体装置3403は、利用条件、暗号化コンテンツ及びタイトル鍵を受信して記録する(ステップS4006)。
5.実施の形態5
本発明に係る実施の形態5としてのコンテンツ配信システム10eについて、図面を参照しながら説明する。
5.1 コンテンツ配信システム10eの構成
コンテンツ配信システム10eは、図50に示すように、サーバ装置4101、端末装置4102、記憶媒体装置3403から構成される。
なお、記憶媒体装置3403は、制御手段(コントローラ)と記憶手段(フラッシュメモリなど)により構成される取り外し可能な記憶媒体であってよい。また、同様に、制御手段(コントローラ)と記憶手段(フラッシュメモリなど)により構成され、端末装置4102に内蔵される内蔵メモリであってもよい。
端末装置4102は、ユーザが入力したユーザID、パスワード及びユーザが選択したコンテンツを一意に識別するコンテンツIDをサーバ装置4101へ送信する。
サーバ装置4101は、受信したユーザID、パスワード及びコンテンツIDに基づき、ユーザが選択したコンテンツに対して、当該ユーザが再生権利を有しているか否かを判断する。次に、その再生可否の結果(再生可、又は、再生不可を示す)を端末装置4102へ送信する。再生可を示す結果を受信した端末装置4102は、記憶媒体装置3403から暗号化コンテンツ、タイトル鍵、利用条件を読み出してコンテンツの再生を行う。再生不可を示す結果を受信した場合は、端末装置4102は、その旨をユーザへ通知する。
端末装置4102と記憶媒体装置3403の間では、相互認証処理及び鍵共有処理が実行され、安全な通信路が確立される。タイトル鍵は、通信路上を安全に、つまり、暗号化されて送信される。
また、利用条件については、その改ざんを防止するために、同じく暗号化されて送信してもよい。また、利用条件をタイトル鍵と関連付けて送信してもよい。例えば、利用条件のハッシュ値とタイトル鍵とをXOR演算することにより、利用条件が改ざんされた場合は、正しいタイトル鍵が導出できないようにできる。
サーバ装置4101及び端末装置4102については、以降でその詳細を述べる。また、記憶媒体装置3403は、実施の形態4の記憶媒体装置3403と同様であるため、その説明を省略する。
5.2 サーバ装置4101の構成
サーバ装置4101の詳細な構成について説明する。
サーバ装置4101は、図51に示すように、送受信手段4201、判断手段4202、コンテンツ再生権利管理手段4203、ユーザID管理手段4204及び制御手段4205から構成されている。
サーバ装置4101は、具体的には、図示されていないプロセッサ及びRAM、ROM、ハードディスクなどから構成される。前記RAM、前記ROM及び前記ハードディスクには、コンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムに従って動作することにより、サーバ装置4101は、その機能を果たす。
なお、サーバ装置4101の送受信手段4201、判断手段4202、コンテンツ再生権利管理手段4203、ユーザID管理手段4204、制御手段4205等の各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは、個別に1チップ化されてもよいし、1以上の手段、又は各手段の一部を含むように1チップ化されてもよい。
また、集積回路化の手法は、LSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAや、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。
最後に、各機能ブロックは、ソフトウェアで実現されてもよいし、LSIとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは、耐タンパ化されていてもよい。
(1)送受信手段4201及び判断手段4202
送受信手段4201は、端末装置4102からユーザID、パスワード及びコンテンツIDを受信する。
判断手段4202は、ユーザID管理手段4204により、受信したユーザID及びパスワードの組を記憶しているか否かを判断する。また、コンテンツ再生権利管理手段4203により、受信したユーザIDに対して、コンテンツIDにより識別されるコンテンツの再生が許可されているか否かを判断する。判断手段4202は、当該コンテンツの当該ユーザにおける再生可否を判断し、その結果を端末装置4102に対して送信する。
(2)コンテンツ再生権利管理手段4203
コンテンツ再生権利管理手段4203は、ユーザが保有するコンテンツの再生権利をデータベースとして管理する。このデータベースは、ユーザIDと1個以上のコンテンツIDとを対応付けて記憶している。ユーザIDにより識別されるユーザは、ユーザIDに対応するコンテンツIDにより識別されるコンテンツの再生権利を有している。このデータベースは、例えば、ユーザ「A」が、コンテンツ「1」及びコンテンツ「5」の再生権利を保有し、ユーザ「B」がコンテンツ「5」及びコンテンツ「7」の再生権利を保有していることを示す。
(3)ユーザID管理手段4204
ユーザID管理手段4204は、ユーザIDとパスワードとを対応付けて記憶している。例えば、ユーザIDとパスワードとは、サーバ装置4101、又は、提供されるサービスを利用するためのユーザIDとパスワードとであり、ユーザIDとパスワードとの対が一致した場合に限り、当該サービスの利用が許可される。
(4)制御手段4205
制御手段4205は、送受信手段4201、判断手段4202、コンテンツ再生権利管理手段4203及びユーザID管理手段4204を管理し、制御して、端末装置4102との通信や、各種データの記憶、更新、管理などを実現する。
5.3 端末装置4102の構成
端末装置4102の詳細な構成について説明する。
端末装置4102は、図52に示すように、送受信手段4301、ユーザ入力受付手段4302、表示手段4303、相互認証手段4304、利用条件読出手段4305、暗号化コンテンツ/タイトル鍵読出手段4306、バインド識別フラグ確認手段4307、再生手段4308及び制御手段4309から構成されている。
端末装置4102は、具体的には図示されていないプロセッサ及びRAM、ROM、ハードディスクなどから構成される。前記RAM、前記ROM及び前記ハードディスクには、コンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムに従って動作することにより、端末装置4102は、その機能を果たす。
なお、端末装置4102の送受信手段4301、ユーザ入力受付手段4302、表示手段4303、相互認証手段4304、利用条件読出手段4305、暗号化コンテンツ/タイトル鍵読出手段4306、バインド識別フラグ確認手段4307、再生手段4308、制御手段4309等の各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは、個別に1チップ化されてもよいし、1以上の手段、又は各手段の一部を含むように1チップ化されてもよい。
また、集積回路化の手法は、LSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAや、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。
最後に、各機能ブロックは、ソフトウェアで実現されてもよいし、LSIとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは、耐タンパ化されていてもよい。
(1)送受信手段4301
送受信手段4301は、サーバ装置4101に対してユーザID、パスワード及びコンテンツIDを送信する。また、サーバ装置4101から、当該コンテンツの再生可否を受信する。また、記憶媒体装置3403から暗号化コンテンツ、タイトル鍵、利用条件を読み出す。
(2)ユーザ入力受付手段4302及び表示手段4303
表示手段4303は、表示画面にユーザIDやパスワードの入力を促す画面を表示する。ユーザ入力受付手段4302は、ユーザが入力したユーザIDやパスワードを受け付ける。また、表示手段4303は、コンテンツリストや一覧などを表示し、ユーザが選択したコンテンツをユーザ入力受付手段4302が受け付ける。
(3)相互認証手段4304
相互認証手段4304は、鍵データを記憶し、記憶する鍵データを用いて、記憶媒体装置3403との間で相互認証処理及び鍵共有処理を実行して安全な通信路を確立する。特に、タイトル鍵は、共有した共有鍵により暗号化され、端末装置4102から記憶媒体装置3403へ安全に送られる。
(4)利用条件読出手段4305及び暗号化コンテンツ/タイトル鍵読出手段4306
利用条件読出手段4305は、記憶媒体装置3403から、利用条件を読み出す。また、暗号化コンテンツ/タイトル鍵読出手段4306は、記憶媒体装置3403から、暗号化コンテンツ及びタイトル鍵を読み出す。
(5)バインド識別フラグ確認手段4307
バインド識別フラグ確認手段4307は、ユーザが選択したコンテンツに対応する利用条件に含まれるバインド識別フラグを確認する。
例えば、バインド識別フラグが、当該コンテンツがユーザにバインドされていることを示している場合、端末装置4102は、サーバ装置4101へ再生可否を問い合わせる。これに対して、バインド識別フラグが、当該コンテンツはユーザにはバインドされておらず、メディアにバインドされていることを示している場合、端末装置4102は、サーバ装置4101への再生可否の問い合わせを行わず、再生処理へ移行する。
(6)再生手段4308
再生手段4308は、記憶媒体装置3403から読み出した暗号化コンテンツを、復号し、デコードして再生する。
(7)制御手段4309
制御手段4309は、送受信手段4301、ユーザ入力受付手段4302、表示手段4303、相互認証手段4304、利用条件読出手段4305、暗号化コンテンツ/タイトル鍵読出手段4306、バインド識別フラグ確認手段4307及び再生手段4308を管理し、制御して、サーバ装置4101、記憶媒体装置3403との通信や、ユーザへの画面表示、ユーザ入力の受付などを実現する。
5.4 コンテンツの再生時の動作(サーバに問い合わせる場合)
コンテンツの再生時のサーバ装置4101、端末装置4102、記憶媒体装置3403の動作について、図53〜図55を用いて説明する。
端末装置4102の表示手段4303は、記憶媒体装置3403から読み出したコンテンツの一覧を表示する。ユーザ入力受付手段4302は、ユーザによるコンテンツの選択を受け付ける(ステップS4401)。
利用条件読出手段4305は、ユーザが選択したコンテンツに対応する利用条件を読み出す。次に、バインド識別フラグ確認手段4307は、読み出した利用条件に含まれるバインド識別フラグがユーザバインドを示すか否か確認する(ステップS4402)。
バインド識別フラグがユーザにバインドされたコンテンツでないことを示す場合(ステップS4403でNo)、端末装置4102は、サーバ装置4101への問い合わせを行わず、記憶媒体装置3403との相互認証処理(ステップS4601)へ移行する。
これに対して、バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合(ステップS4403でYes)、端末装置4102のユーザ入力受付手段4302は、ユーザによるユーザID及びパスワードの入力を受け付け、ユーザID及びパスワードを、入力ユーザが選択済みのコンテンツのコンテンツIDと共にサーバ装置4101へ送受信手段4301を介して送信する(ステップS4501)。
サーバ装置4101の送受信手段4201は、ユーザID、パスワード及びコンテンツIDを受信する(ステップS4502)。次に、ユーザID管理手段4204において、ユーザ情報を確認してログイン処理を実行し、判断手段4202は、コンテンツ再生権利管理手段4203が管理するデータベースと、受信したコンテンツIDから再生可否を判断して結果(再生可、又は、再生不可を示す)を送信する(ステップS4503)。
端末装置4102の送受信手段4301が再生不可を示す結果を受信した場合(ステップS4504でNo)、端末装置4102は、コンテンツの再生を行わず処理を中止する。これに対して、端末装置4102の送受信手段4301が再生可を示す結果を受信した場合(ステップS4504でYes)、端末装置4102と記憶媒体装置3403は、各種データを安全に送受信するために相互認証手段4304及び3705で、相互認証処理及び鍵共有処理を実行する(ステップS4601、ステップS4602)。
安全な通信路の確立後、記憶媒体装置3403は、暗号化コンテンツ及びタイトル鍵を端末装置4102へ送信する(ステップS4603)。端末装置4102は、暗号化コンテンツ及びタイトル鍵を受信し、再生手段4308は、タイトル鍵を用いて暗号化コンテンツを復号し、復号により得られたコンテンツの再生処理(デコード等)を行う(ステップS4604)。
6.実施の形態6
6.1 コンテンツ配信システム10fの構成
コンテンツ配信システム10fは、図56に示すように、端末装置4701及び記憶媒体装置3403から構成される。
なお、記憶媒体装置3403は、制御手段(コントローラ)と記憶手段(フラッシュメモリなど)により構成される取り外し可能な記憶媒体であってもよい。また、同様に、制御手段(コントローラ)と記憶手段(フラッシュメモリなど)により構成され、端末装置4701に内蔵される内蔵メモリであってもよい。
端末装置4701は、ユーザが入力したユーザID、パスワード及びユーザが選択したコンテンツを一意に識別するコンテンツIDを受け付ける。次に、受け付けたユーザID、パスワード、コンテンツID及び記憶媒体装置3403から読み出した利用条件に基づき、ユーザが選択したコンテンツに対して、当該ユーザが再生権利を有しているか否かを判断する。再生権利を有している場合、再生を開始する。再生権利を有していない場合、再生することなく、その旨をユーザに通知する。
端末装置4701と記憶媒体装置3403の間では、相互認証処理及び鍵共有処理が実行され、安全な通信路が確立される。タイトル鍵は、通信路上を安全に、つまり、暗号化されて送信される。また、利用条件は、その改ざんを防止するために、同じく暗号化され、送信される。また、利用条件は、タイトル鍵と関連付けられて送信されるとしてもよい。例えば、利用条件のハッシュ値とタイトル鍵とをXOR演算することにより、利用条件が改ざんされた場合、正しいタイトル鍵が導出できないようにすることができる。
端末装置4701については、以降でその詳細を述べる。また、記憶媒体装置3403は、実施の形態4の記憶媒体装置3403と同様であるので、その説明を省略する。
6.2 端末装置4701の構成
端末装置4701の詳細な構成について説明する。
端末装置4701は、図57に示すように、送受信手段4301、ユーザ入力受付手段4302、表示手段4303、相互認証手段4304、利用条件読出手段4305、暗号化コンテンツ/タイトル鍵読出手段4306、バインド識別フラグ確認手段4307、再生手段4308、バインド情報算出手段4801、バインド情報比較手段4802及び制御手段4803から構成される。
端末装置4701は、具体的には、図示されていないプロセッサ及びRAM、ROM、ハードディスクなどから構成される。前記RAM、前記ROM及び前記ハードディスクには、コンピュータプログラムが記憶されており、前記プロセッサが前記コンピュータプログラムに従って動作することにより、端末装置4701は、その機能を果たす。
なお、端末装置4701の送受信手段4301、ユーザ入力受付手段4302、表示手段4303、相互認証手段4304、利用条件読出手段4305、暗号化コンテンツ/タイトル鍵読出手段4306、バインド識別フラグ確認手段4307、再生手段4308、バインド情報算出手段4801、バインド情報比較手段4802、制御手段4803等の各機能ブロックは、典型的には集積回路であるLSIとして実現される。これらは、個別に1チップ化されてもよいし、1以上の手段、又は各手段の一部を含むように1チップ化されてもよい。
また、集積回路化の手法は、LSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGAや、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
さらには、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。
最後に、各機能ブロックは、ソフトウェアで実現されてもよいし、LSIとソフトウェアの組み合わせで実現されてもよい。また、ソフトウェアは、耐タンパ化されていてもよい。
以下、各手段について説明するが、送受信手段4301〜再生手段4308は、コンテンツ配信システム10eの端末装置4102の送受信手段4301〜再生手段4308と同様であるため、その説明を省略する。
(1)バインド情報算出手段4801
バインド情報算出手段4801は、ユーザID及びパスワードに基づきバインド情報を算出する。ここで、バインド情報とは、コンテンツをユーザに紐付けるための情報を意味している。バインド情報算出手段4801は、例えば、ユーザIDと対応するパスワードを結合して結合体を生成し、その結合体に対してハッシュ演算Hashを施し、その演算結果の一部、又は全部をバインド情報とする。
バインド情報=Hash(ユーザID||パスワード)の一部又は全部 (式11)
ここで、(式11)で用いられるハッシュ演算Hashは、上述する(式10)で用いられるハッシュ演算Hashと同一でなければならない。
(2)バインド情報比較手段4802
バインド情報比較手段4802は、バインド情報算出手段4801により算出されたバインド情報と、利用条件読出手段4305により読み出された利用条件に含まれ、バインド情報記憶領域3803に記載されているバインド情報を比較して再生可否を判断する。バインド情報が一致した場合、再生が許可されると判断する。バインド情報が一致しない場合、再生は許可されないと判断する。
(3)制御手段4803
制御手段4803は、送受信手段4301、ユーザ入力受付手段4302、表示手段4303、相互認証手段4304、利用条件読出手段4305、暗号化コンテンツ/タイトル鍵読出手段4306、バインド識別フラグ確認手段4307、再生手段4308、バインド情報算出手段4801、バインド情報比較手段4802を管理し、制御して、記憶媒体装置3403との通信や、ユーザへの画面表示、ユーザ入力の受付やコンテンツの再生などを実現する。
6.3 コンテンツ再生時の動作(サーバへの問い合わせを行わない場合)
コンテンツ再生時の端末装置4701及び記憶媒体装置3403の動作について、図58〜図60を用いて説明する。
端末装置4701の表示手段4303は、記憶媒体装置3403から読み出したコンテンツの一覧を表示する。ユーザ入力受付手段4302は、ユーザによるコンテンツの選択を受け付ける(ステップS4901)。利用条件読出手段4305は、ユーザが選択したコンテンツに対応する利用条件を読み出し、バインド識別フラグ確認手段4307は、読み出した利用条件に含まれるバインド識別フラグがユーザバインドを示すか否か確認する(ステップS4902)。
バインド識別フラグがユーザにバインドされたコンテンツでないことを示す場合(ステップS4903でNo)、端末装置4701は、バインド情報の算出を行わず、記憶媒体装置3403との相互認証処理(ステップS5101)へ移行する。
これに対して、バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合(ステップS4903でYes)、端末装置4701のユーザ入力受付手段4302は、ユーザによるユーザID及びパスワードの入力を受け付ける。次に、バインド情報算出手段4801は、受け付けたユーザID及びパスワードに基づきバインド情報を算出する。次に、バインド情報比較手段4802は、読み出した利用条件のバインド情報記憶領域3803に記載されているバインド情報と、算出したバインド情報とを比較する(ステップS5001)。
利用条件のバインド情報と算出したバインド情報とが一致しない場合(ステップS5002でNo)、端末装置4701は、コンテンツの再生を行わず処理を中止する。
これに対して、利用条件のバインド情報と算出したバインド情報とが一致する場合(ステップS5002でYes)、端末装置4701と記憶媒体装置3403は、各種データを安全に送受信するため、相互認証手段4304及び3705で、相互認証処理及び鍵共有処理を実行する(ステップS5101、ステップS5102)。
次に、安全な通信路の確立後、記憶媒体装置3403は、暗号化コンテンツ及びタイトル鍵を端末装置4701へ出力する(ステップS5103)。端末装置4701は、暗号化コンテンツ及びタイトル鍵を受信し、再生手段4308は、タイトル鍵を用いて暗号化コンテンツを復号し、復号により得られたコンテンツの再生処理(デコード等)を行う(ステップS5104)。
7.実施の形態7
7.1 端末装置におけるコンテンツ一覧の表示
コンテンツ配信システム10c、10d、10e及び10fの端末装置500、3402、4102、4701における、コンテンツ一覧等の表示方法について、図61〜図67を用いて説明する。
これらの図に示されるコンテンツ一覧では、1個又は複数個のコンテンツの名称が配列されて表示されている。
(1)図61〜図63において、記憶媒体のみに紐付けられた(バインドされた)コンテンツ、ユーザAにバインドされたコンテンツ、ユーザAとは、異なるユーザであるユーザBにバインドされたコンテンツなどが、一つの記憶媒体に混在する場合において、端末装置を利用しているユーザに再生権利があり再生可能なコンテンツの名称と、再生権利がなく再生不可であるコンテンツの名称を、区別して表示する場合の表示例を示している。
図61に示すコンテンツ一覧画面5201では、再生権利がなく再生できないコンテンツの名称(名称5201a「Content D」及び名称5201b「Content P」)をコンテンツ一覧画面5201の最後に配列している。また、再生権利がなく再生できないこれらのコンテンツの名称を、他のコンテンツの名称と区別できるように、グレーアウトにより表示している。図61に示すコンテンツ一覧画面5201では、これらのコンテンツの名称にハッチングを付し、グレーアウトされていることを示している。なお、コンテンツ一覧において、グレーアウトされたコンテンツの名称をユーザが選択することはできない。
図62に示すコンテンツ一覧画面5202では、再生権利があり再生可能なコンテンツの名称のみを表示する。また、別のコンテンツ一覧画面5203では、再生権利がなく再生できないコンテンツの名称のみを表示する。このように、図62に示す場合には、再生できないコンテンツの名称を別ページに集めて表示している。この場合にも、再生権利がなく再生できないコンテンツの名称を、他のコンテンツの名称と区別できるように、グレーアウトにより表示している。
図63に示すコンテンツ一覧画面5204では、再生権利があり再生できるコンテンツの名称と、再生権利がなく再生できないコンテンツの名称とを混在させて表示している。この場合には、名称の昇順により並べて表示している。コンテンツの購入順やコンテンツの受信順に並べるとしてもよい。この場合にも、再生権利がなく再生できないコンテンツの名称を、他のコンテンツの名称と区別できるように、グレーアウトにより表示している。
(2)図64には、コンテンツの再生アプリケーション(再生ソフトウェア)が表示するトップ画面の一例を示している。ここで、トップ画面は、再生アプリケーションが、起動された後に、最初に表示するコンテンツ一覧のための画面である。再生ソフトウェアは、図64に示すトップ画面5301を表示する。
この例では、記憶媒体には、サービスAとサービスBのそれぞれから入手したコンテンツがフォルダ管理されている。サービスAのフォルダには、サービスAから入手したコンテンツが含まれている。サービスBのフォルダには、サービスBから入手したコンテンツが含まれている。また「全て」と書かれたフォルダには、サービスとは無関係に、全てのコンテンツが含まれている。
図64に示すトップ画面5301には、サービスAのフォルダを表すオブジェクト5301a、サービスBのフォルダを表すオブジェクト5301b及び「全て」のフォルダを表すオブジェクト5301cが含まれている。
ユーザは、トップ画面5301に表示されている各フォルダを示すオブジェクトを選択することにより、当該フォルダを選択する。
(3)図65には、コンテンツの再生アプリケーション(再生ソフトウェア)が表示する画面の別の一例を示している。再生ソフトウェアは、図65に示すトップ画面5401及びコンテンツ画面5402を表示する。
この例では、図64に示す場合と同様に、記憶媒体には、サービスAとサービスBのそれぞれから入手したコンテンツがフォルダ管理されている。サービスAのフォルダには、サービスAから入手したコンテンツが含まれている。サービスBのフォルダには、サービスBから入手したコンテンツが含まれている。また「全て」と書かれたフォルダには、サービスとは無関係に、全てのコンテンツが含まれている。
図65に示す例では、さらに、ユーザは、ユーザのユーザID及びパスワードで、サービスAのシステムにログインしている。ユーザは、サービスAから提供され、当該ユーザにバインドされたコンテンツを再生することができる。しかし、このユーザは、サービスBから提供されるコンテンツを再生することはできない。
図65に示すトップ画面5401には、サービスAのフォルダを表すオブジェクト5401a、サービスBのフォルダを表すオブジェクト5401b及び「全て」のフォルダを表すオブジェクト5401cが含まれている。また、オブジェクト5401bには、鍵マーク5401dが付されている。鍵マーク5401dは、ユーザがこのフォルダを開くことが許可されないことを示している。
オブジェクト5401cには、鍵マークが付されていないので、このユーザは、オブジェクト5401cを選択することができる。このユーザがオブジェクト5401cを選択すると、「全て」のフォルダが開かれる。このとき、再生ソフトウェアは、図65に示すコンテンツ画面5402を表示する。
コンテンツ画面5402は、コンテンツの名称5402a、5402b、5402c及び5402dを含む。名称5402c及び5402dには、それぞれ、鍵マーク5402e及び5402fが付されている。なお、鍵マークを付することに代えて、コンテンツの名称をグレーアウトにより表示してもよい。
このユーザは、鍵マークの付されていないコンテンツの名称5402a、5402bを選択することができる。したがって、このユーザは、これらのコンテンツの再生を許可される。一方、名称5402c及び5402dには、それぞれ、鍵マーク5402e及び5402fが付されているので、このユーザは、これらのコンテンツの再生を許可されない。
(4)図66に、ユーザがユーザID及びパスワードを使って端末装置又は再生アプリケーション(再生ソフトウェア)にログインしている場合の表示画面5501を示す。また、図67に、ユーザがログインしていない場合の表示画面5502を示す。
この例では、サービスBに属するコンテンツは、あるユーザにバインドされているものとする。また、サービスAに属するコンテンツは、記憶媒体にバインドされているものとする。
表示画面5501は、サービスAのフォルダを表すオブジェクト5501a、サービスBのフォルダを表すオブジェクト5501b及び「全て」のフォルダを表すオブジェクト5551cが含まれている。
表示画面5502は、サービスAのフォルダを表すオブジェクト5502aを含む。
ユーザがログインしている場合、表示画面5501が表示される。ユーザは、オブジェクト5501a、オブジェクト5501b及びオブジェクト5551cを選択することができる。
一方、ユーザがログインしていない場合、表示画面5502が表示される。ユーザは、オブジェクト5502aのみを選択することができる。
ここで、例えば、サービスBに属するコンテンツについて、視聴するユーザに、年齢制限が付されているような場合に、ユーザのログイン状態に応じて非表示にすることは効果的である。
8.その他の変形例
なお、本発明を上記の実施の形態に基づいて説明してきたが、本発明は、上記の実施の形態に限定されないのはもちろんである。以下のような場合も本発明に含まれる。
(1)上記の各実施の形態では、記憶媒体装置としてSDカードのようなメモリカードを想定している。しかし、記憶媒体装置は、SDカードのようなメモリカードには限定されない。記憶媒体装置は、データを記憶するための記憶媒体と記憶媒体に記憶されているデータの入出力を制御する制御部とを備えるものであればよい。
例えば、HDD(ハードディスクドライブ装置)のように、データを記憶するためのストレージデバイスと、前記ストレージデバイスに記憶されているデータの入出力を制御する制御LSIとが組みになったデバイスであってもよい。また、メモリカードのような脱着式でなく、携帯電話、eBook、NetBookなどに内蔵された内蔵型メモリデバイスと制御LSIとが組みになった構成であってもよい。
(2)実施の形態3のコンテンツ配信システム10cでは、端末装置500と鍵配信装置400の間、端末装置500と記憶媒体装置600の間、また、鍵配信装置400と記憶媒体装置600の間のデータの保護の仕組みは、相互認証時に共有する共通鍵による保護としているが、これに限定されるものではない。データ転送において、データの安全性が確保されればよい。例えば、HTTPSのような技術を用いてもよい。
(3)実施の形態3のコンテンツ配信システム10cでは、鍵配信装置400は、例えば、加工されたタイトル鍵等の通信データを、端末装置500を土管として経由して、記憶媒体装置600に送信している。しかし、鍵配信装置400から記憶媒体装置600に対する通信データの送信方法は、これに限定されるものではない。鍵配信装置400から記憶媒体装置600に対する通信データの安全性が確保されればよい。
例えば、鍵配信装置400は、通信データを、端末装置500とは異なる別の端末装置を土管として経由して、記憶媒体装置600に送信してもよい。ここで、端末装置500とは異なる別の端末装置は、通信データの送受信を中継する。端末装置500は、記憶媒体装置600に記憶されているコンテンツを再生する。
このとき、鍵配信装置400と別の端末装置との間で、相互認証処理及び鍵共有処理を行い、共通鍵を共有する。鍵配信装置400は、共通鍵を用いて通信データを暗号化して送信する。別の端末装置は、共通鍵を用いて暗号化された通信データを復号して、元の通信データを取得する。
(4)実施の形態3のコンテンツ配信システム10cでは、URにハッシュ演算を施し、得られたハッシュ値とタイトル鍵とにXORなどの可逆の変換を施して、演算タイトル鍵を生成する。
演算タイトル鍵=タイトル鍵 XOR Hash(UR) (式12)
なお、(式12)は、(式4)と同一である。
しかし、演算タイトル鍵の生成方法は、これに限定されるものではない。元のタイトル鍵を復元できるものであればよい。
(a)例えば、タイトル鍵と、URのハッシュ値と、記憶媒体装置600を識別する記憶媒体装置IDとにXORなどの可逆の変換を施して、演算タイトル鍵を生成してもよい。
演算タイトル鍵=タイトル鍵 XOR Hash(UR) XOR 記憶媒体装置ID (式13)
この場合、端末装置500は、演算タイトル鍵と、URのハッシュ値と、記憶媒体装置IDとにXORなどの可逆の変換を施して、タイトル鍵を復元する。
タイトル鍵=演算タイトル鍵 XOR Hash(UR) XOR 記憶媒体装置ID (式14)
ここで、(式13)で用いられるハッシュ演算Hashは、(式14)で用いられるハッシュ演算Hashと同一でなければならない。
(b)例えば、タイトル鍵と、URのハッシュ値と、記憶媒体装置IDのハッシュ値とにXORなどの可逆の変換を施して、演算タイトル鍵を生成してもよい。
演算タイトル鍵=タイトル鍵 XOR Hash(UR) XOR Hash(記憶媒体装置ID) (式15)
この場合、端末装置500は、演算タイトル鍵と、URのハッシュ値と、記憶媒体装置IDのハッシュ値とにXORなどの可逆の変換を施して、タイトル鍵を復元する。
タイトル鍵=演算タイトル鍵 XOR Hash(UR) XOR Hash(記憶媒体装置ID) (式16)
ここで、(式15)で用いられるハッシュ演算Hashは、(式16)で用いられるハッシュ演算Hashと同一でなければならない。
(c)例えば、URにハッシュ演算を施し、得られたハッシュ値とタイトル鍵とにXORなどの可逆の変換を施して、演算タイトル鍵を生成する。
演算タイトル鍵=タイトル鍵 XOR Hash(UR) (式17)
なお、(式17)は、(式4)と同一である。
ここまでは、コンテンツ配信システム10cと同様である。
鍵発行装置200は、鍵発行装置秘密鍵を用いて、記憶媒体装置IDにデジタル署名を施して、署名データを生成する。端末装置500は、鍵発行装置公開鍵を用いて、署名データを検証する。検証に成功した場合に、演算タイトル鍵からタイトル鍵を復元してもよい。
また、鍵配信装置400が、鍵発行装置200と同様に、記憶媒体装置IDにデジタル署名を施して、署名データを生成してもよい。
(5)実施の形態3のコンテンツ配信システム10cでは、端末装置500は、図37及び図40に示すように、視聴権確認要求データ17301及び17302に含まれるログイン状態領域1736に、例えば、「自動ログオフなし」、「2週間保持」などのように、端末装置500が視聴権利を保持する期間や条件を指定している。しかし、端末装置500により視聴権利を保持する期間や条件を指定することには、限定されない。端末装置500により視聴権利を保持する期間や条件が限定されればよい。
例えば、端末装置500が期間や条件を指定する代わりに、権利管理装置700が期間や条件を指定してもよい。この場合において、視聴権確認要求データ17301のログイン状態領域1736は不要である。図38に示す視聴権確認応答データ17401にログイン状態領域1746を追加してもよい。ログイン状態領域1746には、ログイン状態領域1736と同様に、端末装置500が視聴権利を保持する期間や条件を格納する。端末装置500は、視聴権確認応答データ17401に含まれるログイン状態領域1746に格納されている期間や条件に従う。
(6)実施の形態5のコンテンツ配信システム10eでは、端末装置4102がサーバ装置4101に対して再生可否の問い合わせを行う。サーバ装置4101は、バインド情報に基づき再生可否を判断し、その判断結果(再生可、又は、再生不可を示す)を端末装置4102に送信している。しかし、再生可否の判断の方法は、上記に限定されるものではない。再生の可否が正しく判断されればよい。
例えば、サーバ装置4101が、ユーザから受け取ったユーザID及びパスワードからバインド情報を算出し、算出したバインド情報を端末装置4102に対して送信する。端末装置4102は、受信したバインド情報と、利用条件に記載されているバインド情報を比較する。端末装置4102は、一致する場合に再生可とし、一致しない場合に再生不可としてもよい。
(7)各実施の形態では、バインド情報は、ユーザID及びパスワードから生成されるとしている。しかし、バインド情報の生成方法は、これに限定されるものではない。バインド情報は、ユーザに固有に生成されるものであればよい。
例えば、サーバ装置のバインド情報を生成する生成部は、ユーザに固有の固有情報であるユーザIDに基づいてバインド情報を生成するとしてもよい。具体的には、生成部は、ユーザIDを含むバインド情報を生成してもよい。また、ユーザIDを要約して、バインド情報を生成してもよい。具体的には、ユーザIDに一方向性演算であるハッシュ演算Hashを施してハッシュ値を生成し、生成したハッシュ値をバインド情報としてもよい。サーバ装置は、ユーザIDとバインド情報とを対応付けて記憶する。再生装置は、ユーザIDに対応付けられたバインド情報を、サーバ装置から取得する。
また、例えば、サーバ装置のバインド情報を生成する生成部は、ユーザID及びパスワードに加え、サーバ装置が生成したデータ(例えば乱数データや、管理用のシリアル番号、それらの組み合わせ)に基づきバインド情報を生成し、生成したバインド情報を利用条件に追加してもよい。
また、生成部は、ユーザIDを含むバインド情報を生成してもよい。
また、生成部は、ユーザIDに、一方向性演算として、ハッシュ演算を施して、ハッシュ値を生成し、生成したハッシュ値を含むバインド情報を生成してもよい。
また、ユーザID及びパスワードに加え、サーバ装置は、コンテンツID、端末装置を製造するメーカを識別するメーカID、サーバ装置を運営する事業者を識別する事業者ID、コンテンツ提供者を識別するコンテンツ提供者ID、記憶媒体を一意に識別するための記憶媒体IDを取得する。サーバ装置の生成部は、ユーザID及びパスワード、並びに、これらのIDの中から一つ、又は全部、又はその組み合わせを用いて、バインド情報を生成してもよい。
また、サーバ装置の生成部は、ユーザID及びパスワードに代えて、ユーザを個別に識別する生体情報を用いて、バインド情報を生成してもよい。また、ユーザID及びパスワードとともに、ユーザを個別に識別する生体情報を用いてバインド情報を生成してもよい。
また、音楽コンテンツを提供するサービスAや映画コンテンツを提供するサービスBなど、再生権利を管理するサーバ装置やサービスが複数存在する場合に、サーバ装置の生成部は、そのサービスや再生権利を管理するサーバ装置を一意に識別するサービス識別子をバインド情報の生成に関与させてもよい。
(バインド情報の生成方法)
以下に、サーバ装置の生成部による具体的なバインド情報の生成方法を示す。
(a)ユーザID、パスワード及び乱数データをこの順序で結合して、結合体を生成し、生成した結合体にハッシュ演算Hashを施して、バインド情報を生成する。
バインド情報=Hash(ユーザID||パスワード||乱数データ) (式18)
なお、(式18)で用いるハッシュ演算Hashは、上記の各実施の形態及び各変形において用いられているハッシュ演算Hashと同一のものであってもよいし、異なるものであってもよい。
ここで、乱数データに代えて、シリアル番号、コンテンツID、メーカID、事業者ID、コンテンツ提供者ID、記憶媒体ID、サービス識別子の何れか一つを用いてもよい。
(b)ユーザID及びパスワードをこの順序で結合して、結合体を生成し、生成した結合体にハッシュ演算Hashを施して、ハッシュ値を算出し、ハッシュ値と乱数データとを結合して、バインド情報を生成する。
バインド情報=Hash(ユーザID||パスワード)||乱数データ (式19)
なお、(式19)で用いるハッシュ演算Hashは、上記の各実施の形態及び各変形において用いられているハッシュ演算Hashと同一のものであってもよいし、異なるものであってもよい。
ここで、乱数データに代えて、シリアル番号、コンテンツID、メーカID、事業者ID、コンテンツ提供者ID、記憶媒体ID、サービス識別子の何れか一つを用いてもよい。
(c)ユーザID、パスワード、乱数データ及びシリアル番号をこの順序で結合して、結合体を生成し、生成した結合体にハッシュ演算Hashを施して、バインド情報を生成する。
バインド情報=Hash(ユーザID||パスワード||乱数データ||シリアル番号) (式20)
なお、(式20)で用いるハッシュ演算Hashは、上記の各実施の形態及び各変形において用いられているハッシュ演算Hashと同一のものであってもよいし、異なるものであってもよい。
ここで、乱数データ及びシリアル番号に代えて、コンテンツID、メーカID、事業者ID、コンテンツ提供者ID、記憶媒体ID、サービス識別子の何れか2個、又は、3個以上の個数のIDを用いてもよい。
(d)上記(a)〜(f)において、ユーザID、パスワード、乱数データ、シリアル番号、コンテンツID、メーカID、事業者ID、コンテンツ提供者ID、記憶媒体ID及びサービス識別子等を結合する順序を入れ替えてもよい。
(再生可否の判断方法)
コンテンツの再生時に、コンテンツの再生可否をサーバ装置へ問い合わせる場合、サーバ装置は、上記のようにして、ユーザID、パスワード、サーバ装置が生成したデータ又はサーバ装置が取得したデータに基づきバインド情報を算出する。判断手段4202は、コンテンツ再生権利管理手段4203が管理するデータベースと照らし合わせて再生可否を判断し、その結果を送信してもよい。
また、バインド情報を生成する際に用いたデータ(サーバ装置が生成したデータ又はサーバ装置が取得したデータ)を、サーバ装置は、端末装置へ送信してもよい。端末装置は、バインド情報を算出して、利用条件記載のバインド情報と比較して再生可否を判断する。また、端末装置は、サーバ装置からバインド情報そのものを受信し、利用条件記載のバインド情報と比較して再生可否を判断してもよい。
また、コンテンツの再生時に、コンテンツの再生可否をサーバ装置に対して問い合わせを行わず、端末装置は、サーバ装置が生成したデータ又は取得したデータを保持しておくか、又は、そのデータを記憶媒体に記録しておき、再生時に読み出してバインド情報を算出してもよい。また、端末装置がバインド情報そのものを記憶しておいてもよい。端末装置は、算出したバインド情報又は記憶しているバインド情報を用いて、再生可否の判断を行う。
(8)各実施の形態では、バインド情報をユーザID及びパスワードから生成している。しかし、バインド情報の生成方法は、これには限定されない。ユーザID及びパスワードに対応して、又は、ユーザIDに対応して、バインド情報が取得できればよい。
サーバ装置は、例えば、ユーザから取得したユーザID及びパスワードとは、独立して、バインド情報をランダムに生成する。次に、生成したバインド情報を利用条件の中に格納する。また、サーバ装置は、生成したバインド情報と、ユーザID及びコンテンツIDを対応付けて記憶する。
コンテンツの再生時に、端末装置は、サーバ装置に対して、ユーザID及びパスワードを送信して、バインド情報を要求する。サーバ装置は、端末装置から受け取ったユーザID及びパスワードに対応する(又は、ユーザIDに対応する)バインド情報を読み出し、読み出したバインド情報を端末装置へ送信する。
(9)実施の形態7では、再生不可のコンテンツの名称をグレーアウトするなどしてユーザへ提示する例を示している。しかし、ユーザへの提示方法は、これらには限定されるものではない。ユーザが再生不可のコンテンツを認識できればよい。
例えば、ユーザが再生不可のコンテンツの再生を試みた場合に、端末装置は、「このコンテンツは再生できません」、「別のユーザIDでログインしてください」、「オンライン接続(サーバ接続)してください」等々のメッセージを表示して、ユーザからの再生指示を受け付けないようにしてもよい。
また、ユーザが再生不可のコンテンツの削除を試みた場合、同様のメッセージを表示して、ユーザからの削除指示を受け付けないようにしてもよい。
また、端末装置に内蔵されている記憶媒体の中に、あるユーザA及びサービスBにバインドされたコンテンツが蓄積されているとする。そのユーザAがサービスBから脱退すると、ユーザA及びサービスBにバインドされているコンテンツの再生権利がなくなる。この場合に、ユーザAがサービスBから脱退する前に、端末装置は、バインドされたコンテンツが再生できなくなる旨を表示してもよい。
さらに再生権利がなくなったコンテンツを削除する場合に、コンテンツ自身がこのコンテンツを削除することなく、表示画面においてユーザから見えない状態にしておいてもよい。また、端末装置は、コンテンツ一覧リストだけを保持しておき、再度、ユーザAがサービスBに参加した場合に、保存されているコンテンツを復活させてもよい。また、端末装置は、保持するコンテンツ一覧リストから対応するコンテンツを自動的に取得してもよい。
(10)端末装置は、ユーザにバインドされたコンテンツを、ユーザが当該端末装置を用いて、サーバ装置にアクセスすることにより、記憶媒体にバインドされたコンテンツ(どのユーザでも再生可能なコンテンツ)に変換してもよい。
具体的には、サーバ装置は、端末装置を介して、記憶媒体から、記憶媒体に固有の固有情報を取得する。次に、サーバ装置は、取得した固有情報を用いて、タイトル鍵を暗号化して、暗号化タイトル鍵を生成し、端末装置を介して、暗号化タイトル鍵を記憶媒体に出力する。記憶媒体は、演算タイトル鍵に代えて、暗号化タイトル鍵を記憶する。
端末装置は、記憶媒体から固有情報及び暗号化タイトル鍵を読み出す。次に、固有情報を用いて、暗号化タイトル鍵を復号して、復号タイトル鍵を生成する。次に、生成した復号タイトル鍵を用いて、コンテンツを復号する。
さらに、ユーザにバインドされたコンテンツを削除する際に、サーバ装置にアクセスして、サーバ装置のコントロールの下、安全にコンテンツを削除して、再生権利を返却する構成であってもよい。例えば、サーバ装置が、端末装置を介して、記憶媒体に記録されている演算タイトル鍵を削除したり、記憶媒体に記録されている演算タイトル鍵に別の情報を上書きしたりして、演算タイトル鍵を使用できない状態にしてもよい。
また、サーバ装置が、端末装置を介して、記憶媒体に記録されている利用条件を書き換えるなどして、コンテンツを使用できない状態にしてもよい。
(11)各実施の形態では、サーバ装置又は端末装置が、利用条件、バインド情報、ドメイン情報等を参照して、コンテンツの再生の可否を判断している。しかし、コンテンツの再生の可否の判断の方法は、これらに限定されるものではない。記憶媒体装置がコンテンツの再生可否の判断をしてもよい。
サーバ装置又は端末装置は、記憶媒体装置に対してバインド情報を送信する。記憶媒体装置は、端末装置から読み出し指定されたコンテンツの利用条件に記載されているバインド情報と、受信したバインド情報が一致しているか否かを確認する。一致していない場合に、記憶媒体装置は、端末装置に対して、タイトル鍵等の読み出しを拒否する。一致している場合に、記憶媒体装置は、端末装置に対して、タイトル鍵等を出力する。
また、サーバ装置又は端末装置は、記憶媒体装置に対して、ユーザID及びパスワードを送信してもよい。記憶媒体装置は、ユーザID及びパスワードを受け取り、受け取ったユーザID及びパスワードを用いて、バインド情報を生成する。次に、バインド情報が一致するか否かを確認する。
(12)ユーザID及びパスワードから生成するバインド情報を用いる代わりに、ある一定の固定値をバインド情報として用いるとしてもよい。これにより、全てのユーザがそのコンテンツについて、再生権利を持つように構成することができる。
(13)本発明の一態様は、少なくとも、コンテンツの復号に用いられるタイトル鍵と、少なくとも再生時のコンテンツの出力ルールを記載した再生関連情報と、から演算タイトル鍵を計算し、前記演算タイトル鍵と前記再生関連情報を、端末装置を経由して、記憶媒体装置に記録させる鍵配信装置と、暗号化された前記コンテンツと、前記演算タイトル鍵と、前記再生関連情報と、を受け取って、前記記憶媒体装置に記録する前記端末装置と、ユーザアカウント毎の前記コンテンツの視聴権を管理する権利管理装置と、からなる配信システムにおける前記鍵配信装置である。ユーザ関連フラグは、前記再生関連情報に、前記コンテンツが前記ユーザアカウントとの関連付けが確認された場合、再生が許可されるか否かを示す。前記鍵配信装置は、ある前記コンテンツに関して、前記コンテンツと前記ユーザアカウントの関連付けが求められる場合、前記再生関連情報の前記ユーザ関連フラグをONに設定し、もしくは、前記コンテンツと前記ユーザアカウントの関連付けが求められない場合、前記再生関連情報の前記ユーザ関連フラグをOFFに設定し、前記タイトル鍵と前記再生関連情報と、から前記演算タイトル鍵を計算し、前記演算タイトル鍵と前記再生関連情報を、前記端末装置を経由して、前記記憶媒体装置に記録させることを特徴とする。
ここで、前記鍵配信装置は、前記権利管理装置が複数ある場合に特定の前記権利管理装置を指定するため、前記再生関連情報に権利管理装置番号を追加し、前記タイトル鍵と前記再生関連情報と、から前記演算タイトル鍵を計算し、前記演算タイトル鍵と前記再生関連情報を、前記端末装置を経由して前記記憶媒体装置に記録させるとしてよい。
ここで、前記鍵配信装置は、前記コンテンツを特定するために、前記再生関連情報に前記コンテンツ毎に割り当てられたコンテンツ番号を追加し、前記タイトル鍵と前記再生関連情報と、から前記演算タイトル鍵を計算し、前記演算タイトル鍵と前記再生関連情報を、前記端末装置を経由して前記記憶媒体装置に記録させるとしてもよい。
ここで、前記鍵配信装置は、前記再生関連情報に前記コンテンツ毎に割り当てられた前記コンテンツ秘密番号を追加し、前記タイトル鍵と前記再生関連情報と、から前記演算タイトル鍵を計算し、前記演算タイトル鍵と前記再生関連情報を、前記端末装置を経由して前記記憶媒体装置に記録させるとしてもよい。
また、本発明の他の態様は、少なくとも、前記コンテンツの復号に用いられる前記タイトル鍵と、少なくとも再生時の前記コンテンツの出力ルールを記載した前記再生関連情報と、から前記演算タイトル鍵を計算し、前記演算タイトル鍵と前記再生関連情報を、前記端末装置を経由して、前記記憶媒体装置に記録させる前記鍵配信装置と、暗号化された前記コンテンツと、前記演算タイトル鍵と、前記再生関連情報と、を受け取って、前記記憶媒体装置に記録する前記端末装置と、前記ユーザアカウント毎の前記コンテンツの前記視聴権を管理する前記権利管理装置と、からなる前記配信システムにおける前記端末装置である。ユーザ関連フラグは、前記再生関連情報に、前記コンテンツが前記ユーザアカウントとの関連付けが確認された場合、再生が許可されるか否かを示す。前記端末装置は、前記記憶媒体装置に記録されたある前記コンテンツに関する前記再生関連情報に記録されている前記ユーザ関連フラグがONの場合、ある前記ユーザアカウントに関して、再生しようとする前記コンテンツの前記視聴権の有無を前記権利管理装置に確認し、前記視聴権がある場合、再生を行い、前記視聴権がない場合、再生を行わないとしてもよい。
ここで、前記端末装置は、前記記憶媒体装置に記録されたある前記コンテンツに関する前記再生関連情報に記録されている前記ユーザ関連フラグがOFFの場合、前記コンテンツを再生するとしてもよい。
ここで、前記端末装置は、再生しようとする前記コンテンツの前記視聴権の有無を確認し、前記視聴権がある場合、前記権利管理装置から受け取った前記コンテンツ秘密番号を使って、ある前記コンテンツに関する前記再生関連情報の前記コンテンツ秘密番号の領域を上書きし、前記演算タイトル鍵を用いて、元の前記タイトル鍵を計算し、計算された前記タイトル鍵を用いて、前記コンテンツを復号することで、前記コンテンツを再生するとしてもよい。
また、本発明の別の態様は、コンテンツを配信するサーバ装置と、前記コンテンツを利用する端末装置と、記憶媒体からなるコンテンツ配信システムである。前記サーバ装置は、暗号化コンテンツと、前記暗号化コンテンツを復号するためのタイトル鍵と、前記暗号化コンテンツの利用条件を記憶する記憶手段と、前記端末装置から当該端末装置を利用する利用者の利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を受信する受信手段と、前記受信した利用者情報に基づき、前記受信したコンテンツ識別子から特定される利用条件を更新する更新手段と、前記コンテンツ識別子に対応する暗号化コンテンツと、前記更新した利用条件を送信する送信手段とを備える。前記端末装置は、前記サーバ装置へ利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を送信する送信手段と、前記サーバ装置から前記暗号化コンテンツと、タイトル鍵と、利用条件を受信する受信手段と、前記記憶媒体に受信した暗号化コンテンツと、タイトル鍵と、利用条件を記録する記録手段とを備える。
ここで、前記サーバ装置は、前記記憶媒体との間で相互に認証処理を実行し、共通の鍵を生成する相互認証手段とを備え、前記記憶媒体は、前記サーバ装置との間で相互に認証処理を実行し、共通の鍵を生成する相互認証手段とを備えるとしてもよい。
ここで、前記記憶媒体は、前記記憶媒体を一意に識別する媒体識別子を保持する保持手段と、前記媒体識別子を送信する送信手段とを備え、前記サーバ装置は、前記利用者情報と、前記媒体識別子の少なくとも両方をタイトル鍵と関連付けする関連付け手段と、を備え、前記サーバ装置の前記受信手段は、さらに、前記記憶媒体から前記媒体識別子を受信するとしてもよい。
ここで、前記記憶媒体は可搬媒体であるとしてもよい。
ここで、前記記憶媒体は、前記端末装置に内蔵されている内蔵メモリであることとしてもよい。
本発明の別の態様は、コンテンツを配信するサーバ装置である。前記サーバ装置は、暗号化コンテンツと、前記暗号化コンテンツを復号するためのタイトル鍵と、前記暗号化コンテンツの利用条件を記憶する記憶手段と、前記端末装置から当該端末装置を利用する利用者の利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を受信する受信手段と、前記受信した利用者情報に基づき、前記受信したコンテンツ識別子から特定される利用条件を更新する更新手段と、前記コンテンツ識別子に対応する暗号化コンテンツと、前記更新した利用条件を送信する送信手段とを備えることを特徴とする。
ここで、前記サーバ装置の受信手段は、さらに、前記記憶媒体から前記媒体識別子を受信し、前記利用者情報と、前記媒体識別子の少なくとも両方をタイトル鍵と関連付けする関連付け手段とを備えるとしてもよい。
本発明の別の態様は、コンテンツを配信する配信方法と、前記コンテンツを利用する利用方法と、記憶媒体からなるコンテンツ配信方法である。前記コンテンツ配信方法は、暗号化コンテンツと、前記暗号化コンテンツを復号するためのタイトル鍵と、前記暗号化コンテンツの利用条件を記憶する記憶ステップと、端末装置を利用する利用者の利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を受信する受信ステップと、前記受信した利用者情報に基づき、前記受信したコンテンツ識別子から特定される利用条件を更新する更新ステップと、前記コンテンツ識別子に対応する暗号化コンテンツと、前記更新した利用条件を送信する送信ステップとを含む。前記利用方法は、利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を送信する送信ステップと、前記暗号化コンテンツと、タイトル鍵と、利用条件を受信する受信ステップと、前記記憶媒体に受信した暗号化コンテンツと、タイトル鍵と、利用条件を記録する記録ステップとを含むことを特徴とする。
また、本発明の別の態様は、コンテンツを配信する配信方法である。前記配信方法は、暗号化コンテンツと、前記暗号化コンテンツを復号するためのタイトル鍵と、前記暗号化コンテンツの利用条件を記憶する記憶ステップと、端末装置を利用する利用者の利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を受信する受信ステップと、前記受信した利用者情報に基づき、前記受信したコンテンツ識別子から特定される利用条件を更新する更新ステップと、前記コンテンツ識別子に対応する暗号化コンテンツと、前記更新した利用条件を送信する送信ステップとを含むことを特徴とする。
また、本発明の別の態様は、コンテンツを配信する配信プログラムである。前記配信プログラムは、コンピュータに、暗号化コンテンツと、前記暗号化コンテンツを復号するためのタイトル鍵と、前記暗号化コンテンツの利用条件を記憶する記憶ステップと、端末装置を利用する利用者の利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を受信する受信ステップと、前記受信した利用者情報に基づき、前記受信したコンテンツ識別子から特定される利用条件を更新する更新ステップと、前記コンテンツ識別子に対応する暗号化コンテンツと、前記更新した利用条件を送信する送信ステップとを実行させることを特徴とする。
また、本発明の別の態様は、コンテンツを配信する配信プログラムが保存されている記憶媒体である。前記配信プログラムは、コンピュータに、暗号化コンテンツと、前記暗号化コンテンツを復号するためのタイトル鍵と、前記暗号化コンテンツの利用条件を記憶する記憶ステップと、端末装置を利用する利用者の利用者情報と、利用者が所望するコンテンツのコンテンツ識別子を受信する受信ステップと、前記受信した利用者情報に基づき、前記受信したコンテンツ識別子から特定される利用条件を更新する更新ステップと、前記コンテンツ識別子に対応する暗号化コンテンツと、前記更新した利用条件を送信する送信ステップとを実行させることを特徴とする。
また、本発明の別の態様は、コンテンツの利用可否を提供するサーバ装置と、前記コンテンツを利用する端末装置と、記憶媒体からなるコンテンツ利用システムである。前記サーバ装置は、前記端末装置を利用する利用者の利用者情報と、コンテンツを一意に識別するコンテンツを管理する管理手段と、前記端末装置から受信し利用者情報とコンテンツ識別子から、利用可否を判断する判断手段とを備える。前記端末装置は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、前記確認手段が利用者に紐付けられていると判断した場合に、前記サーバ装置へ前記利用者情報と、前記コンテンツ識別子を送信する送信手段と、前記サーバ装置から前記コンテンツの利用可否を受信する受信手段と、前記受信した利用可否が利用可である場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
また、本発明の別の態様は、コンテンツの利用可否を提供するサーバ装置である。前記サーバ装置は、端末装置を利用する利用者の利用者情報と、コンテンツを一意に識別するコンテンツを管理する管理手段と、前記端末装置から受信し利用者情報とコンテンツ識別子から、利用可否を判断する判断手段とを備えることを特徴とする。
また、本発明の別の態様は、コンテンツを利用する端末装置である。前記端末装置は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、前記確認手段が利用者に紐付けられていると判断した場合に、サーバ装置へ前記利用者情報と、前記コンテンツ識別子を送信する送信手段と、前記サーバ装置から前記コンテンツの利用可否を受信する受信手段と、前記受信した利用可否が利用可である場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
ここで、前記端末装置は、前記記憶媒体に記録されているコンテンツのコンテンツリストを表示する表示手段を備え、前記表示手段は、利用者に紐付けられたコンテンツと、利用者に紐付けられてないコンテンツを区別して表示するとしてもよい。
ここで、前記端末装置は、利用者が所望するコンテンツの入力を受け付ける受付手段を備え、前記受付手段は、利用者に紐付けられたコンテンツを受け付けた場合に、前記表示手段が、サーバ装置への接続を促すメッセージを表示するとしてもよい。
また、本発明の別の態様は、コンテンツの利用可否を提供する提供方法と、前記コンテンツを利用する利用方法と、記憶媒体からなるコンテンツ利用方法である。前記提供方法は、端末装置を利用する利用者の利用者情報と、コンテンツを一意に識別するコンテンツを管理する管理ステップと、前記端末装置から受信し利用者情報とコンテンツ識別子から、利用可否を判断する判断ステップとを含む。前記利用方法は、利用者が所望するコンテンツの選択を受け付ける受付ステップと、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出ステップと、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認ステップと、前記確認ステップが利用者に紐付けられていると判断した場合に、前記サーバ装置へ前記利用者情報と、前記コンテンツ識別子を送信する送信ステップと、前記サーバ装置から前記コンテンツの利用可否を受信する受信ステップと、前記受信した利用可否が利用可である場合に、前記コンテンツを利用する利用ステップとを含むことを特徴とする。
また、本発明の別の態様は、コンテンツの利用可否を提供する提供方法である。前記提供方法は、端末装置を利用する利用者の利用者情報と、コンテンツを一意に識別するコンテンツを管理する管理ステップと、前記端末装置から受信し利用者情報とコンテンツ識別子から、利用可否を判断する判断ステップとを含むことを特徴とする。
また、本発明の別の態様は、コンテンツを利用する利用方法である。前記利用方法は、利用者が所望するコンテンツの選択を受け付ける受付ステップと、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出ステップと、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認ステップと、前記確認ステップが利用者に紐付けられていると判断した場合に、サーバ装置へ前記利用者情報と、前記コンテンツ識別子を送信する送信ステップと、前記サーバ装置から前記コンテンツの利用可否を受信する受信ステップと、前記受信した利用可否が利用可である場合に、前記コンテンツを利用する利用ステップとを含むことを特徴とする。
また、本発明の別の態様は、コンテンツを利用する端末装置の集積回路である。前記集積回路は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、前記確認手段が利用者に紐付けられていると判断した場合に、サーバ装置へ前記利用者情報と、前記コンテンツ識別子を送信する送信手段と、前記サーバ装置から前記コンテンツの利用可否を受信する受信手段と、前記受信した利用可否が利用可である場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
また、本発明の別の態様は、コンテンツを利用する端末装置である。前記端末装置は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、前記確認手段が利用者に紐付けられていると判断した場合に、利用者情報の入力を促す画面を表示する表示手段と、利用者が入力した利用者情報から関連付け情報を算出する算出手段と、前記算出した関連付け情報と、前記読み出した利用条件に記載されている関連付け情報を比較する比較手段と、前記比較手段が比較した結果、関連付け情報が一致する場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
ここで、前記関連付け情報は、前記利用者情報に加え、サーバ装置を一意に識別するサーバ装置識別子や、コンテンツを提供するサービスを一意に識別するサービス識別子の何れかを作用させて生成されるとしてもよい。
ここで、前記端末装置は、前記記憶媒体に記録されているコンテンツのコンテンツリストを表示する表示手段を備え、前記表示手段は、利用者に紐付けられたコンテンツと、利用者に紐付けられてないコンテンツを区別して表示するとしてもよい。
本発明の別の態様は、コンテンツを利用する利用方法である。前記利用方法は、利用者が所望するコンテンツの選択を受け付ける受付ステップと、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出ステップと、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認ステップと、前記確認ステップが利用者に紐付けられていると判断した場合に、利用者情報の入力を促す画面を表示する表示ステップと、利用者が入力した利用者情報から関連付け情報を算出する算出ステップと、前記算出した関連付け情報と、前記読み出した利用条件に記載されている関連付け情報を比較する比較ステップと、前記比較ステップが比較した結果、関連付け情報が一致する場合に、前記コンテンツを利用する利用ステップと含むことを特徴とする。
本発明の別の態様は、コンテンツを利用する端末装置の集積回路である。前記集積回路は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、前記確認手段が利用者に紐付けられていると判断した場合に、利用者情報の入力を促す画面を表示する表示手段と、利用者が入力した利用者情報から関連付け情報を算出する算出手段と、前記算出した関連付け情報と、前記読み出した利用条件に記載されている関連付け情報を比較する比較手段と、前記比較手段が比較した結果、関連付け情報が一致する場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
本発明の別の態様は、コンテンツを利用する端末装置である。前記端末装置は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、利用者に紐付けられた関連付け情報を記憶する記憶手段と、前記確認手段が利用者に紐付けられていると判断した場合に、前記記憶している関連付け情報と、前記読み出した利用条件に記載されている関連付け情報を比較する比較手段と、前記比較手段が比較した結果、関連付け情報が一致する場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
本発明の別の態様は、コンテンツを利用する利用方法である。前記利用方法は、利用者が所望するコンテンツの選択を受け付ける受付ステップと、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出ステップと、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認ステップと、利用者に紐付けられた関連付け情報を記憶する記憶ステップと、前記確認ステップが利用者に紐付けられていると判断した場合に、前記記憶している関連付け情報と、前記読み出した利用条件に記載されている関連付け情報を比較する比較ステップと、前記比較ステップが比較した結果、関連付け情報が一致する場合に、前記コンテンツを利用する利用ステップとを含むことを特徴とする。
本発明の別の態様は、コンテンツを利用する端末装置の集積回路である。前記集積回路は、利用者が所望するコンテンツの選択を受け付ける受付手段と、前記受け付けたコンテンツに対応する利用条件を記憶媒体から読み出す読出手段と、前記読み出した利用条件から、当該コンテンツが利用者に紐付けられたコンテンツであるか否かを確認する確認手段と、利用者に紐付けられた関連付け情報を記憶する記憶手段と、前記確認手段が利用者に紐付けられていると判断した場合に、前記記憶している関連付け情報と、前記読み出した利用条件に記載されている関連付け情報を比較する比較手段と、前記比較手段が比較した結果、関連付け情報が一致する場合に、前記コンテンツを利用する利用手段とを備えることを特徴とする。
本発明にかかるコンテンツ配信システムによると、ユーザに紐付けてコンテンツの使用を許諾することができる。このため、コンテンツ提供者の権利の保護とユーザの利便性との間で、バランスのとれた許諾形態によるコンテンツ提供を行うことができるという優れた効果を奏する。この結果、デジタルのコンテンツのユーザに対する使用の許諾を管理する技術として有用である。
10a コンテンツ配信システム
100a サーバ装置
600a 記憶媒体
700a 再生装置
10b コンテンツ配信システム
100b サーバ装置
500b ダウンロード装置
600b メモリカード
700b 再生装置
10c コンテンツ配信システム
100 コンテンツ制作装置
200 鍵発行装置
300 コンテンツ配信装置
400 鍵配信装置
500 端末装置
600 記憶媒体装置
700 権利管理装置
10d コンテンツ配信システム
3401 サーバ装置
3402 端末装置
3403 記憶媒体装置
10e コンテンツ配信システム
4101 サーバ装置
4102 端末装置
3403 記憶媒体装置
10f コンテンツ配信システム
4701 端末装置
3403 記憶媒体装置

Claims (18)

  1. 再生装置と、コンテンツを提供するサーバ装置とから構成されるコンテンツ配信システムであって、
    前記サーバ装置は、
    ユーザに固有の固有情報を取得する第1取得手段と、
    前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、
    前記コンテンツの利用条件を取得する第2取得手段と、
    前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、
    前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段とを備え、
    前記再生装置は、
    ユーザからの前記固有情報の入力を受け付ける受付手段と、
    前記受付手段により受け付けた前記固有情報を用いて、前記バインド情報を取得する第3取得手段と、
    前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、
    取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する第3生成手段と、
    生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、
    復号により生成された復号コンテンツを再生する再生手段とを備える
    ことを特徴とするコンテンツ配信システム。
  2. コンテンツを提供するサーバ装置であって、
    ユーザに固有の固有情報を取得する第1取得手段と、
    前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、
    前記コンテンツの利用条件を取得する第2取得手段と、
    前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、
    前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段と
    を備えることを特徴とするサーバ装置。
  3. 前記第1取得手段は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、
    前記第1生成手段は、前記ユーザ識別情報を含む前記バインド情報を生成する
    ことを特徴とする請求項2に記載のサーバ装置。
  4. 前記第1取得手段は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、
    前記第1生成手段は、前記ユーザ識別情報を要約して要約値を生成し、生成した要約値を含む前記バインド情報を生成する
    ことを特徴とする請求項2に記載のサーバ装置。
  5. 前記第2生成手段は、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記タイトル鍵及び前記要約値に、前記変換として、排他的論理和演算を施して、前記変換タイトル鍵を生成する
    ことを特徴とする請求項2に記載のサーバ装置。
  6. 前記第2生成手段は、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成する
    ことを特徴とする請求項5に記載のサーバ装置。
  7. コンテンツを提供するサーバ装置で用いられる方法であって、
    ユーザに固有の固有情報を取得する第1取得ステップと、
    前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成ステップと、
    前記コンテンツの利用条件を取得する第2取得ステップと、
    前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成ステップと、
    前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力ステップと
    を含むことを特徴とする方法。
  8. コンテンツを提供するサーバ装置で用いられるコンピュータプログラムを記録しているコンピュータ読取可能なプログラム記録媒体であって、
    コンピュータである前記サーバ装置に、
    ユーザに固有の固有情報を取得する第1取得ステップと、
    前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成ステップと、
    前記コンテンツの利用条件を取得する第2取得ステップと、
    前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成ステップと、
    前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力ステップと
    を実行させるための前記コンピュータプログラムを記録していることを特徴とするプログラム記録媒体。
  9. コンテンツを提供するサーバ装置を構成する集積回路であって、
    ユーザに固有の固有情報を取得する第1取得手段と、
    前記ユーザと前記コンテンツとを紐付けるバインド情報を生成する第1生成手段と、
    前記コンテンツの利用条件を取得する第2取得手段と、
    前記バインド情報及び前記利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成する第2生成手段と、
    前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力する出力手段と
    を備えることを特徴とする集積回路。
  10. サーバ装置が提供するコンテンツを再生する再生装置であって、
    前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力し、
    前記再生装置は、
    ユーザからの前記固有情報の入力を受け付ける受付手段と、
    前記受付手段により受け付けた前記固有情報を用いて、前記バインド情報を取得する取得手段と、
    前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、
    取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成手段と、
    生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、
    復号により生成された復号コンテンツを再生する再生手段とを備える
    ことを特徴とする再生装置。
  11. 前記利用条件は、バインド識別フラグを含み、
    前記受付手段は、前記固有情報として、ユーザ識別情報とパスワードを受け付け、
    前記再生装置は、
    読み出した前記利用条件に含まれる前記バインド識別フラグが、ユーザにバインドされたコンテンツであることを示すか否かを確認する確認手段を備え、
    前記取得手段は、前記バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合に、前記受付手段により受け付けた前記ユーザ識別情報と前記パスワードに基づき、前記バインド情報を算出する
    ことを特徴とする請求項10に記載の再生装置。
  12. 前記生成手段は、前記バインド情報及び前記利用条件を要約して要約値を生成し、前記変換タイトル鍵及び前記要約値に、前記逆変換として、排他的論理和演算を施して、前記復号タイトル鍵を生成する
    ことを特徴とする請求項10に記載の再生装置。
  13. 前記生成手段は、前記バインド情報と前記利用条件とを連結して結合体を生成し、生成した結合体に一方向性演算を施して、前記要約値を生成する
    ことを特徴とする請求項11に記載の再生装置。
  14. 前記サーバ装置は、前記固有情報として、ユーザを識別するユーザ識別情報を取得し、前記バインド情報を前記ユーザ識別情報に対応付けて記憶し、
    前記取得手段は、前記受付手段により、前記ユーザ識別情報の入力が受け付けられたとき、前記ユーザ識別情報に対応して記憶されている前記バインド情報を取得する
    ことを特徴とする請求項10に記載の再生装置。
  15. サーバ装置が提供するコンテンツを再生する再生装置で用いられる方法であって、
    前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力し、
    前記方法は、
    ユーザからの前記固有情報の入力を受け付ける受付ステップと、
    前記受付ステップにより受け付けた前記固有情報を用いて、前記バインド情報を取得する取得ステップと、
    前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出ステップと、
    取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成ステップと、
    生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号ステップと、
    復号により生成された復号コンテンツを再生する再生ステップと
    を含むことを特徴とする方法。
  16. 前記利用条件は、バインド識別フラグを含み、
    前記受付ステップは、前記固有情報として、ユーザ識別情報とパスワードを受け付け、
    前記方法は、
    読み出した前記利用条件に含まれる前記バインド識別フラグが、ユーザにバインドされたコンテンツであることを示すか否かを確認する確認ステップを含み、
    前記取得ステップは、前記バインド識別フラグがユーザにバインドされたコンテンツであることを示す場合に、前記受付ステップで受け付けた前記ユーザ識別情報と前記パスワードに基づき、前記バインド情報を算出する
    ことを特徴とする請求項15に記載の方法。
  17. サーバ装置が提供するコンテンツを再生する再生装置で用いられるコンピュータプログラムを記録しているコンピュータ読取可能なプログラム記録媒体であって、
    前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力し、
    コンピュータである前記再生装置に、
    ユーザからの前記固有情報の入力を受け付ける受付ステップと、
    前記受付ステップにより受け付けた前記固有情報を用いて、前記バインド情報を取得する取得ステップと、
    前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出ステップと、
    取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成ステップと、
    生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号ステップと、
    復号により生成された復号コンテンツを再生する再生ステップと
    を実行させるための前記コンピュータプログラムを記録しているプログラム記録媒体。
  18. サーバ装置が提供するコンテンツを再生する再生装置を構成する集積回路であって、
    前記サーバ装置は、ユーザに固有の固有情報を取得し、前記ユーザと前記コンテンツとを紐付けるバインド情報及び前記コンテンツの利用条件を用いて、タイトル鍵に可逆の変換を施して、変換タイトル鍵を生成し、前記タイトル鍵を用いて前記コンテンツを暗号化して生成した暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を記憶媒体に出力し、
    前記集積回路は、
    ユーザからの前記固有情報の入力を受け付ける受付手段と、
    前記受付手段により受け付けた前記固有情報を用いて、前記バインド情報を取得する取得手段と、
    前記記憶媒体から前記暗号化コンテンツ、前記変換タイトル鍵及び前記利用条件を読み出す読出手段と、
    取得した前記バインド情報及び読み出した前記利用条件を用いて、読み出した前記変換タイトル鍵に、前記変換の逆変換を施して、復号タイトル鍵を生成する生成手段と、
    生成した前記復号タイトル鍵を用いて、前記暗号化コンテンツを復号する復号手段と、
    復号により生成された復号コンテンツを再生する再生手段とを備える
    ことを特徴とする集積回路。
JP2014506032A 2012-03-20 2013-03-15 サーバ装置、再生装置及びコンテンツ配信システム Active JP5990259B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201261613150P 2012-03-20 2012-03-20
US61/613,150 2012-03-20
PCT/JP2013/001793 WO2013140774A1 (ja) 2012-03-20 2013-03-15 サーバ装置、再生装置及びコンテンツ配信システム

Publications (2)

Publication Number Publication Date
JPWO2013140774A1 JPWO2013140774A1 (ja) 2015-08-03
JP5990259B2 true JP5990259B2 (ja) 2016-09-07

Family

ID=49222255

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014506032A Active JP5990259B2 (ja) 2012-03-20 2013-03-15 サーバ装置、再生装置及びコンテンツ配信システム

Country Status (4)

Country Link
US (1) US9524746B2 (ja)
JP (1) JP5990259B2 (ja)
CN (1) CN103748595B (ja)
WO (1) WO2013140774A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015103890A (ja) * 2013-11-22 2015-06-04 ソニー株式会社 コンテンツ受信装置及びコンテンツ受信方法、並びにコンテンツ送信装置及びコンテンツ送信方法
JP2015153268A (ja) * 2014-02-18 2015-08-24 ソニー株式会社 情報処理装置および方法、情報処理システム、並びにプログラム
JP5971820B2 (ja) * 2014-12-24 2016-08-17 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データを利用する方法及び装置
KR102398167B1 (ko) * 2015-07-02 2022-05-17 삼성전자주식회사 사용자 장치, 그것의 패스워드 설정 방법, 그리고 그것의 패스워드를 설정하고 확인하는 동작 방법
ITUB20153847A1 (it) * 2015-09-24 2017-03-24 Cinello S R L Sistema elettronico e metodo di gestione di contenuti digitali relativi a opere d'arte idoneo a impedirne la diffusione incontrollata
US20170093801A1 (en) * 2015-09-29 2017-03-30 Mark Ellery Ogram Secure content distribution
JP6648461B2 (ja) * 2015-09-30 2020-02-14 富士ゼロックス株式会社 情報処理装置およびプログラム
CN106096442B (zh) * 2016-06-08 2019-07-23 北京小米移动软件有限公司 应用触发方法及装置
US11153282B2 (en) * 2017-03-22 2021-10-19 Verizon Patent And Licensing Inc. Controlling access to content in a network
JP6796861B2 (ja) * 2017-04-11 2020-12-09 株式会社アクセル アプリケーションソフトウェアの提供及び認証方法並びにそのためのシステム
CN109961540A (zh) * 2017-12-26 2019-07-02 南京工程学院 一种nfc智能车锁控制方法
JP7371849B2 (ja) * 2019-06-06 2023-10-31 Tis株式会社 ネットワークシステム、配信サーバ、配信方法、配信プログラム
CN113742657A (zh) * 2020-05-29 2021-12-03 台达电子工业股份有限公司 软件保护方法及其系统

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3073590B2 (ja) 1992-03-16 2000-08-07 富士通株式会社 電子化データ保護システム、使用許諾者側装置および使用者側装置
JP3746146B2 (ja) 1997-02-07 2006-02-15 株式会社東芝 暗号情報の生成及び復号方法及び伝送及び受信装置
US6144743A (en) 1997-02-07 2000-11-07 Kabushiki Kaisha Toshiba Information recording medium, recording apparatus, information transmission system, and decryption apparatus
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US7904392B2 (en) * 2001-10-25 2011-03-08 Panasonic Corporation Content usage rule management system
US8656178B2 (en) * 2002-04-18 2014-02-18 International Business Machines Corporation Method, system and program product for modifying content usage conditions during content distribution
JP2004139433A (ja) * 2002-10-18 2004-05-13 Toshiba Corp 端末装置とこの装置で使用する記録媒体、及びコンテンツ管理システムとその管理サーバ
JP2006018335A (ja) * 2004-06-30 2006-01-19 Toshiba Corp コンテンツ記憶準備方法、コンテンツ記憶方法、コンテンツ使用方法、端末システム及び記憶媒体接続可能端末装置
CN100511252C (zh) 2004-07-15 2009-07-08 松下电器产业株式会社 设备登记系统及设备登记装置
US7778927B2 (en) * 2004-07-21 2010-08-17 Sony Corporation Contents reproducing device, contents processing device, contents distribution server, contents reproducing method, contents processing method, and program
US20060174026A1 (en) * 2005-01-05 2006-08-03 Aaron Robinson System and method for a remote user interface
JP2006277830A (ja) * 2005-03-29 2006-10-12 Seiko Epson Corp 再生装置、再生方法、再生プログラム、および記録媒体
WO2011099161A1 (ja) * 2010-02-15 2011-08-18 株式会社 シー・エス・イー コンテンツ提示型認証システム

Also Published As

Publication number Publication date
US20150287432A1 (en) 2015-10-08
WO2013140774A1 (ja) 2013-09-26
CN103748595B (zh) 2017-07-07
CN103748595A (zh) 2014-04-23
US9524746B2 (en) 2016-12-20
JPWO2013140774A1 (ja) 2015-08-03

Similar Documents

Publication Publication Date Title
JP5990259B2 (ja) サーバ装置、再生装置及びコンテンツ配信システム
JP5530299B2 (ja) コンテンツ受信機、及びコンテンツ受信機の書き出し方法
CN101404167B (zh) 记录系统、信息处理设备、存储设备、记录方法和程序
JP4555046B2 (ja) データ転送システム及びデータ転送方法
JP4679851B2 (ja) デジタルコンテンツのためのアクセス制御
JP4679093B2 (ja) デジタルコンテンツのためのアクセス制御
JP5200204B2 (ja) 高信頼性システムを含む連合型デジタル権限管理機構
JP4795727B2 (ja) コンテンツの利用端末を制限する方法、記憶装置およびシステム
JP6119741B2 (ja) 情報処理装置、情報記憶装置、サーバ、情報処理システム、および情報処理方法、並びにプログラム
CN1287249C (zh) 对数字内容的访问控制装置和方法及再现装置
CN101518025B (zh) 用于在电信网络中安全分发内容的装置和方法
US20020138442A1 (en) Content provision device and method and license server capable of facilitating circulation of encrypted content data
US20030177379A1 (en) Storing device allowing arbitrary setting of storage region of classified data
JP5557897B2 (ja) デジタルメディアコンテンツ保護システム及び方法
JP2005124147A (ja) デジタルビデオストリームのためのアクセス制御
JP4666302B2 (ja) デジタルコンテンツのためのアクセス制御
US20030009667A1 (en) Data terminal device that can easily obtain content data again, a program executed in such terminal device, and recording medium recorded with such program
US7693795B2 (en) Digital work protection system
US20030161064A1 (en) Hard disk unit ensuring stability of classified data
WO2006135078A1 (ja) コンテンツの利用端末を制限する方法、記憶装置およびシステム
JP5350021B2 (ja) ファイル生成装置、ファイル再生装置およびコンピュータプログラム
JP2004240959A (ja) コンテンツ再生装置、ライセンス発行サーバ及びコンテンツ再生システム
JP2016162371A (ja) コンテンツ送受信システム及びコンテンツ認証方法
JP2007156829A (ja) コンテンツ転送装置、コンテンツ再生装置、コンテンツ転送方法、コンテンツ再生方法、コンテンツ転送プログラムおよびコンテンツ再生プログラム
JP2002041457A (ja) コンテンツ再生装置とそのコンテンツ再生装置の実現のために用いられるサーバ装置及び中継サーバ装置とコンテンツ再生装置用プログラム記録媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150828

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160812

R151 Written notification of patent or utility model registration

Ref document number: 5990259

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151