JP4171346B2 - コンテンツ配信システム及びコンテンツ配信方法 - Google Patents
コンテンツ配信システム及びコンテンツ配信方法 Download PDFInfo
- Publication number
- JP4171346B2 JP4171346B2 JP2003135125A JP2003135125A JP4171346B2 JP 4171346 B2 JP4171346 B2 JP 4171346B2 JP 2003135125 A JP2003135125 A JP 2003135125A JP 2003135125 A JP2003135125 A JP 2003135125A JP 4171346 B2 JP4171346 B2 JP 4171346B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- content
- random number
- receiver
- candidate
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Description
【発明の属する技術分野】
本発明は、配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信システム及びコンテンツ配信方法に関し、特に受信者に共通の情報を付与する場合であっても受信者の不正を防止することが可能なコンテンツ配信システム等に関する。
【0002】
【従来の技術】
近年、電子商取引等の分野においてコンテンツの配信が活発に行われている。このコンテンツが有料の音楽情報・映像情報、または個人情報等である場合は配信時に暗号化がされることが多い。暗号化されたコンテンツは受信者のコンピュータまたはチューナ等で復号され音楽を聴き、映画を閲覧し、株等の商取引の情報を閲覧し、または電子政府により発行された住民票等を取得することができる。
【0003】
コンテンツの配信時には一般的には、暗号鍵にてコンテンツを暗号化して配信し、受信者の受信装置により予め付与された復号鍵により暗号化されたコンテンツを復号する。従来、衛星によるコンテンツ配信における鍵の配信システムとして、非特許文献1に開示されたものが知られている。
【0004】
図6は従来の配信システムの概要を示す説明図である。図6において100は放送局側に設置されるサーバコンピュータ、200は各受信者が所有するチューナである。放送局側のサーバコンピュータ100はテレビ番組等のコンテンツをコンテンツ鍵Kcにより暗号化する。サーバコンピュータ100はコンテンツ鍵Kcをチューナ200に送信するためにワーク鍵Kwで暗号化する。さらに、ワーク鍵Kwは、受信者固有のマスタ鍵Kmにより暗号化される。なお、コンテンツ鍵Kc及びワーク鍵Kwは全受信者に共通の情報であり、ワーク鍵Kwは事業者毎に異なる鍵である。コンテンツ鍵Kcをワーク鍵Kwにより暗号化する場合は、コンテンツも共に暗号化される。共通の情報であるコンテンツ鍵Kc及びワーク鍵Kwで暗号化された情報は、全受信者に共通であるため共通情報(ECM)といわれる。
【0005】
ワーク鍵Kwをマスタ鍵Kmで暗号化する場合は、受信者毎に異なる契約情報も暗号化され、受信者に配信される。このように、各ユーザ個別の情報をユーザ毎に付与されるマスタ鍵Kmで暗号化される情報は、ユーザ毎に異なるため個別情報(EMM)といわれる。以上説明した暗号化されたコンテンツ、コンテンツ鍵Kc、ワーク鍵Kw等はチューナ200に多重化されて配信される。受信者が、視聴を希望するコンテンツを申し込んだ場合、放送局側のサーバコンピュータ100は該受信者のマスタ鍵Kmにより、ワーク鍵Kwを契約情報と共に暗号化し、そのワーク鍵Kwにより視聴申込のあったコンテンツを復号するためのコンテンツ鍵Kcを暗号化した上で、コンテンツ鍵Kcにより暗号化されたコンテンツを受信者のチューナ200に配信する。
【0006】
受信者側にはマスタ鍵Kmが格納されたICカードが予め配布され、チューナ200に挿入されている。チューナ200はICカードに格納されたマスタ鍵Kmにより、ワーク鍵Kwを取り出し、さらにこのワーク鍵Kwによりコンテンツ鍵Kcを取り出す。最後にコンテンツ鍵Kcを用いてコンテンツを復号する。受信者毎に異なる契約情報はICカード内に含まれる契約情報と比較され、同じ時に限り暗号化が解除される。
【0007】
【非特許文献1】
山崎 滋”ディジタル放送用限定受信システム”、画像電子学会誌,Vol.31, No3, pp324-333(2002)
【0008】
【発明が解決しようとする課題】
しかしながら、従来の方式は、暗号化されたコンテンツ等の共通情報と共に、各受信者の個別情報が多重化して配信されるため、申込を行う受信者が増加するにつれ、個人情報が増大し、暗号化したコンテンツを使用することのできる帯域が減少するという問題が生じた。
【0009】
本発明は斯かる事情に鑑みてなされたものであり、その目的とするところは、予め、各受信者固有の受信者鍵及び複数の各受信者共通の候補鍵を受信者に配布しておき、配信装置からは全ての受信者に共通の共通情報を送信することにより、コンテンツ配信の度に固有情報を配信する必要がなく、また不正利用を試みる受信者を容易に特定でき、さらに高いセキュリティを維持することが可能なコンテンツ配信システム及び該コンテンツシステムに適用されるコンテンツ配信方法を提供することにある。
【0010】
また、本発明の他の目的は予め配布する複数の各受信者共通の候補鍵を並び替えて配布することにより、悪意のある複数の受信者が結託して不正な受信者鍵を生成することを防止することが可能なコンテンツ配信システムを提供することにある。
【0011】
さらに、本発明の他の目的は受信者毎に固有の系列を生成し、候補鍵をこの固有の系列に従い生成させることにより、この系列を利用せんとする不正受信者を容易に特定することが可能なコンテンツ配信システムを提供することにある。
【0012】
【課題を解決するための手段】
本発明に係るコンテンツ配信システムは、配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信システムにおいて、前記配信装置は、前記受信装置を利用する受信者に固有の受信者鍵を生成する受信者鍵生成手段と、主乱数及び副乱数を生成させ、前記受信者鍵生成手段により生成された各受信者の受信者鍵、前記生成した主乱数及び副乱数に基づき、複数の候補鍵を生成する候補鍵生成手段と、コンテンツをコンテンツ鍵により暗号化するコンテンツ暗号化手段と、前記コンテンツ鍵及び前記主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する共通情報生成手段と、共通情報生成手段により生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを前記受信装置へ配信する配信手段とを備え、前記受信装置は、前記受信者鍵生成手段により生成された受信者鍵、前記候補鍵生成手段により生成された候補鍵を記憶する鍵情報記憶手段と、前記配信手段により、共通情報及び暗号化されたコンテンツが配信された場合、前記鍵情報記憶手段に記憶した受信者鍵、候補鍵、前記共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する算出手段と、算出したコンテンツ鍵により前記コンテンツを復号する復号手段とを備えることを特徴とする。
【0013】
本発明に係るコンテンツ配信システムは、前記配信装置は、前記候補鍵生成手段により生成された複数の候補鍵の順序を並び替える並び替え手段を更に備えることを特徴とする。
【0014】
本発明に係るコンテンツ配信システムは、前記配信装置は、さらに受信者毎に固有の系列を生成する系列生成手段を更に備え、前記候補鍵生成手段は、前記系列生成手段により生成された系列に応じて、前記生成した副乱数を、前記受信者鍵生成手段により生成された各受信者の受信者鍵及び主乱数に当てはめることにより複数の候補鍵を生成するよう構成してあることを特徴とする。
【0015】
本発明に係るコンテンツ配信システムは、前記配信装置は、前記コンテンツ鍵の正当性を判断するための確認情報を生成する確認情報生成手段を更に備え、前記鍵情報記憶手段は、前記確認情報生成手段により生成された確認情報を記憶するよう構成してあり、前記算出手段は、前記鍵情報記憶手段に記憶した受信者鍵、前記共通情報に含まれる副乱数及び秘匿乱数に対して、候補鍵を適用してコンテンツ鍵を算出し、算出したコンテンツ鍵と前記確認情報とを対比することにより前記コンテンツ鍵の正当性を判断し、正当と判断されるまで候補鍵を変更してコンテンツ鍵を算出するよう構成してあることを特徴とする。
【0016】
本発明に係るコンテンツ配信方法は、コンテンツを配信する配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信方法において、前記配信装置により、前記受信装置を利用する受信者に固有の受信者鍵を生成する受信者鍵生成ステップと、前記配信装置により、主乱数及び副乱数を生成させ、前記受信者鍵生成ステップにより生成された各受信者の受信者鍵、前記生成した主乱数及び副乱数に基づき、複数の候補鍵を生成する候補鍵生成ステップと、前記配信装置により、コンテンツをコンテンツ鍵により暗号化するコンテンツ暗号化ステップと、前記配信装置により、前記コンテンツ鍵及び前記主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する共通情報生成ステップと、前記配信装置により、共通情報生成ステップにより生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを前記受信装置へ配信する配信ステップとを備え、前記受信装置により、前記受信者鍵生成ステップにより生成された受信者鍵、前記候補鍵生成ステップにより生成された候補鍵を鍵情報記憶部に記憶する鍵情報記憶ステップと、前記配信装置から、共通情報及び暗号化されたコンテンツが配信された場合、前記受信装置により、前記鍵情報記憶部に記憶した受信者鍵、候補鍵、前記共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する算出ステップと、前記受信装置により、算出したコンテンツ鍵により前記コンテンツを復号する復号ステップとを備えることを特徴とする。
【0017】
本発明にあっては、放送局側の配信装置は、各受信者に固有の受信者鍵を生成する。この受信者鍵は例えばID等により生成する。次に配信装置は、主乱数及び副乱数を生成させ、各受信者の受信者鍵、主乱数及び副乱数に基づき、複数の候補鍵を生成する。この候補鍵は例えば主乱数から、副乱数に各受信者の受信鍵を乗じた値を所定の素数で除した余りを減じて求める等することにより生成する。このようにして生成された各受信者固有の受信者鍵及び共通の情報である複数の候補鍵は、例えばICカード等に記憶させ各受信者に配布しておく。受信者のメモリ等にはこの受信者鍵及び候補鍵が読み出されて記憶される。
【0018】
コンテンツ配信の際には配信装置は、以下の共通の情報を生成すべく処理を行う。まず、コンテンツをコンテンツ鍵により暗号化する。そして、コンテンツ鍵及び主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する。秘匿乱数は例えば、コンテンツ鍵と主乱数との排他的論理和等により生成する。最後に、生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを受信装置へ配信する。この場合上述したように受信装置には全ての受信者に対し共通の情報が配信されている。
【0019】
受信装置は、共通情報及び暗号化されたコンテンツが配信された場合、記憶した受信者鍵及び候補鍵を読み出し、共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する。上述の例では前記素数で除した余りが副乱数に受信者鍵を乗じた値と等しくなる値に候補鍵を加算して得られる値と、秘匿乱数との排他的論理和によりコンテンツ鍵を算出するようにすれば良く、セキュリティのレベルに応じて適宜変更すればよい。最後に受信装置は、算出したコンテンツ鍵によりコンテンツを復号する。このように構成したので、受信者には最初の段階で固有の受信者鍵が配布しておき、また共通の複数の候補鍵を配布しておくだけで、以後のコンテンツ配信時は共通情報及び暗号化したコンテンツを配信すればよいだけなので、配信装置側の負担が軽減され、またデジタル放送の分野では帯域を大幅に確保することが可能となる。さらに、受信者鍵は受信者に固有の情報であるので、受信者鍵を悪用する受信者を容易に特定することが可能となる。
【0020】
また、本発明にあっては、放送局側の配信装置は、生成した複数の候補鍵の順序を並び替え、この並び替えた候補鍵を受信者側に提供する。受信装置は、コンテンツ鍵を算出するために複数の候補鍵を、受信者鍵、副乱数及び秘匿乱数に逐次代入する。この場合、候補鍵を並び替えておくことで解析に要する負担が大きくなるため、安易な不正を抑制することが可能となる。これは、不正な複数の受信者が結託して、同じタイミングで各受信者の候補鍵を出し合うことにより、第3の鍵を作成する、所謂リタイミング攻撃に備えるものである。例えば、各受信者に配布される候補鍵の数をJ個とした場合、受信装置では正しいコンテンツ鍵を取り出すために最大J個総当たりでコンテンツ鍵を算出する。並び替えを行っていた場合は、複数の受信者が同じ場所を探す組み合わせ数がJ2となり、解析に時間を要することとなる。
【0021】
また、本発明にあっては、配信装置は受信者毎に固有の系列を生成する。この系列は各受信者固有のものであり例えばM(maximal-length sequences)系列の直交系列等が用いられる。候補鍵の生成にあってはこの系列を利用する。配信装置は生成した系列に応じて、副乱数を、各受信者の受信者鍵及び主乱数に当てはめることにより複数の候補鍵を生成する。例えば、系列が「1」の場合は、第1の副乱数を用い、系列が「0」の場合は第2の副乱数を用いるようにすればよい。このように構成したので悪意のある受信者が第3の鍵を生成する場合でも、系列を特定することができるため、容易に悪意のある受信者を特定することが可能となる。
【0022】
さらに、本発明にあっては、配信装置は、コンテンツ鍵の正当性を判断するための確認情報を生成する。この確認情報の生成方法は予め決定されており、例えばコンテンツ鍵を確認情報の倍数値とする等すればよい。受信装置はこの生成された確認情報を記憶する。受信装置は、記憶した受信者鍵、共通情報に含まれる副乱数及び秘匿乱数に対して、候補鍵を適用してコンテンツ鍵を算出する。そして記憶した確認情報と、算出したコンテンツ鍵とを対比することにより前記コンテンツ鍵が正当か否かを判断する。正当と判断されない場合、上述の例ではコンテンツ鍵が確認情報の倍数値でない場合、再度新たな候補鍵を読み出し、コンテンツ鍵を算出する。そして、正当と判断した場合、算出されたコンテンツ鍵を利用してコンテンツを復号する。このように構成したので、容易にコンテンツ鍵が正当であるか否かを判断することが可能となる。
【0023】
【発明の実施の形態】
以下本発明を実施の形態を示す図面に基づいて詳述する。
実施の形態1
図1は本発明のコンテンツ配信システムの概要を示す模式図である。本実施の形態においては、映像コンテンツを受信者のチューナに配信する形態につき説明するが、この形態に限定されるものではなく、音楽情報、コンピュータプログラムを受信者のパーソナルコンピュータへ配信する形態、政府のコンピュータに管理される住民票等を各受信者のパーソナルコンピュータまたは市役所等の端末装置へ配信する形態等であっても良い。
【0024】
図1において、1は配信装置(以下、サーバコンピュータという)であり、MPEG(Moving Picture Experts Group)−2等によりエンコードされた映像コンテンツを格納したコンテンツデータベース(以下、コンテンツDBという)1Dから、映像コンテンツを読み出して暗号化した上で配信する。サーバコンピュータ1には、ケーブル網、インターネット網等の通信網Nを介して、受信装置(以下、チューナという)2,2,2…が接続されている。以下に、暗号化から復号までの手順を簡単に説明する。
【0025】
まず、前段階としてサーバコンピュータ1は受信者毎に固有の受信者鍵を生成する。さらに、サーバコンピュータ1は、主乱数及び副乱数を発生させ、各受信者の受信者鍵、主乱数及び副乱数に基づき複数の候補鍵を生成する。この前段階で生成された受信者鍵及び候補鍵をセキュリティが維持された状態で、各受信者へ配布する。具体的には申し込みがあった場合に、受信者に対し候補鍵及び該受信者の受信者鍵を記憶したICカード、CD−ROM等の記録媒体を郵便により配布する、または、通信網Nを介して暗号化した上で各受信者に受信者鍵及び候補鍵を送信するようにすればよい。このようにして配布された受信者鍵及び候補鍵はチューナ2に記憶される。
【0026】
次に後段階としてサーバコンピュータ1は全ての受信者に共通の共通情報を生成する。共通情報は秘匿乱数及び副乱数から構成され、秘匿乱数は映像コンテンツを暗号化するためのコンテンツ鍵及び主乱数から構成される。サーバコンピュータ1はコンテンツ鍵により暗号化した映像コンテンツと共通情報とを通信網Nを介してチューナ2へ配信する。チューナ2は予め配布された受信者鍵及び候補鍵、配信された共通情報を用いてコンテンツ鍵を算出し、算出したコンテンツ鍵を用いて映像コンテンツを復号する。
【0027】
図2はサーバコンピュータ1及びチューナ2のハードウェア構成を示すブロック図である。まずサーバコンピュータ1のハードウェア構成について説明する。図に示すように、CPU11にはバス17を介してRAM12,ハードディスク等の記憶部15、チューナ2と情報を送受信するためのゲートウェイ等の通信部16,液晶ディスプレイ等の表示部14、及びキーボード、マウス等の入力部13が接続される。CPU11は、バス17を介してサーバコンピュータ1の上述したようなハードウェア各部と接続されていて、それらを制御すると共に、記憶部15に格納された制御プログラム15Pに従って、種々のソフトウェア的機能を実行する。
【0028】
制御プログラム12Pは、以下に述べるソフトウェア処理がC言語等のプログラミング言語で記述されている。記憶部15には受信者の氏名、住所、受信者ID、受信者固有の受信者鍵等の情報を記憶した受信者情報ファイル151が記憶されている。CPU11は制御プログラム15Pに従い、受信者鍵及び候補鍵の生成、共通情報の生成、コンテンツの配信処理等を後述する方法により実行する。
【0029】
次に、チューナ2のハードウェア構成について説明する。CPU21にはバス27を介してRAM22,ハードディスク等の記憶部25、サーバコンピュータ1と情報を送受信するためのモデム等の通信部26,受信者鍵及び候補鍵が記憶されたICカードを読み取るためのリーダ2R、及び操作ボタン等の入力部23、MPEG−2デコーダ28及び映像・音声出力部29が接続される。CPU21は、バス27を介してチューナ2の上述したようなハードウェア各部と接続されていて、それらを制御すると共に、記憶部25に格納された制御プログラム25Pに従って、種々のソフトウェア的機能を実行する。
【0030】
受信者には予め受信者鍵及び候補鍵が記憶されたICカードが配布されておいる。リーダ2RにICカードが挿入された場合は、CPU21はICカードに記憶された受信者鍵及び候補鍵を読み出して記憶部25の鍵情報記憶部251に記憶する。通信部26から共通情報及び暗号化されたコンテンツが配信された場合は、CPU11は制御プログラム25Pに従い、コンテンツ鍵の算出、コンテンツの復号等の処理を後述する処理により実行する。
【0031】
まず、前段階の処理、すなわちサーバコンピュータ1での受信者鍵及び候補鍵の生成処理について説明する。まず、CPU11は大きな素数であるセンタパラメータnを生成し、RAM11に生成したセンタパラメータnを記憶する。そして、受信者毎に固有の受信者鍵mxjを生成する。
受信者鍵mxj (1≦j≦ku)
ただし、1≦mxj<n、全受信者数はKuとする。この受信者鍵は受信者固有に付与されるIDに基づいて生成するようにすればよい。ただし、サーバコンピュータ1以外はIDから受信者鍵への変換はできないものとする。
【0032】
次に、CPU11は主乱数Si及び副乱数riを生成する。
主乱数{Si} (1≦i≦J)
ただし、1≦Si<n
副乱数{ri} (1≦i≦J)
ただし、1≦ri<n
【0033】
そして、CPU11は{Si,ri}の全ての組に対し、各受信者の受信者鍵mxiを用いて、式1により候補鍵Sxj={xi} (1≦i≦J)を生成する。
xi≡Si−rimxi(mod n) 式1
なお、Xmod nはXをnで除した場合の余りである。なお、上記式1を含む本実施の形態で説明する式等は制御プログラム15Pまたは制御プログラム25P等に記述されている。
【0034】
CPU11は式1により算出した候補鍵Sxj={xi} (1≦i≦J)の配置をランダムに並び替える。なお、本実施の形態においては並び替え処理を行うこととしたが、必ずしも実行する必要はなくセキュリティの強度に応じて適宜実行するようにすればよい。
【0035】
また、CPU11はコンテンツ鍵Kci(1≦i≦J)の正当性を確認するための確認情報{RCi}(1≦i≦J)を生成する。例えば、コンテンツ鍵が確認情報の倍数となるようにすれば良い。この場合、チューナ2で算出したコンテンツ鍵がチューナに記憶されている確認情報の倍数である場合は正当であり、倍数にならない場合は正当でないということになる。この他、コンテンツ鍵をn out of m codeで符号化しておき、n及びmを確認情報としても良い。n out of m codeとは、鍵長の約数であるmビットのうちnビットが必ず1でそれ以外が0を意味する。例えば、m=8,n=4の場合、鍵の1バイト情報のうち4ビットが1、それ以外が0であることを意味する。また、確認情報は、鍵毎に異なるものでなく、共通で使用する情報であっても良い。
【0036】
CPUは以上の処理により生成した受信者鍵mxj (1≦j≦ku)、候補鍵Sxj={xi} (1≦i≦J)、及び確認情報{RCi}(1≦i≦J)を受信者のIDに対応づけて受信者情報ファイル151に記憶する。そして、安全な通信路で受信者jに対し、センタパラメータn、受信者鍵mxj、候補鍵Sxj、及び確認情報{RCi}(1≦i≦J)を配布する。この配布の形態は上述したようにICカードに受信者鍵、候補鍵及び確認情報を記憶させる等して配布するようにすればよい。受信者は配布されたICカードをチューナ2のリーダ2Rに挿入する。チューナ2のCPU21はICカードに記憶されたセンタパラメータn、受信者鍵、候補鍵及び確認情報を記憶部25の鍵情報記憶部251に記憶する。以上により前段階が終了する。
【0037】
次に後段階について説明する。CPU11はコンテンツDB1Dに記憶されている映像コンテンツCiを暗号化するためのコンテンツ鍵Kci(ただし、1≦Kci<n)を生成する。このコンテンツ鍵Kciは公知の方法により生成され、生成されたコンテンツ鍵KciはRAM12に記憶される。
【0038】
CPU11はコンテンツ鍵Kci(1≦i≦J)により、映像コンテンツCiを暗号化する。なお、コンテンツ鍵により暗号化されたコンテンツをe[Kci,Ci]で表す。次に共通情報を作成するためにCPU11は秘匿乱数をコンテンツ鍵Kci及び主乱数Siを用いて下記の式2により生成する。
【0039】
【数1】
【0040】
そしてCPU11は、共通情報Hpiを秘匿乱数及び副乱数riを用いて下記の式3により算出する。
【0041】
【数2】
【0042】
CPU11は下記の式4で表される共通情報及び暗号化コンテンツを連接して通信網Nを経由してチューナ2に配信する。
Hpi‖e[Kci,Ci] 式4
ここで、‖は連接を表す。以上により後段階が終了する。
【0043】
次にチューナ2における復号処理について説明する。チューナ2のCPU21はi番目の共通情報及び暗号化されたコンテンツHpi‖e[Kci,Ci]を受信した場合、鍵情報記憶部251からセンタパラメータn、受信者鍵mxj、及び、一の候補鍵xiを読み出しRAM21に記憶する。そして、CPU21は下記の式5乃至7に代入することによりコンテンツ鍵Kciを算出する。すなわち、センタパラメータn(素数)で除した余りが副乱数に受信者鍵を乗じた値と等しくなる値に候補鍵を加算して得られる値と、秘匿乱数との排他的論理和によりコンテンツ鍵を算出する。
【0044】
【数3】
【0045】
すなわち式1,式5、式6及び式7から、チューナ2側において、配布及び配信されていない主乱数Si及びコンテンツ鍵Kciを取り出すようにしている。
【0046】
次にCPU21は、算出されたコンテンツ鍵Kciと鍵情報記憶部251に記憶された確認情報RCiとを比較することによりコンテンツ鍵Kciが正当であるか否かを判断する。正当でない場合は新たな候補鍵を取り出して同様の演算処理を繰り返す。正当である場合は、算出したコンテンツ鍵Kciにより、暗号化コンテンツを復号して映像コンテンツCiを取り出し、MPEGデコーダ28でデコードした後、映像・音声出力部29を経由してモニター等に映像、音声信号を出力する。なお、本実施の形態においては確認情報を用いてコンテンツ鍵Kciの正当性を判断したが、予め決められた規則に従って鍵を作成すれば、特別な確認情報は必要でなく、その規則に従っているかどうかを確認すればよい。また、鍵の並び替え(転置)を行わない場合は、確認情報は必ずしも用いる必要はない。
【0047】
以上の構成において暗号化及び復号処理の手順を、フローチャートを用いて説明する。図3は前段階の処理手順を示すフローチャートである。サーバコンピュータ1のCPU11は大きな素数であるセンタパラメータnを生成し(ステップS31)、生成したセンタパラメータnをRAM12に記憶する(ステップS32)。CPU11は受信者情報ファイル151から受信者のIDを読み出し、このIDに基づいて受信者鍵mxjを生成する(ステップS33)。各受信者の受信者鍵mxjはIDに対応づけて受信者情報ファイル151に記憶される。
【0048】
続いてCPU11は主乱数Si及び副乱数riを生成する(ステップS34)。このとき、CPU11は、物理乱数や暗号で使用できる安全な疑似乱数生成ルーチンを使用し、第三者が予想できない乱数の種情報と時刻情報等を初期値として乱数を発生させる。CPU11は、制御プログラム15Pに記憶された式1を読み出し、受信者情報ファイル151に記憶された受信者鍵mxj、主乱数Si、及び副乱数riを入力することにより候補鍵Sxjを生成する(ステップS35)。
【0049】
次にCPU11は生成した候補鍵Sxjを並び替える処理を行うかどうかを判断する(ステップS36)。候補鍵の並び替えを行うか否かは、セキュリティの強弱に応じて管理者がいずれかを入力部13から設定することができる。CPU11は並び替え処理を実行すると判断した場合は(ステップS36でYES)、候補鍵Sxjをランダムに並び替え(転置)する(ステップS37)。一方、並び替え処理を行わないと判断した場合は(ステップS36でNO)、ステップS37の処理をスキップする。
【0050】
CPU11はコンテンツ鍵Kciの正当性を判断するための確認情報RCiを生成する(ステップS38)。この生成アルゴリズムは上述したように予め決定されている。CPU11は図示しないリーダライタに挿入されたICカードにセンタパラメータn、受信者鍵mxj、候補鍵Sxj、及び確認情報RCiを記憶する(ステップS39)。
【0051】
図4は後段階の処理手順を示すフローチャートである。チューナ2側においては郵送等により配布されたICカードをリーダ2Rに挿入する。チューナ2のCPU21はICカード内に記憶された、センタパラメータn、受信者鍵mxj、候補鍵Sxj、及び確認情報RCiを読み取り(ステップS41)、鍵情報記憶部251に予め記憶しておく(ステップS42)。なお、本実施の形態においては鍵情報記憶部251にセンタパラメータn、受信者鍵mxj、候補鍵Sxj、及び確認情報RCiを一旦記憶するようにしているが、必ずしもこの必要はなく、ICカード内に記憶されたセンタパラメータn、受信者鍵mxj、候補鍵Sxj、または確認情報RCiを必要に応じてCPU21が読み出し、演算処理の際のみRAM22に記憶させるようにしても良い。
【0052】
放送局側のサーバコンピュータ1のCPU11はコンテンツDB1Dから配信対象となる映像コンテンツCiを読み出す(ステップS43)。また、予め映像コンテンツCiに対応させて生成してあるコンテンツ鍵Kciを読み出す(ステップS44)。CPU11は読み出したコンテンツ鍵Kciにより映像コンテンツ映像コンテンツCiを暗号化し(ステップS45)、RAM12に記憶する。CPU11は読み出したコンテンツ鍵KciとステップS34で生成した主乱数との排他的論理和(式2)により秘匿乱数を生成する(ステップS46)。
【0053】
ついでCPU11はステップS34で生成した副乱数riを読み出し(ステップS47)、秘匿乱数とこの読み出した副乱数riとにより式3の如く共通情報を生成する(ステップS48)。共通情報を生成した後、CPU11は各ユーザのチューナ2,2,2…に対して式4で表される共通情報及び暗号化されたコンテンツを配信する(ステップS49)。チューナ2のCPU21は共通情報及び暗号化されたコンテンツを受信し(ステップS410)、記憶部25に記憶する。このように後段階においては全ての受信者に共通の情報が配信されることになる。
【0054】
図5は復号処理の処理手順を示すフローチャートである。チューナ2のCPU21は配信された暗号化コンテンツを記憶部25から読み出してRAM22に記憶する(ステップS51)。次に、CPU21は鍵情報記憶部251に記憶されたセンタパラメータn、受信者鍵mxj及び候補鍵Sxjを読み出し(ステップS52)、RAM21に記憶する。さらに、配信された共通情報の副乱数ri及び秘匿乱数を読み出し(ステップS53)、同様にRAM21に記憶する。CPU21はこのRAM21に記憶された副乱数ri、秘匿乱数、受信者鍵mxj及び候補鍵Sxjを上述した式5,6,7へそれぞれ代入することによりコンテンツ鍵Kciを算出する(ステップS54)。
【0055】
CPU21は鍵情報記憶部251に記憶された確認情報RCiを読み出し、算出したコンテンツ鍵Kciがこの確認情報RCiに適合するか否かを判断する(ステップS55)。例えば、n out of m codeを用い、確認情報がm=8,n=4の場合、算出したコンテンツ鍵Kciの1バイト情報のうち4ビットが1、それ以外が0であるか否かを演算する。CPU21は適合しないと判断した場合(ステップS55でNO)、算出したコンテンツ鍵Kciは正当でないと判断して、他の候補鍵Sxjを読み出す(例えば、候補鍵Sxj=xi+1)(ステップS56)。そして再びステップS54以降の処理を繰り返す。
【0056】
ステップS55において適合すると判断した場合(ステップS55でYES)、すなわち複数の候補鍵Sxjを代入し続けた結果、正当なコンテンツ鍵Kciが算出されたと判断した場合、CPU21はRAM21に記憶された暗号化コンテンツを算出したコンテンツ鍵Kciにより復号する(ステップS57)。CPU21は復号した映像コンテンツをMPEG−2デコーダ28へ出力してデコードし、デコードした映像コンテンツを映像・音声出力部29へ出力する(ステップS58)。以上の如く、受信者毎に異なる受信者鍵を配布しておくことで、受信者が悪意をもって受信者鍵を利用した場合でも、容易に該受信者を特定することが可能となる。しかも、受信者毎に異なる情報はこの受信者鍵にとどめ、コンテンツ配信の際には、従来と異なり共通の情報を各受信者に配信することができるので、情報配信側の負担を容易に軽減することが可能となる。さらに、候補鍵を並び替えておくことにより、リタイミング攻撃を行うことによる解読の手間を増加させることが可能となる。
【0057】
なお、付言しておくと、受信者鍵mxjや候補鍵Sxjはコンテンツの復号が終了した場合、サーバコンピュータ1に返送、またはチューナ2のCPU21により削除するようにしても良い。この場合、受信者が受信者鍵mxjや候補鍵Sxjの使用を終了する前に別途受信者鍵mxjや候補鍵Sxjを配布しておく。また、本実施の形態においては説明を容易にするためにコンテンツ鍵Kciと同数の候補鍵Sxjを生成することとしているが、必ずしもこれに限定されるものではなく、複数のコンテンツ鍵Kciに対して一の候補鍵Sxjを割り当てるようにしても良い。さらに、受信者鍵mxjは各受信者に一つずつ配布していたが、複数の受信者鍵mxjを割り当てても良い。
【0058】
実施の形態2
実施の形態2は実施の形態1において候補鍵の生成に当たり系列を適用する形態に関する。まず、前段階の処理について説明する。CPU11は大きな素数であるセンタパラメータnを生成し、RAM11に生成したセンタパラメータnを記憶する。そして、受信者毎に固有の受信者鍵mxjを生成する。
受信者鍵mxj (1≦j≦ku)
ただし、1≦mxj<n、全受信者数はKuとする。
【0059】
次に、CPU11は主乱数Si、第1副乱数ri、及び、第2副乱数tiを生成する。
主乱数{Si} (1≦i≦J)
ただし、1≦Si<n
第1副乱数{ri} (1≦i≦J)
ただし、1≦ri<n
第2副乱数{ti} (1≦i≦J)
ただし、1≦ti<n
【0060】
CPU11は予め決めた長さの系列を定めて生成する。この系列は受信者毎に対応させて生成されるものであり、例えばM系列の直交または擬似直交系列、この他、アダマール行列等を用いれば良い。以下ではM系列{Mim} (im=1,2,…,km)を適用して説明する。CPU11は、M系列{Mim} (im=1,2,…,km)の中から、受信者に対応する複数のM系列を選択し受信者jに対応する系列{Umj} (1≦i<ku)を生成する。ただし、全受信者数をkuとする。さらに、系列{Umj}の値から、予め決められた方法でJビットを取り出し{Umj,i}(1≦i≦J)とする。このようにして生成される系列{Umj,i}は受信者IDに対応づけて受信者情報ファイル151に記憶される。
【0061】
そして、CPU11は{Si,ri}及び{Si,ti}の全ての組に対し、各受信者の受信者鍵mxiを用いて、系列{Umj,i}に応じて式8または式9により候補鍵Sxj={xi} (1≦i≦J)を生成する。
系列Umj,i=0の場合:xi≡Si−rimxi(mod n) 式8
系列Umj,i=1の場合:xi≡Si−timxi(mod n) 式9
すなわち、受信者毎の系列に応じて候補鍵Sxjが異なることになる。
【0062】
CPU11は式8または式9により算出した候補鍵Sxj={xi} (1≦i≦J)の配置をランダムに並び替える。なお、本実施の形態においては並び替え処理を行うこととしたが、必ずしも実行する必要はなくセキュリティの強度に応じて適宜実行するようにすればよい。また、CPU11はコンテンツ鍵Kci(1≦i≦J)の正当性を確認するための確認情報{RCi}(1≦i≦J)を生成する。
【0063】
CPUは以上の処理により生成した受信者鍵mxj (1≦j≦ku)、候補鍵Sxj={xi} (1≦i≦J)、及び確認情報{RCi}(1≦i≦J)を受信者のIDに対応づけて受信者情報ファイル151に記憶する。そして、安全な通信路で受信者jに対し、センタパラメータn、受信者鍵mxj、候補鍵Sxj、及び確認情報{RCi}(1≦i≦J)を配布する。この配布の形態は上述したようにICカードに受信者鍵、候補鍵及び確認情報を記憶させる等して配布するようにすればよい。受信者は配布されたICカードをチューナ2のリーダ2Rに挿入する。チューナ2のCPU21はICカードに記憶されたセンタパラメータn、受信者鍵、候補鍵及び確認情報を記憶部25の鍵情報記憶部251に記憶する。以上により実施の形態2における前段階が終了する。
【0064】
次に実施の形態2における後段階について説明する。CPU11はコンテンツDB1Dに記憶されている映像コンテンツCiを暗号化するためのコンテンツ鍵Kci(ただし、1≦Kci<n)を生成する。この生成されたコンテンツ鍵KciはRAM12に記憶される。
【0065】
CPU11はコンテンツ鍵Kci(1≦i≦J)により、映像コンテンツCiを暗号化する。次に共通情報を作成するためにCPU11は秘匿乱数をコンテンツ鍵Kci及び主乱数Siを用いて生成する。そしてCPU11は、共通情報Hpiを秘匿乱数、第1副乱数ri及び第2副乱数tiを用いて下記の式10により算出する。
【0066】
【数4】
【0067】
CPU11は上述した式4で表される共通情報及び暗号化コンテンツを連接して(Hpi‖e[Kci,Ci])通信網Nを経由してチューナ2に配信する。以上により実施の形態2の後段階が終了する。
【0068】
次にチューナ2における復号処理について説明する。チューナ2のCPU21はi番目の共通情報及び暗号化されたコンテンツHpi‖e[Kci,Ci]を受信した場合、鍵情報記憶部251からセンタパラメータn、受信者鍵mxj、及び、一の候補鍵xiを読み出しRAM21に記憶する。そして、CPU21は下記の式11乃至16に代入することによりコンテンツ鍵Kciを算出する。すなわち、センタパラメータn(素数)で除した余りが第1副乱数または第2副乱数に受信者鍵を乗じた値と等しくなる値に候補鍵を加算して得られる値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出する。
【0069】
【数5】
【0070】
次にCPU21は、算出されたコンテンツ鍵Kcri及びコンテンツ鍵Kctiと鍵情報記憶部251に記憶された確認情報RCiとを比較することによりコンテンツ鍵Kcri及びコンテンツ鍵Kctiが正当であるか否かを判断する。いずれかが正当であると判断した場合は、その正当な鍵をコンテンツ鍵Kciとする。コンテンツ鍵Kcri及びコンテンツ鍵Kctiの双方が正当でないと判断した場合は、新たな候補鍵を取り出して同様の演算処理を繰り返す。CPU21は、正当であるコンテンツ鍵Kciにより、暗号化コンテンツを復号して映像コンテンツCiを取り出し、MPEGデコーダ28でデコードした後、映像・音声出力部29を経由してモニター等に映像、音声信号を出力する。
【0071】
このように候補鍵に、受信者固有の系列を埋め込んでおくことで、受信者の不正を防止することが可能となる。つまり、不正を行う受信者が攻撃を行う場合、まず、転置された候補鍵を逆転置する(リタイミング攻撃)。そして不正用の復号装置に、受信者鍵を入力し、配信された共通情報及び鍵系列から、復号手順に従って鍵を取り出すことができるかを調べることにより、候補鍵の並びを、使用する順番に並び替える。しかし、本発明においては転置前にM系列を埋め込んでいるので、逆転置された系列を調査(サーバコンピュータ1側で相関をとる等して調査する)すればどの受信者の候補鍵であるか特定することができる。
【0072】
実施の形態3
実施の形態3は実施の形態1における候補鍵の生成にべき乗剰余演算を適用する形態に関する。なお、実施の形態1における後段階と実施の形態3における後段階は同一であるので詳細な説明は省略する。
【0073】
実施の形態3の前段階の処理、すなわちサーバコンピュータ1での受信者鍵及び候補鍵の生成処理について説明する。CPU11は大きな素数であるセンタパラメータnを生成し、RAM11に生成したセンタパラメータnを記憶する。そして、受信者毎に固有の受信者鍵mxjを生成する。
受信者鍵mxj (1≦j≦ku)
ただし、1≦mxj<n、全受信者数はKuとする。
【0074】
次に、CPU11は主乱数Si及び副乱数riを生成する。
主乱数{Si} (1≦i≦J)
ただし、1≦Si<n
副乱数{ri} (1≦i≦J)
ただし、1≦ri<n
【0075】
そして、CPU11は{Si,ri}の全ての組に対し、各受信者の受信者鍵mxiを用いて、式17により候補鍵Sxj={xi} (1≦i≦J)を生成する。
【0076】
【数6】
【0077】
CPU11は式17により算出した候補鍵Sxj={xi} (1≦i≦J)の配置をランダムに並び替える。また、CPU11はコンテンツ鍵Kci(1≦i≦J)の正当性を確認するための確認情報{RCi}(1≦i≦J)を生成する。CPUは以上の処理により生成した受信者鍵mxj (1≦j≦ku)、候補鍵Sxj={xi} (1≦i≦J)、及び確認情報{RCi}(1≦i≦J)を受信者のIDに対応づけて受信者情報ファイル151に記憶する。そして、安全な通信路で受信者jに対し、センタパラメータn、受信者鍵mxj、候補鍵Sxj、及び確認情報{RCi}(1≦i≦J)を配布する。チューナ2のCPU21は配布されたセンタパラメータn、受信者鍵、候補鍵及び確認情報を記憶部25の鍵情報記憶部251に記憶する。以上により前段階が終了する。
【0078】
実施の形態1と同様の後段階により配信された共通情報及び暗号化されたコンテンツを受信した後の、復号処理について説明する。チューナ2のCPU21はi番目の共通情報及び暗号化されたコンテンツHpi‖e[Kci,Ci]を受信した場合、鍵情報記憶部251からセンタパラメータn、受信者鍵mxj、及び、一の候補鍵xiを読み出しRAM21に記憶する。そして、CPU21は下記の式18乃至20に代入することによりコンテンツ鍵Kciを算出する。すなわち、センタパラメータn(素数)で除した余りが受信者鍵を副乱数分乗じた値と等しくなる値に候補鍵を加算して得られる値と、秘匿乱数との排他的論理和によりコンテンツ鍵を算出する。
【0079】
【数7】
【0080】
次にCPU21は、算出されたコンテンツ鍵Kciと鍵情報記憶部251に記憶された確認情報RCiとを比較することによりコンテンツ鍵Kciが正当であるか否かを判断する。正当でない場合は新たな候補鍵を取り出して同様の演算処理を繰り返す。正当である場合は、算出したコンテンツ鍵Kciにより、暗号化コンテンツを復号して映像コンテンツCiを取り出し、MPEGデコーダ28でデコードした後、映像・音声出力部29を経由してモニター等に映像、音声信号を出力する。本実施の形態においては候補鍵xiを作成する場合に、べき乗剰余演算により副乱数riを用いたが、本発明はこれに限定されるものではなく他の演算手法により副乱数riを用いればよい。
【0081】
実施の形態4
実施の形態4は候補鍵の生成にあたり楕円曲線暗号を用いる技術に関する。まず、実施の形態4の前段階の処理について説明する。サーバコンピュータ1のCPU11は、ある大きな素数p>3、及び、下記の式21により特定される楕円曲線Eを選択する。
楕円曲線E:y2=x3+ax+b mod p 式21
【0082】
そして、CPU11は楕円曲線Eの位数をnEとし、この位数をもつ楕円曲線上の座標点をP(以下、特定点Pという)とする。ただし、位数nEは素数位数であるか、または、楕円曲線の位数の素因数で大きな素数とする。なお、位数nE、特定点P、及び、素数pは予め計算されて記憶部15に記憶されている。
【0083】
CPU11は受信者毎に固有の受信者鍵mxjを生成する。
受信者鍵mxj (1≦j≦ku)
ただし、1≦mxj<nE、全受信者数はKuとする。
【0084】
次に、CPU11は主乱数Siを生成する。
主乱数{Si} (1≦i≦J)
ただし、1≦Si<nE
【0085】
CPU11は、M系列{Mim} (im=1,2,…,km)の中から、受信者に対応する複数のM系列を選択し受信者jに対応する系列{Umj} (1≦i<ku)を生成する。ただし、全受信者数をkuとする。さらに、系列{Umj}の値から、予め決められた方法でJビットを取り出し{Umj,i}(1≦i≦J)とする。このようにして生成される系列{Umj,i}は受信者IDに対応づけて受信者情報ファイル151に記憶される。
【0086】
次に、CPU11は第1副乱数αi、及び、第2副乱数βiを生成する。
第1副乱数{αi} (1≦i≦J)
ただし、1≦αj<nE
第2副乱数{βi} (1≦i≦J)
ただし、1≦βj<nE
【0087】
CPU11は{Si}の全てに対し、各受信者の受信者鍵mxiを用いて、系列{Umj,i}に応じて式22または式23により候補鍵Sxj={xi} (1≦i≦J)を生成する。
【0088】
【数8】
【0089】
すなわち、受信者毎の系列に応じて候補鍵Sxjが異なることになる。
【0090】
CPU11は式22または式23により算出した候補鍵Sxj={xi} (1≦i≦J)の配置をランダムに並び替える。なお、本実施の形態においては並び替え処理を行うこととしたが、必ずしも実行する必要はなくセキュリティの強度に応じて適宜実行するようにすればよい。また、CPU11はコンテンツ鍵Kci(1≦i≦J)の正当性を確認するための確認情報{RCi}(1≦i≦J)を生成する。
【0091】
CPUは以上の処理により生成した受信者鍵mxj (1≦j≦ku)、候補鍵Sxj={xi} (1≦i≦J)、特徴点Pの座標値及び確認情報{RCi}(1≦i≦J)を受信者のIDに対応づけて受信者情報ファイル151に記憶する。そして、安全な通信路で受信者jに対し、受信者鍵mxj、候補鍵Sxj、特徴点P及び確認情報{RCi}(1≦i≦J)を配布する。受信者は配布されたICカードをチューナ2のリーダ2Rに挿入する。チューナ2のCPU21はICカードに記憶された受信者鍵、候補鍵及び確認情報を記憶部25の鍵情報記憶部251に記憶する。以上により実施の形態4における前段階が終了する。
【0092】
次に実施の形態4における後段階について説明する。CPU11はコンテンツDB1Dに記憶されている映像コンテンツCiを暗号化するためのコンテンツ鍵Kci(ただし、1≦Kci<nE)を生成する。この生成されたコンテンツ鍵KciはRAM12に記憶される。
【0093】
CPU11はコンテンツ鍵Kci(1≦i≦J)により、映像コンテンツCiを暗号化する。次に共通情報を作成するためにCPU11は秘匿乱数を
【数9】
コンテンツ鍵Kci、主乱数Si及び特定点Pを用いて生成する。ここで、
【数10】
はスカラ倍算した結果の特定点Pのx座標値である。そしてCPU11は、共通情報Hpiを秘匿乱数、第1副乱数αi第2副乱数βi及び特定点Pを用いて下記の式10により算出する。なお、SiP,αiP及びβiPは楕円曲線上のスカラ倍数である。
【0094】
【数11】
【0095】
CPU11は上述した式24で表される共通情報及び暗号化コンテンツを連接して(Hpi‖e[Kci,Ci])通信網Nを経由してチューナ2に配信する。以上により実施の形態4の後段階が終了する。
【0096】
次にチューナ2における復号処理について説明する。チューナ2のCPU21はi番目の共通情報及び暗号化されたコンテンツHpi‖e[Kci,Ci]を受信した場合、鍵情報記憶部251から受信者鍵mxj、特定点P及び、一の候補鍵xiを読み出しRAM21に記憶する。そして、CPU21は下記の式25乃至29に代入することによりコンテンツ鍵Kciを算出する。すなわち、受信者鍵に特定点Pの座標値を乗じた値に特定点Pの座標値に第1副乱数を乗じた値を加算した値を候補鍵で乗じた値のx座標値と、秘匿乱数との排他的論理和、または、受信者鍵に特定点Pの座標値を乗じた値に特定点Pの座標値に第2副乱数を乗じた値を加算した値を候補鍵で乗じた値のx座標値と、秘匿乱数との排他的論理和によりコンテンツ鍵を算出する。
【0097】
【数12】
【0098】
次にCPU21は、算出されたコンテンツ鍵Kcαi及びコンテンツ鍵Kcβiと鍵情報記憶部251に記憶された確認情報RCiとを比較することによりコンテンツ鍵Kcαi及びコンテンツ鍵Kcβiが正当であるか否かを判断する。いずれかが正当であると判断した場合は、その正当な鍵をコンテンツ鍵Kciとする。コンテンツ鍵Kcαi及びコンテンツ鍵Kcβiの双方が正当でないと判断した場合は、新たな候補鍵を取り出して同様の演算処理を繰り返す。CPU21は、正当であるコンテンツ鍵Kciにより、暗号化コンテンツを復号して映像コンテンツCiを取り出し、MPEGデコーダ28でデコードした後、映像・音声出力部29を経由してモニター等に映像、音声信号を出力する。
【0099】
実施の形態5
実施の形態5は実施の形態4が系列埋め込みを行っていたのに対し、系列を埋め込まない形態に関する。まず、実施の形態5の前段階の処理について説明する。サーバコンピュータ1のCPU11は、ある大きな素数p>3、及び、上述した式21により特定される楕円曲線Eを選択する。
【0100】
そして、CPU11は楕円曲線Eの位数をnEとし、この位数をもつ楕円曲線上の座標点を特定点Pとする。ただし、位数nEは素数位数であるか、または、楕円曲線の位数の素因数で大きな素数とする。なお、特定点P、位数nE及び素数pは予め計算されて記憶部15に記憶されている。
【0101】
CPU11は受信者毎に固有の受信者鍵mxjを生成する。
受信者鍵mxj (1≦j≦ku)
ただし、1≦mxj<nE、全受信者数はKuとする。
【0102】
次に、CPU11は主乱数Si及び副乱数riを生成する。
主乱数{Si} (1≦i≦J)
ただし、1≦Si<nE
副乱数{ri} (1≦i≦J)
ただし、1≦ri<nE
【0103】
CPU11は{Si,ri}の全ての組に対し、各受信者の受信者鍵mxiを用いて、式29により候補鍵Sxj={xi} (1≦i≦J)を生成する。
【0104】
【数13】
【0105】
CPU11は式29により算出した候補鍵Sxj={xi} (1≦i≦J)の配置をランダムに並び替える。なお、本実施の形態においては並び替え処理を行うこととしたが、必ずしも実行する必要はなくセキュリティの強度に応じて適宜実行するようにすればよい。また、CPU11はコンテンツ鍵Kci(1≦i≦J)の正当性を確認するための確認情報{RCi}(1≦i≦J)を生成する。
【0106】
CPUは以上の処理により生成した受信者鍵mxj (1≦j≦ku)、候補鍵Sxj={xi} (1≦i≦J)、及び確認情報{RCi}(1≦i≦J)を受信者のIDに対応づけて受信者情報ファイル151に記憶する。そして、安全な通信路で受信者jに対し、位数nE、特定点Pの座標値、受信者鍵mxj、候補鍵Sxj、及び確認情報{RCi}(1≦i≦J)を配布する。受信者は配布されたICカードをチューナ2のリーダ2Rに挿入する。チューナ2のCPU21はICカードに記憶された位数nE、特定点Pの座標値、受信者鍵、候補鍵及び確認情報を記憶部25の鍵情報記憶部251に記憶する。以上により実施の形態5における前段階が終了する。
【0107】
次に実施の形態5における後段階について説明する。CPU11はコンテンツDB1Dに記憶されている映像コンテンツCiを暗号化するためのコンテンツ鍵Kci(ただし、1≦Kci<nE)を生成する。この生成されたコンテンツ鍵KciはRAM12に記憶される。
【0108】
CPU11はコンテンツ鍵Kci(1≦i≦J)により、映像コンテンツCiを暗号化する。次に共通情報を作成するためにCPU11は秘匿乱数
【数14】
をコンテンツ鍵Kci、主乱数Si及び特定点Pを用いて生成する。ここで、
【数15】
はスカラ倍算した結果の特定点Pのx座標値である。そしてCPU11は、共通情報Hpiを秘匿乱数、副乱数riを用いて下記の式30により算出する。
【0109】
【数16】
【0110】
CPU11は上述した式30で表される共通情報及び暗号化コンテンツを連接して(Hpi‖e[Kci,Ci])通信網Nを経由してチューナ2に配信する。以上により実施の形態5の後段階が終了する。
【0111】
次にチューナ2における復号処理について説明する。チューナ2のCPU21はi番目の共通情報及び暗号化されたコンテンツHpi‖e[Kci,Ci]を受信した場合、鍵情報記憶部251から位数nE、受信者鍵mxj、及び、一の候補鍵xiを読み出しRAM21に記憶する。そして、CPU21は下記の式31及び32に代入することによりコンテンツ鍵Kciを算出する。すなわち、副乱数に候補鍵を乗じた値を位数で除した余りに受信者鍵を加算した値に、特定点Pのx座標値を乗じた値と、秘匿乱数との排他的論理和によりコンテンツ鍵を算出する。
【0112】
【数17】
【0113】
次にCPU21は、算出されたコンテンツ鍵Kciと鍵情報記憶部251に記憶された確認情報RCiとを比較することによりコンテンツ鍵Kciが正当であるか否かを判断する。正当でない場合は新たな候補鍵を取り出して同様の演算処理を繰り返す。正当である場合は、算出したコンテンツ鍵Kciにより、暗号化コンテンツを復号して映像コンテンツCiを取り出し、MPEGデコーダ28でデコードした後、映像・音声出力部29を経由してモニター等に映像、音声信号を出力する。なお、本実施の形態においては副乱数を1つとしたが、新たな副乱数を付加して系列を埋め込むようにしても良い。
【0114】
実施の形態6
実施の形態6は実施の形態4及び5を組み合わせたものであり、かつ系列を埋め込まない形態に関する。まず、実施の形態6の前段階の処理について説明する。サーバコンピュータ1のCPU11は、ある大きな素数p>3、及び、上述した式21により特定される楕円曲線Eを選択する。
【0115】
そして、CPU11は楕円曲線Eの位数をnEとし、この位数をもつ楕円曲線上の座標点を特定点Pとする。ただし、位数nEは素数位数であるか、または、楕円曲線の位数の素因数で大きな素数とする。なお、位数nE及び素数pは予め計算されて記憶部15に記憶されている。
【0116】
CPU11は受信者毎に固有の受信者鍵mxjを生成する。
受信者鍵mxj (1≦j≦ku)
ただし、1≦mxj<nE、全受信者数はKuとする。
【0117】
次に、CPU11は主乱数Si及び第1副乱数νi及び第2副乱数μiを生成する。
第1副乱数及び第2副乱数{νi,μi} (1≦i≦J)
ただし、1≦νi,μi<nE
【0118】
CPU11は{Si,νi,μi}の全ての組に対し、各受信者の受信者鍵mxiを用いて、式32により候補鍵Sxj={xi} (1≦i≦J)を生成する。
【0119】
【数18】
【0120】
CPU11は式33により算出した候補鍵Sxj={xi} (1≦i≦J)の配置をランダムに並び替える。なお、本実施の形態においては並び替え処理を行うこととしたが、必ずしも実行する必要はなくセキュリティの強度に応じて適宜実行するようにすればよい。また、CPU11はコンテンツ鍵Kci(1≦i≦J)の正当性を確認するための確認情報{RCi}(1≦i≦J)を生成する。
【0121】
CPUは以上の処理により生成した受信者鍵mxj (1≦j≦ku)、候補鍵Sxj={xi} (1≦i≦J)、及び確認情報{RCi}(1≦i≦J)を受信者のIDに対応づけて受信者情報ファイル151に記憶する。そして、安全な通信路で受信者jに対し、特定点Pの座標値、受信者鍵mxj、候補鍵Sxj、及び確認情報{RCi}(1≦i≦J)を配布する。受信者は配布されたICカードをチューナ2のリーダ2Rに挿入する。チューナ2のCPU21はICカードに記憶された特定点Pの座標値、受信者鍵、候補鍵及び確認情報を記憶部25の鍵情報記憶部251に記憶する。以上により実施の形態6における前段階が終了する。
【0122】
次に実施の形態6における後段階について説明する。CPU11はコンテンツDB1Dに記憶されている映像コンテンツCiを暗号化するためのコンテンツ鍵Kci(ただし、1≦Kci<nE)を生成する。この生成されたコンテンツ鍵KciはRAM12に記憶される。
【0123】
CPU11はコンテンツ鍵Kci(1≦i≦J)により、映像コンテンツCiを暗号化する。次に共通情報を作成するためにCPU11は秘匿乱数
【数19】
をコンテンツ鍵Kci、主乱数Si及び特定点Pを用いて生成する。ここで、
【数20】
はスカラ倍算した結果の特定点Pのx座標値である。そしてCPU11は、共通情報Hpiを秘匿乱数、第1副乱数νi第2副乱数μi及び特定点Pを用いて下記の式34により算出する。
【0124】
【数21】
【0125】
CPU11は上述した式34で表される共通情報及び暗号化コンテンツを連接して(Hpi‖e[Kci,Ci])通信網Nを経由してチューナ2に配信する。以上により実施の形態6の後段階が終了する。
【0126】
次にチューナ2における復号処理について説明する。チューナ2のCPU21はi番目の共通情報及び暗号化されたコンテンツHpi‖e[Kci,Ci]を受信した場合、鍵情報記憶部251から特定点P、受信者鍵mxj、及び、一の候補鍵xiを読み出しRAM21に記憶する。そして、CPU21は下記の式35及び36に代入することによりコンテンツ鍵Kciを算出する。すなわち、受信者鍵に第1副乱数に候補鍵を乗じた値を加算した値を更に特定点の座標値で乗じた値に、第1副乱数、第2副乱数及び特定点の座標値を乗じた値を加算した値のx座標値と、秘匿乱数との排他的論理和によりコンテンツ鍵を算出する。
【0127】
【数22】
【0128】
次にCPU21は、算出されたコンテンツ鍵Kciと鍵情報記憶部251に記憶された確認情報RCiとを比較することによりコンテンツ鍵Kciが正当であるか否かを判断する。正当でない場合は新たな候補鍵を取り出して同様の演算処理を繰り返す。正当である場合は、算出したコンテンツ鍵Kciにより、暗号化コンテンツを復号して映像コンテンツCiを取り出し、MPEGデコーダ28でデコードした後、映像・音声出力部29を経由してモニター等に映像、音声信号を出力する。
【0129】
以上述べた実施の形態1乃至6の特徴を表1にまとめた。表1には各実施の形態で生成される共通情報、系列埋め込みの有無、チューナ2のCPU21に負荷される演算内容、及び処理負担の程度(候補鍵の並び替えを行うか、行わないか区別して表示している)をそれぞれ列記した。本発明においては、全受信者へ共通の情報量の少ない共通情報を配信し、受信者個別の鍵で復号することにより、全受信者の共通の鍵を取り出すことができる。チューナ2は、候補鍵の並び替え(リタイミング対策)を行うと計算量が、候補鍵の数Jだけ増加することが分かる。また系列埋め込みは、チューナ2の計算量に影響を及ぼすことがない。また、安全性の観点から実施例4、5、6においては、楕円曲線の位数nEを、160ビット程度としておくことが好ましい。これに対し、実施例1、2、3では素数nとして1024ビット程度の大きさが好ましい。
【0130】
【表1】
【0131】
さらに、実施例6は、γi ,μi を適切に選ぶことにより候補鍵の集合xi に対して異なるSiを対応させることができ、鍵集合の元を有効に複数回使用することが可能となる。ただし、複数回使用した場合、リタイミング攻撃が可能となるため、複数使う候補鍵と1回だけ使う候補鍵とを混在させ、コンテンツの利用が一部できなくするようにすることが好ましい。以上述べた実施の形態1乃至6をチューナ2の性能、セキュリティの強度に応じて使い分けることができる。
【0132】
実施の形態2乃至6は以上の如き構成としてあり、その他の構成及び作用は実施の形態1と同様であるので、対応する部分には同一の参照番号を付してその詳細な説明を省略する。
【0133】
(付記1) 配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信システムにおいて、
前記配信装置は、
前記受信装置を利用する受信者に固有の受信者鍵を生成する受信者鍵生成手段と、
主乱数及び副乱数を生成させ、前記受信者鍵生成手段により生成された各受信者の受信者鍵、前記生成した主乱数及び副乱数に基づき、複数の候補鍵を生成する候補鍵生成手段と、
コンテンツをコンテンツ鍵により暗号化するコンテンツ暗号化手段と、
前記コンテンツ鍵及び前記主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する共通情報生成手段と、
共通情報生成手段により生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを前記受信装置へ配信する配信手段とを備え、
前記受信装置は、
前記受信者鍵生成手段により生成された受信者鍵、前記候補鍵生成手段により生成された候補鍵を記憶する鍵情報記憶手段と、
前記配信手段により、共通情報及び暗号化されたコンテンツが配信された場合、前記鍵情報記憶手段に記憶した受信者鍵、候補鍵、前記共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する算出手段と、
算出したコンテンツ鍵により前記コンテンツを復号する復号手段と
を備えることを特徴とするコンテンツ配信システム。
(付記2) 前記配信装置は、前記候補鍵生成手段により生成された複数の候補鍵の順序を並び替える並び替え手段を更に備えることを特徴とする付記1に記載のコンテンツ配信システム。
(付記3) 前記配信装置は、さらに受信者毎に固有の系列を生成する系列生成手段を更に備え、
前記候補鍵生成手段は、前記系列生成手段により生成された系列に応じて、前記生成した副乱数を、前記受信者鍵生成手段により生成された各受信者の受信者鍵及び主乱数に当てはめることにより複数の候補鍵を生成するよう構成してあることを特徴とする付記1又は2に記載のコンテンツ配信システム。
(付記4) 前記配信装置は、前記コンテンツ鍵の正当性を判断するための確認情報を生成する確認情報生成手段を更に備え、
前記鍵情報記憶手段は、前記確認情報生成手段により生成された確認情報を記憶するよう構成してあり、
前記算出手段は、前記鍵情報記憶手段に記憶した受信者鍵、前記共通情報に含まれる副乱数及び秘匿乱数に対して、候補鍵を適用してコンテンツ鍵を算出し、算出したコンテンツ鍵と前記確認情報とを対比することにより前記コンテンツ鍵の正当性を判断し、正当と判断されるまで候補鍵を変更してコンテンツ鍵を算出するよう構成してあることを特徴とする付記1乃至3のいずれかに記載のコンテンツ配信システム。
(付記5) 前記系列生成手段における系列はM系列であることを特徴とする付記3に記載コンテンツ配信システム。
(付記6) 前記候補鍵生成手段は、主乱数から、副乱数に各受信者の受信鍵を乗じた値を所定の素数で除した余りを減じて求めるよう構成してあることを特徴とする付記1に記載のコンテンツ配信システム。
(付記7) 共通情報生成手段は、前記コンテンツ鍵と前記主乱数との排他的論理和により秘匿乱数を生成するよう構成してあることを特徴とする付記1に記載のコンテンツ配信システム。
(付記8) 前記算出手段は、前記素数で除した余りが副乱数に受信者鍵を乗じた値と等しくなる値に候補鍵を加算して得られる値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出するよう構成してある付記6に記載のコンテンツ配信システム。
(付記9) 前記候補鍵生成手段は、主乱数から、各受信者の受信鍵を副乱数分乗じた値を所定の素数で除した余りを減じて求めるよう構成してあることを特徴とする付記1に記載のコンテンツ配信システム。
(付記10) 前記算出手段は、前記素数で除した余りが受信者鍵を副乱数分乗じた値と等しくなる値に候補鍵を加算して得られる値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出するよう構成してある付記9に記載のコンテンツ配信システム。
(付記11) 前記候補鍵生成手段は、主乱数並びに第1副乱数及び第2副乱数を発生させ、前記系列生成手段により生成された系列に応じて、主乱数から第1副乱数に各受信者の受信鍵を乗じた値を所定の素数で除した余りを減じて求める、または、主乱数から第2副乱数に各受信者の受信鍵を乗じた値を所定の素数で除した余りを減じて求めるよう構成してあることを特徴とする付記3に記載のコンテンツ配信システム。
(付記12) 前記算出手段は、前記素数で除した余りが第1副乱数または第2副乱数に受信者鍵を乗じた値と等しくなる値に候補鍵を加算して得られる値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出するよう構成してある付記11に記載のコンテンツ配信システム。
(付記13) 前記候補鍵生成手段は、主乱数並びに第1副乱数及び第2副乱数を発生させ、前記系列生成手段により生成された系列に応じて、主乱数を各受信者鍵と第1副乱数との合計値で除した値を所定形状の楕円曲線上の特定点の位数で除した余り、または、主乱数を各受信者鍵と第2副乱数との合計値で除した値を所定形状の楕円曲線上の特定点の位数で除した余りを鍵候補とするよう構成してあることを特徴とする付記3に記載のコンテンツ配信システム。
(付記14) 共通情報生成手段は、前記コンテンツ鍵と前記主乱数に前記位数をもつ楕円曲線上の特定点のx座標値を乗じた値との排他的論理和により生成される秘匿乱数、前記特定点の座標値に第1副乱数を乗じた値、及び特定点の座標値に第2副乱数を乗じた値を含む共通情報を生成するよう構成してあることを特徴とする付記13に記載のコンテンツ配信システム。
(付記15) 前記算出手段は、受信者鍵に特定点の座標値を乗じた値に前記特定点の座標値に第1副乱数を乗じた値を加算した値を候補鍵で乗じた値のx座標値と、前記秘匿乱数との排他的論理和、または、受信者鍵に特定点の座標値を乗じた値に前記特定点の座標値に第2副乱数を乗じた値を加算した値を候補鍵で乗じた値のx座標値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出するよう構成してある付記14に記載のコンテンツ配信システム。
(付記16) 前記候補鍵生成手段は、主乱数及び副乱数を発生させ、主乱数から各受信者鍵を減じた値を副乱数で除した値をさらに所定形状の楕円曲線上の特定点の位数で除した余りを鍵候補とするよう構成してあることを特徴とする付記1に記載のコンテンツ配信システム。
(付記17) 共通情報生成手段は、前記コンテンツ鍵と前記主乱数に前記位数をもつ楕円曲線上の特定点のx座標値を乗じた値との排他的論理和により生成される秘匿乱数、及び、前記副乱数を含む共通情報を生成するよう構成してあることを特徴とする付記16に記載のコンテンツ配信システム。
(付記18) 前記算出手段は、副乱数に候補鍵を乗じた値を前記位数で除した余りに受信者鍵を加算した値に、前記特定点のx座標値を乗じた値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出するよう構成してある付記17に記載のコンテンツ配信システム。
(付記19) 前記候補鍵生成手段は、主乱数、第1副乱数及び第2副乱数を発生させ、主乱数から各受信者鍵を減じた値を第1副乱数で除した値から、副乱数を所定形状の楕円曲線上の特定点の位数で除した余りを減じた値を鍵候補とするよう構成してあることを特徴とする付記1に記載のコンテンツ配信システム。
(付記20) 共通情報生成手段は、前記コンテンツ鍵と前記主乱数に前記位数をもつ楕円曲線上の特定点のx座標値を乗じた値との排他的論理和により生成される秘匿乱数、第1副乱数、及び、前記第2副乱数に前記特定点の座標値を乗じた値を含む共通情報を生成するよう構成してあることを特徴とする付記19に記載のコンテンツ配信システム。
(付記21) 前記算出手段は、受信者鍵に第1副乱数に候補鍵を乗じた値を加算した値を更に前記特定点の座標値で乗じた値に、前記第1副乱数、第2副乱数及び前記特定点の座標値を乗じた値を加算した値のx座標値と、前記秘匿乱数との排他的論理和によりコンテンツ鍵を算出するよう構成してある付記20に記載のコンテンツ配信システム。
(付記22) コンテンツを配信する配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信方法において、
前記配信装置により、前記受信装置を利用する受信者に固有の受信者鍵を生成する受信者鍵生成ステップと、
前記配信装置により、主乱数及び副乱数を生成させ、前記受信者鍵生成ステップにより生成された各受信者の受信者鍵、前記生成した主乱数及び副乱数に基づき、複数の候補鍵を生成する候補鍵生成ステップと、
前記配信装置により、コンテンツをコンテンツ鍵により暗号化するコンテンツ暗号化ステップと、
前記配信装置により、前記コンテンツ鍵及び前記主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する共通情報生成ステップと、
前記配信装置により、共通情報生成ステップにより生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを前記受信装置へ配信する配信ステップとを備え、
前記受信装置により、前記受信者鍵生成ステップにより生成された受信者鍵、前記候補鍵生成ステップにより生成された候補鍵を鍵情報記憶部に記憶する鍵情報記憶ステップと、
前記配信装置から、共通情報及び暗号化されたコンテンツが配信された場合、前記受信装置により、前記鍵情報記憶部に記憶した受信者鍵、候補鍵、前記共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する算出ステップと、
前記受信装置により、算出したコンテンツ鍵により前記コンテンツを復号する復号ステップと
を備えることを特徴とするコンテンツ配信方法。
【0134】
【発明の効果】
以上詳述した如く、本発明にあっては、放送局側の配信装置は、各受信者に固有の受信者鍵を生成する。次に配信装置は、主乱数及び副乱数を生成させ、各受信者の受信者鍵、主乱数及び副乱数に基づき、複数の候補鍵を生成する。このようにして生成された各受信者固有の受信者鍵及び共通の情報である複数の候補鍵は、各受信者に配布しておく。コンテンツ配信の際には配信装置は、コンテンツをコンテンツ鍵により暗号化する。そして、コンテンツ鍵及び主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する。生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを受信装置へ配信する。
【0135】
受信装置は、共通情報及び暗号化されたコンテンツが配信された場合、記憶した受信者鍵及び候補鍵を読み出し、共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する。受信装置は、算出したコンテンツ鍵によりコンテンツを復号する。このように構成したので、受信者には最初の段階で固有の受信者鍵が配布しておき、また共通の複数の候補鍵を配布しておくだけで、以後のコンテンツ配信時は共通情報及び暗号化したコンテンツを配信すればよいだけなので、配信装置側の負担が軽減され、またデジタル放送の分野では帯域を大幅に確保することが可能となる。さらに、受信者鍵は受信者に固有の情報であるので、受信者鍵を悪用する受信者を容易に特定することが可能となる。
【0136】
また、本発明にあっては、放送局側の配信装置は、生成した複数の候補鍵の順序を並び替え、この並び替えた候補鍵を受信者側に提供する。受信装置は、コンテンツ鍵を算出するために複数の候補鍵を、受信者鍵、副乱数及び秘匿乱数に逐次代入する。この場合、候補鍵を並び替えておくことで解析に要する負担が大きくなるため、安易な不正を抑制することが可能となる。
【0137】
また、本発明にあっては、配信装置は受信者毎に固有の系列を生成する。配信装置は生成した系列に応じて、副乱数を、各受信者の受信者鍵及び主乱数に当てはめることにより複数の候補鍵を生成する。このように構成したので悪意のある受信者が第3の鍵を生成する場合でも、系列を特定することができるため、容易に悪意のある受信者を特定することが可能となる。
【0138】
さらに、本発明にあっては、配信装置は、コンテンツ鍵の正当性を判断するための確認情報を生成する。受信装置はこの生成された確認情報を記憶する。受信装置は、記憶した受信者鍵、共通情報に含まれる副乱数及び秘匿乱数に対して、候補鍵を適用してコンテンツ鍵を算出する。そして記憶した確認情報と、算出したコンテンツ鍵とを対比することにより前記コンテンツ鍵が正当か否かを判断する。そして、正当と判断した場合、算出されたコンテンツ鍵を利用してコンテンツを復号する。このように構成したので、容易にコンテンツ鍵が正当であるか否かを判断することが可能となる等、本発明は優れた効果を奏し得る。
【図面の簡単な説明】
【図1】本発明のコンテンツ配信システムの概要を示す模式図である。
【図2】サーバコンピュータ及びチューナのハードウェア構成を示すブロック図である。
【図3】前段階の処理手順を示すフローチャートである。
【図4】後段階の処理手順を示すフローチャートである。
【図5】復号処理の処理手順を示すフローチャートである。
【図6】従来の配信システムの概要を示す説明図である。
【符号の説明】
1 サーバコンピュータ(配信装置)
2 チューナ(受信装置)
1D コンテンツDB
N 通信網
15 記憶部
15P 制御プログラム
151 受信者情報ファイル
11 CPU
25 記憶部
21 CPU
25P 制御プログラム
251 鍵情報記憶部
2R リーダ
Claims (5)
- 配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信システムにおいて、
前記配信装置は、
前記受信装置を利用する受信者に固有の受信者鍵を生成する受信者鍵生成手段と、
主乱数及び副乱数を生成させ、前記受信者鍵生成手段により生成された各受信者の受信者鍵、前記生成した主乱数及び副乱数に基づき、複数の候補鍵を生成する候補鍵生成手段と、
コンテンツをコンテンツ鍵により暗号化するコンテンツ暗号化手段と、
前記コンテンツ鍵及び前記主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する共通情報生成手段と、
共通情報生成手段により生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを前記受信装置へ配信する配信手段とを備え、
前記受信装置は、
前記受信者鍵生成手段により生成された受信者鍵、前記候補鍵生成手段により生成された候補鍵を記憶する鍵情報記憶手段と、
前記配信手段により、共通情報及び暗号化されたコンテンツが配信された場合、前記鍵情報記憶手段に記憶した受信者鍵、候補鍵、前記共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する算出手段と、
算出したコンテンツ鍵により前記コンテンツを復号する復号手段と
を備えることを特徴とするコンテンツ配信システム。 - 前記配信装置は、前記候補鍵生成手段により生成された複数の候補鍵の順序を並び替える並び替え手段を更に備えることを特徴とする請求項1に記載のコンテンツ配信システム。
- 前記配信装置は、さらに受信者毎に固有の系列を生成する系列生成手段を更に備え、
前記候補鍵生成手段は、前記系列生成手段により生成された系列に応じて、前記生成した副乱数を、前記受信者鍵生成手段により生成された各受信者の受信者鍵及び主乱数に当てはめることにより複数の候補鍵を生成するよう構成してあることを特徴とする請求項1又は2に記載のコンテンツ配信システム。 - 前記配信装置は、前記コンテンツ鍵の正当性を判断するための確認情報を生成する確認情報生成手段を更に備え、
前記鍵情報記憶手段は、前記確認情報生成手段により生成された確認情報を記憶するよう構成してあり、
前記算出手段は、前記鍵情報記憶手段に記憶した受信者鍵、前記共通情報に含まれる副乱数及び秘匿乱数に対して、候補鍵を適用してコンテンツ鍵を算出し、算出したコンテンツ鍵と前記確認情報とを対比することにより前記コンテンツ鍵の正当性を判断し、正当と判断されるまで候補鍵を変更してコンテンツ鍵を算出するよう構成してあることを特徴とする請求項1乃至3のいずれかに記載のコンテンツ配信システム。 - コンテンツを配信する配信装置により暗号化したコンテンツを、通信網を介して接続された受信装置へ配信するコンテンツ配信方法において、
前記配信装置により、前記受信装置を利用する受信者に固有の受信者鍵を生成する受信者鍵生成ステップと、
前記配信装置により、主乱数及び副乱数を生成させ、前記受信者鍵生成ステップにより生成された各受信者の受信者鍵、前記生成した主乱数及び副乱数に基づき、複数の候補鍵を生成する候補鍵生成ステップと、
前記配信装置により、コンテンツをコンテンツ鍵により暗号化するコンテンツ暗号化ステップと、
前記配信装置により、前記コンテンツ鍵及び前記主乱数により生成される秘匿乱数、並びに、前記副乱数を含む共通情報を生成する共通情報生成ステップと、
前記配信装置により、共通情報生成ステップにより生成した共通情報及びコンテンツ暗号化手段により暗号化したコンテンツを前記受信装置へ配信する配信ステップとを備え、
前記受信装置により、前記受信者鍵生成ステップにより生成された受信者鍵、前記候補鍵生成ステップにより生成された候補鍵を鍵情報記憶部に記憶する鍵情報記憶ステップと、
前記配信装置から、共通情報及び暗号化されたコンテンツが配信された場合、前記受信装置により、前記鍵情報記憶部に記憶した受信者鍵、候補鍵、前記共通情報に含まれる副乱数及び秘匿乱数を用いて、コンテンツ鍵を算出する算出ステップと、
前記受信装置により、算出したコンテンツ鍵により前記コンテンツを復号する復号ステップと
を備えることを特徴とするコンテンツ配信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003135125A JP4171346B2 (ja) | 2003-05-13 | 2003-05-13 | コンテンツ配信システム及びコンテンツ配信方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003135125A JP4171346B2 (ja) | 2003-05-13 | 2003-05-13 | コンテンツ配信システム及びコンテンツ配信方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004343260A JP2004343260A (ja) | 2004-12-02 |
JP4171346B2 true JP4171346B2 (ja) | 2008-10-22 |
Family
ID=33525493
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003135125A Expired - Fee Related JP4171346B2 (ja) | 2003-05-13 | 2003-05-13 | コンテンツ配信システム及びコンテンツ配信方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4171346B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4736603B2 (ja) * | 2005-07-29 | 2011-07-27 | ソニー株式会社 | 情報通信装置及び情報通信方法、並びにコンピュータ・プログラム |
JP4879725B2 (ja) * | 2006-12-28 | 2012-02-22 | キヤノンItソリューションズ株式会社 | コンテンツ流通システムおよび制御プログラム及び記憶媒体 |
-
2003
- 2003-05-13 JP JP2003135125A patent/JP4171346B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004343260A (ja) | 2004-12-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7260215B2 (en) | Method for encryption in an un-trusted environment | |
US6490353B1 (en) | Data encrypting and decrypting apparatus and method | |
US8396218B2 (en) | Cryptographic module distribution system, apparatus, and program | |
US20080212780A1 (en) | Homomorphic Encryption For Secure Watermarking | |
US20070192397A1 (en) | Cryptosystem Based on a Jacobian of a Curve | |
US20080152149A1 (en) | Secure data distribution | |
KR20020091059A (ko) | 중매인의 사기 가능성을 감소시키면서 익명의 사용자를인증하는 방법 | |
US20040234074A1 (en) | Generation of a mathematically constrained key using a one-way function | |
KR20060079491A (ko) | 조합에 기반한 브로드캐스트 암호화 방법 | |
JP5093513B2 (ja) | 不正者失効システム、暗号化装置、暗号化方法およびプログラム | |
US8374340B2 (en) | Method for secure transmission of data | |
KR20090127716A (ko) | 브로드캐스트 암호화에서 디바이스 키를 추적하는 방법 | |
JP2004515160A (ja) | メッセージ認証システムのためのしきい値暗号方法およびシステム | |
JP4758110B2 (ja) | 通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法 | |
CN111314059B (zh) | 账户权限代理的处理方法、装置、设备及可读存储介质 | |
JP4171346B2 (ja) | コンテンツ配信システム及びコンテンツ配信方法 | |
KR101530107B1 (ko) | 보네-프랜크린 방식을 이용한 개인키 생성 방법 | |
JP4598437B2 (ja) | 復号情報生成装置及びそのプログラム、配信用コンテンツ生成装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム | |
JP4452105B2 (ja) | 復号情報生成装置及びそのプログラム、配信用コンテンツ生成装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム | |
JP2007189597A (ja) | 暗号化装置および暗号化方法、並びに復号化装置および復号化方法 | |
US20090185676A1 (en) | Method to generate a private key in a boneh-franklin scheme | |
JP4875481B2 (ja) | 暗号化情報生成装置及びそのプログラム、秘密鍵生成装置及びそのプログラム、配信用コンテンツ生成装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム | |
JP2007158984A (ja) | 電子文書の真正性保証方法および電子文書の公開システム | |
JP2007521676A (ja) | ディフィー・ヘルマン・ディジタル署名の生成及び検証 | |
JP4133364B2 (ja) | 暗号化装置及びそのプログラム、復号装置及びそのプログラム、並びに、コンテンツ配信サーバ及びコンテンツ復号端末 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050902 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080701 |
|
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: 20080715 |
|
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: 20080808 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110815 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4171346 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: 20120815 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130815 Year of fee payment: 5 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |