JP4133364B2 - ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL - Google Patents

ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL Download PDF

Info

Publication number
JP4133364B2
JP4133364B2 JP2003016602A JP2003016602A JP4133364B2 JP 4133364 B2 JP4133364 B2 JP 4133364B2 JP 2003016602 A JP2003016602 A JP 2003016602A JP 2003016602 A JP2003016602 A JP 2003016602A JP 4133364 B2 JP4133364 B2 JP 4133364B2
Authority
JP
Japan
Prior art keywords
data
content
encrypted
decryption
power value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003016602A
Other languages
Japanese (ja)
Other versions
JP2004226849A (en
Inventor
悟一郎 花岡
清一 合志
一人 小川
逸郎 室田
剛 大竹
誠一 難波
恵吾 真島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Japan Broadcasting Corp
Original Assignee
Japan Broadcasting Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Japan Broadcasting Corp filed Critical Japan Broadcasting Corp
Priority to JP2003016602A priority Critical patent/JP4133364B2/en
Publication of JP2004226849A publication Critical patent/JP2004226849A/en
Application granted granted Critical
Publication of JP4133364B2 publication Critical patent/JP4133364B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、デジタルデータを暗号化する暗号化技術、並びに、暗号化されたデジタルデータを復号する復号技術に関し、さらにこの暗号化技術及び復号技術を用いたコンテンツ配信サーバ及びコンテンツ復号端末に関する。
【0002】
【従来の技術】
近年、映像や音声等のマルチメディアコンテンツ(以下コンテンツという)が、ネットワーク(インターネット等)上で流通するようになっている。このような環境において、従来、コンテンツの著作権を保護するためには、擬似乱数により暗号鍵を生成した共通鍵暗号方式によってコンテンツの暗号化を行う方法が一般的である(例えば、非特許文献1参照)。
【0003】
この共通鍵暗号方式によってコンテンツの暗号化を行う方法では、暗号化したコンテンツに、暗号化に使用した鍵の一部の情報や、コンテンツ利用条件等のコンテンツに関連する情報等を付加して配信するパッケージサーバと、暗号化されたコンテンツを復号するための復号鍵情報をコンテンツの正規利用者に対して発行するライセンスサーバとが、予め安全な通信手段を用いて暗号鍵を生成するためのライセンスシードを共有しておかなければならない。また、パッケージサーバには暗号化に関するすべての情報が集中しているため、ライセンスサーバの利用許諾を受けることなく、ライセンスシード等の秘密情報を悪用し、不正利用者に対してコンテンツの暗号復号鍵を不当に流出させてしまう恐れがあった。
【0004】
このような問題に対して、本願出願人は、ID−Based暗号方式と呼ばれる技術を用いて、パッケージサーバとライセンスサーバとを独立に運用する手法を提案(出願)した(「コンテンツ配信システム」特願2002−268285)。
【0005】
ここで、図12を参照してID−Based暗号方式を用いてコンテンツを配信する手法について説明する。図12は、ID−Based暗号方式を用いてコンテンツの配信を行うコンテンツ配信システム1Bの構成を示すブロック図である。
【0006】
図12に示すように、コンテンツ配信システム1Bは、配信するコンテンツに識別子を割り当てるコンテンツサーバ10と、暗号化されたコンテンツを復号するための復号鍵情報やコンテンツの利用条件等の情報をコンテンツの正規利用者に対して発行するライセンスサーバ20Bと、配信するコンテンツを暗号化し、その暗号化したコンテンツに暗号化に使用した鍵の一部の情報やコンテンツ利用条件等のコンテンツに関連する情報を付加して配信するパッケージサーバ(コンテンツ配信サーバ)30Bと、コンテンツを視聴/閲覧するユーザ端末40Bとが、ネットワーク(例えばインターネット3)に接続されて構成されている。
【0007】
このコンテンツ配信システム1Bでは、コンテンツサーバ10が、配信するコンテンツに識別子(識別情報)を割り当て、その識別子をライセンスサーバ20Bとパッケージサーバ30Bとに送信する。
ライセンスサーバ20Bは、ライセンスサーバ20Bの秘密情報を使用してライセンスサーバ公開情報を作成し、公開するとともにパッケージサーバ30Bへ送信する。
【0008】
パッケージサーバ(コンテンツ配信サーバ)30Bは、擬似乱数を使用してパッケージサーバ公開情報を作成し、公開情報として公開する。さらに、パッケージサーバ30Bは、配信するコンテンツに対して、ライセンスサーバ20Bが公開したライセンスサーバ公開情報と擬似乱数とを用いて、ID−Based暗号方式(例えば、Boneh,Franklin方式)により暗号化を行い暗号化コンテンツを作成する。そして、パッケージサーバ30Bは、暗号化コンテンツと、コンテンツの識別子と、パッケージサーバ公開情報とを合成したパッケージを作成し、コンテンツを要求したユーザ端末40Bへ送信する。
【0009】
このパッケージ(暗号化コンテンツを含む)を受信したユーザ端末40Bは、パッケージを分離して、暗号化コンテンツ、コンテンツの識別子及びパッケージサーバ公開情報を取得し、取得したコンテンツの識別子をライセンスサーバ20Bへ送信し、暗号化コンテンツを復号するための情報を要求する。
【0010】
ライセンスサーバ20Bは、ユーザ端末40Bからコンテンツの識別子を受信すると、ユーザ認証をユーザ端末40Bに要求する。
このユーザ認証を要求されたユーザ端末40Bは、ユーザに対してパスワードやクレジットカード番号等の認証情報を入力させ、入力された認証情報をライセンスサーバ20Bへ送信する。
【0011】
そして、ライセンスサーバ20Bは、ユーザ端末40Bから送信された認証情報に基づいてユーザ認証を行い、正当なユーザであると確認された場合にのみ、秘密情報とコンテンツの識別子とを使用して秘密鍵(復号鍵)を作成し、ユーザ端末40Bへ送信する。
【0012】
この秘密鍵を受信したユーザ端末40Bは、秘密鍵とパッケージサーバ公開情報とを使用して、暗号化コンテンツを復号し、コンテンツを取得する。
このように、ID−Based暗号方式を用いてコンテンツを配信する場合、ライセンスサーバとパッケージサーバとの間で、公開情報以外の情報交換を行う必要がなく、それぞれのサーバを独立に運用することが可能になる。
【0013】
【非特許文献1】
ウォーウィック・フォード、マイケル・バウム著、山田慎一郎訳「ディジタル署名と暗号技術」第2版、株式会社ピアソン・エデュケーション、2001年10月10日、p.75−117
【0014】
【発明が解決しようとする課題】
しかし、前記従来のID−Based暗号方式を用いてコンテンツを配信する手法は、ライセンスサーバとパッケージサーバとの間で、公開情報以外の情報交換を行う必要がないため、ライセンスサーバとパッケージサーバとの通信や秘密情報管理に関わるコストを低減できる点においては優れているが、以下のような問題を含んでいる。
【0015】
すなわち、現在知られているID−Based暗号方式は、本来存在し得ない理想的な関数の存在と、Bilinear Deffie−Hellman問題と呼ばれる特殊な数論的問題を解く困難性を前提としたものであるため、その安全性については必ずしも信頼できるものではない。このため、ID−Based暗号方式によって暗号化されたコンテンツは、不正に解読される危険性を含んでいる。
【0016】
本発明は、以上のような問題点に鑑みてなされたものであり、ライセンスサーバとパッケージサーバとの間で秘密情報を共有せず、それぞれ独立に運用し、かつ、暗号化コンテンツの不正利用(不正解読)を低減させる暗号化装置及びそのプログラム、復号装置及びそのプログラム、並びに、コンテンツ配信サーバ及びコンテンツ復号端末を提供することを目的とする。
【0017】
【課題を解決するための手段】
本発明は、前記目的を達成するために創案されたものであり、まず、請求項1に記載の暗号化装置は、予め公開された、特定の位数(q)より巡回群となる群(G)と、その群(G)の要素である第一元(g)及び第二元(g)と、多項式{f(λ):=Σ j=0i,jλ}(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数)から、
【数11】

Figure 0004133364
により生成された生成値(ui,j)とからなる公開情報に基づいて、デジタルデータ(m)を暗号化した、暗号化データ(c)を生成する暗号化装置であって、前記位数(q)以下の予め定めた正整数を指数(r)として、前記第一元(g)及び前記第二元(g)をべき乗し、第一元べき乗値(α)及び第二元べき乗値(β)を生成するべき乗値生成手段と、前記デジタルデータ(m)を識別するための識別情報(id)、前記指数(r)及び前記生成値(ui,j)から、
【数12】
Figure 0004133364
により前記デジタルデータ(m)を変換した変換データ(γ)を生成する変換データ生成手段と、前記第一元べき乗値(α)、前記第二元べき乗値(β)及び前記変換データ(γ)を合成し、前記暗号化データ(c)とするデータ合成手段と、を備えていることを特徴とする。
【0018】
かかる構成によれば、暗号化装置は、べき乗値生成手段によって、特定の位数により巡回群となる群の要素である第一元及び第二元を、その位数以下の予め定めた正整数を指数としてべき乗して、第一元べき乗値及び第二元べき乗値を生成する。そして、変換データ生成手段によって、デジタルデータを変換した変換データを生成する。なお、変換データは、デジタルデータを識別するための識別情報と、群の位数以下で選択された指数と、公開情報として公開された生成値とから算出され、暗号化データの実体となるものである。この識別情報には、デジタルデータ固有の情報、例えばファイル名、コンテンツ名等を用いることができる。なお、第一元べき乗値及び第二元べき乗値は、復号側で、この変換データを元のデジタルデータに変換するために用いられる。そして、データ合成手段によって、第一元べき乗値、第二元べき乗値及び変換データを合成して暗号化データとする。なお、生成値をf (λ)〜f (λ)の6つの多項式から生成するのは、 R.Cramer and V.Shoup,"A Practical public key cryptosystem provably secure against adaptive chosen ciphertext attack",in proc. Crypto '98,pp.13-25. により、暗号化データの不正解読に対する安全性が証明されていることによる。
【0019】
このように、暗号化装置は、デジタルデータ固有の識別情報と、暗号化する側で選択した指数と、公開情報とによって暗号化を行うため、ライセンスサーバ等のデジタルデータの権利を管理する装置(サーバ)と秘密情報を通信する必要がなく、独立して暗号化を行うことが可能になる。
【0020】
ここでは、公開情報である生成値を生成するための多項式そのものは公開していない。このため、例えば、デジタルデータを配信する側が、配信するデジタルデータの識別情報に基づいて、多項式を演算した結果を暗号化データの復号鍵として用いることが可能になる。また、巡回群を用いることで、暗号化側と復号側とで、既知の暗号化方式であるElGamal暗号化方式や、Deffie−Hellman鍵配送と同様な手法を用いることができ、復号側で巡回群の要素である第一元及び第二元と、復号鍵とにより暗号化データを復号することが可能になる。なお、巡回群とは、集合{c,c ,…,c n−1 ,c =e}となる集合であって、n乗すると単位元(e)になるものをいう。このnを特に位数という。
【0021】
また、請求項2に記載の暗号化装置は、請求項1に記載の暗号化装置において、前記識別情報(id)、前記第一元べき乗値(α)、前記第二元べき乗値(β)及び前記変換データ(γ)から、特定の長さの情報となるハッシュ値(κ)を生成するハッシュ値生成手段と、前記識別情報(id)、前記指数(r)、前記ハッシュ値(κ)及び前記生成値(ui,j)から、
【数13】
Figure 0004133364
但し、κ:=H(id,α,β,γ)、Hはハッシュ関数)により復号認証データ(δ)を生成する復号認証データ生成手段とを備え、前記データ合成手段が、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び復号認証データ(δ)を合成し、前記暗号化データ(c)とすることを特徴とする。
【0022】
かかる構成によれば、暗号化装置は、ハッシュ値生成手段によって、識別情報、第一元べき乗値、第二元べき乗値及び変換データから、SHA(Secure Hash Algorithm)等のハッシュ関数によって一定長のデータとなるハッシュ値を計算する。そして、復号認証データ生成手段によって、デジタルデータ固有の識別情報と、暗号化する側で選択した指数と、ハッシュ値と、公開情報である生成値とに基づいて、復号認証データを生成する。この復号認証データは、暗号化データが正当な手続きによって生成されたものであることを特定するためのデータとなる。
【0023】
そして、データ合成手段によって、第一元べき乗値、第二元べき乗値及び変換データに、さらに復号認証データを付加して暗号化データとする。これによって、復号側で、暗号化データの正当性を判定することが可能になる。なお、暗号化データの正当性の判定を必 要としない簡易な暗号化の場合では、第一元べき乗値、第二元べき乗値及び変換データのみを合成することで、暗号化データを生成することとしてもよい。
【0024】
また、請求項3に記載の暗号化プログラムは、予め公開された、特定の位数(q)により巡回群となる群(G)と、その群(G)の要素である第一元(g)及び第二元(g)と、多項式{f(λ):=Σ j=0i,jλ}(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数)から、
【数14】
Figure 0004133364
により生成された生成値(ui,j)とからなる公開情報に基づいて、デジタルデータ(m)を暗号化した、暗号化データ(c)を生成するために、コンピュータを、以下の手段によって機能させる構成とした。
【0025】
すなわち、前記位数(q)以下の予め定めた正整数を指数(r)として、前記第一元(g)及び前記第二元(g)をべき乗し、第一元べき乗値(α)及び第二元べき乗値(β)を生成するべき乗値生成手段、前記デジタルデータ(m)を識別するための識別情報(id)、前記指数(r)及び前記生成値(ui,j)から、
【数15】
Figure 0004133364
により前記デジタルデータ(m)を変換した変換データ(γ)を生成する変換データ生成手段、前記第一元べき乗値(α)、前記第二元べき乗値(β)及び前記変換データ(γ)を合成し、前記暗号化データ(c)とするデータ合成手段、とした。
【0026】
かかる構成によれば、暗号化プログラムは、べき乗値生成手段によって、特定の位数により巡回群となる群の要素である第一元及び第二元を、その位数以下の予め定めた正整数を指数としてべき乗して、第一元べき乗値及び第二元べき乗値を生成する。そして、変換データ生成手段によって、デジタルデータを変換した変換データを生成する。なお、変換データは、デジタルデータを識別するための識別情報と、群の位数以下で選択された指数と、公開情報として公開された生成値とから算出され、暗号化データの実体となるものである。なお、第一元べき乗値及び第二元べき乗値は、復号側で、この変換データを元のデジタルデータに変換するために用いられる。そして、データ合成手段によって、第一元べき乗値、第二元べき乗値及び変換データを合成して暗号化データとする。
【0027】
このように、コンピュータを前記した各手段として機能させることで、暗号化プログラムは、一般的なパーソナルコンピュータ、ワークステーション等で動作させることができる。
【0028】
さらに、請求項4に記載の復号装置は、請求項1に記載の暗号化装置によってデジタルデータ(m)を暗号化した暗号化データ(c)を、前記デジタルデータ(m)を識別するための識別情報(id)に基づいて前記多項式から算出された復号鍵{f(id)}(i=1,2,3,4,5,6)により復号する復号装置であって、前記暗号化データ(c)を、第一元べき乗値(α)、第二元べき乗値(β)及び変換データ(γ)に分割するデータ分割手段と、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び前記復号鍵{f(id)}から、
【数16】
Figure 0004133364
により前記デジタルデータ(m)を生成する復号データ生成手段と、を備えていることを特徴とする。
【0029】
かかる構成によれば、復号装置は、データ分割手段によって、暗号化データを、第一元べき乗値、第二元べき乗値及び変換データに分割し、復号データ生成手段によって、第一元べき乗値、第二元べき乗値及び復号鍵により変換データを変換(復号)してデジタルデータとする。これによって、請求項1に記載の暗号化装置によって暗号化された暗号化データを、復号することができる。
【0030】
また、請求項5に記載の復号装置は、請求項2に記載の暗号化装置によってデジタルデータ(m)を暗号化した暗号化データ(c)を、前記デジタルデータ(m)を識別するための識別情報(id)に基づいて前記多項式から算出された復号鍵{f(id)}(i=1,2,3,4,5,6)により復号する復号装置であって、前記暗号化データ(c)を、第一元べき乗値(α)、第二元べき乗値(β)、変換データ(γ)及び復号認証データ(δ)に分割するデータ分割手段と、前記識別情報(id)と、前記データ分割手段で分割された第一元べき乗値(α)、第二元べき乗値(β)及び変換データ(γ)とから、特定の長さの情報となる認証用ハッシュ値(κ´)を生成する認証用ハッシュ値生成手段と、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記認証用ハッシュ値(κ´)及び前記復号鍵{f(id)}から、
【数17】
Figure 0004133364
但し、κ´:=H(id,α,β,γ)、Hはハッシュ関数)により比較認証データ(δ´)を生成する比較認証データ生成手段と、この比較認証データ生成手段で生成された比較認証データ(δ´)と、前記復号認証データ(δ)とを比較することで、前記暗号化データ(c)が正当な手続きによって生成されたものかどうかを認証する比較認証手段と、この比較認証手段の判定結果に基づいて、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び前記復号鍵{f(id)}から、
【数18】
Figure 0004133364
により前記デジタルデータ(m)を生成する復号データ生成手段と、を備えていることを特徴とする。
【0031】
かかる構成によれば、復号装置は、データ分割手段によって、暗号化データを、第一元べき乗値、第二元べき乗値、変換データ及び復号認証データに分割する。そして、認証用ハッシュ値生成手段によって、デジタルデータ固有の識別情報と、第一元べき乗値、第二元べき乗値及び変換データとから、SHA(Secure Hash Algorithm)等のハッシュ関数により一定長のデータである認証用ハッシュ値を生成する。このハッシュ関数は、暗号化装置で復号認証データを生成する際に用いたハッシュ関数と同じ関数とする。
【0032】
そして、比較認証データ生成手段によって、比較認証データを生成する。この復号装置で生成した比較認証データは、暗号化データが正当な手続きによって生成されたものである場合は、復号認証データと同一の値となるものである。そこで、比較認証手段によって、比較認証データと復号認証データとを比較することで、暗号化データが正当な手続きによって生成されたものである場合にのみ、復号データ生成手段によってデジタルデータを生成(復号)する。これにより、この復号装置は、請求項2に記載の暗号化装置によって暗号化された暗号化データの正当性を認証し、正当なものである場合にのみ復号することができる。
【0033】
さらに、請求項6に記載の復号プログラムは、請求項3に記載の暗号化プログラムによってデジタルデータ(m)を暗号化した暗号化データ(c)を、前記デジタルデータ(m)を識別するための識別情報(id)に基づいて前記多項式から算出された復号鍵{f(id)}(i=1,2,3,4,5,6)により復号するために、コンピュータを、以下の手段によって機能させる構成とした。
すなわち、前記暗号化データ(c)を、第一元べき乗値(α)、第二元べき乗値(β)及び変換データ(γ)に分割するデータ分割手段、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び前記復号鍵{f(id)}から、
【数19】
Figure 0004133364
により前記デジタルデータ(m)を生成する復号データ生成手段、とした。
【0034】
かかる構成によれば、復号プログラムは、データ分割手段によって、暗号化データを、第一元べき乗値、第二元べき乗値及び変換データに分割し、復号データ生成手段によって、第一元べき乗値、第二元べき乗値及び復号鍵により変換データを変換(復号)してデジタルデータとする。これによって、請求項3に記載の暗号化プログラムによって暗号化された暗号化データを、復号することができる。
【0035】
また、請求項7に記載のコンテンツ配信サーバは、デジタルデータであるコンテンツのライセンス情報を提供するライセンスサーバによって、予め公開された、特定の位数(q)により巡回群となる群(G)と、前記群(G)の要素である第一元(g)及び第二元(g)と、多項式{f(λ):=Σ j=0i,jλ}(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数)から、
【数20】
Figure 0004133364
により生成された生成値(ui,j)とからなる公開情報に基づいて、前記コンテンツを暗号化した暗号化データである暗号化コンテンツを生成し配信するコンテンツ配信サーバであって、前記公開情報を前記ライセンスサーバから取得する公開情報取得手段と、前記位数以下の正整数を指数として選択する指数選択手段と、前記公開情報と、前記コンテンツを識別する識別情報と、前記指数とに基づいて、前記コンテンツを暗号化して暗号化コンテンツを生成する請求項1又は請求項2に記載の暗号化装置と、この暗号化装置で生成された暗号化データである暗号化コンテンツを蓄積する暗号化コンテンツ蓄積手段と、端末から要求のあった暗号化コンテンツを前記暗号化コンテンツ蓄積手段から読み込んで前記端末へ送信するコンテンツ送信手段と、を備えていることを特徴とする。
【0036】
かかる構成によれば、コンテンツ配信サーバは、公開情報取得手段によって、公開情報として公開されている特定の位数により巡回群となる群と、その群の要素である第一元及び第二元と、予め定めた多項式の係数から生成される生成値とを取得する。そして、指数選択手段によって、群の位数以下の正整数を指数として選択する。この指数はコンテンツ配信サーバ内で任意に選択したものであればよく、例えば、擬似乱数発生装置によって生成した擬似乱数とすることで、暗号化コンテンツの秘匿性を高めることができる。
【0037】
そして、コンテンツ配信サーバは、公開情報と群の位数以下の指数とコンテンツを識別する識別情報とに基づいて、暗号化装置によりコンテンツを暗号化し、その暗号化された暗号化コンテンツを暗号化コンテンツ蓄積手段に蓄積する。この暗号化コンテンツ蓄積手段に蓄積された暗号化コンテンツは、コンテンツ送信手段によって要求のあった端末に対して送信される。
【0038】
このように、コンテンツ配信サーバは、デジタルデータであるコンテンツ固有の識別情報と、暗号化する側で選択した指数と、公開情報とによって暗号化を行うため、コンテンツの権利を管理するライセンスサーバと秘密情報を通信する必要がなく、独立して暗号化を行うことが可能になる。
【0039】
さらに、請求項8に記載のコンテンツ復号端末は、請求項7に記載のコンテンツ配信サーバによって暗号化された暗号化データである暗号化コンテンツを、デジタルデータであるコンテンツを識別するための識別情報と、ライセンスサーバから取得した前記多項式から算出された復号鍵とに基づいて、前記コンテンツに復号するコンテンツ復号端末であって、前記暗号化コンテンツを前記コンテンツ配信サーバから取得する暗号化コンテンツ取得手段と、前記復号鍵を含んだライセンス情報を前記ライセンスサーバから取得するライセンス情報取得手段と、前記暗号化コンテンツを、前記識別情報及び前記復号鍵に基づいて前記コンテンツに復号する請求項4又は請求項5に記載の復号装置と、を備えていることを特徴とする。
【0040】
かかる構成によれば、コンテンツ復号端末は、暗号化コンテンツ取得手段によって、ユーザが所望する暗号化コンテンツをコンテンツ配信サーバから取得し、ライセンス情報取得手段によって、ライセンスサーバから暗号化コンテンツを復号するための復号鍵を含んだライセンス情報を取得する。このライセンス情報には、コンテンツの利用条件を付加することとしてもよい。
そして、復号装置によって、コンテンツ固有の識別情報と復号鍵とに基づいて、暗号化コンテンツを復号する。
【0041】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して説明する。
[コンテンツ配信システムの構成]
まず、図1を参照して、本発明の実施の形態であるコンテンツ配信システム1の構成について説明する。図1は、コンテンツ配信システム1の構成を示すブロック図である。コンテンツ配信システム1は、コンテンツサーバ10と、ライセンスサーバ20と、コンテンツ配信サーバ30と、ユーザ端末(コンテンツ復号端末)40とを、インターネット3等のネットワークを介して接続し、ユーザが所望するコンテンツをユーザ端末40に配信するシステムである。
【0042】
コンテンツサーバ10は、図示していない記憶手段に複数のコンテンツを保持し、そのコンテンツにコンテンツを識別するための識別情報を割り当てる(対応付ける)ものである。例えば、識別情報として、コンテンツ固有のコンテンツ名やファイル名を割り当てる。また、このコンテンツサーバ10は、コンテンツ配信サーバ30からの識別情報を含んだ要求に基づいて、要求されたコンテンツをコンテンツ配信サーバ30へ送信するものでもある。
【0043】
ライセンスサーバ20は、コンテンツサーバ10に保持されているコンテンツのライセンスを管理するものである。より詳細には、ライセンスサーバ20は、コンテンツを暗号化するための情報をシステム全体の公開情報inf(記憶手段21に記憶)として公開するとともに、ユーザ端末40からの要求に基づいて、ユーザのコンテンツの利用条件や、暗号化されたコンテンツの復号鍵を含んだライセンス情報を発行するものである。なお、この公開情報infについては後記する。
【0044】
コンテンツ配信サーバ30は、ユーザ端末40から要求のあったコンテンツをコンテンツサーバ10から取得し、ライセンスサーバ20が公開している公開情報infに基づいて、そのコンテンツを暗号化してユーザ端末40に配信するものである。このコンテンツ配信サーバ30は、コンテンツを暗号化する暗号化手段(暗号化装置)34を含んでいる。
【0045】
ユーザ端末(コンテンツ復号端末)40は、ユーザが所望するコンテンツ(暗号化コンテンツ)をコンテンツ配信サーバ30から取得し、さらに、ライセンスサーバ20からライセンス情報を取得し、そのライセンス情報に含まれる復号鍵に基づいて、暗号化コンテンツを復号することで、コンテンツをユーザに提示するものである。このユーザ端末40は、復号手段(復号装置)44を含んでいる。
【0046】
(コンテンツの暗号化及び復号の概要)
ここで、コンテンツ配信システム1におけるコンテンツの暗号化及び復号について、その概要を説明する。
【0047】
<公開情報の公開>
ライセンスサーバ20では、予め特定の位数(qとする)により巡回群となる群Gと、その群Gの任意の二つの要素である第一元g及び第二元gと、Z(1〜qの整数)上の多項式((1)式)とを選択する。
【0048】
(λ):=Σ j=0i,jλ(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数) …(1)式
【0049】
そして、この(1)式の係数であるai,jを用いて(2)式により生成値ui,jを算出し、群G、第一元g、第二元g及び生成値ui,jを公開情報infとして公開する。
【0050】
【数21】
Figure 0004133364
【0051】
<復号鍵の生成>
なお、ライセンスサーバ20は、前記(1)式そのものは公開せず、ライセンスサーバ20の秘密情報として記憶手段21に記憶しておく。そして、ライセンスサーバ20は、ユーザ端末40から、あるコンテンツのライセンス要求があった段階で、前記(1)式により復号鍵を生成する。すなわち、コンテンツの識別情報をid、復号鍵をDとすると、復号鍵は(3)式で算出される。
【0052】
={f(id)}(i=1,2,3,4,5,6) …(3)式
【0053】
<コンテンツの暗号化>
コンテンツ配信サーバ30では、公開情報infに基づいて、コンテンツの暗号化を行う。このときコンテンツ配信サーバ30は、公開情報infを参照することにより、(4)式の演算を行う。ここで、idはコンテンツの識別情報、mはコンテンツのデータ、rはZから選択した擬似乱数(指数)を示す。また、κはHをハッシュ関数とし、κ:=H(id,α,β,γ)として得られる値とする。
【0054】
【数22】
Figure 0004133364
【0055】
そして、コンテンツ配信サーバ30は、この(4)式で生成されたα、β、γ及びδを合成して暗号化コンテンツとする。この暗号化コンテンツは、ユーザ端末40へ配信される。
【0056】
<暗号化コンテンツの復号>
ユーザ端末40では、ライセンスサーバ20から暗号化コンテンツの復号鍵を取得し、コンテンツ配信サーバ30から配信された暗号化コンテンツの復号を行う。ここで、ユーザ端末40は、暗号化コンテンツに含まれるα、β及びγと、コンテンツの識別情報idから、(5)式によって、比較認証データであるδ´を算出する。
【0057】
【数23】
Figure 0004133364
【0058】
なお、κ´はHをハッシュ関数とし、κ´:=H(id,α,β,γ)として得られる値とする。また、前記(5)式のκ´を生成するために使用したハッシュ関数Hは、前記(4)式のκを生成するために使用したハッシュ関数Hと同じハッシュ値を発生させる関数とする。
【0059】
ユーザ端末40は、前記(5)式で算出したδ´と、前記(4)式で算出したδとを比較して、同一である場合のみ、(6)式によって、暗号化コンテンツをコンテンツmに復号し、ユーザに視聴/閲覧可能なデータとして提示する。
【0060】
【数24】
Figure 0004133364
【0061】
以上、コンテンツ配信システム1におけるコンテンツの暗号化及び復号の概要について説明した。以下、コンテンツ配信システム1においてコンテンツの暗号化を行うコンテンツ配信サーバ30、及び、復号を行うユーザ端末40について詳細に説明する。
【0062】
(コンテンツ配信サーバの構成)
まず、図2を参照(適宜図1参照)して、コンテンツ配信サーバ30の構成について説明する。図2は、コンテンツ配信サーバ30の構成を示したブロック図である。図2に示すように、コンテンツ配信サーバ30は、公開情報infに基づいて、コンテンツmを暗号化し、暗号化したコンテンツ(暗号化コンテンツc)を、要求のあったユーザ端末40へ配信するものである。なお、コンテンツmは、群Gに属したデータ(m∈G)であるものとする。
【0063】
ここでは、コンテンツ配信サーバ30を、コンテンツ受信手段31と、公開情報取得手段32と、指数選択手段33と、暗号化手段(暗号化装置)34と、暗号化コンテンツ蓄積手段35と、コンテンツ配信受付手段36と、コンテンツ送信手段37とを備えて構成した。
【0064】
コンテンツ受信手段31は、コンテンツサーバ10から、コンテンツmとそのコンテンツmを識別する識別情報idとをネットワーク(インターネット3)を介して受信するものである。ここで受信したコンテンツm及び識別情報idは暗号化手段34に通知される。
【0065】
公開情報取得手段32は、ライセンスサーバ20が公開している公開情報infをネットワーク(インターネット3)を介して取得するものである。この公開情報取得手段32は、公開情報infとして公開されている群G、第一元g、第二元g及び生成値ui,jを取得し、群Gを指数選択手段33へ、第一元g、第二元g及び生成値ui,jを暗号化手段34へそれぞれ通知するものとする。
【0066】
指数選択手段33は、公開情報取得手段32から通知される群Gの位数qにより、1からqの範囲の整数で、暗号化手段34で使用する指数(べき指数)rを選択するものである。ここでは、指数選択手段33を、1からqの範囲の整数で擬似乱数を発生させる擬似乱数発生装置とする。なお、この指数rは暗号化手段34に通知される。
【0067】
暗号化手段(暗号化装置)34は、コンテンツ受信手段31で受信した識別情報idと、公開情報取得手段32で取得した公開情報である第一元g、第二元g及び生成値ui,jと、指数選択手段33で選択された指数rとに基づいて、コンテンツmを暗号化した暗号化コンテンツcを生成するものである。ここで生成された暗号化コンテンツcは、識別情報idに対応付けられて暗号化コンテンツ蓄積手段35に蓄積される。この暗号化手段(暗号化装置)34については、後でさらに詳細に説明する。
【0068】
暗号化コンテンツ蓄積手段35は、暗号化手段34で暗号化された暗号化コンテンツcを蓄積するもので、一般的なハードディスク等で構成されている。
コンテンツ配信受付手段36は、ユーザ端末40から送信されるコンテンツの配信要求reqを受け付けるものである。ここで受け付けた配信要求reqは、コンテンツ送信手段37に通知される。なお、この配信要求reqには、コンテンツを識別するための識別情報idを含んでいるものとする。
【0069】
コンテンツ送信手段37は、コンテンツ配信受付手段36から通知された配信要求reqに基づいて、その配信要求reqに含まれる識別情報idによって指定されたコンテンツ(暗号化コンテンツc)を、暗号化コンテンツ蓄積手段35から読み込んで、ユーザ端末40へ送信するものである。
【0070】
以上、説明したようにコンテンツ配信サーバ30を構成することで、コンテンツ配信サーバ30は、ライセンスサーバ20の公開情報によってコンテンツmを暗号化するため、ライセンスサーバ20との間で暗号化鍵等の秘密情報を送受信する必要がなく、ライセンスサーバ20とは機能を独立させて実現することができる。
【0071】
また、ここではコンテンツmを群Gに属するデータに制限したが、コンテンツmを一般的な暗号化方式によるセッション鍵Ks(図示せず)を用いて暗号化する場合は、そのセッション鍵Ksを群Gに属したデータ(Ks∈G)とし、セッション鍵Ksでコンテンツmを暗号化し、コンテンツ配信サーバ30において、セッション鍵Ksをコンテンツmの代わりに暗号化することとしてもよい。この場合、コンテンツmは群Gに属したデータ(m∈G)である必要はない。
【0072】
なお、コンテンツ配信サーバ30は、コンピュータにおいて各手段を各機能プログラムとして実現することも可能であり、各機能プログラムを結合してコンテンツ配信プログラムとして動作させることも可能である。
【0073】
<暗号化装置の構成>
ここで、図3を参照して、コンテンツ配信サーバ30(図2)内の暗号化装置34の構成について、さらに詳細に説明する。図3は、暗号化装置34の構成を示したブロック図である。図3に示すように、暗号化装置34は、予め公開された公開情報infと、任意の数(擬似乱数;指数r)と、識別情報idとに基づいて、コンテンツ(デジタルデータ)mを暗号化した暗号化コンテンツ(暗号化データ)cを生成するものである。
ここでは、暗号化装置34を、べき乗値生成手段34aと、変換データ生成手段34bと、ハッシュ値生成手段34cと、復号認証データ生成手段34dと、データ合成手段34eとを備えて構成した。
【0074】
べき乗値生成手段34aは、指数rと、公開情報で公開されている第一元g及び第二元gとを入力し、第一元g及び第二元gをそれぞれ指数rによりべき乗演算(g 、g )し、第一元べき乗値α(=g )及び第二元べき乗値β(=g )を生成するものである。ここで生成された第一元べき乗値α及び第二元べき乗値βは、ハッシュ値生成手段34c及びデータ合成手段34eに通知される。
【0075】
変換データ生成手段34bは、コンテンツmと、そのコンテンツmの識別情報idと、指数rと、公開情報で公開されている生成値ui,jとを入力し、コンテンツmを(7)式によって変換した変換データγを生成するものである。なお、(7)式におけるΠは総積記号を示すものとする。
【0076】
【数25】
Figure 0004133364
【0077】
ここで生成された変換データγは、ハッシュ値生成手段34c、復号認証データ生成手段34d及びデータ合成手段34eに通知される。
【0078】
ハッシュ値生成手段34cは、SHA(Secure Hash Algorithm)等のハッシュ関数によってハッシュ値を計算するものである。ここでは、ハッシュ値生成手段34cは、コンテンツmの識別情報idと、べき乗値生成手段34aで生成された第一元べき乗値α及び第二元べき乗値βと、変換データ生成手段34bで生成された変換データγとを入力し、ハッシュ値κを生成する。このハッシュ値κは復号認証データ生成手段34dに通知される。
【0079】
復号認証データ生成手段34dは、復号時に暗号化コンテンツcが正当な手続きによって暗号化されたものであるかどうかを認証するためのデータ(復号認証データδ)を生成するものである。ここでは、復号認証データ生成手段34dは、コンテンツmの識別情報idと、指数rと、公開情報で公開されている生成値ui,jと、変換データ生成手段34bで生成された変換データγと、ハッシュ値生成手段34cで生成されたハッシュ値κとを入力し、復号認証データδを生成する。この復号認証データδは、(8)式により算出され、データ合成手段34eに通知される。
【0080】
【数26】
Figure 0004133364
【0081】
データ合成手段34eは、べき乗値生成手段34aで生成された第一元べき乗値α及び第二元べき乗値βと、変換データ生成手段34bで生成された変換データγと、復号認証データ生成手段34dで生成された復号認証データδとを合成して、暗号化コンテンツcを生成するものである。例えば、第一元べき乗値αと、第二元べき乗値βと、変換データγと、復号認証データδとを順番に連結して1つのデータとする。
【0082】
以上、一実施形態に基づいて本発明に係る暗号化装置34の構成について説明したが、本発明はこれに限定されるものではない。例えば、復号時に暗号化コンテンツcが正当な手続きによって暗号化されたものであるかどうかを認証する必要がない場合は、暗号化装置34の構成からハッシュ値生成手段34c及び復号認証データ生成手段34dを削除し、データ合成手段34eが、第一元べき乗値αと、第二元べき乗値βと、変換データγとを合成することで暗号化コンテンツcを生成することとしてもよい。
【0083】
また、この暗号化装置34の暗号化対象は、コンテンツに限られず、一般的なデジタルデータであればよい。すなわち、暗号化装置34は、デジタルデータを暗号化した暗号化データを生成するものであるということができる。
また、暗号化装置34は、コンピュータにおいて各手段を各機能プログラムとして実現することも可能であり、各機能プログラムを結合して暗号化プログラムとして動作させることも可能である。
【0084】
(ユーザ端末の構成)
次に、図4を参照(適宜図1参照)して、ユーザ端末(コンテンツ復号端末)40の構成について説明する。図4は、ユーザ端末40の構成を示したブロック図である。図4に示すように、ユーザ端末40は、コンテンツ配信サーバ30から配信される暗号化コンテンツcを、ライセンスサーバ20から取得したライセンス情報L(復号鍵を含む)に基づいて復号し、視聴データDとしてユーザに提示するものである。
【0085】
ここでは、ユーザ端末40を、暗号化コンテンツ取得手段41と、ライセンス情報取得手段42と、利用者認証手段43と、復号手段(復号装置)44と、コンテンツ提示手段45とを備えて構成した。
【0086】
暗号化コンテンツ取得手段41は、コンテンツの識別情報idを図示していない入力手段から入力されることで、コンテンツの識別情報idを含んだコンテンツの配信要求reqをコンテンツ配信サーバ30へ送信し、コンテンツ配信サーバ30から、そのコンテンツを暗号化した暗号化コンテンツcを受信(取得)するものである。ここで受信した暗号化コンテンツcは復号手段44に通知される。
【0087】
ライセンス情報取得手段42は、コンテンツの識別情報idを含んだライセンス発行要求Lreqをライセンスサーバ20へ送信し、ライセンスサーバ20から、暗号化コンテンツcを復号するための復号鍵Dm{=f(id),(i=1,2,3,4,5,6)}を含んだライセンス情報Lを受信(取得)するものである。なお、ライセンス情報取得手段42は、ライセンス情報Lに含まれる復号鍵Dmを抽出し、復号手段44に通知するとともに、ライセンス情報Lを利用者認証手段43に通知する。
【0088】
利用者認証手段43は、ライセンス情報取得手段42で取得したライセンス情報Lに記載されている利用条件を判定し、正規の利用条件に則した利用である場合にのみ、復号手段44に対して復号の開始を指示する信号(復号指示)を通知するものである。例えば、利用者認証手段43は、ライセンス情報Lにコンテンツの利用期限が記載されている場合は、その期限が切れていないかどうかを判定する。
【0089】
復号手段(復号装置)44は、コンテンツの識別情報idとライセンス情報取得手段42で取得し抽出された復号鍵Dmとに基づいて、暗号化コンテンツ取得手段41で取得した暗号化コンテンツcを、コンテンツmに復号するものである。ここで復号されたコンテンツmは、コンテンツ提示手段45に通知される。また、この復号手段44は、利用者認証手段43から復号の開始を指示する信号(復号指示)を通知された場合にのみ起動するものとする。この復号手段(復号装置)44については、後でさらに詳細に説明する。
【0090】
コンテンツ提示手段45は、復号手段44で復号されたコンテンツmをユーザが視聴可能なデータ(視聴データD)へ変換してユーザへ提示するものである。例えば、コンテンツ提示手段45は、コンテンツmがMPEG2 Videoで符号化されたデータである場合は、コンテンツmを動画像に復号するデコーダとして機能するものである。
【0091】
以上、ユーザ端末(コンテンツ復号端末)40の構成について説明したが、ユーザ端末(コンテンツ復号端末)40は、コンピュータにおいて各手段を各機能プログラムとして実現することも可能であり、各機能プログラムを結合してコンテンツ復号プログラムとして動作させることも可能である。
【0092】
<復号装置の構成>
ここで、図5を参照して、ユーザ端末40(図4)内の復号装置44の構成について、さらに詳細に説明する。図5は、復号装置44の構成を示したブロック図である。図5に示すように、復号装置44は、コンテンツを識別する識別情報idと、復号鍵Dm{=f(id)}とに基づいて、暗号化コンテンツcを復号してコンテンツmを再生するものである。
【0093】
ここでは、復号装置44を、データ分割手段44aと、認証用ハッシュ値生成手段44bと、比較認証データ生成手段44cと、比較認証手段44dと、復号データ生成手段44eとを備えて構成した。
【0094】
データ分割手段44aは、入力された暗号化コンテンツcを、第一元べき乗値αと、第二元べき乗値βと、変換データγと、復号認証データδとに分割するものである。ここで分割された第一元べき乗値α及び第二元べき乗値βは認証用ハッシュ値生成手段44b、比較認証データ生成手段44c、並びに、復号データ生成手段44eに通知される。また、変換データγは、認証用ハッシュ値生成手段44bと復号データ生成手段44eとに通知され、復号認証データδは、比較認証手段44dに通知される。
【0095】
認証用ハッシュ値生成手段44bは、SHA等のハッシュ関数によってハッシュ値を計算するものである。ここでは、認証用ハッシュ値生成手段44bは、コンテンツの識別情報idと、データ分割手段44aから通知された第一元べき乗値α、第二元べき乗値β及び変換データγとを入力し、認証用ハッシュ値κ´を生成する。この認証用ハッシュ値κ´は比較認証データ生成手段44cに通知される。なお、この認証用ハッシュ値生成手段44bのハッシュ関数は、暗号化装置34(図3)のハッシュ値生成手段34cと同一のハッシュ関数を用いることとする。
【0096】
比較認証データ生成手段44cは、データ分割手段44aで分割された第一元べき乗値α及び第二元べき乗値βと、認証用ハッシュ値生成手段44bで生成された認証用ハッシュ値κ´と、入力された復号鍵Dm{=f(id)}とに基づいて、暗号化コンテンツcが正当な手続きで生成されたものであるかどうかを判定するための比較認証データδ´を生成するものである。ここでは、比較認証データδ´を前記(5)式により算出し生成する。
【0097】
この比較認証データδ´は、暗号化コンテンツcが正当な手続きで生成されたものである場合は、復号認証データδと同一の値となる。
比較認証手段44dは、データ分割手段44aから通知された復号認証データδと、比較認証データ生成手段44cから通知された比較認証データδ´とを比較し、その判定結果cmpを復号データ生成手段44eに通知するものである。例えば、復号認証データδと比較認証データδ´とが等しい場合は、判定結果cmpとして数値「1」を、等しくない場合は、判定結果cmpとして数値「0」を、復号データ生成手段44eに通知する。
【0098】
復号データ生成手段44eは、データ分割手段44aから通知された第一元べき乗値α、第二元べき乗値β及び変換データγと、入力された復号鍵Dm{=f(id)}とに基づいて、暗号化コンテンツcを復号したコンテンツmを生成するものである。ここでは、コンテンツmを前記(6)式により算出し生成する。
【0099】
なお、この復号データ生成手段44eは、比較認証手段44dから通知される判定結果cmpにおいて、復号認証データδと比較認証データδ´とが等しいと判定された場合にのみ、復号動作を行う。
【0100】
以上、一実施形態に基づいて本発明に係る復号装置44の構成について説明したが、本発明はこれに限定されるものではない。例えば、復号時に暗号化コンテンツcが正当な手続きによって暗号化されたものであるかどうかを認証する必要がない場合は、復号装置44の構成から認証用ハッシュ値生成手段44b、比較認証データ生成手段44c及び比較認証手段44dを削除し、復号データ生成手段44eが、認証を行うことなく第一元べき乗値α、第二元べき乗値β、変換データγ及び復号鍵Dmに基づいて、暗号化コンテンツcを復号したコンテンツmを生成することとしてもよい。
【0101】
また、この復号装置44の復号対象は、コンテンツに限られず、一般的なデジタルデータを暗号化したものであればよい。すなわち、復号装置44は、デジタルデータを暗号化した暗号化データを、デジタルデータに復号するものであるということができる。
【0102】
なお、復号装置44は、コンピュータにおいて各手段を各機能プログラムとして実現することも可能であり、各機能プログラムを結合して復号プログラムとして動作させることも可能である。
【0103】
[コンテンツ配信システムの動作]
次に、図6乃至図11を参照して、本発明の実施の形態であるコンテンツ配信システム1の動作について説明する。
(ライセンスサーバによる公開情報の公開)
まず、図6を参照(適宜図1参照)して、ライセンスサーバ20が、公開情報を公開する動作について説明する。図6は、ライセンスサーバ20が、公開情報を公開する動作を示すフローチャートである。
【0104】
ライセンスサーバ20は、まず、特定の位数(qとする)により巡回群となる群Gと、その群Gの任意の二つの要素である第一元g及び第二元gと、Z(1〜qの整数)上の多項式{f(λ)}(i=1,2,3,4,5,6)(前記(1)式)とを選択し(ステップS10)、群G、第一元g、第二元g及び多項式{f(λ)}をライセンスサーバ20の記憶手段21に記憶する(ステップS11)。
【0105】
そして、ライセンスサーバ20は、多項式{f(λ)}の係数であるai,jを用いて、前記(2)式により生成値{ui,j}(i=1,3,5,1≦j≦t)を算出し(ステップS12)、ステップS10で選択した群G、第一元g及び第二元gと、ステップS12で算出した生成値{ui,j}とを公開する(ステップS13)。
【0106】
(コンテンツ配信サーバによるコンテンツの暗号化)
次に、図7を参照(適宜図1及び図2参照)して、コンテンツ配信サーバ30が、コンテンツを暗号化する動作について説明する。図7は、コンテンツ配信サーバ30が、コンテンツmを暗号化する動作を示すフローチャートである。
【0107】
コンテンツ配信サーバ30は、コンテンツ受信手段31によって、コンテンツサーバ10から、コンテンツmとそのコンテンツmを識別する識別情報idとを受信する(ステップS20)。
【0108】
また、コンテンツ配信サーバ30は、公開情報取得手段32によって、ライセンスサーバ20が公開した公開情報infを取得し(ステップS21)、指数選択手段33によって、公開情報infで公開されている群Gの位数qを超えない範囲の整数(1以上q以下の整数)で擬似乱数を発生させることで、指数rを選択する(ステップS22)。
【0109】
そして、コンテンツ配信サーバ30は、識別情報id、公開情報inf及び指数rに基づいて、コンテンツmを暗号化し(ステップS23)、暗号化された暗号化コンテンツcを暗号化コンテンツ蓄積手段35に蓄積する(ステップS24)。
【0110】
以上の各ステップによって、コンテンツ配信サーバ30は、コンテンツmを暗号化した暗号化コンテンツcを暗号化コンテンツ蓄積手段35に蓄積し、要求のあった暗号化コンテンツを配信する準備ができたことになる。
【0111】
<コンテンツ暗号化の詳細動作>
ここで、図8を参照(適宜図1及び図3参照)して、ステップS23のコンテンツmの暗号化について、詳細に説明する。図8は、コンテンツ配信サーバ30内の暗号化手段(暗号化装置)34の動作を示すフローチャートである。
【0112】
〔データ生成ステップ〕
暗号化手段34は、べき乗値生成手段34aによって、指数rと、公開情報で公開されている第一元g及び第二元gとを入力し、第一元べき乗値α(=g )及び第二元べき乗値β(=g )を生成する(ステップS30)。
また、暗号化手段34は、変換データ生成手段34bによって、前記(7)式により、変換データγを生成する(ステップS31)。
【0113】
さらに、暗号化手段34は、ハッシュ値生成手段34cのハッシュ関数によって、識別情報id、第一元べき乗値α、第二元べき乗値β及び変換データγから、ハッシュ値κを生成し(ステップS32)、復号認証データ生成手段34dによって、前記(8)式により、復号認証データδを生成する(ステップS33)。
【0114】
〔データ合成ステップ〕
そして、暗号化手段34は、データ合成手段34eによって、ステップS30で生成した第一元べき乗値α及び第二元べき乗値βと、ステップS31で生成した変換データγと、ステップS33で生成した復号認証データδとを合成することで、暗号化コンテンツcを生成する(ステップS34)。
【0115】
(ユーザ端末によるコンテンツの復号/視聴)
次に、図9を参照(適宜図1及び図4参照)して、ユーザ端末(コンテンツ復号端末)40が、暗号化コンテンツを復号し、ユーザに対してコンテンツを提示する動作について説明する。図9は、ユーザ端末40の動作を示すフローチャートである。
【0116】
ユーザ端末40が、ユーザの所望するコンテンツをコンテンツ配信サーバ30に要求することで(ステップとして図示せず)、コンテンツ配信サーバ30が、暗号化コンテンツ蓄積手段35(図2)から対応する暗号コンテンツcを読み出して、ユーザ端末40へ配信する(ステップS40)。
【0117】
そして、ユーザ端末40が、暗号化コンテンツ取得手段41によって、暗号コンテンツcを取得し(ステップS41)、ライセンス情報取得手段42によって、ライセンスサーバ20に対して、暗号コンテンツcのライセンス情報Lの発行を要求する(ステップS42)。
【0118】
このライセンス情報Lの発行を要求されたライセンスサーバ20は、この発行要求が、コンテンツを視聴する正当なユーザからの要求であるかどうかを判定し(ステップS43)、正当なユーザからの要求である場合(Yes)は、暗号化コンテンツcを復号するための復号鍵Dm{=f(id)}を含み、コンテンツの利用条件を記載したライセンス情報Lをユーザ端末40に対して発行(送信)する(ステップS44)。一方、正当なユーザからの要求でない場合(ステップS43でNo)の場合は、ライセンス情報Lを発行せずに動作を終了する。
【0119】
そして、ユーザ端末40が、ライセンス情報取得手段42によって、ライセンスサーバ20からライセンス情報Lを取得し(ステップS45)、ライセンス情報Lに含まれる復号鍵Dmを抽出する(ステップS46)。
そして、ユーザ端末40が、利用者認証手段43によって、ライセンス情報Lに記載されている利用条件を判定し(ステップS47)、利用条件が適正でない場合(No)、例えば、コンテンツの視聴期限が切れている等の場合は、暗号化コンテンツcの復号を行わずに動作を終了する。
【0120】
一方、ステップS47で利用条件が適正である場合(Yes)は、復号手段44によって、ステップS46で抽出した復号鍵Dmを用いて、暗号化コンテンツcの復号を行う(ステップS48)。そして、コンテンツ提示手段45によって、復号されたコンテンツcをデコードすることで、コンテンツcは、ユーザが視聴可能な視聴データDとなる(ステップS49)。
【0121】
以上の各ステップによって、ユーザ端末40は、ユーザが所望するコンテンツ(暗号化コンテンツc)をコンテンツ配信サーバ30から取得し、ライセンスサーバ20から、そのコンテンツに対するライセンス情報Lを取得し、そのライセンス情報Lに含まれる復号鍵によって、暗号化コンテンツcを復号し、視聴データDとすることができる。
【0122】
<ライセンス情報発行の詳細動作>
ここで、ステップS44のライセンス情報Lの発行について、図10を参照(適宜図1参照)して、詳細に説明する。図10は、ライセンスサーバ20がライセンス情報Lを発行する動作を示すフローチャートである。
【0123】
ライセンスサーバ20は、ユーザ端末40からコンテンツの識別情報idを含んだライセンス発行要求を受信すると(ステップS50)、記憶手段21に記憶している群G、第一元g、第二元g及び多項式{f(λ)}(i=1,2,3,4,5,6)を読み込む(ステップS51)。
そして、コンテンツの識別情報idに基づいて、多項式{f(λ)}(前記(1)式参照)から、復号鍵Dm{=f(id)}(i=1,2,3,4,5,6)を生成する(ステップS52)。
【0124】
そして、ライセンスサーバ20は、コンテンツの利用条件と、復号鍵Dm{=f(id)}(i=1,2,3,4,5,6)とを合成したライセンス情報Lを作成し(ステップS53)、ユーザ端末40へ発行(送信)する。なお、コンテンツの利用条件は、ライセンス発行要求を受信したときに、要求時刻等によって逐次作成することとしてもよいし、コンテンツ毎に予め設定した条件を使用することとしてもよい。
【0125】
<コンテンツ復号の詳細動作>
次に、図11を参照(適宜図5参照)して、図9におけるステップS48の暗号化コンテンツcの復号動作について、詳細に説明する。図11は、ユーザ端末40内の復号手段(復号装置)44の動作を示すフローチャートである。
【0126】
〔データ分割ステップ〕
復号手段44は、データ分割手段44aによって、暗号化コンテンツcを第一元べき乗値αと、第二元べき乗値βと、変換データγと、復号認証データδとに分割する(ステップS60)。
【0127】
〔比較認証データ生成ステップ〕
そして、復号手段44は、認証用ハッシュ値生成手段44bによって、コンテンツの識別情報id、第一元べき乗値α、第二元べき乗値β及び変換データγから、認証用ハッシュ値κ´を生成し(ステップS61)、比較認証データ生成手段44cによって、前記(5)式により、比較認証データδ´を生成する(ステップS62)。
【0128】
〔比較認証ステップ、復号データ生成ステップ〕
そして、この比較認証データδ´と、データ分割手段44aで分割した復号認証データδとを比較し(ステップS63)、比較認証データδ´及び復号認証データδの値が等しい場合(Yes)は、変換データγ、第一元べき乗値α、第二元べき乗値β及び復号鍵Dm{=f(id)}(i=1,2,3,4,5,6)から、前記(6)式によって、コンテンツmを復号する(ステップS64)。一方、ステップS63において、比較認証データδ´及び復号認証データδの値が等しくない場合(No)は、コンテンツmの復号は行わず動作を終了する。
【0129】
以上説明したように、コンテンツ配信システム1(図1)では、ライセンスサーバ20と、コンテンツ配信サーバ30との間で、公開情報以外の情報交換がないため、秘匿通信等の必要がなく、各サーバの管理コストを低減させることができる。また、ライセンスサーバ20では、公開された情報から復号鍵を生成するため、復号鍵を保管(管理)する必要がない。さらに、コンテンツ配信サーバ30では、ライセンスサーバ20により復号鍵が生成されたかどうかに依存せず、コンテンツの暗号化を行うことができるので、ライセンスサーバ20と、コンテンツ配信サーバ30とを独立して動作させることが可能になる。
【0130】
また、コンテンツ配信システム1におけるコンテンツの暗号化及び復号は、従来のような、存在し得ない理想的な関数(ハッシュ関数)の存在や、数論的問題を解く困難性を前提としたものではないため、暗号化されたコンテンツを不正に解読する危険性を低減させることができる。
【0131】
【発明の効果】
以上説明したとおり、本発明に係る暗号化装置及びそのプログラム、復号装置及びそのプログラム、並びに、コンテンツ配信サーバ及びコンテンツ復号端末では、以下に示す優れた効果を奏する。
【0132】
請求項1又は請求項3に記載の発明によれば、デジタルデータ固有の識別情報と、暗号化する側で選択した指数と、予め公開された公開情報とによって暗号化を行うため、ライセンスサーバ等のデジタルデータの権利を管理する装置(サーバ)と暗号鍵等の秘密情報を通信する必要がなく、独立して暗号化を行うことが可能になる。
【0133】
請求項2に記載の発明によれば、復号認証データを付加して暗号化データとするため、復号側で、暗号化データの正当性を判定することが可能になる。これによって、暗号化データの改竄に対する安全性を強固にすることができる。
【0134】
請求項4又は請求項6に記載の発明によれば、デジタルデータ固有の識別情報と、暗号化する側で選択した指数と、予め公開された公開情報とによって暗号化された暗号化データを、識別情報と復号鍵とを用いて復号することができる。また、この復号鍵は、公開情報を生成するときに用いた秘密情報である多項式によって生成されたものでるため、暗号化データを不正に解読することは困難である。これによって、安全性の高い暗号化/復号システムを構築することが可能になる。
【0135】
請求項5に記載の発明によれば、暗号化データに含まれる復号認証データと、復号側で生成する比較認証データとを比較することで、暗号化データが正当な手順で生成されたものかどうかを認証することができるので、暗号化データの改竄に対する安全性を強固にすることができる。
【0136】
請求項7に記載の発明によれば、デジタルデータであるコンテンツ固有の識別情報と、暗号化する側で選択した指数と、公開情報とによって暗号化を行うため、コンテンツの権利を管理するライセンスサーバと秘密情報を通信する必要がなく、独立して暗号化を行うことが可能になる。これによって、暗号化コンテンツの不正解読や改竄に対する安全性を強固にすることができる。
【0137】
請求項8に記載の発明によれば、コンテンツ固有の識別情報と、暗号化する側で選択した指数と、予め公開された公開情報とによって暗号化された暗号化コンテンツを、識別情報と復号鍵とを用いて復号することができる。また、この復号鍵は、公開情報を生成するときに用いた秘密情報である多項式によって生成されたものでるため、暗号化コンテンツを不正に解読することは困難である。これによって、安全性の高いコンテンツ配信システムを構築することが可能になる。
【図面の簡単な説明】
【図1】 本発明の実施の形態に係るコンテンツ配信システムの構成を示すブロック図である。
【図2】 本発明の実施の形態に係るコンテンツ配信サーバの構成を示すブロック図である。
【図3】 本発明の実施の形態に係る暗号化装置の構成を示すブロック図である。
【図4】 本発明の実施の形態に係るユーザ端末(コンテンツ復号端末)の構成を示すブロック図である。
【図5】 本発明の実施の形態に係る復号装置の構成を示すブロック図である。
【図6】 本発明の実施の形態に係るライセンスサーバによる公開情報を公開する動作を示すフローチャートである。
【図7】 本発明の実施の形態に係るコンテンツ配信サーバの動作を示すフローチャートである。
【図8】 本発明の実施の形態に係る暗号化装置の動作を示すフローチャートである。
【図9】 本発明の実施の形態に係るユーザ端末(コンテンツ復号端末)の動作を示すフローチャートである。
【図10】 本発明の実施の形態に係るライセンスサーバによるライセンス情報を発行する動作を示すフローチャートである。
【図11】 本発明の実施の形態に係る復号装置の動作を示すフローチャートである。
【図12】 従来のコンテンツ配信システムの構成を示すブロック図である。
【符号の説明】
1、1B ……コンテンツ配信システム
3 ……インターネット
10 ……コンテンツサーバ
20、20B……ライセンスサーバ
30、30B……コンテンツ配信サーバ
31 ……コンテンツ受信手段
32 ……公開情報取得手段
33 ……指数選択手段
34 ……暗号化手段(暗号化装置)
34a ……べき乗値生成手段
34b ……変換データ生成手段
34c ……ハッシュ値生成手段
34d ……復号認証データ生成手段
34e ……データ合成手段
35 ……暗号化コンテンツ蓄積手段
36 ……コンテンツ配信受付手段
37 ……コンテンツ送信手段
40、40B……ユーザ端末(コンテンツ復号端末)
41 ……暗号化コンテンツ取得手段
42 ……ライセンス情報取得手段
43 ……利用者認証手段
44 ……復号手段(復号装置)
44a ……データ分割手段
44b ……認証用ハッシュ値生成手段
44c ……比較認証データ生成手段
44d ……比較認証手段
44e ……復号データ生成手段
45 ……コンテンツ提示手段[0001]
BACKGROUND OF THE INVENTION
  The present invention relates to an encryption technique for encrypting digital data, a decryption technique for decrypting encrypted digital data, and a content distribution server and a content decryption terminal using the encryption technique and the decryption technique.
[0002]
[Prior art]
  In recent years, multimedia contents such as video and audio (hereinafter referred to as contents) have been distributed on networks (such as the Internet). In such an environment, conventionally, in order to protect the copyright of content, a method of encrypting content by a common key encryption method in which an encryption key is generated by a pseudorandom number is generally used (for example, non-patent literature). 1).
[0003]
  In the content encryption method using this common key encryption method, a part of the key used for encryption and information related to the content such as content usage conditions are distributed to the encrypted content. License for generating an encryption key using a secure communication means in advance by a package server that issues a decryption key information for decrypting the encrypted content to an authorized user of the content The seed must be shared. Also, since all information related to encryption is concentrated on the package server, secret information such as license seeds can be misused without obtaining permission to use the license server, and content encryption / decryption keys can be used against unauthorized users. There was a risk of unjustly leaking.
[0004]
  In order to deal with such problems, the applicant of the present application has proposed (filed) a method of operating a package server and a license server independently using a technique called an ID-Based encryption method (“content distribution system” special feature). Application 2002-268285).
[0005]
  Here, a method for distributing content using the ID-Based encryption method will be described with reference to FIG. FIG. 12 is a block diagram showing the configuration of a content distribution system 1B that distributes content using the ID-Based encryption method.
[0006]
  As shown in FIG. 12, the content distribution system 1B uses a content server 10 that assigns an identifier to the content to be distributed, and information such as decryption key information for decrypting the encrypted content and content usage conditions. The license server 20B issued to the user and the content to be distributed are encrypted, and information related to the content such as a part of the key used for encryption and content usage conditions is added to the encrypted content. A package server (content distribution server) 30B for distributing content and a user terminal 40B for viewing / browsing content are connected to a network (for example, the Internet 3).
[0007]
  In the content distribution system 1B, the content server 10 assigns an identifier (identification information) to the content to be distributed, and transmits the identifier to the license server 20B and the package server 30B.
  The license server 20B creates license server public information using the secret information of the license server 20B, publishes it, and transmits it to the package server 30B.
[0008]
  The package server (content distribution server) 30B creates package server public information using a pseudo random number and publishes it as public information. Further, the package server 30B encrypts the content to be distributed by the ID-Based encryption method (for example, Boneh, Franklin method) using the license server public information and the pseudo random number disclosed by the license server 20B. Create encrypted content. Then, the package server 30B creates a package that combines the encrypted content, the content identifier, and the package server public information, and transmits the package to the user terminal 40B that requested the content.
[0009]
  The user terminal 40B that has received the package (including the encrypted content) separates the package, acquires the encrypted content, the content identifier, and the package server public information, and transmits the acquired content identifier to the license server 20B. And requests information for decrypting the encrypted content.
[0010]
  Upon receiving the content identifier from the user terminal 40B, the license server 20B requests user authentication from the user terminal 40B.
  The user terminal 40B requested for the user authentication causes the user to input authentication information such as a password and a credit card number, and transmits the input authentication information to the license server 20B.
[0011]
  Then, the license server 20B performs user authentication based on the authentication information transmitted from the user terminal 40B, and uses the secret information and the content identifier only when it is confirmed that the user is a valid user. (Decryption key) is created and transmitted to the user terminal 40B.
[0012]
  The user terminal 40B that has received the secret key uses the secret key and the package server public information to decrypt the encrypted content and acquire the content.
  In this way, when content is distributed using the ID-Based encryption method, it is not necessary to exchange information other than public information between the license server and the package server, and each server can be operated independently. It becomes possible.
[0013]
[Non-Patent Document 1]
            Warwick Ford, written by Michael Baum, translated by Shinichiro Yamada, “Digital Signatures and Cryptography”, 2nd edition, Pearson Education, Inc., October 10, 2001, p. 75-117
[0014]
[Problems to be solved by the invention]
  However, the conventional technique for distributing content using the ID-Based encryption method does not require the exchange of information other than public information between the license server and the package server. Although it is excellent in the point which can reduce the cost regarding communication and confidential information management, the following problems are included.
[0015]
  That is, the currently known ID-Based cryptosystem is based on the premise of the existence of an ideal function that cannot originally exist and the difficulty of solving a special number-theoretic problem called the Biliner Diffie-Hellman problem. As such, its safety is not always reliable. For this reason, the content encrypted by the ID-Based encryption method includes a risk of being illegally decrypted.
[0016]
  The present invention has been made in view of the above-described problems, and does not share secret information between the license server and the package server, but operates them independently, and unauthorized use of encrypted content ( Reduce fraudEncryption deviceAnd its programsDecoding deviceAnd a program thereof, and a content distribution server and a content decryption terminal.
[0017]
[Means for Solving the Problems]
  The present invention has been made to achieve the above-mentioned object, and first, claim 1The encryption device described in (1) includes a group (G) that is a cyclic group based on a specific order (q) and a first element (g) that is an element of the group (G).1) And secondary (g2) And the polynomial {fi(Λ): = Σt j = 0ai, jλj} (1 ≦ ai, j≦ q integer, i = 1, 2, 3, 4, 5, 6, 1 ≦ t integer)formula
[Expression 11]
Figure 0004133364
ByGenerated value (ui, j) To generate encrypted data (c) obtained by encrypting digital data (m) based on public information consisting of: a predetermined positive integer less than or equal to the order (q) As the index (r), the first element (g1) And the second element (g2), Power value generation means for generating a first power value (α) and a second power value (β), identification information (id) for identifying the digital data (m), and the exponent (R) and the generated value (ui, jFrom)formula
[Expression 12]
Figure 0004133364
ByConversion data generation means for generating conversion data (γ) obtained by converting the digital data (m), the first element power value (α), the second element power value (β), and the conversion data (γ). Data synthesizing means for synthesizing the encrypted data (c).
[0018]
  According to such a configuration, the encryption apparatus uses the power value generation means to convert the first element and the second element that are elements of the cyclic group according to a specific order into predetermined positive integers equal to or less than the order. Is used as an exponent to generate a first power value and a second power value. Then, converted data obtained by converting the digital data is generated by the converted data generating means. The conversion data is calculated from identification information for identifying digital data, an index selected with a group order or less, and a generated value disclosed as public information, and becomes an entity of encrypted data. It is.As the identification information, information unique to digital data, such as a file name or content name, can be used.Note that the first and second power values are used on the decoding side to convert the converted data into original digital data. Then, the data synthesis means synthesizes the first power value, the second power value, and the converted data to obtain encrypted data.The generated value is f 1 (Λ) to f 6 Generating from the six polynomials of (λ) R. Cramer and V. Shoup, "A Practical public key cryptosystem provably secure against adaptive chosen ciphertext attack", in proc. Crypto '98, pp. 13-25. This is because the security against illegal decryption of the encrypted data is proved.
[0019]
  In this way, the encryption device performs encryption based on the identification information unique to the digital data, the index selected on the encryption side, and the public information, so that the device (such as a license server) that manages the rights of the digital data ( Server) and secret information need not be communicated, and encryption can be performed independently.
[0020]
  Here, the polynomial itself for generating the generation value which is public information is not disclosed. For this reason, for example, the side that distributes the digital data can use the result of calculating the polynomial based on the identification information of the distributed digital data as the decryption key of the encrypted data. In addition, by using a cyclic group, the encryption side and the decryption side can use the same method as the ElGamal encryption method or the Diffie-Hellman key distribution, which is a known encryption method, and the decryption side cyclically uses it. The encrypted data can be decrypted by the first element and the second element which are elements of the group and the decryption key. The cyclic group is a set {c, c 2 , ..., c n-1 , C n = E}, which is a unit element (e) when it is raised to the power of n. This n is particularly called the order.
[0021]
  Claim 2The encryption device described inClaim 1In the encryption device described in the above, information of a specific length is obtained from the identification information (id), the first power value (α), the second power value (β), and the converted data (γ). A hash value generating means for generating a hash value (κ), and the identification information (id), the exponent (r), the hash value (κ), and the generated value (ui, jFrom)formula
[Formula 13]
Figure 0004133364
(However, it includes a decryption authentication data generation means for generating decryption authentication data (δ) by κ: = H (id, α, β, γ), where H is a hash function, and the data composition means includes the first element. The power value (α), the second power value (β), the converted data (γ), and the decryption authentication data (δ) are combined to form the encrypted data (c).
[0022]
  According to such a configuration, the encryption device uses the hash value generation unit to generate a fixed length from the identification information, the first power value, the second power value, and the converted data using a hash function such as SHA (Secure Hash Algorithm). Calculate the hash value to be data. Then, the decryption authentication data generation means generates decryption authentication data based on the identification information unique to the digital data, the index selected on the encryption side, the hash value, and the generation value that is public information. This decryption authentication data is data for specifying that the encrypted data is generated by a valid procedure.
[0023]
  Then, decryption authentication data is further added to the first element power value, the second element power value, and the converted data by the data synthesizing means to obtain encrypted data. This makes it possible to determine the validity of the encrypted data on the decryption side.It is necessary to determine the validity of the encrypted data. In the case of simple encryption that is not necessary, the encrypted data may be generated by combining only the first power value, the second power value, and the converted data.
[0024]
  Also,Claim 3The encryption program described in (1) includes a group (G) that is a cyclic group based on a specific order (q) and a first element (g) that is an element of the group (G).1) And secondary (g2) And the polynomial {fi(Λ): = Σt j = 0ai, jλj} (1 ≦ ai, j≦ q integer, i = 1, 2, 3, 4, 5, 6, 1 ≦ t integer)formula
[Expression 14]
Figure 0004133364
ByGenerated value (ui, jIn order to generate the encrypted data (c) obtained by encrypting the digital data (m) based on the public information consisting of
[0025]
  That is, a predetermined positive integer equal to or less than the order (q) is used as an index (r), and the first element (g1) And the second element (g2), Power value generating means for generating a first power value (α) and a second power value (β), identification information (id) for identifying the digital data (m), the exponent ( r) and the generated value (ui, jFrom)formula
[Expression 15]
Figure 0004133364
ByConversion data generating means for generating conversion data (γ) obtained by converting the digital data (m), combining the first power value (α), the second power value (β), and the conversion data (γ). And data synthesizing means for the encrypted data (c).
[0026]
  According to such a configuration, the encryption program uses the power value generation means to convert the first element and the second element that are elements of the cyclic group according to a specific order into predetermined positive integers equal to or less than the order. Is used as an exponent to generate a first power value and a second power value. Then, converted data obtained by converting the digital data is generated by the converted data generating means. The conversion data is calculated from identification information for identifying digital data, an index selected with a group order or less, and a generated value disclosed as public information, and becomes an entity of encrypted data. It is. Note that the first and second power values are used on the decoding side to convert the converted data into original digital data. Then, the data synthesis means synthesizes the first power value, the second power value, and the converted data to obtain encrypted data.
[0027]
  As described above, by causing the computer to function as each of the above-described means, the encryption program can be operated on a general personal computer, a workstation, or the like.
[0028]
  further,Claim 4The decoding device described inClaim 1The encrypted data (c) obtained by encrypting the digital data (m) by the encryption device according to claim 1 is calculated from the polynomial on the basis of identification information (id) for identifying the digital data (m) Key {fi(Id)} (i = 1, 2, 3, 4, 5, 6) for decryption, wherein the encrypted data (c) is converted into a first power factor (α) and a second power factor Data dividing means for dividing the value into a value (β) and converted data (γ), the first power value (α), the second power value (β), the converted data (γ), and the decryption key {fi(Id)}formula
[Expression 16]
Figure 0004133364
ByAnd decrypted data generating means for generating the digital data (m).
[0029]
  According to such a configuration, the decryption apparatus divides the encrypted data into the first element power value, the second element power value, and the converted data by the data dividing unit, and the decryption data generating unit performs the first element power value, The converted data is converted (decrypted) with the second power value and the decryption key to obtain digital data. by this,Claim 1The encrypted data encrypted by the encryption device described in 1) can be decrypted.
[0030]
  Also,Claim 5The decoding device described inClaim 2The encrypted data (c) obtained by encrypting the digital data (m) by the encryption device according to claim 1 is calculated from the polynomial on the basis of identification information (id) for identifying the digital data (m) Key {fi(Id)} (i = 1, 2, 3, 4, 5, 6) for decryption, wherein the encrypted data (c) is converted into a first power factor (α) and a second power factor A data dividing means for dividing the value (β), converted data (γ) and decryption authentication data (δ), the identification information (id), and the first power value (α) divided by the data dividing means, Authentication hash value generation means for generating an authentication hash value (κ ′) that is information of a specific length from the second element power value (β) and the converted data (γ), and the first element power value (Α), the second power value (β), the authentication hash value (κ ′), and the decryption key {fi(Id)}formula
[Expression 17]
Figure 0004133364
(However, the comparison authentication data generation means for generating the comparison authentication data (δ ′) by κ ′: = H (id, α, β, γ), where H is a hash function, and the comparison authentication data generation means Comparison authentication means for authenticating whether the encrypted data (c) is generated by a legitimate procedure by comparing the comparison authentication data (δ ′) and the decryption authentication data (δ), Based on the determination result of the comparison authentication means, the first power value (α), the second power value (β), the converted data (γ), and the decryption key {fi(Id)}formula
[Expression 18]
Figure 0004133364
ByAnd decrypted data generating means for generating the digital data (m).
[0031]
  According to such a configuration, the decrypting device divides the encrypted data into the first power value, the second power value, the converted data, and the decryption authentication data by the data dividing means. Then, the authentication hash value generation means uses the hash function such as SHA (Secure Hash Algorithm) to obtain a certain length of data from the identification information unique to the digital data, the first power value, the second power value, and the converted data. A hash value for authentication is generated. This hash function is the same function as the hash function used when the decryption authentication data is generated by the encryption device.
[0032]
  Then, comparison authentication data is generated by the comparison authentication data generation means. The comparison authentication data generated by this decryption device has the same value as the decryption authentication data when the encrypted data is generated by a valid procedure. Therefore, by comparing the comparison authentication data with the decryption authentication data by the comparison authentication means, the decryption data generation means generates (decrypts) the digital data only when the encrypted data is generated by a valid procedure. ) As a result, the decoding deviceClaim 2It is possible to authenticate the validity of the encrypted data encrypted by the encryption device described in (1) and to decrypt only when the data is valid.
[0033]
  further,Claim 6The decryption program described inClaim 3The encrypted data (c) obtained by encrypting the digital data (m) by the encryption program described in the above is decrypted from the polynomial on the basis of identification information (id) for identifying the digital data (m) Key {fiIn order to perform decryption by (id)} (i = 1, 2, 3, 4, 5, 6), the computer is configured to function by the following means.
  That is, the data dividing means for dividing the encrypted data (c) into a first power value (α), a second power value (β), and converted data (γ), the first power value (α) , The second power value (β), the converted data (γ), and the decryption key {fi(Id)}formula
[Equation 19]
Figure 0004133364
ByThe decoded data generating means generates the digital data (m).
[0034]
  According to such a configuration, the decryption program divides the encrypted data into the first element power value, the second element power value, and the converted data by the data dividing means, and the decryption data generating means performs the first element power value, The converted data is converted (decrypted) with the second power value and the decryption key to obtain digital data. by this,Claim 3The encrypted data encrypted by the encryption program described in (1) can be decrypted.
[0035]
  Also,Claim 7The content distribution server described in (1) includes a group (G), which is disclosed in advance by a license server that provides license information of content that is digital data, and is a cyclic group based on a specific order (q), and the group (G ) Element (g)1) And secondary (g2) And the polynomial {fi(Λ): = Σt j = 0ai, jλj} (1 ≦ ai, j≦ q integer, i = 1, 2, 3, 4, 5, 6, 1 ≦ t integer)formula
[Expression 20]
Figure 0004133364
ByGenerated value (ui, jThe content distribution server generates and distributes encrypted content, which is encrypted data obtained by encrypting the content, based on the public information including the public information, and the public information acquisition unit acquires the public information from the license server. And encrypting the content based on the exponent selection means for selecting a positive integer less than the order as the exponent, the public information, the identification information for identifying the content, and the exponent. GenerateClaim 1OrClaim 2An encrypted content storage unit that stores encrypted content that is encrypted data generated by the encryption device, and an encrypted content requested by a terminal is stored in the encrypted content storage unit. Content transmitting means for reading from the terminal and transmitting to the terminal.
[0036]
  According to such a configuration, the content distribution server uses the public information acquisition unit to form a group that becomes a traveling group according to a specific order that is disclosed as public information, and a first element and a second element that are elements of the group. And a generated value generated from a coefficient of a predetermined polynomial. Then, a positive integer less than or equal to the order of the group is selected as the exponent by the exponent selection means. This index only needs to be arbitrarily selected in the content distribution server. For example, by using a pseudorandom number generated by a pseudorandom number generator, the confidentiality of the encrypted content can be improved.
[0037]
  Then, the content distribution server encrypts the content by the encryption device based on the public information, the index less than the group order, and the identification information for identifying the content, and the encrypted content is encrypted content Accumulate in accumulation means. The encrypted content stored in the encrypted content storage unit is transmitted to the requested terminal by the content transmission unit.
[0038]
  In this way, the content distribution server performs encryption based on the content-specific identification information that is digital data, the index selected on the encryption side, and the public information. There is no need to communicate information, and encryption can be performed independently.
[0039]
  further,Claim 8The content decryption terminal described inClaim 7The encrypted content, which is encrypted data encrypted by the content distribution server described in 1., into identification information for identifying content that is digital data, and a decryption key calculated from the polynomial acquired from the license server A content decrypting terminal for decrypting the content, an encrypted content acquiring means for acquiring the encrypted content from the content distribution server, and a license for acquiring license information including the decryption key from the license server An information acquisition unit and the encrypted content are decrypted into the content based on the identification information and the decryption keyClaim 4OrClaim 5And the decoding device described in 1. above.
[0040]
  According to such a configuration, the content decryption terminal acquires the encrypted content desired by the user from the content distribution server by the encrypted content acquisition unit, and decrypts the encrypted content from the license server by the license information acquisition unit. Obtain license information including the decryption key. Content usage conditions may be added to the license information.
  Then, the decrypted device decrypts the encrypted content based on the content-specific identification information and the decryption key.
[0041]
DETAILED DESCRIPTION OF THE INVENTION
  Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[Content distribution system configuration]
  First, with reference to FIG. 1, the structure of the content delivery system 1 which is embodiment of this invention is demonstrated. FIG. 1 is a block diagram showing the configuration of the content distribution system 1. The content distribution system 1 connects a content server 10, a license server 20, a content distribution server 30, and a user terminal (content decryption terminal) 40 via a network such as the Internet 3, so that the content desired by the user can be obtained. This is a system for delivering to the user terminal 40.
[0042]
  The content server 10 holds a plurality of contents in a storage means (not shown), and assigns (associates) identification information for identifying the contents to the contents. For example, a content name or file name unique to the content is assigned as identification information. The content server 10 also transmits the requested content to the content distribution server 30 based on a request including identification information from the content distribution server 30.
[0043]
  The license server 20 manages content licenses held in the content server 10. More specifically, the license server 20 publishes information for encrypting the content as public information inf (stored in the storage means 21) of the entire system, and based on a request from the user terminal 40, the content of the user License information including the usage conditions and the decryption key of the encrypted content. The public information inf will be described later.
[0044]
  The content distribution server 30 acquires the content requested from the user terminal 40 from the content server 10, encrypts the content based on the public information inf published by the license server 20, and distributes the content to the user terminal 40. Is. The content distribution server 30 includes an encryption unit (encryption device) 34 that encrypts content.
[0045]
  The user terminal (content decryption terminal) 40 acquires content (encrypted content) desired by the user from the content distribution server 30, acquires license information from the license server 20, and uses it as a decryption key included in the license information. Based on this, the encrypted content is decrypted to present the content to the user. The user terminal 40 includes decoding means (decoding device) 44.
[0046]
(Outline of content encryption and decryption)
  Here, an outline of content encryption and decryption in the content distribution system 1 will be described.
[0047]
<Public information disclosure>
  In the license server 20, a group G that is a cyclic group according to a specific order (assumed to be q) in advance, and a first element g that is any two elements of the group G1And second element g2And ZqPolynomial on (integer of 1 to q)(1) Formula) And select.
[0048]
fi(Λ): = Σt j = 0ai, jλj(1 ≦ ai, j≦ integer of q, i = 1, 2, 3, 4, 5, 6, 1 ≦ integer)(1) Formula
[0049]
  And this(1) FormulaIs the coefficient of ai, jUsing(2) FormulaGenerated value u byi, j, Group G, first element g1, Second element g2And the generated value ui, jIs disclosed as public information inf.
[0050]
[Expression 21]
Figure 0004133364
[0051]
<Generation of decryption key>
  Note that the license server 20(1) FormulaThe information itself is not disclosed and is stored in the storage unit 21 as secret information of the license server 20. When the license server 20 receives a license request for a certain content from the user terminal 40, the license server 20(1) FormulaTo generate a decryption key. That is, the content identification information is id and the decryption key is DmThen the decryption key is(3) FormulaIs calculated by
[0052]
Dm= {Fi(Id)} (i = 1, 2, 3, 4, 5, 6)(3) Formula
[0053]
<Content encryption>
  The content distribution server 30 encrypts content based on the public information inf. At this time, the content distribution server 30 refers to the public information inf,(4) FormulaPerform the operation. Where id is content identification information, m is content data, and r is ZqIndicates a pseudo-random number (exponent) selected from. In addition, κ is a value obtained by using H as a hash function and κ: = H (id, α, β, γ).
[0054]
[Expression 22]
Figure 0004133364
[0055]
  The content distribution server 30(4) FormulaThe α, β, γ, and δ generated in step (1) are combined into encrypted content. This encrypted content is distributed to the user terminal 40.
[0056]
<Decryption of encrypted content>
  The user terminal 40 acquires the decryption key of the encrypted content from the license server 20 and decrypts the encrypted content distributed from the content distribution server 30. Here, the user terminal 40, from α, β and γ included in the encrypted content and the content identification information id,(5) FormulaTo calculate δ ′ as comparison authentication data.
[0057]
[Expression 23]
Figure 0004133364
[0058]
  Note that κ ′ is a value obtained by using H as a hash function and κ ′: = H (id, α, β, γ). Also, the above(5) FormulaThe hash function H used to generate κ ′ of(4) FormulaA function that generates the same hash value as the hash function H used to generate κ.
[0059]
  The user terminal 40(5) FormulaΔ ′ calculated by(4) FormulaCompared with δ calculated in, only if they are the same,(6) FormulaThus, the encrypted content is decrypted into the content m and presented to the user as viewable / viewable data.
[0060]
[Expression 24]
Figure 0004133364
[0061]
  The outline of content encryption and decryption in the content distribution system 1 has been described above. Hereinafter, the content distribution server 30 that performs content encryption in the content distribution system 1 and the user terminal 40 that performs decryption will be described in detail.
[0062]
(Content distribution server configuration)
  First, the configuration of the content distribution server 30 will be described with reference to FIG. 2 (refer to FIG. 1 as appropriate). FIG. 2 is a block diagram showing the configuration of the content distribution server 30. As shown in FIG. 2, the content distribution server 30 encrypts the content m based on the public information inf, and distributes the encrypted content (encrypted content c) to the user terminal 40 that requested it. is there. The content m is assumed to be data (mεG) belonging to the group G.
[0063]
  Here, the content distribution server 30 includes a content reception unit 31, a public information acquisition unit 32, an index selection unit 33, an encryption unit (encryption device) 34, an encrypted content storage unit 35, and a content distribution acceptance. Means 36 and content transmission means 37 are provided.
[0064]
  The content receiving means 31 receives the content m and identification information id for identifying the content m from the content server 10 via the network (Internet 3). The received content m and identification information id are notified to the encryption means 34.
[0065]
  The public information acquisition unit 32 acquires the public information inf released by the license server 20 via the network (Internet 3). This public information acquisition means 32 is a group G, first element g disclosed as public information inf.1, Second element g2And the generated value ui, jAnd the group G is sent to the index selection means 33, the first element g1, Second element g2And the generated value ui, jAre respectively notified to the encryption means 34.
[0066]
  The exponent selection means 33 selects an exponent (power exponent) r to be used in the encryption means 34 as an integer in the range of 1 to q based on the order q of the group G notified from the public information acquisition means 32. is there. Here, the exponent selection means 33 is a pseudo-random number generator that generates pseudo-random numbers with integers ranging from 1 to q. The index r is notified to the encryption means 34.
[0067]
  The encryption unit (encryption device) 34 includes the identification information id received by the content reception unit 31 and the first element g that is the public information acquired by the public information acquisition unit 32.1, Second element g2And the generated value ui, jAnd the encrypted content c obtained by encrypting the content m based on the exponent r selected by the exponent selection means 33. The encrypted content c generated here is stored in the encrypted content storage means 35 in association with the identification information id. The encryption unit (encryption device) 34 will be described in more detail later.
[0068]
  The encrypted content storage unit 35 stores the encrypted content c encrypted by the encryption unit 34, and is configured by a general hard disk or the like.
  The content delivery accepting unit 36 accepts a content delivery request req transmitted from the user terminal 40. The distribution request req accepted here is notified to the content transmission unit 37. Note that this distribution request req includes identification information id for identifying the content.
[0069]
  Based on the distribution request req notified from the content distribution reception unit 36, the content transmission unit 37 converts the content (encrypted content c) specified by the identification information id included in the distribution request req into the encrypted content storage unit. Is read from 35 and transmitted to the user terminal 40.
[0070]
  As described above, by configuring the content distribution server 30, the content distribution server 30 encrypts the content m with the public information of the license server 20, so that the secret such as the encryption key is encrypted with the license server 20. There is no need to transmit / receive information, and the function can be realized independently of the license server 20.
[0071]
  Further, here, the content m is limited to data belonging to the group G. However, when the content m is encrypted using a session key Ks (not shown) by a general encryption method, the session key Ks is assigned to the group. Data belonging to G (KsεG) may be used, the content m may be encrypted with the session key Ks, and the content distribution server 30 may encrypt the session key Ks instead of the content m. In this case, the content m does not need to be data (mεG) belonging to the group G.
[0072]
  Note that the content distribution server 30 can also realize each means as a function program in a computer, and can also combine the function programs to operate as a content distribution program.
[0073]
<Configuration of encryption device>
  Here, with reference to FIG. 3, the structure of the encryption apparatus 34 in the content distribution server 30 (FIG. 2) is demonstrated in detail. FIG. 3 is a block diagram showing the configuration of the encryption device 34. As shown in FIG. 3, the encryption device 34 encrypts the content (digital data) m based on the public information inf published in advance, an arbitrary number (pseudorandom number; index r), and the identification information id. Encrypted content (encrypted data) c is generated.
  Here, the encryption device 34 includes a power value generation unit 34a, a conversion data generation unit 34b, a hash value generation unit 34c, a decryption authentication data generation unit 34d, and a data synthesis unit 34e.
[0074]
  The power value generation means 34a uses the exponent r and the first element g disclosed in the public information.1And second element g2And enter the first element g1And second element g2Are respectively raised to exponentiation r (g1 r, G2 r) And the first power value α (= g1 r) And the second power value β (= g2 r). The first power value α and the second power value β generated here are notified to the hash value generation unit 34c and the data synthesis unit 34e.
[0075]
  The conversion data generation unit 34b includes the content m, the identification information id of the content m, the index r, and the generation value u disclosed in the public information.i, jAnd enter content m(7) FormulaThe conversion data γ converted by the above is generated. In addition,(7) FormulaThe Π in indicates the total product symbol.
[0076]
[Expression 25]
Figure 0004133364
[0077]
  The conversion data γ generated here is notified to the hash value generation unit 34c, the decryption authentication data generation unit 34d, and the data synthesis unit 34e.
[0078]
  The hash value generation unit 34c calculates a hash value using a hash function such as SHA (Secure Hash Algorithm). Here, the hash value generation unit 34c is generated by the identification information id of the content m, the first element power value α and the second element power value β generated by the power value generation unit 34a, and the conversion data generation unit 34b. The converted data γ is input to generate a hash value κ. This hash value κ is notified to the decryption authentication data generation means 34d.
[0079]
  The decryption authentication data generation means 34d generates data (decryption authentication data δ) for authenticating whether or not the encrypted content c is encrypted by a valid procedure at the time of decryption. Here, the decryption authentication data generation means 34d determines the identification information id of the content m, the index r, and the generated value u disclosed in the public information.i, jThen, the conversion data γ generated by the conversion data generation unit 34b and the hash value κ generated by the hash value generation unit 34c are input to generate the decryption authentication data δ. This decryption authentication data δ is(8) FormulaAnd is notified to the data synthesizing unit 34e.
[0080]
[Equation 26]
Figure 0004133364
[0081]
  The data synthesizing unit 34e includes a first element power value α and a second element power value β generated by the power value generation unit 34a, conversion data γ generated by the conversion data generation unit 34b, and decryption authentication data generation unit 34d. The encrypted content c is generated by synthesizing with the decryption authentication data δ generated in (1). For example, the first element power value α, the second element power value β, the conversion data γ, and the decryption authentication data δ are sequentially connected to form one data.
[0082]
  Although the configuration of the encryption device 34 according to the present invention has been described based on one embodiment, the present invention is not limited to this. For example, when it is not necessary to authenticate whether or not the encrypted content c is encrypted by a legitimate procedure at the time of decryption, the hash value generation unit 34c and the decryption authentication data generation unit 34d are configured from the configuration of the encryption device 34. And the data composition means 34e may generate the encrypted content c by synthesizing the first element power value α, the second element power value β, and the converted data γ.
[0083]
  The encryption target of the encryption device 34 is not limited to content, and may be general digital data. That is, it can be said that the encryption device 34 generates encrypted data obtained by encrypting digital data.
  The encryption device 34 can also realize each unit as a function program in a computer, and can also combine the function programs to operate as an encryption program.
[0084]
(User terminal configuration)
  Next, the configuration of the user terminal (content decryption terminal) 40 will be described with reference to FIG. 4 (refer to FIG. 1 as appropriate). FIG. 4 is a block diagram showing the configuration of the user terminal 40. As illustrated in FIG. 4, the user terminal 40 decrypts the encrypted content c distributed from the content distribution server 30 based on the license information L (including the decryption key) acquired from the license server 20, and the viewing data D Is presented to the user.
[0085]
  Here, the user terminal 40 includes an encrypted content acquisition unit 41, a license information acquisition unit 42, a user authentication unit 43, a decryption unit (decryption device) 44, and a content presentation unit 45.
[0086]
  The encrypted content acquisition unit 41 receives a content identification information id from an input unit (not shown), thereby transmitting a content distribution request req including the content identification information id to the content distribution server 30. From the distribution server 30, the encrypted content c obtained by encrypting the content is received (acquired). The encrypted content c received here is notified to the decryption means 44.
[0087]
  The license information acquisition unit 42 includes a license issuance request L including content identification information id.reqIs transmitted to the license server 20, and the decryption key Dm {= f for decrypting the encrypted content c is transmitted from the license server 20.iThe license information L including (id), (i = 1, 2, 3, 4, 5, 6)} is received (acquired). Note that the license information acquisition unit 42 extracts the decryption key Dm included in the license information L, notifies the decryption unit 44, and notifies the user authentication unit 43 of the license information L.
[0088]
  The user authentication unit 43 determines the usage conditions described in the license information L acquired by the license information acquisition unit 42 and decrypts the decryption unit 44 only when the usage conforms to the regular usage conditions. A signal (decoding instruction) for instructing the start of. For example, the user authentication means 43 determines whether the expiration date of the content is described in the license information L, whether or not the expiration date has expired.
[0089]
  Based on the content identification information id and the decryption key Dm acquired and extracted by the license information acquisition unit 42, the decryption unit (decryption device) 44 converts the encrypted content c acquired by the encrypted content acquisition unit 41 into the content Decoding into m. The content m decrypted here is notified to the content presentation means 45. The decryption unit 44 is activated only when a signal (decryption instruction) instructing the start of decryption is notified from the user authentication unit 43. The decoding means (decoding device) 44 will be described in detail later.
[0090]
  The content presenting means 45 converts the content m decrypted by the decrypting means 44 into data (viewing data D) that can be viewed by the user and presents it to the user. For example, when the content m is data encoded by MPEG2 Video, the content presentation unit 45 functions as a decoder that decodes the content m into a moving image.
[0091]
  The configuration of the user terminal (content decryption terminal) 40 has been described above. However, the user terminal (content decryption terminal) 40 can also realize each unit as each function program in a computer, and combine the function programs. It is also possible to operate as a content decryption program.
[0092]
<Configuration of decoding device>
  Here, with reference to FIG. 5, the structure of the decoding apparatus 44 in the user terminal 40 (FIG. 4) is demonstrated in detail. FIG. 5 is a block diagram showing the configuration of the decoding device 44. As shown in FIG. 5, the decryption device 44 includes identification information id for identifying content and a decryption key Dm {= fi(Id)} and the encrypted content c is decrypted to reproduce the content m.
[0093]
  Here, the decryption device 44 includes a data dividing unit 44a, an authentication hash value generation unit 44b, a comparison authentication data generation unit 44c, a comparison authentication unit 44d, and a decryption data generation unit 44e.
[0094]
  The data dividing unit 44a divides the input encrypted content c into a first element power value α, a second element power value β, converted data γ, and decryption authentication data δ. The divided first power value α and second power value β are notified to the authentication hash value generation unit 44b, the comparison authentication data generation unit 44c, and the decryption data generation unit 44e. Also, the conversion data γ is notified to the authentication hash value generation unit 44b and the decryption data generation unit 44e, and the decryption authentication data δ is notified to the comparison authentication unit 44d.
[0095]
  The authentication hash value generation unit 44b calculates a hash value by a hash function such as SHA. Here, the hash value generation unit 44b for authentication inputs the identification information id of the content, the first element power value α, the second element power value β, and the converted data γ notified from the data dividing unit 44a, and authenticates. A hash value κ ′ is generated. This authentication hash value κ ′ is notified to the comparison authentication data generation means 44c. The hash function of the authentication hash value generation unit 44b is the same hash function as the hash value generation unit 34c of the encryption device 34 (FIG. 3).
[0096]
  The comparison authentication data generation unit 44c includes a first element power value α and a second element power value β divided by the data division unit 44a, an authentication hash value κ ′ generated by the authentication hash value generation unit 44b, and Input decryption key Dm {= fi(Id)} is used to generate comparison authentication data δ ′ for determining whether or not the encrypted content c is generated by a valid procedure. Here, the comparison authentication data δ ′ is(5) FormulaCalculated and generated by
[0097]
  The comparison authentication data δ ′ has the same value as the decryption authentication data δ when the encrypted content c is generated by a valid procedure.
  The comparison authentication unit 44d compares the decryption authentication data δ notified from the data division unit 44a with the comparison authentication data δ 'notified from the comparison authentication data generation unit 44c, and the determination result cmp is decoded data generation unit 44e. To notify. For example, when the decryption authentication data δ and the comparison authentication data δ ′ are equal, the numerical value “1” is notified to the decryption data generation unit 44e as the determination result cmp, and when the decryption authentication data δ ′ is not equal, the numerical value “0” is notified as the determination result cmp. To do.
[0098]
  The decrypted data generating means 44e includes the first element power value α, the second element power value β and the converted data γ notified from the data dividing means 44a, and the input decryption key Dm {= f.iBased on (id)}, the content m obtained by decrypting the encrypted content c is generated. Here, the content m is(6) FormulaCalculated and generated by
[0099]
  The decrypted data generating unit 44e performs the decryption operation only when it is determined that the decrypted authentication data δ and the comparative authentication data δ ′ are equal in the determination result cmp notified from the comparative authentication unit 44d.
[0100]
  Although the configuration of the decoding device 44 according to the present invention has been described based on one embodiment, the present invention is not limited to this. For example, when it is not necessary to authenticate whether or not the encrypted content c is encrypted by a legitimate procedure at the time of decryption, the authentication hash value generation unit 44b, the comparison authentication data generation unit are configured from the configuration of the decryption device 44. 44c and the comparison / authentication unit 44d are deleted, and the decrypted data generating unit 44e performs the encrypted content based on the first unit power value α, the second unit power value β, the conversion data γ, and the decryption key Dm without performing authentication. The content m obtained by decrypting c may be generated.
[0101]
  The decryption target of the decryption device 44 is not limited to the content, and any decryption target may be used as long as general digital data is encrypted. That is, it can be said that the decrypting device 44 decrypts the encrypted data obtained by encrypting the digital data into the digital data.
[0102]
  Note that the decoding device 44 can also realize each unit as each function program in a computer, and can also combine the function programs to operate as a decoding program.
[0103]
[Operation of content distribution system]
  Next, the operation of the content distribution system 1 according to the embodiment of the present invention will be described with reference to FIGS.
(Disclosure of public information by license server)
  First, referring to FIG. 6 (refer to FIG. 1 as appropriate), an operation in which the license server 20 discloses public information will be described. FIG. 6 is a flowchart showing an operation in which the license server 20 publishes public information.
[0104]
  The license server 20 first has a group G that is a cyclic group according to a specific order (q), and a first element g that is an arbitrary two elements of the group G.1And second element g2And ZqPolynomial {f (integer of 1 to q)i(Λ)} (i = 1, 2, 3, 4, 5, 6) (above(1) Formula) (Step S10), group G, first element g1, Second element g2And polynomial {fi(Λ)} is stored in the storage means 21 of the license server 20 (step S11).
[0105]
  The license server 20 then uses the polynomial {fiA which is a coefficient of (λ)}i, jUsing(2) FormulaThe generated value {ui, j} (I = 1, 3, 5, 1 ≦ j ≦ t) is calculated (step S12), the group G selected in step S10, the first element g1And second element g2And the generated value {u calculated in step S12i, j} Is disclosed (step S13).
[0106]
(Content encryption by content distribution server)
  Next, referring to FIG. 7 (refer to FIG. 1 and FIG. 2 as appropriate), the operation of the content distribution server 30 encrypting the content will be described. FIG. 7 is a flowchart showing an operation in which the content distribution server 30 encrypts the content m.
[0107]
  The content distribution server 30 receives the content m and the identification information id for identifying the content m from the content server 10 by the content receiving unit 31 (step S20).
[0108]
  Further, the content distribution server 30 acquires the public information inf released by the license server 20 by the public information acquisition unit 32 (step S21), and the index selection unit 33 ranks the group G disclosed by the public information inf. An exponent r is selected by generating a pseudo random number with an integer (an integer not smaller than 1 and not larger than q) in a range not exceeding the number q (step S22).
[0109]
  Then, the content distribution server 30 encrypts the content m based on the identification information id, the public information inf, and the index r (step S23), and stores the encrypted encrypted content c in the encrypted content storage unit 35. (Step S24).
[0110]
  Through the above steps, the content distribution server 30 stores the encrypted content c obtained by encrypting the content m in the encrypted content storage unit 35 and is ready to distribute the requested encrypted content. .
[0111]
<Detailed operation of content encryption>
  Here, the encryption of the content m in step S23 will be described in detail with reference to FIG. 8 (see FIGS. 1 and 3 as appropriate). FIG. 8 is a flowchart showing the operation of the encryption means (encryption device) 34 in the content distribution server 30.
[0112]
[Data generation step]
  The encryption means 34 uses the exponent r and the first element g disclosed in the public information by the power value generation means 34a.1And second element g2And the first power value α (= g1 r) And the second power value β (= g2 r) Is generated (step S30).
  Further, the encryption means 34 is converted by the conversion data generation means 34b.(7) FormulaThus, the conversion data γ is generated (step S31).
[0113]
  Further, the encryption unit 34 generates a hash value κ from the identification information id, the first power value α, the second power value β, and the conversion data γ by the hash function of the hash value generation unit 34c (step S32). ), By the decryption authentication data generation means 34d(8) FormulaThus, decryption authentication data δ is generated (step S33).
[0114]
[Data composition step]
  Then, the encryption unit 34 uses the data synthesis unit 34e to generate the first element power value α and the second element power value β generated in step S30, the converted data γ generated in step S31, and the decryption data generated in step S33. The encrypted content c is generated by synthesizing the authentication data δ (step S34).
[0115]
(Decoding / viewing content by user terminal)
  Next, an operation in which the user terminal (content decryption terminal) 40 decrypts the encrypted content and presents the content to the user will be described with reference to FIG. 9 (see FIGS. 1 and 4 as appropriate). FIG. 9 is a flowchart showing the operation of the user terminal 40.
[0116]
  When the user terminal 40 requests the content distribution server 30 for the content desired by the user (not shown as a step), the content distribution server 30 receives the corresponding encryption from the encrypted content storage unit 35 (FIG. 2).ConversionThe content c is read and distributed to the user terminal 40 (step S40).
[0117]
  Then, the user terminal 40 uses the encrypted content acquisition unit 41 toConversionThe content c is acquired (step S41), and the license information acquisition unit 42 encrypts the content c.ConversionRequest issuance of license information L of content c (step S42).
[0118]
  The license server 20 requested to issue the license information L determines whether or not the issue request is a request from a valid user who views the content (step S43), and is a request from a valid user. In the case (Yes), the decryption key Dm {= f for decrypting the encrypted content c is used.i(Id)} and the license information L describing the usage conditions of the content is issued (transmitted) to the user terminal 40 (step S44). On the other hand, if it is not a request from a legitimate user (No in step S43), the operation is terminated without issuing the license information L.
[0119]
  Then, the user terminal 40 receives the licenseinformationThe acquisition unit 42 acquires the license information L from the license server 20 (step S45), and extracts the decryption key Dm included in the license information L (step S46).
  Then, the user terminal 40 determines the usage conditions described in the license information L by the user authentication means 43 (step S47). If the usage conditions are not appropriate (No), for example, the content viewing time limit expires. If it is, the operation is terminated without decrypting the encrypted content c.
[0120]
  On the other hand, if the usage conditions are appropriate in step S47 (Yes), the decryption means 44 decrypts the encrypted content c using the decryption key Dm extracted in step S46 (step S48). Then, by decoding the decrypted content c by the content presenting means 45, the content c becomes the viewing data D that can be viewed by the user (step S49).
[0121]
  Through the above steps, the user terminal 40 obtains the content desired by the user (encrypted content c) as the content.DeliveryThe license information L is acquired from the server 30, the license information L for the content is acquired from the license server 20, and the encrypted content c is decrypted with the decryption key included in the license information L to obtain the viewing data D.
[0122]
<Detailed operations for issuing license information>
  Here, the issue of the license information L in step S44 will be described in detail with reference to FIG. 10 (refer to FIG. 1 as appropriate). FIG. 10 is a flowchart showing an operation in which the license server 20 issues the license information L.
[0123]
  When the license server 20 receives the license issuance request including the content identification information id from the user terminal 40 (step S50), the license server 20 stores the group G and the first element g stored in the storage unit 21.1, Second element g2And polynomial {fi(Λ)} (i = 1, 2, 3, 4, 5, 6) is read (step S51).
  Then, the polynomial {fi(Λ)} (above(1) FormulaReference) to the decryption key Dm {= fi(Id)} (i = 1, 2, 3, 4, 5, 6) is generated (step S52).
[0124]
  The license server 20 then uses the content usage conditions and the decryption key Dm {= fi(Id)} (i = 1, 2, 3, 4, 5, 6) is generated (step S53), and issued (transmitted) to the user terminal 40. Note that the content usage conditions may be created sequentially according to the request time when a license issuance request is received, or conditions set in advance for each content may be used.
[0125]
<Detailed operation of content decryption>
  Next, the decrypting operation of the encrypted content c in step S48 in FIG. 9 will be described in detail with reference to FIG. 11 (see FIG. 5 as appropriate). FIG. 11 is a flowchart showing the operation of the decoding means (decoding device) 44 in the user terminal 40.
[0126]
[Data division step]
  The decryption unit 44 divides the encrypted content c into the first element power value α, the second element power value β, the converted data γ, and the decryption authentication data δ by the data dividing unit 44a (step S60).
[0127]
[Comparison authentication data generation step]
  Then, the decryption unit 44 generates an authentication hash value κ ′ from the content identification information id, the first element power value α, the second element power value β, and the conversion data γ by the authentication hash value generation unit 44b. (Step S61), by the comparison authentication data generation means 44c,(5) FormulaThus, comparison authentication data δ ′ is generated (step S62).
[0128]
[Comparison authentication step, decryption data generation step]
  Then, the comparison authentication data δ ′ and the decryption authentication data δ divided by the data dividing unit 44a are compared (step S63). If the values of the comparison authentication data δ ′ and the decryption authentication data δ are equal (Yes), Conversion data γ, first power factor α, second power value β and decryption key Dm {= fi(Id)} (i = 1, 2, 3, 4, 5, 6)(6) FormulaThus, the content m is decrypted (step S64). On the other hand, if the values of the comparison authentication data δ ′ and the decryption authentication data δ are not equal (No) in step S63, the content m is not decrypted and the operation ends.
[0129]
  As described above, in the content distribution system 1 (FIG. 1), since there is no exchange of information other than public information between the license server 20 and the content distribution server 30, there is no need for confidential communication or the like. Management costs can be reduced. Further, since the license server 20 generates a decryption key from the disclosed information, it is not necessary to store (manage) the decryption key. Furthermore, since the content distribution server 30 can encrypt the content without depending on whether or not the decryption key is generated by the license server 20, the license server 20 and the content distribution server 30 operate independently. It becomes possible to make it.
[0130]
  Also, content encryption and decryption in the content distribution system 1 is based on the premise of the existence of an ideal function (hash function) that cannot exist and the difficulty of solving a number theoretic problem. Therefore, the risk of illegally decrypting encrypted content can be reduced.
[0131]
【The invention's effect】
  As described above, according to the present inventionEncryption deviceAnd its programsDecoding deviceIn addition, the program, the content distribution server, and the content decryption terminal have the following excellent effects.
[0132]
  Claim1 or claim 3According to the invention described in the above, the rights of digital data such as a license server are managed in order to perform encryption based on identification information unique to digital data, an index selected on the encryption side, and publicly disclosed information. It is not necessary to communicate secret information such as an encryption key with a device (server) that performs the encryption, and encryption can be performed independently.
[0133]
  Claim 2Since the decryption authentication data is added to obtain encrypted data, the decryption side can determine the validity of the encrypted data. Thereby, the security against falsification of the encrypted data can be strengthened.
[0134]
  Claim 4 or claim 6According to the invention described in the above, the encrypted data encrypted by the identification information unique to the digital data, the index selected on the encryption side, and the public information published in advance, the identification information and the decryption key Can be used to decrypt. Further, since this decryption key is generated by a polynomial which is secret information used when generating public information, it is difficult to illegally decrypt the encrypted data. This makes it possible to construct a highly secure encryption / decryption system.
[0135]
  Claim 5According to the invention described in the above, it is authenticated whether or not the encrypted data has been generated by a legitimate procedure by comparing the decryption authentication data included in the encrypted data with the comparison authentication data generated on the decryption side. Therefore, the security against falsification of the encrypted data can be strengthened.
[0136]
  Claim 7According to the invention described in the above, since the encryption is performed using the content-specific identification information that is digital data, the index selected on the encryption side, and the public information, the license server that manages the rights of the content and the secret information Without having to communicate with each other, and encryption can be performed independently. As a result, the security against illegal decryption and falsification of the encrypted content can be strengthened.
[0137]
  Claim 8According to the invention described in the above, the encrypted content encrypted by the content-specific identification information, the index selected on the encryption side, and the public information published in advance is used using the identification information and the decryption key. Can be decrypted. Further, since this decryption key is generated by a polynomial that is secret information used when generating public information, it is difficult to illegally decrypt the encrypted content. This makes it possible to build a highly secure content distribution system.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a configuration of a content distribution system according to an embodiment of the present invention.
FIG. 2 is a block diagram showing a configuration of a content distribution server according to the embodiment of the present invention.
FIG. 3 is a block diagram showing a configuration of an encryption apparatus according to an embodiment of the present invention.
FIG. 4 is a block diagram showing a configuration of a user terminal (content decryption terminal) according to the embodiment of the present invention.
FIG. 5 is a block diagram showing a configuration of a decoding apparatus according to an embodiment of the present invention.
FIG. 6 is a flowchart showing an operation of disclosing public information by the license server according to the embodiment of the present invention.
FIG. 7 is a flowchart showing an operation of the content distribution server according to the embodiment of the present invention.
FIG. 8 is a flowchart showing an operation of the encryption apparatus according to the embodiment of the present invention.
FIG. 9 is a flowchart showing an operation of a user terminal (content decryption terminal) according to the embodiment of the present invention.
FIG. 10 is a flowchart showing an operation of issuing license information by the license server according to the embodiment of the present invention.
FIG. 11 is a flowchart showing an operation of the decoding apparatus according to the embodiment of the present invention.
FIG. 12 is a block diagram showing a configuration of a conventional content distribution system.
[Explanation of symbols]
1, 1B ... Content distribution system
3 …… Internet
10 ...... Content server
20, 20B ... License server
30, 30B ... Content distribution server
31 ...... Content receiving means
32 ...... Public information acquisition means
33 …… Index selection means
34 ...... Encryption means (encryption device)
34a …… Power value generation means
34b ... Conversion data generation means
34c ... Hash value generation means
34d: Decryption authentication data generation means
34e: Data synthesis means
35 ...... Encrypted content storage means
36 …… Content delivery acceptance means
37 ...... Content transmission means
40, 40B ... User terminal (content decryption terminal)
41 …… Encrypted content acquisition means
42 …… License information acquisition means
43 …… User authentication means
44 ...... Decoding means (decoding device)
44a ... Data division means
44b ... Authentication hash value generation means
44c... Comparison authentication data generation means
44d: Comparative authentication means
44e: Decoded data generation means
45 ...... Content presentation means

Claims (8)

予め公開された、特定の位数(q)により巡回群となる群(G)と、その群(G)の要素である第一元(g)及び第二元(g)と、多項式{f(λ):=Σ j=0i,jλ}(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数)から、
Figure 0004133364
により生成された生成値(ui,j)とからなる公開情報に基づいて、デジタルデータ(m)を暗号化した、暗号化データ(c)を生成する暗号化装置であって、
前記位数(q)以下の予め定めた正整数を指数(r)として、前記第一元(g)及び前記第二元(g)をべき乗し、第一元べき乗値(α)及び第二元べき乗値(β)を生成するべき乗値生成手段と、
前記デジタルデータ(m)を識別するための識別情報(id)、前記指数(r)及び前記生成値(ui,j)から、
Figure 0004133364
により前記デジタルデータ(m)を変換した変換データ(γ)を生成する変換データ生成手段と、
前記第一元べき乗値(α)、前記第二元べき乗値(β)及び前記変換データ(γ)を合成し、前記暗号化データ(c)とするデータ合成手段と、
を備えていることを特徴とする暗号化装置。
A group (G) that becomes a cyclic group with a specific order (q), a first element (g 1 ) and a second element (g 2 ) that are elements of the group (G), and a polynomial of: {f i (λ) = Σ t j = 0 a i, j λ j} (1 ≦ a i, j ≦ q integer of i = 1,2,3,4,5,6,1 ≦ t Integer) to the expression
Figure 0004133364
Based on the generated generation values (u i, j) consisting of public information, the digital data (m) is encrypted, a cryptographic device for generating encrypted data (c),
The first element (g 1 ) and the second element (g 2 ) are raised to the power of the first element (g 1 ) and the second element (g 2 ) with a predetermined positive integer less than or equal to the order (q) as the index (r), and the first element power value (α) and Power value generating means for generating a second power value (β);
The identification information for identifying the digital data (m) (id), the exponent (r) and the product value from the (u i, j), wherein
Figure 0004133364
And converting data generating means for generating conversion data obtained by converting the digital data (m) (γ) by,
Data synthesizing means for synthesizing the first element power value (α), the second element power value (β), and the converted data (γ) into the encrypted data (c);
An encryption device comprising:
前記識別情報(id)、前記第一元べき乗値(α)、前記第二元べき乗値(β)及び前記変換データ(γ)から、特定の長さの情報となるハッシュ値(κ)を生成するハッシュ値生成手段と、
前記識別情報(id)、前記指数(r)、前記ハッシュ値(κ)及び前記生成値(ui,j)から、
Figure 0004133364
但し、κ:=H(id,α,β,γ)、Hはハッシュ関数)により復号認証データ(δ)を生成する復号認証データ生成手段とを備え、
前記データ合成手段が、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び復号認証データ(δ)を合成し、前記暗号化データ(c)とすることを特徴とする請求項1に記載の暗号化装置。
A hash value (κ) that is information of a specific length is generated from the identification information (id), the first power value (α), the second power value (β), and the converted data (γ). Hash value generation means for
The identification information (id), the exponent (r), from the hash value (kappa) and the generation values (u i, j), wherein
Figure 0004133364
( Wherein κ: = H (id, α, β, γ), where H is a hash function) decryption authentication data generating means for generating decryption authentication data (δ),
The data synthesis means synthesizes the first power value (α), the second power value (β), the converted data (γ), and the decryption authentication data (δ), and the encrypted data (c) The encryption apparatus according to claim 1 , wherein:
予め公開された、特定の位数(q)により巡回群となる群(G)と、その群(G)の要素である第一元(g)及び第二元(g)と、多項式{f(λ):=Σ j=0i,jλ}(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数)から、
Figure 0004133364
により生成された生成値(ui,j)とからなる公開情報に基づいて、デジタルデータ(m)を暗号化した、暗号化データ(c)を生成するために、コンピュータを、
前記位数(q)以下の予め定めた正整数を指数(r)として、前記第一元(g)及び前記第二元(g)をべき乗し、第一元べき乗値(α)及び第二元べき乗値(β)を生成するべき乗値生成手段、
前記デジタルデータ(m)を識別するための識別情報(id)、前記指数(r)及び前記生成値(ui,j)から、
Figure 0004133364
により前記デジタルデータ(m)を変換した変換データ(γ)を生成する変換データ生成手段、
前記第一元べき乗値(α)、前記第二元べき乗値(β)及び前記変換データ(γ)を合成し、前記暗号化データ(c)とするデータ合成手段、
として機能させることを特徴とする暗号化プログラム。
A group (G) that becomes a cyclic group with a specific order (q), a first element (g 1 ) and a second element (g 2 ) that are elements of the group (G), and a polynomial of: {f i (λ) = Σ t j = 0 a i, j λ j} (1 ≦ a i, j ≦ q integer of i = 1,2,3,4,5,6,1 ≦ t Integer) to the expression
Figure 0004133364
In order to generate encrypted data (c) obtained by encrypting digital data (m) based on public information including generated values (u i, j ) generated by
The first element (g 1 ) and the second element (g 2 ) are raised to the power of the first element (g 1 ) and the second element (g 2 ) with a predetermined positive integer less than or equal to the order (q) as the index (r), and the first element power value (α) and Power value generating means for generating a second power value (β);
The identification information for identifying the digital data (m) (id), the exponent (r) and the product value from the (u i, j), wherein
Figure 0004133364
Converting data generating means for generating conversion data obtained by converting the digital data (m) (γ) by,
Data synthesizing means for synthesizing the first element power value (α), the second element power value (β) and the converted data (γ) into the encrypted data (c);
An encryption program characterized by functioning as
請求項1に記載の暗号化装置によってデジタルデータ(m)を暗号化した暗号化データ(c)を、前記デジタルデータ(m)を識別するための識別情報(id)に基づいて前記多項式から算出された復号鍵{f(id)}(i=1,2,3,4,5,6)により復号する復号装置であって、
前記暗号化データ(c)を、第一元べき乗値(α)、第二元べき乗値(β)及び変換データ(γ)に分割するデータ分割手段と、
前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び前記復号鍵{f(id)}から、
Figure 0004133364
により前記デジタルデータ(m)を生成する復号データ生成手段と、
を備えていることを特徴とする復号装置。
The encrypted data (c) obtained by encrypting the digital data (m) by the encryption device according to claim 1 is calculated from the polynomial on the basis of identification information (id) for identifying the digital data (m). A decryption device for decrypting with the decrypted key {f i (id)} (i = 1, 2, 3, 4, 5, 6),
Data dividing means for dividing the encrypted data (c) into a first power value (α), a second power value (β), and converted data (γ);
The first way exponential value (alpha), from the second original exponential value (beta), the converted data (gamma) and the decryption key {f i (id)}, wherein
Figure 0004133364
And decoded data generating means for generating said digital data (m) by,
A decoding apparatus comprising:
請求項2に記載の暗号化装置によってデジタルデータ(m)を暗号化した暗号化データ(c)を、前記デジタルデータ(m)を識別するための識別情報(id)に基づいて前記多項式から算出された復号鍵{f(id)}(i=1,2,3,4,5,6)により復号する復号装置であって、
前記暗号化データ(c)を、第一元べき乗値(α)、第二元べき乗値(β)、変換データ(γ)及び復号認証データ(δ)に分割するデータ分割手段と、
前記識別情報(id)と、前記データ分割手段で分割された第一元べき乗値(α)、第二元べき乗値(β)及び変換データ(γ)とから、特定の長さの情報となる認証用ハッシュ値(κ´)を生成する認証用ハッシュ値生成手段と、
前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記認証用ハッシュ値(κ´)及び前記復号鍵{f(id)}から、
Figure 0004133364
但し、κ´:=H(id,α,β,γ)、Hはハッシュ関数)により比較認証データ(δ´)を生成する比較認証データ生成手段と、
この比較認証データ生成手段で生成された比較認証データ(δ´)と、前記復号認証データ(δ)とを比較することで、前記暗号化データ(c)が正当な手続きによって生成されたものかどうかを認証する比較認証手段と、
この比較認証手段の判定結果に基づいて、前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び前記復号鍵{f(id)}から、
Figure 0004133364
により前記デジタルデータ(m)を生成する復号データ生成手段と、
を備えていることを特徴とする復号装置。
The encrypted data (c) obtained by encrypting the digital data (m) by the encryption device according to claim 2 is calculated from the polynomial on the basis of identification information (id) for identifying the digital data (m). A decryption device for decrypting with the decrypted key {f i (id)} (i = 1, 2, 3, 4, 5, 6),
Data dividing means for dividing the encrypted data (c) into a first power value (α), a second power value (β), converted data (γ), and decryption authentication data (δ);
Information of a specific length is obtained from the identification information (id), the first power value (α), the second power value (β) and the converted data (γ) divided by the data dividing means. An authentication hash value generating means for generating an authentication hash value (κ ′);
The first way exponential value (alpha), from the second original exponential value (beta), the authentication hash value (κ') and the decryption key {f i (id)}, wherein
Figure 0004133364
( Wherein κ ′: = H (id, α, β, γ), where H is a hash function) comparison authentication data generation means for generating comparison authentication data (δ ′);
Whether the encrypted data (c) is generated by a legitimate procedure by comparing the comparison authentication data (δ ′) generated by the comparison authentication data generation means with the decryption authentication data (δ) A comparison authentication means for authenticating
Based on the determination result of the comparison authentication means, from the first power value (α), the second power value (β), the converted data (γ), and the decryption key {f i (id)}, formula
Figure 0004133364
And decoded data generating means for generating said digital data (m) by,
A decoding apparatus comprising:
請求項3に記載の暗号化プログラムによってデジタルデータ(m)を暗号化した暗号化データ(c)を、前記デジタルデータ(m)を識別するための識別情報(id)に基づいて前記多項式から算出された復号鍵{f(id)}(i=1,2,3,4,5,6)により復号するために、コンピュータを、
前記暗号化データ(c)を、第一元べき乗値(α)、第二元べき乗値(β)及び変換データ(γ)に分割するデータ分割手段、
前記第一元べき乗値(α)、前記第二元べき乗値(β)、前記変換データ(γ)及び前記復号鍵{f(id)}から、
Figure 0004133364
により前記デジタルデータ(m)を生成する復号データ生成手段、
として機能させることを特徴とする復号プログラム。
The encrypted data (c) obtained by encrypting the digital data (m) by the encryption program according to claim 3 is calculated from the polynomial on the basis of identification information (id) for identifying the digital data (m). To decrypt with the decrypted key {f i (id)} (i = 1, 2, 3, 4, 5, 6),
Data dividing means for dividing the encrypted data (c) into a first power value (α), a second power value (β), and converted data (γ);
The first way exponential value (alpha), from the second original exponential value (beta), the converted data (gamma) and the decryption key {f i (id)}, wherein
Figure 0004133364
Decoded data generating means for generating said digital data (m) by,
A decryption program characterized by functioning as:
デジタルデータであるコンテンツのライセンス情報を提供するライセンスサーバによって、予め公開された、特定の位数(q)により巡回群となる群(G)と、前記群(G)の要素である第一元(g)及び第二元(g)と、多項式{f(λ):=Σ j=0i,jλ}(1≦ai,j≦qの整数、i=1,2,3,4,5,6、1≦tの整数)から、
Figure 0004133364
により生成された生成値(ui,j)とからなる公開情報に基づいて、前記コンテンツを暗号化した暗号化データである暗号化コンテンツを生成し配信するコンテンツ配信サーバであって、
前記公開情報を前記ライセンスサーバから取得する公開情報取得手段と、
前記位数以下の正整数を指数として選択する指数選択手段と、
前記公開情報と、前記コンテンツを識別する識別情報と、前記指数とに基づいて、前記コンテンツを暗号化して暗号化コンテンツを生成する請求項1又は請求項2に記載の暗号化装置と、
この暗号化装置で生成された暗号化データである暗号化コンテンツを蓄積する暗号化コンテンツ蓄積手段と、
端末から要求のあった暗号化コンテンツを前記暗号化コンテンツ蓄積手段から読み込んで前記端末へ送信するコンテンツ送信手段と、
を備えていることを特徴とするコンテンツ配信サーバ。
A group (G), which is a cyclic group based on a specific order (q), and a first element which is an element of the group (G), which is disclosed in advance by a license server that provides license information of content that is digital data. (g 1) and a second way and (g 2), the polynomial {f i (λ): = Σ t j = 0 a i, j λ j} (1 ≦ a i, integers j ≦ q, i = 1 , integer) of 2,3,4,5,6,1 ≦ t, the formula
Figure 0004133364
Based on the public information consisting of the generated product values (u i, j) by, the content A content delivery server for delivering to generate encrypted content is encrypted encrypted data,
Public information acquisition means for acquiring the public information from the license server;
Exponent selection means for selecting a positive integer less than or equal to the order as an exponent;
The encryption device according to claim 1 or 2 , wherein the encrypted content is generated by encrypting the content based on the public information, identification information for identifying the content, and the index.
Encrypted content storage means for storing encrypted content that is encrypted data generated by the encryption device;
Content transmitting means for reading the encrypted content requested from the terminal from the encrypted content storage means and transmitting it to the terminal;
A content distribution server comprising:
デジタルデータであるコンテンツが請求項7に記載のコンテンツ配信サーバによって暗号化された暗号化データである暗号化コンテンツを、前記コンテンツを識別するための識別情報と、ライセンスサーバから取得した復号鍵を含むライセンス情報とに基づいて、前記コンテンツに復号するコンテンツ復号端末であって、
前記暗号化コンテンツを前記コンテンツ配信サーバから取得する暗号化コンテンツ取得手段と、
前記ライセンス情報を前記ライセンスサーバから取得するライセンス情報取得手段と、
前記暗号化コンテンツを、前記識別情報及び前記ライセンス情報に含まれる復号鍵に基づいて前記コンテンツに復号する請求項4又は請求項5に記載の復号装置と、
を備えていることを特徴とするコンテンツ復号端末。
The content that is digital data includes the identification information for identifying the content and the decryption key acquired from the license server, the encrypted content being the encrypted data encrypted by the content distribution server according to claim 7 A content decryption terminal for decrypting the content based on license information,
Encrypted content acquisition means for acquiring the encrypted content from the content distribution server;
License information acquisition means for acquiring the license information from the license server;
The decryption device according to claim 4 or 5 , wherein the decryption device decrypts the encrypted content into the content based on a decryption key included in the identification information and the license information;
A content decoding terminal comprising:
JP2003016602A 2003-01-24 2003-01-24 ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL Expired - Fee Related JP4133364B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003016602A JP4133364B2 (en) 2003-01-24 2003-01-24 ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003016602A JP4133364B2 (en) 2003-01-24 2003-01-24 ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL

Publications (2)

Publication Number Publication Date
JP2004226849A JP2004226849A (en) 2004-08-12
JP4133364B2 true JP4133364B2 (en) 2008-08-13

Family

ID=32904007

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003016602A Expired - Fee Related JP4133364B2 (en) 2003-01-24 2003-01-24 ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL

Country Status (1)

Country Link
JP (1) JP4133364B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4598437B2 (en) * 2004-06-11 2010-12-15 日本放送協会 Decryption information generation device and program thereof, distribution content generation device and program thereof, and content decryption device and program thereof
JP4740574B2 (en) * 2004-10-21 2011-08-03 日本放送協会 License information generation device and program thereof, distribution content generation device and program thereof, content decryption device and program thereof, and content decryption method
JP4587399B2 (en) * 2006-08-22 2010-11-24 Kddi株式会社 Content delivery method and system

Also Published As

Publication number Publication date
JP2004226849A (en) 2004-08-12

Similar Documents

Publication Publication Date Title
US7200230B2 (en) System and method for controlling and enforcing access rights to encrypted media
US7343014B2 (en) Method for sharing the authorization to use specific resources
CN101431415B (en) Bidirectional authentication method
US7978848B2 (en) Content encryption schema for integrating digital rights management with encrypted multicast
US7779260B2 (en) Information processing apparatus and method
KR100917720B1 (en) Method for secure distribution of digital data representing a multimedia content
US20060080529A1 (en) Digital rights management conversion method and apparatus
JP3993385B2 (en) Content distribution system, copyright protection system, and content receiving terminal
KR100670017B1 (en) Method for broadcast encryption based on the combination
WO2020206014A1 (en) Digital rights management authorization token pairing
US8417937B2 (en) System and method for securely transfering content from set-top box to personal media player
JP4733497B2 (en) CONTENT DISTRIBUTION DEVICE, LICENSE ISSUING DEVICE, BILLING DEVICE AND CONTENT VIEWING TERMINAL, LICENSE REQUEST GENERATION PROGRAM, LICENSE GENERATION PROGRAM, AND BILLING PROGRAM
US20220171832A1 (en) Scalable key management for encrypting digital rights management authorization tokens
JP2002300158A (en) Right protection method in overall data distribution service
US9026781B2 (en) System and method for data transmission
JP4377619B2 (en) CONTENT DISTRIBUTION SERVER AND ITS PROGRAM, LICENSE ISSUING SERVER AND ITS PROGRAM, CONTENT DECRYPTION TERMINAL AND ITS PROGRAM, CONTENT DISTRIBUTION METHOD AND CONTENT DECRYPTION METHOD
JP4133364B2 (en) ENCRYPTION DEVICE AND ITS PROGRAM, DECRYPTION DEVICE AND ITS PROGRAM, CONTENT DISTRIBUTION SERVER, AND CONTENT DECRYPTION TERMINAL
JP4080283B2 (en) Content distribution system
JP4598437B2 (en) Decryption information generation device and program thereof, distribution content generation device and program thereof, and content decryption device and program thereof
JP4875481B2 (en) Encrypted information generating device and program thereof, secret key generating device and program thereof, distribution content generating device and program thereof, and content decrypting device and program thereof
JP2001147899A (en) System for distributing contents
EP2293211A1 (en) Digital rights management system with diversified content protection process
JP2009171016A (en) Encrypted information generation device, its program, content generation device for distribution, its program, and content decoding device, and its program
KR100850929B1 (en) Encryption/Decryption System of AD DRM License and Method Thereof
JP4559868B2 (en) Security module, content receiving apparatus, contract information generating apparatus, contract information verifying apparatus, and contract information verifying method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080122

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080324

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

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

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

Free format text: PAYMENT UNTIL: 20110606

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120606

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120606

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20130606

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees