JP5093513B2 - 不正者失効システム、暗号化装置、暗号化方法およびプログラム - Google Patents

不正者失効システム、暗号化装置、暗号化方法およびプログラム Download PDF

Info

Publication number
JP5093513B2
JP5093513B2 JP2008520552A JP2008520552A JP5093513B2 JP 5093513 B2 JP5093513 B2 JP 5093513B2 JP 2008520552 A JP2008520552 A JP 2008520552A JP 2008520552 A JP2008520552 A JP 2008520552A JP 5093513 B2 JP5093513 B2 JP 5093513B2
Authority
JP
Japan
Prior art keywords
ciphertext
error
key
integer
tracking
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
JP2008520552A
Other languages
English (en)
Other versions
JPWO2007142170A1 (ja
Inventor
潤 古川
賢 尾花
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2008520552A priority Critical patent/JP5093513B2/ja
Publication of JPWO2007142170A1 publication Critical patent/JPWO2007142170A1/ja
Application granted granted Critical
Publication of JP5093513B2 publication Critical patent/JP5093513B2/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
    • 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/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/304Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy based on error correction codes, e.g. McEliece
    • 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
    • H04L2209/601Broadcast encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Storage Device Security (AREA)

Description

本発明は、2006年5月29日に提出された日本国特許出願第2006−148825号、2006年7月20日に提出された日本国特許出願第2006−198117号、及び2006年12月13日に提出された日本国特許出願第2006−335681号に基づき、且つ、その優先権の恩恵を主張するものであり、その開示は、参照することによりここにその全体を組み入れる。
技術分野:
本発明は、複数の受信装置が復号可能な暗号方式の不正者失効システム、暗号化装置、復号装置、不正者失効装置、暗号化方法、復号方法、不正者失効方法、およびこれらの方法をコンピュータに実行させるためのプログラムに関する。
放送型暗号方式は、同一の暗号文を、それぞれ異なる秘密鍵を持った複数の受信者が受信し、それぞれ復号した結果が同じ平文となる暗号方式である。
従来の放送型暗号化方式で任意のメンバ(会員)を失効できる方式として、非特許文献1(Dan Boneh,Craig Gentry,Brent Waters:Collusion Resistant Broadcast Encryption With Short Ciphertexts and Private Keys,Advances in Cryptology−CRYPTO 2005:25th Annual International Cryptology Conference,Santa Barbara,California,USA,August 14−18,2005,Proceedings.Lecture Notes in Computer Science 3621 Springer 2005,ISBN 3−540−28114−2,pp.258−275)に記されている放送型暗号方式が挙げられる。この方式では、最初に決められたメンバのうち、任意の集合に属するメンバのみに正しく復号できる暗号文を生成することが可能である。以下に、この暗号方式を簡単に説明する。
図11は従来の放送型暗号方式の一構成例を示すブロック図である。
図11に示す放送型暗号方式100は、管理者、暗号文生成者、多数の暗号文受信者が利用することを想定している。そして、放送型暗号方式100は、設定アルゴリズム105、暗号化アルゴリズム108および復号化アルゴリズム110を有する。これらのアルゴリズムの処理を各アルゴリズムに対応する情報処理装置がそれぞれ行う。
管理者は設定アルゴリズム105を用いて、公開鍵106及び、全ての暗号文受信者に関して個別の秘密鍵107を生成し(すなわち全員の秘密鍵の集合を生成する)、各自に秘密に渡す。
暗号文生成者は、メッセージ111とこれを配付したい暗号文受信者のみの集合(配付メンバ集合)103を決定する。次に、暗号文生成者は暗号化アルゴリズム108を用いて、メッセージ111と、公開鍵106と、配付したい受信者のみの集合を表すデータ103から放送型暗号文109を生成し、これを全ての受信者に放送する。なお、この暗号文109には、どの受信者が復号できるかが記されている。
全ての受信者は暗号文109を受信するが、自身がこの暗号文を復号できる受信者として記されている場合に限り以下の様にメッセージを復号する。受信者は、復号アルゴリズム110を用いて、自身に渡された秘密鍵107、受信した暗号文109(この暗号文には、どの受信者が復号できるかが記されている)から、メッセージ111を復元する。
一方、従来の放送型暗号化方式で不正者を追跡することができる方式として、非特許文献2(Dan Boneh,Amit Sahai,Brent Waters:Fully Collusion Resistant Traitor Tracing With Short Ciphertexts and Private Keys,Advances in Cryptology−EUROCRYPT 2006,Proceedings.Lecture Notes in Computer Science Springer 2006,インターネット<URL:http://eprint.iacr.org/2006/045>)に記されている不正者追跡暗号方式が挙げられる。この方式では、最初に決められたメンバのうち、任意の集合に属するメンバが各々の秘密鍵を持ち寄り、復号装置を違法に複製して海賊版を作ったとしても、この装置から少なくとも一人の海賊版作成に関わったメンバを特定できる。特に、このメンバを特定するためには、復号装置の海賊版の回路あるいはプログラムコードを直接調査することなく、暗号文を入力し、その出力を観測することでのみで十分である。以下に、この暗号方式を簡単に説明する。
図12は従来の放送型暗号方式の他の構成例を示すブロック図である。図12に示すように、放送型暗号方式200は、管理者、暗号文生成者、多数の暗号文受信者、不正者追跡者が利用することを想定している。そして、放送型暗号方式200は、設定アルゴリズム203と、暗号化アルゴリズム208と、復号アルゴリズム210と、ブラックボックス型不正者追跡アルゴリズム212とを有する。なお、各アルゴリズムの処理を情報処理装置が実行する。
管理者は設定アルゴリズム203を用いて、公開鍵204及び全ての暗号文受信者に関して個別の秘密鍵205を生成し(すなわち,全員の秘密鍵の集合を生成する)、各自に秘密に渡す。さらに、ブラックボックス型分生者追跡アルゴリズム212に、追跡鍵206を生成した上で渡す。
暗号文生成者は暗号化アルゴリズム208を用いて、メッセージ211と公開鍵204から放送型暗号文209を生成し、これを全ての受信者に放送する。なお、この暗号文209には、全ての受信者が復号できる。受信者は、復号アルゴリズム210を用いて、自身に渡された秘密鍵205、受信した暗号文209から、メッセージ211を復元する。
ある受信者が、自身の秘密鍵を使って、復号アルゴリズムを内蔵した復号装置、あるいは復号の為のプログラムを不正に作成し、他者に渡した場合を考える。以下、このプログラムあるいは装置を海賊版と呼ぶ。
不正者追跡者は、上記海賊版を入手し、これらから、自身の秘密鍵を悪用した不正者を発見したい。ただし、不正者追跡者は、プログラム自体を解読するような難しい作業を行うことは避ける。
ブラックボックス型不正者追跡アルゴリズム212は、追跡鍵206を用いて不正者追跡のために作られた特別な暗号文を複数生成し、それらを順番に海賊版に暗号文として入力する。海賊版はこの暗号文を復号しようとする。しかし、この特別な暗号文は、その復号結果が復号に使われた秘密鍵(1つとは限らない)205に依存するようにできている。そこで、この復号結果を解析することにより、不正に秘密鍵を流出させた受信者を特定することができる。
従来技術(1)の暗号方式の問題点は、メンバが自身の秘密鍵を用いて復号装置の海賊版を作成した場合、どのメンバの秘密鍵が使われているかを知るためには、装置の回路あるいはプログラムコードを直接調べなければならない可能性があることである。問題となる装置の回路あるいはプログラムコードに対して難読化処理が行われている場合、鍵の特定は非常に困難である。ただし、秘密鍵をいったん特定したならば、この秘密鍵を用いても復号できない暗号文を作る、すなわち、対応するメンバを失効することは容易である。これは、暗号文の配付メンバ集合から上記秘密鍵保持者を除外すれば十分であるからである。
従来技術(2)の暗号方式の問題点を説明する。いかなるメンバの集合が、彼らの秘密鍵を持ち寄って復号装置の海賊版を作成した場合にも、少なくとも1人のこれらメンバの秘密鍵を特定することは容易である。しかも装置の回路あるいはプログラムコードを直接調べる必要はなく、複数の暗号文を入力し、それがどのように復号されるかを観測するだけでよい。しかし、たとえ問題となっている秘密鍵を特定することができても、この秘密鍵で復号することができないような暗号文を作る、すなわち、対応するメンバを失効することは困難である。
上記2つの問題は互いに相反する関係にあり、一方の問題は他方では解決されている。しかしながら、両方の問題を同時に解決する方法は知られていない。
ここで、従来技術(1)の第1の方法と従来技術(2)の第2の方法を合わせることにより両方の問題を解決する自然な方法が成功しないことを説明する。
メッセージが与えられた暗号文生成者は、メッセージを第1の方法で暗号化し、さらにこれを第2の方式で暗号化するような方式がこの自然な方式に当たる。実際は、メッセージ自体を直接暗号化すると、メッセージが長い場合に計算量が膨大となるので、次のような方式となる。方式1でランダムな文字列K1を暗号化する。方式2でランダムな文字列K2を暗号化する。K=K1+K2を秘密鍵暗号方式の秘密鍵とする。そして、このKでメッセージを暗号化する。受信者は、方式1に対応している秘密鍵でK1を復号し、方式2に対応している秘密鍵でK2を復号し、両者からKを生成し、メッセージのKによる暗号文を復号する。
上記方法を用いると次のような不正者の失効が可能である。ある不正者Aが、方式1におけるAの秘密鍵A1を用いて復号することでK1を計算し、方式2におけるAの秘密鍵A2を用いて復号することでK2を計算し、結果的にKを求める海賊版を生成した場合を考える。不正者追跡者はこの海賊版を手に入れ、今後この不正者及び海賊版が暗号文を復号できなくなるようにしたい、すなわち、不正者の失効を行いたい。
不正者追跡者は、方式2のブラックボックス不正者追跡方法を用いて、海賊版の回路あるいはプログラムを直接解析することなく、Aの秘密鍵A2を特定する。そこで、この情報から以降の暗号文は方式1においてA1を用いてもK1が復号できないよう、Aが受信対象者から除外される様にK1を暗号化する。以降、海賊版はK2を求めることはできるが、K1を求めることができないため、Kを知ることはできない。
この不正者失効は、上記の例では有効に働いたが、次のような攻撃に対しては十分に有効ではない。ある不正者Aと不正者Bが結託して、方式1におけるAの秘密鍵A1を用いて復号することでK1を計算し、方式2におけるBの秘密鍵B2を用いて復号することでK2を計算し、結果的にKを求める海賊版を生成した場合を考える。不正者追跡者はこの海賊版を手にいれ、今後この不正者及び海賊版が暗号文を復号できなくなるようにしたい、すなわち、不正者の失効を行いたい。
不正者追跡者は、方式2のブラックボックス不正者追跡方法を用いて、海賊版の回路あるいはプログラムを直接解析することなく、Bの秘密鍵B2を特定する。そこで、この情報から以降の暗号文は方式1においてB1を用いてもK1が復号できないよう、Bが受信対象者から除外される様にK1を暗号化する。もちろん海賊版を募集して、現実世界のBを特定することができればBを罰することもできる。しかし、海賊版が多く複製されて広く配付されてしまっている場合、次のように本海賊版はメッセージを復号し続けることができる。
まず、方式1におけるAの秘密鍵A1を用いて復号することでK1が計算できる。なぜならK1を復号できなくなったのは、鍵B1によってであって、A1によってではない。次に、方式2におけるBの秘密鍵B2を用いて復号することでK2を計算し、結果的にKを求めることができる。すなわち、何度新しく海賊版の複製を発見したところで、Bを再度特定するだけであってAを特定し、A1を失効させることはできない。
すなわち、上記の不正者失効者は、不正者を少なくとも1つ追跡することには成功したが、この不正装置を失効するには至らなかったと言える。このような方式では、海賊版が大量にインターネット上で配付されるような事態に対処することは難しく、問題である。
本発明は上述したような従来の技術が有する問題点を解決するためになされたものであり、プログラムや装置の不正複製を防止する不正者失効システム、暗号化装置、復号装置、不正者失効装置、暗号化方法、復号方法、不正者失効方法、およびプログラムを提供することを目的とする。
上記目的を達成するための本発明の不正者失効システムは、
登録された会員のうち暗号文の復号を許可された会員の情報である配付メンバ集合データ、乱数および公開鍵が格納された記憶部と、共有鍵またはメッセージの少なくともいずれかが入力されると、該共有鍵または該メッセージ、前記配付メンバ集合データ、および会員毎に異なる情報である誤差情報を含む暗号文である誤差付暗号文と該誤差情報の暗号文である誤差修正暗号文とを生成して配付する制御部とを有する暗号化装置と、
前記暗号化装置と接続され、前記公開鍵および自装置に対応する秘密鍵が格納された記憶部と、前記誤差付暗号文および前記誤差修正暗号文を前記暗号化装置から受信すると、前記配付メンバ集合データに自装置が含まれているか否かを判定し、該配付メンバ集合データに自装置が含まれていると、前記公開鍵および前記秘密鍵により前記誤差付暗号文および前記誤差修正暗号文を復号し、復号した誤差付暗号文から前記誤差情報を取り除いて前記共有鍵または前記メッセージを出力する制御部とを有する復号装置と、
を含む構成である。
本発明では、メンバ集合データに自装置が含まれていなければ暗号文を復号しないので、メンバ集合データを不正者が除かれたデータである場合には不正者の復号装置だけ暗号文を復号できなくなる。
一方、上記目的を達成するための本発明の不正者失効装置は、登録された会員の復号装置のうち不正処理を行う復号装置を特定するための不正者失効装置であって、
元になる共有鍵である追跡用共有鍵または元になるメッセージである追跡用メッセージの少なくともいずれかの情報、前記復号装置毎に異なる識別番号の情報を含む配付メンバ集合データ、公開鍵、および不正者を判定するための基準となる閾値が格納された記憶部と、
不正処理を行うと有意な確率で正しい共有鍵またはメッセージを出力できない追跡用暗号文を前記公開鍵を用いて生成し、前記復号装置毎に該追跡用暗号文を複数送信し、該復号装置から共有鍵またはメッセージを複数受信すると、受信した複数の共有鍵と前記追跡用共有鍵との一致する確率、または、受信した複数のメッセージと前記追跡用メッセージとの一致する確率を算出し、隣り合う前記識別番号の復号装置間で該確率の差が前記閾値より小さいか否かを判定し、該閾値より大きい確率の復号装置を失効対象と判定する制御部と、
を有する構成である。
本発明では、不正者の復号装置が暗号文を復号すると、復号した共有鍵またはメッセージが元の情報と一致する確率が他の復号装置と比較して極端に異なる値になる。その結果、不正者の復号装置を特定することが可能となる。
本発明では、違法にプログラムや装置を複製する不正者を特定すれば、不正者を含むメンバ全員に暗号文を配付しても、不正者だけ暗号文を復号できなくすることができる。その後の不正者による、暗号文の違法な復号を防止できる。
図1は実施形態1、3および5の不正者失効システムの一構成例を示すブロック図である。
図2は実施形態1から6のメンバ追加装置の一構成例を示すブロック図である。
図3は実施形態1、3および5の暗号化装置の一構成例を示すブロック図である。
図4は暗号化装置の動作手順を示すフローチャートである。
図5は実施形態1、3および5の復号装置の一構成例を示すブロック図である。
図6は復号装置の動作手順を示すフローチャートである。
図7は実施形態2、4および6の不正者失効システムの一構成例を示すブロック図である。
図8は実施形態2、4および6の不正者失効装置の一構成例を示すブロック図である。
図9は不正者失効装置の動作手順を示すフローチャートである。
図10は不正者失効装置による不正者探索の動作手順を示すフローチャートである。
図11は従来の放送型暗号方式の一構成例を示すブロック図である。
図12は従来の放送型暗号方式の他の構成例を示すブロック図である。
[記法]
最初に記法を説明する。
pとqを異なる素数とし、nをn=pqなる合成数とする。GとGを位数nの巡回群とする。G’を異数qとなるGの部分群とし、G’を異数qとなるGの部分群とする。G’’を異数pとなるGの部分群とする。gをGの生成元の一つとし、g’をG’の生成元の一つとし、g’’をG’’の生成元の一つとし、gをGの生成元の一つとし、g’をG’の生成元の一つとする。
ここで、Gを加法的巡回群、Gを乗法的巡回群であるとする。g∈Gのα倍を[α]gと表し、g∈Gのα乗をgαと表す。
eをG掛けるGからGへの非縮退な双線形写像であるとする。ここで、双線形であるとは、全てのα,β∈Z/qZ及びg,g∈Gに対して、
e([α]g,[β]g)=e(g,g)αβが成り立つことである。
また、非縮退であるとは、e(g,g)がGの生成元となるということである。
Lを整数、∧を二つの集合{1,...,L}と{1,...,L}の直積とする。すなわち、∧の要素は、二つの1からLまでの数、たとえば、iとjで(i,j)のように指定される。故に、∧の要素はL個ある。
⊆∧を(i,j)、ただし、i∈{1,...,L}と表せる∧の部分集合とする。また、∧の各要素(i,j)と、各メンバが一対一で対応しているとする。∧の要素の数はLであるため、メンバの数のLと表せる必要があるように見えるが、メンバ数よりLが大きくなるようにLを選び、余計なメンバを形式的なものとすることで使用しなければ、任意のNを選ぶことができる。
A^BはAと同義とする。
(実施形態1)
本実施形態の不正者失効システムの構成を説明する。図1は本実施形態の不正者失効システムの一構成例を示すブロック図である。
図1に示すように、不正者失効システムは、メンバ追加装置300と、暗号化装置400と、複数の復号装置500とを有する。複数の復号装置500は同一の構成であるため、図1では復号装置を1台だけ示している。各装置は、ネットワークなどの通信回線で接続されている。以下に、各構成を詳細に説明する。
はじめに、メンバ追加装置300の構成を説明する。図2はメンバ追加装置300の一構成例を示すブロック図である。
図2に示すように、メンバ追加装置300は、記憶部320と、制御部321と、入力部322と、出力部323とを有する。入力部322および出力部323は、ネットワークを介して外部とデータを送受信するための通信部を構成する。制御部321は、プログラムにしたがって所定の処理を実行するCPU(Central Processing Unit)(不図示)と、プログラムを格納するためのメモリ(不図示)とを有する。
制御部321は、ドメイン変数生成手段303と、ランダム要素生成手段305と、諸鍵生成手段307と、秘密鍵生成手段312とを有する。ドメイン変数生成手段303、ランダム要素生成手段305、諸鍵生成手段307および秘密鍵生成手段312は、CPUがプログラムにしたがって処理を実行することでメンバ追加装置300内に仮想的に構成される。
秘密鍵生成手段312は、配付メンバ集合に属するメンバに対応した鍵である秘密鍵をメンバ毎に生成する。
記憶部320には、制御部321の処理過程において算出されるドメイン変数304、ランダム要素403、諸鍵308およびメンバ追加鍵311の他に、外部から受信する情報が格納される。
次に、メンバ追加装置300の動作を説明する。
最大メンバ数変数L(301)と乱数302が外部から入力される。Lは、本実施形態のシステムが扱う対象となるメンバの数をNとしたとき、N<L+1となる整数Lである。
ドメイン変数生成手段303が、L,p,q,n,G,G,eを決定する。すなわち、これらを指定するドメイン変数304を生成する。続いて、ランダム要素生成手段305が、乱数302およびドメイン変数304を用いて、
の生成元g,h,
’の生成元g’,h’,
’’の生成元g’’,
の生成元g
’の生成元g’,
及び、
η∈Z/qZ,
α∈Z/nZ,
(βj=1,...,L∈(Z/nZ)
(δj=1,...,L∈(Z/nZ)
(γj=1,...,L∈(Z/nZ)
であるランダム要素306を一様無作為に生成する。
その後、諸鍵生成手段307が、ドメイン変数304とランダム要素306を用いて、
(gi=1,...,2L=([α]g)i=1,...,2L
m’=[η]g’,
(mi=1,...,2L=([ηα]g)i=1,...,2L
(g’i=1,...,2L=([α]g’)i=1,...,2L
(v’i=1,...,2L=([αη]g’)i=1,...,2L
(b’j=1,...,L=([βη]g’)j=1,...,L
(dj=1,...,L=([δ]g)j=1,...,L
(w’j=1,...,L=([ηδ]g’)j=1,...,L
(yi=1,...,L=([γ]g)i=1,...,L
(z’i=1,...,L=([ηβ]h’)i=1,...,L
m=[η]g,
(wj=1,...,L=([ηδ]g)j=1,...,L
(bj=1,...,L=([βη]m)j=1,...,L
(zj=1,...,L=([ηβ]H)j=1,...,L
である諸鍵308を生成する。
続いて、諸鍵生成手段307が、ランダム要素306と諸鍵308のデータから公開鍵309、メンバ追加鍵311、追跡鍵310を以下のように選んで出力する。
公開鍵309:
PKEY=(L,g,h,m’,(g,m,g’,v’i=1,...,L,L+2,...,2L,(yi=1,...,L,(b’,d,w’,z’j=1,...,L
メンバ追加鍵311:MKEY=(α,(δ,βj=1,...,L,(γi=1,...,L
追跡鍵310:TKEY=(g’,h’,g’’,m,(w,b,zj=1,...,L
さらに、秘密鍵生成手段312は、公開鍵309とメンバ追加鍵311を用いて、全ての(i,j)∈∧に対して秘密鍵313:SKEY[ij]=kij=[δα+βγ]gを生成し、これらの集合を出力する。
次に、暗号化装置400の構成を説明する。図3は暗号化装置400の一構成例を示すブロック図である。
図3に示すように、暗号化装置400は、記憶部420と、制御部421と、入力部422と、出力部423とを有する。入力部422および出力部423は、ネットワークを介して外部とデータを送受信するための通信部を構成する。制御部421は、プログラムにしたがって所定の処理を実行するCPU(不図示)と、プログラムを格納するためのメモリ(不図示)とを有する。
制御部421は、ランダム要素生成手段402と、共有鍵生成手段404と、誤差付暗号文生成手段406と、誤差修正暗号文生成手段409とを有する。ランダム要素生成手段402と、共有鍵生成手段404と、誤差付暗号文生成手段406と、誤差修正暗号文生成手段409は、CPUがプログラムにしたがって処理を実行することで暗号化装置400内に仮想的に構成される。記憶部420には、制御部421の処理過程において算出されるランダム要素403の他に、外部から受信する情報が格納される。
誤差付暗号文生成手段406は、共有鍵またはメッセージの少なくともいずれかと、暗号文の復号が許可されたメンバの集合を表すデータである配付メンバ集合データと、公開鍵309とを含むデータとが入力されると、共有鍵405またはメッセージの少なくともいずれかを含む暗号文の一種である誤差付暗号文407を生成する。配付メンバ集合データには、メンバ毎に異なる識別子の情報が含まれている。
誤差付暗号文407は、配付メンバ集合に属するメンバ毎に異なる情報である誤差情報を、共有鍵405またはメッセージの少なくともいずれかに付加したデータの暗号文である。そして、配付メンバ集合に属する各メンバの秘密鍵でそれぞれ復号できるように、これらのメンバ集合に依存した方法で暗号化されている。また、誤差付暗号文407には、配付メンバ集合データも含まれている。
誤差修正暗号文生成手段409は、公開鍵309を含むデータが入力されると、誤差修正暗号文408を生成する。誤差修正暗号文410は、上記誤差情報の暗号文である。各メンバの復号装置500はそれぞれの秘密鍵で誤差修正暗号文408を復号することで、各自に対応した誤差情報を得ることが可能となる。
なお、本実施形態では、共有鍵を生成してこれを暗号化する場合の詳細を記しているが、別途メッセージを入力してこれを共有鍵と置き換えて暗号化することとしてもよい。また、公開鍵309はメンバ追加装置300により生成されたものである。
次に、暗号化装置400の動作を説明する。図4は暗号化装置の動作手順を示すフローチャートである。
配付メンバ集合S⊂∧を表すデータである配付メンバ集合401と、乱数411とが外部から入力され、メンバ追加装置300から公開鍵309が入力されると、共有鍵生成手段404が、公開鍵309と乱数411を用いて、共有鍵405:K∈G,を一様無作為に生成する。また、ランダム要素生成手段402が、公開鍵309と乱数411を用いて、(σj=1,...,L∈(Z/nZ)、(εi=1,...,L∈(Z/nZ)およびτ∈Z/nZを含むランダム要素403を一様無作為に生成する(ステップ1001)。
続いて、誤差付暗号文生成手段406は、共有鍵405、公開鍵309、ランダム要素403および配付メンバ集合401を用いて、誤差付暗号文407を生成する(ステップ1002)。誤差付暗号文407の要素は、S及び全てのi=1,...,Lに関するC=Ke(g’,m)^(στ)、e’=[στ]m’、f’=[στ](w’+Σ∩∧v’L+1−k)、およびr’=[σ]b’,t’=[σ]z’である。
また、誤差修正暗号文生成手段409は、公開鍵309およびランダム要素403を用いて、誤差修正暗号文408を生成する(ステップ1003)。誤差修正暗号文408の要素は、全てのj=1,...,Lに関するs=[τ]y+[ε]h、u=[ε]gである。なお、ステップ1002とステップ1003の処理はいずれが先であってもよい。
続いて、制御部421は、誤差付暗号文407および誤差修正暗号文408を含む共有鍵暗号文410:HDR(S)=(S,(C,e’,f’,r’,t’j=1,...,L,(s,ui=1,...,L)を出力する。また、生成した共有鍵405を出力する(ステップ1004)。
次に、復号装置500の構成を説明する。図5は復号装置500の一構成例を示すブロック図である。
図5に示すように、復号装置500は、記憶部520と、制御部521と、入力部522と、出力部523とを有する。入力部522および出力部523は、ネットワークを介して外部とデータを送受信するための通信部を構成する。制御部521は、プログラムにしたがって所定の処理を実行するCPU(不図示)と、プログラムを格納するためのメモリ(不図示)とを有する。
制御部521は、誤差付暗号文復号手段501と、誤差修正手段503とを有する。誤差付暗号文復号手段501および誤差修正手段503は、CPUがプログラムにしたがって処理を実行することで復号装置500内に仮想的に構成される。記憶部520には、制御部521の処理過程において算出される誤差付共有鍵502の他に、外部から受信する情報が格納される。また、メンバとして登録された自装置の識別子が格納されている。
誤差付暗号文復号手段501は、誤差付暗号文407、公開鍵309、および秘密鍵313が入力されると、誤差付共有鍵502または誤差付メッセージの少なくともいずれかを出力する。誤差付共有鍵502は、配付メンバ集合に属するメンバ毎に異なる情報である誤差情報が付加された共有鍵である。誤差付メッセージは、誤差情報が付加されたメッセージである。
誤差修正手段503は、誤差付共有鍵502と、公開鍵309と、秘密鍵313と、誤差修正暗号文408とが入力されると、秘密鍵313で誤差修正暗号文408を復号して誤差情報を取り出し、誤差付共有鍵502から誤差情報を取り除いた共有鍵を出力する。また、誤差付メッセージが入力される場合には、誤差付メッセージから誤差情報を取り除いたメッセージを出力する。
なお、本実施形態では、復号されるデータが共有鍵である場合で説明しているが、共有鍵をメッセージと見なしてもよい。また、公開鍵309および秘密鍵313はメンバ追加装置300により生成されたものである。
次に、復号装置500の動作を説明する。図6は復号装置の動作手順を示すフローチャートである。
共有鍵暗号文HDR(S)(410)が暗号化装置400から入力され、公開鍵PKEY(309)および秘密鍵SKEY[ij](313)がメンバ追加装置300から入力される。ここで、各メンバの識別子となるインデックス(i,j)∈Sであるとする。誤差付暗号文復号手段501が、配付メンバ集合401に自装置の識別子の情報が含まれているか否かを判定する(ステップ1101)。配付メンバ集合401に自装置の識別子の情報が含まれている場合、ステップ1102に進み、含まれていない場合、暗号文の復号をせずに処理を終了する。
ステップ1102で、誤差付暗号文復号手段501が、誤差付暗号文407、公開鍵309および秘密鍵313を用いて、誤差付共有鍵K’(502):K’=C(e(e’,kij+Σi,k∩∧L+1−k+i)/e(g,f’))を生成する。
続いて、誤差修正手段503が、誤差付共有鍵502、公開鍵309および秘密鍵313を用いて、共有鍵K(405):K=K’(e(t’,u)/e(r’,s))を生成する。その後、制御部521は、共有鍵K(405)を出力する(ステップ1103)。
次に、本実施形態の不正者失効システムの動作を、図1を参照して説明する。
メンバ追加装置300は、最大メンバ数変数301および乱数302が入力されると、公開鍵309、追跡鍵310、及び各インデックス(i,j)∈∧に対する秘密鍵313を生成する。
各インデックス(i,j)に対して、復号装置500の1つが対応し、(i,j)に対応する復号装置500には、公開鍵309と秘密鍵SKEY[ij](313)が入力される。
暗号化装置400は、どの復号装置500に共有鍵を配付したいかを示す配付メンバ集合S(401)と、公開鍵309とが入力されると、共有鍵暗号文410と共有鍵405を生成する。続いて、暗号化装置400は、共有鍵暗号文410をブロードキャストチャンネルを用いて配付する。
なお、この共有鍵405と共通鍵暗号システムを用いれば、任意のメッセージを配付メンバ集合に対して配付することが可能だが、この処理方法については、本発明の対象でないので詳細な説明を省略する。
各復号装置500は、配付された共有鍵暗号文410を受信すると、配付メンバ集合Sに自装置に対応するインデックス(i,j)が含まれているか否かを判定する。配付メンバ集合Sに自装置のインデックス(i,j)が含まれている場合、秘密鍵313と公開鍵309とを用いて共有鍵暗号文410から共有鍵405を求める。一方、配付メンバ集合Sに自装置のインデックス(i,j)が含まれていない場合、暗号化された共有鍵の復号処理を行わない。
例えば、メンバのうちの不正者が明らかになった場合、配付メンバ集合Sからその不正者のインデックスを取り除くことにより、その後、暗号化装置はこの不正者が取り除かれた集合のみが復号できる暗号文を生成することができる。
本実施形態の不正者失効システムは、上述のようにして、「任意のメンバを失効できる暗号方式」の暗号文と「不正者をブラックボックス追跡可能な暗号方式」の暗号文とをリンクさせることが可能となる。それは、前者の暗号方式の暗号文を復号しただけでは受信者の持つ鍵に依存した雑音が残ることに対して、後者の暗号方式の暗号文を復号してその雑音をはじめて消去できるという関係にあるからである。このように、雑音によって両方の暗号文が関連づけられるので、後者の暗号方式により不正者を追跡し、特定した不正者を前者の暗号方式で失効することが可能となる。
本発明の暗号化装置や復号装置を、有料のDVDやCDを再生する再生装置に限らず、ケーブルテレビ、衛星放送、一般の放送の送信装置や受信装置に適用することが可能である。受信料を支払う利用者に本発明の復号装置の機能を備えた受信装置を配付する。この受信装置の配付を受けた利用者、または、本発明の復号装置の機能を備えた受信装置を購入した利用者は、受信装置に視聴対象を受信させて試聴する。
このような場合に、利用者が自分の受信装置に含まれるデータから新たな受信装置を作って、他人に配布した場合を考える。特に、インターネットに復号プログラムを配布した場合を考える。従来技術(1)の方式を使った場合、インターネット上の復号プログラムを発見しても、不正者を発見できるとは限らない。また、従来技術(2)の方式を使った場合、不正者を発見できるが、インターネット上に広くばらまかれた復号プログラムは有効に働き続けるため、被害を食い止めることはできない。しかし、本発明を使えば、上述したように、広く配布されたプログラムに対して、それ以降の放送内容を復号できなくすることができる。
また、受信装置の海賊版が作られた場合、この海賊版の具体的な回路やプログラムコードを直接見なくても、この海賊版には復号できないが、他の受信装置には引き続き復号可能な暗号文を配付することで、海賊版を失効させることが可能となる。
本発明では、違法にプログラムや装置を複製する不正者を特定し、不正者を含むメンバ全員に暗号文を配付しても、不正者だけ暗号文を復号できなくすることができる。その後の不正者による、暗号文の違法な復号を防止できる。
(実施形態2)
本実施形態の不正者失効システムの構成を説明する。図7は本実施形態の不正者失効システムの一構成例を示すブロック図である。
図7に示すように、不正者失効システムは、不正者失効装置600と、複数の復号装置と、メンバ追加装置300とを有する。不正者失効装置600、複数の復号装置、およびメンバ追加装置300は、ネットワークなどの通信回線で接続されている。図7では、復号装置を1台だけ示している。不正者失効装置600は、通信回線を介して、実施形態1で説明したメンバ追加装置300と接続されている。復号装置803は、実施形態1で説明した複数の復号装置500のうち、不正であるとされているものに相当する。
次に、不正者失効装置600の構成を説明する。図8は不正者失効装置600の一構成例を示すブロック図である。
図8に示すように、不正者失効装置600は、記憶部620と、制御部621と、入力部622と、出力部623とを有する。入力部622および出力部623は、ネットワークを介して外部とデータを送受信するための通信部を構成する。制御部621は、ブログラムにしたがって所定の処理を実行するCPU(不図示)と、プログラムを格納するためのメモリ(不図示)とを有する。
制御部621は、追跡用ランダム要素生成手段604と、追跡用共有鍵生成手段606と、追跡用誤差付暗号文生成手段608と、追跡用誤差修正暗号文生成手段609とを有する。追跡用ランダム要素生成手段604、追跡用共有鍵生成手段606、追跡用誤差付暗号文生成手段608および追跡用誤差修正暗号文生成手段609は、CPUがプログラムにしたがって処理を実行することで不正者失効装置600内に仮想的に構成される。記憶部620には、制御部621の処理過程において算出されるランダム要素605の他に、外部から受信する情報が格納される。また、不正者を判定するための基準となる閾値が予め格納されている。
追跡用共有鍵生成手段606は、公開鍵309と乱数601とが入力されると、追跡用共有鍵607または追跡用メッセージの少なくともいずれかを出力する。追跡用共有鍵607は、元になる共有鍵として記憶部620に格納される。
追跡用誤差付暗号文生成手段608は、共有鍵またはメッセージの少なくともいずれかと、配付メンバ集合データと、検査インデックス603と、公開鍵309を含むデータとが入力されると、共有鍵またはメッセージのうち少なくともいずれかの暗号文の一種である追跡用誤差付暗号文610を生成する。
追跡用誤差修正暗号文生成手段609は、検査インデックス603と、追跡鍵310と、公開鍵309を含むデータとが入力されると、追跡用誤差修正暗号文611を生成する。追跡用誤差付暗号文610および追跡用誤差修正暗号文611を含む暗号文を追跡用共有鍵暗号文612と称する。
本実施形態では、登録されたメンバから、追跡用共有鍵暗号文612の送信対象となるメンバを部分集合として抽出し、これを配付メンバ集合602とする。検査インデックス603は配付メンバ集合602に属するメンバの識別番号である。なお、登録されたメンバ全員を配付メンバ集合602としてもよい。
追跡用誤差付暗号文610は、配付メンバ集合602に属するメンバ毎に異なる情報である誤差情報を、共有鍵またはメッセージの少なくともいずれかに付加したデータの暗号文である。追跡用誤差付暗号文610には、配付メンバ集合データも含まれている。
不正者失効装置600の制御部621は、各検査インデックス603の復号装置に対して複数個の追跡用暗号文を生成し、繰り返し送信する。そして、復号装置からの共有鍵の情報を収集し、受信した複数の共有鍵と追跡用共有鍵607との一致する確立を算出する。そして、隣り合う検査インデックス603の復号装置間で確率の差が閾値より小さいか否かを判定し、閾値より大きい確率の復号装置を失効対象とする。
次に、本実施形態の復号装置について説明する。なお、復号装置の構成は、実施形態1で説明した復号装置500と同様であるため、ここでは、実施形態1の場合と異なる動作を説明する。不正対象の復号装置803は、追跡用共有鍵暗号文612が与えられたとき、有意な確率で正しい共有鍵を出力できないものとする。一方、不正対象でない復号装置500は、有意な確率で正しい共有鍵を出力することが可能である。
なお、本実施形態では、共有鍵に対応する追跡用共有鍵を生成する場合で説明しているが、共有鍵をメッセージと見なしてもよい。また、公開鍵309および追跡鍵310はメンバ追加装置300により生成されたものである。
次に、不正者失効装置600の動作を説明する。図9は不正者失効装置の動作手順を示すフローチャートである。
検査インデックス(I,J)∈S(603)の情報を含む配付メンバ集合S⊂∧(602)と、乱数601とが外部から入力され、メンバ追加装置300から公開鍵309および追跡鍵310が入力される。
追跡用共有鍵生成手段606は、公開鍵309および乱数601を用いて、追跡用共有鍵607:K∈G’を一様無作為に生成する(ステップ1201)。
また、追跡用ランダム要素生成手段604は、公開鍵309、乱数601および検査インデックス603を用いて、追跡用のランダム要素605を一様無作為に生成する(ステップ1202)。追跡用のランダム要素605は、(σj=1,...,L∈(Z/nZ)、(σ’j=1,...,J−1∈(Z/nZ)J−1、τ∈Z/nZ、(Kj=1,...,J−1∈(G’)J−1、(ε1,...,L∈(Z/nZ)、および(μi=1,...,l]∈(Z/nZ)である。
なお、ステップ1201とステップ1202の処理はいずれが先であってもよい。
そして、追跡用誤差付暗号文生成手段608は、追跡用共有鍵607、公開鍵309、ランダム要素605、検査インデックス603および配付メンバ集合S(602)を用いて、追跡用誤差付暗号文610:(S,C,e’,f’,r’,t’j=1,...,Lを次のように生成する(ステップ1203):
j>Jに関しては、
=Ke(g’,m)^{στ},
e’=[στ]m’,
f’=[στ](w’+Σ_{k∈S∩∧}v’L+1−k),
r’=[σ]b’
t’=[σ]z’と生成する。
j=Jに関しては、
=Ke(g,m)^{στ}、
e’=[στ]m、
f’=[στ](w+Σ∩∧L+1−k)、
r’=[σ]b
t’=[σ]zと生成し、
j<Jに関しては、
=Ke(g,m)^{στ},
e’=[στ]m,
f’=[στ](w+Σ∩∧L+1−k),
r’=[σ’]b
t’=[σ’]zと生成する。
また、追跡用誤差修正暗号文生成手段609は、公開鍵309、追跡鍵310、ランダム要素605および検査インデックス603を用いて、追跡用誤差修正暗号文611:(s,ui=1,...,Lを次のように生成する(ステップ1204):
i≧Iに関しては、s=[τ]y+[ε]h,u=[ε]gを生成し、
i<Iに関しては、s=[τ]y+[ε]h+[μ]g’’,u=[ε]gを生成する。
なお、ステップ1203とステップ1204の処理はいずれが先であってもよい。
続いて、制御部621は、追跡用誤差付暗号文610および追跡用誤差修正暗号文611を含む追跡用共有鍵暗号文612
HDR[S,I,J]=(S,(C,e’,f’,r’,t’j=1,...,L,(s,ui=1,...,L
を出力する。また、生成した追跡用共有鍵607を出力する(ステップ1205)。
次に、不正者失効システムにおいて、不正者失効装置600による不正者を探索するための動作を説明する。図10は不正者失効装置による不正者探索の動作手順を示すフローチャートである。ここでは、便宜上、初期値としてi=0、j=0を設定している。図7では、不正者失効装置600と復号装置803とが行う処理を模式的に示している。この不正者失効システムでは配付メンバ集合S=Sとする。
不正者失効装置600が次のような動作を行う。iとjについて初期値を設定する(ステップ1301)。
(1)i=1からLまでiに関して順に(2)から(3)の処理をする(ステップ1302およびステップ1309)。なお、ステップ1302で、iが1増える度にjを初期値に戻す。
(2)j=1からLまでjに関して順に(3)の処理をする(ステップ1303およびステップ1308)。
(3)以下の(i)から(ii)の処理(ステップ1304)を多数繰り返し、復号装置803の出力する共有鍵806が追跡用共有鍵607と一致する確率を求める(ステップ1305)。結果、一致する確率がb=0の場合とb=1の場合で無視できないほど異なっていれば、Sから検査インデックス(i,j)のメンバを除いた集合を新たにSとし、(1)に戻る。結果、一致する確率の違いが無視できるほどであれば、何もせずに(3)を終了する(ステップ1306)。検査インデックス(i,j)と検査インデックス(i,j+1)の間で上記確率の値が大きく異なる場合、検査インデックス(i,j)のメンバは不正者から除外され、検査インデックス(i,j+1)のメンバが不正者として推定され、検査インデックス(i,j+1)のメンバがSに残ることになる(ステップ1307)。一致する確率の違いが無視できるかできないかは、閾値を基準にして判定する。
(i)b∈{0,1}をランダムに選び、Sと(i,j+b)と公開鍵309と追跡鍵310とを用いて、追跡用共有鍵暗号文612と追跡用共有鍵607を求める。ただし、j=Lの場合、(i,L+1)は、(i+1,0)と読み直す。
(ii)追跡用共有鍵暗号文612を復号装置803に送信し、その出力を追跡用共有鍵607と比較する。
(4)最後に変更が加えられたSを出力する。このSが失効対象のメンバ集合となる。
このようにして、不正者失効装置600は、共有鍵暗号文を復号できなくなるような復号装置803の集合である失効済配付メンバ集合S⊂S(807)を求める。
本実施形態の不正者失効システムは、不正者失効装置が、配付メンバ集合に対して、復号装置が不正処理を行うと有意な確率で正しい共有鍵を出力できない暗号文を出力する。不正者の復号装置が暗号文を復号すると、復号した共有鍵またはメッセージが元の情報と
一致する確立が他の復号装置と比較して極端に異なる値になる。その結果、不正者の復号装置を検出することが可能となる。これにより実施形態1と同様な効果を得ることができる。
(実施形態3)
本実施形態で用いられる記法について説明する。
pとqを異なる素数、nをn=pqなる合成数とする。GとGを位数nの巡回群とする。G’を異数qとなるGの部分群とし、G’を異数qとなるGの部分群とする。G’’を異数pとなるGの部分群とする。G’’をG’’の生成元の一つとする。ここで、Gを加法的巡回群、Gを乗法的巡回群であるとする。G’∈Gのα倍を[α]G’と表し、g∈Gのα乗をgαと表す。
eをG掛けるGからGへの非縮退な双線形写像であるとする。ここで、双線形であるとは、全てのα,β∈Z/qZ及びG,H∈Gに対して、
e([α]G,[β]H)=e(G,H)αβが成り立つことである。
また、非縮退であるとは、GがGの生成元であるとき、e(G,G)がGの生成元となるということである。
Lを整数、∧を二つの集合{1,...,L}と{1,...,L}の直積とする。すなわち、∧の要素は、二つの1からLまでの数、たとえば、iとjで(i,j)のように指定される。故に、∧の要素はL個ある。
⊆∧を(i,j)、ただし、i∈{1,...,L}と表せる∧の部分集合とする。また、∧の各要素(i,j)と、各メンバが一対一で対応しているとする。∧の要素の数はLであるため、メンバの数のLと表せる必要があるように見えるが、メンバ数よりLが大きくなるようにLを選び、余計なメンバを形式的なものとすることで使用しなければ、任意のNを選ぶことができる。
A^BはAと同義とする。
∧の部分集合S⊂∧に対して、Sは∧\S、すなわち∧におけるSの補集合を表すものとする。
次に、本実施形態の不正者失効システムについて説明する。なお、本実施形態の不正者失効システムは図1に示す構成と同様であるため、図1から図6を参照し、実施形態1と比べて異なる構成および動作を中心に説明する。
図1に示すように、本実施形態の不正者失効システムは、メンバ追加装置300と、暗号化装置400と、複数の復号装置500とを有する。複数の復号装置500は同一の構成であるため、図1では復号装置を1台だけ示している。各装置は、ネットワークなどの通信回線で接続されている。各装置の構成は実施形態1と同様であるため、ここではその詳細な説明を省略する。
次に、メンバ追加装置300の動作を説明する。
最大メンバ数変数L(301)と乱数302が外部から入力される。Lは、本実施形態のシステムが扱うメンバの数をNとしたとき、N<L+1となる整数Lである。
ドメイン変数生成手段303が、L,p,q,n,G,G,eを決定する。すなわち、これらを指定するドメイン変数304を生成する。メンバは1からLまでの整数二つのなす対によって指定される。
続いて、ランダム要素生成手段305が、乱数302とドメイン変数304を用いて、
の生成元G,H,M,
’の生成元G’,H’,
’’の生成元G’’,
及び、
ξ∈Z/nZ,
α∈Z/nZ,
(βj=1,...,L∈(Z/nZ)
(δj=1,...,L∈(Z/nZ)
(γj=1,...,L∈(Z/nZ)
(θk=1,...,L∈(Z/nZ)
であるランダム要素306を一様無作為に生成する。
その後、諸鍵生成手段307が、ドメイン変数304とランダム要素306を用いて、
H=[ξ]G
H’=[ξ]G’
m=e(G,M)
m’=e(G’,M)
(Bj=1,...,L=([β]G)j=1,...,L
(Hj=1,...,L=([β]H)j=1,...,L
(B’j=1,...,L=([β]G’)j=1,...,L
(H’j=1,...,L=([β]H’)j=1,...,L
(Gi=1,...,2L=([α]G)i=1,...,2L
(G’i=1,...,2L=([α]G’)i=1,...,2L
(Dj=1,...,L=([δ]G)j=1,...,L
(D’j=1,...,L=([δ]G’)j=1,...,L
(Ji=1,...,L=([γ]G)i=1,...,L
(Xk,ik=1,...,L:i=1,...,2L=([θα]G)i=1,...,2L
である諸鍵308を生成する。
この諸鍵308がk毎に無作為に生成されたθと定数αの冪乗αの積に比例する鍵Xk,iとを含んでいることが、本実施形態の大きな特徴である。
続いて、諸鍵生成手段307が、ランダム要素306と諸鍵308のデータから公開鍵309、メンバ追加鍵311、追跡鍵310を以下のように選んで出力する。
公開鍵309:PKEY={L,n,m,m’,G,H,G’,(B,H,B’,H’j=1,...,L,(G,G’i=1,...,L,L+2,...,2L,(D,D’i=1,...,L,(Ji=1,...,L,(Xk,ik=1,...,L,i=1,...,2L
メンバ追加鍵311:MKEY=(M,α,(δ,βj=1,...,L,(γi=1,...,L,(θk=1,...,L
追跡鍵310:TKEY=G’’
さらに、秘密鍵生成手段312は、公開鍵309とメンバ追加鍵311を用いて、全ての(i,j)∈∧に対して秘密鍵313:SKEY[ij]=Ki,j=[δαθ+βγ]G+Mを生成し、これらの集合を出力する。
この秘密鍵を生成するために、k毎に無作為に生成されたθと定数αの積に比例する値αθを生成する過程が含まれていることが、本実施形態の大きな特徴である。
次に、暗号化装置400の動作を図4を参照して説明する。本実施形態では、共有鍵を生成してこれを暗号化する場合の詳細を記しているが、別途メッセージが入力されることで、共有鍵と置き換えてこれを暗号化してもよい。また、公開鍵および秘密鍵は本実施形態のメンバ追加装置300により生成されたものである。
配付メンバ集合S⊂∧を表すデータである配付メンバ集合401と乱数411とが外部から入力され、公開鍵309がメンバ追加装置300から入力される。共有鍵生成手段404が公開鍵309と乱数411を用いて、共有鍵405:k∈Gを一様無作為に生成する。また、ランダム要素生成手段402が、公開鍵309と乱数411を用いて、(σj=1,...,L∈(Z/nZ)、(εi=1,...,L∈(Z/nZ)、およびτ∈Z/nZであるランダム要素403を一様無作為に生成する(ステップ1001)。
続いて、誤差付暗号文生成手段406は、共有鍵405、公開鍵309、ランダム要素403および配付メンバ集合401を用いて、誤差付暗号文407を生成する(ステップ1002)。誤差付暗号文407の要素は、S及び全てのi=1,...,Lに関する:
=km’^(στ),
E’=[στ]G’,
F’=[στ](D’+ΣS(j)G’L+1−k),
R’=[σ]B’
T’=[σ]H’
である。
ただし、S(j)=S∩∧である。
また、誤差修正暗号文生成手段409は、公開鍵309およびランダム要素403を用いて、誤差修正暗号文408を生成する(ステップ1003)。誤差修正暗号文408の要素は、全てのj=1,...,Lに関するS=[τ]J+[ε]H、U=[ε]Gである。なお、ステップ1002とステップ1003の処理はいずれが先であってもよい。
本実施形態では、個々で、暗号化に際して、用いるS(i)はSの要素が含まれないものである。そのため、暗号文を生成するにあたり、全てのjに関してS(j)に属する(k,j)に関してGL+1−kの和を取るため、配付メンバ集合に属さないメンバの個数のデータの和を取る処理となる。
続いて、制御部421は、誤差付暗号文407および誤差修正暗号文408を含む共有鍵暗号文410:HDR(S)=(S,(c,E’,F’,R’,T’j=1,...,L,(S,Ui=1,...,L)を出力する。また、生成した共有鍵405を出力する(ステップ1004)。
次に、復号装置500の動作を図6を参照して説明する。本実施形態では、データが共有鍵である場合の詳細を記しているが、これをメッセージとみなしてもよい。また、公開鍵および秘密鍵は本実施形態のメンバ追加装置300により生成されたものである。
共有鍵暗号文HDR(S)(410)が暗号化装置400から入力され、公開鍵PKEY(309)および秘密鍵SKEY[ij](313)がメンバ追加装置300から入力される。ここで、各メンバの識別子となるインデックス(i,j)∈Sであるとする。
誤差付暗号文復号手段501が、配付メンバ集合401に自装置の識別子の情報が含まれているか否かを判定する(ステップ1101)。配付メンバ集合401に自装置の識別子の情報が含まれている場合、ステップ1102に進み、含まれていない場合、暗号文の復号をせずに処理を終了する。
ステップ1102で、誤差付暗号文復号手段501は、誤差付暗号文407、公開鍵309および秘密鍵313を用いて、誤差付共有鍵K’(502):k’=c(e(Xi,i,F’)/e(E’,Ki,j+ΣS(j)i,L+1−k+i))を生成する。ただし、S(j)=S∩∧である。
ここで、各(i,j)に関する復号において使われるXk,iはk=iに限られることが特徴である。また、この誤差付暗号文を復号するにあたり、全てのjに関してS(j)に属する(k,j)に関してXi,L+1−kの和を取るため、配付メンバ集合に属さないメンバの個数のデータの和を取る処理となる。
続いて、誤差修正手段503が、誤差付共有鍵502、公開鍵309および秘密鍵313を用いて、共有鍵K’405:k=k’(e(R’,S)/e(T’,U))を生成する。その後、制御部521は、共有鍵k(405)を出力する(ステップ1103)。
本実施形態の不正者失効システムの動作は、上述したように、暗号装置400および復号装置500が配付メンバ集合に属さないメンバの個数のデータの和を求める処理を行い、その他については実施形態1と同様であるため、その詳細な説明を省略する。
本実施形態の不正者失効システムにおいては、実施形態1の方法と比べて、より多くのメンバが結託して復号装置の海賊版を構成しても、全ての結託したメンバを特定することが可能であることが証明できる。実際、全てのメンバが結託した場合においてもこれらを全て特定し、それらの資格を失効することが可能となる効果がある。
(実施形態4)
本実施形態の不正者失効システムについて説明する。なお、本実施形態の不正者失効システムは図7に示す構成と同様であるため、図7から図10を参照し、実施形態2と比べて異なる構成および動作を中心に説明する。また、本実施形態で用いられる記法については、実施形態3の場合と同様であるため、その詳細な説明を省略する。
図7に示すように、不正者失効システムは、不正者失効装置600と、複数の復号装置と、メンバ追加装置300とを有する。不正者失効装置600、複数の復号装置、およびメンバ追加装置300は、ネットワークなどの通信回線で接続されている。図7では、復号装置を1台だけ示している。不正者失効装置600は、通信回線を介して、実施形態3で説明したメンバ追加装置300と接続されている。復号装置803は、実施形態3で説明した複数の復号装置500のうち、不正であるとされているものに相当する。各装置の構成は実施形態2と同様であるため、ここではその詳細な説明を省略する。
次に、不正者失効装置600の動作を図9を参照して説明する。なお、公開鍵、秘密鍵および追跡鍵は実施形態3で説明したメンバ追加装置300により生成されたものである。
配付メンバ集合S⊂∧(602)、検査インデックス(I,J)∈S(603)、および乱数601が外部から入力され、公開鍵309がメンバ追加装置300から入力される。
追跡用共有鍵生成手段606は、公開鍵309および乱数601を用いて、追跡用共有鍵607:k∈G’を一様無作為に生成する(ステップ1201)。
また、追跡用ランダム要素生成手段604は、公開鍵309、乱数601、および検査インデックス603を用いて、追跡用のランダム要素605を一様無作為に生成する(ステップ1202)。追跡用のランダム要素605は、(σj=1,...,L∈(Z/nZ)、τ∈Z/nZ、(k’j=1,...,J−1∈(G’)J−1、(σ’),j=1,...,J−1(Z/nZ)J−1、(εi=1,...,L∈(Z/nZ)、および(ε’i=1,...,l}∈(Z/nZ)である。
なお、ステップ1201とステップ1202の処理はいずれが先であってもよい。
そして、追跡用誤差付暗号文生成手段608は、追跡用共有鍵607、公開鍵309、ランダム要素605、検査インデックス603および配付メンバ集合S(602)を用いて、追跡用誤差付暗号文610:(S,c,E’,F’,R’,T’j=1,...,Lを次のように生成する(ステップ1203):
j>Jに関しては、
=km’^{στ},
E’=[στ]G’,
F’=[στ](D’+ΣS(j)G’L+1−k),
R’=[σ]B’
T’=[σ]H’と生成する。
j=Jに関しては、
=km^{στ},
E’=[στ]G,
F’=[στ](D+ΣS(j)L+1−k),
R’=[σ]B
T’=[σ]Hと生成し、
j<Jに関しては、
=k’m^{στ},
E’=[στ]G,
F’=[στ](D+ΣS(j)L+1−k),
R’=[σ’]B
T’=[σ’]Hと生成する。
本実施形態では、個々で、暗号化に際して、用いるS(i)はSの要素が含まれないものである。そのため、暗号文を生成するにあたり、全てのjに関してS(j)に属する(k,j)に関してGL+1−kの和を取るため、配付メンバ集合に属さないメンバの個数のデータの和を取る処理となる。
また、追跡用誤差修正暗号文生成手段609は、公開鍵309、追跡鍵310、ランダム要素605および検査インデックス603を用いて、追跡用誤差修正暗号文611:(Ss,Ui=1,...,Lを次のように生成する(ステップ1204):
i≧Iに関しては、S=[τ]J+[ε]H,U=[ε]Gと生成し、
i<Iに関しては、S=[τ]J+[ε]H+[ε’]G’’,U=[ε]Gを生成する。なお、ステップ1203とステップ1204の処理はいずれが先であってもよい。
続いて、制御部621は、追跡用誤差付暗号文610および追跡用誤差修正暗号文611を含む追跡用共有鍵暗号文612:
HDR[S,I,J]=(S,(c,E’,F’,R’,T’j=1,...,L,(S,Ui=1,...,L
を出力する。また、生成した追跡用共有鍵607を出力する(ステップ1205)。
本実施形態の不正者失効システムの動作は、上述したように、不正者失効装置600が配付メンバ集合に属さないメンバの個数のデータの和を求める処理を行う。図10で説明した不正者探索動作などのその他の動作については実施形態2と同様であるため、その詳細な説明を省略する。
本実施形態の不正者失効システムにおいては、実施形態2の方法と比べて、より多くのメンバが結託して復号装置の海賊版を構成しても、全ての結託したメンバを特定することが可能であることが証明できる。実際、全てのメンバが結託した場合においてもこれらを全て特定し、それらの資格を失効することが可能となる効果がある。
(実施形態5)
本実施形態で用いられる記法は、実施形態3で説明した記法と同様であるために、ここではその説明を省略する。
本実施形態の不正者失効システムについて説明する。なお、本実施形態の不正者失効システムは、メンバ追加装置300が追跡鍵310を生成しないことを除いて、図1に示す構成と同様であるため、ここでは各装置の構成の詳細な説明を省略する。また、図1から図6を参照し、実施形態3と比べて異なる動作を中心に説明する。
図1に示すように、本実施形態の不正者失効システムは、メンバ追加装置300と、暗号化装置400と、複数の復号装置500とを有する。複数の復号装置500は同一の構成であるため、図1では復号装置を1台だけ示している。各装置は、ネットワークなどの通信回線で接続されている。本実施形態のメンバ追加装置300は、実施形態3の場合と異なり、図1に示す追跡鍵310を生成しない。
次に、メンバ追加装置300の動作を説明する。
最大メンバ数変数L(301)と乱数302が外部から入力される。Lは、本実施形態のシステムが扱うメンバの数をNとしたとき、N<L+1となる整数Lである。
ドメイン変数生成手段303が、L,p,q,n,G,G,eを決定する。すなわち、これらを指定するドメイン変数304を生成する。メンバは1からLまでの整数二つのなす対によって指定される。
続いて、ランダム要素生成手段305が、乱数302とドメイン変数304を用いて、
の生成元G,H,M,
’の生成元G’,H’,
’’の生成元G’’,
及び、
ξ∈Z/nZ,
α∈Z/nZ,
(βj=1,...,L∈(Z/nZ)
(δj=1,...,L∈(Z/nZ)
(γj=1,...,L∈(Z/nZ)
(θk=1,...,L∈(Z/nZ)
(λ,π)∈(Z/nZ)
であるランダム要素306を一様無作為に生成する。本実施形態では、(λ,π)がランダム要素306に含まれている。
その後、諸鍵生成手段307が、ドメイン変数304とランダム要素306を用いて、
H=[ξ]G
H’=[ξ]G’
m=e(G,M)
m’=e(G’,M)
(Bj=1,...,L=([β]G)j=1,...,L
(Hj=1,...,L=([β]H)j=1,...,L
(B’j=1,...,L=([β]G’)j=1,...,L
(H’j=1,...,L=([β]H’)j=1,...,L
(Gi=1,...,2L=([α]G)i=1,...,2L
(G’i=1,...,2L=([α]G’)i=1,...,2L
(Dj=1,...,L=([δ]G)j=1,...,L
(D’j=1,...,L=([δ]G’)j=1,...,L
(Ji=1,...,L=([γ]G)i=1,...,L
(Xk,ik=1,...,L:i=1,...,2L=([θα]G)i=1,...,2L
(V,W)=([π]G,[λ]G’’+[π]H)
である諸鍵308を生成する。実施形態3と異なり、諸鍵308に(V,W)が含まれている。
本実施形態では、諸鍵308がk毎に無作為に生成されたθと定数αの冪乗αの積に比例する鍵Xk,iとを含んでいることが、実施形態3と同様に、大きな特徴である。
続いて、諸鍵生成手段307が、ランダム要素306と諸鍵308のデータから公開鍵309、メンバ追加鍵311、追跡鍵310を以下のように選んで出力する。
公開鍵309:PKEY={L,n,m,m’,G,H,G’,(B,H,B’,H’j=1,...,L,(G,G’i=1,...,L,L+2,...,2L,(D,D’i=1,...,L,(Ji=1,...,L,(Xk,ik=1,...,L,i=1,...,2L,(V,W)}
メンバ追加鍵311:MKEY=(M,α,(δ,βj=1,...,L,(γi=1,...,L,(θk=1,...,L
さらに、秘密鍵生成手段312は、公開鍵309とメンバ追加鍵311を用いて、全ての(i,j)∈∧に対して秘密鍵313:SKEY[ij]=Ki,j=[δαθ+βγ]G+Mを生成し、これらの集合を出力する。
本実施形態は、実施形態3と同様に、秘密鍵を生成するために、k毎に無作為に生成されたθと定数αの積に比例する値αθを生成する過程が含まれていることが大きな特徴である。また、実施形態3と比べると、追跡鍵を生成する必要がない。
次に、暗号化装置400の動作を図4を参照して説明する。本実施形態では、共有鍵を生成してこれを暗号化する場合の詳細を記しているが、別途メッセージが入力されることで、共有鍵と置き換えてこれを暗号化してもよい。また、公開鍵および秘密鍵は本実施形態のメンバ追加装置300により生成されたものである。
配付メンバ集合S⊂∧を表すデータである配付メンバ集合401と乱数411とが外部から入力され、公開鍵309がメンバ追加装置300から入力される。共有鍵生成手段404が公開鍵309と乱数411を用いて、共有鍵405:k∈Gを一様無作為に生成する。また、ランダム要素生成手段402が、公開鍵309と乱数411を用いて、(σj=1,...,L∈(Z/nZ)、(εi=1,...,L∈(Z/nZ)、および(τ,ρ)∈(Z/nZ)であるランダム要素403を一様無作為に生成する(ステップ1001)。本実施形態の暗号化装置400では、メンバ追加装置300が追跡鍵を生成しないことに対応して、ランダム要素403に(τ,ρ)が含まれている。実施形態3と異なり、後述する誤差付暗号文407および誤差修正暗号文408等に「ρ」が含まれる。
続いて、誤差付暗号文生成手段406は、共有鍵405、公開鍵309、ランダム要素403および配付メンバ集合401を用いて、誤差付暗号文407を生成する(ステップ1002)。誤差付暗号文407の要素は、S及び全てのi=1,...,Lに関する:
=km’^(στ),
E’=[στ]G’,
F’=[στ](D’+ΣS(j)G’L+1−k),
R’=[σ]B’
T’=[ρσ]H’
である。
ただし、S(j)=S∩∧である。
また、誤差修正暗号文生成手段409は、公開鍵309およびランダム要素403を用いて、誤差修正暗号文408を生成する(ステップ1003)。誤差修正暗号文408の要素は、全てのj=1,...,Lに関するS=[τ]J+[ρε]H、U=[ε]Gである。なお、ステップ1002とステップ11003の処理はいずれが先であってもよい。
本実施形態では、個々で、暗号化に際して、用いるS(i)はSの要素が含まれないものである。そのため、暗号文を生成するにあたり、全てのjに関してS(j)に属する(k,j)に関してGL+1−kの和を取るため、配付メンバ集合に属さないメンバの個数のデータの和を取る処理となる。
続いて、制御部421は、誤差付暗号文407および誤差修正暗号文408を含む共有鍵暗号文410:HDR(S)=(S,(c,E’,F’,R’,T’j=1,...,L,(S,Ui=1,...,L)を出力する。また、生成した共有鍵405を出力する(ステップ1004)。
なお、暗号化装置400は追跡鍵を直接利用するものではないが、実施形態6で説明するメンバ追加装置と不正者失効装置との処理に対応して、上述したように、実施形態3とは異なる処理を行っている。
次に、復号装置500の動作を図6を参照しで説明する。本実施形態では、データが共有鍵である場合の詳細を記しているが、これをメッセージとみなしてもよい。また、公開鍵および秘密鍵は本実施形態のメンバ追加装置300により生成されたものである。
共有鍵暗号文HDR(S)(410)が暗号化装置400から入力され、公開鍵PKEY(309)および秘密鍵SKEY[ij](313)がメンバ追加装置300から入力される。ここで、各メンバの識別子となるインデックス(i,j)∈Sであるとする。
誤差付暗号文復号手段501が、配付メンバ集合401に自装置の識別子の情報が含まれているか否かを判定する(ステップ1101)。配付メンバ集合401に自装置の識別子の情報が含まれている場合、ステップ1102に進み、含まれていない場合、暗号文の復号をせずに処理を終了する。
ステップ1102で、誤差付暗号文復号手段501は、誤差付暗号文407、公開鍵309および秘密鍵313を用いて、誤差付共有鍵K’(502):k’=c(e(Xi,i,F’)/e(E’,Ki,j+ΣS(j)i,L+1−k+i))を生成する。ただし、S(j)=S∩∧である。
ここで、各(i,j)に関する復号において使われるXk,iはk=iに限られることが特徴である。また、この誤差付暗号文を復号するにあたり、全てのjに関してS(j)に属する(k,j)に関してXi,L+1−kの和を取るため、配付メンバ集合に属さないメンバの個数のデータの和を取る処理となる。
続いて、誤差修正手段503が、誤差付共有鍵502、公開鍵309および秘密鍵313を用いて、共有鍵K’405:k=k’(e(R’,S)/e(T’,U))を生成する。その後、制御部521は、共有鍵k(405)を出力する(ステップ1103)。
本実施形態の不正者失効システムの動作は、上述したように、暗号化装置400および復号装置500が配付メンバ集合に属さないメンバの個数のデータの和を求める処理を行い、その他については実施形態1と同様であるため、その詳細な説明を省略する。
なお、本実施形態の復号装置500の処理は実施形態3と見かけ上同様になるが、メンバ追加装置300から受け取る公開鍵309および暗号化装置400から受け取る共有鍵暗号文410には実施形態3とは異なる成分が含まれている。
本実施形態の不正者失効システムにおいても、実施形態3と同様に、より多くのメンバが結託して復号装置の海賊版を構成しても、全ての結託したメンバを特定することが可能であることが証明できる。実際、全てのメンバが結託した場合においてもこれらを全て特定し、それらの資格を失効することが可能となる効果がある。
(実施形態6)
本実施形態の不正者失効システムについて説明する。
なお、本実施形態の不正者失効システムは、メンバ追加装置300が追跡鍵310を生成しないことを除いて、図7に示す構成と同様であるため、ここでは各装置の構成の詳細な説明を省略する。また、図7から図10を参照し、実施形態4と比べて異なる動作を中心に説明する。
また、本実施形態で用いられる記法については、実施形態3の場合と同様であるため、その詳細な説明を省略する。
図7に示すように、不正者失効システムは、不正者失効装置600と、複数の復号装置と、メンバ追加装置300とを有する。不正者失効装置600、複数の復号装置、およびメンバ追加装置300は、ネットワークなどの通信回線で接続されている。図7では、復号装置を1台だけ示している。不正者失効装置600は、通信回線を介して、実施形態5で説明したメンバ追加装置300と接続されている。復号装置803は、実施形態5で説明した複数の復号装置500のうち、不正であるとされているものに相当する。
次に、不正者失効装置600の動作を図9を参照して説明する。なお、公開鍵および秘密鍵は実施形態5で説明したメンバ追加装置300により生成されたものである。
配付メンバ集合S⊂∧(602)、検査インデックス(I,J)∈(603)、および乱数601が外部から入力され、公開鍵309がメンバ追加装置300から入力される。
追跡用共有鍵生成手段606は、公開鍵309および乱数601を用いて、追跡用共有鍵607:k∈G’を一様無作為に生成する(ステップ1201)。
また、追跡用ランダム要素生成手段604は、公開鍵309、乱数601、および検査インデックス603を用いて、追跡用のランダム要素605を一様無作為に生成する(ステップ1202)。追跡用のランダム要素605は、(σj=1,...,L∈(Z/nZ)、(τ,ρ)∈(Z/nZ)、(k’j=1,...,J−1∈(G’)J−1、(σ’j=1,...,J−1∈(Z/nZ)J−1、(εi=1,...,L∈(Z/nZ)、および(ε’i=1,...,l}∈(Z/nZ)である。
なお、ステップ1201とステップ1202の処理はいずれが先であってもよい。
そして、追跡用誤差付暗号文生成手段608は、追跡用共有鍵607、公開鍵309、ランダム要素605、検査インデックス603および配付メンバ集合S(602)を用いて、追跡用誤差付暗号文610:(S,c,E’,F’,R’,T’j=1,...,Lを次のように生成する(ステップ1203):
j>Jに関しては、
=km’^{στ},
E’=[στ]G’,
F’=[στ](D’+ΣS(j)G’L+1−k),
R’=[σ]B’
T’=[ρσ]H’と生成する。
j=Jに関しては、
=km^{στ},
E’=[στ]G,
F’=[στ](D+ΣS(j)L+1−k),
R’=[σ]B
T’=[ρσ]Hと生成し、
j<Jに関しては、
=k’m^{στ},
E’=[στ]G,
F’=[στ](D+ΣS(j)L+1−k),
R’=[σ’]B
T’=[ρσ’]Hと生成する。
本実施形態では、個々で、暗号化に際して、用いるS(i)はSの要素が含まれないものである。そのため、暗号文を生成するにあたり、全てのjに関してS(j)に属する(k,j)に関してGL+1−kの和を取るため、配付メンバ集合に属さないメンバの個数のデータの和を取る処理となる。
また、追跡用誤差修正暗号文生成手段609は、公開鍵309、ランダム要素605および検査インデックス603を用いて、追跡用誤差修正暗号文611:(Ss,Ui=1,...,Lを次のように生成する(ステップ1204):
i≧Iに関しては、S=[τ]J+[ρε]H,U=[ε]Gと生成し、
i<Iに関しては、S=[τ]J+[ρε]H+[ρε’]W,U=[ε]G+[ρε’]V
を生成する。なお、ステップ1203とステップ1204の処理はいずれが先であってもよい。図9のステップ1204において、本実施形態では、追跡用誤差修正暗号文611の生成に、追跡鍵を用いない。
続いて、制御部621は、追跡用誤差付暗号文610および追跡用誤差修正暗号文611を含む追跡用共有鍵暗号文612:
HDR[S,I,J]=(S,(c,E’,F’,R’,T’j=1,...,L,(S,Ui=1,...,L
を出力する。また、生成した追跡用共有鍵607を出力する(ステップ1205)。
本実施形態の不正者失効システムの動作は、上述したように、不正者失効装置600が配付メンバ集合に属さないメンバの個数のデータの和を求める処理を行う。図10で説明した不正者探索動作などのその他の動作については実施形態2と同様であるため、その詳細な説明を省略する。
本実施形態の不正者失効システムにおいては、追跡鍵を用いなくても実施形態4と同様に、より多くのメンバが結託して復号装置の海賊版を構成しても、全ての結託したメンバを特定することが可能であることが証明できる。実際、全てのメンバが結託した場合においてもこれらを全て特定し、それらの資格を失効することが可能となる効果がある。
なお、本発明の暗号化方法、復号方法、および不正者失効方法をコンピュータに実行させるためのプログラムに適用してもよい。

Claims (13)

  1. 公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    登録された会員のうち暗号文の復号を許可された会員の情報である配付メンバ集合データ、乱数および前記公開鍵が格納された記憶部と、共有鍵またはメッセージの少なくともいずれかが入力されると、該共有鍵または該メッセージ、前記配付メンバ集合データ、および会員毎に異なる情報である誤差情報を含む暗号文である誤差付暗号文と該誤差情報の暗号文である誤差修正暗号文とを生成し、前記誤差付暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、前記誤差付暗号文および前記誤差修正暗号文とを配布する制御部とを有する暗号化装置と、
    前記暗号化装置と接続され、前記公開鍵および自装置に対応する秘密鍵が格納された記憶部と、前記誤差付暗号文および前記誤差修正暗号文を前記暗号化装置から受信すると、該配付メンバ集合データに自装置が含まれているか否かを判定し、該配付メンバ集合データに自装置が含まれていると、前記公開鍵および前記秘密鍵により前記誤差付暗号文および前記誤差修正暗号文を復号し、前記誤差付暗号文を復号する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、復号した誤差付暗号文から前記誤差情報を取り除いて前記共有鍵または前記メッセージを出力する制御部を有する復号装置と
    を含む不正者失効システム。
  2. 登録された会員の復号装置に暗号文を配付する暗号化装置であって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    前記登録された会員のうち暗号文の復号を許可された会員の情報である配付メンバ集合データ、乱数および前記公開鍵が格納された記憶部と、
    共有鍵またはメッセージの少なくともいずれかが入力されると、該共有鍵または該メッセージ、前記配付メンバ集合データ、および会員毎に異なる情報である誤差情報を含む暗号文である誤差付暗号文と該誤差情報の暗号文である誤差修正暗号文とを生成し、前記誤差付暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求める処理を行う制御部と
    を有する
    暗号化装置。
  3. 外部から受信する暗号文を復号する復号装置であって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    前記公開鍵および自装置に対応する秘密鍵が格納された記憶部と、
    共有鍵またはメッセージの少なくともいずれかの情報、登録された複数の復号装置毎に異なり自装置に対応する情報である誤差情報、および暗号文の復号を許可された会員の情報である配付メンバ集合データを含む暗号文である誤差付暗号文と、該誤差情報の暗号文である誤差修正暗号文とが入力されると、該配付メンバ集合データに自装置が含まれているか否かを判定し、該配付メンバ集合データに自装置が含まれていると、前記公開鍵および前記秘密鍵により前記誤差付暗号文および前記誤差修正暗号文を復号し、前記誤差付暗号文を復号する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、復号した誤差付暗号文から前記誤差情報を取り除いて前記共有鍵または前記メッセージを出力する制御部と
    を有する復号装置。
  4. 登録された会員の復号装置のうち不正処理を行う復号装置を特定するための不正者失効装置であって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    元になる共有鍵である追跡用共有鍵または元になるメッセージである追跡用メッセージの少なくともいずれかの情報、前記復号装置毎に異なる識別番号の情報を含む配付メンバ集合データ、前記公開鍵、および不正者を判定するための基準となる閾値が格納された記憶部と、
    不正処理を行うと有意な確率で正しい共有鍵またはメッセージを出力できない追跡用暗号文を前記公開鍵を用いて生成し、前記復号装置毎に該追跡用暗号文を複数送信し、該復号装置から共有鍵またはメッセージを複数受信すると、受信した複数の共有鍵と前記追跡用共有鍵との一致する確率、または、受信した複数のメッセージと前記追跡用メッセージとの一致する確率を算出し、隣り合う前記識別番号の復号装置間で該確率の差が前記閾値より小さいか否かを判定し、該閾値より大きい確率の復号装置を失効対象と判定し、前記追跡用暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求める処理を行う制御部と
    を有する不正者失効装置。
  5. 前記記憶部に追跡鍵が格納され、
    前記制御部は、前記公開鍵および前記追跡鍵を用いて前記追跡用暗号文を生成する、請求項記載の不正者失効装置。
  6. 登録された会員の復号装置に暗号文を配付する暗号化装置による暗号化方法であって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    前記登録された会員のうち暗号文の復号を許可された会員の情報である配付メンバ集合データ、乱数および前記公開鍵が入力されると、これらの情報を記憶部に格納し、
    共有鍵またはメッセージの少なくともいずれかが入力されると、該共有鍵または該メッセージ、前記配付メンバ集合データ、および会員毎に異なる情報である誤差情報を含む暗号文である誤差付暗号文と該誤差情報の暗号文である誤差修正暗号文とを生成し、前記誤差付暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求める暗号化方法。
  7. 外部から受信する暗号文を復号する復号装置による復号方法であって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    前記公開鍵および自装置に対応する秘密鍵が入力されると、これらの情報を記憶部に格納し、
    共有鍵またはメッセージの少なくともいずれかの情報、登録された複数の復号装置毎に異なり自装置に対応する情報である誤差情報、および暗号文の復号を許可された会員の情報である配付メンバ集合データを含む暗号文である誤差付暗号文と、該誤差情報の暗号文である誤差修正暗号文とが入力されると、該配付メンバ集合データに自装置が含まれているか否かを判定し、
    前記配付メンバ集合データに自装置が含まれていると、前記公開鍵および前記秘密鍵により前記誤差付暗号文および前記誤差修正暗号文を復号し、
    前記誤差付暗号文を復号する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、
    復号した誤差付暗号文から前記誤差情報を取り除いて前記共有鍵または前記メッセージを出力する復号方法。
  8. 登録された会員の復号装置のうち不正処理を行う復号装置を特定するための不正者失効装置による不正者失効方法であって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    元になる共有鍵である追跡用共有鍵または元になるメッセージである追跡用メッセージの少なくともいずれかの情報、前記復号装置毎に異なる識別番号の情報を含む配付メンバ集合データ、前記公開鍵、および不正者を判定するための基準となる閾値を記憶部に格納し、
    不正処理を行うと有意な確率で正しい共有鍵またはメッセージを出力できない追跡用暗号文を前記公開鍵を用いて生成し、
    前記追跡用暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、
    前記復号装置毎に前記追跡用暗号文を複数送信し、
    前記復号装置から共有鍵またはメッセージを複数受信すると、受信した複数の共有鍵と前記追跡用共有鍵との一致する確率、または、受信した複数のメッセージと前記追跡用メッセージとの一致する確率を算出し、
    隣り合う前記識別番号の復号装置間で前記確率の差が前記閾値より小さいか否かを判定し、該閾値より大きい確率の復号装置を失効対象と判定する
    不正者失効方法。
  9. 前記公開鍵とともに追跡鍵を前記記憶部に格納し、
    前記公開鍵および前記追跡鍵を用いて前記追跡用暗号文を生成する、請求項記載の不正者失効方法。
  10. 登録された会員の復号装置に暗号文を配付するコンピュータに実行させるためのプログラムであって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    前記登録された会員のうち暗号文の復号を許可された会員の情報である配付メンバ集合データ、乱数および前記公開鍵が入力されると、これらの情報を格納し、
    共有鍵またはメッセージの少なくともいずれかが入力されると、該共有鍵または該メッセージ、前記配付メンバ集合データ、および会員毎に異なる情報である誤差情報を含む暗号文である誤差付暗号文と該誤差情報の暗号文である誤差修正暗号文とを生成し、前記誤差付暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求める処理を前記コンピュータに実行させるためのプログラム。
  11. 外部から受信する暗号文を復号するコンピュータに実行させるためのプログラムであって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    前記公開鍵および自装置に対応する秘密鍵が入力されると、これらの情報を格納し、
    共有鍵またはメッセージの少なくともいずれかの情報、登録された複数の復号装置毎に異なり自装置に対応する情報である誤差情報、および暗号文の復号を許可された会員の情報である配付メンバ集合データを含む暗号文である誤差付暗号文と、該誤差情報の暗号文である誤差修正暗号文とが入力されると、該配付メンバ集合データに自装置が含まれているか否かを判定し、
    前記配付メンバ集合データに自装置が含まれていると、前記公開鍵および前記秘密鍵により前記誤差付暗号文および前記誤差修正暗号文を復号し、
    前記誤差付暗号文を復号する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、
    復号した誤差付暗号文から前記誤差情報を取り除いて前記共有鍵または前記メッセージを出力する処理を前記コンピュータに実行させるためのプログラム。
  12. 登録された会員の復号装置のうち不正処理を行う復号装置を特定するコンピュータに実行させるためのプログラムであって、
    公開鍵は、任意の整数をLとし、任意の加法巡回群上の要素で、この巡回群の生成元Gについて、1からLのいずれかの整数k毎に無作為に生成された整数θkと定整数αの冪乗αi(iは1から2Lのいずれかの整数)の積であるθk αi倍した[θk αi]Gを含み、
    元になる共有鍵である追跡用共有鍵または元になるメッセージである追跡用メッセージの少なくともいずれかの情報、前記復号装置毎に異なる識別番号の情報を含む配付メンバ集合データ、前記公開鍵、および不正者を判定するための基準となる閾値を記憶部に格納し、
    不正処理を行うと有意な確率で正しい共有鍵またはメッセージを出力できない追跡用暗号文を前記公開鍵を用いて生成し、
    前記追跡用暗号文を生成する際、前記配付メンバ集合に属さないメンバの個数のデータの和を求め、
    前記復号装置毎に前記追跡用暗号文を複数送信し、
    前記復号装置から共有鍵またはメッセージを複数受信すると、受信した複数の共有鍵と前記追跡用共有鍵との一致する確率、または、受信した複数のメッセージと前記追跡用メッセージとの一致する確率を算出し、
    隣り合う前記識別番号の復号装置間で前記確率の差が前記閾値より小さいか否かを判定し、該閾値より大きい確率の復号装置を失効対象と判定する処理を前記コンピュータに実行させるためのプログラム。
  13. 前記公開鍵とともに追跡鍵を前記記憶部に格納し、
    前記公開鍵および前記追跡鍵を用いて前記追跡用暗号文を生成する処理をさらに有する請求項12記載のプログラム。
JP2008520552A 2006-05-29 2007-05-29 不正者失効システム、暗号化装置、暗号化方法およびプログラム Expired - Fee Related JP5093513B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008520552A JP5093513B2 (ja) 2006-05-29 2007-05-29 不正者失効システム、暗号化装置、暗号化方法およびプログラム

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP2006148825 2006-05-29
JP2006148825 2006-05-29
JP2006198117 2006-07-20
JP2006198117 2006-07-20
JP2006335681 2006-12-13
JP2006335681 2006-12-13
PCT/JP2007/061249 WO2007142170A1 (ja) 2006-05-29 2007-05-29 不正者失効システム、暗号化装置、暗号化方法およびプログラム
JP2008520552A JP5093513B2 (ja) 2006-05-29 2007-05-29 不正者失効システム、暗号化装置、暗号化方法およびプログラム

Publications (2)

Publication Number Publication Date
JPWO2007142170A1 JPWO2007142170A1 (ja) 2009-10-22
JP5093513B2 true JP5093513B2 (ja) 2012-12-12

Family

ID=38801421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008520552A Expired - Fee Related JP5093513B2 (ja) 2006-05-29 2007-05-29 不正者失効システム、暗号化装置、暗号化方法およびプログラム

Country Status (4)

Country Link
US (1) US8270613B2 (ja)
EP (1) EP2023525A1 (ja)
JP (1) JP5093513B2 (ja)
WO (1) WO2007142170A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7936882B2 (en) * 2008-01-17 2011-05-03 Nagravision S.A. Method to trace traceable parts of original private keys in a public-key cryptosystem
JP5391043B2 (ja) * 2009-05-22 2014-01-15 日本放送協会 暗号化情報生成装置及びそのプログラム、秘密鍵生成装置及びそのプログラム、配信用コンテンツ生成装置及びそのプログラム、コンテンツ復号装置及びそのプログラム、並びに、ユーザ特定装置及びそのプログラム
JP2013031151A (ja) 2011-06-20 2013-02-07 Renesas Electronics Corp 暗号通信システムおよび暗号通信方法
KR101479112B1 (ko) * 2012-10-23 2015-01-07 에스케이 텔레콤주식회사 양자키 분배 프로토콜에서 비트 오류 수정을 위한 치환 방법
US8874898B2 (en) * 2012-12-14 2014-10-28 Intel Corporation Power line based theft protection of electronic devices
JP6801921B2 (ja) * 2017-05-25 2020-12-16 Necネットワーク・センサ株式会社 暗号通信方法、情報処理装置及びプログラム
JP7067338B2 (ja) * 2018-07-25 2022-05-16 富士通株式会社 通信装置、光伝送装置、光伝送方法、および通信システム
KR20220012851A (ko) 2019-05-30 2022-02-04 김봉만 대칭 키 암호화/교환을 위한 양자 내성 암호화 및 진보된 암호화 및 키 교환(aeke) 방법

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1510066A1 (en) * 2002-05-21 2005-03-02 Koninklijke Philips Electronics N.V. Conditional access system
WO2006012058A1 (en) * 2004-06-28 2006-02-02 Japan Communications, Inc. Systems and methods for mutual authentication of network
JP2006148825A (ja) 2004-11-25 2006-06-08 Matsushita Electric Ind Co Ltd デジタル放送受信装置
JP4043479B2 (ja) 2005-01-19 2008-02-06 サミー株式会社 遊技機の基板ケース
JP2006335681A (ja) 2005-06-02 2006-12-14 Gero Kosha:Kk 皮膚外用剤の製造方法
US7630497B2 (en) * 2005-09-19 2009-12-08 International Business Machines Corporation System and method for assigning sequence keys to a media player to enable hybrid traitor tracing

Also Published As

Publication number Publication date
JPWO2007142170A1 (ja) 2009-10-22
US8270613B2 (en) 2012-09-18
US20090180619A1 (en) 2009-07-16
WO2007142170A1 (ja) 2007-12-13
EP2023525A1 (en) 2009-02-11

Similar Documents

Publication Publication Date Title
JP5093513B2 (ja) 不正者失効システム、暗号化装置、暗号化方法およびプログラム
US7899184B2 (en) Ends-messaging protocol that recovers and has backward security
US20100098253A1 (en) Broadcast Identity-Based Encryption
JP6497747B2 (ja) 鍵交換方法、鍵交換システム
JP2011130120A (ja) 量子公開鍵暗号システム、鍵生成装置、暗号化装置、復号装置、鍵生成方法、暗号化方法、及び復号方法
JP5602955B2 (ja) デジタルコンテンツの限定受信のための方法およびシステム、ならびに関連の端末および契約者デバイス
Megías et al. Collusion-resistant and privacy-preserving P2P multimedia distribution based on recombined fingerprinting
CN111052673A (zh) 匿名广播方法、密钥交换方法、匿名广播系统、密钥交换系统、通信装置、程序
Naor et al. Efficient trace and revoke schemes
WO2018043573A1 (ja) 鍵交換方法、鍵交換システム
JP6368047B2 (ja) 鍵交換方法、鍵交換システム、鍵配送装置、代表通信装置、一般通信装置、およびプログラム
CN107070900B (zh) 基于混淆的可搜索重加密方法
JP4758110B2 (ja) 通信システム、暗号化装置、鍵生成装置、鍵生成方法、復元装置、通信方法、暗号化方法、暗号復元方法
EP2225846B1 (en) Method to generate a private key in a Boneh-Franklin scheme
Kuribayashi et al. Fingerprinting for multimedia content broadcasting system
Tzeng et al. A public-key traitor tracing scheme with revocation using dynamic shares
Kalai et al. A distributed multi-key generation protocol with a new complaint management strategy
MX2013006905A (es) Metodo y sistema para el acceso condicional a un contenido digital, terminal asociada y dispositivo de abonado.
JP2009171016A (ja) 暗号化情報生成装置及びそのプログラム、配信用コンテンツ生成装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム
Chen et al. A lightweight and anonymous copyright-protection protocol
Imai et al. Secret Verification Method Suitable for the Asymmetric Secret Sharing Scheme.
JP4000900B2 (ja) 認証付暗号方法及び認証付復号方法及び検証方法及び装置及びプログラム及びコンピュータが読み取り可能な記録媒体
JP2009171384A (ja) 暗号化情報生成装置及びそのプログラム、秘密鍵生成装置及びそのプログラム、並びに、コンテンツ復号装置及びそのプログラム
Kuribayashi et al. Secure data management system with traceability against internal leakage
Liu Ensuring Efficient and Secure Updatable Encryption in Cloud Storage

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120620

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120801

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 5093513

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20150928

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees