JP2004221800A - Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program - Google Patents

Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program Download PDF

Info

Publication number
JP2004221800A
JP2004221800A JP2003005188A JP2003005188A JP2004221800A JP 2004221800 A JP2004221800 A JP 2004221800A JP 2003005188 A JP2003005188 A JP 2003005188A JP 2003005188 A JP2003005188 A JP 2003005188A JP 2004221800 A JP2004221800 A JP 2004221800A
Authority
JP
Japan
Prior art keywords
entity
tracking
key
header
ciphertext
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.)
Pending
Application number
JP2003005188A
Other languages
Japanese (ja)
Inventor
Masafumi Kusakawa
雅文 草川
Taizo Shirai
太三 白井
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2003005188A priority Critical patent/JP2004221800A/en
Publication of JP2004221800A publication Critical patent/JP2004221800A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a configuration whereby tracing of an illegitimate entity in encryption communication is surely performed without the need for acquisition of a key. <P>SOLUTION: An illegitimate entity tracing method includes steps of: entering a tracing header h' including an identifier j<SB>i</SB>of a legitimate entity and an encrypted text C to an inspection object device in the case of identifying the illegitimate entity on the basis of the verification of a decryption device; acquiring a decrypted text M' by decryption processing adopting a private key d<SB>i</SB>stored in the inspection object device; and performing comparison between the acquired decrypted text M' and a plain text M corresponding to the input encrypted text C and identifying an entity corresponding to the identifier j<SB>i</SB>on the condition of the decrypted text M'=the plain text M as the illegitimate entity. Through the configuration above, the particularizing processing of the illegitimate entity is realized without the need for acquiring an illegitimate key from the illegitimate decryption device and performing analysis processing of the key. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、暗号処理システムにおける不正エンティティ追跡方法、暗号処理システム、および不正エンティティ追跡処理装置、並びにコンピュータ・プログラムに関する。さらに、詳細には、暗号化データを例えば同報通信などにより配信するシステムにおいて、正当なデータ利用権を持たない機器、またはユーザの利用を排除するものであり、正当なデータ利用権に対応して配布される正当な個人秘密鍵に基づいて生成した不正鍵を適用したデータの不正利用があった場合、不正鍵を格納した不正復号器から不正鍵を取得して鍵を解析することなく不正利用を特定するブラックボックス追跡を実現可能とした暗号処理システムにおける不正エンティティ追跡方法、暗号処理システム、および不正エンティティ追跡処理装置、並びにコンピュータ・プログラムに関する。
【0002】
【従来の技術】
昨今、ネットワーク通信、電子商取引の発展に伴い、通信におけるセキュリティ確保が重要な問題となっている。セキュリティ確保の1つの方法が暗号技術であり、現在、様々な暗号化手法を用いた通信が実際に行なわれている。
【0003】
暗号化方式には、大別して共通鍵方式、公開鍵方式がある。共通鍵方式は、対称暗号方式ともよばれ、発信者、受信者の双方で共通の鍵を保有する。共通鍵方式の代表的な方法として、DES(Data Encryption Standard)がある。DESアルゴリズムの特徴は、暗号化と復号化とをほぼ同じアルゴリズムで実行可能なことである。
【0004】
この共通鍵暗号に対して、発信者と受信者の鍵を異なるものとした構成が公開鍵方式または非対称暗号方式である。公開鍵暗号方式では、暗号化、復号化に共通の鍵を用いる共通鍵暗号方式と異なり、秘密に保つ必要のある秘密鍵は、特定の1人が持てばよいため鍵の管理において有利である。ただし、公開鍵暗号方式は共通鍵暗号方式に比較してデータ処理速度が遅く、一般には、秘密鍵の配送、ディジタル署名等のデータ量の少ない対象に多く用いられている。公開鍵暗号方式の代表的なものにはRSA(Rivest−Shamir−Adleman)暗号がある。これは非常に大きな2つの素数(例えば150桁)の積を用いるものであり、大きな2つの素数(例えば150桁)の積の素因数分解する処理の困難さを利用している。
【0005】
公開鍵暗号方式では、不特定多数に公開鍵を使用可能とする構成であり、配布する公開鍵が正当なものであるか否かを証明する証明書、いわゆる公開鍵証明書を使用する方法が多く用いられている。例えば、利用者Aが公開鍵、秘密鍵のペアを生成して、生成した公開鍵を認証局に対して送付して公開鍵証明書を認証局から入手する。利用者Aは公開鍵証明書を一般に公開する。不特定のユーザは公開鍵証明書から所定の手続きを経て公開鍵を入手して文書等を暗号化して利用者Aに送付する。利用者Aは秘密鍵を用いて暗号化文書等を復号する等のシステムである。また、利用者Aは、秘密鍵を用いて文書等に署名を付け、不特定のユーザが公開鍵証明書から所定の手続きを経て公開鍵を入手して、その署名の検証を行なうシステムである。
【0006】
公開鍵証明書は、公開鍵暗号方式における認証局あるいは発行局(CA:Certificate AuthorityまたはIA:Issuer Authority)が発行する証明書であり、ユーザが自己のID、公開鍵等を認証局に提出することにより、認証局側が認証局のIDや有効期限等の情報を付加し、さらに認証局による署名を付加して作成される証明書である。
【0007】
公開鍵暗号方式としては、上述したRSA方式の他にnが素数の場合の離散対数問題の困難さを利用した離散対数暗号が知られている。米国標準のディジタル署名方式として知られるDSA(Digital Signature Standard)には、この離散対数暗号が用いられている。また、V.Miller, N.Koblitzによって提案された楕円曲線暗号(ECC:Ellipitic Curve Cryptography)が、安全性および高速性の点で昨今注目されている。楕円曲線暗号は、160bitの鍵でRSA1024bitの鍵と同等の強度を持つと言われる。
【0008】
有料放送や、DVD,CD等の記録媒体、あるいはインターネットによるコンテンツ配信などにより有料コンテンツを複数の受信者に対して提供する場合、コンテンツを暗号化し、コンテンツを正規に購入した受信者のみが復号可能となるようにする必要がある。このように、複数の受信者に同一の暗号文を効率的に配信し、かつ特定の受信者のみが暗号文を復号可能となる方法として、放送型暗号(Broadcast Encryption)がある。
【0009】
放送型暗号(Broadcast Encryption)は上述の公開鍵暗号方式の一態様であり、送信者(またはシステム運営者)が、特定の受信者集合にのみ秘密情報を配っておき、平文(コンテンツ等)をセッション鍵で暗号化したものと、セッション鍵を各受信者の秘密情報で復号するためのヘッダを同報配信するものである。
【0010】
ヘッダと暗号文は任意のユーザが、放送や、DVD,CD等の記録媒体、あるいはインターネットによるコンテンツ受信により取得可能であるが、ヘッダを復号し、セッション鍵を得ることができるのは秘密情報を所有するユーザのみであるため、コンテンツの利用ユーザを制限することが可能となる。しかしながらこのような方式では、秘密情報を保持するユーザが自身の秘密情報を不正に複製し、それを用いて不正復号器を構成することが可能である。
【0011】
このような不正利用を抑止する方式として、不正者追跡法が存在する。放送型暗号(Broadcast Encryption)における不正追跡法の代表的な形態は、特定のユーザに渡される秘密情報を、各ユーザ固有のものとすることによって、不正復号器が発見された場合に不正者を特定可能とするものである。
【0012】
このような不正者追跡法の中で、Kurosawa、Desmedtはn人の秘密鍵を持つ受信者のうち、不正者がk人以内であれば、不正者を確実に特定することが可能となる方式を提案している(非特許文献1)。この方式では、公開鍵とヘッダから、秘密鍵をもたない受信者がセッション鍵および平文を得ること(秘匿性に関する安全性)は、エルガマル(ElGamal)暗号を解読することと等価であることが証明されている。また、不正者がk人以内であれば、不正者を正確に特定できないような鍵を不正者の集合が生成すること(追跡可能性に関する安全性)は、離散対数問題を解くことと等しいことも証明されている。
【0013】
しかし、Kurosawa、Desmedt の方式では、安全性は証明可能であるが、k+1人以上の不正者が結託した場合、不正者を正確に特定できないという問題点があった。また、kの値を大きくすると、ヘッダサイズおよび各エンティティに要求される計算量もkに比例して大きくなるという問題点がある。
【0014】
また、光成、境、笠原は、Kurosawa、Desmedt の方式を楕円曲線上で実現し、さらに新たな工夫を加えることによって、不正者が何人結託しても不正者を確実に特定可能である方式を提案している(非特許文献2)。この方式では、追跡可能性に関する安全性については一部証明されているが、秘匿性に関する安全性に関しては証明されていない。また方式実装をする際、高速に実現しようとすると適切な楕円曲線を選択する必要があるが、これを効率的に見つけるアルゴリズムが未知であるという問題点がある。
【0015】
本特許出願人は、上記問題点に鑑み、前述のKurosawa、Desmedtの方式において明らかにされた理論、すなわち、公開鍵とヘッダから、秘密鍵をもたない受信者がセッション鍵および平文を得ること(秘匿性に関する安全性)は、エルガマル(ElGamal)暗号を解読することと等価であること、また、不正者がk人以内であれば、不正者を正確に特定できないような鍵を不正者の集合が生成すること(追跡可能性に関する安全性)は、離散対数問題を解くことと等しいことに基づき、前述のKurosawa、Desmedt の方式を合成数を法とする乗法群上で実現し、さらに新たな工夫を加えることにより、安全性が証明可能で、不正者が何人結託しても不正者を確実に特定可能な不正者追跡を実現可能としたシステムについて、先の特許出願(未公開:特願2002−322097)において提案した。
【0016】
しかしながら、上記提案構成は、不正復号器からの鍵の取得、解析を必要とする構成であり、鍵の取得が困難な機器についての不正追跡処理が困難となるという問題があった。
【0017】
【非特許文献1】
K. Kurosawa, Y. Desmedt, “Optimum Traitor Tracing and Asymmetric Scheme,” Advances in CryptologyProceedings of EUROCRYPTO 98, Lecture Note in Computer Science, vol.1403, pp.145−157, Springer−Verlag, 1998.
【非特許文献2】
S. Mitsunari、 R. Sakai、 M. Kasahara、 “A New Traitor Tracing、”IEICE TRANS. Fundamentals, vol.E85−A, No. 2, pp. 481−484, 2002.
【0018】
【発明が解決しようとする課題】
本発明は、上記、問題点に鑑みてなされたものであり、正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において、復号機器の検証に基づいて不正エンティティを特定する際に、不正復号器からの不正鍵の取得や鍵の解析処理を実行することなく不正エンティティの特定処理を実現可能とした不正エンティティ追跡方法、暗号処理システム、および不正エンティティ追跡処理装置、並びにコンピュータ・プログラムを提供することを目的とする。
【0019】
【課題を解決するための手段】
本発明の第1の側面は、
正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において復号機器検証に基づいて不正エンティティを特定する不正エンティティ追跡方法であり、
正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力するデータ入力ステップと、
前記検査対象機器において、入力追跡用ヘッダh’と、入力暗号文Cに基づいて、前記検査対象機器に格納された秘密鍵d、および公開鍵eを適用した復号処理により復号文M’を取得し、取得した復号文M’と前記入力暗号文Cに対応する平文Mとの比較処理を実行する比較処理ステップと、
前記比較処理ステップにおいて、復号文M’=平文Mであることを条件として、前記識別子jに対応するエンティティを不正エンティティとして特定する不正エンティティ特定ステップと、
を有することを特徴とする暗号処理システムにおける不正エンティティ追跡方法にある。
【0020】
さらに、本発明の暗号処理システムにおける不正エンティティ追跡方法の一実施態様において、前記公開鍵e、および秘密鍵dは、各々、e=(N,G,Y,Y,..,Yk−1)、d=(j,Rf(j−1modλ)として定義されるものであり、異なる素数p,q、に基づいて素数P=2p+1,Q=2q+1を設定し、N=PQ、λ=pqを算出し、乗法群Z の元のうち、位数がλとなる元Gを設定し、1以上の任意整数=kとし、乗法群Z λの元a,...,ak−1に基づく、乗法群Z λ上の多項式f(x)=a+ax+...ak−1 −1と、乱数R∈Z λとに基づく算出値Y,Y,..,Yk−1を下記式、
【数10】

Figure 2004221800
に従って設定し、
前記正規エンティティ識別子jは、gcd(f(j)、λ)=1を満たす識別子であり、前記暗号文Cは、セッション鍵sに基づく平文Mの暗号文、すなわちC=E(M)であり、前記追跡用ヘッダh’は、セッション鍵sと、乱数rを含む下記式、
【数11】
Figure 2004221800
として定義された構成であることを特徴とする。
【0021】
さらに、本発明の暗号処理システムにおける不正エンティティ追跡方法の一実施態様において、k=2、a=1として設定し、前記追跡用ヘッダh’(s,r)を、下記式、
【数12】
Figure 2004221800
として設定したことを特徴とする。
【0022】
さらに、本発明の第2の側面は、
暗号文を生成し提供するデータ提供手段と、暗号文を受領し復号するデータ受領手段とを有する暗号処理システムにおいて、
公開鍵e、および、前記データ受領手段(エンティティi(i=任意の整数))各々に対応する秘密鍵dを、各々、e=(N,G,Y,Y,..,Yk−1)、d=(j,Rf(j−1modλ)として定義し、
セッション鍵sに基づく平文Mの暗号文、すなわちC=E(M)と、下記式、
h(s、r)=(sY、Y 、Y 、…、Yk−1 )modN
に従って生成するヘッダh(s,r)とを、前記データ提供手段から前記データ受領手段に提供する暗号処理システムであって、
前記公開鍵e、秘密鍵d、およびヘッダh(s,r)は、下記の設定、すなわち、
異なる素数p,q、に基づいて素数P=2p+1,Q=2q+1を設定し、N=PQ、λ=pqを算出し、乗法群Z の元のうち、位数がλとなる元Gを設定し、1以上の任意整数=kとし、乗法群Z λの元a,...,ak−1に基づく、乗法群Z λ上の多項式f(x)=a+ax+...ak−1k−1と、乱数R∈Z λとに基づく算出値Y,Y,..,Yk−1を下記式、
【数13】
Figure 2004221800
に従って設定したものであり、前記jは、gcd(f(j)、λ)=1を満たす正規エンティティ識別子jであり、sはセッション鍵、rは乱数である、
構成を有することを特徴とする暗号処理システムにある。
【0023】
さらに、本発明の暗号処理システムの一実施態様において、前記データ受領手段は、前記ヘッダh(s,r)に基づいて、下記式、
【数14】
Figure 2004221800
に従って、セッション鍵sを取得し、取得セッション鍵sに基づいて、暗号文C=E(M)の復号処理を実行して平文Mを取得する構成であることを特徴とする。
【0024】
さらに、本発明の暗号処理システムの一実施態様において、k=2、a=1として設定し、前記ヘッダh(s,r)を、下記式、
h(s、r)=(sY、Y 、G)modN
として設定したことを特徴とする。
【0025】
さらに、本発明の暗号処理システムの一実施態様において、前記データ受領手段は、前記ヘッダh(s,r)に基づいて、下記式、
【数15】
Figure 2004221800
に従って、セッション鍵sを取得し、取得セッション鍵sに基づいて、暗号文C=E(M)の復号処理を実行して平文Mを取得する構成であることを特徴とする。
【0026】
さらに、本発明の第3の側面は、
正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において復号機器検証に基づいて不正エンティティを特定する不正エンティティ追跡処理装置であり、
正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力するデータ入力手段と、
前記検査対象機器において、入力追跡用ヘッダh’と、入力暗号文Cに基づいて、前記検査対象機器に格納された秘密鍵d、および公開鍵eを適用した復号処理により取得される復号文M’と前記入力暗号文Cに対応する平文Mとの比較処理を実行する比較手段と、
前記比較手段において、復号文M’=平文Mであることを条件として、前記識別子jに対応するエンティティを不正エンティティとして特定する不正エンティティ特定手段と、
を有することを特徴とする不正エンティティ追跡処理装置にある。
【0027】
さらに、本発明の不正エンティティ追跡処理装置の一実施態様において、前記公開鍵e、および秘密鍵dは、各々、e=(N,G,Y,Y,..,Yk−1)、d=(j,Rf(j−1modλ)として定義されるものであり、異なる素数p,q、に基づいて素数P=2p+1,Q=2q+1を設定し、N=PQ、λ=pqを算出し、乗法群Z の元のうち、位数がλとなる元Gを設定し、1以上の任意整数=kとし、乗法群Z λの元a,...,ak−1に基づく、乗法群Z λ上の多項式f(x)=a+ax+...ak−1k−1と、乱数R∈Z λとに基づく算出値Y,Y,..,Yk−1を下記式、
【数16】
Figure 2004221800
に従って設定し、
前記正規エンティティ識別子jは、gcd(f(j)、λ)=1を満たす識別子であり、
前記暗号文Cは、セッション鍵sに基づく平文Mの暗号文、すなわちC=E(M)であり、
前記追跡用ヘッダh’は、セッション鍵sと、乱数rを含む下記式、
【数17】
Figure 2004221800
として定義された構成であることを特徴とする。
【0028】
さらに、本発明の不正エンティティ追跡処理装置の一実施態様において、k=2、a=1として設定し、前記追跡用ヘッダh’(s,r)を、下記式、
【数18】
Figure 2004221800
として設定する処理を実行する構成を有することを特徴とする。
【0029】
さらに、本発明の第4の側面は、
正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において復号機器検証に基づいて不正エンティティを特定する不正エンティティ追跡処理を実行するコンピュータ・プログラムであり、
正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力するデータ入力ステップと、
前記検査対象機器において、入力追跡用ヘッダh’と、入力暗号文Cに基づいて、前記検査対象機器に格納された秘密鍵d、および公開鍵eを適用した復号処理により復号文M’を取得し、取得した復号文M’と前記入力暗号文Cに対応する平文Mとの比較処理を実行する比較処理ステップと、
前記比較処理ステップにおいて、復号文M’=平文Mであることを条件として、前記識別子jに対応するエンティティを不正エンティティとして特定する不正エンティティ特定ステップと、
を有することを特徴とするコンピュータ・プログラムにある。
【0030】
【作用】
本発明の構成によれば、正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において、復号機器の検証に基づいて不正エンティティを特定する際に、正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力し、検査対象機器に格納された秘密鍵dを適用した復号処理により復号文M’を取得し、取得した復号文M’と入力暗号文Cに対応する平文Mとの比較を実行して復号文M’=平文Mであることを条件として識別子jに対応するエンティティを不正エンティティとして特定することが可能となり、不正復号器からの不正鍵の取得や鍵の解析処理を実行することなく不正エンティティの特定処理を実現することが可能となる。
【0031】
さらに、本発明の構成によれば、暗号文を生成し提供するデータ提供手段と、暗号文を受領し復号するデータ受領手段とを有する暗号処理システムにおいて、公開鍵e、および、データ受領手段各々に対応する秘密鍵dを設定し、秘密鍵dを正規エンティティ固有の秘密鍵として構成するとともに、暗号文Cを復号する際に処理すべきヘッダ情報を正規エンティティの識別子jを含むヘッダhとして設定することで、不正エンティティの追跡処理の際に、不正エンティティと推測されるエンティティの識別子を設定したヘッダを追跡用ヘッダとして構成して復号器に入力し、出力結果のデータ検証を実行することにより、不正エンティティの特定が可能となる安全な暗号処理システムが実現される。
【0032】
なお、本発明のコンピュータ・プログラムは、例えば、様々なプログラム・コードを実行可能な汎用コンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体、例えば、CDやFD、MOなどの記憶媒体、あるいは、ネットワークなどの通信媒体によって提供可能なコンピュータ・プログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、コンピュータ・システム上でプログラムに応じた処理が実現される。
【0033】
本発明のさらに他の目的、特徴や利点は、後述する本発明の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
【0034】
【発明の実施の形態】
以下、本発明の暗号処理システムにおける不正エンティティ追跡方法、暗号処理システム、および不正エンティティ追跡処理装置、並びにコンピュータ・プログラムについて詳細に説明する。
【0035】
本発明は、放送型暗号(Broadcast Encryption)を適用した暗号通信システム、およびその通信システムにおける不正追跡処理方法である。放送型暗号(Broadcast Encryption)は、前述したように、正当な利用権を有するユーザに対するコンテンツデータの限定的利用を実現しようとするものであり、データ提供者、またはシステム管理者が、正当なデータ利用権を持つ受信者等のユーザ集合にのみ秘密情報(秘密鍵)を配っておき、平文(コンテンツ等)をセッション鍵で暗号化したものと、セッション鍵を各受信者の秘密鍵で復号するためのヘッダを同報配信または提供するものである。これにより、ヘッダと暗号文は任意のユーザが取得可能であるが、ヘッダを復号し、セッション鍵を得ることができるのは秘密鍵を所有するユーザのみであるため、暗号文を復号して平文を取得することの可能なユーザを制限した構成、いわゆる限定ユーザに対するコンテンツ配信が可能となる。
【0036】
このような、放送型暗号(Broadcast Encryption)において、正当な秘密鍵を持たないエンティティにおいてセッション鍵生成が容易に行われると、受信者制限構成は成立しなくなる。従って、セッション鍵の生成困難性が、放送型暗号(Broadcast Encryption)において求められる1つの重要な要素となる。
【0037】
また、放送型暗号(Broadcast Encryption)においては、秘密鍵を保持する受信者が、自身の秘密鍵を不正に複製し、他のユーザに提供したり、複製鍵を用いて多数の不正復号器を作成してしまう恐れがある。従って、このような不正復号器の生成、利用についても排除することが必要となる。このような事態に対処するためには、例えば不正復号器の格納情報に基づいて秘密鍵の漏洩ルートを探索可能であること、すなわち、不正追跡処理可能性があることが求められる。このように、不正追跡処理可能性も、放送型暗号(Broadcast Encryption)において求められる1つの重要な要素となる。
【0038】
本発明の暗号通信システムの処理構成、および上述したセッション鍵の生成困難性、不正追跡処理可能性について、以下、説明する。なお、説明は、下記の項目順に行なう。
1.用語、記号の説明
2.暗号通信処理および不正追跡処理
3.ブラックボックス追跡処理の安全性の証明
4.不正追跡処理装置、エンティティを構成する装置例
【0039】
[1.用語、記号の定義]
まず、以下の説明において使用する用語および記号の定義について説明する。本明細書においては、暗号文を同報配信するシステムを、単にシステムと呼ぶものとする。また、不正追跡処理装置、および復号機器やプログラム、ユーザ等を総称してエンティティと呼ぶものとする。システムの各要素を以下のように定義する。
【0040】
正規エンティティ:システムに加入しているエンティティであり、システム管理者から正規な個人秘密鍵を付与されているエンティティ。
個人秘密鍵:暗号文(暗号化コンテンツ)に対応するヘッダ情報に基づいて、セッション鍵(暗号文の復号に適用する鍵)を取得するために適用する鍵として利用可能な個人秘密情報であり、システム管理者から正規エンティティに対して、安全な通信路あるいは記憶媒体を介して配布される。
配信用ヘッダ:セッション鍵を各個人秘密鍵で復号するための情報であり、同報配信される暗号文と同様、同報配信される。任意エンティティが受信可能である。
追跡用ヘッダ:不正追跡処理を実行する際に不正追跡処理実行者により生成され追跡処理対象の復号器に入力される。
【0041】
不正者:正規に取得した自身の個人秘密鍵の複製、あるいは個人秘密鍵と同等の処理が可能な鍵を生成して他のエンティティに提供したり、新たな復号器に格納するなどして、不正な復号処理装置の生成を行なう正規エンティティ。
不正鍵:本来の不正者が特定不可能である、個人秘密鍵と同等の性質を持つ鍵であり、不正者により提供され不正復号器に格納される鍵。
不正復号器:個人秘密鍵を不正に複製した複製鍵、もしくは不正者が提供した不正鍵が格納されたデータ復号処理を実行するデータ処理装置。
【0042】
なお、不正者が結託するとは、不正者が自身の個人秘密鍵を提供し合い、不正鍵を構成しようと試みることをいい、結託閾値とは、不正鍵を構成するために必要な最低限の不正者数を言うものとする。以下、本発明で用いる記号について説明する。
【0043】
M:平文
s:セッション鍵
C:暗号文
(b):共通鍵aによるbの暗号
(c):共通鍵aによるcの復号
h(a,b):セッション鍵aと乱数bからなる配信用ヘッダ
h’(a,b):セッション鍵aと乱数bからなる追跡用ヘッダ
n:正規エンティティの総数
T:送信者
:システムで用いる公開鍵
entity:i 番目のエンティティ
:エンティティi(entity)の個人秘密鍵
:エンティティi(entity)に固有の番号(エンティティ識別子)
(a,b,c..)modN:(amodN,bmodN,cmodN...)を意味する
【0044】
[2.暗号通信処理および不正追跡処理]
次に、本発明を適用した暗号通信処理、および不正追跡処理について説明する。本発明を適用した暗号通信処理、および不正追跡処理を実行する場合、その処理フェーズは、大きく分けて準備処理、暗号データ配信処理、暗号データ復号処理、不正者追跡処理の4つの処理フェーズに分割される。不正追跡処理フェーズには、通常追跡とブラックボックス追跡の二種類の追跡方法が存在する。ここで、通常追跡とは、不正復号器中に含まれる個人秘密鍵が取得可能であり、復号器から取得した鍵の解析を伴う不正追跡処理を意味し、ブラックボックス追跡とは、不正復号器中に含まれる個人秘密鍵が取得不可能である場合などにおいて、復号器から鍵を取得することなく、不正復号器へのデータ入力と、その出力データに基づいて不正者の個人秘密鍵を特定する追跡処理を意味する。以下、各フェーズにおける処理の詳細について説明する。
【0045】
(2.1.準備処理)
同報配信システムのシステム管理者は以下の手順にしたがって、セッション鍵sおよび暗号文Mを配信する準備を行う。なお、システム管理者は、同報配信を実行する送信者が兼ねる構成としても、あるいは、送信者とは別エンティティとしてもよい。
【0046】
準備処理は、公開鍵の生成と公開処理、および秘密鍵の生成と配布処理によって構成される。準備処理に関する一連の手続きについて、図1〜図3の処理フローを参照して説明する。
【0047】
図1は、公開鍵の生成と公開処理、および秘密鍵の生成と配布処理を含む準備処理全体の処理フローを示し、図2は、図1におけるステップS108の公開鍵生成処理の詳細処理フローを示している。さらに、図3は、図1におけるステップS110の秘密鍵生成処理の詳細処理フローを示している。
【0048】
図1に示す処理フローに従って、準備処理の一連の手続きについて説明する。ステップS101において、互いに異なる大きな素数:p、qを生成し、ステップS102において、P=2p+1、Q=2q+1を満たす素数P,Qを生成する。また、N=PQとしてNを生成する。さらに、ステップS103において、素数p,qに基づいてλ=pqを計算する。
【0049】
次に、ステップS104〜S105において、乗法群:Z の元のうち、位数がλとなる元:Gを求める。なお、乗法群:Z とは、ZかつNと互いに素な整数の集合(=(Z/NZ))である。
【0050】
ステップS106において、乗法群:Z λ上の乱数aを生成する。すなわちaを乗法群:Z λの元として生成し、乗法群:Z λ上の多項式:f(x)=a+xを構成する。次に、ステップS107において、乱数:Rを乗法群:Z λの元として生成する。
【0051】
次に、ステップS108において公開鍵eを生成する。まず、乱数:R、および元:Gに基づいて、公開鍵:e(N,G,Y,Y)の要素:Y,Yを下記式(式1)に基づいて計算する。
【0052】
【数19】
Figure 2004221800
【0053】
次に、式1によって算出される要素:Y,Yと、ステップS102で生成したPQに基づくN(N=PQ)と、ステップS104で計算した乗法群:Z の元:Gを含む公開鍵:eを、以下のように構成し、公開する。
=(N,G,Y,Y
【0054】
図2を参照してステップS108の公開鍵:e(N,G,Y,Y)生成処理の詳細について説明する。
【0055】
まず、ステップS201において、図1のステップS102で生成したN(N=PQ)と、ステップS104で計算した乗法群:Z の元:G、ステップS106において設定した乗法群:Z λ上の乱数:a、さらに、ステップS107で設定した乱数:Rの組(N,G,R,a)を入力する。
【0056】
ステップS202、およびステップS203において、上記式(式1)に従って、公開鍵:e=(N,G,Y,Y)の要素:Y,Yを計算する。ステップS204において、公開鍵:e(N,G,Y,Y)を出力する。
【0057】
図1の処理フローに戻り、準備処理の手続きについて説明を続ける。図2の処理フローに従って、生成された公開鍵:e=(N,G,Y,Y)は、ステップS109において公開処理がなされる。この公開鍵の公開処理は、例えば、ネットワーク上において制限なくアクセス可能なサーバに格納する処理、あるいは同報配信処理、あるいはDVD、CD等、各種記憶媒体に格納し提供する処理などによって実行される。この公開処理によって、公開鍵:e=(N,G,Y,Y)は、正規エンティティ、および正規エンティティ以外のエンティティも取得可能となる。
【0058】
次に、ステップS110において、個人秘密鍵:d=(j,Rf(j−1modλ)の生成処理を実行する。個人秘密鍵生成に関する詳細処理について、図3の処理フローを参照して説明する。
【0059】
まず、ステップS301において、図1のステップS102で生成したN(N=PQ)と、ステップS103において、素数p,qに基づいて生成されたλ=pqと、ステップS107で設定した乱数:R、ステップS106において設定した乗法群:Z λ上の乱数:aの組(N,λ,R,a)を入力する。
【0060】
次に、各エンティティi(entity)ごとの秘密鍵を生成するため、iの値の設定および更新処理を実行する。ステップS302においてi←0とし、ステップS303において、i←i+1とする。
【0061】
ステップS304、ステップS305では、エンティティi(entity)ごとにgcd(a+j,λ)=1を満たすエンティティi(entity)ごとの固有の番号(エンティティ識別子):jを選択する。なお、gcd(a,b)は、aとbの最大公約数である。
【0062】
ステップS306において、Rf(j−1modλ=R(a+j−1modλを算出し、ステップS307において、秘密鍵:d=(j,Rf(j−1modλ)をエンティティi(entity)に対応する秘密情報、すなわち秘密鍵:dとして出力する。
【0063】
図1のステップS111では、上述した処理によって生成した各エンティティi(entity)に対応する秘密鍵:d=(j,Rf(j−1modλ)を各正規ユーザに対して送信する。
【0064】
エンティティに対する秘密鍵の送信は、図4に示すように、システム管理者101から、暗号文の復号処理を実行するユーザ側エンティティ121(1)〜121(n)に対して、例えば1対1通信路等、安全な通信路を介して送信される。
【0065】
以上の処理により、公開鍵:e=(N,G,Y,Y)、および、各エンティティi(entity)に対する秘密鍵:d=(j,Rf(j−1modλ)を設定し、準備処理を終了する。
【0066】
なお、上述の説明では、公開鍵を公開鍵:e=(N,G,Y,Y)として設定する例について説明したが、例えば任意のk個の乱数を設定して公開鍵:e=(N,G,Y,Y,..,Yk−1)を設定する構成としてもよい。
【0067】
すなわち、公開鍵を、P、Qに基づく合成数:N=PQと、
乗法群:Z の元のうち、位数がλとなる元:Gと、
1以上の任意整数=kとし、乗法群:Z λの元:a,...,ak−1に基づく、乗法群:Z λ上の多項式:f(x)=a+ax+...ak−1k−1と、乱数:R∈Z とに基づく算出値:Y,Y,..,Yk−1、とを含む下記式(式2)として設定する構成としてもよい。
【0068】
【数20】
Figure 2004221800
【0069】
また、この公開鍵:e=(N,G,Y,Y,..,Yk−1)に対して、ユーザ側のデータ受信手段(エンティティi)各々に対応する秘密鍵:dは、乗法群:Z λ上の多項式:f(x)=a+ax+...ak−1k−1を適用し、データ受信手段(エンティティi)ごとの識別子であり、gcd(a+j、λ)=1を満たすエンティティ識別子:jを含む構成、すなわち、
=(j,Rf(j−1modλ)
として設定する。
【0070】
上述したような任意数のkに対する公開鍵:e=(N,G,Y,Y,..,Yk−1)を設定する構成が、一般的な構成である。この一般構成において、k=2、a=1として設定することで、公開鍵:e=(N,G,Y,Y)として設定可能となる。公開鍵を、e=(N,G,Y,Y)として設定することで、簡易な情報の処理による暗号通信、例えば後述するヘッダ構成を簡略化したり、復号処理を簡略化することが可能となる。
【0071】
(2.2.配信処理)
次に、暗号化されたデータの同報配信処理について、図5の処理フローを参照して説明する。暗号化データの同報配信を実行するデータ送信者:Tは、暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s,r)を生成し、送信データ:(h(s,r),C)をデータ受信者としてのエンティティi(entity)に配信する。データ配信は、同報配信処理として実行される。従って、データを受信可能なエンティティは、正当な秘密鍵秘密鍵:dを有するエンティティとは限らず、誰でもが受信可能である。
【0072】
暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s,r)を含む送信データ:(h(s,r),C)の生成、配信処理について、図5の処理フローを参照して説明する。
【0073】
ステップS401において、セッション鍵:sを生成する。次に、ステップS402において、送信すべき平文:Mに対して、セッション鍵:sを適用して暗号化処理を実行して暗号文:C=E(M)を生成する。
【0074】
次に、ステップS403において、システムで用いる公開鍵:e=(N,G,Y,Y)、を入力し、ステップS404において、乱数:rをランダムに生成する。
【0075】
次に、ステップS405において、ステップS404で生成した乱数:r、および公開鍵:e=(N,G,Y,Y)の要素に基づいて、ヘッダ:h(s,r)=(sY,Y ,G)modNを計算する。
【0076】
最後に、ステップS406において、ステップS402で生成した暗号文:C=E(M)と、ステップS405で生成した、ヘッダ:h(s,r)=(sY,Y ,G,)modNとの送信データ:h(s,r),Cを送信する。
【0077】
上述の処理により、データ送信者:Tにおいて、暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s,r)が生成され、データ受信者としてのエンティティi(entity)に同報配信される。
【0078】
図6に、送信者201からユーザ側エンティティ121(1)〜121(n)に対する暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s,r)から成る送信データ:(h(s,r),C)の送信処理構成を示す。公開鍵202は、例えば、ネットワーク上において制限なくアクセス可能なサーバに格納され、正規エンティティ、および正規エンティティ以外のエンティティも取得可能である。
【0079】
暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s,r)から成る送信データ:(h(s,r),C)は、同報通信路を介して配信され、正規エンティティ、および正規エンティティ以外のエンティティも取得可能である。
【0080】
なお、これらの情報送信は、衛星等を介した無線送信、インターネット等を介した有線送信、さらにDVD、CD等の媒体を介した提供等、様々な手法で実行可能である。
【0081】
なお、上述の説明では、公開鍵を公開鍵:e=(N,G,Y,Y)として設定した場合のデータ配信例について説明したが、例えば任意のk個の乱数を設定して公開鍵:e=(N,G,Y,Y,..,Yk−1)を設定する構成とした場合は、ヘッダ:h(s,r)=(sY,Y ,...,Yk−1 )modNとして設定する。
【0082】
(2.3.復号処理)
データ送信者:Tから暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s、r)を含むデータ:(h(s,r),C)を受信したエンティティi(entity)は、暗号文:Cとヘッダ:h(s,r)から、平文:Mを得る。この復号処理について、図7の処理フローに従って説明する。
【0083】
まず、ステップS501において、ヘッダ:h(s,r)、暗号文:C、公開鍵:e=(N,G,Y,Y)、個人秘密鍵:d=(j,Rf(j−1modλ)を入力する。ステップS502において、以下の計算式(式3)に従った演算により、セッション鍵:sを得る。
【0084】
【数21】
Figure 2004221800
【0085】
次に、ステップS503において、セッション鍵:sと暗号文:Cから、以下の計算により平文:Mを求める。
M=D(C)
【0086】
ステップS504において、平文:Mを出力する。これらの処理により、正当な個人秘密鍵:dを有するエンティティi(entity)は、データ送信者:Tから暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s,r)を含むデータ:(h(s,r),C)を受信し、平文:Mを得ることができる。
【0087】
なお、上述の説明では、公開鍵を公開鍵:e=(N,G,Y,Y)として設定した場合の復号処理例について説明したが、任意のk個の乱数を設定して公開鍵:e=(N,G,Y,Y,..,Yk−1)を設定する構成とした場合は、ヘッダ:h(s,r)=(sY,Y ,...,Yk−1 )modNを受信することとなり、また、ユーザ側のデータ受信手段(エンティティi)各々に対応する秘密鍵:dは、乗法群:Z λ上の多項式:f(x)=a+ax+...ak−1k−1を適用し、データ受信手段(エンティティi(i=任意の整数))ごとの識別子であり、gcd(a+j、λ)=1を満たすエンティティ識別子:jを含む構成、すなわち、
=(j,Rf(j−1modλ)
として設定されることになる。
【0088】
この場合、セッション鍵:sの取得処理は、下記式(式4)に基づいて実行されることになる。
【0089】
【数22】
Figure 2004221800
【0090】
(2.4.追跡処理)
追跡フェーズには、以下の2通りの追跡法が存在する。通常追跡処理と、ブラックボックス追跡処理の2通りの処理が存在する。通常追跡処理と、ブラックボックス追跡処理の概要は、以下のとおりである。
【0091】
(1)通常追跡処理
不正な復号を実行している機器(不正復号器:X)が発見され、その中にエンティティu(entity)に対して提供されているはずの秘密鍵:d=(j,Rf(j−1modλ)が含まれていた場合、送信者:Tまたはシステム管理者は、エンティティu(entity)を不正復号器:Xに秘密鍵:d=(j,Rf(j−1modλ)を不正に提供した不正者として特定する不正追跡処理である。
【0092】
不正復号器内の秘密鍵:d=(j,Rf(j−1modλ)には、エンティティu(entity)に固有の番号(エンティティ識別子):jが含まれているので、システム管理者が、正規な個人秘密鍵を提供したエンティティ情報と、エンティティu(entity)に固有の番号(エンティティ識別子)とを対応付けた正規エンティティ情報テーブルを保持することにより、テーブルに基づいて、不正復号器に秘密鍵を提供した秘密鍵保持者、すなわちエンティティu(entity)を不正者として特定することが可能となる。
【0093】
(2)ブラックボックス追跡処理
不正復号器が発見され、その中に含まれる不正者の個人秘密鍵dが取得できない場合など、秘密鍵の解析を行うことなく不正者の個人秘密鍵dおよび不正者entityを特定する不正追跡処理方式である。
【0094】
ブラックボックス追跡処理は、追跡用ヘッダ:h(s,r)を生成し、不正復号器と推定される機器に暗号文:Cとともに入力し、その出力、すなわち復号結果に基づいて不正者の個人秘密鍵dおよび不正者entityを特定する処理である。ブラックボックス追跡処理の詳細について、以下説明する。
【0095】
図8にブラックボックス追跡処理の処理手順を説明するフローチャートを示す。図8の各ステップの詳細について説明する。まず、ステップS601において、セッション鍵:sを生成する。次に、ステップS602において、任意の平文:Mに対して、セッション鍵:sを適用して暗号化処理を実行して暗号文:C=E(M)を生成する。
【0096】
次に、ステップS603において、システムで適用されている公開鍵:e=(N,G,Y,Y)、を入力し、次に、各検査対象機器i(entity)ごとの処理を実行するため、iの値の設定および更新処理を実行する。ステップS604においてi←0とし、ステップS605において、i←i+1とする。
【0097】
次に、ステップS606において、不正者と推測されるエンティティui(entityui)に固有の番号(エンティティ識別子):juiを選択する。
【0098】
次に、ステップS607において、乗法群:Z λ上の乱数a’を生成する。a’を乗法群:Z λの元として生成し、乗法群:Z λ上の多項式:f(jui)=a+juiを生成する。次に、ステップS608において、乱数:rを生成する。
【0099】
次に、ステップS609において、ステップS601で生成したセッション鍵:sと、ステップS608で生成した乱数:rとに基づく追跡用ヘッダ:h’(s,r)を下記式(式5)に従って設定して、検査対象復号器に、ステップS602で生成した暗号文:Cとともに入力する。
【0100】
【数23】
Figure 2004221800
【0101】
次に、ステップS610において、検査対象復号器において、入力された追跡用ヘッダ:h’(s,r)と、暗号文:Cとに基づく処理、すなわちヘッダの処理によるセッション鍵取得と、取得したセッション鍵に基づく暗号文の復号処理を実行する。ステップS610の処理の詳細について、図9のフローチャートを参照して説明する。
【0102】
まず、ステップS701において、入力した追跡用ヘッダ:h’(s,r)、暗号文:C、公開鍵および機器内に格納した個人秘密鍵に基づいて、以下の計算式(式6)に従った演算により、セッション鍵:s’を得る。
【0103】
【数24】
Figure 2004221800
【0104】
次に、ステップS702において、セッション鍵:s’と暗号文:Cから、以下の計算により復号:M’を求める。
M’=DS’(C)
【0105】
次にステップS703において、復号文:M’を出力する。図8の処理フローに戻りブラックボックス追跡処理の手順の説明を続ける。
【0106】
ステップS610において、図9のフローで説明したように、検査対象機器に入力した追跡用ヘッダ:h’と、暗号文:Cとによって復号文:M’が取得されると、ステップS611において、復号文:M’と本来の平文:Mとの比較を実行する。平文:Mと入力暗号文:Cとの関係は、C=E(M)である。すなわち、平文:Mに対してセッション鍵:sを適用して暗号化処理を実行して暗号文:Cが生成される。
【0107】
ステップS611において、復号文:M’と本来の平文:Mとが一致した場合、検査対象機器に入力した追跡用ヘッダ:h’(s,r)に基づいて正しいセッション鍵が取得され、取得した正しいセッション鍵に基づいて暗号文:Cの復号処理が正しく実行されたことになる。
【0108】
入力した追跡用ヘッダ:h’(s,r)は、不正者と推測されるエンティティui(entityui)に固有の番号(エンティティ識別子):juiを適用して生成されたヘッダであり、この追跡用ヘッダ:h’(s,r)に基づいて正しいセッション鍵を取得できる機器は、不正者と推測されるエンティティui(entityui)の秘密鍵:dui=(jui,Rf(jui−1modλ)を持つ機器であることが明らかとなる。
【0109】
従って、ステップS611において、復号文:M’と本来の平文:Mとが一致した場合、検査対象機器には、秘密鍵:dui=(jui,Rf(jui−1modλ)が格納されていると判断し、ステップS612において、エンティティui(entityui)を不正者として特定する。すなわち、エンティティui(entityui)が、自己の秘密鍵を検査対象機器に不正にコピー格納していると判定する。
【0110】
例えば複数の不正機器と思われる検査対象機器が存在し、その検査対象機器に対して同一の追跡用ヘッダを入力し、それぞれが正しい復号結果(M’=M)を出力した場合に、エンティティui(entityui)が、自己の秘密鍵を複数の復号機器に不正にコピー格納していると判定するものである。
【0111】
ステップS611において、復号文:M’と本来の平文:Mとが一致しなかった場合、検査対象機器には、秘密鍵:dui=(jui,Rf(jui−1modλ)が格納されていると判断されないことになる。この場合は、ステップS605に戻り、値:iの更新処理(i=i+1)を実行し、異なる不正者と推測されるエンティティui(entityui)に固有の番号(エンティティ識別子):juiを選択して、同様の処理、すなわち、追跡用ヘッダの生成処理、生成した追跡用ヘッダと暗号文の検査対象機器に対する入力、および検査対象機器における復号処理を実行する。
【0112】
検査対象機器からの出力結果としての復号文:M’と元の平文:Mとが一致するまで同様の処理を実行し、一致した場合に、そのときの追跡用ヘッダに適用したエンティティui(entityui)に固有の番号(エンティティ識別子):juiを持つエンティティui(entityui)を、自己の秘密鍵を検査対象機器に不正にコピー格納したと判定する。
【0113】
上述したように、不正追跡処理は、図8に従った処理を実行する装置、具体的には、PC等のコンピュータ・プログラムを実行可能な機器によって構成される不正追跡処理装置によって実行可能である。
【0114】
不正追跡処理装置の具体的な構成要素を簡潔にまとめると、以下の構成要素を持つ機器であることが条件となる。すなわち、正規ユーザの識別子jを含む追跡用ヘッダh’(s,r)と、暗号文Cを検査対象機器に入力するデータ入力手段と、検査対象機器に格納された秘密鍵d、および公開鍵eを適用した暗号文Cの復号処理により出力される復号文M’を取得し入力暗号文Cに対応する平文Mと比較する比較手段と、比較手段において、M’=Mであることを条件として、前記識別子jに対応するユーザを不正者として特定する不正者特定手段とを有する装置である。ただし、これらの各手段は、具体的には図8に示す処理フローに従って処理を実行するCPU等の制御手段によって構成される。具体的なハードウェア構成例については、後段において説明する。
【0115】
なお、上述の説明では、公開鍵を公開鍵:e=(N,G,Y,Y)として設定した場合の復号処理例について説明したが、任意のk個の乱数を設定して公開鍵:e=(N,G,Y,Y,..,Yk−1)を設定する構成とした場合は、追跡用ヘッダ:h’(s,r)は、下記式(式7)として設定する。
【0116】
【数25】
Figure 2004221800
【0117】
ユーザ側のデータ復号機器(エンティティi)各々に対応する秘密鍵:dは、乗法群:Z λ上の多項式:f(x)=a+ax+...ak−1k−1を適用し、データ復号機器(エンティティi(i=任意の整数))ごとの識別子であり、gcd(a+j、λ)=1を満たすエンティティ識別子:jを含む構成、すなわち、
=(j,Rf(j−1modλ)
として設定されることになる。この場合、セッション鍵:sの取得処理は、前記式(式4)に基づいて実行されることになる。
【0118】
[3.ブラックボックス追跡処理の安全性の証明]
次に、上述したブラックボックス追跡処理の安全性について証明する。上述したように、ブラックボックス追跡を実現するためには、不正と思われる復号器に対して追跡用ヘッダを入力し、その出力結果が正しい平文であるかどうかを判断する処理が必要となる。
【0119】
このとき、検査すべき復号器が、追跡用ヘッダと、通常の配信用ヘッダとを判別し、配信用ヘッダが入力された場合のみ復号結果を出力し、それ以外の場合、すなわち追跡用ヘッダの入力時には何も出力しないように設定されてしまうと、不正者を特定することは不可能となる。従って、ブラックボックス追跡を確実に実行するためには、検査対象機器に入力された情報が、追跡用ヘッダか否かを区別できないようにする必要がある。
【0120】
このように、追跡用ヘッダと、通常の配信用ヘッダとの判別が不可能であることを証明することで、ブラックボックス追跡処理の安全性が証明される。以下、ブラックボックス追跡機能が確実に実行できる、すなわち、いかなる不正復号器も、入力された情報が追跡用ヘッダであるか否かを決定することができないことを示す。
【0121】
上述した暗号処理では方式そのものが合成数を法とする乗法群上で構成されているため、ブラックボックス追跡を実現するためには、合成数を法とする乗法群におけるDecision Diffie−Hellman 問題を解くことが困難でなければならない。まずDicision Diffie−Hellman問題(DDHP)の定義を簡単に示す。
【0122】
生成元Gによって生成される有限巡回群を[Grp]とする。また、a、b、cを乱数とする。このとき、Decision Diffie−Hellman問題とは、(G、G、G)∈Grpが与えられたときに、c=ab mod|Grp|(ただし、|Grp|はGrpの位数を表す)であるか否かを1/2より高い確率で決定する問題をいう。
【0123】
また、Decision Diffie−Hellman問題を解くとは、(G、(G、G、G)∈Grpが与えられたときに、c=ab mod|Grp|(ただし、|Grp|はGrpの位数を表す)であるか否かを1/2より高い確率で決定する確率的多項式時間アルゴリズムが存在することを表す。
【0124】
合成数を法とする乗法群におけるDDHPを解くことが可能であれば、検査対象機器は以下のようにして入力された情報が配信用ヘッダであるか追跡用ヘッダであるかを1/2よりも高い確率で判断することが可能となる。
【0125】
検査対象機器に入力されたヘッダを、
H(s、r)=(h、h、h
とすると、H(s、r)が配信用ヘッダである場合、公開鍵eおよび配信用ヘッダh(s、r)は、それぞれ、
=(N、G、Y、Y)、および
h(s、r)=(sY、Y 、G)modN
となる。このとき、YおよびhmodN、hmodNを用いて合成数を法とする乗法群におけるDDHPを解くことにより、下記式(式8)の等号が成立するか否かを判断する。
【0126】
【数26】
Figure 2004221800
【0127】
上記式(式8)の等号が成立するならば入力情報が配信用ヘッダであるとする。
【0128】
ブラックボックス追跡を実現するためには、合成数を法とする乗法群におけるDDHPを解くことが困難である必要がある。これに関して、Shoup は、generic algorithmを用いて群[Grp]におけるDDHPを解くためには、群[Grp]の位数の素因数のうち最小の素数をq’として,最低でもΘ(q’1/2)の計算量が必要であることを証明している[V.Shoup,“Lower Bounds for Discrete Logarithms and Related Problems,”LNCS1233,EUROCRYPT‘97,pp.256−266,Springer−Verlag,Berlin,1997.]。
【0129】
また、大きな2つの素数の積を法とする乗法群において、DDHPを解く確率的多項式時間アルゴズムは知られておらず、前述のような群においてDDHPを解くことは困難であると考えられている。このことは、例えば[D.Boneh,“The Decision Diffie−Hellman Problem,”In Proceedings of the Third Algorithmic Number Theory Symposium,Lecture Notes in Computer Science,Vol.1423,Springer−Verlag,pp48−63,1998.]において示されている。
【0130】
上述した本発明に従ったブラックボックス追跡処理では、Nを法とする乗法群において、位数がλ=pqとなる元Gを生成元とする巡回部分群を用いているため、p,qを十分大きく設定することによりDDHPを解くことは困難となる。
【0131】
従って、検査対象機器は入力された情報が配信用ヘッダであるか否かを判断することはDDHPを解く困難性と同様であり、1/2よりも高い確率で判断することは不可能となる。すなわち、ブラックボックス追跡処理の安全性が証明される。
【0132】
従って、検査対象機器は入力された情報が配信用ヘッダであるか追跡用ヘッダであるかを1/2よりも高い確率で判断することは不可能であり、上述したブラックボックス追跡は安全に実行することが可能である。
【0133】
[4.不正追跡処理装置、エンティティを構成する装置例]
次に、先に図8を参照して説明した処理を実行する不正追跡処理装置、および暗号文:Cを受信し、ヘッダ:h(s,r)、公開鍵:e=(N,G,Y,Y)、秘密鍵:d=(j,Rf(j−1modλ)に基づいて暗号文の復号処理を実行するユーザ側エンティティ側の情報処理装置(ユーザ側情報処理装置)、および、暗号文:C、ヘッダ:h(s,r)を生成し、エンティティ側の情報処理装置にデータ送信を実行するデータ送信側情報処理装置、さらに公開鍵発行、秘密鍵発行処理を実行するシステム管理者の情報処理装置として適用可能な情報処理装置の構成例について説明する。
【0134】
上述の実施例で述べた各エンティティにおける一連の処理は、ハードウェア、ソフトウェアの組み合わせにより実行可能な処理である。すなわち、汎用のコンピュータや、マイクロコンピュータにプログラムを実行させることにより行うことが可能である。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、例えば汎用のコンピュータや1チップのマイクロコンピュータ等にインストールされる。図10は、上述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施形態としての構成例を示している。
【0135】
図10に示す情報処理装置構成例は1つの例であり、各エンティティにおける情報処理装置は、ここに示すべての機能を必ずしも備えることが要求されるものではない。図10に示すCPU(Central processing Unit)501は、各種プログラムや、OS(Operating System)を実行するプロセッサである。ROM(Read−Only−Memory)502は、CPU501が実行するプログラム、あるいは演算パラメータとしての固定データを格納する。RAM(Random Access Memory)503は、CPU501の処理において実行されるプログラム、およびプログラム処理において適宜変化するパラメータの格納エリア、ワーク領域として使用される。
【0136】
HDD504はハードディスクの制御を実行し、ハードディスクに対する各種データ、プログラムの格納処理および読み出し処理を実行する。暗号処理手段505は、送信データの暗号処理、復号処理等を実行する暗号処理部あるいは復号処理部として機能する。なお、ここでは、暗号処理手段を個別モジュールとした例を示したが、このような独立した暗号処理モジュールを設けず、例えば暗号処理プログラムをROM502に格納し、CPU501がROM格納プログラムを読み出して実行するように構成してもよい。
【0137】
メモリ(セキュアモジュール)506は例えば耐タンパ構造を持つメモリとして構成され、暗号処理に必要な鍵データ、アクセス許可書の格納領域として使用可能である。例えば、ユーザ側エンティティの情報処理装置であれば、秘密鍵:d=(j,Rf(j−1modλ)を格納する記憶部として設定される。なお、これらのデータは、他のメモリ領域、記憶媒体に格納することも可能であり、例えば公開鍵:e=(N,G,Y,Y)等の公開されたデータは、ハードディスク等に格納しても問題ない。
【0138】
バス521はPCI(Peripheral Component Internet/Interface)バス等により構成され、各モジュール、入出力インタフェース122を介した各入手力装置とのデータ転送を可能にしている。
【0139】
入力部511は、例えばキーボード、ポインティングデバイス等によって構成され、CPU501に各種のコマンド、データを入力するためにユーザにより操作される。出力部512は、例えばCRT、液晶ディスプレイ等であり、各種情報をテキストまたはイメージ等により表示する。
【0140】
通信部513はシステムの接続したエンティティ、例えば暗号データの通信エンティティとの通信処理を実行し、CPU501の制御の下に、各記憶部から供給されたデータ、あるいはCPU501によって処理されたデータ、暗号化されたデータ等を送信したり、他エンティティからのデータを受信する処理を実行する。
【0141】
ドライブ514は、フレキシブルディスク、CD−ROM(Compact Disc ReadOnly Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体515の記録再生を実行するドライブであり、各リムーバブル記録媒体515からのプログラムまたはデータ再生、リムーバブル記録媒体515に対するプログラムまたはデータ格納を実行する。
【0142】
各記憶媒体に記録されたプログラムまたはデータを読み出してCPU501において実行または処理を行なう場合は、読み出したプログラム、データは入出力インタフェース522、バス521を介して例えば接続されているRAM503に供給される。
【0143】
先に各フロー図を参照した説明内に含まれる処理を実行するためのプログラムは例えばROM502に格納されてCPU501によって処理されるか、あるいはハードディスクに格納されHDD504を介してCPU501に供給されて実行される。
【0144】
以上、特定の実施例を参照しながら、本発明について詳解してきた。しかしながら、本発明の要旨を逸脱しない範囲で当業者が該実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本発明の要旨を判断するためには、冒頭に記載した特許請求の範囲の欄を参酌すべきである。
【0145】
なお、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。
【0146】
例えば、プログラムは記憶媒体としてのハードディスクやROM(Read Only Memory)に予め記録しておくことができる。あるいは、プログラムはフレキシブルディスク、CD−ROM(Compact Disc Read Only Memory),MO(Magneto optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブル記録媒体に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブル記録媒体は、いわゆるパッケージソフトウエアとして提供することができる。
【0147】
なお、プログラムは、上述したようなリムーバブル記録媒体からコンピュータにインストールする他、ダウンロードサイトから、コンピュータに無線転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータに有線で転送し、コンピュータでは、そのようにして転送されてくるプログラムを受信し、内蔵するハードディスク等の記憶媒体にインストールすることができる。
【0148】
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【0149】
【発明の効果】
以上、説明したように、本発明の構成によれば、正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において、復号機器の検証に基づいて不正エンティティを特定する際に、正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力し、検査対象機器に格納された秘密鍵dを適用した復号処理により復号文M’を取得し、取得した復号文M’と入力暗号文Cに対応する平文Mとの比較を実行して復号文M’=平文Mであることを条件として識別子jに対応するエンティティを不正エンティティとして特定することが可能となり、不正復号器からの不正鍵の取得や鍵の解析処理を実行することなく不正エンティティの特定処理を実現することが可能となる。
【0150】
さらに、本発明の構成によれば、暗号文を生成し提供するデータ提供手段と、暗号文を受領し復号するデータ受領手段とを有する暗号処理システムにおいて、公開鍵e、および、データ受領手段各々に対応する秘密鍵dを設定し、秘密鍵dを正規エンティティ固有の秘密鍵として構成するとともに、暗号文Cを復号する際に処理すべきヘッダ情報を正規エンティティの識別子jを含むヘッダhとして設定することで、不正エンティティの追跡処理の際に、不正エンティティと推測されるエンティティの識別子を設定したヘッダを追跡用ヘッダとして構成して復号器に入力し、出力結果のデータ検証を実行することにより、不正エンティティの特定が可能となる安全な暗号処理システムが実現される。
【図面の簡単な説明】
【図1】公開鍵の生成と公開処理、および秘密鍵の生成と配布処理を含む準備処理全体の処理フローを示す図である。
【図2】図1におけるステップS108の公開鍵生成処理の詳細処理フローを示す図である。
【図3】図1におけるステップS110の秘密鍵生成処理の詳細処理フローを示す図である。
【図4】システム管理者から、各エンティティに対する安全な通信路を介した秘密鍵送信構成を説明する図である。
【図5】暗号化されたデータの同報配信処理について説明するフロー図である。
【図6】送信者から各エンティティに対する暗号文:Cと、暗号文に対する付加情報としてのヘッダ:h(s、r)から成る送信データ:C,h(s、r)の送信処理構成を示す図である。
【図7】暗号文:Cとヘッダ:h(s、r)を含むデータを受信したエンティティにおける復号処理の手順を説明するフロー図である。
【図8】ブラックボックス追跡処理の処理手順を説明するフロー図である。
【図9】ブラックボックス追跡処理における検査対象機器の復号処理手順を説明するフロー図である。
【図10】各エンティティの情報処理装置の構成例を示す図である。
【符号の説明】
101 システム管理者
121 ユーザ側エンティティ
201 送信者
202 公開鍵
501 CPU
502 ROM
503 RAM
504 HDD
505 暗号処理手段
506 メモリ
511 入力部
512 出力部
513 通信部
514 リムーバブル記憶媒体
521 バス
522 入出力インタフェース[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an unauthorized entity tracking method, a cryptographic processing system, an unauthorized entity tracking processing device, and a computer program in a cryptographic processing system. Further, in detail, in a system for distributing encrypted data by, for example, broadcast communication, the use of a device or a user who does not have a legitimate data use right is excluded. If there is unauthorized use of data to which an unauthorized key generated based on a legitimate personal secret key distributed and obtained is used, an unauthorized key is obtained from an unauthorized decryptor that stores the unauthorized key and analyzed without analyzing the key. The present invention relates to an illegal entity tracking method, a cryptographic processing system, an unauthorized entity tracking processing device, and a computer program in a cryptographic processing system capable of realizing black box tracking for specifying usage.
[0002]
[Prior art]
In recent years, with the development of network communication and electronic commerce, ensuring security in communication has become an important issue. One method of ensuring security is encryption technology, and communication using various encryption methods is actually performed at present.
[0003]
Encryption methods are roughly classified into a common key method and a public key method. The common key method is also called a symmetric encryption method, and both the sender and the receiver have a common key. As a typical method of the common key system, there is a DES (Data Encryption Standard). A feature of the DES algorithm is that encryption and decryption can be performed by almost the same algorithm.
[0004]
A configuration in which the key of the sender and the key of the receiver are different from each other in the common key cryptosystem is a public key system or an asymmetric cryptosystem. In a public key cryptosystem, unlike a common key cryptosystem in which a common key is used for encryption and decryption, a secret key which needs to be kept secret is only required to be held by a specific person, which is advantageous in key management. . However, the public key cryptosystem has a lower data processing speed than the common key cryptosystem, and is generally used for objects with a small amount of data, such as private key distribution and digital signatures. A representative public key cryptosystem is RSA (Rivest-Shamir-Adleman) cryptosystem. This uses a product of two very large prime numbers (for example, 150 digits), and makes use of the difficulty of performing a factorization of a product of two large prime numbers (for example, 150 digits).
[0005]
In the public key cryptosystem, the public key can be used by an unspecified number of people, and a method of using a public key certificate to certify whether the distributed public key is valid or not is known. Many are used. For example, the user A generates a pair of a public key and a secret key, sends the generated public key to a certificate authority, and obtains a public key certificate from the certificate authority. User A publishes the public key certificate to the public. An unspecified user obtains a public key through a predetermined procedure from a public key certificate, encrypts a document or the like, and sends it to the user A. The user A is a system for decrypting an encrypted document or the like using a secret key. The user A signs a document or the like using a private key, and an unspecified user obtains a public key from a public key certificate through a predetermined procedure and verifies the signature. .
[0006]
A public key certificate is a certificate issued by a certificate authority or an issuing authority (CA: Certificate Authority or IA: Issuer Authority) in a public key cryptosystem, and a user submits his / her own ID and public key to a certificate authority. Thus, the certificate is created by the certificate authority adding information such as the ID and the expiration date of the certificate authority and further adding a signature by the certificate authority.
[0007]
As a public key cryptosystem, a discrete logarithmic cryptosystem utilizing the difficulty of the discrete logarithm problem when n is a prime number is known in addition to the RSA system described above. This discrete logarithmic encryption is used in DSA (Digital Signature Standard), which is known as an American standard digital signature scheme. V. Miller, N.M. Elliptic curve cryptography (ECC) proposed by Koblitz has recently attracted attention in terms of security and high speed. Elliptic curve cryptography is said to have the same strength as a RSA 1024-bit key with a 160-bit key.
[0008]
When pay content is provided to a plurality of recipients by pay broadcast, a recording medium such as a DVD or a CD, or content distribution via the Internet, the content can be encrypted and only the recipient who has purchased the content can decrypt it. It is necessary to be. As described above, there is a broadcast-type encryption (Broadcast Encryption) as a method of efficiently distributing the same cipher text to a plurality of recipients and enabling only a specific recipient to decrypt the cipher text.
[0009]
Broadcast encryption is one mode of the above-mentioned public key cryptosystem, in which a sender (or a system operator) distributes confidential information only to a specific set of recipients, and transmits plaintext (contents, etc.). It broadcasts a header encrypted with a session key and a header for decrypting the session key with secret information of each receiver.
[0010]
The header and the ciphertext can be obtained by any user through broadcasting, recording media such as DVDs and CDs, or by receiving contents via the Internet. However, it is confidential that the header can be decrypted and the session key can be obtained. Since only the user owns the content, it is possible to limit the users who use the content. However, in such a system, it is possible for a user who holds secret information to illegally copy his / her own secret information and configure an unauthorized decryption device using the duplicate.
[0011]
As a method of suppressing such unauthorized use, there is an unauthorized person tracking method. A typical form of the fraud tracing method in broadcast encryption (Broadcast Encryption) is to make confidential information passed to a specific user unique to each user, so that when a fraudulent decryption device is found, a fraudulent person is detected. It can be specified.
[0012]
Among such fraudulent person tracking methods, Kurosawa and Desmedt can reliably identify a fraudulent person if there are no more than k of the fraudulent recipients having n secret keys. (Non-Patent Document 1). In this method, obtaining a session key and a plaintext from a public key and a header without a secret key (security with respect to confidentiality) is equivalent to decrypting ElGamal encryption. Proven. In addition, if the number of fraudulent persons is less than k, the generation of a key by which a set of fraudulent persons cannot be accurately identified (security with respect to traceability) is equivalent to solving the discrete logarithm problem. Has also been proven.
[0013]
However, in the method of Kurosawa and Desmedt, although the security can be proved, there is a problem that if k + 1 or more wrongdoers are colluded, the wrongdoers cannot be specified accurately. Further, when the value of k is increased, there is a problem that the header size and the amount of calculation required for each entity also increase in proportion to k.
[0014]
Mitsunari, Sakai, and Kasahara realize the Kurosawa and Desmedt methods on an elliptic curve, and by adding new ideas, can identify the wrongdoer no matter how many wrongdoers are consigned. (Non-Patent Document 2). In this method, security regarding traceability is partially proved, but security regarding confidentiality is not proven. In addition, when implementing the method, it is necessary to select an appropriate elliptic curve in order to achieve high speed, but there is a problem that an algorithm for efficiently finding this is unknown.
[0015]
In view of the above problems, the applicant of the present patent has proposed a theory clarified in the above-mentioned Kurosawa and Desmedt scheme, that is, a method in which a receiver without a private key obtains a session key and a plaintext from a public key and a header. (Security with respect to confidentiality) is equivalent to decrypting ElGamal encryption, and if the number of unauthorized persons is less than k, a key that cannot identify the unauthorized person accurately is assigned to the unauthorized person. The generation of a set (security with respect to traceability) is equivalent to solving a discrete logarithm problem, and the above-mentioned Kurosawa, Desmedt method is realized on a multiplicative group modulo a composite number. By adopting an ingenuity, security can be proved, and even if any number of fraudulent persons are consigned, it is possible to realize fraudulent tracking that can identify the fraudulent persons. For Temu, earlier patent application: proposed in (unpublished Japanese Patent Application No. 2002-322097).
[0016]
However, the above proposed configuration requires acquisition and analysis of a key from an unauthorized decryption device, and has a problem that it is difficult to perform an unauthorized tracking process on a device for which acquisition of a key is difficult.
[0017]
[Non-patent document 1]
K. Kurosawa, Y .; Desmedt, "Optimum Traitor Tracing and Asymmetrical Scheme," Advances in Cryptology Proceedings of EUROCRYPTO 98, Lecture Note in Computer. 1403 pp. 145-157, Springer-Verlag, 1998.
[Non-patent document 2]
S. Mitsunari, R .; Sakai, M .; Kasahara, "A New Traitor Tracing," IEICE TRANS. Fundamentals, vol. E85-A, No. 2, pp. 481-484, 2002.
[0018]
[Problems to be solved by the invention]
SUMMARY OF THE INVENTION The present invention has been made in view of the above-described problems, and in a cryptographic processing configuration in which only a limited entity can use encrypted data by a decryption process using a secret key provided to a legitimate entity, verification of a decryption device When identifying an unauthorized entity based on the illegal entity tracking method, the cryptographic processing system, and the like, the identification process of the unauthorized entity can be realized without performing the acquisition of the unauthorized key from the unauthorized decryption and the key analysis process. An object of the present invention is to provide an unauthorized entity tracking processing device and a computer program.
[0019]
[Means for Solving the Problems]
According to a first aspect of the present invention,
A fraudulent entity tracking method for identifying a fraudulent entity based on decryption device verification in a cryptographic processing configuration that allows use of cryptographic data of only a limited entity by decryption processing applying a secret key provided to a legitimate entity,
Regular entity identifier jiA data input step of inputting the ciphertext C to the inspection target device;
In the inspection target device, the secret key d stored in the inspection target device based on the input tracking header h 'and the input ciphertext Ci, And the public key eSA decryption process that obtains a decrypted text M ′ by a decryption process to which is applied and performs a comparison process between the obtained decrypted text M ′ and the plaintext M corresponding to the input ciphertext C;
In the comparison processing step, the identifier jiA fraudulent entity identifying step of identifying an entity corresponding to as a fraudulent entity;
And a method for tracking an unauthorized entity in a cryptographic processing system.
[0020]
Further, in one embodiment of the method for tracking an unauthorized entity in the cryptographic processing system of the present invention, the public key eS, And the secret key diAre eS= (N, G, Y, Y0,. . , Yk-1), Di= (Ji, Rf (ji)-1mod .lamda.), sets prime numbers P = 2p + 1 and Q = 2q + 1 based on different prime numbers p and q, calculates N = PQ, .lambda. = pq, and calculates a multiplicative group ZN *, An element G whose order is λ is set, an arbitrary integer equal to or greater than 1 is set to k, and the multiplicative group Z* λElement a0,. . . , Ak-1Multiplicative group Z based on* λThe above polynomial f (x) = a0+ A1x +. . . ak-1xk -1And a random number R∈Z* λAnd Y, Y0,. . , Yk-1Is the following formula,
(Equation 10)
Figure 2004221800
Set according to
The regular entity identifier jiIs gcd (f (ji), Λ) = 1, and the ciphertext C is a ciphertext of the plaintext M based on the session key s, that is, C = ES(M), and the tracking header h ′ is a following expression including a session key s and a random number r:
(Equation 11)
Figure 2004221800
It is characterized by the configuration defined as
[0021]
Further, in one embodiment of the method for tracking an unauthorized entity in the cryptographic processing system of the present invention, k = 2, a1= 1, and the tracking header h ′ (s, r) is calculated by the following equation:
(Equation 12)
Figure 2004221800
Is set.
[0022]
Further, a second aspect of the present invention provides
In a cryptographic processing system having data providing means for generating and providing ciphertext and data receiving means for receiving and decrypting ciphertext,
Public key eSAnd a secret key d corresponding to each of the data receiving means (entity i (i = any integer))iAnd eS= (N, G, Y, Y0,. . , Yk-1), Di= (Ji, Rf (ji)-1modλ),
Ciphertext of plaintext M based on session key s, ie, C = ES(M) and the following equation:
h (s, r) = (sYr, Y0 r, Y1 r, ..., Yk-1 r) ModN
And a header h (s, r) generated from the data providing means to the data receiving means.
The public key eS, Secret key di, And the header h (s, r) have the following settings:
The prime numbers P = 2p + 1 and Q = 2q + 1 are set based on the different prime numbers p and q, N = PQ and λ = pq are calculated, and the multiplicative group ZN *, An element G whose order is λ is set, an arbitrary integer equal to or greater than 1 is set to k, and the multiplicative group Z* λElement a0,. . . , Ak-1Multiplicative group Z based on* λThe above polynomial f (x) = a0+ A1x +. . . ak-1xk-1And a random number R∈Z* λAnd Y, Y0,. . , Yk-1Is the following formula,
(Equation 13)
Figure 2004221800
And jiIs gcd (f (ji), Regular entity identifier j satisfying λ) = 1iWhere s is a session key, r is a random number,
A cryptographic processing system having a configuration.
[0023]
Further, in one embodiment of the cryptographic processing system of the present invention, the data receiving unit determines the following formula based on the header h (s, r):
[Equation 14]
Figure 2004221800
To obtain the session key s, and based on the obtained session key s, the ciphertext C = ESThe decryption process (M) is executed to obtain the plaintext M.
[0024]
Further, in one embodiment of the cryptographic processing system of the present invention, k = 2, a1= 1, and the header h (s, r) is calculated by the following equation:
h (s, r) = (sYr, Y0 r, Gr) ModN
Is set.
[0025]
Further, in one embodiment of the cryptographic processing system of the present invention, the data receiving unit determines the following formula based on the header h (s, r):
[Equation 15]
Figure 2004221800
To obtain the session key s, and based on the obtained session key s, the ciphertext C = ESThe decryption process (M) is executed to obtain the plaintext M.
[0026]
Further, a third aspect of the present invention provides
A fraudulent entity tracking processor that identifies a fraudulent entity based on decryption device verification in a cryptographic processing configuration that allows use of cryptographic data only for limited entities by decryption processing applying a secret key provided to a legitimate entity,
Regular entity identifier jiA data input means for inputting the ciphertext C to the inspection target device;
In the inspection target device, the secret key d stored in the inspection target device based on the input tracking header h 'and the input ciphertext Ci, And the public key eSComparing means for executing a comparison process between a decrypted text M 'obtained by a decryption process applying
In the comparing means, provided that the decrypted text M '= plaintext M, the identifier jiFraudulent entity identifying means for identifying an entity corresponding to the fraudulent entity;
And a fraudulent entity tracking and processing device.
[0027]
Further, in one embodiment of the fraudulent entity tracking processing device of the present invention, the public key eS, And the secret key diAre eS= (N, G, Y, Y0,. . , Yk-1), Di= (Ji, Rf (ji)-1mod .lamda.), sets prime numbers P = 2p + 1 and Q = 2q + 1 based on different prime numbers p and q, calculates N = PQ, .lambda. = pq, and calculates a multiplicative group ZN *, An element G whose order is λ is set, an arbitrary integer equal to or greater than 1 is set to k, and the multiplicative group Z* λElement a0,. . . , Ak-1Multiplicative group Z based on* λThe above polynomial f (x) = a0+ A1x +. . . ak-1xk-1And a random number R∈Z* λAnd Y, Y0,. . , Yk-1Is the following formula,
(Equation 16)
Figure 2004221800
Set according to
The regular entity identifier jiIs gcd (f (ji), Λ) = 1.
The ciphertext C is a ciphertext of the plaintext M based on the session key s, that is, C = ES(M),
The tracking header h 'is represented by the following expression including a session key s and a random number r:
[Equation 17]
Figure 2004221800
It is characterized by the configuration defined as
[0028]
Further, in one embodiment of the fraudulent entity tracking processing device of the present invention, k = 2, a1= 1, and the tracking header h ′ (s, r) is calculated by the following equation:
(Equation 18)
Figure 2004221800
It is characterized by having a configuration for executing a process of setting as.
[0029]
Further, a fourth aspect of the present invention provides
A computer program that executes a fraudulent entity tracking process that identifies a fraudulent entity based on decryption device verification in a cryptographic process configuration that allows only limited entities to use cryptographic data by a decryption process that applies a secret key provided to a legitimate entity. Yes,
Regular entity identifier jiA data input step of inputting the ciphertext C to the inspection target device;
In the inspection target device, the secret key d stored in the inspection target device based on the input tracking header h 'and the input ciphertext Ci, And the public key eSA decryption process that obtains a decrypted text M ′ by a decryption process to which is applied and performs a comparison process between the obtained decrypted text M ′ and the plaintext M corresponding to the input ciphertext C;
In the comparison processing step, the identifier jiA fraudulent entity identifying step of identifying an entity corresponding to as a fraudulent entity;
A computer program characterized by having:
[0030]
[Action]
According to the configuration of the present invention, in an encryption processing configuration in which only a limited entity can use encrypted data by decryption processing using a secret key provided to a regular entity, when an unauthorized entity is specified based on verification of a decryption device Is the identifier j of the regular entityiIs input to the device to be inspected and the secret key d stored in the device to be inspected.iIs obtained by a decryption process to which is applied, and a comparison is performed between the obtained decrypted text M 'and the plaintext M corresponding to the input ciphertext C, on the condition that the decrypted text M' = plaintext M Identifier jiCan be specified as a fraudulent entity, and a fraudulent entity specifying process can be realized without executing a fraudulent key acquisition from a fraudulent decryption device or a key analysis process.
[0031]
Further, according to the configuration of the present invention, in the cryptographic processing system having the data providing means for generating and providing the ciphertext and the data receiving means for receiving and decrypting the ciphertext, the public key eS, And a secret key d corresponding to each data receiving meansiAnd set the secret key diAs the secret key unique to the regular entity, and the header information to be processed when decrypting the ciphertext C is the identifier j of the regular entity.iIs set as the header h including the header, the header in which the identifier of the entity presumed to be an unauthorized entity is set as a tracking header and input to the decoder in the tracking process of the unauthorized entity, and the data of the output result is output. By performing the verification, a secure cryptographic processing system capable of identifying an unauthorized entity is realized.
[0032]
The computer program of the present invention is provided, for example, in a computer-readable format for a general-purpose computer system capable of executing various program codes, in a storage medium or communication medium such as a CD, FD, or MO. And a computer program that can be provided by a communication medium such as a network. By providing such a program in a computer-readable format, processing according to the program is realized on a computer system.
[0033]
Further objects, features, and advantages of the present invention will become apparent from the following detailed description based on embodiments of the present invention and the accompanying drawings. In this specification, the term “system” refers to a logical set of a plurality of devices, and is not limited to a device having each component in the same housing.
[0034]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an illegal entity tracking method, a cryptographic processing system, an unauthorized entity tracking processing device, and a computer program in the cryptographic processing system of the present invention will be described in detail.
[0035]
The present invention relates to a cryptographic communication system to which broadcast-type encryption (Broadcast Encryption) is applied, and a fraud tracking processing method in the communication system. As described above, the broadcast-type encryption (Broadcast Encryption) is intended to realize limited use of content data for a user who has a valid use right, and a data provider or a system administrator operates a valid data. Distribute secret information (secret key) only to a set of users such as recipients who have usage rights, and encrypt plaintext (contents etc.) with the session key and decrypt the session key with each recipient's secret key. Broadcasting or providing a header for this purpose. As a result, the header and the ciphertext can be obtained by any user, but only the user who owns the private key can decrypt the header and obtain the session key. , The content distribution to a limited user is possible.
[0036]
In such a broadcast-type encryption (Broadcast Encryption), if a session key is easily generated in an entity that does not have a valid secret key, the receiver restriction configuration is not established. Therefore, the difficulty of generating a session key is one important factor required in broadcast-type encryption (Broadcast Encryption).
[0037]
Also, in broadcast encryption, a receiver holding a secret key illegally duplicates its own secret key and provides it to another user, or uses a duplicate key to generate a large number of unauthorized decryptors. There is a risk of creating it. Therefore, it is necessary to eliminate the generation and use of such an illegal decoder. To cope with such a situation, for example, it is required that a leak route of a secret key can be searched based on information stored in an unauthorized decryption device, that is, there is a possibility of unauthorized tracking processing. Thus, the possibility of fraudulent tracking processing is also one important factor required in broadcast-type encryption (Broadcast Encryption).
[0038]
The processing configuration of the cryptographic communication system of the present invention, the difficulty of generating the above-described session key, and the possibility of illegal tracking processing will be described below. The description will be made in the following order.
1. Explanation of terms and symbols
2. Encryption communication processing and fraud tracking processing
3. Proof of security of black box tracking process
4. Fraud tracking processing device, an example of a device that constitutes an entity
[0039]
[1. Definition of terms and symbols]
First, definitions of terms and symbols used in the following description will be described. In this specification, a system for broadcasting and distributing cipher text is simply referred to as a system. Further, the fraudulent tracking processing device, the decryption device, the program, the user, and the like are collectively referred to as entities. Each element of the system is defined as follows.
[0040]
Authorized entity: An entity that subscribes to the system and has been granted an authorized private key by the system administrator.
Personal secret key: Personal secret information that can be used as a key applied to obtain a session key (key applied to decryption of cipher text) based on header information corresponding to cipher text (encrypted content), It is distributed from a system administrator to a legitimate entity via a secure communication channel or a storage medium.
Distribution header: Information for decrypting a session key with each private secret key, and is distributed in the same manner as a ciphertext to be distributed. Any entity can receive.
Tracking header: Generated by a fraudulent tracking process executor when performing fraudulent tracking processing, and input to a decoder to be tracked.
[0041]
Unauthorized person: A copy of his / her personal private key that has been legally obtained, or a key that can be processed equivalently to the personal private key, is provided to other entities, or stored in a new decryptor. A regular entity that generates an unauthorized decryption device.
Unauthorized key: A key having the same properties as a personal secret key, which cannot be identified by an original unauthorized person, and is provided by an unauthorized person and stored in an unauthorized decryption device.
Unauthorized decryption device: A data processing device that executes data decryption processing in which a duplicate key obtained by illegally copying a private secret key or an unauthorized key provided by an unauthorized person is stored.
[0042]
The collusion by an unauthorized person means that the unauthorized persons provide their own private keys and try to compose the unauthorized key.The collusion threshold is the minimum value required to construct the unauthorized key. Let's say the number of fraudsters. Hereinafter, the symbols used in the present invention will be described.
[0043]
M: Plaintext
s: session key
C: Ciphertext
Ea(B): encryption of b using common key a
Da(C): decryption of c with common key a
h (a, b): distribution header composed of session key a and random number b
h '(a, b): tracking header composed of session key a and random number b
n: Total number of regular entities
T: Sender
eS: Public key used in the system
entityi: I-th entity
di: Entity i (entityi) Personal secret key
ji: Entity i (entityi) Unique number (entity identifier)
(A, b, c ...) modN: means (amodN, bmodN, cmodN ...)
[0044]
[2. Encrypted communication processing and fraud tracking processing]
Next, the encryption communication processing and the fraud tracking processing to which the present invention is applied will be described. When performing the cryptographic communication process and the fraudulent tracking process to which the present invention is applied, the processing phase is roughly divided into four processing phases of a preparation process, a cryptographic data distribution process, a cryptographic data decryption process, and a fraudster tracking process. Is done. In the fraud tracking process phase, there are two types of tracking methods: normal tracking and black box tracking. Here, the normal tracking refers to a fraudulent tracking process in which a personal secret key included in an unauthorized decryption device can be obtained, and the key obtained from the decryption device is analyzed. Black box tracking refers to an unauthorized decryption device. In cases where the private key contained in the data cannot be obtained, the private key of the unauthorized person can be identified based on the data input to the unauthorized decryptor and the output data without acquiring the key from the decryptor Tracking process. Hereinafter, details of the processing in each phase will be described.
[0045]
(2.1. Preparation processing)
The system administrator of the broadcast distribution system prepares to distribute the session key s and the cipher text M according to the following procedure. Note that the system administrator may be configured to also serve as the sender performing the broadcast distribution, or may be a separate entity from the sender.
[0046]
The preparation process includes a public key generation and disclosure process, and a secret key generation and distribution process. A series of procedures relating to the preparation processing will be described with reference to the processing flow of FIGS.
[0047]
FIG. 1 shows the processing flow of the entire preparation processing including the public key generation and disclosure processing and the secret key generation and distribution processing. FIG. 2 shows the detailed processing flow of the public key generation processing in step S108 in FIG. Is shown. FIG. 3 shows a detailed processing flow of the secret key generation processing in step S110 in FIG.
[0048]
A series of procedures of the preparation process will be described according to the process flow shown in FIG. In step S101, different prime numbers p and q are generated, and in step S102, prime numbers P and Q satisfying P = 2p + 1 and Q = 2q + 1 are generated. Also, N is generated as N = PQ. Further, in step S103, λ = pq is calculated based on the prime numbers p and q.
[0049]
Next, in steps S104 to S105, the multiplicative group: ZN *Of the elements having the order λ are obtained. The multiplicative group: ZN *Means ZNAnd a set of integers relatively prime to N (= (Z / NZ*)).
[0050]
In step S106, the multiplicative group: Z* λRandom number a0Generate That is, a0Multiplicative group: Z* λAnd generate a multiplicative group: Z* λUpper polynomial: f (x) = a0+ X. Next, in step S107, the random number: R is multiplied by the multiplicative group: Z* λIs generated as an element of.
[0051]
Next, in step S108, the public key eSGenerate First, based on a random number: R and an element: G, a public key: eS(N, G, Y, Y0) Elements: Y, Y0Is calculated based on the following equation (Equation 1).
[0052]
[Equation 19]
Figure 2004221800
[0053]
Next, the elements calculated by Expression 1: Y, Y0And N based on the PQ generated in step S102 (N = PQ), and the multiplicative group calculated in step S104: ZN *Source: Public key containing G: eSIs published as follows.
eS= (N, G, Y, Y0)
[0054]
Referring to FIG. 2, the public key of step S108: eS(N, G, Y, Y0The details of the generation processing will be described.
[0055]
First, in step S201, N (N = PQ) generated in step S102 in FIG. 1 and the multiplicative group: Z calculated in step S104N *: G, the multiplicative group set in step S106: Z* λUpper random number: a0, And the set of random numbers: R set in step S107 (N, G, R, a0).
[0056]
In step S202 and step S203, the public key: e according to the above equation (Equation 1)S= (N, G, Y, Y0) Elements: Y, Y0Is calculated. In step S204, the public key: eS(N, G, Y, Y0) Is output.
[0057]
Returning to the processing flow of FIG. 1, the description of the procedure of the preparation processing will be continued. According to the processing flow of FIG. 2, the generated public key: eS= (N, G, Y, Y0) Is made public in step S109. This public key public process is executed by, for example, a process of storing the data in a server that can be accessed without restriction on a network, a process of broadcasting, or a process of storing and providing the data in various storage media such as a DVD and a CD. . By this public processing, the public key: eS= (N, G, Y, Y0) Can also acquire regular entities and entities other than regular entities.
[0058]
Next, in step S110, the personal secret key: di= (Ji, Rf (ji)-1modλ) is executed. Detailed processing related to the generation of the private secret key will be described with reference to the processing flow of FIG.
[0059]
First, in step S301, N (N = PQ) generated in step S102 in FIG. 1, λ = pq generated based on primes p and q in step S103, and a random number: R, set in step S107 Multiplicative group set in step S106: Z* λUpper random number: a0Set (N, λ, R, a0).
[0060]
Next, each entity i (entityiIn order to generate a secret key for each of the above (i) and (ii), a process of setting and updating the value of i is executed. In step S302, i ← 0 is set, and in step S303, i ← i + 1 is set.
[0061]
In step S304 and step S305, the entity i (entityiGcd (a)0+ Ji, Λ) = 1i) Unique number (entity identifier): jiSelect Gcd (a, b) is the greatest common divisor of a and b.
[0062]
In step S306, Rf (ji)-1modλ = R (a0+ Ji)-1modλ is calculated, and in step S307, the secret key: di= (Ji, Rf (ji)-1modλ) to the entity i (entityi), That is, a secret key: diIs output as
[0063]
In step S111 of FIG. 1, each entity i (entityiSecret key corresponding to): di= (Ji, Rf (ji)-1modλ) is transmitted to each authorized user.
[0064]
As shown in FIG. 4, the transmission of the secret key to the entity is performed, for example, by one-to-one communication from the system administrator 101 to the user-side entities 121 (1) to 121 (n) executing the ciphertext decryption processing. It is transmitted via a secure communication path such as a road.
[0065]
With the above processing, the public key: eS= (N, G, Y, Y0) And each entity i (entityi): Di= (Ji, Rf (ji)-1mod λ) is set, and the preparation processing ends.
[0066]
In the above description, the public key is the public key: eS= (N, G, Y, Y0)), But, for example, an arbitrary k random numbers are set and the public key: eS= (N, G, Y, Y0,. . , Yk-1) May be set.
[0067]
That is, the public key is obtained by combining the number of composites based on P and Q: N = PQ,
Multiplicative group: ZN *Of the elements of which the order is λ: G,
1 or more arbitrary integer = k, multiplicative group: Z* λSource: a0,. . . , Ak-1Multiplicative group based on* λUpper polynomial: f (x) = a0+ A1x +. . . ak-1xk-1And a random number: R∈ZN *Calculated value based on: Y, Y0,. . , Yk-1, And may be set as the following equation (Equation 2).
[0068]
(Equation 20)
Figure 2004221800
[0069]
Also, this public key: eS= (N, G, Y, Y0,. . , Yk-1), A secret key corresponding to each of the data receiving means (entity i) on the user side: diIs the multiplicative group: Z* λUpper polynomial: f (x) = a0+ A1x +. . . ak-1xk-1Is applied, and gcd (a is an identifier for each data receiving unit (entity i).0+ Ji, Λ) = 1 entity identifier: jiA configuration including
di= (Ji, Rf (ji)-1modλ)
Set as
[0070]
The public key for an arbitrary number k as described above: eS= (N, G, Y, Y0,. . , Yk-1) Is a general configuration. In this general configuration, k = 2, a1= 1, the public key: eS= (N, G, Y, Y0) Can be set. The public key to eS= (N, G, Y, Y0) Makes it possible to simplify cryptographic communication by simple information processing, for example, to simplify a header configuration described later or to simplify decryption processing.
[0071]
(2.2. Distribution processing)
Next, the broadcast distribution processing of the encrypted data will be described with reference to the processing flow of FIG. The data sender T performing the broadcast distribution of the encrypted data generates the ciphertext C and the header h (s, r) as additional information to the ciphertext, and transmits the transmission data: (h (s, r) and C) are entities i (entity) as data receiversi). The data distribution is executed as a broadcast distribution process. Therefore, the entity that can receive data is a valid private key private key: diIs not limited to the entity having the password, and anyone can receive the message.
[0072]
For the generation and distribution processing of the cipher text: C and the transmission data (h (s, r), C) including the header: h (s, r) as additional information for the cipher text, refer to the processing flow of FIG. Will be explained.
[0073]
In step S401, a session key: s is generated. Next, in step S402, the encryption processing is executed by applying the session key: s to the plaintext: M to be transmitted, and the ciphertext: C = ES(M) is generated.
[0074]
Next, in step S403, the public key used in the system: eS= (N, G, Y, Y0), And in step S404, a random number: r is randomly generated.
[0075]
Next, in step S405, the random number generated in step S404: r, and the public key: eS= (N, G, Y, Y0), The header: h (s, r) = (sYr, Y0 r, Gr) Calculate modN.
[0076]
Finally, in step S406, the ciphertext generated in step S402: C = ES(M) and the header: h (s, r) = (sY) generated in step S405.r, Y0 r, Gr,) ModN: h (s, r), C is transmitted.
[0077]
By the above processing, the ciphertext: C and the header: h (s, r) as additional information for the ciphertext are generated at the data sender: T, and the entity i (entity) as the data receiver is generated.i).
[0078]
FIG. 6 shows a transmission data including a cipher text: C from the sender 201 to the user entities 121 (1) to 121 (n) and a header: h (s, r) as additional information for the cipher text: (h ( The transmission processing configuration of s, r) and C) will be described. The public key 202 is stored in, for example, a server that can be accessed without restriction on a network, and a regular entity and an entity other than the regular entity can be obtained.
[0079]
Transmission data: (h (s, r), C) composed of a cipher text: C and a header: h (s, r) as additional information for the cipher text is distributed via a broadcast channel, and is transmitted to a regular entity. , And entities other than regular entities.
[0080]
These information transmissions can be executed by various methods, such as wireless transmission via a satellite or the like, wired transmission via the Internet or the like, and provision via a medium such as a DVD or CD.
[0081]
In the above description, the public key is the public key: eS= (N, G, Y, Y0) Is described, but for example, an arbitrary k random numbers are set and the public key: eS= (N, G, Y, Y0,. . , Yk-1) Is set, header: h (s, r) = (sYr, Y0 r,. . . , Yk-1 r) Set as modN.
[0082]
(2.3. Decoding process)
An entity i (entity) that has received a ciphertext: C from a data sender: T, and data: (h (s, r), C) including a header: h (s, r) as additional information for the ciphertext.i) Obtains a plaintext: M from the ciphertext: C and the header: h (s, r). This decoding process will be described with reference to the processing flow of FIG.
[0083]
First, in step S501, header: h (s, r), ciphertext: C, public key: eS= (N, G, Y, Y0), Personal secret key: di= (Ji, Rf (ji)-1mod λ). In step S502, a session key: s is obtained by an operation according to the following calculation formula (formula 3).
[0084]
(Equation 21)
Figure 2004221800
[0085]
Next, in step S503, a plaintext: M is obtained from the session key: s and the ciphertext: C by the following calculation.
M = DS(C)
[0086]
In step S504, plaintext: M is output. By these processes, a legitimate private secret key: diEntity i (entityi) Receives the ciphertext: C from the data sender: T and data: (h (s, r), C) including the header: h (s, r) as additional information for the ciphertext, and the plaintext: M can be obtained.
[0087]
In the above description, the public key is the public key: eS= (N, G, Y, Y0)), The decryption processing example has been described. However, an arbitrary k random numbers are set and the public key: eS= (N, G, Y, Y0,. . , Yk-1) Is set, header: h (s, r) = (sYr, Y0 r,. . . , Yk-1 r) ModN, and a secret key: d corresponding to each data receiving means (entity i) on the user side.iIs the multiplicative group: Z* λUpper polynomial: f (x) = a0+ A1x +. . . ak-1xk-1Is applied to each data receiving means (entity i (i = any integer)), and gcd (a0+ Ji, Λ) = 1 entity identifier: jiA configuration including
di= (Ji, Rf (ji)-1modλ)
Will be set as
[0088]
In this case, the process of obtaining the session key: s is executed based on the following equation (Equation 4).
[0089]
(Equation 22)
Figure 2004221800
[0090]
(2.4. Tracking process)
The following two tracking methods exist in the tracking phase. There are two types of processing: normal tracking processing and black box tracking processing. The outline of the normal tracking process and the black box tracking process is as follows.
[0091]
(1) Normal tracking processing
A device performing unauthorized decryption (illegal decoder: X) is found, and an entity u (entity) is included therein.uSecret key that should have been provided for:u= (Ju, Rf (ju)-1mod.), the sender: T or the system administrator sends the entity u (entityu) Is illegal decryptor: X and secret key: du= (Ju, Rf (ju)-1This is a fraud tracking process for specifying (modλ) as a fraudulent person who provided fraudulently.
[0092]
Secret key in the unauthorized decryption device: du= (Ju, Rf (ju)-1mod λ) includes an entity u (entityu) Unique number (entity identifier): juIs included, the system administrator checks the entity information for which the authorized personal secret key has been provided and the entity u (entityu) Holds a regular entity information table in which a unique number (entity identifier) is associated with a unique key (entity identifier), and based on the table, a secret key holder that provided a secret key to an unauthorized decryption device, that is, an entity u (entity)u) Can be specified as a fraudulent person.
[0093]
(2) Black box tracking processing
An unauthorized decryption device is found, and the private key d of the unauthorized person contained thereinuIn the case that the secret key cannot be obtained, the private key d of the unauthorized person can be obtained without analyzing the secret key.uAnd fraudulent entityuThis is a fraud tracking processing method that specifies
[0094]
In the black box tracking process, a tracking header: h (s, r) is generated, input to the device assumed to be an unauthorized decryption device along with the ciphertext: C, and based on the output thereof, that is, the individual of the unauthorized person based on the decryption result. Secret key duAnd fraudulent entityuIs a process of specifying Details of the black box tracking process will be described below.
[0095]
FIG. 8 is a flowchart illustrating a processing procedure of the black box tracking processing. The details of each step in FIG. 8 will be described. First, in step S601, a session key: s is generated. Next, in step S602, an encryption process is executed by applying a session key: s to an arbitrary plaintext: M, and an encrypted text: C = ES(M) is generated.
[0096]
Next, in step S603, the public key applied in the system: eS= (N, G, Y, Y0), And then each inspection target device i (entityiIn order to execute each process, the setting and updating process of the value of i are executed. In step S604, i ← 0 is set, and in step S605, i ← i + 1 is set.
[0097]
Next, in step S606, the entity ui (entity) presumed to be an unauthorized personui) Unique number (entity identifier): juiSelect
[0098]
Next, in step S607, the multiplicative group: Z* λRandom number a0'. a0’To the multiplicative group: Z* λAnd generate a multiplicative group: Z* λThe above polynomial: f (jui) = A0+ JuiGenerate Next, in step S608, a random number: r is generated.
[0099]
Next, in step S609, a tracking header: h '(s, r) based on the session key: s generated in step S601 and the random number: r generated in step S608 is set according to the following formula (formula 5). Then, it is input to the decryption target for inspection together with the cipher text: C generated in step S602.
[0100]
(Equation 23)
Figure 2004221800
[0101]
Next, in step S610, in the decryption target to be inspected, processing based on the input tracking header: h '(s, r) and ciphertext: C, that is, session key acquisition by header processing, The ciphertext is decrypted based on the session key. Details of the processing in step S610 will be described with reference to the flowchart in FIG.
[0102]
First, in step S701, based on the input tracking header: h '(s, r), ciphertext: C, public key, and personal secret key stored in the device, the following calculation formula (formula 6) is used. With the above operation, a session key: s' is obtained.
[0103]
[Equation 24]
Figure 2004221800
[0104]
Next, in step S702, decryption: M 'is obtained from the session key: s' and the ciphertext: C by the following calculation.
M '= DS '(C)
[0105]
Next, in step S703, a decrypted text: M 'is output. Returning to the processing flow of FIG. 8, the description of the procedure of the black box tracking processing will be continued.
[0106]
In step S610, as described in the flow of FIG. 9, when the decrypted text: M 'is obtained from the tracking header: h' input to the inspection target device and the encrypted text: C, the decryption is performed in step S611. The comparison between the sentence: M 'and the original plaintext: M is executed. The relationship between plaintext: M and input ciphertext: C is C = ES(M). That is, the encryption process is executed by applying the session key: s to the plaintext: M to generate the ciphertext: C.
[0107]
In step S611, when the decrypted text: M 'matches the original plain text: M, a correct session key is obtained based on the tracking header: h' (s, r) input to the inspection target device, and the obtained session key is obtained. This means that the decryption processing of the cipher text: C has been correctly executed based on the correct session key.
[0108]
The input tracking header: h '(s, r) is the entity ui (entityui) Unique number (entity identifier): juiAnd a device that can obtain a correct session key based on the tracking header: h '(s, r) is an entity ui (entityui) Secret key: dui= (Jui, Rf (jui)-1It is clear that the device has a mod.
[0109]
Therefore, in step S611, if the decrypted text: M 'matches the original plain text: M, the inspection target device stores the secret key: dui= (Jui, Rf (jui)-1mod λ) is stored, and in step S612, the entity ui (entity) is stored.ui) Are identified as fraudsters. That is, the entity ui (entityui) Determines that its own private key is illegally copied and stored in the inspection target device.
[0110]
For example, when there are a plurality of devices to be inspected which are considered to be unauthorized devices, the same tracking header is input to the devices to be inspected, and each of them outputs a correct decryption result (M '= M), the entity ui (Entityui) Determines that its own secret key has been illegally copied and stored in a plurality of decryption devices.
[0111]
In step S611, if the decrypted text: M 'does not match the original plain text: M, the inspection target device stores the secret key: dui= (Jui, Rf (jui)-1mod.lambda.) is not determined to be stored. In this case, the process returns to step S605 to execute an update process of the value: i (i = i + 1), and the entity ui (entity) assumed to be a different unauthorized personui) Unique number (entity identifier): juiAnd executes the same processing, that is, the generation processing of the tracking header, the input of the generated tracking header and cipher text to the inspection target device, and the decryption processing in the inspection target device.
[0112]
The same processing is executed until the decrypted text: M 'as the output result from the inspection target device matches the original plain text: M, and when they match, the entity ui (entity) applied to the tracking header at that timeui) Unique number (entity identifier): juiEntity ui (entityui) Is determined to have illegally copied and stored its own secret key in the inspection target device.
[0113]
As described above, the fraud tracking process can be executed by a device that executes the process according to FIG. 8, specifically, by a fraud tracking device configured by a device such as a PC that can execute a computer program. .
[0114]
To briefly summarize the specific components of the fraud tracking processing device, the condition is that the device has the following components. That is, the identifier j of the authorized useri, A data input unit for inputting the ciphertext C to the device to be inspected, and a secret key d stored in the device to be inspected.i, And the public key eSAnd a comparison unit that obtains a decrypted text M ′ output by decryption processing of the ciphertext C to which is applied and compares the decrypted text with the plaintext M corresponding to the input ciphertext C, provided that M ′ = M , The identifier jiAnd a fraudulent person specifying means for specifying a user corresponding to the fraudulent person as a fraudulent person. However, each of these units is specifically configured by a control unit such as a CPU that executes processing according to the processing flow shown in FIG. A specific example of the hardware configuration will be described later.
[0115]
In the above description, the public key is the public key: eS= (N, G, Y, Y0)), The decryption processing example has been described. However, an arbitrary k random numbers are set and the public key: eS= (N, G, Y, Y0,. . , Yk-1) Is set, the tracking header: h '(s, r) is set as the following equation (Equation 7).
[0116]
(Equation 25)
Figure 2004221800
[0117]
Secret key corresponding to each user-side data decryption device (entity i): diIs the multiplicative group: Z* λUpper polynomial: f (x) = a0+ A1x +. . . ak-1xk-1And an identifier for each data decoding device (entity i (i = any integer)), and gcd (a0+ Ji, Λ) = 1 entity identifier: jiA configuration including
di= (Ji, Rf (ji)-1modλ)
Will be set as In this case, the process of obtaining the session key: s is performed based on the above equation (Equation 4).
[0118]
[3. Proof of security of black box tracking process]
Next, the security of the above-described black box tracking process will be proved. As described above, in order to achieve black box tracking, it is necessary to input a tracking header to a decoder that is deemed to be illegal and to determine whether or not the output result is correct plain text.
[0119]
At this time, the decoder to be inspected discriminates between the tracking header and the normal distribution header, and outputs a decoding result only when the distribution header is input. If it is set so that nothing is output at the time of input, it is impossible to identify an unauthorized person. Therefore, in order to reliably execute black box tracking, it is necessary to make it impossible to distinguish whether information input to the inspection target device is a tracking header or not.
[0120]
In this way, by proving that it is impossible to discriminate the tracking header from the normal delivery header, the security of the black box tracking process is proved. The following shows that the black box tracking function can be performed reliably, that is, no unauthorized decoder can determine whether the input information is a tracking header.
[0121]
In the above-described cryptographic processing, since the scheme itself is configured on a multiplicative group modulo the composite number, in order to realize black box tracking, the Decision Diffie-Hellman problem in the multiplicative group modulo the composite number is solved. It must be difficult. First, the definition of the Discription Diffie-Hellman problem (DDHP) will be briefly described.
[0122]
The finite cyclic group generated by the generator G is defined as [Grp]. Further, a, b, and c are random numbers. At this time, the Decision Diffie-Hellman problem is (Ga, Gb, Gc) When ∈Grp is given, it means a problem of determining whether or not c = ab mod | Grp | (where | Grp | represents the order of Grp) with a probability higher than 1/2.
[0123]
Solving the Decision Diffie-Hellman problem means (Ga, (Ga, Gb, GcProbabilistic polynomial time for determining whether c = ab mod | Grp | (where | Grp | represents the order of Grp) with a probability higher than 1/2, given ∈Grp Indicates that the algorithm exists.
[0124]
If the DDHP in the multiplicative group modulo the composite number can be solved, the inspection target device determines whether the input information is a distribution header or a tracking header by よ り from the following. Can be determined with a high probability.
[0125]
The header input to the inspection target device is
H (s, r) = (h1, H2, H3)
Then, if H (s, r) is a distribution header, the public key eSAnd the delivery header h (s, r) are:
eS= (N, G, Y, Y0),and
h (s, r) = (sYr, Y0 r, Gr) ModN
Becomes At this time, Y0And h2modN, h3By solving DDHP in the multiplicative group modulo the composite number using modN, it is determined whether or not the equation (Equation 8) below holds.
[0126]
(Equation 26)
Figure 2004221800
[0127]
If the equality of the above equation (Equation 8) holds, it is assumed that the input information is a distribution header.
[0128]
In order to realize black box tracking, it is necessary to solve DDHP in a multiplicative group modulo a composite number. In this regard, in order to solve the DDHP in the group [Grp] using the generic algorithm, it is assumed that the smallest prime number among the prime factors of the order of the group [Grp] is q 'and at least Θ (q'1/2) Is required [V. Shop, "Lower Bounds for Discrete Logarithms and Related Problems," LNCS 1233, EUROCRYPT @ 97, pp. 256-266, Springer-Verlag, Berlin, 1997. ].
[0129]
Further, in a multiplicative group modulo the product of two large prime numbers, a stochastic polynomial time algorithm for solving DDHP is not known, and it is considered that solving DDHP in such a group is difficult. . This is for example the case in [D. Boneh, "The Decision Diffie-Hellman Probe," In Proceedings of the Third Algorithmic Number Number Theory Symposium, Lecture Notes Co., Ltd. 1423, Springer-Verlag, pp. 48-63, 1998. ].
[0130]
In the above-described black box tracking processing according to the present invention, in a multiplicative group modulo N, a cyclic subgroup having an element G whose order is λ = pq as a generator is used. It is difficult to solve the DDHP by setting it to a sufficiently large value.
[0131]
Therefore, the device to be inspected determines whether or not the input information is the header for distribution, which is the same as the difficulty of solving the DDHP, and cannot be determined with a probability higher than 1/2. . That is, the security of the black box tracking process is proved.
[0132]
Therefore, it is impossible for the inspection target device to determine whether the input information is a distribution header or a tracking header with a probability higher than 1/2, and the above-described black box tracking is performed safely. It is possible to do.
[0133]
[4. Fraud tracking processing device, example of device constituting entity]
Next, the fraudulent pursuit processing apparatus which executes the processing described above with reference to FIG.S= (N, G, Y, Y0), Secret key: di= (Ji, Rf (ji)-1The information processing device (user-side information processing device) on the user-side entity side that executes the decryption processing of the ciphertext based on (modλ), the ciphertext: C, and the header: h (s, r) are generated, and the entity side A description will be given of a configuration example of a data transmission side information processing apparatus that executes data transmission to the information processing apparatus of the present embodiment, and an information processing apparatus that can be applied as an information processing apparatus of a system administrator that executes a public key issuance and a secret key issuance processing.
[0134]
A series of processes in each entity described in the above embodiment is a process that can be executed by a combination of hardware and software. That is, it can be performed by causing a general-purpose computer or a microcomputer to execute a program. When a series of processing is performed by software, a program constituting the software is installed in, for example, a general-purpose computer or a one-chip microcomputer. FIG. 10 illustrates a configuration example as an embodiment of a computer on which a program for executing the above-described series of processes is installed.
[0135]
The information processing device configuration example shown in FIG. 10 is one example, and the information processing device in each entity is not necessarily required to have all the functions shown here. A CPU (Central processing Unit) 501 illustrated in FIG. 10 is a processor that executes various programs and an OS (Operating System). A ROM (Read-Only-Memory) 502 stores a program executed by the CPU 501 or fixed data as operation parameters. A RAM (Random Access Memory) 503 is used as a storage area and a work area for a program executed in the processing of the CPU 501 and parameters that change as appropriate in the program processing.
[0136]
The HDD 504 executes control of the hard disk, and stores and reads various data and programs from and to the hard disk. The encryption processing unit 505 functions as an encryption processing unit or a decryption processing unit that performs encryption processing, decryption processing, and the like on transmission data. Here, an example is shown in which the encryption processing means is an individual module. However, such an independent encryption processing module is not provided. For example, an encryption processing program is stored in the ROM 502, and the CPU 501 reads and executes the ROM storage program. May be configured.
[0137]
The memory (secure module) 506 is configured as a memory having a tamper-resistant structure, for example, and can be used as a storage area for key data and an access permission document required for encryption processing. For example, in the case of the information processing device of the user side entity, the secret key: di= (Ji, Rf (ji)-1(modλ) is set as the storage unit. Note that these data can be stored in another memory area or storage medium. For example, a public key: eS= (N, G, Y, Y0) Can be stored on a hard disk or the like without any problem.
[0138]
The bus 521 is constituted by a PCI (Peripheral Component Internet / Interface) bus or the like, and enables data transfer between each module and each available device via the input / output interface 122.
[0139]
The input unit 511 includes, for example, a keyboard, a pointing device, and the like, and is operated by a user to input various commands and data to the CPU 501. The output unit 512 is, for example, a CRT, a liquid crystal display, or the like, and displays various types of information as text or images.
[0140]
The communication unit 513 executes communication processing with an entity connected to the system, for example, a communication entity of encrypted data, and under the control of the CPU 501, data supplied from each storage unit or data processed by the CPU 501, It executes a process of transmitting the received data and the like and receiving data from another entity.
[0141]
The drive 514 is a drive that performs recording and reproduction on a removable recording medium 515 such as a flexible disk, a CD-ROM (Compact Disc Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, and a semiconductor memory. Yes, it executes the reproduction of the program or data from each removable recording medium 515, and the storage of the program or data in the removable recording medium 515.
[0142]
When a program or data recorded in each storage medium is read and executed or processed in the CPU 501, the read program and data are supplied to, for example, the connected RAM 503 via the input / output interface 522 and the bus 521.
[0143]
The program for executing the processing included in the description with reference to the flowcharts is stored in the ROM 502 and processed by the CPU 501, or stored in the hard disk and supplied to the CPU 501 via the HDD 504 and executed. You.
[0144]
The present invention has been described in detail with reference to the specific embodiments. However, it is obvious that those skilled in the art can modify or substitute the embodiment without departing from the spirit of the present invention. That is, the present invention has been disclosed by way of example, and should not be construed as limiting. In order to determine the gist of the present invention, the claims described at the beginning should be considered.
[0145]
The series of processes described in the specification can be executed by hardware, software, or a combined configuration of both. When executing the processing by software, the program recording the processing sequence is installed in a memory in a computer embedded in dedicated hardware and executed, or the program is stored in a general-purpose computer capable of executing various processing. It can be installed and run.
[0146]
For example, the program may be recorded in a hard disk or a ROM (Read Only Memory) as a storage medium in advance. Alternatively, the program may be temporarily or permanently stored on a removable recording medium such as a flexible disk, a CD-ROM (Compact Disc Only Memory), an MO (Magneto optical) disk, a DVD (Digital Versatile Disc), a magnetic disk, or a semiconductor memory. It can be stored (recorded). Such a removable recording medium can be provided as so-called package software.
[0147]
The program may be installed on the computer from the above-described removable recording medium, or may be wirelessly transferred from a download site to the computer, or may be wirelessly transferred to the computer via a network such as a LAN (Local Area Network) or the Internet. The computer can receive the program transferred in this manner and install it on a storage medium such as a built-in hard disk.
[0148]
The various processes described in the specification may be executed not only in chronological order according to the description but also in parallel or individually according to the processing capability of the device that executes the processes or as necessary.
[0149]
【The invention's effect】
As described above, according to the configuration of the present invention, in a cryptographic processing configuration in which only a limited entity can use encrypted data by a decryption process using a secret key provided to a regular entity, based on verification of a decryption device When identifying an illegal entity by usingiIs input to the device to be inspected and the secret key d stored in the device to be inspected.iIs obtained by a decryption process to which is applied, and a comparison is performed between the obtained decrypted text M 'and the plaintext M corresponding to the input ciphertext C, on the condition that the decrypted text M' = plaintext M Identifier jiCan be specified as a fraudulent entity, and a fraudulent entity specifying process can be realized without executing a fraudulent key acquisition from a fraudulent decryption device or a key analysis process.
[0150]
Further, according to the configuration of the present invention, in the cryptographic processing system having the data providing means for generating and providing the ciphertext and the data receiving means for receiving and decrypting the ciphertext, the public key eS, And a secret key d corresponding to each data receiving meansiAnd set the secret key diAs the secret key unique to the regular entity, and the header information to be processed when decrypting the ciphertext C is the identifier j of the regular entity.iIs set as the header h including the header, the header in which the identifier of the entity presumed to be an unauthorized entity is set as a tracking header and input to the decoder in the tracking process of the unauthorized entity, and the data of the output result is output. By performing the verification, a secure cryptographic processing system capable of identifying an unauthorized entity is realized.
[Brief description of the drawings]
FIG. 1 is a diagram showing a processing flow of an entire preparation process including a public key generation and disclosure process, and a secret key generation and distribution process.
FIG. 2 is a diagram showing a detailed processing flow of a public key generation processing in step S108 in FIG.
FIG. 3 is a diagram showing a detailed processing flow of a secret key generation processing in step S110 in FIG. 1;
FIG. 4 is a diagram illustrating a configuration of transmitting a secret key from a system administrator to each entity via a secure communication channel.
FIG. 5 is a flowchart illustrating a broadcast distribution process of encrypted data.
FIG. 6 shows a transmission processing configuration of transmission data: C, h (s, r) including a cipher text: C from a sender to each entity and a header: h (s, r) as additional information for the cipher text. FIG.
FIG. 7 is a flowchart illustrating a procedure of a decryption process in an entity that has received data including a cipher text: C and a header: h (s, r).
FIG. 8 is a flowchart illustrating a processing procedure of a black box tracking process.
FIG. 9 is a flowchart illustrating a decoding processing procedure of the inspection target device in the black box tracking processing.
FIG. 10 is a diagram illustrating a configuration example of an information processing device of each entity.
[Explanation of symbols]
101 System Administrator
121 User-side entity
201 sender
202 public key
501 CPU
502 ROM
503 RAM
504 HDD
505 Cryptographic processing means
506 memory
511 Input section
512 Output unit
513 Communication unit
514 Removable storage medium
521 bus
522 I / O interface

Claims (11)

正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において復号機器検証に基づいて不正エンティティを特定する不正エンティティ追跡方法であり、
正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力するデータ入力ステップと、
前記検査対象機器において、入力追跡用ヘッダh’と、入力暗号文Cに基づいて、前記検査対象機器に格納された秘密鍵d、および公開鍵eを適用した復号処理により復号文M’を取得し、取得した復号文M’と前記入力暗号文Cに対応する平文Mとの比較処理を実行する比較処理ステップと、
前記比較処理ステップにおいて、復号文M’=平文Mであることを条件として、前記識別子jに対応するエンティティを不正エンティティとして特定する不正エンティティ特定ステップと、
を有することを特徴とする暗号処理システムにおける不正エンティティ追跡方法。
A fraudulent entity tracking method for identifying a fraudulent entity based on decryption device verification in a cryptographic processing configuration that allows use of cryptographic data of only a limited entity by decryption processing applying a secret key provided to a legitimate entity,
A data input step of inputting a tracking header h ′ including an identifier j i of a regular entity and a ciphertext C to a device to be inspected;
In the inspection target device, an input track header h 'and, based on the input ciphertext C, the test private key is stored in the target device d i, and decrypted text M with the public key e S the applied decoding' A comparison processing step of acquiring the decrypted text M ′ and the plaintext M corresponding to the input ciphertext C;
In the comparison processing step, on the condition that the decrypted text M ′ = plaintext M, an unauthorized entity identification step of identifying an entity corresponding to the identifier j i as an unauthorized entity;
A method for tracking an unauthorized entity in a cryptographic processing system, comprising:
前記暗号処理システムにおける不正エンティティ追跡方法において、
前記公開鍵e、および秘密鍵dは、各々、e=(N,G,Y,Y,..,Yk−1)、d=(j,Rf(j−1modλ)として定義されるものであり、異なる素数p,q、に基づいて素数P=2p+1,Q=2q+1を設定し、N=PQ、λ=pqを算出し、乗法群Z の元のうち、位数がλとなる元Gを設定し、1以上の任意整数=kとし、乗法群Z λの元a,...,ak−1に基づく、乗法群Z λ上の多項式f(x)=a+ax+...ak−1k−1と、乱数R∈Z λとに基づく算出値Y,Y,..,Yk−1を下記式、
Figure 2004221800
に従って設定し、
前記正規エンティティ識別子jは、gcd(f(j)、λ)=1を満たす識別子であり、
前記暗号文Cは、セッション鍵sに基づく平文Mの暗号文、すなわちC=E(M)であり、
前記追跡用ヘッダh’は、セッション鍵sと、乱数rを含む下記式、
Figure 2004221800
として定義された構成であることを特徴とする請求項1に記載の暗号処理システムにおける不正エンティティ追跡方法。
In the fraudulent entity tracking method in the cryptographic processing system,
The public key e S, and the private key d i are each, e S = (N, G , Y, Y 0, .., Y k-1), d i = (j i, Rf (j i) - 1 modλ), sets prime numbers P = 2p + 1, Q = 2q + 1 based on different prime numbers p, q, calculates N = PQ, λ = pq, and calculates an element of the multiplicative group Z N * . of, set the original G to position number is lambda, 1 or more to any integer = k, the original a 0 of the multiplicative group Z * lambda,. . . , A k−1 , the polynomial f (x) on the multiplicative group Z * λ = a 0 + a 1 x +. . . a k−1 x k−1 and random numbers R∈Z * λ , calculated values Y, Y 0 ,. . , Y k-1 are represented by the following formula:
Figure 2004221800
Set according to
It said normal entity identifier j i is, gcd (f (j i) , λ) = 1 is an identifier that satisfies,
The ciphertext C is a ciphertext of the plaintext M based on the session key s, that is, C = E S (M),
The tracking header h ′ is expressed by the following equation including a session key s and a random number r:
Figure 2004221800
2. The method according to claim 1, wherein the configuration is defined as:
前記不正エンティティ追跡方法において、
k=2、a=1として設定し、
前記追跡用ヘッダh’(s,r)を、下記式、
Figure 2004221800
として設定したことを特徴とする請求項2に記載の暗号処理システムにおける不正エンティティ追跡方法。
In the fraudulent entity tracking method,
Setting k = 2, a 1 = 1,
The tracking header h ′ (s, r) is represented by the following equation:
Figure 2004221800
3. The method according to claim 2, wherein the illegal entity is set as:
暗号文を生成し提供するデータ提供手段と、暗号文を受領し復号するデータ受領手段とを有する暗号処理システムにおいて、
公開鍵e、および、前記データ受領手段(エンティティi(i=任意の整数))各々に対応する秘密鍵dを、各々、e=(N,G,Y,Y,..,Yk−1)、d=(j,Rf(j−1modλ)として定義し、
セッション鍵sに基づく平文Mの暗号文、すなわちC=E(M)と、下記式、
h(s、r)=(sY、Y 、Y 、…、Yk−1 )modN
に従って生成するヘッダh(s,r)とを、前記データ提供手段から前記データ受領手段に提供する暗号処理システムであって、
前記公開鍵e、秘密鍵d、およびヘッダh(s,r)は、下記の設定、すなわち、
異なる素数p,q、に基づいて素数P=2p+1,Q=2q+1を設定し、N=PQ、λ=pqを算出し、乗法群Z の元のうち、位数がλとなる元Gを設定し、1以上の任意整数=kとし、乗法群Z λの元a,...,ak−1に基づく、乗法群Z λ上の多項式f(x)=a+ax+...ak−1k−1と、乱数R∈Z λとに基づく算出値Y,Y,..,Yk−1を下記式、
Figure 2004221800
に従って設定したものであり、前記jは、gcd(f(j)、λ)=1を満たす正規エンティティ識別子jであり、sはセッション鍵、rは乱数である、
構成を有することを特徴とする暗号処理システム。
In a cryptographic processing system having data providing means for generating and providing ciphertext and data receiving means for receiving and decrypting ciphertext,
Public key e S, and the private key d i corresponding to the data receiving unit (entity i (i = an arbitrary integer)) respectively, each, e S = (N, G , Y, Y 0, .., Y k-1), d i = defined as (j i, Rf (j i ) -1 modλ),
Ciphertext plaintext M, based on the session key s, i.e. the C = E S (M), the following equation,
h (s, r) = ( sY r, Y 0 r, Y 1 r, ..., Y k-1 r) modN
And a header h (s, r) generated from the data providing means to the data receiving means.
The public key e S, the private key d i, and a header h (s, r) is set below, that is,
Distinct primes p, based q, to set the prime P = 2p + 1, Q = 2q + 1, N = PQ, λ = pq is calculated, of the multiplicative group Z N * of the original, the original G which position number is lambda set, 1 or more to any integer = k, the original a 0 of the multiplicative group Z * lambda,. . . , A k−1 , the polynomial f (x) on the multiplicative group Z * λ = a 0 + a 1 x +. . . a k−1 x k−1 and random numbers R∈Z * λ , calculated values Y, Y 0 ,. . , Y k-1 are represented by the following formula:
Figure 2004221800
J i is a regular entity identifier j i that satisfies gcd (f (j i ), λ) = 1, s is a session key, and r is a random number.
A cryptographic processing system having a configuration.
前記データ受領手段は、
前記ヘッダh(s,r)に基づいて、下記式、
Figure 2004221800
に従って、セッション鍵sを取得し、取得セッション鍵sに基づいて、暗号文C=E(M)の復号処理を実行して平文Mを取得する構成であることを特徴とする請求項4に記載の暗号処理システム。
The data receiving means includes:
Based on the header h (s, r), the following equation:
Figure 2004221800
Accordingly obtains the session key s, based on the acquired session key s, to claim 4, characterized in that by decrypts a ciphertext C = E S (M) is configured to acquire the plaintext M The cryptographic processing system as described.
前記暗号処理システムにおいて、
k=2、a=1として設定し、
前記ヘッダh(s,r)を、下記式、
h(s、r)=(sY、Y 、G)modN
として設定したことを特徴とする請求項4に記載の暗号処理システム。
In the cryptographic processing system,
Setting k = 2, a 1 = 1,
The header h (s, r) is represented by the following equation:
h (s, r) = (sY r , Y 0 r , G r ) mod N
5. The cryptographic processing system according to claim 4, wherein:
前記データ受領手段は、
前記ヘッダh(s,r)に基づいて、下記式、
Figure 2004221800
に従って、セッション鍵sを取得し、取得セッション鍵sに基づいて、暗号文C=E(M)の復号処理を実行して平文Mを取得する構成であることを特徴とする請求項6に記載の暗号処理システム。
The data receiving means includes:
Based on the header h (s, r), the following equation:
Figure 2004221800
Accordingly obtains the session key s, based on the acquired session key s, to claim 6, wherein the decoding process is executed is configured to acquire the plaintext M of ciphertext C = E S (M) The cryptographic processing system as described.
正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において復号機器検証に基づいて不正エンティティを特定する不正エンティティ追跡処理装置であり、
正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力するデータ入力手段と、
前記検査対象機器において、入力追跡用ヘッダh’と、入力暗号文Cに基づいて、前記検査対象機器に格納された秘密鍵d、および公開鍵eを適用した復号処理により取得される復号文M’と前記入力暗号文Cに対応する平文Mとの比較処理を実行する比較手段と、
前記比較手段において、復号文M’=平文Mであることを条件として、前記識別子jに対応するエンティティを不正エンティティとして特定する不正エンティティ特定手段と、
を有することを特徴とする不正エンティティ追跡処理装置。
A fraudulent entity tracking processor that identifies a fraudulent entity based on decryption device verification in a cryptographic processing configuration that allows use of cryptographic data only for limited entities by decryption processing applying a secret key provided to a legitimate entity,
A data input means for inputting the tracking header h 'including the identifier j i of the regular entity and the ciphertext C to the inspection target device;
In the inspection target device, an input track header h ', based on the input ciphertext C, decoded acquired by the inspection target equipment stored secret key d i, and applying the public key e S decoding Comparing means for comparing the sentence M ′ and the plaintext M corresponding to the input ciphertext C;
An illegal entity identifying means for identifying an entity corresponding to the identifier j i as an illegal entity on condition that the decrypted text M ′ = plaintext M;
A fraudulent entity tracking processing device comprising:
前記不正エンティティ追跡処理装置において、
前記公開鍵e、および秘密鍵dは、各々、e=(N,G,Y,Y,..,Yk−1)、d=(j,Rf(j−1modλ)として定義されるものであり、異なる素数p,q、に基づいて素数P=2p+1,Q=2q+1を設定し、N=PQ、λ=pqを算出し、乗法群Z の元のうち、位数がλとなる元Gを設定し、1以上の任意整数=kとし、乗法群Z λの元a,...,ak−1に基づく、乗法群Z λ上の多項式f(x)=a+ax+...ak−1k−1と、乱数R∈Z λとに基づく算出値Y,Y,..,Yk−1を下記式、
Figure 2004221800
に従って設定し、
前記正規エンティティ識別子jは、gcd(f(j)、λ)=1を満たす識別子であり、
前記暗号文Cは、セッション鍵sに基づく平文Mの暗号文、すなわちC=E(M)であり、
前記追跡用ヘッダh’は、セッション鍵sと、乱数rを含む下記式、
Figure 2004221800
として定義された構成であることを特徴とする請求項8に記載の不正エンティティ追跡処理装置。
In the fraudulent entity tracking processing device,
The public key e S, and the private key d i are each, e S = (N, G , Y, Y 0, .., Y k-1), d i = (j i, Rf (j i) - 1 modλ), sets prime numbers P = 2p + 1, Q = 2q + 1 based on different prime numbers p, q, calculates N = PQ, λ = pq, and calculates an element of the multiplicative group Z N * . of, set the original G to position number is lambda, 1 or more to any integer = k, the original a 0 of the multiplicative group Z * lambda,. . . , A k−1 , the polynomial f (x) on the multiplicative group Z * λ = a 0 + a 1 x +. . . a k−1 x k−1 and random numbers R∈Z * λ , calculated values Y, Y 0 ,. . , Y k-1 are represented by the following formula:
Figure 2004221800
Set according to
It said normal entity identifier j i is, gcd (f (j i) , λ) = 1 is an identifier that satisfies,
The ciphertext C is a ciphertext of the plaintext M based on the session key s, that is, C = E S (M),
The tracking header h ′ is expressed by the following equation including a session key s and a random number r:
Figure 2004221800
The fraudulent entity tracking processing device according to claim 8, wherein the fraudulent entity tracking processing device has a configuration defined as:
前記不正エンティティ追跡処理装置において、
k=2、a=1として設定し、
前記追跡用ヘッダh’(s,r)を、下記式、
Figure 2004221800
として設定する処理を実行する構成を有することを特徴とする請求項9に記載の不正エンティティ追跡処理装置。
In the fraudulent entity tracking processing device,
Setting k = 2, a 1 = 1,
The tracking header h ′ (s, r) is represented by the following equation:
Figure 2004221800
The fraudulent entity tracking processing device according to claim 9, further comprising a configuration for executing a process of setting as an invalid entity.
正規エンティティに提供した秘密鍵を適用した復号処理により限定エンティティのみの暗号データ利用を可能とした暗号処理構成において復号機器検証に基づいて不正エンティティを特定する不正エンティティ追跡処理を実行するコンピュータ・プログラムであり、
正規エンティティの識別子jを含む追跡用ヘッダh’と、暗号文Cを検査対象機器に入力するデータ入力ステップと、
前記検査対象機器において、入力追跡用ヘッダh’と、入力暗号文Cに基づいて、前記検査対象機器に格納された秘密鍵d、および公開鍵eを適用した復号処理により復号文M’を取得し、取得した復号文M’と前記入力暗号文Cに対応する平文Mとの比較処理を実行する比較処理ステップと、
前記比較処理ステップにおいて、復号文M’=平文Mであることを条件として、前記識別子jに対応するエンティティを不正エンティティとして特定する不正エンティティ特定ステップと、
を有することを特徴とするコンピュータ・プログラム。
A computer program that executes an unauthorized entity tracking process that identifies an unauthorized entity based on decryption device verification in a cryptographic processing configuration that allows only limited entities to use encrypted data by decryption processing that applies a secret key provided to a legitimate entity Yes,
A data input step of inputting a tracking header h ′ including an identifier j i of a regular entity and a ciphertext C to a device to be inspected;
In the inspection target device, an input track header h 'and, based on the input ciphertext C, the test private key is stored in the target device d i, and decrypted text M with the public key e S the applied decoding' A comparison processing step of acquiring the decrypted text M ′ and the plaintext M corresponding to the input ciphertext C;
In the comparison processing step, on the condition that the decrypted text M ′ = plaintext M, an unauthorized entity identification step of identifying an entity corresponding to the identifier j i as an unauthorized entity;
A computer program comprising:
JP2003005188A 2003-01-14 2003-01-14 Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program Pending JP2004221800A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003005188A JP2004221800A (en) 2003-01-14 2003-01-14 Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003005188A JP2004221800A (en) 2003-01-14 2003-01-14 Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program

Publications (1)

Publication Number Publication Date
JP2004221800A true JP2004221800A (en) 2004-08-05

Family

ID=32895911

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003005188A Pending JP2004221800A (en) 2003-01-14 2003-01-14 Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program

Country Status (1)

Country Link
JP (1) JP2004221800A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006527944A (en) * 2003-06-17 2006-12-07 フランス・テレコム Traceable method and system for encrypting and / or decrypting data and recording medium implementing the method
JP2011010264A (en) * 2009-05-22 2011-01-13 Nippon Hoso Kyokai <Nhk> Encrypted information generation device and program for the same, secret key generation device and program for the same, distribution content generation device and program for the same, content decryption device and program for the same, and user identification device and program for the same
US8074067B2 (en) 2005-02-10 2011-12-06 Nec Corporation Member certificate acquiring device, member certificate issuing device, group signing device, and group signature verifying device
JP2014135620A (en) * 2013-01-10 2014-07-24 Nippon Hoso Kyokai <Nhk> Access control program, transmission device, receiving device, and information leakage source specifying device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006527944A (en) * 2003-06-17 2006-12-07 フランス・テレコム Traceable method and system for encrypting and / or decrypting data and recording medium implementing the method
JP4673302B2 (en) * 2003-06-17 2011-04-20 フランス・テレコム Traceable method and system for encrypting and / or decrypting data and recording medium implementing the method
US8074067B2 (en) 2005-02-10 2011-12-06 Nec Corporation Member certificate acquiring device, member certificate issuing device, group signing device, and group signature verifying device
JP2011010264A (en) * 2009-05-22 2011-01-13 Nippon Hoso Kyokai <Nhk> Encrypted information generation device and program for the same, secret key generation device and program for the same, distribution content generation device and program for the same, content decryption device and program for the same, and user identification device and program for the same
JP2014135620A (en) * 2013-01-10 2014-07-24 Nippon Hoso Kyokai <Nhk> Access control program, transmission device, receiving device, and information leakage source specifying device

Similar Documents

Publication Publication Date Title
JP3659178B2 (en) Distributed digital signature creation method and apparatus, distributed digital signature-added digital document creation method and apparatus, distributed digital signature creation program, and storage medium storing distributed digital signature creation program
KR100568233B1 (en) Device Authentication Method using certificate and digital content processing device using the method
JP4818264B2 (en) Method and system for generating a list signature
JP2004503969A (en) An authentication method using a variable encryption key system based on an encryption key of an authentication medium and unique information of computer hardware, and an authentication medium for storing the authentication method and indicating its validity period and authority
US20040165728A1 (en) Limiting service provision to group members
JPH10198272A (en) Key managing method, ciphering system, and decentralized digital signature system with hierarchy
CN1973480A (en) Content providing system, information processing device, and memory card
KR20060020688A (en) Improved secure authenticated channel
US20080279387A1 (en) Propagating Keys from Servers to Clients
JP2015501110A (en) Group encryption method and device
Frattolillo A buyer-friendly and mediated watermarking protocol for web context
JP2021072593A (en) Encryption processing system and encryption processing method
JP6719339B2 (en) Cryptographic system, cryptographic method, and cryptographic program
JP2004221800A (en) Illegitimate entity tracing method in encryption processing system, encryption processing system, and illegitimate entity tracing processing apparatus and computer program
JP2011091517A (en) Signcryption system and signcryption generation method
Acharya et al. Secure and efficient construction of broadcast encryption with dealership
JP4146252B2 (en) Anonymous communication method capable of identifying unauthorized persons, user device used in the method, and relay server device
JP4867425B2 (en) Information processing apparatus, information processing method, and computer program
WO2021009860A1 (en) Cryptosystem, function value calculation method and program
JP4875481B2 (en) Encrypted information generating device and program thereof, secret key generating device and program thereof, distribution content generating device and program thereof, and content decrypting device and program thereof
Mishra et al. A certificateless authenticated key agreement protocol for digital rights management system
JP2004159043A (en) Encryption communication system, information processor, method, and computer program
JP5142361B2 (en) Validity verification device
JP4634046B2 (en) Elliptical power multiplication device and information security device capable of countering failure use attacks
JP2005165290A (en) Rsa public key generation apparatus, rsa decryption apparatus, and rsa signature apparatus