放送型データストリーム保護システム、方法及びユーザ端末特定プログラム
【課題】放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる放送型データストリーム保護システムを提供する。
【解決手段】データ分割手段81は、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定する。署名手段82は、ブロックデータごとの鍵情報を用いてメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する。メッセージ認証子抽出手段93は、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出する。結合メッセージ認証子生成手段94は、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する。
【解決手段】データ分割手段81は、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定する。署名手段82は、ブロックデータごとの鍵情報を用いてメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する。メッセージ認証子抽出手段93は、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出する。結合メッセージ認証子生成手段94は、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、クライアント数が大規模なサーバクライアント型ネットワークにおいて、放送されるダウンストリームの二次利用を抑止する放送型データストリーム保護システム、配信サーバ、ユーザ端末、放送型データストリーム保護方法、ユーザ端末特定方法、受信データ再構築方法、ユーザ端末特定プログラム、および、受信データ再構築プログラムに関する。
【背景技術】
【0002】
大規模なサーバクライアント型ネットワークにおけるダウンストリームを活用したサービスとして、例えば、IP放送サービスが存在する。一般的なIP放送サービスでは、受信したデータストリームの二次流通については管理していない。一方で、私的利用の範囲内であっても、データストリームの複製については制限されていることが多い。
【0003】
一方、コンテンツに電子透かしを埋め込み、著作権管理を行うシステムの一例が、特許文献1や特許文献2に記載されている。特許文献1に記載されたアクセス制御方法では、電子透かし技術を用いて各信号に埋め込まれた認可コードに基づいて、実行可能な操作が決定される。また、特許文献2に記載されたコンテンツ保護システムでは、コンテンツに電子透かし著作権保護情報が埋め込まれ、予め保持しているコードと、電子透かし著作権保護情報に埋め込まれたコードとが異なる場合に、ディジタル出力(アナログ出力)を停止させる。
【0004】
なお、電子透かしについては、非特許文献1に記載されている。非特許文献1によれば、電子透かしは、不可視の状態でコンテンツに埋め込むことが可能であり、透かしを埋め込んだ者(あるいは代理の者)が必要なときに抽出可能な性質を備えている。さらに、電子透かしは、第三者による除去が困難である一方、コンテンツを加工しても抽出が可能という性質を備えている。電子透かしは、このような性質を有するため、コンテンツの著作権保護に用いられる。
【0005】
また、コンテンツに埋め込んだ電子透かしを用いてコンテンツの著作権を保護する著作権保護システムが特許文献3に記載されている。特許文献3に記載された著作権保護システムでは、まず、映像配信サーバが、映像コンテンツをn個の映像要素に分割し、映像要素ごとに異なる電子透かしを挿入した映像要素をm個作成する。映像受信クライアントは、映像配信サーバから暗号化された映像コンテンツを受信すると、取得しておいたライセンスを用いて映像要素を復号することで、映像コンテンツを視聴可能にする。一方、フィンガープリント検出装置は、調査対象の映像コンテンツを受け取ると、埋め込まれた電子透かし情報を検出してユーザIDを復元することで、不正コピー流出元を特定する。
【0006】
なお、特許文献4には、コンテンツ暗号化装置(以下、暗号化装置)及びコンテンツ復号装置(以下、復号装置)を用いた暗号化及び復号方法が記載されている。特許文献4に記載された方法では、復号装置が、暗号化装置が生成した暗号化コンテンツの集合を復号対象として、暗号化装置が生成した鍵束の1つを取得する。そして、復号装置は、取得した鍵束を構成する各暗号鍵に対応付けられる暗号化コンテンツ部分を取り出し、取り出した暗号化コンテンツ部分を、各コンテンツに対応付けられた暗号鍵で復号する。そして、復号装置は、復号したコンテンツ部分を統合することでコンテンツを復元する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特表2005−516321号公報(段落0008)
【特許文献2】特許第4038919号公報(段落0010)
【特許文献3】特開2005−51735号公報(段落0023)
【特許文献4】特開2003−78520号公報(段落0019)
【非特許文献】
【0008】
【非特許文献1】井上彰、「電子透かし マルチメディア時代の暗号システム」、光芒者、1997、pp.13-15
【発明の概要】
【発明が解決しようとする課題】
【0009】
以上のような性質を有することから、電子透かしは、データストリームの二次流通を管理する際に有効な手段である。例えば、コンテンツの受信者のID(以下、署名情報と記すこともある。)を電子透かしとして埋め込み、本署名情報を参照することで受信者を特定できるため、二次流通の抑止が可能になる。
【0010】
しかし、上記方法を用いる場合、受信者ごとに署名情報を電子透かしとして埋め込んだデータストリームを用意しなければならず、通信量が受信者数に比例して増大してしまうため、放送のメリットであるスケーラビリティが失われるという課題がある。すなわち、データストリームの受信者ごとに署名情報を埋め込む方法は、大規模なデータストリーム放送には不向きである。
【0011】
一方、特許文献3に記載された著作権保護システムを用いることで、送信するデータ量を抑えつつ、映像コンテンツを送信するユーザIDを特定できるため、送信される映像コンテンツの二次流通を抑止することは可能である。
【0012】
しかし、特許文献3に記載された著作権保護システムでは、受け取った映像コンテンツをn個の要素に分割し、分割した各要素から検出される電子透かし情報を復元することでユーザIDを特定する。そのため、映像コンテンツの受信者が複数人存在し、各受信者が受信した映像コンテンツの要素を他者のみが復号可能な要素と交換したうえで再結合した場合、その映像コンテンツから特定されるユーザIDを第3者が受信元であるように偽ることが可能になる。このように、複数人の受信者が結託して要素を入れ替えた場合、映像コンテンツを送信するユーザIDを正しく特定できないという課題がある。
【0013】
そこで、本発明は、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる放送型データストリーム保護システム、配信サーバ、ユーザ端末、放送型データストリーム保護方法、ユーザ端末特定方法、受信データ再構築方法、ユーザ端末特定プログラム、および、受信データ再構築プログラムを提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明による放送型データストリーム保護システムは、データストリームを配信する配信サーバと、配信サーバから配信されるデータストリームを受信するユーザ端末とを備え、配信サーバが、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段とを備え、ユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とする。
【0015】
本発明による配信サーバは、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段と、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定手段とを備え、ユーザ端末特定手段が、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含むことを特徴とする。
【0016】
本発明によるユーザ端末は、データストリームそれ自体又はデータストリームを分割したデータであるブロックデータをそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバからブロックデータを受信するユーザ端末であって、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とする。
【0017】
本発明による放送型データストリーム保護方法は、データストリームを配信する配信サーバが、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、配信サーバが、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、配信サーバが、生成したメッセージ認証子を各ブロックデータに付与し、配信サーバが、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化し、配信サーバから配信されるデータストリームを受信するユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、ユーザ端末が、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、ユーザ端末が、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成し、ユーザ端末が、再構築されたデータストリームに結合メッセージ認証子を付与することを特徴とする。
【0018】
本発明によるユーザ端末特定方法は、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与し、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化し、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定し、ユーザ端末を特定する際に、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定し、ブロックデータに対応する鍵情報を用いてブロックデータタごとのメッセージ認証子を生成し、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成し、結合メッセージ認証子が再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定することを特徴とする。
【0019】
本発明による受信データ再構築方法は、データストリームそれ自体又はデータストリームを分割したデータであるブロックデータをそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバからブロックデータを受信するユーザ端末が、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、ユーザ端末が、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、ユーザ端末が、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成し、ユーザ端末が、再構築されたデータストリームに結合メッセージ認証子を付与することを特徴とする。
【0020】
本発明によるユーザ端末特定プログラムは、コンピュータに、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割処理、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名処理、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化処理、および、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定処理を実行させ、ユーザ端末特定処理で、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定する再構築データ分割処理、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成処理、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合処理、および、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定処理を実行させることを特徴とする。
【0021】
本発明による受信データ再構築プログラムは、データストリームそれ自体又はデータストリームを分割したデータであるブロックデータをそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバからブロックデータを受信するコンピュータに適用される受信データ再構築プログラムであって、コンピュータに、ブロックデータごとの暗号化及び復号に用いられる情報としてコンピュータごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号処理、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築処理、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出処理、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成処理、および、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与処理を実行させることを特徴とする。
【発明の効果】
【0022】
本発明によれば、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる。
【図面の簡単な説明】
【0023】
【図1】本発明の第1の実施形態における放送型データストリーム保護システムの例を示すブロック図である。
【図2】配信サーバが用意する鍵プールの例を示す説明図である。
【図3】ユーザ端末に割り当てられる鍵情報の例を示す説明図である。
【図4】各データストリームが分割された場合の例を示す説明図である。
【図5】各データストリームのブロックにメッセージ認証子が埋め込まれて暗号化されたブロックの例を示す説明図である。
【図6】第1の実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。
【図7】受信者特定手段15が不正流通の出所を特定する処理の例を示すフローチャートである。
【図8】本発明の第2の実施形態における放送型データストリーム保護システムの例を示すブロック図である。
【図9】第2の実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。
【図10】受信者特定手段35が不正流通の出所を特定する処理の例を示すフローチャートである。
【図11】本発明による放送型データストリーム保護システムの最小構成の例を示すブロック図である。
【図12】本発明による配信サーバの最小構成の例を示すブロック図である。
【図13】本発明によるユーザ端末の最小構成の例を示すブロック図である。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態を図面を参照して説明する。
【0025】
実施形態1.
図1は、本発明の第1の実施形態における放送型データストリーム保護システムの例を示すブロック図である。本実施形態における放送型データストリーム保護システムは、配信サーバ10と、ユーザ端末20とを備えている。配信サーバ10とユーザ端末20とは、通信ネットワーク100を介して接続される。なお、通信ネットワーク100の形態は特に限定されない。
【0026】
配信サーバ10は、放送されるデータストリームを暗号化して配信する装置である。配信サーバ10は、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。
【0027】
ユーザ端末20は、配信サーバ10から配信されるデータストリームを受信する装置である。ユーザ端末20は、データストリームの再生に必要なデバイスを搭載し、少なくとも配信サーバ10から配信されるデータストリームを受信する通信部(図示せず)、及び、受信したデータストリームを処理するための制御部(図示せず)を備えた情報処理装置によって実現される。
【0028】
図1に例示する放送型データストリーム保護システムでは、ユーザ端末20を1台のみ示しているが、ユーザ端末20は1台に限られず2台以上であってもよい。2台以上の場合の各ユーザ端末20の構成は、図1に例示する構成と同様である。
【0029】
配信サーバ10は、事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段15とを備えている。
【0030】
事前鍵割当手段11は、データの暗号化及び復号に用いられる鍵情報をユーザ端末20ごとに一意になるように生成し、生成した鍵情報を各ユーザ端末20に割り当てる。以下、事前鍵割当手段11が鍵情報として生成する方法について、具体的に説明する。以下の説明では、鍵情報として、共通鍵暗号の鍵を用いるものとする。
【0031】
まず、共通鍵暗号の鍵を登録するJ個の鍵プールj(1≦j≦J)を用意し、各鍵プールに、ランダムかつ一意(ユニーク)に生成した鍵をI個登録しておく。ここで、J及びIは1以上の整数である。以下、鍵プールjのi個目の鍵をKi,jと記す。ただし、1≦i≦Iである。
【0032】
また、鍵Ki,jと、その鍵Ki,jが選択された鍵プールを特定する情報jと、鍵プールj内においてその鍵を特定する情報iとを管理するデータ構造を定義したときに、そのデータ構造に基づいてそれぞれ対応する内容を含む情報を鍵情報と記す。以下、この鍵情報を(i,j,Ki,j)と記す。ただし、この鍵情報は、i、j、及び、Ki,jの3種の情報を管理するデータ構造として定義され、それぞれに対応する情報が格納されて生成される情報であって、配信サーバ10と、ユーザ端末20との間でフォーマット(データ構造)が共有されていれば、上記フォーマット(データ構造)に限定されない。
【0033】
事前鍵割当手段11は、各鍵プールから1個ずつ鍵を選択して鍵の組合せを作成する。その際、事前鍵割当手段11は、鍵の組合せがユーザ端末ごとに一意になるように鍵を選択して鍵情報を作成する。なお、1つの鍵の組合せには、各鍵プールから1個ずつ選択された計J個の鍵が含まれることになる。そして、事前鍵割当手段11は、ユーザ端末ごとに一意に選択した鍵情報を、各ユーザ端末20に割り当てる。
【0034】
なお、鍵情報を割り当てる方法として、さまざまな方法を用いることが出来る。例えば、事前鍵割当手段11は、公開鍵暗号における公開鍵と秘密鍵のペアを生成し、ユーザ端末20に対して公開鍵を事前に公開しておいてもよい。この場合、公開鍵を用いて暗号化された乱数がユーザ端末20から配信サーバ10に対して送信されたときに、事前鍵割当手段11が、ユーザ端末20ごとに一意の共通鍵暗号の鍵(マスタ鍵)を生成する。そして、事前鍵割当手段11は、そのマスタ鍵を用いて個別に暗号化した鍵情報を、各ユーザ端末20に送信してもよい。
【0035】
他にも、システム運用前に安全なチャネルの用意が可能な場合、事前鍵割当手段11は、そのチャネルを用いてユーザ端末20それぞれに鍵情報を送信してもよい。
【0036】
図2は、I=2、J=3のときに配信サーバ10が用意する鍵プールの例を示す説明図である。また、図3は、ユーザ端末20に割り当てられる鍵情報の例を示す説明図である。I=2、J=3のとき、一意になる鍵の組合せは計8個(IのJ乗個)存在する。よって、本システムに含まれるユーザ端末20の最大数は8台になる。図3に例示するテーブルは、8台のユーザ端末それぞれに鍵情報を割り当てたものである。
【0037】
なお、どの鍵情報を、どのユーザ端末20に割り当てるか(すなわち、鍵情報を割り当てるユーザ端末20)については、配信サーバ10がランダムに割り当て先を決定すればよい。以下の説明では、配信サーバ10が、図3に例示するテーブルを管理し、このテーブルを参照することで、ユーザ端末に割り当てられた鍵情報を特定する場合について説明する。
【0038】
分割手段12は、データストリーム(又は、データストリームを含みそのデータストリームから複製されたデータストリーム群)を、所定の分割方法を用いて各データストリームごとに分割する。例えば、分割手段12は、システム運用前に、放送するデータストリームを受信者数より少ないI本のデータストリームに複製する。そして、分割手段12は、オリジナルを含む全複製データストリームを、所定の分割方法によってJ個のブロックに分割する。なお、以下の説明では、オリジナルを含む全複製データストリームを、複製データストリームと記すこともある。
【0039】
ただし、分割手段12は、データストリームを分割せず、データストリームそれ自体を分割したデータと扱ってもよい。以下、データストリームそれ自体又はデータストリームを分割したデータをまとめてブロックと記す。以下の説明で、分割手段12がデータストリームそれ自体又はデータストリームを分割したデータをブロックと決定するとは、各データストリームを分割すること、及び、データストリームを分割せずにデータストリームそれ自体を分割データとして取り扱うことを意味するものとする。
【0040】
分割手段12は、所定の分割方法として、例えば、データの周波数成分ごとに分割する方法や、時間軸方向に分割する方法を用いてもよい。また、データストリームが映像の場合(以下、映像データストリームと記す。)、分割手段12は、所定の分割方法として、映像の矩形領域ごとに分割する方法や、色成分ごとに分割する方法、解像度ごとに分割する方法などを用いてもよい。なお、分割方法は、上記方法に限られない。分割手段12は、配信サーバ10において実現可能な他の方法を用いてデータストリームを分割してもよい。
【0041】
図4は、I=2、J=3のとき、データストリームがI本に複製され、各データストリームがJ個に分割された場合の例を示す説明図である。図4に示す例では、i本目のデータストリームにおけるj個目のブロックをi−jと示す。例えば、I=2、J=3のとき、分割手段12は、データストリームを2本に複製し、個々のデータストリームを3個のブロックに分割する。
【0042】
署名手段13は、ブロックごとの暗号化及び復号に用いられる鍵情報を用いてブロックごとにメッセージ認証子(MAC:Message Authentication Code )を生成し、生成したメッセージ認証子をそれぞれのブロックに付与する。具体的には、署名手段13は、i本目の複製データストリームにおけるj個目のブロックに対し鍵Ki,jを用いてメッセージ認証子を生成する。そして、署名手段13は、生成したメッセージ認証子を電子透かしとして各ブロック(すなわち、i本目の複製データストリームにおけるj個目のブロック)に埋め込む。メッセージ認証子を用いることで、共通鍵を持つ検証者(配信サーバ10)がメッセージの内容の変化を検出できるため、メッセージの完全性とその認証を保護することができる。
【0043】
署名手段13は、例えば、以下の参考文献1に記載されているように、共通鍵暗号を用いてメッセージ認証子を生成してもよい。他にも、署名手段13は、以下の参考文献2に記載されているように、鍵付きハッシュ関数を用いてメッセージ認証子を生成してもよい。なお、メッセージ認証子の生成方法は、上記方法に限られない。署名手段13は、配信サーバ10において実現可能な他の方法を用いてメッセージ認証子を生成してもよい。
【0044】
[参考文献1]
James H.Burrows、”FIPS PUB 113 - Computer Data Authentication - the Federal Information Processing Standard publication that defines the Data Authentication Algorithm”、[online]、1985年5月、[平成21年12月9日検索]、インターネット〈 http://www.itl.nist.gov/fipspubs/fip113.htm〉
[参考文献2]
H.Krawczyk、外2名、”RFC 2104 HMAC : Keyed-Hashing for Message Authentication”、[online]、1997年2月、[平成21年12月9日検索]、インターネット〈 URL:http://tools.ietf.org/html/rfc2104〉
【0045】
暗号化手段14は、ブロックごとの鍵情報を用いて、メッセージ認証子が付与された各ブロックを暗号化する。具体的には、暗号化手段14は、メッセージ認証子を電子透かしとして埋め込んだi本目の複製データストリームにおけるj個目のブロックを鍵Ki,jを用いて暗号化する。なお、暗号化手段14が暗号化処理を完了したことで、データストリームを放送する準備が完了する。この後、暗号化手段14は、暗号化したデータストリームをユーザ端末20に対して放送する。
【0046】
図5は、I=2、J=3のとき、署名手段13が各データストリームのブロックにメッセージ認証子を埋め込んだ後、暗号化手段14によって暗号化されたブロックの例を示す説明図である。図5における「x||y」は、データ(ブロック)xに対し、電子透かしyが埋め込まれていることを意味する。また、図5における「mac(x,y)」は、データ(ブロック)xに対し、鍵yを用いて生成したメッセージ認証子を意味する。また、「E(x,y)」は、データ(ブロック)xを鍵yを用いて暗号化した結果を意味する。
【0047】
例えば、図5に例示する(i,j)=(1,1)のブロックは、ブロック1−1に対し、鍵K1,1を用いて生成したメッセージ認証子mac(1−1,K1,1)がブロック1−1に埋め込まれ、メッセージ認証子が埋め込まれたブロック1−1が鍵K1,1を用いて暗号化されたことを示す。
【0048】
受信者特定手段15は、放送したデータストリームの不正な二次流通(不正流通)が存在するか否かを判定し、他の装置に対してデータストリームを送信するユーザ端末20を特定する。なお、受信者特定手段15がユーザ端末20を特定する機能については後述する。
【0049】
事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段15とは、プログラム(ユーザ端末特定プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、配信サーバ10の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、事前鍵割当手段11、分割手段12、署名手段13、暗号化手段14及び受信者特定手段15として動作してもよい。また、事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段15とは、それぞれが専用のハードウェアで実現されていてもよい。
【0050】
ユーザ端末20は、鍵情報記憶手段21と、復号手段22と、再構築手段23とを備えている。なお、鍵情報記憶手段21、復号手段22及び再構築手段23は、上述の制御部(図示せず)に含まれていてもよい。
【0051】
鍵情報記憶手段21は、配信サーバ10の事前鍵割当手段11によって割り当てられたユーザ端末20ごとに一意になるJ個の鍵情報の組を記憶する。
【0052】
例えば、配信サーバ10の公開鍵がユーザ端末20に対して事前に公開されており、ユーザ端末20が備えるメモリ(図示せず)に、その公開鍵が記憶されているものとする。このとき、例えば、システム運用前に、ユーザ端末20の制御部(図示せず)は、乱数を生成し、生成した乱数を公開鍵で暗号化して配信サーバ10に送信する。配信サーバ10は、ユーザ端末20ごとに一意の鍵情報の組を生成し、受信した乱数をもとにその鍵情報を暗号化してユーザ端末20に返信する。制御部(図示せず)は、受信した鍵情報の組を復号したのち、耐タンパ性を備えるモジュール内に鍵情報の組を記憶する。そして、制御部(図示せず)は、そのモジュールを鍵情報記憶手段21に記憶させる。このようにして、鍵情報記憶手段21に鍵情報の組を記憶させてもよい。
【0053】
ここで、耐タンパ性を備えるモジュールとは、例えば、以下の参考文献3に記載されているように、秘密データを外部から不当に観測、改変することや、秘密データの利用制御部を不当に改変することが困難なように意図して作られたモジュールのことを言う。
【0054】
[参考文献3]
松本、井上,「耐タンパーモジュールの認証に関する考察」,Technical report of IEICE. ISEC 97(380),pp.33-44,1997
【0055】
また、システム運用前に安全なチャネルの用意が可能な場合、ユーザ端末20の制御部(図示せず)は、そのチャネルを用いて配信サーバ10から受信した鍵情報を鍵情報記憶手段21に記憶させてもよい。鍵情報記憶手段21は、例えば、ユーザ端末20が備える磁気ディスク等により実現される。
【0056】
復号手段22は、ユーザ端末20ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックを復号する。具体的には、復号手段22は、暗号化された状態で放送されるデータストリーム(以下、暗号化データストリームと記すこともある。)を、鍵情報記憶手段21が記憶するJ個の鍵情報(i,j,Ki,j)を用いて、i本目の暗号化データストリームにおけるj番目のブロックを、計J個復号する。なお、共通鍵暗号の鍵を用いて暗号化されたデータを復号する方法は広く知られているため、ここでは説明を省略する。
【0057】
再構築手段23は、鍵情報を用いて復号された各ブロックを結合してデータストリームを再構築する。具体的には、再構築手段23は、復号手段22が復号したブロック(復号結果)を所定の結合方法によって結合し、データストリームを利用可能な状態にする。このとき、所定の結合方法を、例えば、上述した所定の分割方法で分割する処理と逆方向の処理として定義してもよい。
【0058】
すなわち、再構築手段23は、所定の結合方法として、例えば、データの周波数成分ごとに結合する方法や、時間軸方向に結合する方法を用いてもよい。また、データストリームが映像の場合、再構築手段23は、所定の結合方法として、映像の矩形領域ごとに結合する方法や、色成分ごとに結合する方法、解像度ごとに結合する方法などを用いてもよい。なお、結合方法は、上記方法に限られない。再構築手段23は、ユーザ端末20において実現可能な他の方法を用いてデータストリームを結合してもよい。
【0059】
さらに、再構築手段23は、データストリームの再構築に用いられた各ブロックからメッセージ認証子を抽出する。また、再構築手段23は、予め定められた変換規則に基づいて、メッセージ認証子を変換する。そして、再構築手段23は、再構築されたデータストリームに結合メッセージ認証子を付与する。以下、変換後のメッセージ認証子を結合メッセージ認証子と記す。
【0060】
具体的には、再構築手段23は、復号手段22が復号したJ個のブロックからメッセージ認証子を抽出する。そして、再構築手段23は、ブロック順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換する。さらに、再構築手段23は、各ブロック内に付与されたもとのメッセージ認証子を除去した後、所定の結合方法によって各ブロックを結合し、オリジナルのデータストリームを生成する。そして、再構築手段23は、生成したデータストリームに対して結合メッセージ認証子を電子透かしとして埋め込む。
【0061】
配信サーバ10の受信者特定手段15は、上述の通り、放送したデータストリームの不正な二次流通(不正流通)が存在するか否かを判定し、他の装置に対してデータストリームを送信するユーザ端末20を特定する。受信者特定手段15は、例えば、通信ネットワーク上のトラフィックを定期的に監視して対象のデータストリームを検出し、検出したデータストリームに対してユーザ端末20を特定する処理を行ってもよい。
【0062】
ただし、放送したデータストリームの不正流通が存在するか否かを判定する方法は、上述の方法に限定されない。受信者特定手段15は、例えば、配信サーバ10が備えるハードディスクドライブなどの記憶部(図示せず)にデータストリームを記憶させ、そのデータストリームに対して各処理を行ってもよい。
【0063】
不正流通を発見した場合、受信者特定手段15は、再構築されたデータストリームそれ自体又はそのデータストリームを分割したデータをブロックと決定し、このブロックに対応する鍵情報を用いてメッセージ認証子を生成する。すなわち、受信者特定手段15は、再構築されたデータストリームそれ自体又はそのデータストリームを分割したデータに対応する鍵情報を用いてメッセージ認証子を生成する。そして、受信者特定手段15は、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成し、再構築されたデータストリームから抽出される結合メッセージ認証子と一致するか否かを判定する。両者が一致する場合、受信者特定手段15は、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末20を特定する。
【0064】
具体的には、受信者特定手段15は、ユーザ端末20の再構築手段23が埋め込んだ結合メッセージ認証子と、オリジナルのデータストリームとを分離させる。そして、受信者特定手段15は、オリジナルのデータストリームを所定の分割方法でJ個のブロックに分割する。この分割方法は、分割手段12が分割する方法と同様である。
【0065】
その後、受信者特定手段15は、鍵の組合せが一意になるように、各鍵プールから鍵を1個ずつ選択する。そして、受信者特定手段15は、j個目のブロックに対し鍵プールjから選択した鍵を用いてメッセージ認証子を生成する。メッセージ認証子の生成方法は、署名手段13がメッセージ認証子を生成する方法と同様である。
【0066】
受信者特定手段15は、先頭のブロックからJ個目のブロックまで、それぞれ生成したメッセージ認証子を連接する。そして、受信者特定手段15は、連接したメッセージ認証子をもとに所定の一方向性ハッシュ関数を用いて結合メッセージ認証子を生成し、生成された結合メッセージ認証子と、再構築手段23が埋め込んだ結合メッセージ認証子とを比較する。この比較処理を、可能性のある鍵の組合せについて総当り的に行う。なお、結合メッセージ認証子の生成方法は、再構築手段23が結合メッセージ認証子を生成する方法と同様である。
【0067】
生成した結合メッセージ認証子と、再構築手段23が埋め込んだ結合メッセージ認証子とが一致した場合、受信者特定手段15は、結合メッセージ認証子を算出する際に用いられたJ個のメッセージ認証子の組を生成可能なJ個の鍵情報の組を特定する。そして、受信者特定手段15は、特定したJ個の鍵情報の組に対応付けられたユーザ端末20を、データストリームの送信元と特定する。
【0068】
復号手段22と、再構築手段23とは、プログラム(受信データ再構築プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、ユーザ端末20の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、復号手段22及び再構築手段23として動作してもよい。また、復号手段22と、再構築手段23とは、それぞれが専用のハードウェアで実現されていてもよい。また、再構築手段23は、耐タンパ性を備えるモジュール内に実装され、ユーザ端末20の記憶部(図示せず)に記憶される。
【0069】
次に、動作について説明する。図6は、本実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。まず、本システムによる運用を開始するまでの動作について説明する。
【0070】
システム運用開始前において、配信サーバ10の事前鍵割当手段11は、ユーザ端末20ごとに一意になる鍵情報の組を生成し、生成した鍵情報を各ユーザ端末20に割り当てる(ステップS11)。各ユーザ端末20の制御部(図示せず)は、割り当てられた鍵情報の組を鍵情報記憶手段21に記憶させる(ステップU11)。
【0071】
次に、分割手段12は、放送されるデータストリームを受信者数(より具体的には、ユーザ端末数20)より少ない数に複製し、オリジナルを含む複製データストリームそれぞれをブロックに分割する(ステップS12)。署名手段13は、分割されたブロックごとにメッセージ認証子を生成し、生成したメッセージ認証子を電子透かしとして各ブロックに埋め込む(ステップS13)。そして、暗号化手段14は、メッセージ認証子を埋め込んだブロックを暗号化する(ステップS14)。
【0072】
以上に例示したステップS11〜S14及びステップU11の処理を実行することにより、配信サーバ10は、ユーザ端末20に対してデータストリームを放送することが可能になる。すなわち、システムは、運用を開始できる状態になる、
【0073】
次に、本システムによる運用を開始した後の動作について説明する。
【0074】
システム運用開始後において、配信サーバ10の暗号化手段14は、ブロック単位で暗号化された複数のデータストリームを放送する(ステップS15)。なお、暗号化されて放送されるデータストリームには、オリジナルのデータストリームだけでなく、複製されたデータストリームも含まれる。
【0075】
ユーザ端末20の通信部(図示せず)が複製を含む暗号化されたデータストリームを受信すると(ステップU12)、復号手段22は、複数のデータストリームに含まれるブロックのうち、予め割り当てられた(すなわち、鍵情報記憶手段21に記憶された)鍵情報で復号可能なブロックを復号する(ステップU13)。そして、再構築手段23は、それらを結合してオリジナルのデータストリームを再構築する(ステップU14)。
【0076】
次に、再構築手段23は、データストリームの再構築に用いられた各ブロックからメッセージ認証子を抽出する(ステップU15)。また、再構築手段23は、メッセージ認証子を変換して結合メッセージ認証子を生成する(ステップU16)。そして、再構築手段23は、再構築されたデータストリームに結合メッセージ認証子を付与する(ステップU17)。
【0077】
一方、配信サーバ10の受信者特定手段15は、放送したデータストリームの不正な二次流通(不正流通)があるか否かを判定する(ステップS16)。不正流通を発見できない場合(ステップS16におけるNO)、受信者特定手段15は、ステップS16以降の処理を繰り返す。一方、不正流通を発見できた場合(ステップS16におけるYES)、受信者特定手段15は、そのデータストリームの最初の受信者、すなわち不正流通の出所を特定する(ステップS17)。
【0078】
受信者が特定できた場合、例えば、データストリームの配信者は、受信者に著作権侵害等の警告を与えるなど、不正流通への対策をとることが可能になる。
【0079】
次に、受信者特定手段15が不正流通の出所を特定するステップS17の処理について説明する。図7は、受信者特定手段15が不正流通の出所を特定する(すなわち、データストリームを送信したユーザ端末20を特定する)処理の例を示すフローチャートである。
【0080】
受信者特定手段15は、不正に流通する再構築されたデータストリームを検出する(ステップS171)。受信者特定手段15は、検出したデータストリームを所定の分割方法で少なくとも一つ以上のブロックに分割する(ステップS172)。そして、受信者特定手段15は、各ブロックに対応する鍵情報を用いてメッセージ認証子を生成する(ステップS173)。
【0081】
そのあと、受信者特定手段15は、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成し(ステップS174)、再構築されたデータストリームから抽出される結合メッセージ認証子と一致するか否かを判定する(ステップS175)。両者が一致する場合(ステップS175におけるYES)、受信者特定手段15は、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末20を特定する(ステップS176)。
【0082】
一方、ステップS175において、両者が一致しない場合(ステップS175におけるNO)、受信者特定手段15は、他のメッセージ認証子を対象として結合メッセージ認証子を生成し、生成した結合メッセージ認証子と抽出された結合メッセージとが一致するか否かを判定するステップS174〜S175の処理を繰り返す。
【0083】
以上のように、本実施形態によれば、分割手段12が、データストリームごとに、データストリームそれ自体又は各データストリームを分割したブロックを生成する。そして、署名手段13が、各ブロックに対応する鍵情報を用いてブロックごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックに付与する。暗号化手段14は、各ブロックに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックを暗号化する。一方、復号手段22が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて暗号化されたブロックを復号する。そして、再構築手段23が、鍵情報の組を用いて復号された各ブロックを結合してデータストリームを再構築し、データストリームの再構築に用いられた各ブロックからメッセージ認証子を抽出する。さらに、再構築手段23が、メッセージ認証子を変換した結合メッセージ認証子を生成し、再構築されたデータストリームに結合メッセージ認証子を付与する。
【0084】
そのため、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる。
【0085】
すなわち、本実施形態によれば、ブロックごとに電子透かしとして埋め込んでいたメッセージ認証子を、再構成したデータストリームにただ1個埋め込むように変更している。そのため、受信元が結託してデータブロックを入れ替えるような行為に対して耐性を持たせることが出来る。
【0086】
また、分割手段12が、放送するデータストリームを受信者数より少ないI本のデータストリームに複製して、それぞれのデータストリームを分割し、署名手段13が、分割した各ブロックにメッセージ認証子を埋め込むことで、受信者を一意に特定可能なメッセージ認証子のパターンを増加させている。そのため、データストリームからユーザ端末20を特定できるとともに、通信量が受信者数に比例しないスケーラビリティ性能を備えたシステムを実現できる。
【0087】
実施形態2.
図8は、本発明の第2の実施形態における放送型データストリーム保護システムの例を示すブロック図である。なお、第1の実施形態と同様の構成については、図1と同一の符号を付し、説明を省略する。本実施形態における放送型データストリーム保護システムは、配信サーバ30と、ユーザ端末40とを備えている。
【0088】
配信サーバ30は、第1の実施形態における配信サーバ10と同様、放送されるデータストリームを暗号化して配信する装置である。ユーザ端末40も、第1の実施形態におけるユーザ端末20と同様、配信サーバ30から配信されるデータストリームを受信する装置である。また、図8に例示する放送型データストリーム保護システムでは、ユーザ端末40を1台のみ示しているが、ユーザ端末40は1台に限られず2台以上であってもよい。
【0089】
ユーザ端末40は、鍵情報記憶手段21と、復号手段22と、再構築手段43とを備えている。再構築手段43は、第1の実施形態における再構築手段23と同様に、鍵情報を用いて復号された各ブロックを結合してデータストリームを再構築する。具体的には、再構築手段43は、復号手段22が復号したブロック(復号結果)を所定の結合方法によって結合し、データストリームを利用可能な状態にする。このとき、所定の結合方法を、例えば、第1の実施形態で例示した所定の分割方法で分割する処理と逆方向の処理として定義してもよい。ただし、所定の結合方法は、第1の実施形態で例示した方法に限られず、
ユーザ端末40において実現可能な他の方法であってもよい。
【0090】
配信サーバ30は、事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段35とを備えている。受信者特定手段35は、第1の実施形態における受信者特定手段15と同様、放送したデータストリームの不正な二次流通(不正流通)が存在するか否かを判定し、他の装置に対してデータストリームを送信するユーザ端末40を特定する。
【0091】
不正流通を発見した場合、受信者特定手段35は、再構築されたデータストリームを所定の分割方法で少なくとも一つ以上のブロックに分割し、各ブロックに対応する鍵情報を用いてメッセージ認証子を生成する。そして、受信者特定手段35は、生成された各メッセージ認証子と、再構築されたデータストリームから抽出される各メッセージ認証子とが一致するか否かを判定する。両者が一致する場合、受信者特定手段35は、そのメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末40を特定する。
【0092】
具体的には、不正流通として、例えば、放送されるデータストリームを、インターネット上にアップロードすることなどが想定される。このように、私的利用の範囲を超える二次流通として出回ったデータストリームを発見した場合、受信者特定手段35は、発見したデータストリームを所定の分割方法によって再分割し、再分割されたブロック個々に電子透かしとして埋め込まれたメッセージ認証子とオリジナルのデータストリームとを分離する。
【0093】
受信者特定手段35は、j番目のブロックから分離されたオリジナルのデータストリームをもとに、そのデータストリームに埋め込まれていたメッセージ認証子と同一のメッセージ認証子を計算可能な鍵を、鍵プールjから総当たりで探索する。同一のメッセージ認証子を計算可能な鍵が発見できた場合、受信者特定手段35は、発見したJ個の鍵情報の組に基づいて、データストリームを最初に受信したユーザ端末40(すなわち、データストリームを送信したユーザ端末40)を特定する。
【0094】
事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段35とは、プログラム(受信者特定プログラム)に従って動作するコンピュータのCPUによって実現される。事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段35とは、それぞれが専用のハードウェアで実現されていてもよい。
【0095】
また、復号手段22と、再構築手段43とは、プログラム(受信データ再構築プログラム)に従って動作するコンピュータのCPUによって実現される。復号手段22と、再構築手段43とは、それぞれが専用のハードウェアで実現されていてもよい。また、再構築手段43は、耐タンパ性を備えるモジュール内に実装され、ユーザ端末40の記憶部(図示せず)に記憶される。
【0096】
次に、動作について説明する。図9は、本実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。図6と同様の処理については、同一の符号を付し、詳細な説明を省略する。すなわち、本システムによる運用を開始するまでのステップS11〜S14,U11における処理、及び、本システムの運用開始後に放送された暗号化データストリームをユーザ端末40の再構築手段43が再構築するまでのステップS15,U12〜U14における処理は、図6に例示する処理と同様である。
【0097】
配信サーバ30の受信者特定手段35は、放送したデータストリームの不正な二次流通(不正流通)があるか否かを判定する(ステップS16)。不正流通を発見できない場合(ステップS16におけるNO)、受信者特定手段35は、ステップS16以降の処理を繰り返す。一方、不正流通を発見できた場合(ステップS16におけるYES)、受信者特定手段35は、そのデータストリームの最初の受信者、すなわち不正流通の出所を特定する(ステップS18)。
【0098】
次に、受信者特定手段35が不正流通の出所を特定するステップS18の処理について説明する。図10は、受信者特定手段35が不正流通の出所を特定する(すなわち、データストリームを送信したユーザ端末40を特定する)処理の例を示すフローチャートである。
【0099】
受信者特定手段35は、不正に流通する再構築されたデータストリームを検出する(ステップS181)。受信者特定手段35は、検出したデータストリームを所定の分割方法で少なくとも一つ以上のブロックに分割する(ステップS182)。そして、受信者特定手段35は、各ブロックに対応する鍵情報を用いてメッセージ認証子を生成する(ステップS183)。
【0100】
そのあと、受信者特定手段35は、生成された各メッセージ認証子と、再構築されたデータストリームから抽出される各メッセージ認証子とが一致するか否かを判定する(ステップS184)。両者が一致する場合(ステップS184におけるYES)、受信者特定手段35は、そのメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末40を特定する(ステップS185)。
【0101】
一方、ステップS184において、両者が一致しない場合(ステップS184におけるNO)、受信者特定手段35は、鍵情報を用いて生成される他のメッセージ認証子と抽出された結合メッセージ認証子とが一致するか否かを判定するステップS175の処理を繰り返す。
【0102】
以上のように、本実施形態においても、データストリームの配信先を特定できるため、放送されるデータストリームを保護することは可能である。ただし、第1の実施形態では、再構築手段23が、メッセージ認証子を変換した結合メッセージ認証子を作成し、再構築されたデータストリームにその結合メッセージ認証子を付与する。また、受信者特定手段15が、生成した結合メッセージ認証子と、再構築されたデータストリームから抽出される結合メッセージ認証子とが一致するか否かを判定する。そして、両者が一致する場合、受信者特定手段15が、結合メッセージ認証子を作成する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末20を特定する。
【0103】
そのため、第1の実施形態は、本実施形態における効果に加え、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても配信先を特定できるため、データ保護の観点からより好ましいと言える。
【0104】
次に、本発明の最小構成について説明する。図11は、本発明による放送型データストリーム保護システムの最小構成の例を示すブロック図である。また、図12は、本発明によるユーザ端末の最小構成の例を示すブロック図である。
【0105】
本発明による放送型データストリーム保護システムは、データストリームを暗号化して配信する配信サーバ80(例えば、配信サーバ10)と、配信サーバ80から配信されるデータストリームを受信するユーザ端末90(例えば、ユーザ端末20)とを備えている(図11参照。)。
【0106】
配信サーバ80は、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して(例えば、受信者数より少ないI本のデータストリームに対して)、各データストリームごとに、データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定するデータ分割手段81(例えば、分割手段12)と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報(例えば、鍵情報(i,j,Ki,j))を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段82(例えば、署名手段13)と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段83(例えば、暗号化手段14)とを備えている(図11参照。)。
【0107】
また、ユーザ端末90は、ユーザ端末ごとに一意に割り当てられた鍵情報の組(例えば、図3に例示する鍵情報の組)を用いて、暗号化されたブロックデータを復号する復号手段91(例えば、復号手段22)と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段92(例えば、再構築手段23)と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段93(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段94(例えば、再構築手段23)と、再構築されたデータストリームに結合メッセージ認証子を付与する(例えば、電子透かしとして埋め込む)結合メッセージ認証子付与手段95(例えば、再構築手段23)とを備えている(図11,図12参照。)。
【0108】
次に、本発明の他の最小構成について説明する。図13は、本発明による配信サーバの最小構成の例を示すブロック図である。本発明による配信サーバ70は、データ分割手段81(例えば、分割手段12)と、署名手段82(例えば、署名手段13)と、暗号化手段83(例えば、暗号化手段14)と、ユーザ端末特定手段84(例えば、再構築手段23)とを備えている。なお、データ分割手段81、署名手段82及び暗号化手段83については、図11に例示する内容と同様である。
【0109】
ユーザ端末特定手段84は、ユーザ端末90が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定する再構築データ分割手段85(例えば、再構築手段23)と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段86(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段87(例えば、再構築手段23)と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末90を特定するユーザ端末判定手段88(例えば、再構築手段23)とを含む。
【0110】
以上に例示する放送型データストリーム保護システム、配信サーバ及びユーザ端末それぞれの最小構成により、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる。
【0111】
なお、少なくとも以下に示すような放送型データストリーム保護システム、配信サーバ及びユーザ端末も、上記に示すいずれかの実施形態に開示されている。
【0112】
(1)データストリームを暗号化して配信する配信サーバ(例えば、配信サーバ10)と、配信サーバから配信されるデータストリームを受信するユーザ端末(例えば、ユーザ端末20)とを備え、配信サーバが、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して(例えば、受信者数より少ないI本のデータストリームに対して)、各データストリームごとに、データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定するデータ分割手段(例えば、分割手段12)と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報(例えば、鍵情報(i,j,Ki,j))を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段(例えば、署名手段13)と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段(例えば、暗号化手段14)とを備え、ユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組(例えば、図3に例示する鍵情報の組)を用いて、暗号化されたブロックデータを復号する復号手段(例えば、復号手段22)と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段(例えば、再構築手段23)と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段(例えば、再構築手段23)と、再構築されたデータストリームに結合メッセージ認証子を付与する(例えば、電子透かしとして埋め込む)結合メッセージ認証子付与手段(例えば、再構築手段23)とを備えた放送型データストリーム保護システム。
【0113】
(2)配信サーバが、データストリームを送信するユーザ端末を特定するユーザ端末特定手段(例えば、受信者特定手段15)を備え、ユーザ端末特定手段が、再構築されたデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定する再構築データ分割手段(例えば、受信者特定手段15)と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段(例えば、受信者特定手段15)と、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段(例えば、受信者特定手段15)と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段(例えば、受信者特定手段15)とを含む放送型データストリーム保護システム。
【0114】
(3)配信サーバが、ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当手段(例えば、事前鍵割当手段11)を備え、ユーザ端末が、ユーザ端末ごとに割り当てられる鍵情報の組を記憶する鍵情報記憶手段(例えば、鍵情報記憶手段21)を備え、鍵情報割当手段が、ブロックデータごとに設けられ、データストリームを複製した数分(例えば、I個)の共通鍵暗号の鍵を含む鍵プール(例えば、鍵プールj)のそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、対応するユーザ端末の鍵情報記憶手段に作成した鍵情報の組を記憶させる放送型データストリーム保護システム。
【0115】
(4)データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して(例えば、受信者数より少ないI本のデータストリームに対して)、各データストリームごとに、データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、J個のブロック)と決定するデータ分割手段(例えば、分割手段12)と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報(例えば、鍵情報(i,j,Ki,j))を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段(例えば、署名手段13)と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段(例えば、暗号化手段14)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末(例えば、ユーザ端末20)を特定するユーザ端末特定手段(例えば、再構築手段23)とを備え、ユーザ端末特定手段が、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定する再構築データ分割手段(例えば、再構築手段23)と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段(例えば、再構築手段23)と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段(例えば、再構築手段23)とを含む配信サーバ。
【0116】
(5)データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータであるブロックデータ(例えば、ブロック)をそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバ(例えば、配信サーバ10)からブロックデータを受信するユーザ端末であって、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報(例えば、鍵情報(i,j,Ki,j))の組を用いて、暗号化されたブロックデータを復号する復号手段(例えば、復号手段22)と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段(例えば、再構築手段23)と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段(例えば、再構築手段23)と、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与手段(例えば、再構築手段23)とを備えたユーザ端末。
【0117】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0118】
(付記1)データストリームを配信する配信サーバと、前記配信サーバから配信されるデータストリームを受信するユーザ端末とを備え、前記配信サーバは、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段とを備え、前記ユーザ端末は、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とする放送型データストリーム保護システム。
【0119】
(付記2)配信サーバは、データストリームを送信するユーザ端末を特定するユーザ端末特定手段を備え、前記ユーザ端末特定手段は、再構築されたデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含む付記1記載の放送型データストリーム保護システム。
【0120】
(付記3)配信サーバは、ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当手段を備え、ユーザ端末は、ユーザ端末ごとに割り当てられる鍵情報の組を記憶する鍵情報記憶手段を備え、前記鍵情報割当手段は、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、対応するユーザ端末の前記鍵情報記憶手段に作成した鍵情報の組を記憶させる付記1または付記2記載の放送型データストリーム保護システム。
【0121】
(付記4)結合メッセージ認証子生成手段は、ブロックデータ順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換する付記1から付記3のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0122】
(付記5)データ分割手段は、ユーザ端末数より少ない数のデータストリーム群に対して、ブロックデータを決定する付記1から付記4のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0123】
(付記6)結合メッセージ認証子付与手段は、結合メッセージ認証子を電子透かしとしてデータストリームに埋め込む付記1から付記5のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0124】
(付記7)データ分割手段は、データストリームの周波数成分ごとに分割する方法、データストリームに対して時間軸方向に分割する方法、映像データストリームに対して矩形領域ごとに分割する方法、映像データストリームに対して色成分ごとに分割する方法、もしくは、映像データストリームに対して解像度ごとに分割する方法のうちの少なくともいずれかの方法で分割したデータストリームをブロックデータと決定する付記1から付記6のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0125】
(付記8)データ再構築手段は、データ分割手段が分割する方法と逆方向の処理として定義される方法を用いて復号された各ブロックデータを結合してデータストリームを再構築する付記1から付記7のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0126】
(付記9)鍵情報割当手段は、公開鍵暗号における公開鍵と秘密鍵のペアを生成し、当該公開鍵を用いて暗号化された乱数をユーザ端末から受信したときに、ユーザ端末ごとに一意の共通鍵暗号の鍵であるマスタ鍵を生成し、当該マスタ鍵を用いて個別に暗号化した鍵情報を前記ユーザ端末に送信する付記3記載の放送型データストリーム保護システム。
【0127】
(付記10)ユーザ端末は、ユーザ端末ごとに割り当てられる鍵情報の組を鍵情報記憶手段に記憶させる鍵情報登録手段を備え、前記鍵情報登録手段は、公開鍵を用いて暗号化した乱数を配信サーバに送信し、暗号化された鍵情報を配信サーバから受信したときに、受信した鍵情報の組を復号し、復号した鍵情報の組を鍵情報記憶手段に記憶させる付記9記載の放送型データストリーム保護システム。
【0128】
(付記11)再構築データ認証子生成手段は、鍵プールのそれぞれから1つずつ鍵を選択して、一意になる鍵情報の組を作成し、当該鍵情報を用いてブロックデータごとのメッセージ認証子を生成する付記2記載の放送型データストリーム保護システム。
【0129】
(付記12)データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定手段とを備え、前記ユーザ端末特定手段は、前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含むことを特徴とする配信サーバ。
【0130】
(付記13)データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末であって、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号手段と、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とするユーザ端末。
【0131】
(付記14)データストリームを配信する配信サーバが、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、前記配信サーバが、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、前記配信サーバが、生成したメッセージ認証子を各ブロックデータに付与し、前記配信サーバが、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、前記配信サーバから配信されるデータストリームを受信するユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与することを特徴とする放送型データストリーム保護方法。
【0132】
(付記15)配信サーバが、再構築されたデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定し、配信サーバが、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成し、配信サーバが、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成し、配信サーバが、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定する付記14記載の放送型データストリーム保護方法。
【0133】
(付記16)配信サーバが、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、作成した鍵情報の組を対応するユーザ端末の鍵情報記憶手段に記憶させる付記14または付記15記載の放送型データストリーム保護システム。
【0134】
(付記17)ユーザ端末が、結合メッセージ認証子を生成する際、ブロックデータ順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換する付記14から付記16のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0135】
(付記18)配信サーバが、ブロックデータを生成する際、ユーザ端末数より少ない数のデータストリーム群に対して、ブロックデータを決定する付記14から付記17のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0136】
(付記19)ユーザ端末が、結合メッセージ認証子を付与する際、結合メッセージ認証子を電子透かしとしてデータストリームに埋め込む付記14から付記18のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0137】
(付記20)配信サーバが、ブロックデータを生成する際、データストリームの周波数成分ごとに分割する方法、データストリームに対して時間軸方向に分割する方法、映像データストリームに対して矩形領域ごとに分割する方法、映像データストリームに対して色成分ごとに分割する方法、もしくは、映像データストリームに対して解像度ごとに分割する方法のうちの少なくともいずれかの方法で分割したデータストリームをブロックデータと決定する付記14から付記19のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0138】
(付記21)ユーザ端末が、データストリームを再構築する際、ブロックデータを生成する方法と逆方向の処理として定義される方法を用いて復号された各ブロックデータを結合することによりデータストリームを再構築する付記14から付記20のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0139】
(付記22)配信サーバが、鍵情報の組を割り当てる際、公開鍵暗号における公開鍵と秘密鍵のペアを生成し、当該公開鍵を用いて暗号化された乱数をユーザ端末から受信したときに、ユーザ端末ごとに一意の共通鍵暗号の鍵であるマスタ鍵を生成し、当該マスタ鍵を用いて個別に暗号化した鍵情報を前記ユーザ端末に送信する付記16記載の放送型データストリーム保護方法。
【0140】
(付記23)ユーザ端末が、公開鍵を用いて暗号化した乱数を配信サーバに送信し、暗号化された鍵情報を配信サーバから受信したときに、受信した鍵情報の組を復号し、復号した鍵情報の組を鍵情報記憶手段に記憶させる付記22記載の放送型データストリーム保護方法。
【0141】
(付記24)配信サーバが、メッセージ認証子を生成する際、鍵プールのそれぞれから1つずつ鍵を選択して、一意になる鍵情報の組を作成し、当該鍵情報を用いてブロックデータを生成するごとのメッセージ認証子を生成する付記15記載の放送型データストリーム保護方法。
【0142】
(付記25)データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与し、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定し、ユーザ端末を特定する際に、ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定し、ブロックデータ対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成し、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成し、前記結合メッセージ認証子が再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定することを特徴とするユーザ端末特定方法。
【0143】
(付記26)データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末が、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号し、前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与することを特徴とする受信データ再構築方法。
【0144】
(付記27)コンピュータに、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割処理、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名処理、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化処理、および、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定処理を実行させ、前記ユーザ端末特定処理で、前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割処理、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成処理、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合処理、および、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定処理を実行させるためのユーザ端末特定プログラム。
【0145】
(付記28)コンピュータに、ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当処理を実行させ、前記鍵情報割当処理で、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成させ、対応するユーザ端末の鍵情報記憶手段に作成した鍵情報の組を記憶させる付記27記載のユーザ端末特定プログラム。
【0146】
(付記29)コンピュータに、ユーザ端末数より少ない数のデータストリーム群に対して、ブロックデータを決定させる付記27または付記28記載のユーザ端末特定プログラム。
【0147】
(付記30)コンピュータに、データ分割処理で、データストリームの周波数成分ごとに分割する方法、データストリームに対して時間軸方向に分割する方法、映像データストリームに対して矩形領域ごとに分割する方法、映像データストリームに対して色成分ごとに分割する方法、もしくは、映像データストリームに対して解像度ごとに分割する方法のうちの少なくともいずれかの方法で分割したデータストリームをブロックデータと決定する付記27から請求項29のうちのいずれか1つに記載のユーザ端末特定プログラム。
【0148】
(付記31)コンピュータに、鍵情報割当処理で、公開鍵暗号における公開鍵と秘密鍵のペアを生成させ、当該公開鍵を用いて暗号化された乱数をユーザ端末から受信したときに、ユーザ端末ごとに一意の共通鍵暗号の鍵であるマスタ鍵を生成させ、当該マスタ鍵を用いて個別に暗号化した鍵情報を前記ユーザ端末に送信させる付記28記載のユーザ端末特定プログラム。
【0149】
(付記32)コンピュータに、再構築データ認証子生成処理で、鍵プールのそれぞれから1つずつ鍵を選択して、一意になる鍵情報の組を作成させ、当該鍵情報を用いてブロックデータごとのメッセージ認証子を生成させる付記27から請求項31のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0150】
(付記33)データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するコンピュータに適用される受信データ再構築プログラムであって、前記コンピュータに、ブロックデータごとの暗号化及び復号に用いられる情報としてコンピュータごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号処理、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築処理、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出処理、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成処理、および、再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与処理を実行させるための受信データ再構築プログラム。
【0151】
(付記34)コンピュータに、結合メッセージ認証子生成処理で、ブロックデータ順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換させる付記33記載の受信データ再構築プログラム。
【0152】
(付記35)コンピュータに、結合メッセージ認証子付与処理で、結合メッセージ認証子を電子透かしとしてデータストリームに埋め込ませる付記33または付記34記載の受信データ再構築プログラム。
【0153】
(付記36)コンピュータに、データ再構築処理で、データ分割処理で分割させた方法と逆方向の処理として定義される方法を用いて復号された各ブロックデータを結合してデータストリームを再構築させる付記33から付記35のうちのいずれか1つに記載の受信データ再構築プログラム。
【0154】
(付記37)コンピュータに、ユーザ端末ごとに割り当てられる鍵情報の組を鍵情報記憶手段に記憶させる鍵情報登録処理を実行させ、前記鍵情報登録処理で、公開鍵を用いて暗号化した乱数を配信サーバに送信させ、暗号化された鍵情報を配信サーバから受信したときに、受信した鍵情報の組を復号させ、復号させた鍵情報の組を鍵情報記憶手段に記憶させる請求項33記載の受信データ再構築プログラム。
【産業上の利用可能性】
【0155】
本発明は、配信サーバから放送されるデータストリームの受信元を特定し、二次利用抑止などを可能とする放送型データストリーム保護システムに好適に適用される。なお、この配信サーバから放送される情報として、例えば、IPTV(Internet Protocol Television)に代表されるIP放送によるデータ送信、デジタルサイネージなどのクライアント数が大規模なサーバクライアント型ネットワークにおけるダウンストリームなどが想定される。
【0156】
例えば、IP放送においては、配信サーバが最初の受信先を特定できるので、不正な二次流通を抑止することができる。一方、家族間の複製など、私的利用の範囲における複製については利便性の維持が可能である。
【0157】
また、本発明を、デジタルサイネージにも応用可能である。例えば、サーバからのダウンストリームとして配信される電子広告の配信先端末において、広告を参照したユーザに意図的にコピーを配布する。このようにすることで、商品の販売時などにおいて、どの配信先端末でその電子公告が参照されたかを広告主に伝達することが可能である。また、この仕組みを利用して、アフィリエイト型(成功報酬型)の広告モデルにも応用可能である。
【符号の説明】
【0158】
10,30 配信サーバ
11 事前鍵割当手段
12 分割手段
13 署名手段
14 暗号化手段
15,35 受信者特定手段
20,40 ユーザ端末
21 鍵情報記憶手段
22 復号手段
23,43 再構築手段
100 通信ネットワーク
【技術分野】
【0001】
本発明は、クライアント数が大規模なサーバクライアント型ネットワークにおいて、放送されるダウンストリームの二次利用を抑止する放送型データストリーム保護システム、配信サーバ、ユーザ端末、放送型データストリーム保護方法、ユーザ端末特定方法、受信データ再構築方法、ユーザ端末特定プログラム、および、受信データ再構築プログラムに関する。
【背景技術】
【0002】
大規模なサーバクライアント型ネットワークにおけるダウンストリームを活用したサービスとして、例えば、IP放送サービスが存在する。一般的なIP放送サービスでは、受信したデータストリームの二次流通については管理していない。一方で、私的利用の範囲内であっても、データストリームの複製については制限されていることが多い。
【0003】
一方、コンテンツに電子透かしを埋め込み、著作権管理を行うシステムの一例が、特許文献1や特許文献2に記載されている。特許文献1に記載されたアクセス制御方法では、電子透かし技術を用いて各信号に埋め込まれた認可コードに基づいて、実行可能な操作が決定される。また、特許文献2に記載されたコンテンツ保護システムでは、コンテンツに電子透かし著作権保護情報が埋め込まれ、予め保持しているコードと、電子透かし著作権保護情報に埋め込まれたコードとが異なる場合に、ディジタル出力(アナログ出力)を停止させる。
【0004】
なお、電子透かしについては、非特許文献1に記載されている。非特許文献1によれば、電子透かしは、不可視の状態でコンテンツに埋め込むことが可能であり、透かしを埋め込んだ者(あるいは代理の者)が必要なときに抽出可能な性質を備えている。さらに、電子透かしは、第三者による除去が困難である一方、コンテンツを加工しても抽出が可能という性質を備えている。電子透かしは、このような性質を有するため、コンテンツの著作権保護に用いられる。
【0005】
また、コンテンツに埋め込んだ電子透かしを用いてコンテンツの著作権を保護する著作権保護システムが特許文献3に記載されている。特許文献3に記載された著作権保護システムでは、まず、映像配信サーバが、映像コンテンツをn個の映像要素に分割し、映像要素ごとに異なる電子透かしを挿入した映像要素をm個作成する。映像受信クライアントは、映像配信サーバから暗号化された映像コンテンツを受信すると、取得しておいたライセンスを用いて映像要素を復号することで、映像コンテンツを視聴可能にする。一方、フィンガープリント検出装置は、調査対象の映像コンテンツを受け取ると、埋め込まれた電子透かし情報を検出してユーザIDを復元することで、不正コピー流出元を特定する。
【0006】
なお、特許文献4には、コンテンツ暗号化装置(以下、暗号化装置)及びコンテンツ復号装置(以下、復号装置)を用いた暗号化及び復号方法が記載されている。特許文献4に記載された方法では、復号装置が、暗号化装置が生成した暗号化コンテンツの集合を復号対象として、暗号化装置が生成した鍵束の1つを取得する。そして、復号装置は、取得した鍵束を構成する各暗号鍵に対応付けられる暗号化コンテンツ部分を取り出し、取り出した暗号化コンテンツ部分を、各コンテンツに対応付けられた暗号鍵で復号する。そして、復号装置は、復号したコンテンツ部分を統合することでコンテンツを復元する。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特表2005−516321号公報(段落0008)
【特許文献2】特許第4038919号公報(段落0010)
【特許文献3】特開2005−51735号公報(段落0023)
【特許文献4】特開2003−78520号公報(段落0019)
【非特許文献】
【0008】
【非特許文献1】井上彰、「電子透かし マルチメディア時代の暗号システム」、光芒者、1997、pp.13-15
【発明の概要】
【発明が解決しようとする課題】
【0009】
以上のような性質を有することから、電子透かしは、データストリームの二次流通を管理する際に有効な手段である。例えば、コンテンツの受信者のID(以下、署名情報と記すこともある。)を電子透かしとして埋め込み、本署名情報を参照することで受信者を特定できるため、二次流通の抑止が可能になる。
【0010】
しかし、上記方法を用いる場合、受信者ごとに署名情報を電子透かしとして埋め込んだデータストリームを用意しなければならず、通信量が受信者数に比例して増大してしまうため、放送のメリットであるスケーラビリティが失われるという課題がある。すなわち、データストリームの受信者ごとに署名情報を埋め込む方法は、大規模なデータストリーム放送には不向きである。
【0011】
一方、特許文献3に記載された著作権保護システムを用いることで、送信するデータ量を抑えつつ、映像コンテンツを送信するユーザIDを特定できるため、送信される映像コンテンツの二次流通を抑止することは可能である。
【0012】
しかし、特許文献3に記載された著作権保護システムでは、受け取った映像コンテンツをn個の要素に分割し、分割した各要素から検出される電子透かし情報を復元することでユーザIDを特定する。そのため、映像コンテンツの受信者が複数人存在し、各受信者が受信した映像コンテンツの要素を他者のみが復号可能な要素と交換したうえで再結合した場合、その映像コンテンツから特定されるユーザIDを第3者が受信元であるように偽ることが可能になる。このように、複数人の受信者が結託して要素を入れ替えた場合、映像コンテンツを送信するユーザIDを正しく特定できないという課題がある。
【0013】
そこで、本発明は、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる放送型データストリーム保護システム、配信サーバ、ユーザ端末、放送型データストリーム保護方法、ユーザ端末特定方法、受信データ再構築方法、ユーザ端末特定プログラム、および、受信データ再構築プログラムを提供することを目的とする。
【課題を解決するための手段】
【0014】
本発明による放送型データストリーム保護システムは、データストリームを配信する配信サーバと、配信サーバから配信されるデータストリームを受信するユーザ端末とを備え、配信サーバが、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段とを備え、ユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とする。
【0015】
本発明による配信サーバは、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段と、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定手段とを備え、ユーザ端末特定手段が、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含むことを特徴とする。
【0016】
本発明によるユーザ端末は、データストリームそれ自体又はデータストリームを分割したデータであるブロックデータをそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバからブロックデータを受信するユーザ端末であって、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とする。
【0017】
本発明による放送型データストリーム保護方法は、データストリームを配信する配信サーバが、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、配信サーバが、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、配信サーバが、生成したメッセージ認証子を各ブロックデータに付与し、配信サーバが、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化し、配信サーバから配信されるデータストリームを受信するユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、ユーザ端末が、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、ユーザ端末が、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成し、ユーザ端末が、再構築されたデータストリームに結合メッセージ認証子を付与することを特徴とする。
【0018】
本発明によるユーザ端末特定方法は、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与し、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化し、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定し、ユーザ端末を特定する際に、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定し、ブロックデータに対応する鍵情報を用いてブロックデータタごとのメッセージ認証子を生成し、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成し、結合メッセージ認証子が再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定することを特徴とする。
【0019】
本発明による受信データ再構築方法は、データストリームそれ自体又はデータストリームを分割したデータであるブロックデータをそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバからブロックデータを受信するユーザ端末が、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、ユーザ端末が、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、ユーザ端末が、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成し、ユーザ端末が、再構築されたデータストリームに結合メッセージ認証子を付与することを特徴とする。
【0020】
本発明によるユーザ端末特定プログラムは、コンピュータに、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割処理、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名処理、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化処理、および、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定処理を実行させ、ユーザ端末特定処理で、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定する再構築データ分割処理、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成処理、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合処理、および、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定処理を実行させることを特徴とする。
【0021】
本発明による受信データ再構築プログラムは、データストリームそれ自体又はデータストリームを分割したデータであるブロックデータをそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバからブロックデータを受信するコンピュータに適用される受信データ再構築プログラムであって、コンピュータに、ブロックデータごとの暗号化及び復号に用いられる情報としてコンピュータごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号処理、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築処理、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出処理、所定の変換規則に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成処理、および、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与処理を実行させることを特徴とする。
【発明の効果】
【0022】
本発明によれば、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる。
【図面の簡単な説明】
【0023】
【図1】本発明の第1の実施形態における放送型データストリーム保護システムの例を示すブロック図である。
【図2】配信サーバが用意する鍵プールの例を示す説明図である。
【図3】ユーザ端末に割り当てられる鍵情報の例を示す説明図である。
【図4】各データストリームが分割された場合の例を示す説明図である。
【図5】各データストリームのブロックにメッセージ認証子が埋め込まれて暗号化されたブロックの例を示す説明図である。
【図6】第1の実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。
【図7】受信者特定手段15が不正流通の出所を特定する処理の例を示すフローチャートである。
【図8】本発明の第2の実施形態における放送型データストリーム保護システムの例を示すブロック図である。
【図9】第2の実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。
【図10】受信者特定手段35が不正流通の出所を特定する処理の例を示すフローチャートである。
【図11】本発明による放送型データストリーム保護システムの最小構成の例を示すブロック図である。
【図12】本発明による配信サーバの最小構成の例を示すブロック図である。
【図13】本発明によるユーザ端末の最小構成の例を示すブロック図である。
【発明を実施するための形態】
【0024】
以下、本発明の実施形態を図面を参照して説明する。
【0025】
実施形態1.
図1は、本発明の第1の実施形態における放送型データストリーム保護システムの例を示すブロック図である。本実施形態における放送型データストリーム保護システムは、配信サーバ10と、ユーザ端末20とを備えている。配信サーバ10とユーザ端末20とは、通信ネットワーク100を介して接続される。なお、通信ネットワーク100の形態は特に限定されない。
【0026】
配信サーバ10は、放送されるデータストリームを暗号化して配信する装置である。配信サーバ10は、具体的には、プログラムに従って動作するパーソナルコンピュータ等の情報処理装置によって実現される。
【0027】
ユーザ端末20は、配信サーバ10から配信されるデータストリームを受信する装置である。ユーザ端末20は、データストリームの再生に必要なデバイスを搭載し、少なくとも配信サーバ10から配信されるデータストリームを受信する通信部(図示せず)、及び、受信したデータストリームを処理するための制御部(図示せず)を備えた情報処理装置によって実現される。
【0028】
図1に例示する放送型データストリーム保護システムでは、ユーザ端末20を1台のみ示しているが、ユーザ端末20は1台に限られず2台以上であってもよい。2台以上の場合の各ユーザ端末20の構成は、図1に例示する構成と同様である。
【0029】
配信サーバ10は、事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段15とを備えている。
【0030】
事前鍵割当手段11は、データの暗号化及び復号に用いられる鍵情報をユーザ端末20ごとに一意になるように生成し、生成した鍵情報を各ユーザ端末20に割り当てる。以下、事前鍵割当手段11が鍵情報として生成する方法について、具体的に説明する。以下の説明では、鍵情報として、共通鍵暗号の鍵を用いるものとする。
【0031】
まず、共通鍵暗号の鍵を登録するJ個の鍵プールj(1≦j≦J)を用意し、各鍵プールに、ランダムかつ一意(ユニーク)に生成した鍵をI個登録しておく。ここで、J及びIは1以上の整数である。以下、鍵プールjのi個目の鍵をKi,jと記す。ただし、1≦i≦Iである。
【0032】
また、鍵Ki,jと、その鍵Ki,jが選択された鍵プールを特定する情報jと、鍵プールj内においてその鍵を特定する情報iとを管理するデータ構造を定義したときに、そのデータ構造に基づいてそれぞれ対応する内容を含む情報を鍵情報と記す。以下、この鍵情報を(i,j,Ki,j)と記す。ただし、この鍵情報は、i、j、及び、Ki,jの3種の情報を管理するデータ構造として定義され、それぞれに対応する情報が格納されて生成される情報であって、配信サーバ10と、ユーザ端末20との間でフォーマット(データ構造)が共有されていれば、上記フォーマット(データ構造)に限定されない。
【0033】
事前鍵割当手段11は、各鍵プールから1個ずつ鍵を選択して鍵の組合せを作成する。その際、事前鍵割当手段11は、鍵の組合せがユーザ端末ごとに一意になるように鍵を選択して鍵情報を作成する。なお、1つの鍵の組合せには、各鍵プールから1個ずつ選択された計J個の鍵が含まれることになる。そして、事前鍵割当手段11は、ユーザ端末ごとに一意に選択した鍵情報を、各ユーザ端末20に割り当てる。
【0034】
なお、鍵情報を割り当てる方法として、さまざまな方法を用いることが出来る。例えば、事前鍵割当手段11は、公開鍵暗号における公開鍵と秘密鍵のペアを生成し、ユーザ端末20に対して公開鍵を事前に公開しておいてもよい。この場合、公開鍵を用いて暗号化された乱数がユーザ端末20から配信サーバ10に対して送信されたときに、事前鍵割当手段11が、ユーザ端末20ごとに一意の共通鍵暗号の鍵(マスタ鍵)を生成する。そして、事前鍵割当手段11は、そのマスタ鍵を用いて個別に暗号化した鍵情報を、各ユーザ端末20に送信してもよい。
【0035】
他にも、システム運用前に安全なチャネルの用意が可能な場合、事前鍵割当手段11は、そのチャネルを用いてユーザ端末20それぞれに鍵情報を送信してもよい。
【0036】
図2は、I=2、J=3のときに配信サーバ10が用意する鍵プールの例を示す説明図である。また、図3は、ユーザ端末20に割り当てられる鍵情報の例を示す説明図である。I=2、J=3のとき、一意になる鍵の組合せは計8個(IのJ乗個)存在する。よって、本システムに含まれるユーザ端末20の最大数は8台になる。図3に例示するテーブルは、8台のユーザ端末それぞれに鍵情報を割り当てたものである。
【0037】
なお、どの鍵情報を、どのユーザ端末20に割り当てるか(すなわち、鍵情報を割り当てるユーザ端末20)については、配信サーバ10がランダムに割り当て先を決定すればよい。以下の説明では、配信サーバ10が、図3に例示するテーブルを管理し、このテーブルを参照することで、ユーザ端末に割り当てられた鍵情報を特定する場合について説明する。
【0038】
分割手段12は、データストリーム(又は、データストリームを含みそのデータストリームから複製されたデータストリーム群)を、所定の分割方法を用いて各データストリームごとに分割する。例えば、分割手段12は、システム運用前に、放送するデータストリームを受信者数より少ないI本のデータストリームに複製する。そして、分割手段12は、オリジナルを含む全複製データストリームを、所定の分割方法によってJ個のブロックに分割する。なお、以下の説明では、オリジナルを含む全複製データストリームを、複製データストリームと記すこともある。
【0039】
ただし、分割手段12は、データストリームを分割せず、データストリームそれ自体を分割したデータと扱ってもよい。以下、データストリームそれ自体又はデータストリームを分割したデータをまとめてブロックと記す。以下の説明で、分割手段12がデータストリームそれ自体又はデータストリームを分割したデータをブロックと決定するとは、各データストリームを分割すること、及び、データストリームを分割せずにデータストリームそれ自体を分割データとして取り扱うことを意味するものとする。
【0040】
分割手段12は、所定の分割方法として、例えば、データの周波数成分ごとに分割する方法や、時間軸方向に分割する方法を用いてもよい。また、データストリームが映像の場合(以下、映像データストリームと記す。)、分割手段12は、所定の分割方法として、映像の矩形領域ごとに分割する方法や、色成分ごとに分割する方法、解像度ごとに分割する方法などを用いてもよい。なお、分割方法は、上記方法に限られない。分割手段12は、配信サーバ10において実現可能な他の方法を用いてデータストリームを分割してもよい。
【0041】
図4は、I=2、J=3のとき、データストリームがI本に複製され、各データストリームがJ個に分割された場合の例を示す説明図である。図4に示す例では、i本目のデータストリームにおけるj個目のブロックをi−jと示す。例えば、I=2、J=3のとき、分割手段12は、データストリームを2本に複製し、個々のデータストリームを3個のブロックに分割する。
【0042】
署名手段13は、ブロックごとの暗号化及び復号に用いられる鍵情報を用いてブロックごとにメッセージ認証子(MAC:Message Authentication Code )を生成し、生成したメッセージ認証子をそれぞれのブロックに付与する。具体的には、署名手段13は、i本目の複製データストリームにおけるj個目のブロックに対し鍵Ki,jを用いてメッセージ認証子を生成する。そして、署名手段13は、生成したメッセージ認証子を電子透かしとして各ブロック(すなわち、i本目の複製データストリームにおけるj個目のブロック)に埋め込む。メッセージ認証子を用いることで、共通鍵を持つ検証者(配信サーバ10)がメッセージの内容の変化を検出できるため、メッセージの完全性とその認証を保護することができる。
【0043】
署名手段13は、例えば、以下の参考文献1に記載されているように、共通鍵暗号を用いてメッセージ認証子を生成してもよい。他にも、署名手段13は、以下の参考文献2に記載されているように、鍵付きハッシュ関数を用いてメッセージ認証子を生成してもよい。なお、メッセージ認証子の生成方法は、上記方法に限られない。署名手段13は、配信サーバ10において実現可能な他の方法を用いてメッセージ認証子を生成してもよい。
【0044】
[参考文献1]
James H.Burrows、”FIPS PUB 113 - Computer Data Authentication - the Federal Information Processing Standard publication that defines the Data Authentication Algorithm”、[online]、1985年5月、[平成21年12月9日検索]、インターネット〈 http://www.itl.nist.gov/fipspubs/fip113.htm〉
[参考文献2]
H.Krawczyk、外2名、”RFC 2104 HMAC : Keyed-Hashing for Message Authentication”、[online]、1997年2月、[平成21年12月9日検索]、インターネット〈 URL:http://tools.ietf.org/html/rfc2104〉
【0045】
暗号化手段14は、ブロックごとの鍵情報を用いて、メッセージ認証子が付与された各ブロックを暗号化する。具体的には、暗号化手段14は、メッセージ認証子を電子透かしとして埋め込んだi本目の複製データストリームにおけるj個目のブロックを鍵Ki,jを用いて暗号化する。なお、暗号化手段14が暗号化処理を完了したことで、データストリームを放送する準備が完了する。この後、暗号化手段14は、暗号化したデータストリームをユーザ端末20に対して放送する。
【0046】
図5は、I=2、J=3のとき、署名手段13が各データストリームのブロックにメッセージ認証子を埋め込んだ後、暗号化手段14によって暗号化されたブロックの例を示す説明図である。図5における「x||y」は、データ(ブロック)xに対し、電子透かしyが埋め込まれていることを意味する。また、図5における「mac(x,y)」は、データ(ブロック)xに対し、鍵yを用いて生成したメッセージ認証子を意味する。また、「E(x,y)」は、データ(ブロック)xを鍵yを用いて暗号化した結果を意味する。
【0047】
例えば、図5に例示する(i,j)=(1,1)のブロックは、ブロック1−1に対し、鍵K1,1を用いて生成したメッセージ認証子mac(1−1,K1,1)がブロック1−1に埋め込まれ、メッセージ認証子が埋め込まれたブロック1−1が鍵K1,1を用いて暗号化されたことを示す。
【0048】
受信者特定手段15は、放送したデータストリームの不正な二次流通(不正流通)が存在するか否かを判定し、他の装置に対してデータストリームを送信するユーザ端末20を特定する。なお、受信者特定手段15がユーザ端末20を特定する機能については後述する。
【0049】
事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段15とは、プログラム(ユーザ端末特定プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、配信サーバ10の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、事前鍵割当手段11、分割手段12、署名手段13、暗号化手段14及び受信者特定手段15として動作してもよい。また、事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段15とは、それぞれが専用のハードウェアで実現されていてもよい。
【0050】
ユーザ端末20は、鍵情報記憶手段21と、復号手段22と、再構築手段23とを備えている。なお、鍵情報記憶手段21、復号手段22及び再構築手段23は、上述の制御部(図示せず)に含まれていてもよい。
【0051】
鍵情報記憶手段21は、配信サーバ10の事前鍵割当手段11によって割り当てられたユーザ端末20ごとに一意になるJ個の鍵情報の組を記憶する。
【0052】
例えば、配信サーバ10の公開鍵がユーザ端末20に対して事前に公開されており、ユーザ端末20が備えるメモリ(図示せず)に、その公開鍵が記憶されているものとする。このとき、例えば、システム運用前に、ユーザ端末20の制御部(図示せず)は、乱数を生成し、生成した乱数を公開鍵で暗号化して配信サーバ10に送信する。配信サーバ10は、ユーザ端末20ごとに一意の鍵情報の組を生成し、受信した乱数をもとにその鍵情報を暗号化してユーザ端末20に返信する。制御部(図示せず)は、受信した鍵情報の組を復号したのち、耐タンパ性を備えるモジュール内に鍵情報の組を記憶する。そして、制御部(図示せず)は、そのモジュールを鍵情報記憶手段21に記憶させる。このようにして、鍵情報記憶手段21に鍵情報の組を記憶させてもよい。
【0053】
ここで、耐タンパ性を備えるモジュールとは、例えば、以下の参考文献3に記載されているように、秘密データを外部から不当に観測、改変することや、秘密データの利用制御部を不当に改変することが困難なように意図して作られたモジュールのことを言う。
【0054】
[参考文献3]
松本、井上,「耐タンパーモジュールの認証に関する考察」,Technical report of IEICE. ISEC 97(380),pp.33-44,1997
【0055】
また、システム運用前に安全なチャネルの用意が可能な場合、ユーザ端末20の制御部(図示せず)は、そのチャネルを用いて配信サーバ10から受信した鍵情報を鍵情報記憶手段21に記憶させてもよい。鍵情報記憶手段21は、例えば、ユーザ端末20が備える磁気ディスク等により実現される。
【0056】
復号手段22は、ユーザ端末20ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックを復号する。具体的には、復号手段22は、暗号化された状態で放送されるデータストリーム(以下、暗号化データストリームと記すこともある。)を、鍵情報記憶手段21が記憶するJ個の鍵情報(i,j,Ki,j)を用いて、i本目の暗号化データストリームにおけるj番目のブロックを、計J個復号する。なお、共通鍵暗号の鍵を用いて暗号化されたデータを復号する方法は広く知られているため、ここでは説明を省略する。
【0057】
再構築手段23は、鍵情報を用いて復号された各ブロックを結合してデータストリームを再構築する。具体的には、再構築手段23は、復号手段22が復号したブロック(復号結果)を所定の結合方法によって結合し、データストリームを利用可能な状態にする。このとき、所定の結合方法を、例えば、上述した所定の分割方法で分割する処理と逆方向の処理として定義してもよい。
【0058】
すなわち、再構築手段23は、所定の結合方法として、例えば、データの周波数成分ごとに結合する方法や、時間軸方向に結合する方法を用いてもよい。また、データストリームが映像の場合、再構築手段23は、所定の結合方法として、映像の矩形領域ごとに結合する方法や、色成分ごとに結合する方法、解像度ごとに結合する方法などを用いてもよい。なお、結合方法は、上記方法に限られない。再構築手段23は、ユーザ端末20において実現可能な他の方法を用いてデータストリームを結合してもよい。
【0059】
さらに、再構築手段23は、データストリームの再構築に用いられた各ブロックからメッセージ認証子を抽出する。また、再構築手段23は、予め定められた変換規則に基づいて、メッセージ認証子を変換する。そして、再構築手段23は、再構築されたデータストリームに結合メッセージ認証子を付与する。以下、変換後のメッセージ認証子を結合メッセージ認証子と記す。
【0060】
具体的には、再構築手段23は、復号手段22が復号したJ個のブロックからメッセージ認証子を抽出する。そして、再構築手段23は、ブロック順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換する。さらに、再構築手段23は、各ブロック内に付与されたもとのメッセージ認証子を除去した後、所定の結合方法によって各ブロックを結合し、オリジナルのデータストリームを生成する。そして、再構築手段23は、生成したデータストリームに対して結合メッセージ認証子を電子透かしとして埋め込む。
【0061】
配信サーバ10の受信者特定手段15は、上述の通り、放送したデータストリームの不正な二次流通(不正流通)が存在するか否かを判定し、他の装置に対してデータストリームを送信するユーザ端末20を特定する。受信者特定手段15は、例えば、通信ネットワーク上のトラフィックを定期的に監視して対象のデータストリームを検出し、検出したデータストリームに対してユーザ端末20を特定する処理を行ってもよい。
【0062】
ただし、放送したデータストリームの不正流通が存在するか否かを判定する方法は、上述の方法に限定されない。受信者特定手段15は、例えば、配信サーバ10が備えるハードディスクドライブなどの記憶部(図示せず)にデータストリームを記憶させ、そのデータストリームに対して各処理を行ってもよい。
【0063】
不正流通を発見した場合、受信者特定手段15は、再構築されたデータストリームそれ自体又はそのデータストリームを分割したデータをブロックと決定し、このブロックに対応する鍵情報を用いてメッセージ認証子を生成する。すなわち、受信者特定手段15は、再構築されたデータストリームそれ自体又はそのデータストリームを分割したデータに対応する鍵情報を用いてメッセージ認証子を生成する。そして、受信者特定手段15は、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成し、再構築されたデータストリームから抽出される結合メッセージ認証子と一致するか否かを判定する。両者が一致する場合、受信者特定手段15は、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末20を特定する。
【0064】
具体的には、受信者特定手段15は、ユーザ端末20の再構築手段23が埋め込んだ結合メッセージ認証子と、オリジナルのデータストリームとを分離させる。そして、受信者特定手段15は、オリジナルのデータストリームを所定の分割方法でJ個のブロックに分割する。この分割方法は、分割手段12が分割する方法と同様である。
【0065】
その後、受信者特定手段15は、鍵の組合せが一意になるように、各鍵プールから鍵を1個ずつ選択する。そして、受信者特定手段15は、j個目のブロックに対し鍵プールjから選択した鍵を用いてメッセージ認証子を生成する。メッセージ認証子の生成方法は、署名手段13がメッセージ認証子を生成する方法と同様である。
【0066】
受信者特定手段15は、先頭のブロックからJ個目のブロックまで、それぞれ生成したメッセージ認証子を連接する。そして、受信者特定手段15は、連接したメッセージ認証子をもとに所定の一方向性ハッシュ関数を用いて結合メッセージ認証子を生成し、生成された結合メッセージ認証子と、再構築手段23が埋め込んだ結合メッセージ認証子とを比較する。この比較処理を、可能性のある鍵の組合せについて総当り的に行う。なお、結合メッセージ認証子の生成方法は、再構築手段23が結合メッセージ認証子を生成する方法と同様である。
【0067】
生成した結合メッセージ認証子と、再構築手段23が埋め込んだ結合メッセージ認証子とが一致した場合、受信者特定手段15は、結合メッセージ認証子を算出する際に用いられたJ個のメッセージ認証子の組を生成可能なJ個の鍵情報の組を特定する。そして、受信者特定手段15は、特定したJ個の鍵情報の組に対応付けられたユーザ端末20を、データストリームの送信元と特定する。
【0068】
復号手段22と、再構築手段23とは、プログラム(受信データ再構築プログラム)に従って動作するコンピュータのCPUによって実現される。例えば、プログラムは、ユーザ端末20の記憶部(図示せず)に記憶され、CPUは、そのプログラムを読み込み、プログラムに従って、復号手段22及び再構築手段23として動作してもよい。また、復号手段22と、再構築手段23とは、それぞれが専用のハードウェアで実現されていてもよい。また、再構築手段23は、耐タンパ性を備えるモジュール内に実装され、ユーザ端末20の記憶部(図示せず)に記憶される。
【0069】
次に、動作について説明する。図6は、本実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。まず、本システムによる運用を開始するまでの動作について説明する。
【0070】
システム運用開始前において、配信サーバ10の事前鍵割当手段11は、ユーザ端末20ごとに一意になる鍵情報の組を生成し、生成した鍵情報を各ユーザ端末20に割り当てる(ステップS11)。各ユーザ端末20の制御部(図示せず)は、割り当てられた鍵情報の組を鍵情報記憶手段21に記憶させる(ステップU11)。
【0071】
次に、分割手段12は、放送されるデータストリームを受信者数(より具体的には、ユーザ端末数20)より少ない数に複製し、オリジナルを含む複製データストリームそれぞれをブロックに分割する(ステップS12)。署名手段13は、分割されたブロックごとにメッセージ認証子を生成し、生成したメッセージ認証子を電子透かしとして各ブロックに埋め込む(ステップS13)。そして、暗号化手段14は、メッセージ認証子を埋め込んだブロックを暗号化する(ステップS14)。
【0072】
以上に例示したステップS11〜S14及びステップU11の処理を実行することにより、配信サーバ10は、ユーザ端末20に対してデータストリームを放送することが可能になる。すなわち、システムは、運用を開始できる状態になる、
【0073】
次に、本システムによる運用を開始した後の動作について説明する。
【0074】
システム運用開始後において、配信サーバ10の暗号化手段14は、ブロック単位で暗号化された複数のデータストリームを放送する(ステップS15)。なお、暗号化されて放送されるデータストリームには、オリジナルのデータストリームだけでなく、複製されたデータストリームも含まれる。
【0075】
ユーザ端末20の通信部(図示せず)が複製を含む暗号化されたデータストリームを受信すると(ステップU12)、復号手段22は、複数のデータストリームに含まれるブロックのうち、予め割り当てられた(すなわち、鍵情報記憶手段21に記憶された)鍵情報で復号可能なブロックを復号する(ステップU13)。そして、再構築手段23は、それらを結合してオリジナルのデータストリームを再構築する(ステップU14)。
【0076】
次に、再構築手段23は、データストリームの再構築に用いられた各ブロックからメッセージ認証子を抽出する(ステップU15)。また、再構築手段23は、メッセージ認証子を変換して結合メッセージ認証子を生成する(ステップU16)。そして、再構築手段23は、再構築されたデータストリームに結合メッセージ認証子を付与する(ステップU17)。
【0077】
一方、配信サーバ10の受信者特定手段15は、放送したデータストリームの不正な二次流通(不正流通)があるか否かを判定する(ステップS16)。不正流通を発見できない場合(ステップS16におけるNO)、受信者特定手段15は、ステップS16以降の処理を繰り返す。一方、不正流通を発見できた場合(ステップS16におけるYES)、受信者特定手段15は、そのデータストリームの最初の受信者、すなわち不正流通の出所を特定する(ステップS17)。
【0078】
受信者が特定できた場合、例えば、データストリームの配信者は、受信者に著作権侵害等の警告を与えるなど、不正流通への対策をとることが可能になる。
【0079】
次に、受信者特定手段15が不正流通の出所を特定するステップS17の処理について説明する。図7は、受信者特定手段15が不正流通の出所を特定する(すなわち、データストリームを送信したユーザ端末20を特定する)処理の例を示すフローチャートである。
【0080】
受信者特定手段15は、不正に流通する再構築されたデータストリームを検出する(ステップS171)。受信者特定手段15は、検出したデータストリームを所定の分割方法で少なくとも一つ以上のブロックに分割する(ステップS172)。そして、受信者特定手段15は、各ブロックに対応する鍵情報を用いてメッセージ認証子を生成する(ステップS173)。
【0081】
そのあと、受信者特定手段15は、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成し(ステップS174)、再構築されたデータストリームから抽出される結合メッセージ認証子と一致するか否かを判定する(ステップS175)。両者が一致する場合(ステップS175におけるYES)、受信者特定手段15は、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末20を特定する(ステップS176)。
【0082】
一方、ステップS175において、両者が一致しない場合(ステップS175におけるNO)、受信者特定手段15は、他のメッセージ認証子を対象として結合メッセージ認証子を生成し、生成した結合メッセージ認証子と抽出された結合メッセージとが一致するか否かを判定するステップS174〜S175の処理を繰り返す。
【0083】
以上のように、本実施形態によれば、分割手段12が、データストリームごとに、データストリームそれ自体又は各データストリームを分割したブロックを生成する。そして、署名手段13が、各ブロックに対応する鍵情報を用いてブロックごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックに付与する。暗号化手段14は、各ブロックに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックを暗号化する。一方、復号手段22が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて暗号化されたブロックを復号する。そして、再構築手段23が、鍵情報の組を用いて復号された各ブロックを結合してデータストリームを再構築し、データストリームの再構築に用いられた各ブロックからメッセージ認証子を抽出する。さらに、再構築手段23が、メッセージ認証子を変換した結合メッセージ認証子を生成し、再構築されたデータストリームに結合メッセージ認証子を付与する。
【0084】
そのため、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる。
【0085】
すなわち、本実施形態によれば、ブロックごとに電子透かしとして埋め込んでいたメッセージ認証子を、再構成したデータストリームにただ1個埋め込むように変更している。そのため、受信元が結託してデータブロックを入れ替えるような行為に対して耐性を持たせることが出来る。
【0086】
また、分割手段12が、放送するデータストリームを受信者数より少ないI本のデータストリームに複製して、それぞれのデータストリームを分割し、署名手段13が、分割した各ブロックにメッセージ認証子を埋め込むことで、受信者を一意に特定可能なメッセージ認証子のパターンを増加させている。そのため、データストリームからユーザ端末20を特定できるとともに、通信量が受信者数に比例しないスケーラビリティ性能を備えたシステムを実現できる。
【0087】
実施形態2.
図8は、本発明の第2の実施形態における放送型データストリーム保護システムの例を示すブロック図である。なお、第1の実施形態と同様の構成については、図1と同一の符号を付し、説明を省略する。本実施形態における放送型データストリーム保護システムは、配信サーバ30と、ユーザ端末40とを備えている。
【0088】
配信サーバ30は、第1の実施形態における配信サーバ10と同様、放送されるデータストリームを暗号化して配信する装置である。ユーザ端末40も、第1の実施形態におけるユーザ端末20と同様、配信サーバ30から配信されるデータストリームを受信する装置である。また、図8に例示する放送型データストリーム保護システムでは、ユーザ端末40を1台のみ示しているが、ユーザ端末40は1台に限られず2台以上であってもよい。
【0089】
ユーザ端末40は、鍵情報記憶手段21と、復号手段22と、再構築手段43とを備えている。再構築手段43は、第1の実施形態における再構築手段23と同様に、鍵情報を用いて復号された各ブロックを結合してデータストリームを再構築する。具体的には、再構築手段43は、復号手段22が復号したブロック(復号結果)を所定の結合方法によって結合し、データストリームを利用可能な状態にする。このとき、所定の結合方法を、例えば、第1の実施形態で例示した所定の分割方法で分割する処理と逆方向の処理として定義してもよい。ただし、所定の結合方法は、第1の実施形態で例示した方法に限られず、
ユーザ端末40において実現可能な他の方法であってもよい。
【0090】
配信サーバ30は、事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段35とを備えている。受信者特定手段35は、第1の実施形態における受信者特定手段15と同様、放送したデータストリームの不正な二次流通(不正流通)が存在するか否かを判定し、他の装置に対してデータストリームを送信するユーザ端末40を特定する。
【0091】
不正流通を発見した場合、受信者特定手段35は、再構築されたデータストリームを所定の分割方法で少なくとも一つ以上のブロックに分割し、各ブロックに対応する鍵情報を用いてメッセージ認証子を生成する。そして、受信者特定手段35は、生成された各メッセージ認証子と、再構築されたデータストリームから抽出される各メッセージ認証子とが一致するか否かを判定する。両者が一致する場合、受信者特定手段35は、そのメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末40を特定する。
【0092】
具体的には、不正流通として、例えば、放送されるデータストリームを、インターネット上にアップロードすることなどが想定される。このように、私的利用の範囲を超える二次流通として出回ったデータストリームを発見した場合、受信者特定手段35は、発見したデータストリームを所定の分割方法によって再分割し、再分割されたブロック個々に電子透かしとして埋め込まれたメッセージ認証子とオリジナルのデータストリームとを分離する。
【0093】
受信者特定手段35は、j番目のブロックから分離されたオリジナルのデータストリームをもとに、そのデータストリームに埋め込まれていたメッセージ認証子と同一のメッセージ認証子を計算可能な鍵を、鍵プールjから総当たりで探索する。同一のメッセージ認証子を計算可能な鍵が発見できた場合、受信者特定手段35は、発見したJ個の鍵情報の組に基づいて、データストリームを最初に受信したユーザ端末40(すなわち、データストリームを送信したユーザ端末40)を特定する。
【0094】
事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段35とは、プログラム(受信者特定プログラム)に従って動作するコンピュータのCPUによって実現される。事前鍵割当手段11と、分割手段12と、署名手段13と、暗号化手段14と、受信者特定手段35とは、それぞれが専用のハードウェアで実現されていてもよい。
【0095】
また、復号手段22と、再構築手段43とは、プログラム(受信データ再構築プログラム)に従って動作するコンピュータのCPUによって実現される。復号手段22と、再構築手段43とは、それぞれが専用のハードウェアで実現されていてもよい。また、再構築手段43は、耐タンパ性を備えるモジュール内に実装され、ユーザ端末40の記憶部(図示せず)に記憶される。
【0096】
次に、動作について説明する。図9は、本実施形態における放送型データストリーム保護システムの動作の一例を示すフローチャートである。図6と同様の処理については、同一の符号を付し、詳細な説明を省略する。すなわち、本システムによる運用を開始するまでのステップS11〜S14,U11における処理、及び、本システムの運用開始後に放送された暗号化データストリームをユーザ端末40の再構築手段43が再構築するまでのステップS15,U12〜U14における処理は、図6に例示する処理と同様である。
【0097】
配信サーバ30の受信者特定手段35は、放送したデータストリームの不正な二次流通(不正流通)があるか否かを判定する(ステップS16)。不正流通を発見できない場合(ステップS16におけるNO)、受信者特定手段35は、ステップS16以降の処理を繰り返す。一方、不正流通を発見できた場合(ステップS16におけるYES)、受信者特定手段35は、そのデータストリームの最初の受信者、すなわち不正流通の出所を特定する(ステップS18)。
【0098】
次に、受信者特定手段35が不正流通の出所を特定するステップS18の処理について説明する。図10は、受信者特定手段35が不正流通の出所を特定する(すなわち、データストリームを送信したユーザ端末40を特定する)処理の例を示すフローチャートである。
【0099】
受信者特定手段35は、不正に流通する再構築されたデータストリームを検出する(ステップS181)。受信者特定手段35は、検出したデータストリームを所定の分割方法で少なくとも一つ以上のブロックに分割する(ステップS182)。そして、受信者特定手段35は、各ブロックに対応する鍵情報を用いてメッセージ認証子を生成する(ステップS183)。
【0100】
そのあと、受信者特定手段35は、生成された各メッセージ認証子と、再構築されたデータストリームから抽出される各メッセージ認証子とが一致するか否かを判定する(ステップS184)。両者が一致する場合(ステップS184におけるYES)、受信者特定手段35は、そのメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末40を特定する(ステップS185)。
【0101】
一方、ステップS184において、両者が一致しない場合(ステップS184におけるNO)、受信者特定手段35は、鍵情報を用いて生成される他のメッセージ認証子と抽出された結合メッセージ認証子とが一致するか否かを判定するステップS175の処理を繰り返す。
【0102】
以上のように、本実施形態においても、データストリームの配信先を特定できるため、放送されるデータストリームを保護することは可能である。ただし、第1の実施形態では、再構築手段23が、メッセージ認証子を変換した結合メッセージ認証子を作成し、再構築されたデータストリームにその結合メッセージ認証子を付与する。また、受信者特定手段15が、生成した結合メッセージ認証子と、再構築されたデータストリームから抽出される結合メッセージ認証子とが一致するか否かを判定する。そして、両者が一致する場合、受信者特定手段15が、結合メッセージ認証子を作成する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末20を特定する。
【0103】
そのため、第1の実施形態は、本実施形態における効果に加え、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても配信先を特定できるため、データ保護の観点からより好ましいと言える。
【0104】
次に、本発明の最小構成について説明する。図11は、本発明による放送型データストリーム保護システムの最小構成の例を示すブロック図である。また、図12は、本発明によるユーザ端末の最小構成の例を示すブロック図である。
【0105】
本発明による放送型データストリーム保護システムは、データストリームを暗号化して配信する配信サーバ80(例えば、配信サーバ10)と、配信サーバ80から配信されるデータストリームを受信するユーザ端末90(例えば、ユーザ端末20)とを備えている(図11参照。)。
【0106】
配信サーバ80は、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して(例えば、受信者数より少ないI本のデータストリームに対して)、各データストリームごとに、データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定するデータ分割手段81(例えば、分割手段12)と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報(例えば、鍵情報(i,j,Ki,j))を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段82(例えば、署名手段13)と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段83(例えば、暗号化手段14)とを備えている(図11参照。)。
【0107】
また、ユーザ端末90は、ユーザ端末ごとに一意に割り当てられた鍵情報の組(例えば、図3に例示する鍵情報の組)を用いて、暗号化されたブロックデータを復号する復号手段91(例えば、復号手段22)と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段92(例えば、再構築手段23)と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段93(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段94(例えば、再構築手段23)と、再構築されたデータストリームに結合メッセージ認証子を付与する(例えば、電子透かしとして埋め込む)結合メッセージ認証子付与手段95(例えば、再構築手段23)とを備えている(図11,図12参照。)。
【0108】
次に、本発明の他の最小構成について説明する。図13は、本発明による配信サーバの最小構成の例を示すブロック図である。本発明による配信サーバ70は、データ分割手段81(例えば、分割手段12)と、署名手段82(例えば、署名手段13)と、暗号化手段83(例えば、暗号化手段14)と、ユーザ端末特定手段84(例えば、再構築手段23)とを備えている。なお、データ分割手段81、署名手段82及び暗号化手段83については、図11に例示する内容と同様である。
【0109】
ユーザ端末特定手段84は、ユーザ端末90が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定する再構築データ分割手段85(例えば、再構築手段23)と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段86(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段87(例えば、再構築手段23)と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末90を特定するユーザ端末判定手段88(例えば、再構築手段23)とを含む。
【0110】
以上に例示する放送型データストリーム保護システム、配信サーバ及びユーザ端末それぞれの最小構成により、放送されるデータストリームの配信先で、データストリームの一部が他の配信先のデータストリームと入れ替えられても、配信先を特定してデータストリームを保護できる。
【0111】
なお、少なくとも以下に示すような放送型データストリーム保護システム、配信サーバ及びユーザ端末も、上記に示すいずれかの実施形態に開示されている。
【0112】
(1)データストリームを暗号化して配信する配信サーバ(例えば、配信サーバ10)と、配信サーバから配信されるデータストリームを受信するユーザ端末(例えば、ユーザ端末20)とを備え、配信サーバが、データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して(例えば、受信者数より少ないI本のデータストリームに対して)、各データストリームごとに、データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定するデータ分割手段(例えば、分割手段12)と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報(例えば、鍵情報(i,j,Ki,j))を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段(例えば、署名手段13)と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段(例えば、暗号化手段14)とを備え、ユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組(例えば、図3に例示する鍵情報の組)を用いて、暗号化されたブロックデータを復号する復号手段(例えば、復号手段22)と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段(例えば、再構築手段23)と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段(例えば、再構築手段23)と、再構築されたデータストリームに結合メッセージ認証子を付与する(例えば、電子透かしとして埋め込む)結合メッセージ認証子付与手段(例えば、再構築手段23)とを備えた放送型データストリーム保護システム。
【0113】
(2)配信サーバが、データストリームを送信するユーザ端末を特定するユーザ端末特定手段(例えば、受信者特定手段15)を備え、ユーザ端末特定手段が、再構築されたデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定する再構築データ分割手段(例えば、受信者特定手段15)と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段(例えば、受信者特定手段15)と、所定の変換規則に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段(例えば、受信者特定手段15)と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段(例えば、受信者特定手段15)とを含む放送型データストリーム保護システム。
【0114】
(3)配信サーバが、ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当手段(例えば、事前鍵割当手段11)を備え、ユーザ端末が、ユーザ端末ごとに割り当てられる鍵情報の組を記憶する鍵情報記憶手段(例えば、鍵情報記憶手段21)を備え、鍵情報割当手段が、ブロックデータごとに設けられ、データストリームを複製した数分(例えば、I個)の共通鍵暗号の鍵を含む鍵プール(例えば、鍵プールj)のそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、対応するユーザ端末の鍵情報記憶手段に作成した鍵情報の組を記憶させる放送型データストリーム保護システム。
【0115】
(4)データストリームに対して、又は、データストリームを含みそのデータストリームから複製されたデータストリーム群に対して(例えば、受信者数より少ないI本のデータストリームに対して)、各データストリームごとに、データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、J個のブロック)と決定するデータ分割手段(例えば、分割手段12)と、ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報(例えば、鍵情報(i,j,Ki,j))を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段(例えば、署名手段13)と、ブロックデータに対応する鍵情報を用いて、メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段(例えば、暗号化手段14)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末(例えば、ユーザ端末20)を特定するユーザ端末特定手段(例えば、再構築手段23)とを備え、ユーザ端末特定手段が、ユーザ端末が送信するデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータをブロックデータ(例えば、ブロック)と決定する再構築データ分割手段(例えば、再構築手段23)と、ブロックデータに対応する鍵情報を用いてブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段(例えば、再構築手段23)と、結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、その結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段(例えば、再構築手段23)とを含む配信サーバ。
【0116】
(5)データストリームそれ自体又はデータストリームを分割(例えば、データの周波数成分ごとに分割、時間軸方向に分割)したデータであるブロックデータ(例えば、ブロック)をそのブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバ(例えば、配信サーバ10)からブロックデータを受信するユーザ端末であって、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報(例えば、鍵情報(i,j,Ki,j))の組を用いて、暗号化されたブロックデータを復号する復号手段(例えば、復号手段22)と、鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段(例えば、再構築手段23)と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段(例えば、再構築手段23)と、所定の変換規則(例えば、一方向性ハッシュ関数)に基づいてメッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段(例えば、再構築手段23)と、再構築されたデータストリームに結合メッセージ認証子を付与する結合メッセージ認証子付与手段(例えば、再構築手段23)とを備えたユーザ端末。
【0117】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【0118】
(付記1)データストリームを配信する配信サーバと、前記配信サーバから配信されるデータストリームを受信するユーザ端末とを備え、前記配信サーバは、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段とを備え、前記ユーザ端末は、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とする放送型データストリーム保護システム。
【0119】
(付記2)配信サーバは、データストリームを送信するユーザ端末を特定するユーザ端末特定手段を備え、前記ユーザ端末特定手段は、再構築されたデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含む付記1記載の放送型データストリーム保護システム。
【0120】
(付記3)配信サーバは、ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当手段を備え、ユーザ端末は、ユーザ端末ごとに割り当てられる鍵情報の組を記憶する鍵情報記憶手段を備え、前記鍵情報割当手段は、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、対応するユーザ端末の前記鍵情報記憶手段に作成した鍵情報の組を記憶させる付記1または付記2記載の放送型データストリーム保護システム。
【0121】
(付記4)結合メッセージ認証子生成手段は、ブロックデータ順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換する付記1から付記3のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0122】
(付記5)データ分割手段は、ユーザ端末数より少ない数のデータストリーム群に対して、ブロックデータを決定する付記1から付記4のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0123】
(付記6)結合メッセージ認証子付与手段は、結合メッセージ認証子を電子透かしとしてデータストリームに埋め込む付記1から付記5のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0124】
(付記7)データ分割手段は、データストリームの周波数成分ごとに分割する方法、データストリームに対して時間軸方向に分割する方法、映像データストリームに対して矩形領域ごとに分割する方法、映像データストリームに対して色成分ごとに分割する方法、もしくは、映像データストリームに対して解像度ごとに分割する方法のうちの少なくともいずれかの方法で分割したデータストリームをブロックデータと決定する付記1から付記6のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0125】
(付記8)データ再構築手段は、データ分割手段が分割する方法と逆方向の処理として定義される方法を用いて復号された各ブロックデータを結合してデータストリームを再構築する付記1から付記7のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0126】
(付記9)鍵情報割当手段は、公開鍵暗号における公開鍵と秘密鍵のペアを生成し、当該公開鍵を用いて暗号化された乱数をユーザ端末から受信したときに、ユーザ端末ごとに一意の共通鍵暗号の鍵であるマスタ鍵を生成し、当該マスタ鍵を用いて個別に暗号化した鍵情報を前記ユーザ端末に送信する付記3記載の放送型データストリーム保護システム。
【0127】
(付記10)ユーザ端末は、ユーザ端末ごとに割り当てられる鍵情報の組を鍵情報記憶手段に記憶させる鍵情報登録手段を備え、前記鍵情報登録手段は、公開鍵を用いて暗号化した乱数を配信サーバに送信し、暗号化された鍵情報を配信サーバから受信したときに、受信した鍵情報の組を復号し、復号した鍵情報の組を鍵情報記憶手段に記憶させる付記9記載の放送型データストリーム保護システム。
【0128】
(付記11)再構築データ認証子生成手段は、鍵プールのそれぞれから1つずつ鍵を選択して、一意になる鍵情報の組を作成し、当該鍵情報を用いてブロックデータごとのメッセージ認証子を生成する付記2記載の放送型データストリーム保護システム。
【0129】
(付記12)データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定手段とを備え、前記ユーザ端末特定手段は、前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含むことを特徴とする配信サーバ。
【0130】
(付記13)データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末であって、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号手段と、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えたことを特徴とするユーザ端末。
【0131】
(付記14)データストリームを配信する配信サーバが、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、前記配信サーバが、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、前記配信サーバが、生成したメッセージ認証子を各ブロックデータに付与し、前記配信サーバが、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、前記配信サーバから配信されるデータストリームを受信するユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与することを特徴とする放送型データストリーム保護方法。
【0132】
(付記15)配信サーバが、再構築されたデータストリームに対して、そのデータストリームそれ自体又はそのデータストリームを分割したデータをブロックデータと決定し、配信サーバが、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成し、配信サーバが、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成し、配信サーバが、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定する付記14記載の放送型データストリーム保護方法。
【0133】
(付記16)配信サーバが、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、作成した鍵情報の組を対応するユーザ端末の鍵情報記憶手段に記憶させる付記14または付記15記載の放送型データストリーム保護システム。
【0134】
(付記17)ユーザ端末が、結合メッセージ認証子を生成する際、ブロックデータ順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換する付記14から付記16のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0135】
(付記18)配信サーバが、ブロックデータを生成する際、ユーザ端末数より少ない数のデータストリーム群に対して、ブロックデータを決定する付記14から付記17のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0136】
(付記19)ユーザ端末が、結合メッセージ認証子を付与する際、結合メッセージ認証子を電子透かしとしてデータストリームに埋め込む付記14から付記18のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0137】
(付記20)配信サーバが、ブロックデータを生成する際、データストリームの周波数成分ごとに分割する方法、データストリームに対して時間軸方向に分割する方法、映像データストリームに対して矩形領域ごとに分割する方法、映像データストリームに対して色成分ごとに分割する方法、もしくは、映像データストリームに対して解像度ごとに分割する方法のうちの少なくともいずれかの方法で分割したデータストリームをブロックデータと決定する付記14から付記19のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0138】
(付記21)ユーザ端末が、データストリームを再構築する際、ブロックデータを生成する方法と逆方向の処理として定義される方法を用いて復号された各ブロックデータを結合することによりデータストリームを再構築する付記14から付記20のうちのいずれか1つに記載の放送型データストリーム保護方法。
【0139】
(付記22)配信サーバが、鍵情報の組を割り当てる際、公開鍵暗号における公開鍵と秘密鍵のペアを生成し、当該公開鍵を用いて暗号化された乱数をユーザ端末から受信したときに、ユーザ端末ごとに一意の共通鍵暗号の鍵であるマスタ鍵を生成し、当該マスタ鍵を用いて個別に暗号化した鍵情報を前記ユーザ端末に送信する付記16記載の放送型データストリーム保護方法。
【0140】
(付記23)ユーザ端末が、公開鍵を用いて暗号化した乱数を配信サーバに送信し、暗号化された鍵情報を配信サーバから受信したときに、受信した鍵情報の組を復号し、復号した鍵情報の組を鍵情報記憶手段に記憶させる付記22記載の放送型データストリーム保護方法。
【0141】
(付記24)配信サーバが、メッセージ認証子を生成する際、鍵プールのそれぞれから1つずつ鍵を選択して、一意になる鍵情報の組を作成し、当該鍵情報を用いてブロックデータを生成するごとのメッセージ認証子を生成する付記15記載の放送型データストリーム保護方法。
【0142】
(付記25)データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与し、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定し、ユーザ端末を特定する際に、ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定し、ブロックデータ対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成し、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成し、前記結合メッセージ認証子が再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定することを特徴とするユーザ端末特定方法。
【0143】
(付記26)データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末が、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号し、前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与することを特徴とする受信データ再構築方法。
【0144】
(付記27)コンピュータに、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割処理、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名処理、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化処理、および、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定処理を実行させ、前記ユーザ端末特定処理で、前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割処理、ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成処理、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合処理、および、前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定処理を実行させるためのユーザ端末特定プログラム。
【0145】
(付記28)コンピュータに、ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当処理を実行させ、前記鍵情報割当処理で、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成させ、対応するユーザ端末の鍵情報記憶手段に作成した鍵情報の組を記憶させる付記27記載のユーザ端末特定プログラム。
【0146】
(付記29)コンピュータに、ユーザ端末数より少ない数のデータストリーム群に対して、ブロックデータを決定させる付記27または付記28記載のユーザ端末特定プログラム。
【0147】
(付記30)コンピュータに、データ分割処理で、データストリームの周波数成分ごとに分割する方法、データストリームに対して時間軸方向に分割する方法、映像データストリームに対して矩形領域ごとに分割する方法、映像データストリームに対して色成分ごとに分割する方法、もしくは、映像データストリームに対して解像度ごとに分割する方法のうちの少なくともいずれかの方法で分割したデータストリームをブロックデータと決定する付記27から請求項29のうちのいずれか1つに記載のユーザ端末特定プログラム。
【0148】
(付記31)コンピュータに、鍵情報割当処理で、公開鍵暗号における公開鍵と秘密鍵のペアを生成させ、当該公開鍵を用いて暗号化された乱数をユーザ端末から受信したときに、ユーザ端末ごとに一意の共通鍵暗号の鍵であるマスタ鍵を生成させ、当該マスタ鍵を用いて個別に暗号化した鍵情報を前記ユーザ端末に送信させる付記28記載のユーザ端末特定プログラム。
【0149】
(付記32)コンピュータに、再構築データ認証子生成処理で、鍵プールのそれぞれから1つずつ鍵を選択して、一意になる鍵情報の組を作成させ、当該鍵情報を用いてブロックデータごとのメッセージ認証子を生成させる付記27から請求項31のうちのいずれか1つに記載の放送型データストリーム保護システム。
【0150】
(付記33)データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するコンピュータに適用される受信データ再構築プログラムであって、前記コンピュータに、ブロックデータごとの暗号化及び復号に用いられる情報としてコンピュータごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号処理、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築処理、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出処理、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成処理、および、再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与処理を実行させるための受信データ再構築プログラム。
【0151】
(付記34)コンピュータに、結合メッセージ認証子生成処理で、ブロックデータ順に連接したメッセージ認証子を、所定の一方向性ハッシュ関数を用いて結合メッセージ認証子に変換させる付記33記載の受信データ再構築プログラム。
【0152】
(付記35)コンピュータに、結合メッセージ認証子付与処理で、結合メッセージ認証子を電子透かしとしてデータストリームに埋め込ませる付記33または付記34記載の受信データ再構築プログラム。
【0153】
(付記36)コンピュータに、データ再構築処理で、データ分割処理で分割させた方法と逆方向の処理として定義される方法を用いて復号された各ブロックデータを結合してデータストリームを再構築させる付記33から付記35のうちのいずれか1つに記載の受信データ再構築プログラム。
【0154】
(付記37)コンピュータに、ユーザ端末ごとに割り当てられる鍵情報の組を鍵情報記憶手段に記憶させる鍵情報登録処理を実行させ、前記鍵情報登録処理で、公開鍵を用いて暗号化した乱数を配信サーバに送信させ、暗号化された鍵情報を配信サーバから受信したときに、受信した鍵情報の組を復号させ、復号させた鍵情報の組を鍵情報記憶手段に記憶させる請求項33記載の受信データ再構築プログラム。
【産業上の利用可能性】
【0155】
本発明は、配信サーバから放送されるデータストリームの受信元を特定し、二次利用抑止などを可能とする放送型データストリーム保護システムに好適に適用される。なお、この配信サーバから放送される情報として、例えば、IPTV(Internet Protocol Television)に代表されるIP放送によるデータ送信、デジタルサイネージなどのクライアント数が大規模なサーバクライアント型ネットワークにおけるダウンストリームなどが想定される。
【0156】
例えば、IP放送においては、配信サーバが最初の受信先を特定できるので、不正な二次流通を抑止することができる。一方、家族間の複製など、私的利用の範囲における複製については利便性の維持が可能である。
【0157】
また、本発明を、デジタルサイネージにも応用可能である。例えば、サーバからのダウンストリームとして配信される電子広告の配信先端末において、広告を参照したユーザに意図的にコピーを配布する。このようにすることで、商品の販売時などにおいて、どの配信先端末でその電子公告が参照されたかを広告主に伝達することが可能である。また、この仕組みを利用して、アフィリエイト型(成功報酬型)の広告モデルにも応用可能である。
【符号の説明】
【0158】
10,30 配信サーバ
11 事前鍵割当手段
12 分割手段
13 署名手段
14 暗号化手段
15,35 受信者特定手段
20,40 ユーザ端末
21 鍵情報記憶手段
22 復号手段
23,43 再構築手段
100 通信ネットワーク
【特許請求の範囲】
【請求項1】
データストリームを配信する配信サーバと、
前記配信サーバから配信されるデータストリームを受信するユーザ端末とを備え、
前記配信サーバは、
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段とを備え、
前記ユーザ端末は、
ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、
前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、
データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、
再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えた
ことを特徴とする放送型データストリーム保護システム。
【請求項2】
配信サーバは、
データストリームを送信するユーザ端末を特定するユーザ端末特定手段を備え、
前記ユーザ端末特定手段は、
再構築されたデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、
ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、
前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含む
請求項1記載の放送型データストリーム保護システム。
【請求項3】
配信サーバは、
ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当手段を備え、
ユーザ端末は、
ユーザ端末ごとに割り当てられる鍵情報の組を記憶する鍵情報記憶手段を備え、
前記鍵情報割当手段は、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、対応するユーザ端末の前記鍵情報記憶手段に作成した鍵情報の組を記憶させる
請求項1または請求項2記載の放送型データストリーム保護システム。
【請求項4】
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定手段とを備え、
前記ユーザ端末特定手段は、
前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、
ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、
前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含む
ことを特徴とする配信サーバ。
【請求項5】
データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末であって、
ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号手段と、
前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、
データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、
再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えた
ことを特徴とするユーザ端末。
【請求項6】
データストリームを配信する配信サーバが、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、
前記配信サーバが、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、
前記配信サーバが、生成したメッセージ認証子を各ブロックデータに付与し、
前記配信サーバが、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、
前記配信サーバから配信されるデータストリームを受信するユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、
前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、
前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、
前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、
前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与する
ことを特徴とする放送型データストリーム保護方法。
【請求項7】
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、
生成したメッセージ認証子を各ブロックデータに付与し、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定し、
ユーザ端末を特定する際に、ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定し、ブロックデータに対応する鍵情報を用いて前記ブロックデータタごとのメッセージ認証子を生成し、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成し、前記結合メッセージ認証子が再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定する
ことを特徴とするユーザ端末特定方法。
【請求項8】
データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末が、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号し、
前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、
前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、
前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、
前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与する
ことを特徴とする受信データ再構築方法。
【請求項9】
コンピュータに、
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割処理、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名処理、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化処理、および、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定処理を実行させ、
前記ユーザ端末特定処理で、
前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割処理、
ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成処理、
所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合処理、および、
前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定処理
を実行させるためのユーザ端末特定プログラム。
【請求項10】
データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するコンピュータに適用される受信データ再構築プログラムであって、
前記コンピュータに、
ブロックデータごとの暗号化及び復号に用いられる情報としてコンピュータごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号処理、
前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築処理、
データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出処理、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成処理、および、
再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与処理
を実行させるための受信データ再構築プログラム。
【請求項1】
データストリームを配信する配信サーバと、
前記配信サーバから配信されるデータストリームを受信するユーザ端末とを備え、
前記配信サーバは、
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段とを備え、
前記ユーザ端末は、
ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号する復号手段と、
前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、
データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、
再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えた
ことを特徴とする放送型データストリーム保護システム。
【請求項2】
配信サーバは、
データストリームを送信するユーザ端末を特定するユーザ端末特定手段を備え、
前記ユーザ端末特定手段は、
再構築されたデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、
ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、
前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含む
請求項1記載の放送型データストリーム保護システム。
【請求項3】
配信サーバは、
ユーザ端末ごとに一意になる鍵情報の組を割り当てる鍵情報割当手段を備え、
ユーザ端末は、
ユーザ端末ごとに割り当てられる鍵情報の組を記憶する鍵情報記憶手段を備え、
前記鍵情報割当手段は、ブロックデータごとに設けられ、データストリームを複製した数分の共通鍵暗号の鍵を含む鍵プールのそれぞれから1つずつ鍵を選択して、ユーザ端末ごとに一意になる鍵情報の組を作成し、対応するユーザ端末の前記鍵情報記憶手段に作成した鍵情報の組を記憶させる
請求項1または請求項2記載の放送型データストリーム保護システム。
【請求項4】
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割手段と、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名手段と、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定手段とを備え、
前記ユーザ端末特定手段は、
前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割手段と、
ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合手段と、
前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定手段とを含む
ことを特徴とする配信サーバ。
【請求項5】
データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末であって、
ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号手段と、
前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築手段と、
データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出手段と、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成手段と、
再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与手段とを備えた
ことを特徴とするユーザ端末。
【請求項6】
データストリームを配信する配信サーバが、データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、
前記配信サーバが、前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、
前記配信サーバが、生成したメッセージ認証子を各ブロックデータに付与し、
前記配信サーバが、前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、
前記配信サーバから配信されるデータストリームを受信するユーザ端末が、ユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化されたブロックデータを復号し、
前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、
前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、
前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、
前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与する
ことを特徴とする放送型データストリーム保護方法。
【請求項7】
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定し、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、
生成したメッセージ認証子を各ブロックデータに付与し、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化し、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定し、
ユーザ端末を特定する際に、ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定し、ブロックデータに対応する鍵情報を用いて前記ブロックデータタごとのメッセージ認証子を生成し、所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成し、前記結合メッセージ認証子が再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定する
ことを特徴とするユーザ端末特定方法。
【請求項8】
データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するユーザ端末が、ブロックデータごとの暗号化及び復号に用いられる情報としてユーザ端末ごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号し、
前記ユーザ端末が、前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築し、
前記ユーザ端末が、データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出し、
前記ユーザ端末が、所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成し、
前記ユーザ端末が、再構築されたデータストリームに前記結合メッセージ認証子を付与する
ことを特徴とする受信データ再構築方法。
【請求項9】
コンピュータに、
データストリームに対して、又は、データストリームを含み当該データストリームから複製されたデータストリーム群に対して、各データストリームごとに、データストリームそれ自体又はデータストリームを分割したデータをブロックデータと決定するデータ分割処理、
前記ブロックデータごとの暗号化及び復号に用いられる情報である鍵情報を用いて、ブロックデータごとにメッセージ認証子を生成し、生成したメッセージ認証子を各ブロックデータに付与する署名処理、
前記ブロックデータに対応する鍵情報を用いて、前記メッセージ認証子が付与された各ブロックデータを暗号化する暗号化処理、および、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を付与したデータストリームを送信するユーザ端末を特定するユーザ端末特定処理を実行させ、
前記ユーザ端末特定処理で、
前記ユーザ端末が送信するデータストリームに対して、当該データストリームそれ自体又は当該データストリームを分割したデータをブロックデータと決定する再構築データ分割処理、
ブロックデータに対応する鍵情報を用いて前記ブロックデータごとのメッセージ認証子を生成する再構築データ認証子生成処理、
所定の変換規則に基づいて前記メッセージ認証子を変換した結合メッセージ認証子を生成する再構築データ認証子結合処理、および、
前記結合メッセージ認証子が、再構築されたデータストリームから抽出される結合メッセージ認証子と一致する場合に、当該結合メッセージ認証子を変換する際に用いたメッセージ認証子の組に対応する鍵情報の組をもとに、再構築されたデータストリームを送信するユーザ端末を特定するユーザ端末判定処理
を実行させるためのユーザ端末特定プログラム。
【請求項10】
データストリームそれ自体又はデータストリームを分割したデータであるブロックデータを当該ブロックデータごとに付与されるメッセージ認証子と共に暗号化して配信する配信サーバから前記ブロックデータを受信するコンピュータに適用される受信データ再構築プログラムであって、
前記コンピュータに、
ブロックデータごとの暗号化及び復号に用いられる情報としてコンピュータごとに一意に割り当てられた鍵情報の組を用いて、暗号化された前記ブロックデータを復号する復号処理、
前記鍵情報の組を用いて復号された各ブロックデータを結合してデータストリームを再構築するデータ再構築処理、
データストリームの再構築に用いられた各ブロックデータからメッセージ認証子を抽出するメッセージ認証子抽出処理、
所定の変換規則に基づいて前記メッセージ認証子を変換した情報である結合メッセージ認証子を生成する結合メッセージ認証子生成処理、および、
再構築されたデータストリームに前記結合メッセージ認証子を付与する結合メッセージ認証子付与処理
を実行させるための受信データ再構築プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2011−199515(P2011−199515A)
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願番号】特願2010−63116(P2010−63116)
【出願日】平成22年3月18日(2010.3.18)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
【公開日】平成23年10月6日(2011.10.6)
【国際特許分類】
【出願日】平成22年3月18日(2010.3.18)
【出願人】(000004237)日本電気株式会社 (19,353)
【Fターム(参考)】
[ Back to top ]