JP4989293B2 - コンテンツ配信システム - Google Patents

コンテンツ配信システム Download PDF

Info

Publication number
JP4989293B2
JP4989293B2 JP2007118387A JP2007118387A JP4989293B2 JP 4989293 B2 JP4989293 B2 JP 4989293B2 JP 2007118387 A JP2007118387 A JP 2007118387A JP 2007118387 A JP2007118387 A JP 2007118387A JP 4989293 B2 JP4989293 B2 JP 4989293B2
Authority
JP
Japan
Prior art keywords
content
information
transmission
unit
evidence
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
JP2007118387A
Other languages
English (en)
Other versions
JP2007317175A (ja
JP2007317175A5 (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
University of Tokyo NUC
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
University of Tokyo NUC
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, University of Tokyo NUC, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2007118387A priority Critical patent/JP4989293B2/ja
Publication of JP2007317175A publication Critical patent/JP2007317175A/ja
Publication of JP2007317175A5 publication Critical patent/JP2007317175A5/ja
Application granted granted Critical
Publication of JP4989293B2 publication Critical patent/JP4989293B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、映画や音楽などの著作物であるデジタルデータ(以下、「コンテンツ」という。)を送受信する技術に関し、特に、コンテンツを不正にコピーする著作権侵害行為を防止し、更に、不正にコピーされたコンテンツが流出した場合には、流出したコンテンツから、不正を行った装置を特定する技術に関する。
コンテンツの個人利用が盛んになるにつれて、コンテンツが不正にコピーされ生成された、所謂、「海賊版コンテンツ」が出回るようになってきた。
特許文献1は、サーバからクライアントへコンテンツを配信するモデルにおいて、不正コピーされたコンテンツから、不正コピーを行ったクライアントを特定する技術を開示している。
具体的には、サーバがコンテンツ内のあるシーンを複数個にコピーし、それぞれのシーンに異なる電子透かし(ウォーターマーク)を埋め込む。続いて、サーバは、異なる電子透かしを埋め込んだシーンのそれぞれを、複数個の異なる暗号鍵で暗号化した後、コンテンツをクライアントに配信する。クライアントは、複数の鍵の何れかを保持しており、指定された鍵を用いて、指定された部分を復号することにより、コンテンツを再生することができる。
そして、不正コピーにより作成された海賊版コンテンツが出回った場合には、海賊版コンテンツに埋め込まれている電子透かしを抽出することにより、不正コピーを行ったクライアントを特定することが可能となる。
米国特許第6285774号
しかしながら、本来であればコンテンツホルダから信用されるべきサーバ側が不正を行うことも想定され、サーバ側の不正を防止したいというコンテンツホルダの要求がある。 また近年では、家庭内において、ユーザが保持する複数個の端末装置をネットワーク接続し、端末装置間においてコンテンツを送受信することが行われてきている。この様な場合、各端末装置は、サーバ側(送信側)にも、クライアント側(受信側)にもなり得るため、コンテンツの受信側だけでなく、送信側の不正を防止する仕組みも必要となってきた。
ここで、上記の特許文献1に記載の技術では、コンテンツの受信側の不正を防止することは可能であるが、送信側の不正を防止することはできないという問題が存在する。
本発明は、上記の要求、及び上記の問題点に鑑みてなされたものであって、コンテンツを送信する送信装置が、コンテンツを受信する受信装置に成りすまして不正を行うことを防止するコンテンツ配信システムを提供することを目的とする。
ここで、「送信装置が受信装置に成りすまして不正を行う」とは、どのようなことを言うのか説明する。
コンテンツホルダからコンテンツを取得した送信装置は、コンテンツを正規の流通経路で流通させることを期待されており、コンテンツを不正コピーすることにより海賊版コンテンツを作成し、流出させた場合、それは、コンテンツホルダに容易に不正を特定されることから、通常、送信装置がそのような不正を行うことは考えにくい。しかしながら、送信装置は、後の検証により、不正コピーを作成したのが受信装置であると判断される情報を埋め込んだ海賊版コンテンツを流出させることが可能である。
また、ユーザが保持する複数個の端末装置間においてコンテンツを送受信する場合には、送信側の端末装置が、後の検証により、受信側の端末装置が不正を行ったと判断される情報を埋め込んだ海賊版コンテンツを作成することが可能である。なお、この場合は特に、コンテンツがエンドユーザの端末装置間で送受信されるため、不正が行われる可能性が高くなる。
上記のような場合を「送信装置が受信装置に成りすまして不正を行う」と言う。
上記の目的を達成するために、本発明は、コンテンツを受信装置へ送信する送信装置であって、1個のコンテンツからその全部又は一部を抽出して追跡情報を生成し、生成した追跡情報を複数個複製する複製手段と、複数個の追跡情報のそれぞれに対応した複数個の候補情報を取得する候補情報取得手段と、前記複数個の候補情報のうちから受信装置により選択された1個の候補情報に依存して生成された証拠情報を取得する証拠情報手段と、前記複数個の候補情報のそれぞれに基づいて、複数個のハッシュ値を生成するハッシュ生成手段と、各追跡情報に、当該追跡情報に対応する候補情報に基づいて生成された前記ハッシュ値を埋め込み、各追跡情報に、前記証拠情報を埋め込む埋込手段と、ハッシュ値と証拠情報とが埋め込まれた各追跡情報を送信する送信手段とを備えることを特徴とする。
また、本発明は、送信装置からコンテンツを受信する受信装置であって、1個のコンテンツの全部又は一部が複製されて生成された複数個の追跡情報のそれぞれに対応する複数個の候補情報のうちから、1個の候補情報を選択する選択手段と、選択した前記候補情報に基づき、証拠情報を生成する生成手段と、前記証拠情報を前記送信装置へ送信する送信手段と、前記送信装置から、選択した前記候補情報に対応する追跡情報を取得する取得手段とを備えることを特徴とする。
上記の構成によると、送信装置は、受信装置から受信した証拠情報からは、受信装置により選択された候補情報が何れであるのかを特定することは出来ない。従って、送信装置は、受信装置が何れの追跡情報を取得するのかを知ることが出来ない。
そのため、送信装置は、受信装置が取得した1個のコンテンツを特定し、受信装置が取得した1個のコンテンツに含まれる電子透かしと同一の電子透かしを埋め込んだコンテンツのみを不正にコピーして、流出させ、その他の電子透かしを埋め込んだコンテンツは流出させないことは非常に困難である。そのため、送信装置は、受信装置に成りすまして、海賊版コンテンツを流出させることは現実的には不可能となる。
ここで、前記コンテンツは、動画及び/又は音声から構成されるマルチメディアデータであり、前記埋込手段は、前記追跡情報に対して、電子透かし技術を用いて、前記ハッシュ値及び前記証拠情報を埋め込むように構成してもよい。
この構成によると、送信装置は、埋め込んだ証拠情報をユーザに知覚されることなく、コンテンツを受信装置へ送信することができる。
ここで、前記送信装置は、さらに、前記追跡情報を秘匿通信処理するために用いる複数個のコンテンツ鍵データを生成するコンテンツ鍵生成手段を備え、前記複数個の候補情報のそれぞれは、前記コンテンツ鍵データのそれぞれに基づき生成されるように構成してもよい。
この構成によると、送信装置は、前記候補情報を前記受信装置へ送信することにより、前記受信装置との間で、前記秘匿通信処理に用いるコンテンツ鍵データを共有することができる。そして、送信装置は、前記受信装置が何れのコンテンツ鍵データに基づき生成された候補情報を選択したのかを知ることができない。
ここで、前記送信装置は、さらに、前記追跡情報を暗号処理するために用いる複数個のコンテンツ鍵データと、前記複数個のコンテンツ鍵データのそれぞれ識別する複数個のコンテンツ鍵データ識別子とを生成するコンテンツ鍵生成手段を備え、前記複数個の候補情報のそれぞれは、前記コンテンツ鍵データ識別子のそれぞれに基づき生成されるように構成してもよい。
この構成によると、コンテンツ鍵データそのものを候補情報とする場合と比較して、送信装置と受信装置とにおける候補情報送受信処理の安全性が高まる。そして、送信装置は、前記受信装置が何れのコンテンツ鍵データ識別子に基づき生成された候補情報を選択したのかを知ることができない。
ここで、前記送信装置は、さらに、当該送信装置に対応付けられている公開鍵データと秘密鍵データとを保持しており、前記複数個の候補情報のそれぞれは、前記公開鍵データに基づき生成されるように構成してもよい。
この構成によると、候補情報は、公開鍵データに基づき生成されるので、送信装置と受信装置とにおける候補情報送受信処理の安全性が高まる。
ここで、前記送信装置は、さらに、前記追跡情報を秘匿通信処理するために用いる複数個の乱数データを生成する乱数生成手段を備え、前記複数個の候補情報のそれぞれは、前記乱数データのそれぞれに基づき生成されるように構成してもよい。
この構成によると、送信装置は、予め公開鍵データを保持したり、外部から公開鍵データを取得したりすることなく、候補情報を生成することができる。また、送信装置は、前記受信装置が何れの乱数データに基づき生成された候補情報を選択したのか知ることができない。
ここで、前記送信装置は、さらに、当該送信装置に対応付けられている複数個の公開鍵データ及び秘密鍵データを保持しており、前記複数個の候補情報のそれぞれは、前記複数個の公開鍵データに基づき生成されるように構成してもよい。
この構成によると、候補情報は、公開鍵データに基づき生成されるので、送信装置と受信装置とにおける候補情報送受信処理の安全性が高まる。そして、送信装置は、前記受信装置が何れの公開鍵データに基づき生成された候補情報を選択したのか知ることができない。
ここで、前記送信装置は、さらに、当該送信装置に対応付けられている複数個の公開鍵データ、秘密鍵データ、及び公開鍵識別子を保持しており、前記複数個の候補情報のそれぞれは、前記複数個の公開鍵識別子に基づき生成されるように構成してもよい。
この構成によると、候補情報が公開鍵データに基づき生成される場合と比較し、送信装置と受信装置とにおける候補情報送受信処理の安全性が高まる。また、送信装置は、前記受信装置が何れの公開鍵識別子に基づき生成された候補情報を選択したのか知ることができない。
ここで、前記証拠情報は、前記受信装置に対応付けられている公開鍵暗号の公開鍵データに基づき生成されるように構成してもよい。
この構成によると、送信装置は、受信装置の秘密鍵データを知り得ないので、取得した証拠情報から、受信装置が何れの候補情報を選択したのかを知ることができない。従って、送信装置は、受信装置が取得した1個のコンテンツを特定し、受信装置が取得した1個のコンテンツに含まれる電子透かしと同一の電子透かしを埋め込んだコンテンツのみを不正にコピーして、流出させ、その他の電子透かしを埋め込んだコンテンツは流出させないことは非常に困難である。そのため、送信装置は、受信装置に成りすまして、海賊版コンテンツを流出させることは現実的には不可能となる。
ここで、前記証拠情報は、前記受信装置に対応付けられている公開鍵暗号の秘密鍵データに基づき生成された電子署名データを含むように構成してもよい。
この構成によると、送信装置は、電子署名データを検証することにより、受信装置が正当な証拠情報を送信してきたのか否かを判定することができる。受信装置が正当な証拠情報を送信してこない場合には、送信装置は、受信装置へのコンテンツの送受信処理を中止し、コンテンツの著作権を保護することができる。
≪第1の実施形態≫
本発明の第1の実施形態として、コンテンツ配信システム1について、図面を参照して説明する。
<概要>
ここでは、コンテンツ配信システム1の概要について説明する。
図1は、コンテンツ配信システム1の構成を示すシステム構成図である。
同図に示すように、コンテンツ配信システム1は、送信装置10、受信装置20、コンテンツ流出元特定装置30、記録媒体40、及び放送局装置50から構成される。ここで、送信装置10と受信装置20とは、ケーブル60を介して接続されている。
放送局装置50は、具体的には、地上デジタル放送を放送する放送局に設置された装置であって、映像データ及び音声データが多重化され、圧縮符号化されたコンテンツを、デジタル放送波に乗せて放送する。
送信装置10は、具体的には、地上デジタル放送を受信するデジタルテレビ受像機であって、放送局装置50から放送されたコンテンツを受信する。送信装置10は、受信したコンテンツを映像データと音声データとに変換し、ディスプレイ等に出力する。
受信装置20は、具体的には、コンテンツを録画することが可能なDVDレコーダであり、ケーブル60を介して、送信装置10からコンテンツを受け取り、受け取ったコンテンツをDVD−RAM等に記録する。
ケーブル60は、送信装置10と受信装置20との間で、各種データを送受信する通信路であり、例えばイーサネット(登録商標)(Ethernet(登録商標))ケーブル、USB(Universal Serial Bus)ケーブル、IEEE1394ケーブル等である。
記録媒体40は、具体的には、DVD−RAMであって、不正コピーにより作成された、所謂、海賊版コンテンツを格納しているものとする。
コンテンツ流出元特定装置30は、システムの管理者が保有する装置であって、記録媒体40に格納されている海賊版コンテンツから、不正を行った装置を特定する。
コンテンツ配信システム1では、送信装置10から受信装置20へのコンテンツ転送時に、先ず、送信装置10は、複数個のコンテンツ鍵を生成し、生成した複数個のコンテンツ鍵を受信装置20へ送信する。受信装置20は、複数個のコンテンツ鍵のうち1つを選択して受け取り、残りは受け取ることが出来ないようにする。ここで、送信装置10は、受信装置20がどのコンテンツ鍵を選択したか知ることは出来ない。
その後、送信装置10は、コンテンツを複数個に複製し、それぞれを異なるコンテンツ鍵で暗号化する。送信装置10は、暗号化の前に、各コンテンツに対して、受信装置20が選択したコンテンツ鍵を示す証拠情報と、そのコンテンツを暗号化するのに用いるコンテンツ鍵を示す値とを電子透かし(ウォーターマーク)として埋め込む。そして、送信装置10は、電子透かしの埋め込まれた複数個の暗号化コンテンツを受信装置20へ送信する。
受信装置20は、複数個の暗号化コンテンツを受信すると、事前に選択したコンテンツ鍵を用いて、複数個の暗号化コンテンツの内の一つを復号する。
一方、海賊版コンテンツが流出した場合に、コンテンツ流出元特定装置30は、海賊版コンテンツが記録されている記録媒体40から、コンテンツデータを取得し、そのコンテンツデータに含まれる電子透かしを抽出する。コンテンツ流出元特定装置30は、抽出した証拠情報と使用されたコンテンツ鍵を示す値とを取得し、それらを調査することにより、海賊版コンテンツの流出元が送信装置10であるか、受信装置20であるかを判断する。
<構成>
ここでは、各装置の構成について、詳細に説明する。
1.送信装置10
図2は、送信装置10の構成を示すブロック図である。同図に示すように、送信装置10は、コンテンツ鍵生成部101、コンテンツ鍵識別子生成部102、コンテンツ鍵保持部103、公開鍵保持部104、第一送信制御部105、第二送信制御部106、証拠取得部107、証拠保持部108、第一コンテンツデータ保持部109、コンテンツ複製部110、装置識別子埋込部111、ハッシュ埋込部112、証拠埋込部113、装置識別子保持部114、転送先装置識別子取得部115、暗号処理部116、入力部117、送受信部118、及び、第三送信制御部119から構成される。
送信装置10は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニットなどを備えるコンピュータシステムである。送信装置10は、マイクロプロセッサが、ROM、RAM、又はハードディスクに記録されているコンピュータプログラムに従い動作することにより、その機能を達成する。
なお、送信装置10を構成する各ブロックは、ハードウェアにより構成されてもよいし、またソフトウェアにより構成されてもよい。
以下では、送信装置10を構成する各ブロックについて説明する。
(1)コンテンツ鍵生成部101
コンテンツ鍵生成部101は、転送先装置識別子取得部115からコンテンツ鍵生成要求REQ1が入力されると、n個(nは予め与えられる2以上の整数)の128ビットのコンテンツ鍵CK_1、CK_2、…、CK_nを生成する。コンテンツ鍵の生成方法の一例として、コンテンツ鍵生成部101は、乱数生成器を用いてランダムに乱数を生成する方法などがある。
コンテンツ鍵生成部101は、生成したn個のコンテンツ鍵CK_1、CK_2、…、CK_nを、コンテンツ鍵識別子生成部102へ出力する。
(2)コンテンツ鍵識別子生成部102
コンテンツ鍵識別子生成部102は、コンテンツ鍵生成部101からn個のコンテンツ鍵CK_1、CK_2、…、CK_nが入力されると、各コンテンツ鍵を識別するコンテンツ鍵識別子CKID_1、CKID_2、…、CKID_nを生成する。ここでは具体例として、コンテンツ鍵識別子生成部102は、1から数字をインクリメントさせて、n個のコンテンツ鍵識別子CKID_1、CKID_2、…、CKID_nを生成する。従って、CKID_1は1、CKID_2は2、…、CKID_nはnとなる。
コンテンツ鍵識別子生成部102は、n個のコンテンツ鍵CK_1、CK_2、…、CK_nと、n個のコンテンツ鍵識別子CKID_1、CKID_2、…、CKID_nとをそれぞれ対応付けて、コンテンツ鍵保持部103へ格納する。
その後、コンテンツ鍵識別子生成部102は、第一送信制御部105へ、第一送信制御開始要求REQ2を出力する。
(3)コンテンツ鍵保持部103
コンテンツ鍵保持部103は、図3に示すように、コンテンツ鍵識別子とコンテンツ鍵とを対応付けた、n個の組{(CKID_1、CK_1)、(CKID_2、CK_2)、…、(CKID_n、CK_n)}を保持している。
(4)公開鍵保持部104
公開鍵保持部104は、図4に示すように、送信装置公開鍵情報PK1と送信装置秘密鍵情報SK1とを保持している。
送信装置公開鍵情報PK1は、公開鍵暗号アルゴリズムRSA(Rivest Shamir Adleman)の公開鍵である第一公開鍵n1及びe1から構成され、送信装置秘密鍵情報SK1は、RSAの秘密鍵である第一秘密鍵d1により構成される。これらの鍵情報は、システム管理者によって計算され、送信装置製造時に公開鍵保持部104に格納されたものとする。以下では、これらの鍵情報の生成方法について説明する。
(a)第一公開鍵n1及びe1の生成方法
まず、システム管理者は、512ビットの二つの素数p1、q1をランダムに生成する。そして、p1とq1を乗算した値p1×q1を計算し、その1024ビットの値をn1とする。次に、システム管理者は、L1=LCM(p1−1、q1−1)を計算する。LCM(x、y)は、xとyの最小公倍数とする。その後、L1と互いに素となる値e1を生成する。e1は例えば11である。このようにして生成されたn1及びe1を、第一公開鍵とする。
(b)第一秘密鍵d1の生成方法
システム管理者は、e1×d1=1(mоd L1)を満たすd1を計算する。ここで、(mоd L1)は、L1で割った余りを表している。d1は、拡張ユークリッド互除法を利用することにより計算することが出来る。拡張ユークリッド互除法については公知であるため、説明は省略する。このようにして生成されたd1を、第一秘密鍵とする。
(5)第一送信制御部105
第一送信制御部105は、コンテンツ鍵識別子生成部102から第一送信制御開始要求REQ2が入力されると、先ず、コンテンツ鍵保持部103からn組のコンテンツ鍵識別子とコンテンツ鍵と{(CKID_1、CK_1)、(CKID_2、CK_2)、…、(CKID_n、CK_n)}を取得する。
次に、第一送信制御部105は、暗号処理部116へ、n個のコンテンツ鍵CK_1、CK_2、…、CK_nと、RSA暗号化処理要求RSAEとを出力する。そして、第一送信制御部105は、暗号処理部116からn個の暗号化されたデータである第一暗号化コンテンツ鍵を受け取る。以下では、コンテンツ鍵CK_i(i=1、2、…、n)に対応するRSA暗号文を、ECK_iとする。
続いて、第一送信制御部105は、コンテンツ鍵識別子と第一暗号化コンテンツ鍵とを対応付け、送受信部118を介して、図8に示すように、n組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵{(CKID_1、ECK_1)、(CKID_2、ECK_2)、…、(CKID_n、ECK_n)}を、受信装置20へ送信する。
(6)第二送信制御部106
第二送信制御部106は、送受信部118を介して、受信装置20から1個の第二暗号化コンテンツ鍵E2CKを受信すると、暗号処理部1116へ第二暗号化コンテンツ鍵E2CKとRSA復号処理要求RSADを出力する。そして、第二送信制御部106は、暗号処理部116から、第二暗号化コンテンツ鍵E2CKが復号されたデータである第三暗号化コンテンツ鍵E3CKを受け取る。
次に、第二送信制御部106は、第三暗号化コンテンツ鍵E3CKを、証拠取得部107へ出力すると共に、送受信部118を介して、受信装置20へ送信する。
続いて、第二送信制御部106は、第三送信制御部119に対して、コンテンツ転送要求REQ3を出力する。
(7)証拠取得部107
証拠取得部107は、第二送信制御部106から第三暗号化コンテンツ鍵E3CKを受け取ると、受け取った第三暗号化コンテンツ鍵E3CKを、証拠情報EVとして、証拠保持部108へ格納する。
(8)証拠保持部108
証拠保持部108は、図5に示すように、証拠情報EVを保持している。証拠情報EVは、先に述べたように、第三暗号化コンテンツ鍵E3CKと同一のデータである。
(9)第一コンテンツデータ保持部109
第一コンテンツデータ保持部109は、図6に示すように、第一コンテンツデータCNT1を保持している。第一コンテンツデータCNT1は、送信装置10で利用可能な形式のコンテンツデータであるとする。
(10)コンテンツ複製部110
コンテンツ複製部110は、第三送信制御部119から第一コンテンツデータCNT1が入力されると、第一コンテンツデータCNT1を複製することにより、第一コンテンツデータCNT1と同一内容のデータであるn個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを生成する。コンテンツ複製部110は、生成したn個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを、第三送信制御部119へ出力する。
(11)装置識別子埋込部111
装置識別子埋込部111は、第三送信制御部119から、n個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nが入力されると、以下の手順で電子透かしの埋め込みを行う。
先ず、装置識別子埋込部111は、装置識別子保持部114から転送元装置識別子ID_1、及び転送先装置識別子ID_2を取得する。
転送元装置識別子ID_1は、コンテンツデータの転送元である送信装置10を識別する情報であり、転送先装置識別子ID_2は、コンテンツデータの転送先となる受信装置20を識別する情報である。ここで、転送元装置識別子ID_1、及び転送先装置識別子ID_2は、それぞれ、送信装置10、及び受信装置20の製造時に与えられた情報であってもよい。
次に、装置識別子埋込部111は、n個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nのそれぞれに対して、転送元装置識別子ID_1と、転送先装置識別子ID_2とを、電子透かし(ウォーターマーク)として埋め込み、n個の装置識別子埋込コンテンツデータDCNT1_1、DCNT1_2、…、DCNT1_nを生成する。
その後、装置識別子埋込部111は、生成したn個の装置識別子埋込コンテンツデータDCNT1_1、DCNT1_2、…、DCNT1_nを、第三送信制御部119へ出力する。
ここで、電子透かしとは、静止画や動画、音声データ等に対して、人間が知覚出来ない程度に透かし情報を埋め込む技術であり、加工や改変によって透かし情報が消えないという特徴を持つ。なお、電子透かしを埋め込む技術は、既に公知であるため、説明は省略する。
(12)ハッシュ埋込部112
ハッシュ埋込部112は、第三送信制御部119から、転送元装置識別子ID_1及び転送先装置識別子ID_2が埋め込まれたn個の装置識別子埋込コンテンツデータDCNT1_1、DCNT1_2、…、DCNT1_nが入力されると、以下の手順で電子透かしの埋め込みを行う。
先ず、ハッシュ埋込部112は、コンテンツ鍵保持部103からn個のコンテンツ鍵CK_1、CK_2、…、CK_nを取得する。
次に、ハッシュ埋込部112は、n個のコンテンツ鍵CK_1、CK_2、…、CK_nと、ハッシュ値計算要求HASHとを暗号処理部116へ出力する。その後、ハッシュ埋込部112は、暗号処理部116から、n個のコンテンツ鍵CK_1、CK_2、…、CK_nのそれぞれに対するハッシュ値であるコンテンツ鍵ハッシュHCK_1、HCK_2、…、HCK_nを取得する。
そして、ハッシュ埋込部112は、n個の装置識別子埋込コンテンツデータDCNT1_1、DCNT1_2、…、DCNT1_nのそれぞれに、異なるn個のコンテンツ鍵ハッシュHCK_1、HCK_2、…、HCK_nを、電子透かしとして埋め込み、n個のハッシュ埋込コンテンツデータHCNT1_1、HCNT1_2、…、HCNT1_nを生成する。
具体的には、ハッシュ埋込部112は、DCNT1_1に対して、HCK_1を埋め込みHCNT1_1を生成し、DCNT1_2に対して、HCK_2を埋め込みHCNT1_2を生成し、…、DCNT1_nに対して、HCK_nを埋め込み、HCNT1_nを生成する。
その後、ハッシュ埋込部112は、生成したn個のハッシュ埋込コンテンツデータHCNT1_1、HCNT1_2、…、HCNT1_nを、第三送信制御部119へ出力する。
(13)証拠埋込部113
証拠埋込部113は、第三送信制御部119から、n個のハッシュ埋込コンテンツデータHCNT1_1、HCNT1_2、…、HCNT1_nが入力されると、以下の手順で電子透かしの埋め込みを行う。
先ず、証拠埋込部113は、証拠保持部108から証拠情報EVを取得する。そして、n個のハッシュ埋込コンテンツデータHCNT1_1、HCNT1_2、…、HCNT1_nのそれぞれに、証拠情報EVを電子透かしとして埋め込み、n個の証拠埋込コンテンツデータVCNT1_1、VCNT1_2、…、VCNT1_nを生成する。
その後、証拠埋込部113は、生成したn個の証拠埋込コンテンツデータVCNT1_1、VCNT1_2、…、VCNT1_nを、第三送信制御部119へ出力する。
(14)装置識別子保持部114
装置識別子保持部114は、図7に示すように、転送元装置識別子ID_1と転送先装置識別子ID_2とを保持している。
先に述べたように、転送元装置識別子ID_1は、送信装置10を特定する識別子であり、送信装置10の製造時に予め与えられた不変の値である。転送先装置識別子ID_2は、コンテンツデータの転送先となる端末装置を特定する識別子であり、コンテンツデータを転送する端末装置が変わる毎に変更される値である。しかしながら、本実施形態では、コンテンツデータの転送先は受信装置20のみを想定しているので、転送先装置識別子ID_2も、ID_1と同様に不変の値となる。
(15)転送先装置識別子取得部115
転送先装置識別子取得部115は、入力部117から転送先装置識別子要求情報が入力された場合、送受信部118を介して、転送先装置識別子取得依頼情報REQ5を受信装置20へ送信する。そして、転送先装置識別子取得部115は、送受信部118を介して、装置識別子ID_2を受信すると、受信したID_2を、転送先装置識別子として、装置識別子保持部114へ格納する。
続いて、転送先装置識別子取得部115は、コンテンツ鍵生成部101に対して、コンテンツ鍵生成要求REQ1を出力する。
(16)暗号処理部116
暗号処理部116は、以下の暗号処理を行う。
(a)第一送信制御部105からRSA暗号化処理要求RSAEが入力された場合
暗号処理部116は、以下の手順でn個のコンテンツ鍵CK_1、CK_2、…、CK_nを暗号化し、暗号文を生成する。
先ず、暗号処理部116は、公開鍵保持部104から、送信装置公開鍵情報PK1に含まれる第一公開鍵n1及びe1を取得する。
次に、暗号処理部116は、第一公開鍵n1及びe1を用いて、n個のコンテンツ鍵CK_1、CK_2、…CK_nのそれぞれに対してRSA暗号化処理を行う。
RSA暗号化処理は、具体的には、元のメッセージMに対して、M^e1(mod n1)を計算することにより行われる。“^”は、べき乗を表しており、即ち、x^yは、xをy乗した値である。ここで、コンテンツ鍵CK_iを元のメッセージとした場合、その暗号文は、CK_i^e1(mod n1)となる。以下では、CK_i^e1(mod n1)を、ECK_iと表す。
暗号処理部116は、n個のコンテンツ鍵に対応する暗号文ECK_1、ECK_2、…、ECK_nを、第一送信制御部105へ出力する。
(b)第二送信制御部106からRSA復号処理要求RSADが入力された場合
暗号処理部116は、以下の手順で第二暗号化コンテンツ鍵E2CKを復号し、復号文を生成する。
先ず、暗号処理部116は、公開鍵保持部104から、送信装置公開鍵情報PK1に含まれる第一公開鍵n1と、送信装置秘密鍵情報SK1に含まれる第一秘密鍵d1とを取得する。
次に、暗号処理部116は、第一公開鍵n1と、第一秘密鍵d1とを用いて、第二暗号化コンテンツ鍵E2CKに対してRSA復号処理を行う。
RSA復号化処理は、具体的には、暗号文メッセージCに対して、C^d1(mod n1)を計算することにより行われる。ここで、第二暗号化コンテンツ鍵E2CKを暗号文とした場合、その復号文は、E2CK^d1(mod n1)となる。以下では、E2CK^d(mod n1)を、E3CKと表す。
暗号処理部116は、第二暗号化コンテンツ鍵E2CKに対応する復号文E3CKを、第二送信制御部106へ出力する。
(c)ハッシュ埋込部112から、ハッシュ値計算要求HASHが入力された場合
暗号処理部116は、n個のコンテンツ鍵CK_1、CK_2、…、CK_nのそれぞれに対するハッシュ値であるコンテンツ鍵ハッシュHCK_1、HCK_2、…、HCK_nを計算する。ハッシュ値は、ハッシュ関数にデータを入力した際の出力値である。暗号処理部116は、ハッシュ関数アルゴリズムとして、例えば、SHA−1(Secure Hash Algorithm−1)を用いるものとする。
暗号処理部116は、n個のコンテンツ鍵ハッシュHCK_1、HCK_2、…、HCK_nを、ハッシュ埋込部112へ出力する。
(d)第三送信制御部119からコンテンツ暗号化要求AESEが入力された場合
暗号処理部116は、以下の手順で、n個の証拠埋込コンテンツデータVCNT1_1、VCNT1_2、…、VCNT1_nの暗号化処理を行う。
先ず、暗号処理部116は、コンテンツ鍵保持部103からn個のコンテンツ鍵CK_1、CK_2、…、CK_nを取得する。
続いて、暗号処理部116は、n個の証拠埋込コンテンツデータVCNT1_1、VCNT1_2、…、VCNT1_nのそれぞれに対して、それぞれ異なるn個のコンテンツ鍵CK_1、CK_2、…、CK_nを暗号鍵として用い、暗号化処理を行う。
具体的には、暗号処理部116は、証拠埋込コンテンツデータVCNT1_1を、コンテンツ鍵CK_1を暗号鍵として用いて暗号化し、暗号化第一コンテンツデータECNT1_1を生成する。i=2、3、…、nにつても同様にして、暗号処理部116は、暗号化第一コンテンツデータECNT1_2、ECNT1_3、…、ECNT1_nを生成する。暗号処理部116がここで用いる暗号化アルゴリズムは、共通鍵ブロック暗号であるAES(Advanced Encryption Standard)アルゴリズムとする。
暗号処理部116は、生成したn個の暗号化第一コンテンツデータECNT1_1、ECNT1_2、…、ECNT1_nを、第三送信制御部119へ出力する。
(17)入力部117
入力部117は、例えば、ボタン等で実現され、ユーザからボタン等が操作されることにより、受信装置20へのコンテンツデータの転送要求である転送依頼情報を受け付ける。入力部117は、転送依頼情報を受け付けると、転送先装置識別子取得部115へ、転送先装置識別子要求情報REQ4を出力する。
(18)送受信部118
送受信部118は、ケーブル60を介して、受信装置20の送受信部211と接続されており、第一送信制御部105、第二送信制御部106、及び第三送信制御部119からの要求に従い、受信装置20へデータを送信する。
また、送受信部118は、受信装置20から送信されたデータを受信する。
(19)第三送信制御部119
第三送信制御部119は、第二送信制御部106からコンテンツ転送要求REQが入力されると、先ず、第一コンテンツデータ保持部109から第一コンテンツデータCNT1を取得する。次に、第三送信制御部119は、第一コンテンツデータCNT1をコンテンツ複製部110へ出力し、コンテンツ複製部110から、n個に複製された第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを取得する。
続いて、第三送信制御部119は、n個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを、装置識別子埋込部111へ出力し、転送元装置識別子ID_1と、転送先装置識別子TID_2とが電子透かしとして埋め込まれたn個の識別子埋込コンテンツデータDCNT1_1、DCNT1_2、…、DCNT1_nを取得する。
続いて、第三送信制御部119は、n個の識別子埋込コンテンツデータDCNT1_1、DCNT1_2、…、DCNT1_nを、ハッシュ埋込部112へ出力し、コンテンツ鍵ハッシュHCK_1、HCK_2、…、HCK_nの電子透かしが追加して埋め込まれた、n個のハッシュ埋込コンテンツデータHCNT1_1、HCNT1_2、…、HCNT1_nを取得する。
続いて、第三送信制御部119は、n個のハッシュ埋込コンテンツデータHCNT1_1、HCNT1_2、…、HCNT1_nを、証拠埋込部113へ出力し、証拠情報EVの電子透かしが追加で埋め込まれた、n個の証拠埋込コンテンツデータVCNT1_1、VCNT1_2、…、VCNT1_nを取得する。
その後、第三送信制御部119は、コンテンツ暗号化要求AESEとn個の証拠埋込コンテンツデータVCNT1_1、VCNT1_2、…、VCNT1_nとを暗号処理部116へ出力し、暗号処理部116から、暗号化された証拠埋込コンテンツデータであるn個の暗号化第一コンテンツデータECNT1_1、ECNT1_2、…、ECNT1_nを取得する。
そして、第三送信制御部119は、図9に示すように、暗号化第一コンテンツデータと暗号化に用いたコンテンツ鍵の識別子とを対応付けた(CKID_1、ECNT1_1)、(CKID_2、ECNT1_2)、…、(CKID_n、ECNT1_n)から成るn組を、送受信部118を介して、受信装置20へ送信する。
2.受信装置20
図10は、受信装置20の構成を示すブロック図である。同図に示すように、受信装置20は、公開鍵保持部201、復号コンテンツ鍵保持部202、第一受信制御部203、第二受信制御部204、選択情報保持部205、コンテンツ鍵選択部206、暗号化コンテンツ選択部207、第二コンテンツデータ保持部208、装置識別子出力部209、装置識別子保持部210、送受信部211、暗号処理部212、及び第三受信制御部213から構成される。
受信装置20は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニットなどを備えるコンピュータシステムである。受信装置20は、マイクロプロセッサが、ROM、RAM、又はハードディスクに記録されているコンピュータプログラムに従い動作することにより、その機能を達成する。
なお、受信装置20を構成する各ブロックは、ハードウェアにより構成されてもよいし、またソフトウェアにより構成されてもよい。
以下では、受信装置20を構成する各ブロックについて説明する。
(1)公開鍵保持部201
公開鍵保持部201は、図11に示すように、受信装置公開鍵情報PK2と受信装置秘密鍵情報SK2とを保持している。
受信装置公開鍵情報PK2は、RSAの公開鍵である第二公開鍵n2及びe2から構成され、受信装置秘密鍵情報SK2は、RSAの秘密鍵である第二秘密鍵d2から構成される。
これらの鍵情報は、システム管理者によって計算され、受信装置20の製造時に公開鍵保持部201に格納されたものである。第二公開鍵n2及びe2と、第二秘密鍵d2との生成方法については、送信装置10の第一公開鍵n1及びe1の生成方法、並びに、第一秘密鍵d1の生成方法と同様であるが、ここで注意する点は、第二公開鍵及び第二秘密鍵の生成においては、第一公開鍵及び第一秘密鍵の生成に用いた素数p1及びq1とは異なる素数p2及びq2を選択する点である。
(2)復号コンテンツ鍵保持部202
復号コンテンツ鍵保持部202は、図12に示すように、復号コンテンツ鍵DCKを保持している。
(3)第一受信制御部203
第一受信制御部203は、送受信部211を介して、送信装置10から図8に示したn組のコンテンツ鍵識別子、及び第一暗号化コンテンツ鍵{(CKID_1、ECK_1)、(CKID_2、ECK_2)、…、(CKID_n、ECK_n)}を受信すると、受信したn組のコンテンツ鍵識別子、及び第一暗号化コンテンツ鍵を、コンテンツ鍵選択部206へ出力する。その後、第一受信制御部203は、コンテンツ鍵選択部206から、1組の選択コンテンツ鍵識別子SCKID、及び選択第一暗号化コンテンツ鍵SECKを受け取る。
第一受信制御部203は、選択コンテンツ鍵識別子SCKIDを、選択情報保持部205に格納し、選択第一暗号化コンテンツ鍵SECKとRSA暗号化処理要求RSAEとを、暗号処理部212へ出力する。その後、第一受信制御部203は、暗号処理部212から、暗号化されたデータである第二暗号化コンテンツ鍵E2CKを受け取る。
第一受信制御部203は、送受信部211を介して、第二暗号化コンテンツ鍵E2CKを、送信装置10へ送信する。
(4)第二受信制御部204
第二受信制御部204は、送受信部211を介して、送信装置10から1個の第三暗号化コンテンツ鍵E3CKを受信すると、暗号処理部212へ第三暗号化コンテンツ鍵E3CKとRSA復号処理要求RSADとを出力する。その後、第二受信制御部204は、暗号処理部212から復号化されたデータである復号コンテンツ鍵DCKを受け取る。続いて、第二受信制御部204は、復号コンテンツ鍵DCKを、復号コンテンツ鍵保持部202へ格納する。
(5)選択情報保持部205
選択情報保持部205は、図13に示すように、選択コンテンツ鍵識別子SCKIDを保持している。
(6)コンテンツ鍵選択部206
コンテンツ鍵選択部206は、第一受信制御部203からn組のコンテンツ鍵識別子、及び第一暗号化コンテンツ鍵{(CKID_1、ECK_1)、(CKID_2、ECK_2)、…、(CKID_n、ECK_n)}が入力されると、n組の中から1組のコンテンツ鍵識別子、及び第一暗号化コンテンツ鍵を選択する。ここで、n組の中から一組を選択する方法は、例えば、n以下の乱数を生成し、生成された乱数をもとに1組を選択してもよい。
以下では、選択されたコンテンツ識別子を、選択コンテンツ鍵識別子SCKID_s(s=1、2、…、nの何れか)とし、選択された第一暗号化コンテンツ鍵を、選択第一暗号化コンテンツ鍵SECK_s(s=1、2、…、nの何れか)とする。
コンテンツ鍵選択部206は、選択コンテンツ鍵識別子SCKIDと選択第一暗号化コンテンツ鍵SECKとを、第一受信制御部203へ出力する。
(7)暗号化コンテンツ選択部207
暗号化コンテンツ選択部207は、第三受信制御部213からn組のコンテンツ鍵識別子、及び暗号化第一コンテンツデータ(CKID_1、ECNT1_1)、(CKID_2、ECNT1_2)、…(CKID_n、ECNT1_n)が入力されると、先ず、選択情報保持部205から選択コンテンツ鍵識別子SCKIDを取得する。
続いて、暗号化コンテンツ選択部207は、n個のコンテンツ鍵識別子CKID_1、CKID_2、…、CKID_nの中から、選択コンテンツ鍵識別子SCKIDの値と一致するものを抽出する。以下では、選択コンテンツ鍵識別子SCKIDの値と一致するコンテンツ鍵識別子により識別される暗号化第一コンテンツデータを、SECNT1とする。
その後、暗号化コンテンツ選択部207は、選択コンテンツ鍵識別子SCKIDと暗号化第一コンテンツデータSECNT1とを、第三受信制御部213へ出力する。
(8)第二コンテンツデータ保持部208
第二コンテンツデータ保持部208は、図14に示すように、第二コンテンツデータCNT2を保持している。同図に示すように、第二コンテンツデータCNT2には、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV,及びコンテンツ鍵ハッシュHCKが電子透かしとして埋め込まれている。
(9)装置識別子出力部209
装置識別子出力部209は、送受信部211を介して、送信装置10から転送先装置識別子取得依頼情報REQ5を受信すると、装置識別子保持部210から装置識別子ID_2を取得する。装置識別子出力部209は、取得した装置識別子ID_2を、送受信部211を介して、送信装置10へ送信する。
(10)装置識別子保持部210
装置識別子保持部210は、図15に示すように、装置識別子ID_2を保持している。装置識別子ID_2は、受信装置20を識別する情報であり、受信装置20の製造時に予め与えられ、装置識別子保持部210に格納された不変の値である。
(11)送受信部211
送受信部211は、送信装置10の送受信部118とケーブル60を介して接続されており、第一受信制御部203、及び第二受信制御部204からの要求に従い、送信装置10へデータを送信する。
また、送受信部211は、送信装置10から送信されたデータを受信する。
(12)暗号処理部212
暗号処理部212は、以下の暗号処理を行う。
(a)第一受信制御部203からRSA暗号化処理要求RSAEを入力された場合
暗号処理部212は、以下の手順で選択第一暗号化コンテンツ鍵SECKを暗号化し、暗号文を生成する。
先ず、暗号処理部212は、公開鍵保持部201から、受信装置公開鍵情報PK2に含まれる第二公開鍵n2及びe2を取得する。
次に、暗号処理部212は、第二公開鍵n2及びe2を用い、選択第一暗号化コンテンツ鍵SECKに対してRSA暗号化処理を行う。ここで、選択第一暗号化コンテンツ鍵SECKを元のメッセージとした場合、その暗号文は、SECK^e2(mod n2)となる。選択第一暗号化コンテンツ鍵SECKの暗号文SECK^e2(mod n2)を、第二暗号化コンテンツ鍵E2CKとする。なお、RSA暗号化処理は、送信装置10の説明で述べたため、ここでは詳細な説明は省略する。
続いて、暗号処理部212は、第二暗号化コンテンツ鍵E2CKを第二受信制御部204へ出力する。
(b)第二受信制御部204からRSA復号処理要求RSADを入力された場合
暗号処理部212は、以下の手順で、第三暗号化コンテンツ鍵E3CKを復号し、復号文を生成する。
先ず、暗号処理部212は、公開鍵保持部201から、受信装置公開鍵情報PK2に含まれる第二公開鍵n2と受信装置秘密鍵情報SK2に含まれる第二秘密鍵d2とを取得する。
次に、暗号処理部212は、第二公開鍵n2と第二秘密鍵d2とを用い、第三暗号化コンテンツ鍵E3CKに対してRSA復号処理を行う。第三暗号化コンテンツ鍵E3CKの復号文を、復号コンテンツ鍵DCKとする。なお、RSA復号処理は、送信装置10の説明で述べたため、ここでは詳細な説明は省略する。
続いて、暗号処理部212は、復号コンテンツ鍵DCKを、第二受信制御部204へ出力する。
(c)第三受信制御部213からコンテンツ復号化要求AESDを入力された場合
暗号処理部212は、受け取った復号コンテンツ鍵DCKを用い、暗号化第一コンテンツデータSECNT1の復号処理を行う。ここで、暗号処理部212は、復号アルゴリズムとして、送信装置10において暗号化第一コンテンツデータの生成に用いた暗号化アルゴリズムであるAESを用いる。
その後、暗号処理部212は、復号された暗号化第一コンテンツデータSECNT1である復号コンテンツDCNTを第三受信制御部213へ出力する。
(13)第三受信制御部213
第三受信制御部213は、送受信部211を介して、送信装置10から、n個のコンテンツ鍵識別子と、暗号化第一コンテンツデータとの組(CKID_1、ECNT1_1)、(CKID_2、ECNT1_2)、…、(CKID_n、ECNT1_n)を受信する。
第三受信制御部213は、先ず、n個のコンテンツ鍵識別子と暗号化第一コンテンツデータとの組(CKID_1、ECNT1_1)、(CKID_2、ECNT1_2)、…、(CKID_n、ECNT1_n)を、暗号化コンテンツ選択部207へ出力し、暗号化コンテンツ選択部207から、1組のコンテンツ鍵識別子SCKIDと、暗号化第一コンテンツデータSECNT1とを取得する。
次に、第三受信制御部213は、復号コンテンツ鍵保持部202から復号コンテンツ鍵DCKを取得する。
続いて、第三受信制御部213は、暗号処理部212へコンテンツ復号化要求AESDと暗号化第一コンテンツデータSECNT1と復号コンテンツ鍵識別子DCKとを出力し、暗号処理部212から、復号されたコンテンツデータである復号化コンテンツデータDCNTを取得する。
その後、第三受信制御部213は、復号化コンテンツデータDCNTを、第二コンテンツデータCNT2として、第二コンテンツデータ保持部208へ格納する。
3.コンテンツ流出元特定装置30
図16は、コンテンツ流出元特定装置30の構成を示すブロック図である。同図に示すように、コンテンツ流出元特定装置30は、透かし情報抽出部301、証拠検証部302、流出元判定部303、流出元出力部304、コンテンツデータ入力部305、追跡コンテンツデータ保持部306、暗号処理部307、及び暗号鍵保持部308から構成される。
コンテンツ流出元特定装置30は、具体的には、マイクロプロセッサ、ROM、RAM、ハードディスクユニット等を備えるコンピュータシステムである。コンテンツ流出元特定装置30は、マイクロプロセッサが、ROM、RAM又はハードディスクに記憶されているコンピュータプログラムに従い動作することにより、その機能を達成する。
なお、コンテンツ流出元特定装置30を構成する各ブロックは、ハードウェアにより構成されてもよいし、またソフトウェアにより構成されてもよい。
以下では、コンテンツ流出元特定装置30を構成する各ブロックについて説明する。
(1)透かし情報抽出部301
透かし情報抽出部301は、コンテンツデータ入力部305から、透かし情報抽出要求が入力された場合、追跡コンテンツデータ保持部306から、追跡コンテンツデータTCNTを取得する。
透かし情報抽出部301は、取得した追跡コンテンツデータTCNTに埋め込まれている電子透かしの抽出を行う。なお、電子透かしを抽出する技術は、すでに公知技術であり、広く知られているため、ここでは説明は省略する。
透かし情報抽出部301は、追跡コンテンツデータTCNTから、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKを抽出し、抽出した各情報を、証拠検証部302へ出力する。
(2)証拠検証部302
証拠検証部302は、透かし情報抽出部301から転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKが入力されると、証拠情報EVのRSA復号処理をするために、暗号処理部307へ転送先装置識別子ID_2、証拠情報EV、及びRSA復号処理要求RSADを出力する。
証拠検証部302は、暗号処理部307から、復号されたデータである復号化証拠情報DEVを受け取る。続いて、証拠検証部302は、復号化証拠情報DEVのハッシュ値を計算するために、ハッシュ値計算要求HASHと復号化証拠情報DEVとを、暗号処理部307へ出力する。その後、証拠検証部302は、暗号処理部307から、復号化証拠情報のハッシュ値である復号化証拠情報ハッシュHDEVを取得する。
証拠検証部302は、復号化証拠情報ハッシュHDEVの値と、コンテンツ鍵ハッシュHCKの値とが等しい否か、比較する。
復号化証拠情報ハッシュHDEVの値と、とコンテンツ鍵ハッシュHCKの値とが等しい場合、証拠検証部302は、証拠正当フラグFLAGを「1」に設定し、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠正当フラグFLAGを、流出元判定部303へ出力する。
一方、復号化証拠情報ハッシュHDEVの値と、コンテンツ鍵ハッシュHCKの値とが異なる場合、証拠検証部302は、証拠正当フラグFLAGを「0」に設定し、転送元装置識別子ID_1、転送先装置識別子ID_2、及び証拠正当フラグFLAGを、流出元判定部303へ出力する。
(3)流出元判定部303
流出元判定部303は、証拠検証部302から、転送元装置識別子ID_1、転送先装置識別子ID_2、及び証拠正当フラグFLAGを受け取る。
受け取った証拠正当フラグが1に設定されている場合、流出元判定部303は、転送先装置識別子ID_2を、流出元装置識別子として、流出元出力部304へ出力する。
一方、受け取った証拠正当フラグが0に設定されている場合、流出元判定部303は、転送元装置識別子ID_1を、流出元装置識別子として、流出元出力部304へ出力する。
(4)流出元出力部304
流出元出力部304は、ディスプレイを備えており、ディスプレイに出力するための画面情報の生成等を行う。
流出元出力部304は、流出元判定部303から流出元装置識別子を受け取ると、受け取った流出元装置識別子を表示するための画面情報を生成し、生成した画面情報を、ディスプレイに出力する。
(5)コンテンツデータ入力部305
コンテンツデータ入力部305は、具体的には、DVDドライブユニットであって、DVD−RAMである記録媒体40からコンテンツデータを読み出す。コンテンツデータ入力部は、読み出したコンテンツデータを、追跡コンテンツデータTCNTとして、追跡コンテンツデータ保持部306に格納する。
その後、コンテンツデータ入力部305は、透かし情報抽出部301へ、透かし情報抽出要求を出力する。
ここで、記録媒体40は、不正コピーにより作成された海賊版コンテンツが記録されている記録媒体である。
(6)追跡コンテンツデータ保持部306
追跡コンテンツデータ保持部306は、図17に示すように、追跡コンテンツデータTCNTを保持している。同図に示すように、追跡コンテンツデータには、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKが、電子透かしとして埋め込まれている。
(7)暗号処理部307
暗号処理部307は、以下の暗号処理を行う。
(a)証拠検証部302からRSA復号処理要求RSADを入力された場合
暗号処理部307は、以下の手順で、証拠情報EVを復号し、復号文を生成する。
先ず、暗号処理部307は、暗号鍵保持部308を検索し、証拠検証部302から受け取った転送先装置識別子ID_2と等しい装置識別子に対応付けられている鍵情報SK_2を取得する。そして、鍵情報SK_2に含まれる公開鍵n2と、秘密鍵d2とを用いて、証拠情報EVに対し、RSA復号処理を行う。
RSA復号処理では、暗号文C、公開鍵nj、秘密鍵djとした場合、その復号文は、C^dj(mod nj)となる。従って、暗号処理部307は、証拠情報EVの復号文として、EV^d2(mod n2)を得る。
暗号処理部307は、証拠情報EVの復号文EV^d2(mod n2)を、復号化証拠情報DEVとして、証拠検証部302へ出力する。
(b)証拠検証部302ら、ハッシュ値計算要求HASHを入力された場合
暗号処理部307は、復号化証拠情報DEVに対するハッシュ値である復号化証拠情報ハッシュHDEVを計算する。
既に説明したように、ハッシュ値は、ハッシュ関数にデータを入力した際の出力値であり、暗号処理部307は、ハッシュ関数アルゴリズムとして、送信装置10の暗号処理部116と同一のアルゴリズムを用いるものとする。
(8)暗号鍵保持部308
暗号鍵保持部308は、図18に示すように、複数個の装置識別子と鍵情報とを対応付けて保持している。
各装置識別子に対応付けら得ている鍵情報は、公開鍵及び秘密鍵を含み、各装置識別子により識別される装置が保持する公開鍵及び秘密鍵と共通である。
<動作>
1.システム全体の動作
図19は、コンテンツ配信システム1全体の動作を示すフローチャートである。
先ず、コンテンツ配信システム1は、送信装置10と受信装置20との間において、コンテンツ送受信処理鍵を行う(ステップS101)。
海賊版コンテンツが流出した場合には、コンテンツ配信システム1は、コンテンツ流出元特定処理を行う(ステップS102)。
2.コンテンツ送受信処理の動作
図20から図22は、コンテンツ送受信処理の動作を示すフローチャートである、なお、ここに示す動作は、図19のステップS101の詳細である。
送信装置10の入力部117は、ユーザからコンテンツの転送依頼情報を受け付けると(ステップS201)、転送先装置識別子取得部115へ、転送先装置識別子要求情報REQ4を出力する(ステップS202)。
転送先装置識別子取得部115は、転送先装置識別子要求情報を受け付けると、送受信部118を介して、受信装置20へ、転送先装置識別子取得依頼情報REQ5を送信し、受信装置20の送受信部211は、転送先装置識別子取得依頼情報REQ5を受信する(ステップS203)。
受信装置20の装置識別子出力部209は、送受信部211を介して、送信装置10から、転送先装置識別子取得依頼情報REQ5を受信すると、装置識別子保持部210から、装置識別子ID_2を取得する(ステップS204)。
装置識別子出力部209は、装置識別子ID_2を、転送先装置識別子として、送受信部211を介して、送信装置10へ送信し、送信装置10の送受信部118は、転送先装置識別子ID_2を受信する(ステップS205)。
転送先装置識別子取得部115は、送受信部118を介して、転送先装置識別子ID_2を受信すると、装置識別子保持部114へ格納する(ステップS206)。その後、転送先装置識別子取得部115は、コンテンツ鍵生成部101に対して、コンテンツ鍵生成要求REQ1を出力する。
コンテンツ鍵生成部101は、転送先装置識別子取得部115から、コンテンツ鍵生成要求REQ1を受け付けると、n個(nは予め与えられる2以上の整数)の128ビットのコンテンツ鍵CK_1、CK_2、…、CK_nを生成する(ステップS207)。そして、コンテンツ鍵生成部101は、生成したn個のコンテンツ鍵CK_1、CK_2、…、CK_nを、コンテンツ鍵識別子生成部102へ出力する。
コンテンツ鍵識別子生成部102は、コンテンツ鍵生成部101からn個のコンテンツ鍵CK_1、CK_2、…、CK_nが入力されると、n個のコンテンツ鍵CK_1、CK_2、…、CK_nのそれぞれを識別するコンテンツ鍵識別子CKID_1、CKID_2、…、CKID_nを生成する(ステップS208)。
コンテンツ鍵識別子生成部102は、入力されたn個のコンテンツ鍵CK_1、CK_2、…、CK_nと、生成したn個のコンテンツ鍵識別子CKID_1、CKID_2、…、CKID_nとを、それぞれ対応付けて、コンテンツ鍵保持部103へ格納する(ステップS209)。その後、コンテンツ鍵識別子生成部102は、第一送信制御部105へ、第一送信制御開始要求REQ2を出力する。
第一送信制御部105は、コンテンツ鍵識別子生成部102から第一送信制御開始要求REQ2が入力されると、先ず、コンテンツ鍵保持部103からn組のコンテンツ鍵識別子とコンテンツ鍵{(CKID_1、CK_1)、(CKID_2、CK_2)、…、(CKID_n、CK_n)}を取得する。
その後、第一送信制御部105は、暗号処理部116へ、n個のコンテンツ鍵とRSA暗号化処理要求RSAEとを出力する。
暗号処理部116は、まず、公開鍵保持部104から、送信装置公開鍵情報PK1に含まれる第一公開鍵n1及びe1を取得する。次に、暗号処理部116は、第一公開鍵n1及びe1を用いて、n個のコンテンツ鍵CK_1、CK_2、…、CK_nのそれぞれに対して、RSA暗号化処理を行う(ステップS210)。ここでは、コンテンツ鍵CK_iの暗号文をECK_iとすると、具体的には、ECK_i=CK_i^e1(mod n1)となる。暗号処理部116は、n個のコンテンツ鍵に対応する暗号文ECK_1、ECK_2、…、ECK_nを、第一送信制御部105へ出力する。
第一送信制御部105は、暗号処理部116から、n個の暗号化されたデータである第一暗号化コンテンツ鍵を受け取ると、送受信部118を介して、n組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵{(CKID_1、ECK_1)、(CKID_2、ECK_2)、…、(CKID_n、ECK_n)}を、受信装置20へ送信し、受信装置20の送受信部211は、n組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵を受信する(ステップS211)。
受信装置20の第一受信制御部203は、送受信部211を介して、送信装置10から、n組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵{(CKID_1、ECK_1)、(CKID_2、ECK_2)、…、(CKID_n、ECK_n)}を受信すると、先ず、n組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵を、コンテンツ鍵選択部206へ出力する。
コンテンツ鍵選択部206は、n組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵{(CKID_1、ECK_1)、(CKID_2、ECK_2)、…、(CKID_n、ECK_n)}の中から、1組のコンテンツ鍵識別子及び第一暗号化コンテンツ鍵を選択する(ステップS221)。
第一受信制御部203は、コンテンツ鍵選択部206から、選択コンテンツ鍵識別子SCKIDと選択第一暗号化コンテンツ鍵SECKとを受け取る。そして、受け取った選択コンテンツ鍵識別子SCKIDを、選択情報保持部205に格納する(ステップS222)。その後、第一受信制御部203は、選択第一暗号化コンテンツ鍵SECKと、RSA暗号化処理要求RSAEとを、暗号処理部212へ出力する。
暗号処理部212は、公開鍵保持部201から、受信装置公開鍵情報PK2に含まれる公開鍵n2及びe2を取得する。続いて、暗号処理部212は、第二公開鍵n2及びe2を用いて、選択第一暗号化コンテンツ鍵SECKに対してRSA暗号化処理を行い、第二暗号化コンテンツ鍵E2CKを生成する(ステップS223)。第二暗号化コンテンツ鍵は、具体的には、E2CK=CK_s^(e1×e2)(mod n2)となる。ここで、s=1、2、…、nの何れかである。
第一受信制御部203は、暗号処理部212から第二暗号化コンテンツ鍵E2CKを受け取ると、送受信部211を介して、第二暗号化コンテンツ鍵E2CKを送信装置10へ送信し、送信装置10は、第二暗号化コンテンツ鍵E2CKを受信する(ステップS224)。
送信装置10の第二送信制御部106は、送受信部118を介して、受信装置20から1個の第二暗号化コンテンツ鍵E2CKを受信すると、暗号処理部116へ、第二暗号化コンテンツ鍵E2CKと、RSA復号処理要求RSADを出力する。
暗号処理部116は、公開鍵保持部104から、第一公開鍵n1と第一秘密鍵d1とを取得する。次に、暗号処理部116は、第一公開鍵n1と第一秘密鍵d1とを用いて、第二暗号化コンテンツ鍵E2CKに対してRSA復号化処理を行う(ステップS225)。ここでは、第二暗号化コンテンツ鍵E2CKの復号文を、第三暗号化コンテンツ鍵E3CKとする。第三暗号化コンテンツ鍵は、具体的には、E3CK=CK_s^(e1×e2×d1)(mod n1)=CK_s^e2(mod n1)となる。暗号処理部116は、第三暗号化コンテンツ鍵E3CKを、第二送信制御部106へ出力する。
第二送信制御部106は、暗号処理部116から、第二暗号化コンテンツ鍵E2CKが復号化されたデータである第三暗号化コンテンツ鍵E3CKを受け取ると、受け取った第三暗号化コンテンツ鍵E3CKを、証拠取得部107へ出力する。
証拠取得部107は、第二送信制御部106から、証拠情報EVとして、第三暗号化コンテンツ鍵E3CKを取得し(ステップS226)、証拠情報EVを、証拠保持部108へ格納する(ステップS227)。
続いて、第二送信制御部106は、送受信部118を介して、第三暗号化コンテンツ鍵E3CKを、受信装置20へ送信し、受信装置20の送受信部211は、第三暗号化コンテンツ鍵E3CKを受信する(ステップS228)。また一方で、第二送信制御部106は、第三送信制御部119に対して、コンテンツ転送要求REQ3を出力する。
受信装置20の第二受信制御部204は、送受信部211を介して、送信装置10から、1個の第三暗号化コンテンツ鍵E3CKを受信すると、暗号処理部212へ、第三暗号化コンテンツ鍵E3CKとRSA復号処理要求RSADとを出力する。
暗号処理部212は、公開鍵保持部201から、第二公開鍵n2と第二秘密鍵d2とを取得する。次に、暗号処理部212は、第二公開鍵n2と第二秘密鍵d2とを用いて、第三暗号化コンテンツ鍵E3CKに対してRSA復号化処理を行い、復号コンテンツ鍵DCKを生成する(ステップS229)。ここで、復号コンテンツ鍵DCKは、具体的にはDCK=CK_s^(e2×d2)(mod n2)=CK_s(mod n2)となる。暗号処理部212は、生成した復号コンテンツ鍵DCKを、第二受信制御部204へ出力する。
第二受信制御部204は、暗号処理部212から復号コンテンツ鍵DCKを受け取ると、受け取った復号コンテンツ鍵DCKを、復号コンテンツ鍵保持部202へ格納する(ステップS230)。
第三送信制御部119は、第二送信制御部106からコンテンツ転送要求REQが入力されると、先ず、第一コンテンツデータ保持部109から第一コンテンツデータCNT1を取得する。次に、第三送信制御部119は、第一コンテンツデータCNT1をコンテンツ複製部110へ出力する。
コンテンツ複製部110は、第三送信制御部119から第一コンテンツデータCNT1が入力されると、第一コンテンツデータCNT1を複製し、全く同じデータであるn個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを生成する(ステップS241)。コンテンツ複製部110は、生成したn個の第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを、第三送信制御部119へ出力する。
第三送信制御部119は、n個に複製された第一コンテンツデータCNT1_1、CNT1_2、…、CNT1_nを取得すると、第三送信制御部119、装置識別子埋込部111、ハッシュ透かし埋込部112、証拠埋込部113、及び暗号処理部116は、i=1からnについて、ステップS242からステップS248までを繰り返す(ステップS242)。
先ず、第一コンテンツデータCNT1_iに対して、装置識別子埋込部111は、転送元装置識別子ID_1を、電子透かしとして埋め込み(ステップS243)、続いて、転送先装置識別子ID_2を、電子透かしとして埋め込む(ステップS244)。
続いて、ハッシュ埋込部112は、ID_1及びID_2が埋め込まれた第一暗号化コンテンツデータDCNT_iに対して、コンテンツ鍵ハッシュHCK_iを電子透かしとして埋め込み、ハッシュ埋込コンテンツデータHCK_iを生成する(ステップS245)。
次に、証拠埋込部113は、ハッシュ埋込コンテンツデータHCK_iに対して、証拠情報EVを電子透かしとして埋め込み、証拠埋込コンテンツデータVCNT1_iを生成する(ステップS246)。
最後に、暗号処理部116は、証拠埋込コンテンツデータVCNT1_iを、コンテンツ鍵CK_iを暗号鍵として用いて暗号化し、暗号化第一コンテンツデータECNT1_iを生成する(ステップS247)。
第三送信制御部119は、暗号処理部116から、n個の暗号化第一コンテンツデータを受け取ると、送受信部118を介して、暗号化第一コンテンツデータと、暗号化に用いたコンテンツ鍵の識別子であるコンテンツ鍵識別子との組である(CKID_1、ECNT1_1)、(CKID_2、ECNT1_2)、…、(CKID_n、ECNT1_n)を、受信装置20へ送信し、受信装置20の送受信部211は、n組の暗号化第一コンテンツデータとコンテンツ識別子とを受信する(ステップS249)。
受信装置20の第三受信制御部213は、送受信部211を介して、n組の暗号化第一コンテンツデータとコンテンツ鍵識別子(CKID_1、ECNT1_1)、(CKID_2、ECNT1_2)、…、(CKID_n、ECNT1_n)を受信すると、n組の暗号化第一コンテンツデータとコンテンツ鍵識別子とを、暗号化コンテンツ選択部207へ出力する。
暗号化コンテンツ選択部207は、選択情報保持部205から取得した選択コンテンツ鍵識別子SCKIDと一致するコンテンツ鍵識別子を選択し(ステップS250)、選択コンテンツ鍵識別子SCKIDと、対応する暗号化第一コンテンツデータSECNT1とを、第三受信制御部213へ出力する。
第三受信制御部213は、1組のコンテンツ鍵識別子SCKIDと暗号化第一コンテンツデータSECNT1とを取得すると、復号コンテンツ鍵保持部202から、復号コンテンツ鍵DCKを取得する(ステップS251)。
第三受信制御部213は、暗号処理部212へ、コンテンツ復号化要求AESDと、暗号化第一コンテンツデータSECNT1と、復号コンテンツ鍵識別子DCKとを出力する。
暗号処理部212は、復号コンテンツ鍵DCKを復号鍵として用い、暗号化第一コンテンツデータSECNT1を復号して、復号コンテンツデータDCNTを生成する(ステップS252)。暗号処理部212は、復号コンテンツデータDCNTを、第三受信制御部213へ出力する。
第三受信制御部213は、暗号処理部212から復号化コンテンツデータDCNTを取得すると、復号化コンテンツデータDCNTを、第二コンテンツデータCNT2として、第二コンテンツデータ保持部208へ格納する(ステップS253)。
3.コンテンツ流出元特定処理の動作
図23及び図24は、コンテンツ流出元特定処理の動作を示すフローチャートである。なお、ここに示す動作は、図19のステップS102の詳細である。
コンテンツデータ入力部305は、記録媒体40からコンテンツデータを読み出し(ステップS301)、読み出したコンテンツデータを、追跡コンテンツデータTCNTとして、追跡コンテンツデータ保持部306に格納する(ステップS302)。そして、コンテンツデータ入力部305は、透かし情報抽出部301へ透かし情報抽出要求を出力する。
透かし情報抽出部301は、コンテンツデータ入力部305から、透かし情報抽出要求が入力されると、追跡コンテンツデータ保持部306から、追跡コンテンツデータTCNTを取得する。
そして、透かし情報抽出部301は、追跡コンテンツデータTCNTに埋め込まれている電子透かしの抽出を行い、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKを取得する(ステップS303)。透かし情報抽出部301は、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKを、証拠検証部302へ出力する。
証拠検証部302は、透かし情報抽出部301から、転送元装置識別子ID_1、転送先装置識別子ID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKが入力されると、暗号処理部307へ、転送先装置識別子ID_2、証拠情報EV、及びRSA復号処理要求RSADを出力する。
暗号処理部307は、暗号鍵保持部308から、転送先装置識別子ID_2に対応する鍵情報SK_2(n2、d2)を取得し(ステップS304)、証拠情報EVを復号する(ステップS305)。証拠検証部302は、暗号処理部307から、証拠情報EVを復号した結果である復号化証拠情報DEVを取得する(ステップS306)。
次に、証拠検証部302は、暗号処理部307へ、ハッシュ値計算要求HASHと復号化証拠情報DEVとを出力する。
暗号処理部307は、復号化証拠情報DEVのハッシュ値を算出し(ステップS307)、算出された復号化証拠情報ハッシュ値HDEVを、証拠検証部302へ出力する。
そして、証拠検証部302は、復号化証拠情報ハッシュ値HDEVとコンテンツ鍵ハッシュHCKとの値が等しいか否か比較する(ステップS308)。
復号化証拠情報ハッシュ値HDEVとコンテンツ鍵ハッシュHCK値とが異なる場合(ステップS308でNO)、証拠検証部302は、証拠正当フラグFLAGに「0」を設定する(ステップS309)。
復号化証拠情報ハッシュ値HDEVとコンテンツ鍵ハッシュHCK値とが等しい場合(ステップS308でYES)、証拠検証部302は、証拠正当フラグFLAGに「1」を設定する(ステップS310)。
その後、証拠検証部302は、転送元装置識別子ID_1、転送先装置識別子ID_2、及び証拠正当フラグFLAGを、流出元判定部303へ出力する。
流出元判定部303は、証拠検証部302から、ID_1、ID_2、及び証拠正当フラグの値を取得する(ステップS311)。
流出元判定部303は、証拠正当フラグの値を判断する(ステップS312)。
証拠正当フラグの値が0の場合(ステップS312で「0」)、流出元判定部303は、転送元装置識別子ID_1を、流出元装置識別子として流出元出力部304へ出力する(ステップS313)。
証拠正当フラグの値が1の場合(ステップS312で「1」)、流出元判定部303は、転送先装置識別子ID_2を、流出元装置識別子として流出元出力部304へ出力する(ステップS314)。
流出元出力部304は、流出元判定部303から流出元装置識別子を受け取ると、受け取った流出元装置識別子を、ディスプレイに表示する(ステップS315)。
<第1の実施形態の効果>
ここでは、第1の実施形態の効果について述べる。
(a)先ず、第1の実施形態においては、受信装置20は、送信装置10が生成した複数個のコンテンツ鍵のうち、何れを取得したのか送信装置10に知られることなく、1個のコンテンツ鍵を取得することが可能となる。その理由を以下に示す。
送信装置10は、n個のコンテンツ鍵CK_1、CK_2、…、CK_nのそれぞれを、RSAアルゴリズムを用いて、送信装置10の暗号鍵e1で暗号化する。これにより、n個の暗号化第一コンテンツ鍵は、それぞれ、CK_1^e1(mod n1)、CK_2^e1(mod n1)、…、CK_n^e1(mod n1)となる。そして、n個の第一暗号化コンテンツ鍵は、受信装置20へ送付される。
受信装置20は、n個の第一暗号化コンテンツ鍵から1個の第一暗号化コンテンツ鍵CK_s^e1(mod n1)(s=1、2、…、nの何れか)を選択し、RSAアルゴリズムを用いて、受信装置20の暗号化鍵e2で暗号化する。これにより、第二暗号化コンテンツ鍵は、CK_s^(e1×e2)(mod n2)となる。そして、第二暗号化コンテンツ鍵をCK_s^(e1×e2)(mod n2)、送信装置10へ送付する。
送信装置10は、受信装置20の公開鍵を保持していないため、受け取った第二暗号化コンテンツ鍵を復号することが出来ず、受信装置20が、どの第一暗号化コンテンツ鍵を選択したのか判断することが出来ない。これが、送信装置10は、受信装置20の取得するコンテンツデータを特定出来ない根拠である。
そして、送信装置10は、第二暗号化コンテンツ鍵CK_s^(e1×e2)(mod n2)を、送信装置10の復号鍵d1で復号する。
これにより、第三暗号化コンテンツ鍵は、
CK_s^(e1×e2×d1)(mod n1)となる。
ここで、n1は、二つの素数p1、q1の積p1×q1であり、e1とd1は、条件式e1×d1=1(mоd L)を満たすように生成されている。なお、Lは、p1−1とq1−1との最小公倍数である。
従って、第三暗号化コンテンツ鍵は、
CK_s^(e1×e2×d1)=CK_s^(1×e2)(mod n1)=CK_s^e2(mod n1)となる。
そして、送信装置10は、第三暗号化コンテンツ鍵CK_s^e2(mod n1)を受信装置20へ送付する。
受信装置20は、受け取った第三暗号化コンテンツ鍵CK_s^e2(mod n1)を、受信装置20の復号鍵d2で復号する。
これにより、復号コンテンツ鍵DCKは、
CK_s^(e2×d2)(mod n2)となる。
ここで、先程と同様に、n2は、二つの素数p2、q2の積p2×q2であり、e2とd2は、条件式e2×d2=1(mоd L)を満たすように生成されている。なお、Lは、p2−1とq2−1との最小公倍数である。
従って、復号コンテンツ鍵DCKは、
DCK=CK_s^(e2×d2)=CK_s^1=CK_s(mod n2)となる。
以上のことから、受信装置20は、送信装置10に知られることなく、送信装置10が生成したコンテンツ鍵CK_sを取得することが出来る。
(b)続いて、第1の実施形態においては、海賊版コンテンツから、流出元装置を特定することが出来る。その理由を以下に示す。
ここでは先ず、仮に、コンテンツの転送元である送信装置10が不正端末である場合を考える。この場合、送信装置10は、コンテンツの転送先である受信装置20が受け取った電子透かし入りのコンテンツデータを特定して、そのコンテンツデータを海賊版コンテンツとして外部に流出することが出来れば、受信装置20へ罪を擦り付けることが可能となる。
しかし、上述したように、送信装置10は、受信装置20がどのコンテンツ鍵を選択して、どの電子透かし入りのコンテンツデータを取得したのか、知ることが出来ない。これにより、送信装置10は、受信装置20が取得した電子透かし入りのコンテンツを特定することが出来ない。
また、第1の実施形態では、コンテンツデータに含まれる電子透かしを抽出することにより、受信装置20が受け取ったコンテンツデータであるか否かを判断することが出来る。
これらにより、送信装置10は、複数個に複製し、それぞれに異なる電子透かしを埋め込んだコンテンツデータのうち、何れかを適当に選択して外部に流出したとしても、そのコンテンツデータが、受信装置20が受け取っていないコンテンツデータである確率が高いため、不正を行ったと判断される。
次に、仮に、コンテンツの転送先である受信装置20が不正端末である場合を考える。第1の実施形態においては、受信装置20は、自機が取得したことを示す証拠が電子透かしとして埋め込まれているコンテンツデータしか入手することが出来ない。
従って、受信装置20は、取得した電子透かし入りのコンテンツを外部に流出したとしても、それは、受信装置20が取得したコンテンツデータであると判断され、不正を行ったと判断される。
(c)以上のことから、第1の実施形態では、コンテンツの転送元である送信装置10が不正端末である場合であっても、コンテンツの転送先である受信装置20が不正端末である場合であっても、コンテンツの流出元を特定することが出来る。
≪第2の実施形態≫
本発明の第2の実施形態について説明する。
<概要>
第1の実施形態では、RSA暗号を用いて、コンテンツの流出元を特定することができるコンテンツ送受信処理を実現していたが、第2の実施形態では、RSA暗号に限定されず、ElGamal暗号や楕円曲線暗号など、任意の公開鍵暗号アルゴリズムを用いて、コンテンツの流出元を特定することができるコンテンツ送受信処理を実現することが可能となる。
<構成>
第2の実施形態は、図1に示したコンテンツ配信システム1と同様のシステム構成を有する。即ち、第2の実施形態は、放送局装置、送信装置、受信装置、コンテンツ流出元特定装置、及び記録媒体から構成される。各装置の内部構成は、第1の実施形態における送信装置10、受信装置20、コンテンツ流出元特定装置30と同様である。
第2の実施形態では、送信装置は、任意の公開鍵暗号アルゴリズムの公開鍵PK1及び秘密鍵SK1を保持しており、受信装置は、送信装置と同じ公開鍵暗号アルゴリズムの公開鍵PK2及び秘密鍵SK2を保持しているものとする。また、コンテンツ流出元端末装置は、送信装置の公開鍵PK1及び秘密鍵SK1、並びに、受信装置の公開鍵PK2及び秘密鍵SK2を保持しているものとする。
<動作>
ここでは、図25から図28に示すフローチャートを用いて、第2の実施形態の動作について説明する。
1.システム全体の動作
第2の実施形態の全体の動作は、図19に示した第1の実施形態の動作と同様であるため、説明を省略する。
2.コンテンツ送受信処理の動作
第2の実施形態におけるコンテンツ送受信処理の動作は、その一部が、第1の実施形態と同様である。具体的には、第2の実施形態は、ステップ201からステップS206まで、及び、ステップS241からステップS253まで、第1の実施形態と同様の処理を行う。
第2の実施形態は、送信装置及び受信装置によるコンテンツ鍵の送受信処理が、第1の実施形態とは異なるので、以下では、図25及び図26に示すフローチャートを用いて、第1実施形態と異なる部分について説明する。
先ず、送信装置は、128ビットのn個の乱数r1、r2、…、rnを生成する(ステップS401)。
送信装置は、生成したn個の乱数r1、r2、…、rnと、送信装置の公開鍵PK1とを受信装置へ送信し、受信装置は、n個の乱数r1、r2、…、rnと、送信装置の公開鍵PK1とを受信する(ステップS402)。
受信装置は、受信したn個の乱数のうち、1つをランダムに選択する(ステップS402)。ここでは、選択した乱数をrs(s=1、2、…、nの何れか)とする。
次に、受信装置は、128ビットの復号コンテンツ鍵DCKを生成し(ステップS404)、生成した復号コンテンツ鍵DCKを、ステップS402で受信した送信装置の公開鍵PK1を暗号鍵として用い、暗号化する(ステップS405)。ここでは、復号コンテンツ鍵DCKの暗号文を、C1=Enc(PK1、DCK)とする。ここでEnc(K、M)は、暗号鍵Kを用い、平文Mを暗号化した際の暗号文とする。
続いて、受信装置は、C1に、ステップS403で選択した乱数rsを足し合わせ、C2=Enc(PK1,DCK)+rsを生成する(ステップS406)。
次に、受信装置は、128ビットの乱数Pを生成し(ステップS407)、復号コンテンツ鍵DCK、乱数rs、及び乱数Pを連結する(ステップS408)。ここでは、連結した値を、DCK‖rs‖Pと表す。
そして、受信装置は、自機の公開鍵PK2を暗号鍵として用い、DCK‖rs‖Pを暗号化し、E=Enc(PK2、DCK‖rs‖P)を生成する(ステップS409)。
その後、受信装置は、自機の秘密鍵SK2を署名生成鍵として用い、暗号文C2と暗号文Eとを連結した値であるC2‖Eに対し、デジタル署名S=Gen(SK2、C2‖E)を生成する(ステップS410)。ここで、Gen(K,M)は、署名生成鍵Kを用いて、メッセージMに対して生成されたデジタル署名であるとする。デジタル署名を作成する技術については、既に公知であるので説明は省略する。
受信装置は、C2、E、S、及び公開鍵PK2を、送信装置へ送信し、送信装置は、C2、E、S、及び公開鍵PK2を受信する(ステップS411)。
送信装置は、受信装置の公開鍵PK2を署名検証鍵として用い、デジタル署名Sが、C2‖Eに対する正規の署名であるか否かを検証する(ステップS412)。
検証の結果、デジタル署名Sが、受信装置が発行した正しいデジタル署名でないと判断された場合(ステップS413でNO)、送信装置は、受信装置へのコンテンツ転送処理を終了する。
検証の結果、デジタル署名Sが、受信装置が発行した正しいデジタル署名であると判断された場合(ステップS413でYES)、送信装置は、値C、値E、及びデジタル署名Sを、証拠情報EVとして、証拠情報保持部へ格納する(ステップS414)。即ち、第2の実施形態では、証拠情報EVの値が、第1の実施形態とは異なる。
次に、送信装置は、値C2をn個に複製し、それらをC2_1、C2_2、…、C2_nとする(ステップS415)。
続いて、送信装置は、i=1、2、…、nについて、ステップS416からステップS419までを繰り返す。
先ず、送信装置は、C2_iから、ステップS401で生成した乱数riの値を減算し、C3_i=C2_i−riを生成する(ステップS417)。次に、送信装置は、C3_iを自機の秘密鍵SK1を復号鍵として用い復号し、CK_i=Dec(SKi、C3_i)を生成する(ステップS418)。ここで、Dec(K、C)は、復号化鍵Kを用い、暗号文Cを復号した際の復号文とする。
そして、送信装置は、n個の値CK_1、CK_2、…、CK_nをコンテンツ鍵として、コンテンツ鍵保持部へ格納する(ステップS420)。
以上により、第2の実施形態における送信装置と受信装置とによるコンテンツ鍵の送受信処理を終了し、以後は、第1の実施形態のステップS241へ続く。
3.コンテンツ流出元特定処理の動作
第2の実施形態におけるコンテンツ流出元特定処理の動作は、その一部が、第1の実施形態と同様である。具体的には、第2の実施形態は、ステップ301からステップS302まで、及び、ステップS311からステップS315まで、第1の実施形態と同様の処理を行う。
以下では、図27及び図28に示すフローチャートを用いて、第1の実施形態と異なる部分について説明する。
先ず、証拠検証部は、透かし情報抽出部から転送元装置識別子ID_1、転送先装置識別子TID_2、証拠情報EV、及びコンテンツ鍵ハッシュHCKが入力されると、証拠情報EVに含まれる値Cと値Eとデジタル署名Sを取得する(ステップS501)。
次に、証拠検証部は、暗号鍵保持部から、転送先装置識別子ID_2に対応する公開鍵PK2を取得する(ステップS502)。そして、証拠検証部は、PK2を用いて、デジタル署名Sが、値C‖Eの正規の署名であるか否かを検証する(ステップS503)。
検証の結果、デジタル署名Sが、正しいデジタル署名でないと判断された場合(ステップS504でNO)、証拠検証部は、証拠正当フラグFLAGに「0」を設定し(ステップ505)、転送元装置識別子ID_1と、転送先装置識別子ID_2と、証拠正当フラグFLAGとを、流出元判定部へ出力する。
検証の結果、デジタル署名Sが、正しいデジタル署名であると判断された場合(ステップS504でYES)、証拠検証部は、値Eを復号するために、暗号処理部へ転送先装置識別子ID_2と、証拠情報EVに含まれる値Eと、復号処理要求を出力する。暗号処理部は、受信装置の秘密鍵SK2を用いて、値Eを復号し、DCK‖rs‖Pを取得する(ステップS506)。
次に、暗号処理部は、送信装置の公開鍵PK1を用いてDCKを暗号化し、その値に、rsを足し合わせ、Enc(PK1、DCK)+rsを生成する(ステップS507)。暗号処理部は、生成したEnc(PK1、DCK)+rsを、証拠検証部へ出力する。
証拠検証部は、暗号処理部からEnc(PK1、DCK)+rsを受け取ると、 その値と値C2とが一致するか否か確認する。
Enc(PK1、DCK)+rsの値と値C2とが一致しない場合(ステップS508でNO)、証拠検証部は、証拠正当フラグFLAGに「1」を設定し(ステップ509)、転送元装置識別子ID_1と、転送先装置識別子ID_2と、証拠正当フラグFLAGとを、流出元判定部へ出力する。
一方、Enc(PK1、DCK)+rsの値と値C2とが一致する場合(ステップS508でYES)、証拠検証部は、DCKのハッシュ値を計算するために、ハッシュ値計算要求HASHとDCKとを、暗号処理部へ出力する。
暗号処理部は、DCKのハッシュ値である証拠情報ハッシュ値HKを算出し(ステップS510)、算出した証拠情報ハッシュ値HKを、証拠検証部へ出力する。
そして、証拠検証部は、証拠情報ハッシュ値HKとコンテンツ鍵ハッシュHCKが等しい否か比較する。
証拠情報ハッシュ値HKとコンテンツ鍵ハッシュHCKが異なる場合(ステップS511でNO)、証拠検証部は、証拠正当フラグFLAGに「0」を設定し(ステップS512)、転送元装置識別子ID_1と、転送先装置識別子ID_2と、証拠正当フラグFLAGとを、流出元判定部へ出力する。
証拠情報ハッシュ値HKとコンテンツ鍵ハッシュHCKが等しい場合(ステップS511でYES)、証拠検証部は、証拠正当フラグFLAGに「1」を設定し(ステップS513)、転送元装置識別子ID_1と、転送先装置識別子ID_2と、証拠正当フラグFLAGとを、流出元判定部へ出力する。
以後、第1の実施形態のステップS311へ続く。
<第2の実施形態の効果>
ここでは、第2の実施形態の効果について述べる。
(a)第2の実施形態においては、送信装置は、受信装置が取得するコンテンツを特定することが出来ない。その理由を以下に示す。
先ず、送信装置は、n個の乱数r1、r2、…、rnと、自機の公開鍵PK1とを受信装置へ送信する。
受信装置は、自機において、復号コンテンツ鍵DCKを生成する。そして、送信装置の公開鍵PK1を用いて、復号コンテンツ鍵DCKを暗号化し、暗号化した値をC1=Enc(PK1、DCK)とする。その後、受信装置は、n個の乱数r1、r2、…、rnのうち一つの乱数rs(s=1、2、…、nの何れか)を選択し、選択した乱数rsの値を、C1に足し合わせる。足し合わせた値をC2=C1+rsとする。
そして、受信装置は、値C2と受信装置の公開鍵PK2とを、送信装置へ送信する。ここでは、値Eとデジタル署名Sとについては述べない。
送信装置は、値C2と受信装置の公開鍵PK2とを受け取るが、復号コンテンツ鍵DCKの値を知らないため、受け取った値C2から、受信装置がどの乱数を選択したのか判断することが出来ない。
そこで、送信装置は、受信装置がどの乱数を選択した場合であっても、1個のコンテンツを利用できるように、全ての乱数r1、r2、…、rnを用いて、値C2から各乱数を減算する。その結果を、C3_1=C2_1−r1、C3_2=C2_2−r2、…、C3_n=C2_n−rnとする。これにより、値C3の内の何れか一つは、受信装置が選択した乱数rsの値と一致する。
その後、送信装置は、自機の秘密鍵SK1を用いて、値C3_1、C3_2、…、C3_nを復号し、CK_1=Dec(SK1、C3_1)、CK_2=Dec(SK1、C3_2)、…、CK_n=Dec(SK1、C3_n)を生成する。
これにより、CK_1、CK_2、…、CK_nの内、何れか一つは受信装置が生成した復号コンテンツ鍵DCKの値と一致するが、送信装置は、どれが復号コンテンツ鍵DCKと一致するのかを判断することは出来ない。
そして、送信装置は、コンテンツ鍵CK_1、CK_2、…、CK_nを用いて、異なる透かしを埋め込んだn個のコンテンツデータを暗号化し、n個の暗号化コンテンツデータを生成する。
受信装置は、送信装置からn個の暗号化コンテンツデータを受信すると、復号コンテンツ鍵DCKを用い、何れのコンテンツデータを取得したのか送信装置に知られることなく、1個のコンテンツデータを取得することが出来る。
(b)第2の実施形態においては、海賊版コンテンツから、流出元装置を特定することが出来る。その理由を以下に示す。
基本的には、第1の実施形態と同様であるが、第2の実施形態では、第1の実施形態と異なり、証拠情報EVに受信装置のデジタル署名Sが含まれている。
デジタル署名Sを含める理由は、受信装置が、値C2及び値Eを偽造する不正行為を防止するためである。
より具体的に説明すると、受信装置は、真の復号コンテンツ鍵DCKではない値を、PK2を用いて暗号化し、値C2及び値Eを生成したとする。受信装置がこのような不正行為を行った上で、海賊版コンテンツを作成した場合、コンテンツ流出元特定装置は、海賊版コンテンツの流出元を、送信装置であると誤判定してしまう。
そこで、第2の実施形態では、このような受信装置の不正行為を想定した上で、C2‖Eに対して、デジタル署名Sを付加することにより、コンテンツ流出元特定装置が、海賊版コンテンツの流出元を正しく判定することが出来るようになる。
(c)以上のことから、第2の実施形態では、第1の実施形態と同様に、コンテンツの転送元である送信装置が不正端末である場合であっても、コンテンツの転送先である受信装置が不正端末である場合であっても、コンテンツの流出元を特定することが出来る。
≪第3の実施形態≫
本発明の第3の実施形態について説明する。
<概要>
第1の実施形態では、RSA暗号を用いて、コンテンツの流出元を特定することができるコンテンツ送受信処理を実現していた。
第2の実施形態では、RSA暗号に限定されず、ElGamal暗号や楕円曲線暗号など、任意の公開鍵暗号アルゴリズムで、第1の実施形態と同様のシステムを実現することが可能となった。ここで、第2の実施形態では、送信装置が、乱数を生成しなければならなかったが、第3の実施形態では、送信装置が、乱数を生成する必要がないシステムを開示する。
<構成>
第3の実施形態は、図1に示したコンテンツ配信システム1と同様のシステム構成を有する。即ち、第3の実施形態は、放送局装置、送信装置、受信装置、コンテンツ流出元特定装置、及び記録媒体から構成される。各装置の内部構成は、第1の実施形態における送信装置10、受信装置20、コンテンツ流出元特定装置30と同様である。
第3の実施形態では、送信装置は、n個の公開鍵PK1_1、PK1_2、…、PK1_n、と、各公開鍵に対応するn個の秘密鍵SK1_1、SK1_2、…、SK1_nとを、インデックス情報ID_sに対応付けて保持しているものとする。また、受信装置は、公開鍵PK2と秘密鍵SK2とを保持しているものとする。
ここで、送信装置と受信装置とが用いる公開鍵暗号アルゴリズムは、RSA暗号、ElGamal暗号、楕円曲線暗号など、任意のアルゴリズムでよい。
<動作>
第3の実施形態の全体の動作は、図19に示した第1の実施形態の動作と同様であるため、説明を省略する。
また、第3の実施形態におけるコンテンツ流出元特定処理の動作は、図27及び図28に示した第2の実施形態の動作と同様であるため、説明を省略する。
第3の実施形態におけるコンテンツ送受信処理の動作は、その一部が、第1の実施形態と同様である。具体的には、第3の実施形態は、ステップ201からステップS206まで、及び、ステップS241からステップS253まで、第1の実施形態と同様の処理を行う。
第3の実施形態は、送信装置及び受信装置によるコンテンツ鍵の送受信処理が、第1の実施形態とは異なるので、以下では、図29及び図30に示すフローチャートを用いて、第1実施形態と異なる部分について説明する。
送信装置は、自機が保持するn個の公開鍵PK1_1、PK1_2、…、PK1_nを読み出し(ステップS601)、読み出したn個の公開鍵を、受信装置へ送信し、受信装置は、n個の公開鍵を受信する(ステップS602)。
受信装置は、受信したn個の公開鍵のうち、1つをランダムに選択する。ここでは、選択した公開鍵をPK1_s(s=1、2、…、nの何れか)とする(ステップS603)。
次に、受信装置は、128ビットの復号コンテンツ鍵DCKを生成する(ステップS604)。そして、受信装置は、復号コンテンツ鍵DCKを、ステップS603で選択した送信装置の公開鍵PK1_sを用いて暗号化し、C1=Enc(PK1_s、DCK)を生成する(ステップS605)。
次に、受信装置は、128ビットの乱数Pを生成し(ステップS606)、復号コンテンツ鍵DCKと、ステップS603で選択した公開鍵のインデックス情報ID_sと、乱数Pとを連結し、DCK‖ID_s‖Pを生成する(ステップS607)。
そして、受信装置は、自機の公開鍵PK2を用いて、DCK‖ID_s‖Pを暗号化し、E=Enc(PK2、DCK‖ID_s‖P)を生成する(ステップS608)。
次に、受信装置は、自機の秘密鍵SK2を署名生成鍵として用いて、値C1と値Eに対するデジタル署名S=Gen(SK2、C1‖E)を作成する(ステップS609)。
受信装置は、値C1、値E、デジタル署名S、及び公開鍵PK2を送信装置へ送信し、送信装置は、値C1、値E、デジタル署名S、及び公開鍵PK2を受信する(ステップS610)。
送信装置は、受信装置の公開鍵PK2を署名検証鍵として用い、デジタル署名Sが、C1‖Eに対する正規の署名であるか否かを検証する(ステップS611)。
検証の結果、デジタル署名Sは、受信装置が発行した正しいデジタル署名でないと判断された場合(ステップS612でNO)、送信装置は、受信装置へのコンテンツ転送処理を終了する。
検証の結果、デジタル署名Sは、受信装置が発行した正しいデジタル署名であると判断された場合(ステップS612でYES)、送信装置は、値C1、値E、及びデジタル署名Sを、証拠情報EVとして、証拠情報保持部へ格納する(ステップS613)。即ち、第3の実施形態では、証拠情報EVの値が、第1の実施形態と異なる。
次に、送信装置は、値C1を複製し、C1_1、C1_2、…、C1_nを生成する(ステップS614)。続いて、送信装置は、i=1、2、…、nについて、ステップS615からステップS617までを繰り返す。
先ず、送信装置は、C1_iを、自機の秘密鍵SK1_iを用いて復号し、CK_i=Dec(SK1_i、C1_i)を生成する(ステップS616)。
送信装置は、生成したn個の値CK_1、CK_2、…、CK_nを、コンテンツ鍵として、コンテンツ鍵保持部へ格納する(ステップS618)。
以上により、第3の実施形態における送信装置と受信装置によるコンテンツ鍵の送受信処理を終了し、以後は、第1の実施形態のステップS241へ続く。
<第3の実施形態の効果>
ここでは、第3の実施形態の効果について述べる。
(a)第3の実施形態においては、送信装置は、受信装置が取得するコンテンツを特定することが出来ない。その理由を以下に示す。
送信装置は、n個の公開鍵PK1_1、PK1_2、…、PK1_nを受信装置へ送信する。一方、受信装置は、自機において、復号コンテンツ鍵DCKを生成する。そして、受信装置は、送信装置のn個の公開鍵のうち、一つの公開鍵PK1_s(s=1、2、…、nの何れか)を用いて、復号コンテンツ鍵DCKを暗号化する。ここで、暗号化した値をC1=Enc(PK1_s、DCK)とする。そして、受信装置は、値C1と、自機の公開鍵PK2とを、送信装置へ送信する。なお、受信装置は、C1及びPK2に加えて、値Eとデジタル署名Sとを送信装置へ送信するが、ここでは、それらについては述べない。
送信装置は、受信装置から値C1と公開鍵PK2とを受信する。ここで送信装置は、受信装置が生成した復号コンテンツ鍵DCKの値を知らないため、値C1から、受信装置がn個の公開鍵のうちの、何れの公開鍵を選択したのか、判断することが出来ない。
そこで、送信装置は、受信装置が、n個の公開鍵PK1_1、PK1_2、…、PK1_nの内、どの公開鍵を選択した場合であっても、1個のコンテンツを利用できるように、全ての秘密鍵SK1_1、SK1_2、…、SK1_nを用いて、値C1を復号し、CK_1=Dec(SK1_1、C1)、CK_2=Dec(SK1_2、C1)、…、CK_n=Dec(SK1_n、C1)を生成する。
これにより、送信装置が生成したCK_1、CK_2、…、CK_nのうち、何れか一つは、受信装置が生成した復号コンテンツ鍵DCKと一致する。
そして、送信装置は、n個のコンテンツ鍵CK_1、CK_2、…、CK_nを用いて、異なる透かしを埋め込んだn個のコンテンツデータをそれぞれ暗号化して、n個の暗号化コンテンツデータを生成する。
受信装置は、送信装置からn個の暗号化コンテンツデータを受信すると、復号コンテンツ鍵DCKを用い、何れのコンテンツデータを取得したのか送信装置に知られることなく、1個のコンテンツデータを取得することが出来る。
(b)第3の実施形態においては、第2の実施形態と同様に、証拠情報EVに受信装置のデジタル署名Sが含まれているため、第2の実施形態の効果で説明したように、コンテンツ流出元特定装置が、海賊版コンテンツの流出元を正しく判定することが出来る。
(c)以上のことから、第3の実施形態では、第1の実施形態及び第2の実施形態と同様に、コンテンツの転送元である送信装置が不正端末である場合であっても、コンテンツの転送先である受信装置が不正端末である場合であっても、コンテンツの流出元を特定することが出来る。
≪第4の実施形態≫
本発明の第4の実施形態について説明する。
<概要>
第4の実施形態では、第1の実施形態、第2の実施形態、及び第3の実施形態のそれぞれで説明した、送信装置と受信装置とにおけるコンテンツ鍵の送受信処理とは異なる方法を用いて、コンテンツ鍵を送受信する。
<構成>
第4の実施形態は、図1に示したコンテンツ配信システム1と同様のシステム構成を有する。即ち、第3の実施形態は、放送局装置、送信装置、受信装置、コンテンツ流出元特定装置、及び記録媒体から構成される。各装置の内部構成は、第1の実施形態における送信装置10、受信装置20、コンテンツ流出元特定装置30と同様である。
第4の実施形態では、受信装置は、公開鍵PK2と秘密鍵SK2とを保持してものとする。第4の実施形態で用いる公開鍵暗号アルゴリズムは、RSA暗号、ElGamal暗号、楕円曲線暗号など、任意のアルゴリズムでよい。
<動作>
第4の実施形態の全体の動作は、図19に示した第1の実施形態の動作と同様であるため、説明を省略する。
また、第4の実施形態におけるコンテンツ流出元特定処理の動作は、図27及び図28に示した第2の実施形態の動作と同様であるため、説明を省略する。
第4の実施形態におけるコンテンツ送受信処理の動作は、その一部が、第1の実施形態と同様である。具体的には、第4の実施形態は、ステップ201からステップS206まで、及び、ステップS241からステップS253まで、第1の実施形態と同様の処理を行う。第4の実施形態は、送信装置及び受信装置によるコンテンツ鍵の送受信処理が、第1の実施形態とは異なるので、以下では、図31及び図33に示すフローチャートを用いて、第1実施形態と異なる部分について説明する。
送信装置は、1024ビットの素数pをランダムに生成する(ステップS701)。また、送信装置は、2以上p−1以下の2つの異なる数g、hをランダムに生成する(ステップS702)。
次に、送信装置は、160ビット以上1024ビット以下の数x1をランダムに生成する(ステップS703)。そして、送信装置は、mod pにおいてgをx1乗した値であるC1=g^x1(mod p)を算出する(ステップS704)。
その後、送信装置は、n個の数r_1、r_2、…、r_nを生成する(ステップS705)。ここで生成するn個の数は、128ビット程度の乱数であってもよいし、単純に、1からnまでの数であってもよい。
そして、送信装置は、値p、値g、値h、値C1、及びn個の数r_1、r_2、…、r_nを受信装置へ送信し、受信装置は、値p、値g、値h、値C1、及びn個の数r_1、r_2、…、r_nを受信する(ステップS706)。
受信装置は、160ビット以上1024ビット以下の数x2をランダムに生成する(ステップS707)。そして、受信装置は、mod pにおいてC1をx2乗した値C1^x2(mod p)を計算し、この値を復号コンテンツ鍵DCKとして格納する(ステップS708)。なお、この値は、1024ビットとなる。受信装置は、1024ビットの復号コンテンツ鍵DCKを、ハッシュ関数を用いて128ビットに圧縮する(ステップS709)。
次に、受信装置は、ステップS706で受信したn個の値r_1、r_2、…、r_nのうち、1つをランダムに選択し、選択した値をr_s(s=1、2、…、nの何れか)とする(ステップS710)。
次に、受信装置は、mod pにおいてgをx2乗した値g^x2(mod p)を算出し(ステップS711)、mod pにおいてhをr_s乗した値h^r_s(mod p)を算出する(ステップS712)。
続いて、受信装置は、ステップS711、及びステップS712で算出された二つの値をmod pで乗算し、その値をC2=(g^x2)×(h^r_s)とする(ステップS713)。
次に、受信装置は、128ビットの乱数Pを生成し(ステップS714)、復号コンテンツ鍵DCK、乱数r_s、及び乱数Pを連結し、DCK‖r_s‖Pを生成する(ステップS715)。
その後、受信装置は、自機の公開鍵PK2を用いて、DCK‖rs‖Pを暗号化し、E=Enc(PK2、DCK‖r_s‖P)を生成する(ステップS716)。
また、受信装置は、自機の秘密鍵SK2を署名生成鍵として用い、値C2‖Eに対するデジタル署名S=Gen(SK2、C‖E)を作成する(ステップS717)。
受信装置は、値C2、値E、デジタル署名S、及び公開鍵PK2を送信装置へ送信し、送信装置は、値C2、値E、デジタル署名S、及び公開鍵PK2を受信する(ステップS718)。
送信装置は、受信装置の公開鍵PK2を署名検証鍵として用い、デジタル署名Sが、C2‖Eに対する正規の署名であるか否かを検証する(ステップS719)。
検証の結果、デジタル署名Sは、受信装置が発行した正しいデジタル署名でないと判断された場合(ステップS720でNO)、送信装置は、受信装置へのコンテンツ転送処理を終了する。
検証の結果、デジタル署名Sは、受信装置が発行した正しいデジタル署名であると判断された場合(ステップS720でYES)、送信装置は、値C2、値E、及びデジタル署名Sを、証拠情報EVとして、証拠情報保持部へ格納する(ステップS721)。即ち、第4の実施形態では、証拠情報EVの値が、第1の実施形態と異なる。
続いて、送信装置は、値C2をn個に複製し、C2_1、C2_2、…、C2_nを生成し(ステップS722)、i=1、2、…、nについて、ステップS723からステップS727までを繰り返す。
先ず、送信装置は、ステップS705で生成した値r_iから、h^r_i(mod p)を算出する(ステップS724)。
次に、送信装置は、C2_iを、値h^r_i(mod p)除算して、C2_i÷h^r_i(mod p)を算出する(ステップS725)。そして、送信装置は、ステップS724で算出した値を、mod pでx1乗し、CK_i=(C2_i÷h^r_i)^x1(mod p)を算出する(ステップS726)。
送信装置は、算出されたn個の値CK_1、CK_2、…、CK_nを、コンテンツ鍵として、コンテンツ鍵保持部へ格納する(ステップS728)。
以上により、第4の実施形態における送信装置と受信装置によるコンテンツ鍵の送受信処理を終了し、以後は、第1の実施形態のステップS241へ続く。
<第4の実施形態の効果>
ここでは、第4の実施形態の効果について述べる。
(a)第4の実施形態においては、送信装置は、受信装置が取得するコンテンツを特定することが出来ない。その理由を以下に示す。
第4の実施形態における送信装置と受信装置とは、基本的に、DH(Diffie Hellman)鍵共有法と同じ原理を用いて、コンテンツ鍵を送受信する。
ここで、第4の実施形態に特徴的な点は、送信装置が、値g、値h、及びn個の値r_1、r_2、…、r_nを受信装置へ送信する点である。
そして、受信装置は、n個の値の中から一つの値r_sを選択し、C2=(g^x2)×(h^r_s)を算出し、この値を送信装置へ送信する。
ここで、送信装置は、受信装置が生成したx2の値を知ることができないため、C2の値から、受信装置がn個の値r_1、r_2、…、r_nの内、どの値を選択したのか判別することが出来ない。
そこで、送信装置は、受信装置が、r_1、r_2、…、r_nの内、どの値を選択した場合であっても、1個のコンテンツを利用できるように、全ての値r_1、r_2、…、r_nを用いて、値C2を、h^r_1、h^r_2、…、h^r_nで除算する。
これにより、受信装置が選択したr_sと一致した場合にのみ、C2÷h^r_1、C2÷h^r_2、…、C2÷h^r_nの結果が、g^x2(mod p)と等しくなる。
そして、送信装置は、C2÷h^r_1、C2÷h^r_2、…、C2÷h^r_nを、全てmod p上でx1乗し、その値を、CK_1、CK_2、…、CK_nとすると、何れかの値が、g^(x1×x2)(mod p)となる。
これにより、送信装置が生成したCK_1、CK_2、…、CK_nのうち、何れか一つは、受信装置が生成した復号コンテンツ鍵DCKと一致する。
そして、送信装置は、n個のコンテンツ鍵CK_1、CK_2、…、CK_nを用いて、異なる透かしを埋め込んだn個のコンテンツデータをそれぞれ暗号化して、n個の暗号化コンテンツデータを生成する。
受信装置は、送信装置からn個の暗号化コンテンツデータを受信すると、復号コンテンツ鍵DCKを用い、何れのコンテンツデータを取得したのか送信装置に知られることなく、1個のコンテンツデータを取得することが出来る。
(b)第4の実施形態においては、第2の実施形態と同様に、証拠情報EVに受信装置のデジタル署名Sが含まれているため、第2の実施形態の効果で説明したように、コンテンツ流出元特定装置が、海賊版コンテンツの流出元を正しく判定することが出来る。
(c)以上のことから、第4の実施形態では、第1の実施形態、第2の実施形態、及び第3の実施形態と同様に、コンテンツの転送元である送信装置が不正端末である場合であっても、コンテンツの転送先である受信装置が不正端末である場合であっても、コンテンツの流出元を特定することが出来る。
≪その他の変形例≫
なお、本発明を上記の実施形態に基づき説明してきたが、本発明は、上記の実施形態に限定されないのは勿論であり、以下のような場合も、本発明に含まれる。
(1)上記実施の形態では、送信装置と受信装置とにおけるコンテンツ送受信処理について、4つの実施形態を用いて説明したが、送信装置と受信装置とにおけるコンテンツ送受信処理は、4つの実施形態に限定されないのは勿論である。
本発明は、送信装置と受信装置とにおいて、送信装置から受信装置へ送られるn個のコンテンツ鍵のうち、受信装置が1個のコンテンツ鍵のみを取得でき、更に、送信装置が、受信装置が取得したコンテンツ鍵が何れのコンテンツ鍵であるのかを特定できない方法を用いてコンテンツ鍵を送受信する仕組みを有していればよい。
(2)上記の実施形態において、送信装置は、コンテンツの全体をn個に複製する構成を有するが、本発明においてこの構成は必須ではない。送信装置は、コンテンツを部分コンテンツに分割し、分割した1個の部分コンテンツについてのみ、n個に複製するように構成してもよい。そして、複製された複数個の部分コンテンツに、送信先装置識別子、送信元装置識別子、証拠情報、及びコンテンツ鍵ハッシュを電子透かしとして埋め込み、異なる電子透かしが埋め込まれたそれぞれの部分コンテンツを、異なるコンテンツ鍵で暗号化するように構成してもよい。ここで、複製されていない部分コンテンツに関しては、共通する一つの鍵で暗号化して、送付するようにしてもよい。この構成により、送信装置から受信装置へ送信するデータ量を削減しつつ、上記の実施形態と同様の効果を得ることができる。
また、送信装置から受信装置へ送信するデータ量を削減しつつ、受信装置の選択可能なコンテンツの数を増加させるために、本発明は、上記の実施形態におけるコンテンツ鍵送受信処理を、送信装置と受信装置とにおいて複数回繰り返して行うように構成してもよい。例えば、送信装置が複製するコンテンツの数、及び生成するコンテンツ鍵の数がn=4であった場合、受信装置が選択可能なコンテンツの数は4個である。この処理に加え、送信装置と受信装置とにおけるコンテンツ鍵送受信処理を、例えば3回繰り返して行うことにより、受信装置が選択可能なコンテンツの数は、64個に増加する。
(3)上記の実施形態では、1台の送信装置と1台の受信装置との間でコンテンツを送受信する構成を有しているが、本発明は、このようなピアツーピアのコンテンツ送受信に限定されず、1台のサーバ装置から、複数台のクライアント装置へ、コンテンツを送受信する構成であってもよい。
(4)上記の実施形態では、コンテンツの具体例として、映像データ及び音声データが多重化された動画像データを用いているが、本発明におけるコンテンツは、様々なデジタルデータを含む概念である。
本発明におけるコンテンツは、例えば、動画、静止画、写真、音楽、ゲーム、コンピュータプログラム、電子地図、電子カルテ、Word、PowerPoint、PDF(Portable Document Format)等で作成された文書及び画像、テキストデータ等でもあってもよい。なお、テキストデータに電子透かしを埋め込む技術は、既に公知となっている。
まは、本発明におけるコンテンツは、送信装置が外部の放送局装置から取得するコンテンツに限定されず、送信装置が予め保持していてもよい。即ち、本発明におけるコンテンツは、個人が所有する写真や映像などのプライベートコンテンツも含む概念である。
また、本発明がサーバ−クライアントシステムで構成される場合には、本発明におけるコンテンツは、掲示板、SNS(Social Networking Service)等であってもよい。
(5)上記の実施形態では、送信装置と受信装置とは、ケーブルという通信路を用いてコンテンツを送受信しているが、本発明において、コンテンツが通信路を介して送受信される構成は必須ではない。コンテンツは、通信路を用いずに、DVD−RAMや、SDカード等の記録媒体を用いて送受信される構成でもよい。
また、上記の実施形態では、送信装置及び受信装置の具体例として、据置型の機器を用いているが、本発明において、送信装置及び受信装置は、据置型の機器に限定されず、例えば、持ち運びが可能なポータブル機器でもよいし、コンピュータ上のソフトウェアでもよい。
(6)上記の実施形態では、コンテンツが複数の著作権保護システムに跨って流通する構成を有する。
具体的には、日本地上デジタル放送を放送する放送局装置は、放送向けの著作権保護規格であるB−CAS(BS−Conditional Access System)方式で保護された形でコンテンツを送信し、正規のテレビ受像機である送信装置は、B−CAS方式で保護されたコンテンツを解除し、ディスプレイに表示する。
送信装置は、コンテンツを受信装置へ送信する場合、B−CAS方式で保護されたコンテンツを解除し、IEEE1394の著作権保護規格であるDTCP(Digital Transmission Content Protection)形式で再度保護する。その後、送信装置は、IEEE1394規格ケーブル(ケーブル60)用いて、コンテンツを受信装置へ送信する。
コンテンツを受信した受信装置は、受信したコンテンツをDVD−RAMメディアに記録する場合には、DTCP形式で保護されたコンテンツを解除し、DVD−RAM上の著作権保護規格であるCPRM(Content Protection for Recordable Media)形式で再度保護する。その後、受信装置は、コンテンツをDVD−RAMメディアに記録する。
ここで、B−CAS形式、DTCP形式、及びCPRM形式は、それぞれ運営団体が異なる著作権保護規格である。従って、このようなシステムにいて不正コピーされたコンテンツが発見された場合には、先ず、どのコンテンツ保護規格が不正なユーザに解析されたのか把握しなければならない。
上記の実施形態では、海賊版コンテンツを作成した装置を特定することが出来るように、コンテンツに受信装置の装置識別子、及び送信装置の装置識別子を電子透かしとして埋め込む構成を有しているが、本発明は、不正なユーザにより解析されたコンテンツ保護規格を特定するために、装置識別子に代えて、受信装置が属するシステムを識別する情報である受信装置システム識別子、及び、送信装置が属するシステムを識別する情報である送信装置システム識別子をコンテンツに埋め込むように構成してもよい。ここで、システム識別子は、予め1個のシステムに1個の識別子が割り当てられているものとする。例えば、テレビ受像機システムに対しては「01」が割り当てられ、DVDレコーダシステムに対しては「02」が割り当てられており、送信装置は、n個の第一コンテンツデータに、送信装置システム識別子01と、受信装置システム識別子02とを電子透かしとして埋め込む。
(7)また、本発明は、上記の実施形態のようにコンテンツが複数の著作権保護システムに跨って流通する構成に限定されないのは、勿論である。
本発明は、送信装置と受信装置とが同一の著作権保護システムを用いて、コンテンツを送受信する場合も含まれる。
(8)上記の実施形態では、受信装置と送信装置という2つの端末装置間でコンテンツを転送するシステムを用いて、本発明を説明していたが、本発明は、これに限るものではない。例えば、端末装置が3台以上(例えば、端末装置A、端末装置B、端末装置C)存在し、端末装置Aから端末装置Bへコンテンツが転送され、その後、同じコンテンツが端末装置Bから端末装置Cへ転送されてもよい。
(9)また、本発明における電子透かし埋込処理は、以下に示す方法を用いてもよい。
放送媒体、記録媒体などの各メディアシステムが、それぞれに異なる電子透かし埋め込みパラメータを保持しており、各メディアシステムに所属する装置が、電子透かし埋め込みパラメータを用いて、電子透かしを埋め込むように構成してもよい。そして、各メディアシステムが保持するパラメータは、他のメディアシステムには秘密にするように構成してもよい。ここで、前記パラメータは、例えば、コンテンツのどの部分に電子透かしを埋め込むのかを示す情報、どの周波数体に埋め込むのかを示す情報、どういうアルゴリズムで埋め込むのかを示す情報などである。
これにより、海賊版コンテンツが流出した場合には、海賊版コンテンツに埋め込まれている電子透かしが、どのメディアシステムに属する装置が埋め込んだのかを特定出来るようになる。
(10)本発明における電子透かし埋込処理は、非対称電子透かしアルゴリズムを用いても良い。
ここで、非対象電子透かしとは、ある秘密情報を知らなければ、電子透かしを埋め込むことは出来ないが、その秘密情報に対応する公開情報を知っている全ての者が、埋め込まれた電子透かしを抽出することが出来るアルゴリズムである。
非対称電子透かしを用いると、海賊版コンテンツが流出した場合には、海賊版コンテンツに埋め込まれている電子透かしが、どのメディアシステムにより埋め込まれたのかを判断することにより、流出元を特定することができる。
(11)本発明において、コンテンツに埋め込む電子透かし(ウォーターマーク)は、上記の実施形態に記載したデータに限定されない。
例えば、実施形態で埋め込むと記載したデータとIDとを予め対応付けておき、コンテンツにIDを埋め込むように構成してもよい。即ち、コンテンツに埋め込む電子透かしは、コンテンツ漏洩時に、コンテンツ流出特定装置において追跡できる形になっていればよい。
(12)また、本発明において、コンテンツに埋め込む電子透かしは、上記の実施形態に記載したデータそのものでなく、その一部分であってもよい。
例えば、実施形態に記載したデータの下位10ビットを埋め込むように構成してもよい。この場合、異なるデータから、同じ電子透かしが埋め込まれる可能性があるため、1回の流出元特定処理で、海賊版コンテンツの流出元を特定することは出来なくなる可能性がある。しかし、流出元特定処理を複数回繰り返すことにより、絞り込んでいくことが可能であり、最終的には流出元装置を一意に特定することは可能である。このように構成することのメリットは、(a)ある第三者が、そのコンテンツの電子透かしを抽出しても、データ全体を把握することはできないので、プライバシを保護することができる点。(b)電子透かし技術に制限(例えば、数十ビット程度しか埋め込めない)がある場合であっても、上記の実施形態と同様の効果が実現できる点である。
(13)また、本発明において、コンテンツに埋め込む電子透かしは、サーバや装置の公開鍵(もしくは共通鍵暗号系の共有鍵)で暗号化して埋め込むようにしてもよい。このように構成することにより、ある第三者が、そのコンテンツの電子透かしを抽出した場合であっても、当該第三者は、電子透かしから、埋め込んだ元データを把握することは出来ず、受信装置が選択した情報を判断することが出来ない。これにより、より安全なコンテンツ流通を実現することが可能となる。更に、公開鍵暗号方式として、乱数を用いる確率暗号(例えばElGamal暗号)を使えば、同じメッセージであっても毎回異なる暗号文が出力されるので、より高い安全性を実現することができる。
(14)また、本発明においては、コンテンツに埋め込む電子透かしとして、送信装置及び/又は受信装置を識別する情報(著作権保護方式IDや端末ID)を含めても良い。また、コンテンツのヘッダ部やフッタ部に、それらの情報を追加するようにしてもよい。これにより、コンテンツ流出元装置における流出元装置の追跡がより容易になる。
(15)また、本発明は、受信装置が、さらに別の受信装置へコンテンツを送信するシステムであってもよい。
この場合、同じコンテンツに、複数の電子透かしを埋め込むことにより、上記の実施形態と同様に海賊版コンテンツの流出元装置を追跡できるようになる。
更に、この場合、下記のような工夫を加えてもよい。
(a)コンテンツに、世代数やコピー数などを加えるようにしてもよい。
(b)送信装置は、電子透かしが埋め込まれていない部分を判断し、そこに電子透かしを埋め込むようにしてもよい。
(c)送信装置と受信装置とに関する情報(例えば、端末IDなど)から、例えば、一方向性関数を用いて一意に求まる場所に電子透かしを埋め込んでもよい。
(d)コンテンツの先頭(A)から順番に、電子透かしを埋め込んでもよい。
(e)各受信装置は、それぞれ異なる電子透かし埋め込み手法を用いてもよい。もしくは、各受信装置は、異なる電子透かし埋め込みパラメータ(周波数帯域とか)を用いてもよい。
(f)上記の(a)から(e)を組み合わせでもよい。例えば、同一のコンテンツ保護方式内は、コンテンツの先頭から順番に(A、B、C、…)電子透かしを埋め込み、異なるコンテンツ保護方式間は、異なる電子透かし埋め込み方式を用いてもよい。
(16)本発明は、受信装置へコンテンツを送信する送信装置であって、複数個のコンテンツ鍵に第一演算を施して生成された複数個の第一演算化コンテンツ鍵を、前記受信装置へ送信する候補鍵送信手段と、前記受信装置により選択された1個の第一演算化コンテンツ鍵に、第二演算を施して生成された第二演算化コンテンツ鍵を、前記受信装置から取得する選択鍵取得手段と、前記第二演算化コンテンツ鍵に、前記第一演算の逆変換である第三演算を施して、証拠情報を生成する証拠情報生成手段と、同一内容の複数個のコンテンツのそれぞれに、前記証拠情報と当該コンテンツに対応するコンテンツ鍵のハッシュ値とを電子透かしとして埋め込む証拠埋込手段と、前記証拠情報と前記ハッシュ値とが埋め込まれた複数個のコンテンツのそれぞれを、対応するコンテンツ鍵を用いて暗号化し、複数個の暗号化コンテンツを生成する暗号化手段と、前記証拠情報及び前記複数個の暗号化コンテンツを、前記受信装置へ送信するコンテンツ送信手段とを備えることを特徴とする。
また、本発明は、受信装置へコンテンツを送信する送信装置であって、複数個の候補情報を、前記受信装置へ送信する候補情報送信手段と、前記受信装置により選択された1の候補情報と、前記受信装置により生成された復号コンテンツ鍵とに、第一演算が施されて生成された選択情報を、前記受信装置から取得する選択情報取得手段と、前記選択情報を複数個に複製する複製手段と、前記複数個の選択情報に、前記第一演算の逆変換である第二演算を施すことにより、複数個のコンテンツ鍵を生成するコンテンツ鍵生成手段と、同一内容の複数個のコンテンツのそれぞれに、前記選択情報と当該コンテンツに対応するコンテンツ鍵のハッシュ値とを電子透かしとして埋め込む証拠埋込手段と、前記選択情報と前記ハッシュ値とが埋め込まれた複数個のコンテンツのそれぞれを、対応するコンテンツ鍵を用いて暗号化し、暗号化コンテンツを生成する暗号化手段と、前記複数個の暗号化コンテンツを、前記受信装置へ送信するコンテンツ送信手段とを備えることを特徴とする。
また、本発明は、送信装置からコンテンツを取得する受信装置であって、前記送信装置から、複数個のコンテンツ鍵が暗号化されて生成された複数個の暗号化コンテンツ鍵を受信する候補鍵受信手段と、前記複数個の暗号化コンテンツ鍵から1個を選択する鍵選択手段と、選択された前記暗号化コンテンツ鍵に、第一演算を施すことにより、第一演算化コンテンツ鍵を生成する選択鍵変換手段と、前記第一演算化コンテンツ鍵を、前記送信装置へ送信する選択鍵送信手段と、前記送信装置から、前記第一演算化コンテンツ鍵に、第二演算を施して生成された第二演算化コンテンツ鍵を受信するコンテンツ鍵受信手段と、前記第二演算化コンテンツ鍵に、前記第一演算の逆変換である第三演算を施すことにより、復号コンテンツ鍵を取得する復号コンテンツ鍵取得手段と、前記送信装置から、前記複数個のコンテンツ鍵に基づき暗号化された複数個の暗号化コンテンツを受信するコンテンツ受信手段と、前記復号コンテンツ鍵に基づき、前記複数個の暗号化コンテンツの内の1個を取得する復号手段とを備えることを特徴とする。
また、本発明は、送信装置からコンテンツを取得する受信装置であって、前記送信装置から、複数個の候補情報を受信する候補情報受信手段と、前記複数個の候補情報から、1の候補情報を選択する選択手段と、1の復号コンテンツ鍵を生成する復号コンテンツ鍵生成手段と、前記選択手段により選択された1の候補情報及び前記復号コンテンツ鍵に、第一演算を施すことにより、選択情報を生成する選択情報生成手段と、前記選択情報を、前記送信装置に送信する選択情報送信手段と、前記送信装置から、前記複数個の候補情報及び前記選択情報に、前記第一演算の逆変換である第二演算を施すことにより生成された複数個のコンテンツ鍵に基づき暗号化された複数個の暗号化コンテンツを受信するコンテンツ受信手段と、前記複数個の暗号化コンテンツの内の1個を、前記復号コンテンツ鍵に基づき復号し、1個のコンテンツを取得する復号手段とを備えることを特徴とする。
(17)本発明は、上記に示す方法であるとしてもよい。また、これらの方法をコンピュータにより実現するコンピュータプログラムであるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号をコンピュータ読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu−ray Disc)、半導体メモリなどに記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。
また、本発明は、前記コンピュータプログラムまたは前記デジタル信号を、電気通信回線、無線または有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。
また、本発明は、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記憶しており、前記マイクロプロセッサは、前記コンピュータプログラムにしたがって動作するとしてもよい。
また、前記プログラムまたは前記デジタル信号を前記記録媒体に記録して移送することにより、または前記プログラムまたは前記デジタル信号を前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。
(18)本発明の各装置を構成する構成要素の一部または全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAMなどを含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記憶されている。前記マイクロプロセッサが、前記コンピュータプログラムにしたがって動作することにより、システムLSIは、その機能を達成する。また、集積回路化の手法はLSIに限るものではなく、専用回路で実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)やLSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。
更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用などが可能性として有り得る。
(19)本発明の各装置を構成する構成要素の一部または全部は、各装置に脱着可能なICカードまたは単体のモジュールから構成されているとしてもよい。前記ICカードまたは前記モジュールは、マイクロプロセッサ、ROM、RAMなどから構成されるコンピュータシステムである。前記ICカードまたは前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムにしたがって動作することにより、前記ICカードまたは前記モジュールは、その機能を達成する。このICカードまたはこのモジュールは、耐タンパ性を有するとしてもよい。
(20)上記実施の形態及び上記変形例をそれぞれ組み合わせるとしてもよい。
本発明は、映画や音楽などの著作物であるデジタルデータを配信する産業において、著作権侵害行為を防止する技術として特に有用である。
コンテンツ配信システム1の構成を示すシステム構成図である。 送信装置10の構成を示すブロック図である。 コンテンツ鍵保持部103が保持している情報を示す図である。 公開鍵保持部104が保持している情報を示す図である。 証拠保持部108が保持している情報を示す図である。 第一コンテンツデータ保持部109が保持している情報を示す図である。 装置識別子保持部114が保持している情報を示す図である。 送信装置10から受信装置20へ送信される暗号化コンテンツ鍵を示す図である。 送信装置10から受信装置20へ送信される暗号化第一コンテンツを示す図である。 受信装置20の構成を示すブロック図である。 公開鍵保持部201が保持している情報を示す図である。 復号コンテンツ鍵保持部202が保持している情報を示す図である。 選択情報保持部205が保持している情報を示す図である。 第二コンテンツデータ保持部208が保持している情報を示す図である。 装置識別子保持部210が保持している情報を示す図である。 コンテンツ流出元特定装置30の構成を示すブロック図である。 追跡コンテンツデータ保持部306が保持している情報を示す図である。 暗号鍵保持部308が保持している情報を示す図である。 コンテンツ配信システム1の動作を示すフローチャートである。 第1の実施形態におけるコンテンツ送受信処理の動作を示すフローチャートであり、図21へ続く。 第1の実施形態におけるコンテンツ送受信処理の動作を示すフローチャートであり、図22へ続く。 第1の実施形態におけるコンテンツ送受信処理の動作を示すフローチャートである。 第1の実施形態におけるコンテンツ流出元特定処理の動作を示すフローチャートであり、図24へ続く。 第1の実施形態におけるコンテンツ流出元特定処理の動作を示すフローチャートである。 第2の実施形態におけるコンテンツ送受信処理の動作の一部を示すフローチャートであり、図26へ続く。 第2の実施形態におけるコンテンツ送受信処理の動作の一部を示すフローチャートである。 第2の実施形態におけるコンテンツ流出元特定処理の動作の一部を示すフローチャートであり、図28へ続く。 第2の実施形態におけるコンテンツ流出元特定処理の動作の一部を示すフローチャートである。 第3の実施形態におけるコンテンツ送受信処理の動作の一部を示すフローチャートであり、図30へ続く。 第3の実施形態におけるコンテンツ送受信処理の動作の一部を示すフローチャートである。 第4の実施形態におけるコンテンツ送受信処理の一部を示すフローチャートであり、図32へ続く。 第4の実施形態におけるコンテンツ送受信処理の一部を示すフローチャートであり、図33へ続く。 第4の実施形態におけるコンテンツ送受信処理の一部を示すフローチャートである。
符号の説明
1 コンテンツ配信システム
10 送信装置
20 受信装置
30 コンテンツ流出元特定装置
40 記録媒体
50 放送局装置
60 ケーブル
101 コンテンツ鍵生成部
102 コンテンツ鍵識別子生成部
103 コンテンツ鍵保持部
104 公開鍵保持部
105 第一送信制御部
106 第二送信制御部
107 証拠取得部
108 証拠保持部
109 第一コンテンツデータ保持部
110 コンテンツ複製部
111 装置識別子埋込部
112 ハッシュ埋込部
113 証拠埋込部
114 装置識別子保持部
115 転送先装置識別子取得部
116 暗号処理部
117 入力部
118 送受信部
119 第三送信制御部
201 公開鍵保持部
202 復号コンテンツ鍵保持部
203 第一受信制御部
204 第二受信制御部
205 選択情報保持部
206 コンテンツ鍵選択部
207 暗号化コンテンツ選択部
208 第二コンテンツデータ保持部
209 装置識別子出力部
210 装置識別子保持部
211 送受信部
212 暗号処理部
213 第三受信制御部
301 情報抽出部
302 証拠検証部
303 流出元判定部
304 流出元出力部
305 コンテンツデータ入力部
306 追跡コンテンツデータ保持部
307 暗号処理部
308 暗号鍵保持部

Claims (18)

  1. コンテンツを受信装置へ送信する送信装置であって、
    1個のコンテンツからその全部又は一部を抽出して追跡情報を生成し、生成した追跡情報を複数個複製する複製手段と、
    複数個の追跡情報のそれぞれに対応した複数個の候補情報を取得する候補情報取得手段と、
    前記複数個の候補情報のうちから受信装置により選択された1個の候補情報に依存して生成された証拠情報を取得する証拠情報取得手段と、
    前記複数個の候補情報のそれぞれに基づいて、複数個のハッシュ値を生成するハッシュ生成手段と、
    各追跡情報に、当該追跡情報に対応する候補情報に基づいて生成された前記ハッシュ値を埋め込み、各追跡情報に、前記証拠情報を埋め込む埋込手段と、
    ハッシュ値と証拠情報とが埋め込まれた各追跡情報を送信する送信手段と
    を備えることを特徴とする送信装置。
  2. 前記コンテンツは、動画及び/又は音声から構成されるマルチメディアデータであり、
    前記埋込手段は、前記追跡情報に対して、電子透かし技術を用いて、前記ハッシュ値及び前記証拠情報を埋め込む
    ことを特徴とする請求項1に記載の送信装置。
  3. 前記送信装置は、さらに、
    前記追跡情報を秘匿通信処理するために用いる複数個のコンテンツ鍵データを生成するコンテンツ鍵生成手段を備え、
    前記複数個の候補情報のそれぞれは、前記コンテンツ鍵データのそれぞれに基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  4. 前記送信装置は、さらに、
    前記追跡情報を暗号処理するために用いる複数個のコンテンツ鍵データと、前記複数個のコンテンツ鍵データのそれぞれを識別する複数個のコンテンツ鍵データ識別子とを生成するコンテンツ鍵生成手段を備え、
    前記複数個の候補情報のそれぞれは、前記コンテンツ鍵データ識別子のそれぞれに基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  5. 前記送信装置は、さらに、
    当該送信装置に対応付けられている公開鍵データと秘密鍵データとを保持しており、
    前記複数個の候補情報のそれぞれは、前記公開鍵データに基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  6. 前記送信装置は、さらに、
    前記追跡情報を秘匿通信処理するために用いる複数個の乱数データを生成する乱数生成手段を備え、
    前記複数個の候補情報のそれぞれは、前記乱数データのそれぞれに基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  7. 前記送信装置は、さらに、
    当該送信装置に対応付けられている複数個の公開鍵データ及び秘密鍵データを保持しており、
    前記複数個の候補情報のそれぞれは、前記複数個の公開鍵データに基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  8. 前記送信装置は、さらに、
    当該送信装置に対応付けられている複数個の公開鍵データ、秘密鍵データ、及び公開鍵識別子を保持しており、
    前記複数個の候補情報のそれぞれは、前記複数個の公開鍵識別子に基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  9. 前記証拠情報は、前記受信装置に対応付けられている公開鍵暗号の公開鍵データに基づき生成される
    ことを特徴とする請求項2に記載の送信装置。
  10. 前記証拠情報は、前記受信装置に対応付けられている公開鍵暗号の秘密鍵データに基づき生成された電子署名データを含む
    ことを特徴とする請求項2に記載の送信装置。
  11. 送信装置からコンテンツを受信する受信装置であって、
    1個のコンテンツの全部又は一部が複製されて生成された複数個の追跡情報のそれぞれに対応する複数個の候補情報のうちから、1個の候補情報を選択する選択手段と、
    選択した前記候補情報に基づき、証拠情報を生成する生成手段と、
    前記証拠情報を前記送信装置へ送信する送信手段と、
    前記送信装置から、選択した前記候補情報に対応する追跡情報を取得する取得手段と
    を備えることを特徴とする受信装置。
  12. 送信装置から受信装置へコンテンツを転送するコンテンツ配信システムであって、
    前記送信装置は、
    1個のコンテンツからその全部又は一部を抽出して追跡情報を生成し、生成した追跡情報を複数個複製する複製手段と、
    複数個の追跡情報のそれぞれに対応した複数個の候補情報を取得する候補情報取得手段と、
    前記複数個の候補情報のうちから受信装置により選択された1個の候補情報に依存して生成された証拠情報を取得する証拠情報取得手段と、
    前記複数個の候補情報のそれぞれに基づいて、複数個のハッシュ値を生成するハッシュ生成手段と、
    各追跡情報に、当該追跡情報に対応する候補情報に基づいて生成された前記ハッシュ値を埋め込み、各追跡情報に、前記証拠情報を埋め込む埋込手段と、
    ハッシュ値と証拠情報とが埋め込まれた各追跡情報を送信する送信手段とを備え、
    前記受信装置は、
    前記複数個の追跡情報のそれぞれに対応する複数個の候補情報のうちから、1個の候補情報を選択する選択手段と、
    選択した前記候補情報に基づき、証拠情報を生成する生成手段と、
    前記証拠情報を前記送信装置へ送信する送信手段と、
    前記送信装置から、選択した前記候補情報に対応する追跡情報を取得する取得手段とを備える
    ことを特徴とするコンテンツ配信システム。
  13. 複製手段、候補情報取得手段、証拠情報取得手段、ハッシュ生成手段、埋込手段および送信手段を備え、コンテンツを受信装置へ送信する送信装置で用いられるコンテンツ送信方法であって、
    前記送信装置の前記複製手段が、1個のコンテンツからその全部又は一部を抽出して追跡情報を生成し、生成した追跡情報を複数個複製する複製ステップと、
    前記送信装置の前記候補情報取得手段が、複数個の追跡情報のそれぞれに対応した複数個の候補情報を取得する候補情報取得ステップと、
    前記送信装置の前記証拠情報取得手段が、前記複数個の候補情報のうちから受信装置により選択された1個の候補情報に依存して生成された証拠情報を取得する証拠情報取得ステップと、
    前記送信装置の前記ハッシュ生成手段が、前記複数個の候補情報のそれぞれに基づいて、複数個のハッシュ値を生成するハッシュ生成ステップと、
    前記送信装置の前記埋込手段が、各追跡情報に、当該追跡情報に対応する候補情報に基づいて生成された前記ハッシュ値を埋め込み、各追跡情報に、前記証拠情報を埋め込む埋込ステップと、
    前記送信装置の前記送信手段が、ハッシュ値と証拠情報とが埋め込まれた各追跡情報を送信する送信ステップと
    を含むことを特徴とするコンテンツ送信方法。
  14. 複製手段、候補情報取得手段、証拠情報取得手段、ハッシュ生成手段、埋込手段および送信手段を備え、コンテンツを受信装置へ送信する送信装置で用いられるコンピュータプログラムを記録しているコンピュータ読み取り可能な記録媒体であって、
    前記コンピュータプログラムは、
    前記送信装置の前記複製手段に、1個のコンテンツからその全部又は一部を抽出して追跡情報を生成し、生成した追跡情報を複数個複製する複製ステップを実行させ
    前記送信装置の前記候補情報取得手段に、複数個の追跡情報のそれぞれに対応した複数個の候補情報を取得する候補情報取得ステップを実行させ
    前記送信装置の前記証拠情報取得手段に、前記複数個の候補情報のうちから受信装置により選択された1個の候補情報に依存して生成された証拠情報を取得する証拠情報取得ステップを実行させ
    前記送信装置の前記ハッシュ生成手段に、前記複数個の候補情報のそれぞれに基づいて、複数個のハッシュ値を生成するハッシュ生成ステップを実行させ
    前記送信装置の前記埋込手段に、各追跡情報に、当該追跡情報に対応する候補情報に基づいて生成された前記ハッシュ値を埋め込み、各追跡情報に、前記証拠情報を埋め込む埋込ステップを実行させ
    前記送信装置の前記送信手段に、ハッシュ値と証拠情報とが埋め込まれた各追跡情報を送信する送信ステップを実行させる
    ことを特徴とする記録媒体。
  15. コンテンツを受信装置へ送信する送信装置で用いられる集積回路であって、
    1個のコンテンツからその全部又は一部を抽出して追跡情報を生成し、生成した追跡情報を複数個複製する複製手段と、
    複数個の追跡情報のそれぞれに対応した複数個の候補情報を取得する候補情報取得手段と、
    前記複数個の候補情報のうちから受信装置により選択された1個の候補情報に依存して生成された証拠情報を取得する証拠情報取得手段と、
    前記複数個の候補情報のそれぞれに基づいて、複数個のハッシュ値を生成するハッシュ生成手段と、
    各追跡情報に、当該追跡情報に対応する候補情報に基づいて生成された前記ハッシュ値を埋め込み、各追跡情報に、前記証拠情報を埋め込む埋込手段と、
    ハッシュ値と証拠情報とが埋め込まれた各追跡情報を送信する送信手段と
    を備えることを特徴とする集積回路。
  16. 選択手段、生成手段、送信手段および取得手段を備え、送信装置からコンテンツを受信する受信装置で用いられるコンテンツ受信方法であって、
    前記受信装置の前記選択手段が、1個のコンテンツの全部又は一部が複製されて生成された複数個の追跡情報のそれぞれに対応する複数個の候補情報のうちから、1個の候補情報を選択する選択ステップと、
    前記受信装置の前記生成手段が、選択した前記候補情報に基づき、証拠情報を生成する生成ステップと、
    前記受信装置の前記送信手段が、前記証拠情報を前記送信装置へ送信する送信ステップと、
    前記受信装置の前記取得手段が、前記送信装置から、選択した前記候補情報に対応する追跡情報を取得する取得ステップと
    を含むことを特徴とするコンテンツ受信方法。
  17. 選択手段、生成手段、送信手段および取得手段を備え、送信装置からコンテンツを受信する受信装置で用いられるコンピュータプログラムを記録しているコンピュータ読み取り可能な記録媒体であって、
    前記コンピュータプログラムは、
    前記受信装置の前記選択手段に、1個のコンテンツの全部又は一部が複製されて生成された複数個の追跡情報のそれぞれに対応する複数個の候補情報のうちから、1個の候補情報を選択する選択ステップを実行させ
    前記受信装置の前記生成手段に、選択した前記候補情報に基づき、証拠情報を生成する生成ステップを実行させ
    前記受信装置の前記送信手段に、前記証拠情報を前記送信装置へ送信する送信ステップを実行させ
    前記受信装置の前記取得手段に、前記送信装置から、選択した前記候補情報に対応する追跡情報を取得する取得ステップを実行させる
    ことを特徴とする記録媒体。
  18. 送信装置からコンテンツを受信する受信装置で用いられる集積回路であって、
    1個のコンテンツの全部又は一部が複製されて生成された複数個の追跡情報のそれぞれに対応する複数個の候補情報のうちから、1個の候補情報を選択する選択手段と、
    選択した前記候補情報に基づき、証拠情報を生成する生成手段と、
    前記証拠情報を前記送信装置へ送信する送信手段と、
    前記送信装置から、選択した前記候補情報に対応する追跡情報を取得する取得手段と
    を備えることを特徴とする集積回路。
JP2007118387A 2006-04-27 2007-04-27 コンテンツ配信システム Active JP4989293B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007118387A JP4989293B2 (ja) 2006-04-27 2007-04-27 コンテンツ配信システム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2006123619 2006-04-27
JP2006123619 2006-04-27
JP2007118387A JP4989293B2 (ja) 2006-04-27 2007-04-27 コンテンツ配信システム

Publications (3)

Publication Number Publication Date
JP2007317175A JP2007317175A (ja) 2007-12-06
JP2007317175A5 JP2007317175A5 (ja) 2008-01-24
JP4989293B2 true JP4989293B2 (ja) 2012-08-01

Family

ID=38850945

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007118387A Active JP4989293B2 (ja) 2006-04-27 2007-04-27 コンテンツ配信システム

Country Status (1)

Country Link
JP (1) JP4989293B2 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010018929A2 (ko) 2008-08-14 2010-02-18 에스케이 텔레콤주식회사 가청주파수 대역에서의 데이터 송수신 시스템 및 방법
JP6107037B2 (ja) * 2012-10-01 2017-04-05 富士通株式会社 画像処理装置、方法、及びプログラム
EP2930880A4 (en) * 2012-12-05 2016-08-03 Sony Corp INFORMATION PROCESSOR, VERIFICATION PROCESSOR, INFORMATION PROCESSING METHOD, VERIFICATION PROCESSING METHOD, AND PROGRAM
JP6439010B1 (ja) * 2017-06-22 2018-12-19 株式会社 アイ・ピー・エル 動画視聴システム
JP7324648B2 (ja) 2019-08-05 2023-08-10 尚久 矢作 データ監視装置、データ監視プログラム、及びコンピュータ読取可能な記録媒体

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1166010A (ja) * 1997-08-20 1999-03-09 Canon Inc 電子透かし方式、電子情報配布システムおよび画像ファイル装置
JP2003348081A (ja) * 2002-05-30 2003-12-05 Hideki Imai デジタル署名方法およびシステム
JP2004318448A (ja) * 2003-04-16 2004-11-11 Hitachi Ltd コンテンツ保護機能付き端末装置

Also Published As

Publication number Publication date
JP2007317175A (ja) 2007-12-06

Similar Documents

Publication Publication Date Title
US8972300B2 (en) Content distribution system
JP5869580B2 (ja) 端末装置、検証装置、鍵配信装置、コンテンツ再生方法、鍵配信方法及びコンピュータプログラム
JP6017501B2 (ja) 暗号システム
US8601590B2 (en) Content distribution system
JP5154830B2 (ja) コンテンツ配信システム
KR20060020688A (ko) 개선된 안전 인증 채널
WO2004051920A1 (ja) 鍵共有システム、共有鍵生成装置及び共有鍵復元装置
JP4989293B2 (ja) コンテンツ配信システム
KR20140148295A (ko) 브로드캐스트 암호화 방법 및 시스템
JP4561074B2 (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
KR101360354B1 (ko) 인증 방법 및 그 장치
JP7325689B2 (ja) 暗号文変換システム、変換鍵生成方法、及び、変換鍵生成プログラム
WO2012153485A1 (ja) 端末装置、コンテンツ記録システム、タイトル鍵記録方法及びコンピュータプログラム
JP2007189597A (ja) 暗号化装置および暗号化方法、並びに復号化装置および復号化方法
Chhillar Data hiding using advanced LSB with RSA algorithm
JP2001211159A (ja) コンテンツ情報復号化方法、コンテンツ情報復号化装置
JP4576824B2 (ja) 情報処理装置および情報処理方法
JP6949276B2 (ja) 再暗号化装置、再暗号化方法、再暗号化プログラム及び暗号システム
JP5436257B2 (ja) 配信システム及び配信・受信方法及び配信装置及び受信装置及び配信プログラム及び受信プログラム
JPWO2006006233A1 (ja) コンテンツ記録装置及びデータ配信システム
JP2004201292A (ja) 鍵共有システム、共有鍵生成装置及び共有鍵復元装置
JP2007020025A (ja) 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
Khalfallah et al. Watermarking for the Secure Transmission of the Key into an Encrypted Image
Maheswari et al. A survey: Video steganography and security forbidden zone and selective embedding
Hassan StegoCrypt: Geometric and Rudin–Shapiro Sequence–Based Bit–Cycling and AES

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071106

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100304

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111208

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111220

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120131

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120315

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120427

R150 Certificate of patent or registration of utility model

Ref document number: 4989293

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150511

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250