JP2008172433A - コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法 - Google Patents

コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法 Download PDF

Info

Publication number
JP2008172433A
JP2008172433A JP2007002658A JP2007002658A JP2008172433A JP 2008172433 A JP2008172433 A JP 2008172433A JP 2007002658 A JP2007002658 A JP 2007002658A JP 2007002658 A JP2007002658 A JP 2007002658A JP 2008172433 A JP2008172433 A JP 2008172433A
Authority
JP
Japan
Prior art keywords
user
key
content
identification information
assigned
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.)
Granted
Application number
JP2007002658A
Other languages
English (en)
Other versions
JP4358239B2 (ja
Inventor
Tatsuyuki Matsushita
達之 松下
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2007002658A priority Critical patent/JP4358239B2/ja
Priority to EP07024310A priority patent/EP1944715A3/en
Priority to US11/970,666 priority patent/US7961887B2/en
Priority to CN200810002833.6A priority patent/CN101222321A/zh
Publication of JP2008172433A publication Critical patent/JP2008172433A/ja
Application granted granted Critical
Publication of JP4358239B2 publication Critical patent/JP4358239B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/045Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/083Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
    • H04L9/0833Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key
    • H04L9/0836Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP] involving conference or group key using tree structure or hierarchical structure
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0891Revocation or update of secret information, e.g. encryption key update or rekeying
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution

Abstract

【課題】少ない送信オーバヘッドで、より巧妙な不正復号器からも不正ユーザを特定することが確実に行えるコンテンツ提供システム及び追跡システムを提供する。
【解決手段】コンテンツ提供システムは、ユーザ識別情報のグループに対し、公開鍵で暗号化して得られる複数の暗号化セッション鍵と、該グループ内の任意のユーザ識別情報に割り当てられているセッション鍵に対応する第1のベクトルLi(i=0からk)と、該ユーザ識別情報uに関する第2のベクトルu(j=1からk)との内積が、zj v(kは正の整数、zjは複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vは「0」以上k以下の整数のうちのいずれか1つの整数)に等しくなるように設定された第1のベクトルと、を含むヘッダ情報を生成し、該ヘッダ情報を暗号化コンテンツとともに送信する。
【選択図】 図1

Description

本発明は、コンテンツ提供システムから複数のユーザシステムへ、暗号化コンテンツと、当該暗号化コンテンツを復号するためのヘッダ情報を送信するデータ通信システムに関する。
従来、放送型コンテンツ配信事業では、放送番組のコンテンツを暗号化し、得られた暗号化コンテンツをユーザに配信する。ユーザは、例えば配信者から貸与された正当な復号器により暗号化コンテンツを復号し、得られたコンテンツにより放送番組を視聴している。しかしながら、放送型コンテンツ配信事業に対しては、自己の正当な復号器の内部情報(復号鍵等)をコピーした海賊版復号器(不正復号器)を作成し、暗号化コンテンツを不正に復号可能とする不正ユーザが存在している。
一方、このような不正ユーザを特定し得る各種の不正ユーザ特定方法が知られている。係る不正ユーザ特定方法は、ユーザの復号鍵生成方法により三つのタイプに分類される。第1のタイプは、組み合わせ論的な構成に基づく方法であり、第2のタイプは、木構造に基づく方法であり、第3のタイプは、代数的な構成に基づく方法である。
第1のタイプでは、不正復号器の作成に関与しない正当なユーザを不正ユーザと誤って検出する確率を十分小さくするために送信オーバヘッドを非常に大きくしなければならない問題がある。
第2及び第3のタイプでは、この問題を解決し、効率的な送信オーバヘッドを達成している。
しかしながら、不正復号器は、複数の不正ユーザの結託により、複数の復号鍵または復号鍵と等価な機能をもつデータが格納されることがある。この不正復号器に対して、不正復号器をこじ開けずにその入出力のみを観測し、不正ユーザを特定するブラックボックス追跡が行なわれる場合がある。具体的には、ブラックボックス追跡を行う追跡者は、不正ユーザの候補(以下、容疑者という)を想定し、容疑者の復号鍵が不正復号器に保持されているか否かを、不正復号器への入出力を観測することのみにより検査する。
第2及び第3のタイプの不正ユーザ特定方法では、下記二つの問題のいずれかが未解決である。
問題1:ブラックボックス追跡の際に、各入力の意図(想定した容疑者)が不正復号器に知られてしまうため、巧妙な不正復号器が入力の意図を読み取って不正ユーザの特定を妨げるように動作した場合、ブラックボックス追跡が失敗する。この失敗は、不正ユーザを特定できないか、または無実のユーザに濡れ衣を着せてしまう問題につながる。
問題2:不正復号器が入力の意図を読み取ることは不可能であるが、不正ユーザを正しく特定する確率が送信オーバヘッドとトレードオフの関係にあり、送信オーバヘッドを効率的にすると不正ユーザを正しく特定する確率が非常に低くなるという問題、またはブラックボックス追跡に要する処理ステップ数が指数関数的であり、かかるブラックボックス追跡は、全ユーザ数をn、最大結託人数をkとしたとき、nCk=n!/{k!(n−k)!}通りの容疑者集合を検査する必要があるため、実用上不可能となる問題がある。
以上説明したように従来の不正ユーザ特定方法では、巧妙な不正復号器に対しては、不正ユーザを特定に失敗するという問題点がある。このような問題点を解決するために、非特許文献1では、不正ユーザ特定のためのブラックボックス追跡の際に、入力の意図を不正復号器に知られることが無く、巧妙な不正復号器に対しても、確実に追跡を実行し得る不正ユーザ特定方法が開示されている。
非特許文献1において開示されている不正ユーザ特定方法は、より効率的な送信オーバヘッドを達成しているが、過去の入力を記憶できる、より巧妙な不正復号器を対象とするものではない。不正復号器が過去の入力を記憶できる、より巧妙な不正復号器の場合、それを利用して現在の入力の意図が推測される可能性がある。すなわち、非特許文献1の不正ユーザ特定方法では、不正復号器が過去に与えられた入力を記憶しないという仮定を置く必要がある。例えば、不正復号器がソフトウェア(プログラム)により実装されている場合、プログラムのコピーを検査回数分作成しておき、各検査において異なる(コピーされた)プログラムを用い、1つのプログラムに与える入力を1回のみにすれば、不正復号器が過去の入力を記憶することはないため、上記仮定の下で不正ユーザの特定を行うことができる。
しかしながら、過去の入力を記憶し、それに基づいて不正ユーザの特定を妨げるように動作する、さらに巧妙な不正復号器に対してもブラックボックス追跡を行うことができることが望ましい。
過去の入力を記憶する不正復号器に対する不正ユーザ特定方法が非特許文献2に開示されているが、この方法は上記第1タイプであるため、送信オーバヘッドを非常に大きくしなければならないという問題点がある。このような不正復号器を対象とする不正ユーザ特定方法においても、送信オーバヘッドを削減することが望ましい。また、不正ユーザが特定された後、不正ユーザをシステムから完全に排除するために、復号鍵の更新を行えることが望ましい。
松下、今井:より強力な不正者に対する効率的なブラックボックス追跡のための階層的な鍵割り当て、電子情報通信学会 情報セキュリティ研究会、ISEC2006-52、pp.91-98、2006年7月。 A. Kiayias and M. Yung, "On Crafty Pirates and Foxy Tracers," Security and Privacy in Digital Rights Management: Revised Papers from the ACM CCS-8 Workshop DRM 2001, LNCS 2320, pp.22-39, Springer-Verlag, 2002.
以上説明したように従来の不正ユーザ特定方法では、不正ユーザを特定するために不正復号器に入力された入力データを記憶し、記憶した入力データに基づき不正ユーザの特定を妨げるように動作する巧妙な不正復号器からは、少ない送信オーバヘッドで不正ユーザを特定することができないという問題点があった。
そこで、本発明は上記問題点に鑑み、少ない送信オーバヘッドで、より巧妙な不正復号器からも不正ユーザを特定することが確実に行えるコンテンツ提供システム及び追跡システムを提供することを目的とする。
コンテンツ提供システムは、
異なる複数のセッション鍵s(j=1,2,…、n)を用いてコンテンツを暗号化し、複数の暗号化コンテンツを得るコンテンツ暗号化手段と、
前記複数のセッション鍵のそれぞれを、各ユーザシステム固有の復号鍵に対応する公開鍵で暗号化し、複数の暗号化セッション鍵を得るセッション鍵暗号化手段と、
前記複数のセッション鍵が割り当てられた、複数のユーザシステムを個別に識別するための複数のユーザ識別情報を含むグループに対し、
(a)前記複数の暗号化セッション鍵と、
(b)前記複数のセッション鍵のうち前記グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,Lk)と、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,uk)との内積が、zj v(ここで、kは予め定められた正の整数、zjは前記複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vは前記グループにグループ識別情報として割り当てられた「0」以上k以下の整数のうちのいずれか1つの整数)に等しくなるように設定された前記第1のベクトルと、
を含み、前記グループに属する各ユーザシステム固有の復号鍵を用いて各ユーザシステムに割り当てられた暗号化セッション鍵を復号可能にするヘッダ情報を生成するヘッダ情報生成手段と、
前記複数の暗号化コンテンツのうちの少なくとも1つ及び前記ヘッダ情報を前記複数のユーザシステムへ送信する送信手段と、
を含む。
本発明によれば、少ない送信オーバヘッドで、より巧妙な不正復号器からも不正ユーザを特定することが確実に行える。
以下、本発明の各実施形態について図面を参照しながら説明する。
(第1の実施形態)
図1は本発明の第1の実施形態に係るコンテンツ提供システム及びユーザシステム等が適用されたデータ通信システムの構成を示す模式図であり、図2及び図3は同実施形態におけるユーザ識別情報のサブグループを説明するための模式図であり、図4は同実施形態における追跡システムの構成を示す模式図である。
このデータ通信システムは、図1に示すように、暗号化装置10と電子透かし埋め込み装置101を含むコンテンツ提供システム1と、復号装置20を有するn個のユーザシステム2とがネットワーク3を介して接続されている。また、ネットワーク3には例えば追跡装置30が接続されている。
ここで、コンテンツ提供システム1は、コンテンツを暗号化してネットワーク3を介してブロードキャストあるいはマルチキャストするものである。
n個のユーザシステム2は、コンテンツ提供システム1によりブロードキャストあるいはマルチキャストされた暗号化コンテンツをネットワーク3を介して受信し復号するものである。
なお、図1では、1つのコンテンツ提供システム1のみ示しているが、コンテンツ提供システム1が複数存在しても構わない。
また、1つのノードが、コンテンツ提供システム1の機能とユーザシステム2の機能とを兼ね備えてもよい。また、全てのノードがコンテンツ提供システム1の機能とユーザシステム2の機能とを兼ね備えることによって、相互に暗号通信可能としてもよい。
電子透かし埋め込み装置101は、図1に示すように、コンテンツ提供システム1内にあってもよいし、暗号化装置10が電子透かし埋め込み機能を有していてもよい。電子透かしの埋め込まれたコンテンツをコンテンツ暗号化部14が暗号化するような構成であれば、電子透かし埋め込み機能はどこにあってもよい。電子透かしの埋め込まれたコンテンツが第三者装置からコンテンツ提供システムへ与える構成であってもよい。
ネットワーク3は、有線ネットワークでも、無線ネットワークでもよい。また、有線ネットワークと無線ネットワークを両方使用したものであってもよい。また、双方向ネットワークでも、単方向ネットワークでもよい。また、ネットワーク3は、オフラインであってもよい。つまりDVD等の媒体を用いて実現されていても構わない。
次に、電子透かし埋め込み装置101と暗号化装置10について説明する。
電子透かし埋め込み装置101は、ユーザ区分管理部12からの情報(電子透かし情報がいくつ必要かなど)に基づき、入力されたコンテンツに各電子透かし情報を埋め込み、異なる電子透かしの埋め込まれた複数の電子透かし入りコンテンツを出力する。電子透かし埋め込み装置101は、電子透かし情報を人間に知覚されない範囲で、入力されたコンテンツに埋め込む。一旦電子透かし情報の埋め込まれたコンテンツからは該電子透かし情報を除去または改ざんすることは非常に困難である。電子透かし埋め込み装置101は、例えば、参考文献1(I. Cox, J. Kilian, T. Leighton, and T. Shamoon, “A Secure, Robust Watermark for Multimedia,” Proc. Information Hiding, LNCS 1174, pp.185-206, Springer-Verlag, 1996.)に開示されているような公知の方法を用いて電子透かしの埋め込みを行う。
例えば、2つの異なる電子透かし情報A、Bを、入力されたコンテンツに埋め込む場合、電子透かし埋め込み装置101からは、電子透かし情報Aが埋め込まれた第1のコンテンツと電子透かし情報Bが埋め込まれた第2のコンテンツが出力される。なお、異なる3つ以上の電子透かし情報がそれぞれ埋め込まれた複数の(3つ以上の)コンテンツを出力するようにしてもよい。また、図15(a)に示すように、コンテンツの複数の箇所に電子透かし情報を埋め込み、電子透かし情報の埋め込まれたコンテンツの全体を出力してもよい。さらに、図15(b)に示すように、コンテンツの複数の箇所に電子透かし情報を埋め込み、コンテンツ全体のうち、電子透かし情報の埋め込まれた該コンテンツの一部分(図15(b)の点線部分)を出力し、電子透かし情報の埋め込まれていない部分の出力を省略してもよい。
暗号化装置10は、公開鍵格納部11、ユーザ区分管理部12、セッション鍵生成部13、コンテンツ暗号化部14、ヘッダ生成部15及びユーザ区分情報格納部16を備えている。
公開鍵格納部11は、公開鍵を格納するメモリであり、セッション鍵生成部13及びヘッダ生成部15から読出可能となっている。
ユーザ区分情報格納部16は、複数のユーザシステム2を個別に識別するための複数のユーザ識別情報のそれぞれに対し、複数のセッション鍵のうち、該ユーザ識別情報に対応するユーザシステムで復号可能なセッション鍵を示す情報や、無効化対象ユーザであるか否かを示す情報などを記憶するメモリである。本実施形態では、複数のユーザ識別情報を複数のユーザセグメントに分割し、該複数のユーザセグメントには、異なる複数のセッション鍵をそれぞれ対応付ける。複数のセッション鍵は、埋め込まれている電子透かし情報がそれぞれ異なる複数のコンテンツに、それぞれ対応する。
ユーザ区分管理部12は、上記ユーザセグメントに関する情報や無効化対象ユーザに関する情報を含むユーザ区分情報が外部から入力されると、該ユーザ区分情報をユーザ区分情報格納部16に記憶する。また、ユーザ区分管理部12は、ユーザ区分情報格納部16に格納されている情報を基に、ヘッダ生成部15、セッション鍵生成部13、及び電子透かし埋め込み装置101に対し、必要な情報を出力する。
セッション鍵生成部13は、公開鍵格納部11内の公開鍵をもとに複数のセッション鍵を生成する。
コンテンツ暗号化部14は、電子透かし埋め込み装置101より得られる、異なる複数の電子透かし情報がそれぞれ埋め込まれた複数のコンテンツを、セッション鍵生成部13により生成されたセッション鍵に基づいてそれぞれ暗号化し、複数の暗号化コンテンツを生成する。なお、各暗号化コンテンツは対応するセッション鍵に基づいて復号可能である。
ヘッダ生成部15は、公開鍵、セッション鍵(のもととなる情報)、(無効化対象ユーザがある場合には)無効化対象ユーザ情報や、その他の必要なパラメータ(後述する例では、パラメータp、q、k、T)等に基づいてヘッダ情報を生成する。
具体的には、ヘッダ生成部15は、暗号化セッション鍵及び2種類のヘッダ情報を生成する。暗号化セッション鍵は、セッション鍵を公開鍵で暗号化することにより、生成される。
第1のヘッダ情報は、対応付けられているセッション鍵がそれぞれ異なる複数のユーザセグメントに属するユーザシステムが混在するグループに対応する。すなわち、該グループには、異なる複数の電子透かし情報のうちの1つの電子透かし情報が埋め込まれたコンテンツが得られる(ユーザ識別情報をもつ)ユーザシステム、他の1つの電子透かし情報が埋め込まれたコンテンツが得られる(ユーザ識別情報をもつ)ユーザシステムが混在し、さらに他の電子透かし情報が埋め込まれたコンテンツが得られる(ユーザ識別情報をもつ)ユーザシステムが含まれている。
第1のヘッダ情報は、(a)各セッション鍵を公開鍵で暗号化して得られた複数の暗号化セッション鍵を含み、且つ(b)該グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,Lk)とを含む。
この第1のベクトルは、該第1のベクトルと、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,uk)との内積が、zj vに等しくなるように設定されている。ここで、予め定められた正の整数をk、複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値をzj、該グループにグループ識別情報として割り当てられた、「0」以上k以下の整数のうちのいずれか1つの整数をvとする。
特に、不正ユーザ識別情報の数に対し予め定められた最大値(最大結託人数)がk´であり、kとk´とがk=2k´−1を満たす場合、第1のベクトルと第2のベクトルとの内積
Figure 2008172433
が、zuv mod2k’に等しくなるように、該第1のベクトルが設定されている。
なお、暗号化セッション鍵は、各ユーザシステム固有の復号鍵に基づいて復号可能であり、該ユーザシステムが、どのユーザセグメントに属するか(どのセッション鍵が割り当てられているユーザセグメントに属するか)によって、復号できるセッション鍵は異なる。
第2のヘッダ情報は、ある1つのセッション鍵が割り当てられているユーザセグメントに属するユーザシステムのみを含むグループに対応する。すなわち、該グループに属するユーザシステムは、同一の電子透かし情報が埋め込まれたコンテンツを得る。第2のヘッダ情報は、該セッション鍵を公開鍵で暗号化して得られた暗号化セッション鍵を含む。なお、第2のヘッダ情報は、上述した値Liに基づく値を含まない。但し、第2のヘッダ情報は、上述した値Liに基づく値を含んでもよい。
なお、コンテンツ提供システム1は、ヘッダ情報及び暗号化コンテンツの通信インタフェース、コンテンツを蓄積する装置、コンテンツを入力する装置あるいは復号鍵生成装置(図示せず)など、種々の装置を必要に応じて備えるものとする。また、コンテンツ提供システム1は、ユーザシステムに各ヘッダ情報を送信するとき、データ量を低減させる観点から、各ヘッダ情報の共通部分を共有化して送信することが好ましい。但し、これに限らず、共通部分を共有化しなくてもよい。
ここで、復号鍵生成装置は、各ユーザシステム固有の復号鍵を生成するものであり、複数のユーザシステムを個別に識別するための複数のユーザ識別情報を複数のサブグループに分割し、木構造化する機能と、サブグループ毎に互いに異なる鍵生成多項式と共通の鍵生成多項式を割り当てる機能と、ユーザシステム毎のユーザ識別情報をこのユーザ識別情報が属するサブグループの鍵生成多項式に代入し、得られた値を当該ユーザシステム固有の復号鍵とする機能とをもっている。
詳しくは、ユーザの復号鍵は鍵生成多項式にユーザ識別情報、すなわち、ユーザID(一定の範囲内から選択された正整数(例えば、1からnまでの連番)とする)を代入して生成する。その際、図13に示すように、ユーザ集合Uを複数のサブグループに分割し、各サブグループを木構造のリーフに割り当てる。図13は、全リーフ数が8である完全二分木の例である。以下、全リーフ数をL、木の深さをD、各サブグループがどのリーフに割り当てられているかの情報や各ノードIDを含めた木構造をTと表す。
図13に示すように、木構造Tでは、各ノードにID(ここでは、「0」「1」「2」…「13」)が割り振られている。あるノードvを祖先に持つリーフに割り振られたユーザ集合をUvとする。なお、祖先の語は、ルートのノードに限らず、親ノード、又は親の親ノード、又は親の親の親ノード…を意味する。図13では、例えば、U8=U0+U1である。ここで、+は和集合を表す。図13において、全ユーザ集合UをサブグループU0、…7に分割する。
図2は、サブグループU1、2、3の一例である。図3に示すように、ユーザ集合を複数のサブグループに分割し、各サブグループへの鍵生成多項式の割り当て方を以下のようにする。
例えばサブグループU1に対しては、
1(x)、B(x)を割り当てる。
サブグループU2に対しては、
2(x)、B(x)を割り当てる。
サブグループU3に対しては、
3(x)、B(x)を割り当てる。
以下同様にして、サブグループUに対しては、Ai(x)、B(x)を割り当てる。
ここで、Ai(x)はサブグループU(言い換えるとノードi)に固有な鍵生成多項式(個別鍵生成多項式)であり、B(x)は各サブグループ(言い換えると各ノード)に共通の鍵生成多項式(共通鍵生成多項式)である。なお、上記割り当て方は一例であり、例えば、鍵生成多項式Ai(x)をサブグループ番号iに対応させずランダムかつユニークに割り当てる割り当て方も可能であるし、どのサブグループにも割り当てられない鍵生成多項式Aj(x)が存在してもよい。
このように、それぞれのサブグループに対し異なる鍵生成多項式とそれぞれのサブグループに対し共通の鍵生成多項式を割り当て、当該ユーザIDの属するサブグループに割り当てられた鍵生成多項式を用いて当該ユーザIDの復号鍵を生成するようにする。ここで、当該ユーザIDの属するサブグループ数は(ルートを除いて)Dであることに注意する。例えば、図13において、リーフ0に割り当てられたユーザは、サブグループU8、U12にも属しており、それぞれのサブグループに割り当てられる鍵生成多項式を用いて当該ユーザIDの復号鍵が生成される。
これにより、従来のブラックボックス追跡方法では、鍵生成多項式Ai(x)、Bi(x)の両方ともノードに対し異なる鍵生成多項式であったのに対して、後述するように、本発明では、一方の鍵生成多項式B(x)をノードに対し共通としても、巧妙な不正復号器に対するブラックボックス追跡が可能となる鍵生成多項式を導入することにより、復号器が保持すべき復号鍵データサイズを半分弱程度削減可能となる。
なお、ユーザシステム2に割り当てられたユーザIDを、当該ユーザIDの属するサブグループに割り当てられた鍵生成多項式に代入して得られる復号鍵は、予めコンテンツ提供システム1または信頼できる第三者からユーザシステム2へ与えられて保持しておくものとする。
なお、図13、図2、及び図3に例示したグルーピングの方法は一例であり、この他にも種々のグルーピングの仕方が可能である。
また、上記では、ユーザIDやノードIDを一定の範囲内から選択された正整数(例えば、1からnまでの連番)としているが、その代わりに、ユーザIDは特に正整数とはせずに(例えば、英数字等でもよい)、英数字等のユーザIDに対して固有に一定の範囲内から選択された正整数を割り当て、ユーザIDに固有に割り当てられた正整数及び該当する鍵生成多項式をもとに復号鍵を計算する構成も可能である。ノードIDについても同様である。
次に、ユーザシステム2に搭載される復号装置20を説明する。
復号装置20は、図1に示すように、ユーザ情報格納部21、セッション鍵復号部22及びコンテンツ復号部23を備えている。
ユーザ情報格納部21は、復号に必要なパラメータ(後述する例では、パラメータp、q、k)と、自システム2が属するサブグループIDと、自システム2に割り当てられたユーザIDと、該ユーザIDに対応する復号鍵とを格納するメモリであり、セッション鍵復号部22から読出可能となっている。なお、復号鍵は、該ユーザIDが属するサブグループに割り当てられた鍵生成多項式に該ユーザIDを代入することによって得られる値である。
セッション鍵復号部22は、コンテンツ提供システム1から暗号化コンテンツとヘッダ情報とを受信したとき、ユーザ情報格納部21内の復号鍵に基づいて、ヘッダ情報からセッション鍵を取得(復号)する。
コンテンツ復号部23は、セッション鍵復号部22により取得(復号)したセッション鍵に基づいて、コンテンツ提供システム1から受信した暗号化コンテンツを復号する。
なお、ユーザシステム2は、コンテンツ提供システム1から暗号化コンテンツとヘッダ情報とを受信する通信インタフェース、コンテンツを蓄積する装置あるいはコンテンツを表示等する装置など、種々の装置を必要に応じて備えるものとする。
次に、図4を用いて追跡装置30を説明する。
追跡装置30は、公開鍵格納部31、ヘッダ生成部32、電子透かし埋め込み部34、コンテンツ暗号化部35及び制御部33を備えている。なお、電子透かし埋め込み部34は、必ずしも追跡装置30の中に含まれている必要はなく、コンテンツ暗号化部35が、電子透かし情報の埋め込まれているコンテンツを暗号化するような構成であれば、電子透かし埋め込み機能は、どこにあってもよい。追跡装置30の外部にある装置から、電子透かしの埋め込まれたコンテンツがコンテンツ暗号化部35に入力される構成であってもよい。
コンテンツ暗号化部35には、異なる複数の電子透かし情報がそれぞれ埋め込まれた複数種類のコンテンツが入力される。
コンテンツ暗号化部35は、上記複数種類のコンテンツのそれぞれを、該コンテンツに対応するセッション鍵を用いてそれぞれ暗号化して、複数の暗号化コンテンツを生成する機能と、該複数の暗号化コンテンツを検査対象に入力する機能とをもっている。前述のコンテンツ提供システムと同様、上記複数種類のコンテンツには、異なる複数のセッション鍵がそれぞれ対応付けられている。また、複数のセッション鍵は、複数のユーザセグメントにそれぞれ割り当てられている。
公開鍵格納部31は、公開鍵を格納するメモリであり、ヘッダ生成部32から読出可能となっている。
ヘッダ生成部32は、制御部33から指示された、各ユーザ識別情報(各ユーザシステム)が属するユーザセグメントに従い、公開鍵やその他の必要なパラメータ(後述する例では、パラメータp、q、k、T等をもとにしてヘッダ情報を生成する機能と、ヘッダ情報を検査対象に入力する機能とをもっている。なお、セッション鍵(のもととなる情報)は、制御部33が生成してヘッダ生成部32に指示してもよいし、ヘッダ生成部32が生成して制御部33に通知してもよい。また、ヘッダ情報は、前述した値Liに基づく値を含むように生成される。
制御部(特定手段)33は、追跡装置30全体の制御を司るものであり、ヘッダ生成部32により、例えば複数のユーザセグメントのうちのある1つのユーザセグメントについて、該ユーザセグメントに属するユーザシステムの数を「0」から1つずつ増やしながら生成された複数のヘッダ情報と、各ヘッダ情報を入力したときに取得した復号結果との関係に基づいて、前記検査対象のユーザシステムの作出のもととなった1又は複数のユーザシステムの不正ユーザ(ユーザ識別情報)を特定する機能をもっている。
例えば、制御部33は、電子透かし情報Aが埋め込まれた第1のコンテンツを復号可能なユーザ識別情報(ユーザシステム)の集合(第1のユーザセグメントχ1)や、電子透かし情報Bが埋め込まれた第2のコンテンツを復号可能なユーザ識別情報(ユーザシステム)の集合(第2のユーザセグメントχ2)をヘッダ生成部32に指示する機能と、検査対象復号装置20χで復号されたコンテンツを入力し、それが第1のコンテンツであるか第2のコンテンツであるかを調べる機能と、第1のユーザセグメントχ1に属するユーザ識別情報を1つずつ増やしながら、同様の処理を繰り返し行い、それらの判定結果を総合して、不正ユーザのユーザ識別情報を特定する機能とをもっている。
制御部33は、検査対象復号装置20χに入力した複数種類の暗号化コンテンツのうちどの暗号化コンテンツが復号されたか(例えば電子透かし情報A及びBのうちどちらの電子透かし情報が埋め込まれているコンテンツであるか)を基に、不正ユーザのユーザ識別情報を特定する。しかし、この場合に限らず、セッション鍵自体がコンテンツである場合、セッション鍵のみを検査対象復号装置20χに入力し、検査対象復号装置20χによるセッション鍵の復号結果(どの透かし情報が埋め込まれているか)を判断してもよい。
追跡装置30は、例えば、コンテンツ提供システム1に含まれていてもよいし、図1に示したように、コンテンツ提供システム1とは独立した装置で、ネットワーク3に接続する機能を備えてもよい。追跡装置30は、必ずしもネットワーク3に接続する機能を備える必要はない。
次に、以上のように構成されたネットワーク通信システムの動作を説明する。図5は同システムの全体動作を説明するためのフローチャートである。
各ユーザシステム2には、それぞれ固有のユーザ識別情報(ユーザID)が割り当てられているとする。
コンテンツ提供システム1は、複数のセッション鍵s1,s2、…sjを生成し(ステップST1)、電子透かし情報i(i=1、2、…、j)が埋め込まれているコンテンツを得るユーザセグメントχiに応じてセッション鍵si(i=1、2、…、j)を暗号化し、ヘッダ情報H(χ)を生成する(ステップST2)。
次に、コンテンツ提供システム1は、セッション鍵siで、電子透かし情報iが埋め込まれたコンテンツを暗号化し(ステップST3)、得られた暗号化コンテンツに、上記ヘッダ情報を付加してブロードキャストあるいはマルチキャストする(ステップST4)。
なお、ステップST2、ST3は、上記とは逆の順序で行ってもよいし、同時に行ってもよい。また、セッション鍵をその都度変更しない場合は、ステップST1が省かれることもある(従前のセッション鍵を使用する)。
各々のユーザシステム2は、ヘッダ情報/暗号化コンテンツを受信すると、自己のユーザID及びサブグループIDに基づき、電子透かし情報iが埋め込まれたコンテンツを得るユーザセグメントχiとの関係に応じて、ヘッダ情報を復号処理する(ステップST5)。すなわち、ユーザシステム2は、電子透かし情報iが埋め込まれたコンテンツを得るユーザセグメントχiに属していれば、ステップST5の復号処理において、セッション鍵siを取得し(ステップST6)、該セッション鍵siで暗号化コンテンツを復号する(ステップST7)。
また、詳しくは後述するように、コンテンツ提供システム1は、電子透かし情報iが埋め込まれたコンテンツを得るユーザセグメントχiに応じてヘッダ情報を生成するので、どのユーザがどの電子透かし情報が埋め込まれたコンテンツを得るかを柔軟に制御できる。
次に、予め実行される鍵生成フェーズ、ステップST2の暗号化フェーズ、ステップST5〜ST6の復号フェーズについて、詳細に説明する。
始めにパラメータを定義する。
全ユーザ数をnとし、最大結託人数をkとする。
p、qを素数とし、qはp−1を割り切り、かつ、qはn+2k−1以上であるとする。
Zq={0、1、…、q−1}とする。
Zp={1、…、p−1}とする。
Gqを、Zpの部分群であり、かつ、位数がqである乗法群とし、gをGqの生成元とする。
全ユーザのユーザID(ユーザ識別情報)の集合(以下、ユーザ集合という)を、U(U⊆Zq−{0})とする。なお、Zq−{0}は、Zqから{0}を取り除いたものを意味する。
p、q、gの値は公開されている。
以下、特に断りの無い限り、計算はZp上で行われるとする。なお、Gqとして、上記の例に限らず、例えば、楕円曲線上の点から成る加法群を用いてもよい。これは以下の各実施形態でも同様である。
(鍵生成フェーズ)
本実施形態では、複数のユーザシステムを個別に識別するための複数のユーザIDを含むユーザ集合U(ユーザグループ)を、複数のサブグループに分割する。そして、各サブグループをリーフ(leaf;葉)に割り当てた二分木構造を用いる。具体的には、二分木構造のルート(root;根)から複数のノード(node;節)を介して複数のリーフに至るまでの各ノードにそれぞれ鍵生成多項式を割り当てる。これにより、鍵生成多項式をマルチレベルに階層化した例である。なお、以下の例では、二分木構造を用いた例を説明しているが、これに限らず、分岐数はいくつでもよいし、1つの木構造の中で分岐数が異なるノードが存在してもよいし、また、ルートからリーフへ至るノード数(レベル数)が全てのリーフについて同じである必要はなく、異なるレベルに位置するリーフが存在してもよい。
ここでは、公開鍵及び各ユーザIDに対応するユーザシステムの復号鍵の生成処理について説明する。なお、図14に示すフローチャートには、各ユーザIDに対応するユーザシステムの復号鍵の生成処理を示している。
コンテンツ提供システム1は、ユーザ集合Uを、共通要素を持たないL個以下の部分集合(サブグループ)に分割する(ST101)。簡単のため、サブグループ数をLとし、Lは2のべき乗で表される数とする。コンテンツ提供システム1は、全リーフ数がL、木の深さがD=log2Lである完全二分木を生成し、L個のサブグループを異なるリーフに割り当てる(ST102)。以下、各サブグループがどのリーフに割り当てられているかの情報や各ノードIDを含めた木構造をTと表す。Tは公開されている。
一方、公開鍵のもととなるパラメータa0、…、a2k-1、b0、…、b2k-1をZqからランダムに選択する。また、Nに属する各要素iについて、ci、λiをZqからランダムに選択する。ここで、Nの定義は式(1)の下に記載されている。
次に、コンテンツ提供システム1は、公開鍵eを計算する。公開鍵eは、式(1)のようになる。
Figure 2008172433
木構造Tにおいて、ルートを除いたノード及びリーフのIDの集合をNとする。簡単のため、全リーフ数がLである完全二分木におけるNをN={0、…、2L−3}とする。図13の例では、N={0、…13}である。
木構造Tのノード・リーフ(v)に、ルート・ノード・リーフでそれぞれ異なる個別鍵生成多項式Av(x)と、ルート・ノード・リーフで共通の共通鍵生成多項式B(x)を割り当てる(ST103)。なお、ルート・ノード・リーフで共通の共通鍵生成多項式B(x)は、あえて、各ルート・ノード・リーフへ割り当てなくてもよい。
さらに、各サブグループに、当該サブグループに割り当てられたリーフ及びその祖先ノードに割り当てられた個別鍵生成多項式を割り当てる(ST104)。
あるノードvを祖先に持つリーフに割り振られたユーザ集合をUvとする。図13では、例えば、U8=U0+U1である。ここで、+は和集合を表す。
最後にコンテンツ提供システム1は、ノードvを祖先ノードにもつリーフに割り振られたユーザ集合(部分集合)Uvに属するユーザID=uの復号鍵を、鍵生成多項式Av(x)、B(x)にx=uを代入して算出する(ST105)。ここで、鍵生成多項式Av(x)、B(x)は、ユーザuの属する部分集合Uvに割り当てられ、式(2)のように表される。ここで、λvは、ノードvに割り当てられた、ノードv固有の定数値である。
Figure 2008172433
例えば、木構造上のあるノードiを祖先に持つリーフに割り振られたユーザ集合をUi、当該ノードiに割り当てられている個別鍵生成多項式をAi(x)とすると、当該ユーザ集合Uiの復号鍵生成多項式は、例えば
i(x)+λiB(x)=a0+cix+a22+…+a2k-12k-1
となる。また、木構造上のノードjとは異なるノードiを祖先に持つリーフに割り振られたユーザ集合をUj、当該ノードjに割り当てられている個別鍵生成多項式をAj(x)とすると、当該ユーザ集合Ujの復号鍵生成多項式は、例えば
j(x)+λjB(x)=a0+cjx+a22+…+a2k-12k-1
となる。
このように、ノードiを祖先にもつリーフに割り振られたユーザ集合Uiの復号鍵生成多項式、ノードjを祖先にもつリーフに割り振られたユーザ集合Ujの復号鍵生成多項式は、木構造上のルート・ノード・リーフに固有の1つまたは複数の係数(ここでは、例えば、ci、cj)を除き、同じ次数の係数は、i、jによらず一定である。
すなわち、ノードiに割り当てられている個別鍵生成多項式Ai(x)と、ルート・ノード・リーフに共通の共通鍵生成多項式B(x)との同じ次数の係数の線形和のうちの少なくとも1つは、木構造上のルート・ノード・リーフに固有の係数であり、それ以外は、[Ai(x)のm次係数]+[λiB(x)のm次係数]は、i、jによらず一定である。
ノードiを祖先にもつリーフに割り振られたユーザ集合Uiに属するユーザID=uの復号鍵は、上記復号鍵生成多項式Ai(x)+λiB(x)の「x」に「u」を代入することにより得られる。
ここで、上記の例では、最大結託人数をkと設定した場合、安全性の観点から鍵生成多項式の次数を2k−1以上にすることが望ましいため、次数を2k−1としているが、これに限らず、鍵生成多項式の次数として任意の値を設定することが可能である。また、ノードiに割り当てる鍵生成多項式Ai(x)とノードjに割り当てる鍵生成多項式Aj(x)の次数が異なっていても構わないし、鍵生成多項式Ai(x)とB(x)の次数が異なっていても構わない。これは、後述する他の実施形態でも同様である。
ユーザID=uのユーザの復号鍵をduとすると、duは式(3)で表される。
Figure 2008172433
図13において、例えば、ユーザuがリーフ0に割り当てられているとすると、duは式(4)で表される。
Figure 2008172433
なお、上記鍵生成フェーズにおける処理は、図12に示すように、コンテンツ提供システム1以外の信頼できる第三者装置10bが行ってもよい。また、式(4)では、リーフ0のサブグループに、ルートのノード(ノードv=「14」)に割り当てられた個別鍵生成多項式を割り当てていないが、リーフ0のサブグループに、ルートに割り当てられた個別鍵生成多項式を割り当ててもよい。この場合、ユーザID=uのユーザの復号鍵を示す式(4)には、当該ルートの鍵生成多項式を用いた復号鍵(u,14,A14(u),B(u))が追加される。また、個別鍵生成多項式が割り当てられないノードがあってもよく、この場合、公開鍵eの計算において、対応するci、λiの生成は不要となる。これらは以下の各実施形態でも同様である。
(暗号化フェーズ)
コンテンツ提供システム1のセッション鍵生成部13は、ユーザ区分管理部12からの情報(電子透かし情報がいくつ必要かなど)に基づき、セッション鍵のもととなる情報sをGqから、ziをZqからランダムに選択する。電子透かし情報iが埋め込まれているコンテンツを得るユーザ識別情報(ユーザシステム)の集合をユーザセグメントχiと定義する。
コンテンツ提供システム1の操作者(又は外部の第三者)は、ユーザ集合Uを複数のユーザセグメントに分け、ユーザセグメントに関する情報をユーザ区分管理部12へ入力する。(入力された情報はユーザ区分情報管理部に記憶される。)セッション鍵生成部13は、ユーザ区分管理部12からの入力に基づき、各ユーザセグメントに割り当てられる異なる複数のセッション鍵のもととなる情報を生成し、それらの情報をヘッダ生成部15へ与える。ヘッダ生成部15は、各ユーザセグメントに異なる複数のセッション鍵をそれぞれ割り当てる。例えば、第1のユーザセグメントχには、セッション鍵sを割り当て、第2のユーザセグメントχにはセッション鍵sを割り当てる。この割り当ては、セッション鍵生成部13が行ってもよい。簡単のため、以下の説明では、上記処理の主体者を全てヘッダ生成部15として記述する。
次に、ヘッダ生成部15は、図16に示すように、ユーザ集合Uから複数のユーザセグメントχ、χ、…χを決定し、以下の2つの条件を満たす、少なくとも1つのリーフIDを含めたlog2L+1個のノードIDを選択する。
なお、以下の説明において、log2Lをβと表記することもある。
条件1:選択されるノードをv0、…、vβとするとき、和集合Uv0+…+Uvβがユーザ集合Uに等しい。
条件2:式E1または式E2を満たす。
Figure 2008172433
図13では、3つのユーザセグメント(m=3)χ、χ、χを決定し、4つのノードID(「0」、「1」、「9」、「13」)が選択されている。
次に、ヘッダ生成部15は、乱数r0、r1を選択し、0≦j≦log2L(=β)について、すなわち、選択された各ノードについて(各ノードに属する1又は複数のサブグループからなるグループについて)、以下の処理を繰り返し、選択された各ノードに対し、ヘッダ情報Hv0、…、Hvβを計算する(図6のST2−1〜ST2−8)。
ヘッダ生成部15は、集合χとUvjとの積集合がUvjであるか否かを判定する(ST2−4)。
ここで、χとUvjとの積集合がUvjである場合を述べる。これは、Uvjに属するユーザ全員が、1つの電子透かし情報iが埋め込まれたコンテンツを得る場合であり、例えば、図2のU1が対応する。ヘッダ生成部15は、次式(5)に従いHvjを計算する(ST2−5)。
Figure 2008172433
例えば、ステップST2−4及びステップST2−6の判定のみ先に行ってもよい。ステップST2−4の結果がそれ以外となる場合(ST2−4;NO)が存在しないと判明している場合、rにr0、r1のどちらを代入してもよい。そうでない場合、rにr0を代入する。
一方、ステップST2−4の結果がそれ以外となる場合を述べる(ST2−4;NO)。これは、Uvjに属するユーザの少なくとも1人は集合χに属さず、かつ少なくとも1人は集合χに属する場合であり、例えば、図2のU2に対応する。
ヘッダ生成部15は、ユーザ集合Uvjに属するユーザIDのグループからユーザ集合Vvjに属するユーザIDを取り除いた集合をUvj−Vvj={α1、…、αm}とする。
ここで、Vvjについて説明する。選択された各ノードvjについて、全てのUvjがそれぞれ互いに共通要素を持たない場合、定義式(E3)から、Uvj−Vvj=Uvjであるため、ユーザ集合Uvjに属するユーザIDのグループを{α1、…、αm}とすることと等価である。一方、図13に示したように、U1のうちk人がχ1に属し、残りのk人がχ2に属する場合、例えば、ノード0、1、9、13を選択することができるが、これに代えてノード0、8、9、13を選択することも可能である。後者の場合、U0とU8は共通要素を持つため、α1、…、αmを設定する際には、Uvj−Vvj={α1、…、αm}とする。例えば、U8−V8=U8−(U0+U9+U13)=U1となる。このように、記号Vvjはある二つのUvjが共通要素を持つ場合を扱うために定義している。
次に、ヘッダ生成部15は、2k−m>0ならば、αm+1、…、α2kをZq−(U+{0})からランダムに選択する。なお、Zq−(U+{0})は、ZqからUと{0}の和集合を取り除いたものを意味する。
ヘッダ生成部15は、1≦t≦2kについて、式(8a)を満たすZqの要素L0、…、L2k-1を求める。なお、次式(8a)においてαt∈χiに満たす要素αtの数Mが2k未満の場合、式(8b)に示すように、条件式の数が2k(要素Liの数)となるように式(8a)に条件式を追加してもよいし、式(8c)に示すように、条件式の数を減らしてもよい。また、第2の実施形態において説明するように、条件式の数は2kより大きくすることも可能である。
Figure 2008172433
次に、ヘッダ生成部15は、rにr1を代入し、式(9)に従いHvjを計算する(ST2−6)。
Figure 2008172433
式(8a)(8b)(8c)に示すように、ユーザセグメントχに関する値{L,…,L2k-1}は、これを第1ベクトルとし、当該ユーザセグメントχに属するユーザID(x)を2k−1次多項式の変数とし、これを第2ベクトル(1,x,x ,…,x 2k-1)とした場合、当該第1ベクトルと当該第2ベクトルとの内積が、ユーザIDに該ユーザIDが属するグループ(選択されたノード)のグループ識別情報(ノードID)vjに基づく値 vj mod 2kをべき乗した値に、ユーザセグメント毎に異なる定数ziを乗じた値に等しいという、下記式の関係を満たす第1ベクトルである。
(L,L,L,…,L2k-1)・(1,x,x ,…,x 2k-1
=z vj mod 2k mod q
但し、xはユーザセグメントχに属するユーザIDである。
なお、上述の例では、m≦2kを想定しているが、鍵生成多項式の次数を増やすことにより、m≦(鍵生成多項式の次数+1)の範囲までmの値を許容できる。
また、上述の例では、ユーザIDに該ユーザIDが属するグループ(選択されたノード)のグループ識別情報(ノードID)vjに基づく値としてvj mod 2kを用いているが、これに限らず、vjを0以上鍵生成多項式の次数以下に一意に写像する関数にvjを代入した値を用いることができる。
また、上述の例では、ステップST2−4の結果がそれ以外となる場合(ST2−4;NO)が2回以上発生した場合でもr=rとしているが、これに限らず、rに代入される乱数を3つ以上用意し、ステップST2−4の結果がそれ以外となる場合が発生する度に、rに異なる乱数を代入してもよい。また、上述の2つの条件(条件1、2)に加えて、条件2を満たすノードは高々1つ選択されるという条件を導入し、ノードを選択してもよい。この場合、ステップST2−4の結果がそれ以外となる場合が発生するのは高々1回となる。
また、上述の例では、ステップST2−4の結果がそれ以外となる場合(ST2−4;NO)に、式(9)に従いHvjを計算している(ST2−6)が、これに限らず、χとUvjとの積集合がUvjである場合(ST2−4;YES)であっても、Uvjの要素数が2k以下(後述する第2の実施形態においては2(d+1)k以下)であれば、式(9)に従いHvjを計算してもよい。上述のこれらは全て、後述する他の実施形態においても同様である。
以上の繰り返し処理により得られたHv0、…、HvβをヘッダH(χ)とする(ST2−9)。ここで、ヘッダは公開鍵eを用いて計算できるので、誰でもコンテンツ提供システム1を運営することができる。
また、以上の繰り返し処理により得られたHv0、…、Hvβを構成する各要素の中での同一要素を1つにまとめ、ヘッダH(χ)内にて共有化することにより、送信オーバヘッドをより削減することができる。これは以下の各実施形態でも同様である。
上述の例では、log2L+1個のノードを選択しているが、これに限らず、選択するノードの数は、これより多くてもよいし、少なくてもよい。すなわち、βをlog2L以外の値としてもよい。また、上述の例では少なくとも1つのリーフIDを選択しているが、上述の2つの条件(条件1,2)が満たされるならば、リーフを選択しなくてもよい。これらは以下の各の実施形態においても同様である。
上述の例では、コンテンツの復号を禁止されたユーザ(復号鍵を無効化されたユーザ)がいない場合について説明したが、参考許文献2(松下、著作権保護のためのブラックボックス不正者追跡方式に関する研究、東京大学学位論文、2006年3月)において開示された復号鍵無効化方法を用いることにより、特定のユーザの復号鍵を無効化することも可能である。これは以下の各実施形態でも同様である。
コンテンツ暗号化部14は、セッション鍵siを用いて、電子透かし情報iが埋め込まれたコンテンツを暗号化し、ブロードキャストまたはマルチキャストする。
(復号フェーズ)
ノードv以下のリーフに割り当てられたサブグループからなるユーザ識別情報のグループUvjに属するユーザuを考える。ユーザID=uのユーザシステム2は、図8に示すように、ヘッダH(χ)を受信した場合(ST5−1)、Hvjを用いて式(10)を計算する。
Figure 2008172433
ここで、ヘッダ情報からセッション鍵を復号した結果について簡単に説明する。
ユーザシステム2のセッション鍵復号部22における復号結果は、ユーザセグメントχiとUvjの積集合がUvjであるか否かによって場合分けされる(ST5−4)。なお、ユーザシステム2のセッション鍵復号部22がこれを判定することはなく、どの場合においても復号手順は共通であり、Hvjを用いて式(10)を計算する。
まず、χiとUvjの積集合がUvjである場合(ST5−2;YES)を述べる。これは、Uvjに属するユーザ全員が同じ電子透かし情報iが埋め込まれたコンテンツを得る場合である。例えば、図2のUが対応する。セッション鍵復号部22は、式(10)のように計算し(ST5−5)、該電子透かし情報iに対応するセッション鍵siを得る(ST−8)。そして、このセッション鍵siを用いて、Uvjに属するユーザ全員が、該セッション鍵siで暗号化されている、電子透かし情報iが埋め込まれたコンテンツを得る(ST−9)。
次に、χiとUvjの積集合がUvjである場合(ST5−4;NO)を述べる。これは、Uvjに属するユーザの少なくとも1人はユーザセグメントχに属さず、かつ少なくとも1人はユーザセグメントχに属する場合であり、例えば、図2のU2が対応する。この場合においても、セッション鍵siは式(11)が成立することから、セッション鍵復号部22は、式(10)のように計算する(ST5−3)。その結果、各ユーザセグメントχiに属するユーザシステムでは、該ユーザセグメントχiに対応するセッション鍵siを得(ST8)、このセッション鍵siを用いて、該セッション鍵siで暗号化されている、電子透かし情報iが埋め込まれているコンテンツを得る(ST−9)。
Figure 2008172433
(追跡フェーズ)
次に、追跡アルゴリズムの手順例を示すが、その前に追跡装置30とその追跡対象となる不正ユーザについて概略を述べる。追跡装置30は、海賊版復号器(不正復号器)が押収された場合に、ブラックボックス追跡により、該海賊版復号器の不正作出のもととなった不正ユーザ(のユーザID)を特定するためのものである。
正当な復号装置をもとにして海賊版復号器が作出される場合、1台の復号装置のみをもとにして作出される場合と、複数台の復号装置をもとにして作出される場合とがある。後者の場合の復号装置の不正ユーザを結託者と呼ぶ。
1台の復号装置のみをもとにして作出された海賊版復号器は、当該復号装置と同じ復号鍵が使用可能になる。複数台の復号装置をもとにして作出された海賊版復号器は、当該複数の復号装置と同じ復号鍵がいずれも使用可能になる。後者の場合、結託者に対する全ての復号鍵が無効化されない限り、セッション鍵を得ることが可能になる。
この追跡装置30は、複数の不正ユーザが結託した場合に対しても、従来のnCk通りの検査と比べ、迅速に検査を実行でき、1以上の不正ユーザを特定するものである。
(手順例)
具体的な追跡アルゴリズムの手順については様々なバリエーションが可能であり、以下に示すものに限定されるものではない。図9は追跡装置による追跡フェーズの動作を説明するためのフローチャートである。
海賊版復号器Dが押収されたとき、以下の処理により不正ユーザを特定する。
なお、木構造Tにおいて、各リーフには2k人のユーザからなるサブグループが割り当てられている。各リーフIDを、一番左のリーフから1、…、tとし、サブグループU1、…、Utの要素(ユーザID)は、式(13)のようにラベル付けされているとする。
Figure 2008172433
ここで、各サブグループU1、…、Utの要素数(各リーフに属するユーザ数)は全て等しく2kでなくてもよい。例えば、サブグループU1の要素数とサブグループU2の要素数が異なっていてもよい。これは以下の各実施形態でも同様である。
追跡装置30は、j=1、…、n(n:ユーザ総数、j:ユーザ番号)について以下の処理を実行する(ST11〜ST21)。制御部33は、電子透かし情報Aが埋め込まれているコンテンツを得た回数Cj=0、電子透かし情報Aが埋め込まれている第1のコンテンツを得るユーザの集合をユーザセグメントχAとする。また、電子透かし情報Aとは異なる電子透かし情報Bが埋め込まれている第2のコンテンツを得るユーザの集合をユーザセグメントχBとする。同じユーザセグメントχA及びユーザセグメントχBに対する検査回数zを初期値「1」に設定し、以下の処理をm回(検査回数zがmになるまで)繰り返す(ST12)。なお、電子透かし情報Aが埋め込まれている第1のコンテンツをセッション鍵sAで暗号化し、電子透かし情報Bが埋め込まれている第2のコンテンツをセッション鍵sBで暗号化するものとする。
制御部33は、ユーザセグメントχBに属するユーザIDを{u1、…、uj}とし、それ以外のユーザIDをユーザセグメントχBとする(ST13)。従って、初期のユーザセグメントχBに属するユーザIDは{u1}、初期のユーザセグメントχAに属するユーザIDは{u2、…、un}となる。また、制御部33は、ヘッダ生成部32を制御し、暗号化されるセッション鍵の数を「2」として、つまりsAとsBをセッション鍵として、ヘッダH(χ)を生成させる(ST14)。なお、ヘッダ生成方法は暗号化フェーズに示した方法と同様であり、乱数は毎回ランダムに選択される。
ヘッダ生成部32が、ヘッダH(χ)と、暗号化コンテンツ(sAを用いて透かし情報Aが埋め込まれている第1のコンテンツを暗号化したものと、sBを用いて透かし情報Bが埋め込まれている第2のコンテンツを暗号化したもの)を不正復号器Dに入力すると(ST15)、制御部33は、不正復号器Dの出力を観察する。
このとき、制御部33は、不正復号器Dが第1のコンテンツを出力したのか、第2のコンテンツを出力したのか検出し(ST16)、第1のコンテンツを出力した場合(ST16;YES)、Cjを「1」だけインクリメントする(ST17)。第2のコンテンツを出力した場合(ST16;NO)、Cj の値を変化させない。
なお、セッション鍵自体がコンテンツである場合、つまりセッション鍵sAに電子透かし情報Aが埋め込まれ、セッション鍵sBに電子透かし情報Bが埋め込まれている場合、ヘッダのみを不正復号器Dに入力し、電子透かし情報Aが埋め込まれているコンテンツが復号されていればCjを「1」だけインクリメントし、そうでなければCjの値は変化しないようにすればよい。
いずれにしても、制御部33は、Cjの更新が終わると、検査回数zがm回未満か否かを判定し(ST18)、m回未満であればzを「1」だけインクリメントし(ST19)、ステップST14に戻って検査を繰り返す。
また、制御部33は、ステップST18の判定の結果、検査回数zがmに等しくなると、ユーザセグメントχBに属するユーザ番号jがユーザ総数n未満か否かを判定し(ST20)、n未満であればjを「1」だけインクリメントし(ST21)、ステップST12に戻って検査を繰り返す。
ステップST20の判定の結果、ユーザセグメントχBに属するユーザujのユーザ番号jがユーザ総数nに一致すると検査が終了する。
次に、制御部33は、j=1、…、nについて、得られたCj-1−Cjを計算し、Cj-1−Cjが最大値となる整数jを検出すると(ST22)、ujを不正ユーザと特定してそのユーザIDを出力する(ST23)。
この追跡方法では、図10及び図11に示すように、ユーザセグメントχBに属する不正ユーザの候補を一人ずつ増やし、不正ユーザの候補をユーザセグメントχBに含めたときに電子透かし情報Bが埋め込まれている第2のコンテンツを出力するか(言い換えれば、透かし情報Aが埋め込まれている第2のコンテンツを出力しないか)を検査しており、この検査を合計mn回行うことにより、1人以上の不正ユーザを特定することができる。なお、mn回の検査は、上述したような順番以外に、ランダムな順番で行ってもよい。これは、以下の実施例においても同様である。
例えば、ユーザIDの集合を{u1、…、un}とし、検査対象復号装置20χの結託者のユーザID=u2、u4であるとする。
この場合、ユーザID=u1、u2、u3をユーザセグメントχB、残りのユーザIDをユーザセグメントχAとして生成したヘッダ情報を与えると、該検査対象復号装置20χはユーザID=u4に対応しているので、セッション鍵sAが得られて、電子透かし情報Aが埋め込まれている第1のコンテンツが出力される。従って、m回の繰り返し処理後C3=mとなる。
また、ユーザID=u1、u2、u3、u4をユーザセグメントχB、残りのユーザIDをユーザセグメントχAとして生成したヘッダ情報を与えると、該検査対象復号装置からは、セッション鍵sAが得られず、替わりにセッション鍵sBが得られるので、電子透かし情報Bが埋め込まれている第2のコンテンツが出力される。従って、m回の繰り返し処理後C4=0となる。
したがって、C3−4が最大値mを与えるため、該検査対象復号装置20χの結託者のうちの1人のユーザIDは、u4であることがわかる。さらに、ユーザのラベル付けの順序を変えることにより、結託者全員のユーザIDを特定することも可能である。
より一般的には、Cj-1−Cj≧m/nとなる整数jが少なくとも1つは存在し、ユーザID=uiのユーザが不正ユーザでないときCi-1−Ci<<m/nであることから、Cj-1−Cjが最大値となる整数jを検出することにより不正ユーザIDを特定できる。
電子透かし情報A及びBがそれぞれ埋め込まれている第1及び第2のコンテンツは、ともに正常なコンテンツであるため、検査対象復号装置は、過去の入力を記憶していたとしてもブラックボックス追跡を検知することができず、必ず電子透かし情報A、Bのうちのいずれかが埋め込まれているコンテンツを出力する。従って、上述の方法により確実に不正ユーザの特定できる。
ここで、ヘッダは公開鍵eを用いて計算できるので、誰でも追跡装置30を用いて不正ユーザを追跡することができる。
上述の例では、容疑者を一人ずつ検査しているが、これに限らず、以下に説明するように2分岐探索を行ってもよい。始めに、ユーザ集合を2分割し、一方の第1の部分集合をユーザセグメントχAとし、他方の第2の部分集合をユーザセグメントχBとして、ヘッダ情報及び暗号化コンテンツを生成し、検査対象復号装置に入力する。検査対象復号装置の出力が電子透かし情報Aが埋め込まれているコンテンツであった場合、ユーザセグメントχAを2分割し、得られた2つの部分集合のうちのいずれか一方をユーザセグメントχAから取り除き、ユーザセグメントχBへ加える。一方、検査対象復号装置の出力が電子透かし情報Bが埋め込まれているコンテンツであった場合、ユーザセグメントχBを2分割し、得られた2つの部分集合のうちのいずれか一方をユーザセグメントχBから取り除き、ユーザセグメントχAへ加える。新たに設定されたユーザセグメントχA、χBに対して、上記検査を行う。この処理を容疑者が1人になるまで繰り返す。最後に、ユーザセグメントχA(またはユーザセグメントχB)に属するユーザが1人に絞り込まれ、検査対象復号装置が電子透かし情報A(または電子透かし情報B)が埋め込まれているコンテンツを出力した場合、その1人のユーザを不正ユーザと特定する。
また、用意するセッション鍵の数(埋め込む透かし情報の数)Jを3以上にして、J分岐探索を行うことも可能である。これは、以下の実施例においても同様である。
以上説明したように、複数のユーザシステムへ、暗号化コンテンツと当該暗号化コンテンツを復号するためのヘッダ情報とを提供するコンテンツ提供システムでは、コンテンツ暗号化部14が、複数のユーザシステムを個別に識別するための複数のユーザ識別情報のグループに割り当てられた異なる複数のセッション鍵s(j=1,2,…、n)を用いてコンテンツを暗号化し、複数の暗号化コンテンツを得る、ヘッダ生成部15が、複数のセッション鍵のそれぞれを、各ユーザシステム固有の復号鍵に対応する公開鍵で暗号化し、複数の暗号化セッション鍵を得る。さらにヘッダ生成部15は、該グループに対し、(a)上記複数の暗号化セッション鍵と、(b)該グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,L2k-1)と、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,u2k-1)との内積が、zj v mod 2K(ここで、zjは上記複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vはグループ識別情報、Kは予め定められた正の整数値)に等しくなるように設定された該第1のベクトルと、を含むヘッダ情報を生成する。そして、上記複数の暗号化コンテンツのうちの少なくとも1つ及び上記ヘッダ情報を複数のユーザシステムへ送信する。
ヘッダ情報には、正しいセッション鍵が複数含まれており、ユーザシステムはこれらの正しいセッション鍵のうちいずれかを常に得るので、ブラックボックス追跡の際に、入力の意図を不正復号器に知られることが無く、過去の入力を記憶し、それを利用して入力の意図を読み取って不正ユーザの特定を阻止しようと動作する巧妙な不正復号器に対しても、確実に追跡を実行することができる。さらに、ユーザ集合を木構造化し、構成された木構造に基づいた鍵生成多項式を導入することにより、同様のブラックボックス追跡が可能な従来方法に比べて、送信オーバヘッドの削減が可能となる。また、不正ユーザなどの特定のユーザを一時的に無効化し、構成された木構造を変更することなく、鍵生成多項式を更新することにより、不正ユーザなどの特定のユーザのみをシステムから排除し、その他のユーザの復号鍵を更新することが可能となる。
また、上記実施形態によれば、ヘッダ情報は、複数の暗号化セッション鍵を含み、それらを用いて異なる電子透かし情報が埋め込まれた複数のコンテンツをそれぞれ暗号化し、埋め込まれている電子透かし情報を検査することでブラックボックス追跡を行うため、ブラックボックス追跡の際のヘッダ情報(及び暗号化コンテンツ)と通常放送のヘッダ情報(及び暗号化コンテンツ)とは識別不可能である。これにより、ブラックボックス追跡の際に、たとえ不正復号器が過去の入力を記憶していたとしても、各入力の意図が不正復号器に知られることがないため、入力の意図を読み取って不正ユーザの特定を阻止しようと動作する巧妙な不正復号器に対しても、確実に追跡を実行することができる。
同等の追跡性能を有する従来のブラックボックス追跡方法では、第1のタイプ(方式が組み合わせ論的な構成に基づいている)であるため、送信オーバヘッドを非常に大きくしなければならないという問題があったが、本実施形態では、ユーザ集合を木構造化し、各ノードに鍵生成多項式を割り当て、代数的な構成に基づいてヘッダを生成するため、送信オーバヘッドの削減が可能となる。
上記実施形態によれば、ブラックボックス追跡の際に、入力の意図を不正復号器に知られることが無く、さらに過去の入力を記憶し、それに基づいて不正ユーザの特定を妨げるように動作する巧妙な不正復号器に対しても、確実に追跡を実行でき、しかも、送信オーバヘッドの削減が可能となる。また、不正ユーザが特定された後、不正ユーザをシステムから排除できる。
(第2の実施形態)
次に、第2の実施形態について説明する。第2の実施形態は、第1の実施形態の暗号化フェーズにおいて、図6のステップST2−4において、Uvjに属するユーザの少なくとも1人は集合χに属さず、かつ少なくとも1人は集合χに属す場合(ST2−4;NO)、鍵生成多項式の次数を増やすことなく、m≦2kとなる制限をなくす方法について説明する。第1の実施形態との違いは、ステップST2−4においてUvjに属するユーザの少なくとも1人は集合χに属さず、かつ少なくとも1人は集合χに属す場合の暗号化方法とその復号方法のみであるため、それらのみを説明する。
qを素数とし、qはp−1を割り切り、かつ、qはn+2k以上であるとする。
(暗号化フェーズ)
ステップST2−4において、Uvjに属するユーザの少なくとも1人は集合χに属さず、かつ少なくとも1人は集合χに属す場合(ST2−4;NO)について述べる。
ヘッダ生成部15は、図7に示すように、Uvjから、集合Vvjを取り除いた部分集合を{x1、…、xm}とする。ここで、mは、前述同様、Uvjに属するユーザ集合のうち、集合Vvjに属さないユーザの総数である。
次に、ヘッダ生成部15は、2dk+1≦m≦2(d+1)kを満たす整数dを探し、2(d+1)k−m>0ならば、xm+1、…、x2(d+1)kをZq−(U+{0})からランダムに選択する。なお、Zq−(U+{0})は、ZqからUと{0}の和集合を取り除いたものを意味する。
ヘッダ生成部15は、1≦t≦2(d+1)kについて、式(14)を満たすZqの要素L0、…、L2(d+1)k-1を求める。
Figure 2008172433
次に、ヘッダ生成部15は、rにr1を代入し、式(15)に従いHvjを計算する(ST2−6)。
Figure 2008172433
なお、前述の通り、rに代入される乱数を3つ以上用意し、ステップST2−4の結果がそれ以外となる場合が発生する度に、rに異なる乱数を代入することも可能である。
(復号フェーズ)
部分集合Uvjに属するユーザuを考える。図8のST5−6の場合、Hvjを用いて式(16)を計算する。
Figure 2008172433
ユーザuが集合χに属す場合、式(14)より、セッション鍵siを得る(ST8)
上述したように第2の実施形態によれば、m≦2kとなる制限をなくす構成により、すなわち、Uvjに属するユーザの少なくとも1人は集合χに属さず、かつ少なくとも1人は集合χに属す場合に、集合Uvj-Vvjに属するユーザの数を第1の実施形態の場合と比較すると、2dkだけ増やすことができる(式(14)のxtの次数が式(8)の「2k−1」から「2(d+1)k−1」に増え、その結果、式(15)に示すようにヘッダ情報Hvjの要素の数が、式(9)の「2k+2」から「2(d+1)k+2」に増えている)。
第1の実施形態の効果に加え、ステップST2−4の結果がそれ以外となる場合(ST2−4;NO)において、集合Uvj-Vvjに属するユーザ数が第1の実施形態の説明において述べた制限を超えた場合にも対応できる。また、m≦2kとなる制限をなくす構成としても、第1の実施形態と同様の効果を得ることができる。
(第3の実施形態)
次に、第3の実施形態について説明する。第3の実施形態は、第1、第2の実施形態において、復号鍵の更新を行う例である。第3の実施形態に係る復号鍵更新方法は、全ユーザシステムに対し、それぞれの復号鍵を更新する場合や、例えば、追跡装置30により不正ユーザのユーザIDを特定した場合に、該ユーザIDを持つ不正ユーザシステムでのコンテンツ復号を不可能にするために、該不正ユーザシステム以外の正当なユーザシステムに対し、復号鍵を更新する場合などにも用いられる。
なお、特に断りのない限り、記号は、第1の実施形態において定義されたものを用いる。
ここで、鍵更新手順の概略を簡単に説明する。前述したように、ノードvを祖先にもつリーフあるいはリーフvに割り振られたユーザ集合Uvに属するユーザID=uの復号鍵は、式(2)に示したような鍵生成多項式Av(x)、B(x)を用いて、復号鍵生成多項式A(x)+λB(x)の「x」に「u」を代入することにより得られる。そこで、式(2)の鍵生成多項式Av(x)、B(x)の係数群av,i、λv、biを、av,i+a’v,i、λv+λ’v、bi+b’iと更新することにより(鍵生成多項式自体を更新することにより)、各ユーザシステムの復号鍵を更新する。
例えば、復号鍵を更新する必要のあるユーザIDの集合(ユーザセグメント)に対しては、上記係数群を更新するために必要な情報a’v,i、λ’v、b’iを含む鍵更新情報をコンテンツとし、これを該ユーザセグメントに割り当てられたセッション鍵で暗号化し、暗号化鍵更新情報を生成する。そして、前述のコンテンツ提供装置がヘッダ情報及び暗号化コンテンツを生成する手法と同様に、暗号化鍵更新情報と、該暗号化鍵更新情報を復号するためのヘッダ情報を生成し、送信する。
復号鍵を更新する必要のないユーザIDの集合(ユーザセグメント)に対しては、該ユーザセグメントに割り当てられたセッション鍵で暗号化された上記鍵更新情報を送信しない。
この結果、前者のユーザセグメントに属するユーザIDのユーザシステムでは、上記鍵更新情報を取得することができ、復号鍵を更新することができるものの、後者のユーザセグメントに属するユーザIDのユーザシステムでは、上記鍵更新情報を取得することはできず、復号鍵の更新は行えない。
以下、図17に示すフローチャートを参照して、コンテンツ提供システムにおける処理と、ユーザシステムにおける処理をより詳細に説明する。
コンテンツ提供システムの処理動作は、セッション鍵でコンテンツを暗号化する代わりに、セッション鍵で鍵更新情報を暗号化する以外は、ほぼ図5と同様である。
図17において、コンテンツ提供システムは、鍵更新処理を開始する旨の鍵更新開始情報をユーザシステムに送信する(ST201)。ここで、コンテンツ提供システムからユーザシステムへの送信について、1対1の送信でもよいし、複数のユーザシステムへブロードキャスト又はマルチキャストでもよい。これは以下についても同様である。
コンテンツ提供システムは、L個(j=1、2、…L)の乱数sj=s1、…、sLをGqからランダムに選択する。L個の乱数は、L個のリーフにそれぞれ対応する。さらに、乱数s1、…、sLを公開鍵格納部11に記憶されている公開鍵で暗号化し、 各リーフvjについて、式(5)によりHVjを計算する(ST202)。なお、ステップST202におけるヘッダ生成部15のヘッダ情報の生成処理は、以下の2点を除き、第1の実施形態と同様である(図6等参照)。
(1)選択するノードは、L個のリーフである。(2)各リーフvjについて、式(5)によりHVjを計算する。
ただし、
Figure 2008172433
コンテンツ提供システムは、乱数a’0、…、a’2k-1、b’0…、b’2k-1、c’0、…、c’2L-3、λ’0、…、λ’2L-3をZqからランダムに選択し、1≦j≦Lについて、以下の処理を繰り返す。コンテンツ提供システムは、鍵更新情報Mvjを生成し、該リーフvjに対応する乱数、すなわち、セッション鍵sjを用いて鍵更新情報Mvjを共通鍵暗号化する(ST203)。暗号化された鍵更新情報をM’vjと表す。鍵更新情報Mvjには、リーフvjの鍵生成多項式Av(x)、B(x)の係数群を更新するための情報、すなわち、上記選択された乱数a’0、…、a’2k-1、b’0…、b’2k-1、c’0、…、c’2L-3、λ’0、…、λ’2L-3が含まれている。
ここで、鍵更新情報Mvjについて説明する。リーフvjをvj,1と書き換え、リーフvj,1からルートに至るまでの各ノードをvj,2、…、vj,log2 Lとすると、鍵更新情報Mvjは次式により表される。
Figure 2008172433
以上の繰り返し処理により得られたM’v、…、M’vを暗号化鍵更新情報M’とする。コンテンツ提供システムは、暗号化鍵更新情報M’をユーザシステムに送信する(ST204)。なお、送信先であるユーザシステムがUvjに属することがわかっている場合、M’vjのみを送信してもよい。
また、コンテンツ提供システムは、ヘッダ情報Hをユーザシステムに送信する(ST204)。ここで、送信先であるユーザシステムがUvjに属することがわかっている場合、Hvjのみを送信してもよい。
コンテンツ提供システムは、次式により新しい公開鍵enewを計算する(ST205)。
Figure 2008172433
次に、ユーザIDがuであり、そのユーザIDがUvj(vjはリーフ)に割り当てられたサブグループに属するユーザシステムにおける処理を説明する。ユーザシステムは、鍵更新開始情報を受信すると(ST206)、コンテンツ提供システムにより送られてきたヘッダ情報H(又はHvj)を復号し、sjを取得する(ST207)。ここで、ヘッダ情報Hの復号方法は第1の実施形態において説明した復号方法と同様である。
ユーザシステムは、コンテンツ提供システムにより送られてきた暗号化鍵更新情報M’ より当該ユーザシステムが復号可能なM’vjを選択し(又はM’vjのみを受信し)、sjを用いて M’vjを復号し、Mvjを取得する(ST208)。
リーフvjをvj,1と書き換え、リーフvj,1からルートに至るまでの各ノードを
j,2、…、vj,log2 Lとする。1≦i≦log2 Lについて、ユーザシステムは、次式により新しい復号鍵Anew、Bnewを計算する(ST209)。
Figure 2008172433
ここで、鍵生成多項式の各係数は次式に表されるように更新される。
Figure 2008172433
式(19)と式(21)から、更新された公開鍵とユーザ復号鍵が対応付けられていることがわかる。
上述の例では、係数群av,i、λV、及びbiを更新しているが、λVを更新せず(λ’V=0と設定し)、av,i及びbiのみを更新することも可能である。また、λV及びbiを更新せず(λ’V=0かつbi=0と設定し)、av,iのみを更新することも可能である。この場合、式(18)において、鍵更新情報Mvjにbiを含めることが不要となる。
上述の例では、コンテンツ提供システムが、鍵更新開始情報をユーザシステムに送信することにより鍵更新処理を始めているが、ユーザシステムの方から鍵更新を要求する旨の情報をコンテンツ提供システムに送信して鍵更新処理を始めてもよい。また、コンテンツ提供システムは、ヘッダ情報、暗号化鍵更新情報、及び新しい公開鍵を、上述の順序に限らず、どの順序で生成してもよいし、鍵更新開始情報をユーザシステムに送信する前に、ヘッダ情報、暗号化鍵更新情報、及び新しい公開鍵を予め生成しておいてもよい。
また、参考許文献2(松下、著作権保護のためのブラックボックス不正者追跡方式に関する研究、東京大学学位論文、2006年3月)において開示された復号鍵無効化方法を用いることにより、特定のユーザシステムの鍵更新を行わせないようにし、当該特定のユーザシステムをデータ通信システムから排除することも可能である。
より具体的には、コンテンツ提供システムは、上述のヘッダ情報Hに加え、sをGqからランダムに選択し、非特許文献4において開示された暗号化方法を用いてsを暗号化し、ヘッダ情報H’を生成し、ユーザシステムへ送信する。ヘッダ情報H’においては、sの復号を許可されたユーザシステムのみがsを取得でき、sの復号を禁止されたユーザシステム(無効化対象のユーザシステム)はsを取得できない。コンテンツ提供システムは、鍵更新情報Mvjを生成し、ある関数Fについて、s’j=F(sj,s)を用いて鍵更新情報Mvjを共通鍵暗号化する。関数Fの例として、例えば、
Figure 2008172433
が挙げられる。
ユーザシステムは、ヘッダ情報H及びH’を復号し、sj及びsをそれぞれ取得する。ユーザシステムは、s’jを用いて暗号化鍵更新情報を復号し、復号鍵を更新する。このようにすることで、無効化対象のユーザシステムはsを取得できず、従って復号鍵を更新することができない。
また、上述の例は、コンテンツ提供システムとユーザシステムとの間において鍵更新処理が行われる例であるが、コンテンツ提供システムの代わりに信頼できる第三者がユーザシステムとの間で鍵更新を行い、更新された公開鍵をコンテンツ提供システムに通知してもよい。
なお、上記全ての実施形態では、主に「システム」のカテゴリーで表現したが、これに限らず、「装置」、「方法」、「コンピュータ読取り可能な記憶媒体」又は「プログラム」等といった任意のカテゴリーで表現してもよいことは言うまでもない。また、システム全体のカテゴリーを変える場合に限らず、システムの一部を抽出して他のカテゴリーで表現してもよいことも言うまでもない。
また、上記全ての実施形態の暗号化装置、復号装置、追跡装置は、いずれも、半導体集積装置などのハードウェアとしても、ソフトウェア((コンピュータに所定の手段を実行させるための、あるいはコンピュータを所定の手段として機能させるための、あるいはコンピュータに所定の機能を実現させるための)プログラム)としても、実現可能である。もちろん、ハードウェアとソフトウェアとを併用して実現することも可能である。
また、プログラムとして実現する場合、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であってもよい。
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行してもよい。
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
また、記憶媒体は1つに限らず、複数の媒体から上記実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であってもよい。
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
なお、この発明の実施の形態で例示した構成は一例であって、それ以外の構成を排除する趣旨のものではなく、例示した構成の一部を他のもので置き換えたり、例示した構成の一部を省いたり、例示した構成に別の機能あるいは要素を付加したり、それらを組み合わせたりすることなどによって得られる別の構成も可能である。また、例示した構成と論理的に等価な別の構成、例示した構成と論理的に等価な部分を含む別の構成、例示した構成の要部と論理的に等価な別の構成なども可能である。また、例示した構成と同一もしくは類似の目的を達成する別の構成、例示した構成と同一もしくは類似の効果を奏する別の構成なども可能である。
また、この発明の実施の形態で例示した各種構成部分についての各種バリエーションは、適宜組み合わせて実施することが可能である。
また、この発明の実施の形態は、個別装置としての発明、関連を持つ2以上の装置についての発明、システム全体としての発明、個別装置内部の構成部分についての発明、またはそれらに対応する方法の発明等、種々の観点、段階、概念またはカテゴリに係る発明を包含・内在するものである。
従って、この発明の実施の形態に開示した内容からは、例示した構成に限定されることなく発明を抽出することができるものである。
本発明は、上述した実施の形態に限定されるものではなく、その技術的範囲において種々変形して実施することができる。例えば本願発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組合せてもよい。
本発明の第1の実施形態に係るコンテンツ提供システム及びユーザシステム等が適用されたデータ通信システムの構成を示す模式図である。 ユーザ集合のサブグループを説明するための模式図である。 ユーザ集合のサブグループを説明するための模式図である。 追跡システムの構成を示す模式図である。 データ通信システムの全体の動作を説明するためのフローチャートである。 暗号化フェーズの動作を説明するためのフローチャートである。 ヘッダ生成部の処理を説明するための模式図である。 復号フェーズの動作を説明するためのフローチャートである。 追跡フェーズの動作を説明するためのフローチャートである。 検査の概要を説明するための模式図である。 検査の結果を説明するための模式図である。 データ通信システムの変形例を示す模式図である。 木構造を説明するための図。 復号鍵生成処理動作を説明するためのフローチャート。 コンテンツに電子透かし情報の埋め込む方法を説明するための図。 ユーザ集合内の複数のユーザセグメントを説明するための図。 復号鍵の更新処理を説明するためのフローチャート。
符号の説明
1…コンテンツ提供システム、2…ユーザシステム、3…ネットワーク、10…暗号化装置、11,31…公開鍵格納部、12…無効化対象ユーザ情報格納部、13…セッション鍵生成部、14…コンテンツ暗号化部、15,32…ヘッダ生成部、20…復号装置、21…ユーザ情報格納部、22…セッション鍵復号部、23…コンテンツ復号部、30…追跡装置、33…制御部。

Claims (28)

  1. 異なる複数のセッション鍵s(j=1,2,…、n)を用いてコンテンツを暗号化し、複数の暗号化コンテンツを得るコンテンツ暗号化手段と、
    前記複数のセッション鍵のそれぞれを、各ユーザシステム固有の復号鍵に対応する公開鍵で暗号化し、複数の暗号化セッション鍵を得るセッション鍵暗号化手段と、
    前記複数のセッション鍵が割り当てられた、複数のユーザシステムを個別に識別するための複数のユーザ識別情報を含むグループに対し、
    (a)前記複数の暗号化セッション鍵と、
    (b)前記複数のセッション鍵のうち前記グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,Lk)と、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,uk)との内積が、zj v(ここで、kは予め定められた正の整数、zjは前記複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vは前記グループにグループ識別情報として割り当てられた「0」以上k以下の整数のうちのいずれか1つの整数)に等しくなるように設定された前記第1のベクトルと、
    を含み、前記グループに属する各ユーザシステム固有の復号鍵を用いて各ユーザシステムに割り当てられた暗号化セッション鍵を復号可能にするヘッダ情報を生成するヘッダ情報生成手段と、
    前記複数の暗号化コンテンツのうちの少なくとも1つ及び前記ヘッダ情報を前記複数のユーザシステムへ送信する送信手段と、
    を備えたコンテンツ提供システム。
  2. 前記ヘッダ情報生成手段は、前記第1のベクトルと前記第2のベクトルとの内積
    Figure 2008172433
    (ここで、k´は不正ユーザ識別情報の数に対し予め定められた最大値であり、
    k=2k´−1を満たす)が、zj v mod 2k’に等しくなるように、該第1のベクトルを設定することを特徴とする請求項1記載のコンテンツ提供システム。
  3. 各ユーザシステム固有の前記復号鍵は、
    ルートのノードから1つ又は複数のノードを介して複数のリーフに至る木構造に、前記ルート、前記複数のノード及び前記複数のリーフ毎にそれぞれ異なる個別鍵生成多項式を割り当てるとともに、当該木構造上の異なる複数のリーフに、前記グループを含む複数のユーザシステムを個別に識別するための複数のユーザ識別情報の集合を分割することにより得られる複数のサブグループをそれぞれ割り当て、当該複数のサブグループのうち、当該ユーザシステムに対応するユーザ識別情報の属するサブグループに割り当てられた当該木構造上のリーフ及びその祖先ノードのそれぞれに対応する前記個別鍵生成多項式のうちの1つと、前記ルート、前記複数のノード及び前記複数のリーフで共通の共通鍵生成多項式とに、当該ユーザシステムのユーザ識別情報を代入することにより得られた値であることを特徴とする請求項1記載のコンテンツ提供システム。
  4. 前記個別鍵生成多項式と前記共通鍵生成多項式の同じ次数の係数の線形和のうちの少なくとも1つは、前記木構造上の前記ルート、前記複数のノード、及び前記複数のリーフ毎にそれぞれ異なり、それ以外の前記同じ次数の係数の線形和は一定であることを特徴とする請求項3記載のコンテンツ提供システム。
  5. 前記木構造上の前記ルート、前記複数のノード、及び前記複数のリーフのうちの1つ(v)に割り当てる前記個別鍵生成多項式A(x)及び前記共有鍵生成多項式B(x)は、
    Figure 2008172433
    (λv:前記ルート、前記複数のノード及び前記複数のリーフ毎に固有の定数値、k、k:任意の正の整数値、q:予め定められた正の整数値)
    であり、且つ前記個別鍵生成多項式A(x)の係数av、i(i=0,1,…,k)のうちの少なくとも1つの係数av、n(0≦n≦kaの整数)は、前記ルート、前記複数のノード及び前記複数のリーフ毎に固有の定数値であることを特徴とする請求項3記載のコンテンツ提供システム。
  6. 前記コンテンツ暗号化手段は、異なる電子透かし情報が埋め込まれている複数のコンテンツを前記複数のセッション鍵のそれぞれを用いて暗号化し、複数の暗号化コンテンツを得ることを特徴とする請求項1記載のコンテンツ提供システム。
  7. 前記グループは、前記複数のセッション鍵のうちの第1のセッション鍵sが割り当てられている第1のユーザシステム群と、前記複数のセッション鍵のうちの第2のセッション鍵s2が割り当てられている第2のユーザシステム群とを含み、
    前記コンテンツ暗号化手段は、複数の電子透かし情報のうちの第1の電子透かし情報が埋め込まれている第1のコンテンツを前記第1のセッション鍵を用いて暗号化し、前記複数の電子透かし情報のうちの前記第1の電子透かし情報とは異なる第2の電子透かし情報が埋め込まれている第2のコンテンツを前記第2のセッション鍵を用いて暗号化することを特徴とする請求項1記載のコンテンツ提供システム。
  8. 検査対象のユーザシステムを検査し、複数のユーザシステムを個別に識別するための複数のユーザ識別情報のなかから不正ユーザ識別情報を特定するための追跡システムであって、
    異なる複数のセッション鍵s(j=1,2,…、n)を用いて異なる電子透かし情報が埋め込まれている複数のコンテンツをそれぞれ暗号化し、複数の暗号化コンテンツを得るコンテンツ暗号化手段と、
    複数の前記ユーザ識別情報を含むグループ内の該複数のユーザ識別情報に前記複数のセッション鍵を割り当てる割り当て手段と、
    前記グループに対し、
    (a)前記複数のセッション鍵のそれぞれを、各ユーザシステム固有の復号鍵に対応する公開鍵で暗号化することにより得られる複数の暗号化セッション鍵と、
    (b)前記複数のセッション鍵のうち前記グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,Lk)と、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,u)との内積が、zj v(ここで、kは予め定められた正の整数、zjは前記複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vは前記グループにグループ識別情報として割り当てられた「0」以上k以下の整数のうちのいずれか1つの整数)に等しくなるように設定された前記第1のベクトルと、
    を含み、前記グループに属する各ユーザシステム固有の復号鍵を用いて各ユーザシステムに割り当てられた暗号化セッション鍵を復号可能にするヘッダ情報を生成するヘッダ情報生成手段と、
    前記複数の暗号化コンテンツと、前記ヘッダ情報を前記検査対象のユーザシステムに入力し、該ユーザシステムによる前記複数の暗号化コンテンツの復号結果として、前記複数のコンテンツのうち復号されたコンテンツを取得する手段と、
    前記割り当て手段で各セッション鍵を割り当てるユーザ識別情報を変えて、前記ヘッダ情報生成手段で生成された複数のヘッダ情報と、各ヘッダ情報を前記検査対象のユーザシステムに入力したときに取得した前記復号結果との関係に基づいて、前記複数のユーザ識別情報のなかから、前記検査対象のユーザシステムがもつ1以上のユーザ識別情報を特定する特定手段と、
    を備えた追跡システム。
  9. 前記ヘッダ情報生成手段は、該第1のベクトルと前記第2のベクトルとの内積
    Figure 2008172433
    (ここで、k´は不正ユーザ識別情報の数に対し予め定められた最大値であり、k=2k´−1)が、zj v mod 2k’に等しくなるように前記第1のベクトルを設定することを特徴とする請求項8記載の追跡システム。
  10. 各ユーザシステム固有の前記復号鍵は、
    ルートのノードから1つ又は複数のノードを介して複数のリーフに至る木構造に、前記ルート、前記複数のノード及び前記複数のリーフ毎にそれぞれ異なる個別鍵生成多項式を割り当てるとともに、当該木構造上の異なる複数のリーフに、前記グループを含む複数のユーザシステムを個別に識別するための複数のユーザ識別情報の集合を分割することにより得られる複数のサブグループをそれぞれ割り当て、当該複数のサブグループのうち、当該ユーザシステムに対応するユーザ識別情報の属するサブグループに割り当てられた当該木構造上のリーフ及びその祖先ノードのそれぞれに対応する前記個別鍵生成多項式のうちの1つと、前記ルート、前記複数のノード及び前記複数のリーフで共通の共通鍵生成多項式とに、当該ユーザシステムのユーザ識別情報を代入することにより得られた値であることを特徴とする請求項8記載の追跡システム。
  11. 前記個別鍵生成多項式と前記共通鍵生成多項式の同じ次数の係数の線形和のうちの少なくとも1つは、前記木構造上の前記ルート、前記複数のノード、及び前記複数のリーフ毎にそれぞれ異なり、それ以外の前記同じ次数の係数の線形和は一定であることを特徴とする請求項8記載の追跡システム。
  12. 前記制御手段は、前記グループに異なる2つのセッション鍵を割り当ることを特徴とする請求項8記載の追跡システム。
  13. 前記コンテンツは、各ユーザシステム固有の復号鍵を更新するために必要な鍵更新情報であることを特徴とする請求項1記載のコンテンツ提供システム。
  14. 前記コンテンツは、前記個別鍵生成多項式の係数を更新するために必要な鍵更新情報であることを特徴とする請求項3記載のコンテンツ提供システム。
  15. 前記コンテンツは、前記個別鍵生成多項式及び前記共通鍵生成多項式の係数を更新するために必要な鍵更新情報であることを特徴とする請求項3記載のコンテンツ提供システム。
  16. 前記コンテンツは、係数群av,iを更新するために必要な鍵更新情報であることを特徴とする請求項5記載のコンテンツ提供システム。
  17. 前記コンテンツは、係数群av,i及び係数群biを更新するために必要な鍵更新情報であることを特徴とする請求項5記載のコンテンツ提供システム。
  18. 前記コンテンツは、係数群av,i、定数値λV、及び係数群biを更新するために必要な鍵更新情報であることを特徴とする請求項5記載のコンテンツ提供システム。
  19. 前記コンテンツは、前記個別鍵生成多項式A(x)及び前記共有鍵生成多項式B(x)を、新たな個別鍵生成多項式Anew,v(x)及び前記共有鍵生成多項式Bnew(x)
    Figure 2008172433
    に更新するために必要な係数群a’v,i、及び係数群b’iを含む鍵更新情報であることを特徴とする請求項記載5記載のコンテンツ提供システム。
  20. 複数のユーザシステムへ、暗号化コンテンツと当該暗号化コンテンツを復号するために必要なヘッダ情報とを提供するコンテンツ提供システムにおけるコンテンツ提供方法であって、
    異なる複数のセッション鍵s(j=1,2,…、n)を用いてコンテンツを暗号化し、複数の暗号化コンテンツを得るコンテンツ暗号化ステップと、
    前記複数のセッション鍵のそれぞれを、各ユーザシステム固有の復号鍵に対応する公開鍵で暗号化し、複数の暗号化セッション鍵を得るセッション鍵暗号化ステップと、
    前記複数のセッション鍵が割り当てられた、複数のユーザシステムを個別に識別するための複数のユーザ識別情報を含むグループに対し、
    (a)前記複数の暗号化セッション鍵と、
    (b)前記複数のセッション鍵のうち前記グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,Lk)と、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,uk)との内積が、zj v(ここで、kは予め定められた正の整数、zjは前記複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vは前記グループにグループ識別情報として割り当てられた「0」以上k以下の整数のうちのいずれか1つの整数)に等しくなるように設定された前記第1のベクトルと、
    を含み、前記グループに属する各ユーザシステム固有の復号鍵を用いて各ユーザシステムに割り当てられた暗号化セッション鍵を復号可能にするヘッダ情報を生成するヘッダ情報生成ステップと、
    前記複数の暗号化コンテンツのうちの少なくとも1つ及び前記ヘッダ情報を前記複数のユーザシステムへ送信する送信ステップと、
    を含むコンテンツ提供方法。
  21. 前記ヘッダ情報生成ステップは、前記第1のベクトルを、該第1のベクトルと前記第2のベクトルとの内積
    Figure 2008172433
    (ここで、k´は不正ユーザ識別情報の数に対し予め定められた最大値であり、
    k=2k´−1を満たす)が、zj v mod 2k’に等しくなるように設定することを特徴とする請求項20記載のコンテンツ提供方法。
  22. 各ユーザシステム固有の前記復号鍵は、
    ルートのノードから1つ又は複数のノードを介して複数のリーフに至る木構造に、前記ルート、前記複数のノード及び前記複数のリーフ毎にそれぞれ異なる個別鍵生成多項式を割り当てるとともに、当該木構造上の異なる複数のリーフに、前記グループを含む複数のユーザシステムを個別に識別するための複数のユーザ識別情報の集合を分割することにより得られる複数のサブグループをそれぞれ割り当て、当該複数のサブグループのうち、当該ユーザシステムに対応するユーザ識別情報の属するサブグループに割り当てられた当該木構造上のリーフ及びその祖先ノードのそれぞれに対応する前記個別鍵生成多項式のうちの1つと、前記ルート、前記複数のノード及び前記複数のリーフで共通の共通鍵生成多項式とに、当該ユーザシステムのユーザ識別情報を代入することにより得られた値であることを特徴とする請求項20記載のコンテンツ提供方法。
  23. 前記個別鍵生成多項式と前記共通鍵生成多項式の同じ次数の係数の線形和のうちの少なくとも1つは、前記木構造上の前記ルート、前記複数のノード、及び前記複数のリーフ毎にそれぞれ異なり、それ以外の前記同じ次数の係数の線形和は一定であることを特徴とする請求項22記載のコンテンツ提供方法。
  24. 検査対象のユーザシステムを検査し、複数のユーザシステムを個別に識別するための複数のユーザ識別情報のなかから不正ユーザ識別情報を特定するための追跡システムにおける不正ユーザ特定方法であって、
    異なる複数のセッション鍵s(j=1,2,…、n)を用いて異なる電子透かし情報が埋め込まれている複数のコンテンツをそれぞれ暗号化し、複数の暗号化コンテンツを得るコンテンツ暗号化ステップと、
    複数の前記ユーザ識別情報を含むグループ内の該複数のユーザ識別情報に前記複数のセッション鍵を割り当てる割り当てステップと、
    前記グループに対し、
    (a)前記複数のセッション鍵のそれぞれを、各ユーザシステム固有の復号鍵に対応する公開鍵で暗号化することにより得られる複数の暗号化セッション鍵と、
    (b)前記複数のセッション鍵のうち前記グループ内の任意のユーザ識別情報uに割り当てられているセッション鍵に対応する第1のベクトル(L,L,L,…,Lk)と、該ユーザ識別情報uに関する第2のベクトル(1,u,u,…,uk)との内積が、zj v(ここで、kは予め定められた正の整数、zjは前記複数のセッション鍵に対応する異なる複数の定数値のうち該ユーザ識別情報uに割り当てられているセッション鍵sjに対応する定数値、vは前記グループにグループ識別情報として割り当てられた、「0」以上k以下の整数のうちのいずれか1つの整数)に等しくなるように設定された前記第1のベクトルと、
    を含み、前記グループに属する各ユーザシステム固有の復号鍵を用いて各ユーザシステムに割り当てられた暗号化セッション鍵を復号可能にするヘッダ情報を生成するヘッダ情報生成ステップと、
    前記複数の暗号化コンテンツと、前記ヘッダ情報を検査対象のユーザシステムに入力し、該ユーザシステムによる前記複数の暗号化コンテンツの復号結果として、前記複数のコンテンツのうち復号されたコンテンツを取得する取得ステップと、
    前記割り当てステップで各セッション鍵を割り当てるユーザ識別情報を変えて、前記ヘッダ情報生成ステップで生成された複数のヘッダ情報と、各ヘッダ情報を前記検査対象のユーザシステムに入力したときに取得した前記復号結果との関係に基づいて、前記複数のユーザ識別情報のなかから、前記検査対象のユーザシステムがもつ1以上のユーザ識別情報を特定する特定ステップと、
    を含む不正ユーザ特定方法。
  25. 前記ヘッダ情報生成ステップは、該第1のベクトルと前記第2のベクトルとの内積
    Figure 2008172433
    (ここで、k´は不正ユーザ識別情報の数に対し予め定められた最大値であり、
    k=2k´−1)が、zj v mod 2k’に等しくなるように前記第1のベクトルを設定することを特徴とする請求項24記載の不正ユーザ特定方法。
  26. 前記コンテンツは、各ユーザシステム固有の復号鍵を更新するために必要な鍵更新情報であることを特徴とする請求項20記載のコンテンツ提供方法。
  27. 前記コンテンツは、前記個別鍵生成多項式の係数を更新するために必要な鍵更新情報であることを特徴とする請求項22記載のコンテンツ提供方法。
  28. 前記コンテンツは、前記個別鍵生成多項式及び前記共通鍵生成多項式の係数を更新するために必要な鍵更新情報であることを特徴とする請求項22記載のコンテンツ提供方法。
JP2007002658A 2007-01-10 2007-01-10 コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法 Expired - Fee Related JP4358239B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007002658A JP4358239B2 (ja) 2007-01-10 2007-01-10 コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法
EP07024310A EP1944715A3 (en) 2007-01-10 2007-12-14 Content distribution system and tracking system
US11/970,666 US7961887B2 (en) 2007-01-10 2008-01-08 Content distribution system and tracking system
CN200810002833.6A CN101222321A (zh) 2007-01-10 2008-01-09 内容分发系统和跟踪系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007002658A JP4358239B2 (ja) 2007-01-10 2007-01-10 コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法

Publications (2)

Publication Number Publication Date
JP2008172433A true JP2008172433A (ja) 2008-07-24
JP4358239B2 JP4358239B2 (ja) 2009-11-04

Family

ID=39247125

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007002658A Expired - Fee Related JP4358239B2 (ja) 2007-01-10 2007-01-10 コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法

Country Status (4)

Country Link
US (1) US7961887B2 (ja)
EP (1) EP1944715A3 (ja)
JP (1) JP4358239B2 (ja)
CN (1) CN101222321A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210153564A (ko) * 2020-06-10 2021-12-17 쿠팡 주식회사 동적 커뮤니티를 추적하기 위한 컴퓨터화된 시스템 및 방법

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412926B1 (en) * 2007-04-11 2013-04-02 Juniper Networks, Inc. Using file metadata for data obfuscation
WO2009112966A2 (en) * 2008-03-10 2009-09-17 Nds Limited Key distribution system
EP2337262A1 (en) * 2008-10-10 2011-06-22 Panasonic Corporation Information processing device, method, program, and integrated circuit
US8989383B2 (en) * 2009-01-05 2015-03-24 Imation Corp. Data authentication using plural electronic keys
JP2010220019A (ja) * 2009-03-18 2010-09-30 Panasonic Corp 鍵管理方法および鍵管理装置
US20120023245A1 (en) * 2009-03-24 2012-01-26 France Telecom Method and device for processing a piece of information indicative of a desire to be involved in at least one user application session
WO2011016401A1 (ja) * 2009-08-03 2011-02-10 日本電信電話株式会社 関数暗号応用システム及び方法
US20100185868A1 (en) * 2010-03-21 2010-07-22 William Grecia Personilized digital media access system
JP5676331B2 (ja) * 2011-03-24 2015-02-25 株式会社東芝 ルートノード及びプログラム
US10033713B2 (en) * 2012-06-21 2018-07-24 Oracle International Corporation System and method for managing keys for use in encrypting and decrypting data in a technology stack
JP5813872B2 (ja) * 2012-07-13 2015-11-17 株式会社東芝 通信制御装置、通信装置およびプログラム
KR20140041226A (ko) 2012-09-27 2014-04-04 삼성전자주식회사 이동 통신 시스템에서 그룹 통신을 위한 보안 관리 방법 및 장치
US9990478B2 (en) * 2012-11-30 2018-06-05 The Nielsen Company (Us), Llc Methods, apparatus, and articles of manufacture to encode auxiliary data into relational database keys and methods, apparatus, and articles of manufacture to obtain encoded data from relational database keys
JP2014121076A (ja) * 2012-12-19 2014-06-30 Toshiba Corp 鍵管理装置、通信装置、通信システムおよびプログラム
US9467425B2 (en) * 2013-03-18 2016-10-11 Intel Corporation Key refresh between trusted units
US9454787B1 (en) * 2014-03-04 2016-09-27 Stephen M. Dorr Secure membership data sharing system and associated methods
US10410643B2 (en) * 2014-07-15 2019-09-10 The Nielson Company (Us), Llc Audio watermarking for people monitoring
US10419511B1 (en) * 2016-10-04 2019-09-17 Zoom Video Communications, Inc. Unique watermark generation and detection during a conference
US10078759B1 (en) * 2018-01-19 2018-09-18 Griffin Group Global, LLC System and method for data sharing via a data structure having different-scheme-derived portions
US10068099B1 (en) * 2018-01-19 2018-09-04 Griffin Group Global, LLC System and method for providing a data structure having different-scheme-derived portions
US11133932B2 (en) * 2018-12-20 2021-09-28 Sony Interactive Entertainment LLC Secure data channel in a networked gaming system
US11196728B1 (en) * 2021-03-29 2021-12-07 Fmr Llc Caching login sessions to access a software testing environment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000253459A (ja) 1999-03-02 2000-09-14 Kodo Ido Tsushin Security Gijutsu Kenkyusho:Kk 暗号無線通信装置
JP3651777B2 (ja) 2000-11-28 2005-05-25 株式会社東芝 電子透かしシステム、電子透かし解析装置、電子透かし解析方法及び記録媒体
JP3917507B2 (ja) * 2002-01-28 2007-05-23 株式会社東芝 コンテンツ提供側システム、ユーザ側システム、追跡システム、コンテンツ提供方法、暗号化コンテンツ復号方法、不正ユーザ特定方法、暗号化装置、復号装置及びプログラム
JP4434969B2 (ja) * 2004-01-21 2010-03-17 株式会社東芝 コンテンツ提供側システム、ユーザ側システム、追跡システム、装置、方法及びプログラム
JP2006019975A (ja) 2004-06-30 2006-01-19 Matsushita Electric Ind Co Ltd 暗号パケット通信システム、これに備えられる受信装置、送信装置、及びこれらに適用される暗号パケット通信方法、受信方法、送信方法、受信プログラム、送信プログラム
JP4630826B2 (ja) * 2006-01-27 2011-02-09 株式会社東芝 復号鍵生成方法、コンテンツ提供側システム、ユーザ側システム、追跡システム、コンテンツ提供方法、暗号化コンテンツ復号方法、プログラム、暗号化装置及び復号装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210153564A (ko) * 2020-06-10 2021-12-17 쿠팡 주식회사 동적 커뮤니티를 추적하기 위한 컴퓨터화된 시스템 및 방법
KR102419908B1 (ko) 2020-06-10 2022-07-13 쿠팡 주식회사 동적 커뮤니티를 추적하기 위한 컴퓨터화된 시스템 및 방법
US11669916B2 (en) 2020-06-10 2023-06-06 Coupang Corp. Computerized systems and methods for tracking dynamic communities

Also Published As

Publication number Publication date
EP1944715A3 (en) 2010-03-24
CN101222321A (zh) 2008-07-16
US20080165958A1 (en) 2008-07-10
EP1944715A2 (en) 2008-07-16
JP4358239B2 (ja) 2009-11-04
US7961887B2 (en) 2011-06-14

Similar Documents

Publication Publication Date Title
JP4358239B2 (ja) コンテンツ提供システム、追跡システム、コンテンツ提供方法及び不正ユーザ特定方法
JP4630826B2 (ja) 復号鍵生成方法、コンテンツ提供側システム、ユーザ側システム、追跡システム、コンテンツ提供方法、暗号化コンテンツ復号方法、プログラム、暗号化装置及び復号装置
JP4434969B2 (ja) コンテンツ提供側システム、ユーザ側システム、追跡システム、装置、方法及びプログラム
Puteaux et al. An efficient MSB prediction-based method for high-capacity reversible data hiding in encrypted images
JP3749884B2 (ja) 電子透かし埋め込み装置、電子透かし解析装置、電子透かし埋め込み方法、電子透かし解析方法及びプログラム
US9639912B2 (en) Method for reversible image data hiding
JP3917507B2 (ja) コンテンツ提供側システム、ユーザ側システム、追跡システム、コンテンツ提供方法、暗号化コンテンツ復号方法、不正ユーザ特定方法、暗号化装置、復号装置及びプログラム
US8023655B2 (en) System, method, and service for tracing traitors from content protection circumvention devices
Zhang Commutative reversible data hiding and encryption
US20100043081A1 (en) Detecting and Revoking Pirate Redistribution of Content
KR20100017844A (ko) 데이터를 보호할 때 적용되는 프로그램 가능한 프로세싱 단계들을 정의하기위한 시스템 및 방법
Yang et al. Collusion resistant watermarking schemes for cryptographic functionalities
Hu et al. Asymmetric fingerprinting based on 1-out-of-n oblivious transfer
JP4025283B2 (ja) 符号埋込方法、識別情報復元方法及び装置
Shivani et al. Providing security and privacy to huge and vulnerable songs repository using visual cryptography
JP2003078520A (ja) コンテンツ暗号化方法及び装置と、コンテンツ復号方法及び装置と、コンテンツ配布方法及び装置と、コンテンツ違法コピー検査方法及び装置と、コンテンツ暗号化プログラム及びそのプログラムの記録媒体と、コンテンツ復号プログラム及びそのプログラムの記録媒体と、コンテンツ配布プログラム及びそのプログラムの記録媒体と、コンテンツ違法コピー検査プログラム及びそのプログラムの記録媒体
JP4750133B2 (ja) 電子透かし埋め込み装置、電子透かし検出装置、および電子透かしシステム
JP3822501B2 (ja) 識別情報復号装置及び識別情報復号方法、識別情報埋込装置及び識別情報埋込方法、並びにプログラム
US20090319805A1 (en) Techniques for performing symmetric cryptography
JP2007189597A (ja) 暗号化装置および暗号化方法、並びに復号化装置および復号化方法
JP6987330B1 (ja) 登録装置、検索操作装置、データ管理装置、登録プログラム、検索操作プログラムおよびデータ管理プログラム
US20210143977A1 (en) Method for encoding, transmitting and/or storing and decoding digital information in an unbreakable manner
Ye et al. Secure content sharing for social network using fingerprinting and encryption in the TSH transform domain
JP2002165081A (ja) 電子透かしシステム、電子透かし解析装置、電子透かし解析方法及び記録媒体
CN111586008A (zh) 一种区块链消息管理方法、节点设备及区块链节点系统

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080924

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081125

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

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

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

Free format text: PAYMENT UNTIL: 20120814

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120814

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20120814

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130814

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees