JP2007189597A - Encryption device, encryption method, decoding device, and decoding method - Google Patents

Encryption device, encryption method, decoding device, and decoding method Download PDF

Info

Publication number
JP2007189597A
JP2007189597A JP2006007324A JP2006007324A JP2007189597A JP 2007189597 A JP2007189597 A JP 2007189597A JP 2006007324 A JP2006007324 A JP 2006007324A JP 2006007324 A JP2006007324 A JP 2006007324A JP 2007189597 A JP2007189597 A JP 2007189597A
Authority
JP
Japan
Prior art keywords
content
encryption
key
time
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.)
Withdrawn
Application number
JP2006007324A
Other languages
Japanese (ja)
Inventor
Kazuo Ota
和夫 太田
Noboru Kunihiro
昇 國廣
Kohei Kiyotake
康平 清武
Seiji Okuaki
清次 奥秋
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.)
University of Electro Communications NUC
Original Assignee
University of Electro Communications NUC
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 University of Electro Communications NUC filed Critical University of Electro Communications NUC
Priority to JP2006007324A priority Critical patent/JP2007189597A/en
Publication of JP2007189597A publication Critical patent/JP2007189597A/en
Withdrawn legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To restrain limitations imposed on a transmitting party of contents in a multicasting encryption system. <P>SOLUTION: The multicasting encryption system 1 is used for obtaining a first to a third multicasting encryption method and composed of a transmitter 10 which encrypts contents and transmits the encrypted contents, a receiving terminal device 20 which receives the encrypted contents and decodes the encrypted contents, and a communication network 30 which connects the transmitter 10 and the receiving terminal device 20 together. Moreover, two or more receiving terminal devices 20 are provided. The first multicasting encryption method utilizes an SD method and BTE. The second multicasting encryption method utilizes the SD method, BTE and FS. The third multicasting encryption method utilizes a BGW Scheme, BTE and FS. The multicasting encryption system 1 of this invention can be applied to the multicasting of contents by broadcasting or the dissemination of recording medium. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、暗号化装置および暗号化方法、並びに復号化装置および復号化方法に関し、特に、データを暗号化して同報通信する場合に用いて好適な暗号化装置および暗号化方法、並びに復号化装置および復号化方法に関する。   The present invention relates to an encryption device, an encryption method, a decryption device, and a decryption method, and more particularly, to an encryption device, an encryption method, and a decryption method that are suitable for data encryption and broadcast communication. The present invention relates to an apparatus and a decoding method.

映像や楽曲などに代表されるコンテンツをテレビジョン放送やラジオ放送として送信したり、インターネットに代表されるネットワークを介して配信したり、記録媒体に記録して配布したりするサービスにおいては、コンテンツの著作権を保護するとともに、不正なユーザによってコンテンツが視聴されることを抑止するため、コンテンツをコンテンツ鍵によって暗号化し、このコンテンツ鍵をデバイス鍵によって暗号化して、暗号化されているコンテンツとデバイス鍵を送信(あるいは配信や記録)し、受信端末装置において予め保持しているデバイス鍵を用いて暗号化されているコンテンツ鍵を復号し、その結果得られるコンテンツ鍵を用いてコンテンツを復号するシステムの利用が一般的である。以下、このようなシステムを同報通信暗号システムと称する。   In a service that transmits content such as video or music as a television broadcast or radio broadcast, distributes it via a network typified by the Internet, or records and distributes it on a recording medium, In order to protect copyright and prevent content from being viewed by unauthorized users, the content is encrypted with the content key, and this content key is encrypted with the device key. Of a system that transmits (or distributes or records), decrypts a content key encrypted using a device key held in advance in the receiving terminal device, and decrypts the content using the resulting content key Use is common. Hereinafter, such a system is referred to as a broadcast communication encryption system.

同報通信暗号システムにおいては、何らかの事故や不正な工作によって受信端末装置に保持されている鍵が流出してしまうと、コンテンツの視聴権限を有しているユーザによって操作される正規の受信端末装置ではない不正な受信端末装置(コンテンツの視聴権限を有してないユーザによって操作される正規の受信端末装置)がコンテンツを再生できてしまうことになる。   In the broadcast communication encryption system, when a key held in the receiving terminal device leaks out due to some accident or illegal work, a legitimate receiving terminal device operated by a user who has the right to view content An unauthorized receiving terminal device (a legitimate receiving terminal device operated by a user who does not have content viewing authority) can reproduce the content.

そこで、このような事態を抑止するため、流出したデバイス鍵では復号不可能となるように暗号化を行うことができる無効化鍵管理法(Revocation Scheme)が存在する。ただし、この無効化鍵管理法は、単純に個別の受信端末装置に対して鍵の無効化を行った場合、システムとして予め必要となる鍵の数が膨大になるという問題がある。   Therefore, in order to prevent such a situation, there is a revocation scheme (Revocation Scheme) that can perform encryption so that the leaked device key cannot be decrypted. However, this invalidation key management method has a problem that the number of keys required in advance as a system becomes enormous when a key is simply invalidated for an individual receiving terminal device.

システムとして予め必要となるデバイス鍵の数を抑えることができる鍵管理手法としては、Subset-Cover Revocationが存在する。Subset-Cover Revocationでは、デバイス鍵を木構造を用いて管理し、木構造のリーフ(木構造の最下層)に受信端末装置を割り当て、ノードにデバイス鍵を割り当てるようになされている。Subset-Cover Revocationの具体的な実現方式としては、Subset Difference Method(SD法)が知られている(非特許文献1参照)。   Subset-Cover Revocation exists as a key management technique that can reduce the number of device keys required in advance for the system. In Subset-Cover Revocation, device keys are managed using a tree structure, a receiving terminal device is assigned to a leaf of the tree structure (the lowest layer of the tree structure), and a device key is assigned to a node. A Subset Difference Method (SD method) is known as a specific method for realizing Subset-Cover Revocation (see Non-Patent Document 1).

D.Naor,M.Naor,and J.Lotspiech,”!Revocation and tracing schemes for stateless receivers”,CRYPTO,'01,2001.D.Naor, M.Naor, and J.Lotspiech, “! Revocation and tracing schemes for stateless receivers”, CRYPTO, '01, 2001.

SD法は、無効化したいデバイス鍵の数が増加しても、暗号化符号列のメッセージ長を短く抑えることが可能である。しかしながら、送信側において秘密鍵を用いて暗号化している鍵管理方式の場合、コンテンツの送信は秘密鍵を知り得る信頼された機関に限定されてしまう。また、デバイス鍵が流出してしまった際にそのデバイス鍵を無効化しても、既に送信済みの暗号化されたコンテンツは、無効化されたデバイス鍵を用いて再生されてしまうという問題がある。   The SD method can keep the message length of the encrypted code string short even if the number of device keys to be invalidated increases. However, in the case of a key management method in which encryption is performed using a secret key on the transmission side, content transmission is limited to a trusted organization that can know the secret key. In addition, even if the device key is invalidated even if the device key is invalidated, there is a problem that encrypted content that has already been transmitted is reproduced using the invalidated device key.

本発明はこのような状況に鑑みてなされたものであり、同報通信暗号システムの送信側における暗号化に公開鍵を用いることにより、コンテンツの送信者に対する制限を外すものである。   The present invention has been made in view of such a situation. By using a public key for encryption on the transmission side of the broadcast communication encryption system, the restriction on the content sender is removed.

本発明の第1の側面は、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが復号化できないようにコンテンツを暗号化する暗号化装置(暗号化方法)において、SD法に基づき、前記不正な復号化装置が割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段(ステップ)と、コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段(ステップ)と、決定されたカバーリングに対応して前記コンテンツ鍵を暗号化する第2の暗号化手段(ステップ)と、前記コンテンツの暗号化結果、および前記コンテンツ鍵の暗号化結果を含む暗号文を出力する出力手段(ステップ)とを含む暗号化装置(暗号化方法)である。   According to a first aspect of the present invention, there is provided an encryption device (encryption method) for encrypting content so that an unauthorized one cannot be decrypted among a plurality of decryption devices assigned to each leaf of a binary tree. And determining means (step) for determining covering in the binary tree corresponding to the leaf to which the unauthorized decryption device is assigned based on the SD method, and encrypting the content using a content key A first encryption means (step), a second encryption means (step) for encrypting the content key corresponding to the determined covering, an encryption result of the content, and the content key An encryption device (encryption method) including output means (step) for outputting ciphertext including an encryption result.

本発明の第1の側面においては、SD法に基づき、不正な復号化装置が割り当てられているリーフに対応して2分木におけるカバーリングが決定され、決定されたカバーリングに対応してコンテンツ鍵が暗号化され、コンテンツの暗号化結果、およびコンテンツ鍵の暗号化結果を含む暗号文が出力される。   In the first aspect of the present invention, based on the SD method, covering in a binary tree is determined corresponding to a leaf to which an unauthorized decryption device is assigned, and content corresponding to the determined covering is determined. The key is encrypted, and a ciphertext including the content encryption result and the content key encryption result is output.

本発明の第2の側面は、SD法に基づき、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、決定されたカバーリングに対応して前記コンテンツ鍵を暗号化する第2の暗号化手段とを含む暗号化装置から出力された、前記コンテンツの暗号化結果、および前記コンテンツ鍵の暗号化結果を含む暗号文を復号化する復号化装置(復号化方法)において、予め保持している第1の秘密鍵に基づき、前記カバーリングに対応する第2の秘密鍵を導出する導出手段(ステップ)と、導出された前記第2の秘密鍵に基づき、前記暗号文から前記コンテンツ鍵を取得する取得手段(ステップ)と、取得された前記コンテンツ鍵に基づき、前記暗号文を復号化して前記コンテンツを得る復号化手段(ステップ)とを含む復号化装置(復号化方法である)。   According to a second aspect of the present invention, there is provided a binary tree corresponding to a leaf to which an illegal one is assigned among a plurality of decoding devices assigned to each leaf of the binary tree based on the SD method. Determining means for determining covering, first encrypting means for encrypting the content using a content key, and second encrypting means for encrypting the content key corresponding to the determined covering In the decryption device (decryption method) that decrypts the ciphertext including the content encryption result and the content key encryption result output from the encryption device including Deriving means (step) for deriving a second secret key corresponding to the covering based on one secret key, and the content key from the ciphertext based on the derived second secret key Obtaining means Tokusuru (step), based on the acquired the content key, (a decoding method) decoding means (step) and decoding apparatus comprising obtaining said content by decrypting the ciphertext.

本発明の第2の側面においては、予め保持している第1の秘密鍵に基づき、カバーリングに対応する第2の秘密鍵が導出され、導出された第2の秘密鍵に基づき、暗号文からコンテンツ鍵が取得され、取得されたコンテンツ鍵に基づき、暗号文が復号化されてコンテンツが得られる。   In the second aspect of the present invention, a second secret key corresponding to the covering is derived based on the first secret key held in advance, and the ciphertext is derived based on the derived second secret key. The content key is obtained from the content, and the ciphertext is decrypted based on the obtained content key to obtain the content.

本発明の第3の側面は、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが復号化できないようにコンテンツを暗号化する暗号化装置(暗号化方法)において、SD法に基づき、前記不正な復号化装置が割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段(ステップ)と、コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段(ステップ)と、決定されたカバーリングに対応し、時刻t2において前記コンテンツ鍵を暗号化する第2の暗号化手段(ステップ)と、前記コンテンツの暗号化結果、前記コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文を出力する出力手段(ステップ)とを含む暗号化装置(暗号化方法)である。 According to a third aspect of the present invention, there is provided an encryption device (encryption method) for encrypting content so that unauthorized ones cannot be decrypted among a plurality of decryption devices assigned to each leaf of a binary tree. And determining means (step) for determining covering in the binary tree corresponding to the leaf to which the unauthorized decryption device is assigned based on the SD method, and encrypting the content using a content key A first encryption means (step), a second encryption means (step) corresponding to the determined covering and encrypting the content key at time t 2 , the content encryption result, An encryption device (encryption method) including an encryption unit (encryption method) that outputs an encryption result including a content key encryption result and a time t 2 .

本発明の第3の側面においては、SD法に基づき、不正な復号化装置が割り当てられているリーフに対応して2分木におけるカバーリングが決定され、コンテンツ鍵を用いてコンテンツが暗号化される。そして、決定されたカバーリングに対応し、時刻t2においてコンテンツ鍵が暗号化され、コンテンツの暗号化結果、コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文が出力される。 In the third aspect of the present invention, based on the SD method, covering in the binary tree is determined corresponding to a leaf to which an unauthorized decryption device is assigned, and the content is encrypted using the content key. The Then, in response to the determined covering, a content key at the time t 2 it is encrypted, the encryption result of the content, encryption result of the content key, and the ciphertext that includes the time t 2 is output.

本発明の第4の側面は、SD法に基づき、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、決定されたカバーリングに対応し、時刻t2において前記コンテンツ鍵を暗号化する第2の暗号化手段とを含む暗号化装置から出力された、前記コンテンツの暗号化結果、前記コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文を復号化する復号化装置において、予め保持している時刻t1(≦t2)の第1の秘密鍵に基づき、前記カバーリングに対応する時刻t2の第2の秘密鍵を導出する導出手段(ステップ)と、導出された時刻t2の前記第2の秘密鍵に基づき、前記暗号文から前記コンテンツ鍵を取得する取得手段(ステップ)と、取得された前記コンテンツ鍵に基づき、前記暗号文を復号化して前記コンテンツを得る復号化手段(ステップ)とを含む復号化装置(復号化方法)である。 According to a fourth aspect of the present invention, there is provided a binary tree corresponding to a leaf to which an illegal one is assigned among a plurality of decoding devices assigned to each leaf of the binary tree based on the SD method. Determining means for determining covering; first encryption means for encrypting the content using a content key; and second means for encrypting the content key at time t 2 corresponding to the determined covering. In the decryption device for decrypting the ciphertext including the encryption result of the content, the encryption result of the content key, and the time t 2 output from the encryption device including the encryption means of Derivation means (step) for deriving a second secret key at time t 2 corresponding to the covering based on the first secret key at time t 1 (≦ t 2 ), and derived time t 2 The second of Obtaining means (step) for obtaining the content key from the ciphertext based on a secret key; and decrypting means (step) for obtaining the content by decrypting the ciphertext based on the obtained content key. It is a decoding apparatus (decoding method) including.

前記導出手段は、予め保持している時刻t1の第1の秘密鍵に基づき、前記カバーリングに対応する時刻t1の第2の秘密鍵を生成し、生成した時刻t1の前記第2の秘密鍵を時刻t2の前記第2の秘密鍵に更新するようにすることができる。 The deriving means generates a second secret key at time t 1 corresponding to the covering based on the first secret key held at time t 1 and holds the second secret key at the generated time t 1 . of it can be made to update to the second secret key of the time the secret key t 2.

前記導出手段は、生成した時刻t1の前記第2の秘密鍵を更新することにより、2つの前記第2の秘密鍵を取得し、一方を時刻t2の前記第2の秘密鍵とし、他方を蓄積するようにすることができる。 The derivation means obtains the two second secret keys by updating the generated second secret key at time t 1 , one of which is the second secret key at time t 2 , Can be accumulated.

前記導出手段は、予め保持している時刻t1の第1の秘密鍵を時刻t2の前記第1の秘密鍵に更新し、更新した時刻t2の前記第1の秘密鍵に基づき、前記カバーリングに対応する時刻t2の第2の秘密鍵を生成するようにすることができる。 The deriving means updates the first secret key at time t 1 held in advance to the first secret key at time t 2 , and based on the updated first secret key at time t 2 , The second secret key at time t 2 corresponding to the covering can be generated.

本発明の第4の側面においては、予め保持している時刻t1(≦t2)の第1の秘密鍵に基づき、カバーリングに対応する時刻t2の第2の秘密鍵が導出され、導出された時刻t2の第2の秘密鍵に基づき、暗号文からコンテンツ鍵が取得され、取得されたコンテンツ鍵に基づき、暗号文が復号化されてコンテンツが得られる。 In the fourth aspect of the present invention, a second secret key at time t 2 corresponding to the covering is derived based on the first secret key at time t 1 (≦ t 2 ) held in advance. A content key is acquired from the ciphertext based on the derived second secret key at time t 2 , and the content is obtained by decrypting the ciphertext based on the acquired content key.

本発明第5の側面は、BGW Schemeに基づいてコンテンツを暗号化する暗号化装置(暗号化方法)において、時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrを生成する生成手段(ステップ)と、生成された暗号文C,Hdrを出力する出力手段(ステップ)とを含み、前記暗号文Hdrには時刻tが含まれる暗号化装置(暗号化方法)である。 According to a fifth aspect of the present invention, in an encryption apparatus (encryption method) for encrypting content based on the BGW Scheme, the ciphertext C is obtained by the encryption algorithm ENC BGW_FS (S, K, t) at time t = t 2 . , Hdr generating means (step) and the generated ciphertext C, Hdr output means (step), wherein the ciphertext Hdr includes a time t. ).

本発明第5の側面においては、時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrが生成され、生成された暗号文C,Hdrが出力される。 In the present invention a fifth aspect, the time t = t encryption algorithm ENC BGW_FS in 2 (S, K, t) by the ciphertext C, Hdr is generated, the generated ciphertext C, Hdr is output.

本発明の第6の側面は、時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrを生成する生成手段と、前記暗号文Hdrには時刻tが含まれる暗号化装置から出力された暗号文C,Hdrを復号化する復号化装置(復号化方法)において、予め保持している時刻t1(≦t2)に対応する秘密鍵に基づき、暗号文Hdrに含まれる時刻t=t2に対応する秘密鍵を導出する導出手段(ステップ)と、導出された時刻t2に対応する秘密鍵に基づき、前記暗号文Hdrからセッション鍵を取得する取得手段(ステップ)と、取得された前記セッション鍵に基づき、前記暗号文Cを復号化して前記コンテンツを得る復号化手段(ステップ)とを含む復号化装置(復号化方法)である。 A sixth aspect of the present invention, the time t = encryption algorithm at t 2 ENC BGW_FS (S, K , t) by the ciphertext C, a generating means for generating Hdr, said ciphertext Hdr contains time t In the decryption device (decryption method) for decrypting the ciphertexts C and Hdr output from the encrypted device, the ciphertext is based on the secret key corresponding to the time t 1 (≦ t 2 ) held in advance. Deriving means (step) for deriving a secret key corresponding to time t = t 2 included in Hdr, and acquiring means for acquiring a session key from the ciphertext Hdr based on the secret key corresponding to the derived time t 2 A decryption device (decryption method) including (step) and decryption means (step) for decrypting the ciphertext C to obtain the content based on the acquired session key.

前記導出手段は、予め保持している時刻t1(≦t2)に対応する秘密鍵に基づき、2つの秘密鍵を導出し、一方を暗号文Hdrに含まれる時刻t=t2に対応する秘密鍵として、他方を蓄積するようにすることができる。 The derivation means derives two secret keys based on the secret key corresponding to the time t 1 (≦ t 2 ) held in advance, and one of them corresponds to the time t = t 2 included in the ciphertext Hdr. The other can be stored as a secret key.

本発明の第6の側面においては、予め保持している時刻t1(≦t2)に対応する秘密鍵に基づき、暗号文Hdrに含まれる時刻t=t2に対応する秘密鍵が導出され、導出された時刻t2に対応する秘密鍵に基づき、暗号文Hdrからセッション鍵が取得され、取得されたセッション鍵に基づき、暗号文Cが復号化されてコンテンツが得られる。 In the sixth aspect of the present invention, a secret key corresponding to time t = t 2 included in the ciphertext Hdr is derived based on a secret key corresponding to time t 1 (≦ t 2 ) held in advance. The session key is acquired from the ciphertext Hdr based on the secret key corresponding to the derived time t 2, and the ciphertext C is decrypted based on the acquired session key to obtain the content.

以上のように、本発明の第1および第2の側面によれば、同報通信暗号システムにおいて、コンテンツの送信者に対する制限を外すことが可能となる。また、システムとして予め用意する公開鍵の数を減少させることができるとともに、比較的少ない計算量で秘密鍵を導出することが可能となる。   As described above, according to the first and second aspects of the present invention, it is possible to remove restrictions on the content sender in the broadcast encryption system. In addition, the number of public keys prepared in advance as a system can be reduced, and a secret key can be derived with a relatively small amount of calculation.

本発明の第3および第4の側面によれば、同報通信暗号システムにおいて、コンテンツの送信者に対する制限を外すことが可能となる。また、システムとして予め用意する公開鍵の数を減少させることができるとともに、比較的少ない計算量で秘密鍵を導出することが可能となる。さらに、過去に送信された暗号文が復号化されることを抑止することが可能となる。   According to the third and fourth aspects of the present invention, it is possible to remove the restriction on the content sender in the broadcast encryption system. In addition, the number of public keys prepared in advance as a system can be reduced, and a secret key can be derived with a relatively small amount of calculation. Furthermore, it becomes possible to prevent the ciphertext transmitted in the past from being decrypted.

本発明の第5および第6の側面によれば、同報通信暗号システムにおいて、コンテンツの送信者に対する制限を外すことが可能となる。また、復号化装置の総数や不正な復号化装置の数に拘わりなく、メッセージ長を一定に保つことが可能となる。さらに、過去に送信された暗号文が復号化されることを抑止することが可能となる。   According to the fifth and sixth aspects of the present invention, it is possible to remove restrictions on the content sender in the broadcast encryption system. Further, the message length can be kept constant regardless of the total number of decoding devices or the number of illegal decoding devices. Furthermore, it becomes possible to prevent the ciphertext transmitted in the past from being decrypted.

以下、本発明を適用した具体的な実施の形態について、図面を参照しながら詳細に説明する。   Hereinafter, specific embodiments to which the present invention is applied will be described in detail with reference to the drawings.

図1は、本発明を適用した同報通信システムの構成例を示している。この同報通信システム1は、後述する3種類の同報通信暗号を実現するものであり、コンテンツを暗号化して送信する送信装置10、暗号化されたコンテンツを受信して復号化する受信端末装置20、送信装置10と受信端末装置20を結ぶ通信網30から構成される。なお、受信端末装置20は複数存在するものとする。   FIG. 1 shows a configuration example of a broadcast communication system to which the present invention is applied. The broadcast communication system 1 realizes three types of broadcast encryption described later, a transmission device 10 that encrypts and transmits content, and a reception terminal device that receives and decrypts the encrypted content. 20, a communication network 30 connecting the transmission device 10 and the reception terminal device 20. It is assumed that there are a plurality of receiving terminal devices 20.

送信装置10は、予め保持している公開鍵を用いてコンテンツを暗号化する暗号化部11、および、暗号化部11によって暗号化されたコンテンツを通信網30を介して受信端末装置20に送信する送信部12から構成される。   The transmitting device 10 encrypts the content using a public key held in advance, and transmits the content encrypted by the encrypting unit 11 to the receiving terminal device 20 via the communication network 30. The transmitting unit 12 is configured.

受信端末装置20は、暗号化されているコンテンツを通信網30を介して受信する受信部21、および、受信部21によって受信された暗号化されているコンテンツを予め保持している秘密鍵に基づいて復号化する復号化部22から構成される。   The receiving terminal device 20 is based on a receiving unit 21 that receives encrypted content via the communication network 30, and a secret key that is stored in advance by the receiving unit 21. And a decoding unit 22 for decoding.

通信網30は、テレビジョン放送、ラジオ放送、有線放送などの放送網、インターネットに代表されるWAN(Wide Area Network)やLAN(Local Area Network)などのデータネットワークなどの他、暗号化されたデータを記録媒体に記録して配布することなどを含むものとする。   The communication network 30 is a broadcasting network such as television broadcasting, radio broadcasting, and cable broadcasting, a data network such as a WAN (Wide Area Network) and a LAN (Local Area Network) represented by the Internet, and encrypted data. Recording on a recording medium and distributing it.

なお、送信装置10の暗号化部11と受信端末装置20の復号化部22は、それぞれハードウェアによって実現してもよいし、ソフトウェアによって実現してもよい。   The encryption unit 11 of the transmission device 10 and the decryption unit 22 of the reception terminal device 20 may be realized by hardware or software.

ソフトウェアにより実現する場合、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば図2に示すように構成される汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。   When realized by software, a program constituting the software can execute various functions by installing a computer incorporated in dedicated hardware or various programs. For example, FIG. It is installed from a recording medium in a general-purpose personal computer configured as shown in FIG.

このパーソナルコンピュータ50は、CPU(Central Processing Unit)51を内蔵している。CPU51にはバス54を介して、入出力インタフェース55が接続されている。バス54には、ROM(Read Only Memory)52およびRAM(Random Access Memory)53が接続されている。   The personal computer 50 includes a CPU (Central Processing Unit) 51. An input / output interface 55 is connected to the CPU 51 via the bus 54. A ROM (Read Only Memory) 52 and a RAM (Random Access Memory) 53 are connected to the bus 54.

入出力インタフェース55には、キーボード、マウス等の入力デバイスよりなる入力部56、操作画面などを表示するCRT(Cathode Ray Tube)またはLCD(Liquid Crystal Display)等のディスプレイよりなる出力部57、プログラムや各種データを格納するハードディスクドライブなどよりなる記憶部58、およびモデム、LAN(Local Area Network)アダプタなどよりなり、インターネットに代表されるネットワークを介した通信処理を実行する通信部59が接続されている。また、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory)、DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini Disc)を含む)、もしくは半導体メモリなどの記録媒体61に対してデータを読み書きするドライブ60が接続されている。   The input / output interface 55 includes an input unit 56 including an input device such as a keyboard and a mouse, an output unit 57 including a display such as a CRT (Cathode Ray Tube) or LCD (Liquid Crystal Display) for displaying an operation screen, a program, A storage unit 58 composed of a hard disk drive or the like for storing various data, and a communication unit 59 composed of a modem, a LAN (Local Area Network) adapter, etc., for performing communication processing via a network represented by the Internet are connected. . Also, a magnetic disk (including a flexible disk), an optical disk (including a CD-ROM (Compact Disc-Read Only Memory), a DVD (Digital Versatile Disc)), a magneto-optical disk (including an MD (Mini Disc)), or a semiconductor A drive 60 for reading / writing data from / to a recording medium 61 such as a memory is connected.

このパーソナルコンピュータ50に暗号化部11あるいは復号化部22としての処理を実行させるプログラムは、記録媒体61に格納された状態でパーソナルコンピュータ50に供給され、ドライブ60によって読み出されて記憶部58に内蔵されるハードディスクドライブにインストールされている。記憶部58にインストールされているプログラムは、入力部56に入力されるユーザからのコマンドに対応するCPU51の指令によって、記憶部58からRAM53にロードされて実行される。   A program for causing the personal computer 50 to execute processing as the encryption unit 11 or the decryption unit 22 is supplied to the personal computer 50 while being stored in the recording medium 61, read by the drive 60, and stored in the storage unit 58. Installed on the internal hard disk drive. The program installed in the storage unit 58 is loaded from the storage unit 58 to the RAM 53 and executed by a command of the CPU 51 corresponding to a command from the user input to the input unit 56.

次に、同報通信システム1によって実現される3種類の同報通信暗号(以下、それぞれを第1の同報通信暗号、第2の同報通信暗号、または第3の同報通信暗号と称する)の基礎となる4種類の技術、すなわち、SD法、BTE(Binary Tree Encryption)、FS(Forward Security)、およびBGW Schemeについて説明する。   Next, three types of broadcast ciphers realized by the broadcast communication system 1 (hereinafter referred to as a first broadcast cipher, a second broadcast cipher, or a third broadcast cipher, respectively). ), That is, the SD method, BTE (Binary Tree Encryption), FS (Forward Security), and BGW Scheme will be described.

なお、第1の同報通信暗号ではSD法、およびBTEを利用する。第2の同報通信暗号ではSD法、BTE、およびFSを利用する。第3の同報通信暗号ではBGW Scheme、BTE、およびFSを利用する。以下、受信端末装置20の符号”20”を適宜省略する。   The first broadcast encryption uses the SD method and BTE. The second broadcast cipher uses the SD method, BTE, and FS. The third broadcast cipher uses BGW Scheme, BTE, and FS. Hereinafter, the symbol “20” of the receiving terminal device 20 is omitted as appropriate.

SD法
SD法は、Subset-Cover Revocationの一種である。Subset-Cover Revocationでは、暗号化されているコンテンツを復号化できないようにする処理を無効化(Revocation)と称し、複数存在する受信端末装置の全体の集合をN、無効化する受信端末装置の集合をRとした場合、送信装置10からの暗号化されているコンテンツを復号化する権限を有する受信端末装置∈N\Rは、暗号化されているコンテンツを復号化できるが、無効化された受信端末装置∈Rは、これが多数結託したとしても暗号化されているコンテンツを復号化できないようにするものである。
SD method The SD method is a kind of Subset-Cover Revocation. In Subset-Cover Revocation, a process for preventing encrypted content from being decrypted is referred to as invalidation (Revocation), and the entire set of multiple receiving terminal devices is N, and the set of receiving terminal devices to be invalidated Is R, the receiving terminal device ∈ N \ R having the authority to decrypt the encrypted content from the transmitting device 10 can decrypt the encrypted content, but the invalidated reception The terminal device ∈ R prevents the encrypted content from being decrypted even if a large number of the terminal devices ε R are collaborated.

SD法は、集合Rのサイズの拡大に伴ってカバーする部分木の個数(メッセージ長)が増加するCS(Complete Subtree method)法の欠点を解決する手法であり、複数の受信端末装置20をグループ化するとき、無効化する受信端末装置をその配下の部分木に含めて完全部分木の差SDa,cを用いてカバーリングを行う。ここで、aは、外部の完全部分木のルートであり、cは、無効化する受信端末装置を含む内部の完全部分木のルートである。例えば図3に示すように、無効化する受信端末装置(図中×印で示す)の集合R={u011,u110,u111}とした場合、カバーリングはSD0,011,SD1,11となる。 The SD method is a method for solving the disadvantage of the CS (Complete Subtree method) method in which the number of subtrees to be covered (message length) increases as the size of the set R increases, and a plurality of receiving terminal devices 20 are grouped together. When receiving, the receiving terminal device to be invalidated is included in the subtree under it, and covering is performed using the difference SDa , c of the complete subtree. Here, a is the route of the external complete subtree, and c is the route of the internal complete subtree including the receiving terminal device to be invalidated. For example, as shown in FIG. 3, when the set R = {u 011 , u 110 , u 111 } of receiving terminal devices (indicated by x in the figure) to be invalidated, the covering is SD 0,011 , SD 1,11. It becomes.

SD法における、無効化された複数の受信端末装置が結託して暗号化されているコンテンツを復号化しようとする攻撃に対する安全性の要件は、受信端末装置をグループ化するカバーリングSDa,cごとに異なる鍵を割り当てることである。しかしながら、全てのカバーリングSDa,cに対して異なる鍵を割り当てるために必要な鍵数はO(nlogn)となる。 According to the SD method, a security requirement against an attack that attempts to decrypt content encrypted by a plurality of invalidated receiving terminal devices is defined as covering SD a, c for grouping receiving terminal devices. Assign a different key for each. However, the number of keys necessary for assigning different keys to all coverings SD a, c is O (nlogn).

非特許文献1には、擬似乱数生成器を用い、親の鍵から子の鍵を作成できるようにすることで必要な鍵数をO(log2n)まで減少させる方法が開示されている。この手法では、擬似乱数生成器の入力値である木の各内部ノードに割り当てられたラベル(鍵を生成する元のデータ)を全て異なる値に設定すると異なる鍵を生成できる。 Non-Patent Document 1 discloses a method of reducing the number of necessary keys to O (log 2 n) by using a pseudo-random number generator so that a child key can be created from a parent key. In this method, different keys can be generated by setting all labels (original data for generating keys) assigned to the internal nodes of the tree, which are input values of the pseudorandom number generator, to different values.

なお、カバーリングSa,cはCS法において分割されていた部分木を統合できるので、メッセージ長(カバーリングに必要な部分木の個数と一致する)はCS法に比較して短くなる。また、無効化する受信端末装置の総数をrとした場合、部分木の個数はその上限値が2r−1になることが知られている。 Note that since the covering Sa , c can integrate the subtrees divided in the CS method, the message length (corresponding to the number of subtrees necessary for covering) is shorter than that in the CS method. Further, when the total number of receiving terminal devices to be invalidated is r, the upper limit of the number of subtrees is known to be 2r-1.

BTE
BTEは、階層型IDベース暗号(HIDE)を2分木に簡易化したものであり、ルートノードをε、親ノードをw∈{0,1}*とすると、左子ノードw0を、右子ノードをw1としてIDとみなしている。
BTE
BTE is a simplified hierarchical ID-based cipher (HIDE) into a binary tree. If the root node is ε and the parent node is wε {0,1} * , the left child node w0 is changed to the right child. The node is regarded as an ID with w1.

以下、ノードwのビット長を|w|、ノードwの左からiビット目までをw|iと記述する。ただし、「w|i」などを下付文字として使用する場合、表記の都合上、iの下付を解除して|w|iとも記述する。また、w0はノードwの最下位ビット側に0を追加した値、w1はノードwの最下位ビット側に1を追加した値とする。例えば、ノードw=1011である場合、|w|=4、w|2=10、w|3=101、w0=10110、w1=10111である。 Hereinafter, the bit length of the node w is described as | w |, and the left to i-th bit of the node w is described as w | i . However, when “w | i ” or the like is used as a subscript, the subscript of i is canceled and written as | w | i for convenience of description. Further, w0 is a value obtained by adding 0 to the least significant bit side of the node w, and w1 is a value obtained by adding 1 to the least significant bit side of the node w. For example, when the node w = 1011, | w | = 4, w | 2 = 10, w | 3 = 101, w0 = 10110, w1 = 10111.

BTEの安全性は、BDH(Bilinear Diffie-Hellman)問題の難しさに基づいている。G1,G2は位数を素数qとした巡回群であって、G1は加法群、G2は乗法群とした場合、双線形写像e:G1×G1→G2は、∀P,Q∈G1,∀a,b∈Zqについて、e(aP,bQ)=e(bP,aQ)=e(P,Q)abである。 The safety of BTE is based on the difficulty of the BDH (Bilinear Diffie-Hellman) problem. G 1 and G 2 are cyclic groups with orders of prime number q, where G 1 is an additive group and G 2 is a multiplicative group, bilinear mapping e: G 1 × G 1 → G 2 is For P, QεG 1 , ∀a, bεZ q , e (aP, bQ) = e (bP, aQ) = e (P, Q) ab .

BTEにおけるセットアップアルゴリズムGENBTE、鍵生成アルゴリズムDERBTE、暗号化アルゴリズムENCBTE、および復号化アルゴリズムDECBTEについて説明する。 A setup algorithm GEN BTE , a key generation algorithm DER BTE , an encryption algorithm ENC BTE , and a decryption algorithm DEC BTE in BTE will be described.

セットアップアルゴリズムGENBTE
セキュリティパラメータ1λと木の高さhを入力とした場合のセットアップアルゴリズムGENBTE(1λ,h)は、以下の(1)乃至(4)の処理からなる。
(1)BDHパラメータジェネレータIG(1λ)を実行し、位数qの群G1、G2と双線形写像eを生成する。
(2)ランダムにP∈G1とα∈Zqを選択し、Q=αPとする。ここで、Zqは0以上q未満の整数の集合である。
(3)暗号的ハッシュ関数H:{0,1}*→G1を選択する。
(4)PK=(G1,G2,e,P,Q,H)を公開鍵、Sε=αH(ε)をルートの秘密鍵とする。
Setup algorithm GEN BTE
The setup algorithm GEN BTE (1 λ , h) when the security parameter 1 λ and the tree height h are input comprises the following processes (1) to (4).
(1) The BDH parameter generator IG (1 λ ) is executed to generate groups q 1 and G 2 of order q and a bilinear map e.
(2) PεG 1 and αεZ q are selected at random, and Q = αP. Here, Z q is a set of integers of 0 or more and less than q.
(3) Select cryptographic hash function H: {0, 1} * → G 1 .
(4) Let PK = (G 1 , G 2 , e, P, Q, H) be the public key, and S ε = αH (ε) be the root secret key.

鍵生成アルゴリズムDERBTE
公開鍵PK、ノードwに対応する秘密鍵SKwを入力として、左子ノードw0、右子ノードw1にそれぞれ対応する秘密鍵SKw0、SKw1を出力する鍵生成アルゴリズムDERBTE(PK,w,SKw)は、以下の(1)および(2)の処理からなる。
(1)ランダムにρw0,ρw1∈Zqを選択し、Rw0=ρw0P、Rw1=ρw1P、Sw0=Sw+ρw0H(w0)、Sw1=Sw+ρw1H(w1)を算出する。
(2)SKw0=(Rw|1,…,Rw||w|,Rw0,Sw0)、SKw1=(Rw|1,…,Rw||w|,Rw1,Sw1)を出力する。
Key generation algorithm DER BTE
A key generation algorithm DER BTE (PK, w, which outputs the private keys SK w0 and SK w1 corresponding to the left child node w0 and the right child node w1, respectively, with the public key PK and the secret key SK w corresponding to the node w as inputs. SK w ) includes the following processes (1) and (2).
(1) ρ w0 , ρ w1 εZ q are selected at random, R w0 = ρ w0 P, R w1 = ρ w1 P, S w0 = S w + ρ w0 H (w0), S w1 = S w + ρ w1 H (w1) is calculated.
(2) SKw0 = ( Rw | 1 ,..., Rw || w | , Rw0 , Sw0 ), SKw1 = ( Rw | 1 ,..., Rw || w | , Rw1 , S w1 ) is output.

暗号化アルゴリズムENCBTE
公開鍵PK、ノードw、メッセージM∈G2を入力として、暗号文Cを出力する暗号化アルゴリズムENCBTE(PK,w,M)は、以下の(1)および(2)の処理からなる。
(1)乱数r∈Zqを発生する。
(2)C=(rP,rH(w|1),rH(w|2),…,rH(w||w|),M・d)=(U0,U1,…,U|w|,V)を出力する。
ここで、U0=rP、Ui=rH(w|i)(iは1以上、|w|以下の整数)、d=e(Q,H(ε))rである。
Encryption algorithm ENC BTE
The encryption algorithm ENC BTE (PK, w, M) that receives the public key PK, the node w, and the message MεG 2 and outputs the ciphertext C includes the following processes (1) and (2).
(1) Generate a random number rεZ q .
(2) C = (rP, rH (w | 1 ), rH (w | 2 ),..., RH (w | | w | ), M · d) = (U 0 , U 1 ,..., U | w | , V) is output.
Here, U 0 = rP, U i = rH (w | i ) (i is an integer of 1 or more and | w | or less), and d = e (Q, H (ε)) r .

復号化アルゴリズムDECBTE
公開鍵PK、ノードw、秘密鍵SKw=(Rw|1,…,Rw||w|,Sw)に基づいて、暗号文Cを復号化する復号化アルゴリズムDECBTE(PK,w,SKw,C)は、以下の(1)および(2)の処理からなる。
(1)SKwとCに基づいてdを算出する。

Figure 2007189597

(2)V/dを算出することによりメッセージMを得る。M=V/d Decryption algorithm DEC BTE
Public key PK, node w, secret key SK w = (R w | 1 , ..., R w || w |, S w) on the basis of the decoding algorithm to decrypt the ciphertext C DEC BTE (PK, w , SK w , C) includes the following processes (1) and (2).
(1) Calculate d based on SK w and C.
Figure 2007189597

(2) The message M is obtained by calculating V / d. M = V / d

FS
FSは、受信端末装置に保持されているデバイス鍵(秘密鍵)をそれ自身に基づいて所定の周期で更新することにより、ある時点においてデバイス鍵が流出したとしても、既に送信済みの暗号化されているコンテンツの復号化を不能とするものである。
FS
The FS updates the device key (secret key) held in the receiving terminal device at a predetermined cycle based on itself, so that even if the device key leaks at a certain point in time, it is already encrypted. It is impossible to decrypt the content that is being stored.

本発明においてFSの実現は、BTEと秘密鍵を格納するスタックを用いる手法を適用する。秘密鍵は、2分木の全てのノードに対応づける。2分木の高さをhとした場合、更新される秘密鍵の数は最大で2h+1−1である。 In the present invention, FS is realized by applying a method using a stack for storing BTE and a secret key. The secret key is associated with all nodes in the binary tree. When the height of the binary tree is h, the maximum number of secret keys to be updated is 2 h + 1 −1.

図4に示す時間の2分木のように、秘密鍵の更新は、時刻t=0に木のルートから開始され、前順探索(pre-order)の順序である。時刻tに対応するノードをw(t)とする。ただし、「w(t)」などを下付文字として使用する場合、表記の都合上、(t)の上付きを解除してw(t)とも記述する。当該ノードw(t)に対応する秘密鍵をSKw(t)とする。また、時刻t+1に対応するノードw(t+1)は、ノードw(t)が内部ノードである場合にはw(t+1)=w(t)0とし、ノードw(t)がリーフである場合にはw(t+1)=(w+1)|i'とする。ここで|i'は、最下位ビット側から1が出現するまで0を消去した値を示すものとする。 As in the binary tree of time shown in FIG. 4, the update of the secret key starts from the root of the tree at time t = 0 and is in the order of pre-order. Let the node corresponding to time t be w (t) . However, if you want to use, such as "w (t)" as a subscript, for the convenience of notation, also described as w (t) to release the superscript (t). The secret key corresponding to the node w (t) is SK w (t) . The node w (t + 1) corresponding to the time t + 1 is set to w (t + 1) = w (t) 0 when the node w (t) is an internal node, and the node w (t) is a leaf. In this case, w (t + 1) = (w + 1) | i ' . Here, | i ′ represents a value obtained by deleting 0 until 1 appears from the least significant bit side.

例えば、時刻t=5のノードw(5)=01tであり、このノードw(5)は内部ノードであるので、時刻t=6のノードw(6)=010tとなる。ノードw(6)はリーフであるので、時刻t=7のノードw(7)=010+1=011であり、最下位ビットに1が出現するので、w(7)=011tとなる。ノードw(7)はリーフであるので、時刻t=8のノードw(8)=011+1=100であり、最下位ビット側から1が出現するまで0を消去すると1である。よって、ノードw(8)=1tとなる。 For example, since node w (5) = 01 t at time t = 5 and this node w (5) is an internal node, node w (6) = 010 t at time t = 6. Since node w (6) is a leaf, node w (7) = 010 + 1 = 011 at time t = 7, and 1 appears in the least significant bit, so w (7) = 011 t . Since the node w (7) is a leaf, the node w (8) = 011 + 1 = 100 at time t = 8, and it is 1 when 0 is erased until 1 appears from the least significant bit side. Therefore, node w (8) = 1 t .

秘密鍵の更新は、時刻tの秘密鍵SKw(t)が内部ノードに割り当てられている場合、その子ノードの一方に割り当てられた秘密鍵SKw(t)0を次の時刻t+1の秘密鍵として使用するようにし、他方に割り当てられた秘密鍵SKw(t)1スタックに蓄積する。そして、秘密鍵SKw(t)がリーフに割り当てられている場合、スタックに最後に蓄積した秘密鍵を取り出し、時刻t+1の秘密鍵とする。 When the secret key SK w (t) at time t is assigned to the internal node, the secret key SK w (t) 0 assigned to one of its child nodes is updated to the secret key at the next time t + 1. And the secret key SK w (t) 1 assigned to the other is stored in the stack. If the secret key SK w (t) is assigned to the leaf, the secret key stored last in the stack is taken out and used as the secret key at time t + 1.

FSにおけるセットアップアルゴリズムGENFS、鍵更新アルゴリズムKUDFS、暗号化アルゴリズムENCFS、および復号化アルゴリズムDECFSについて説明する。 A setup algorithm GEN FS , a key update algorithm KUD FS , an encryption algorithm ENC FS , and a decryption algorithm DEC FS in FS will be described.

セットアップアルゴリズムGENFS
セキュリティパラメータ1λ、最大更新回数Lを入力とした場合のセットアップアルゴリズムGENFS(1λ,L)では、上述したGENBTE(1λ,h)を実行することにより、公開鍵PK、ルートノードの秘密鍵SKε=Sεを得る。なお、Lは2h+1−1以下の整数である。
Setup algorithm GEN FS
In the setup algorithm GEN FS (1 λ , L) when the security parameter 1 λ and the maximum update count L are input, by executing the GEN BTE (1 λ , h) described above, the public key PK and the root node The secret key SK ε = S ε is obtained. Note that L is an integer of 2 h + 1 −1 or less.

鍵更新アルゴリズムKUDFS
時刻tの秘密鍵を更新によって得る鍵更新アルゴリズムKUDFS(PK,t,SKw(t))は、以下の(1)乃至(4)の処理からなる。
(1)時刻tのノードw(t)を計算する。
(2)ノードw(t)が2分木の内部ノードであるかリーフであるかを判定する。
(3)ノードw(t)が内部ノードである場合、上述した鍵生成アルゴリズムDERBTE(PK、w(t),SKw(t))を実行して秘密鍵SKw(t)0,SKw(t)1を生成する。そして、秘密鍵SKw(t)0を時刻t+1の秘密鍵SKw(t+1)とし、秘密鍵SKw(t)1をスタックに蓄積して、秘密鍵SKw(t)を消去する。
(4)ノードw(t)がリーフである場合、スタックに蓄積されている秘密鍵を取り出して時刻t+1の秘密鍵SKw(t+1)とする。
Key update algorithm KUD FS
The key update algorithm KUD FS (PK, t, SK w (t) ) for obtaining the secret key at time t includes the following processes (1) to (4).
(1) The node w (t) at time t is calculated.
(2) It is determined whether the node w (t) is an internal node or a leaf of the binary tree.
(3) When the node w (t) is an internal node, the above-described key generation algorithm DER BTE (PK, w (t) , SK w (t) ) is executed to execute the secret key SK w (t) 0 , SK. Generate w (t) 1 . Then, the secret key SK w (t) 0 is set as the secret key SK w (t + 1) at time t + 1, the secret key SK w (t) 1 is stored in the stack, and the secret key SK w (t) is deleted. .
(4) When the node w (t) is a leaf, the secret key stored in the stack is extracted and set as the secret key SK w (t + 1) at time t + 1.

暗号化アルゴリズムENCFS
公開鍵PK、時刻t、メッセージM∈G2を入力として、暗号文Cを出力する暗号化アルゴリズムENCFS(PK,t,M)は、以下の(1)および(2)の処理からなる。
(1)時刻tのノードw(t)を計算する。
(2)上述したENCBTE(PK,w(t),M)を実行することにより暗号文Cを得る。
Encryption algorithm ENC FS
The encryption algorithm ENC FS (PK, t, M) that receives the public key PK, the time t, and the message MεG 2 and outputs the ciphertext C includes the following processes (1) and (2).
(1) The node w (t) at time t is calculated.
(2) The ciphertext C is obtained by executing the above-described ENC BTE (PK, w (t) , M).

復号化アルゴリズムDECFS
公開鍵PK、時刻t、時刻tの秘密鍵SKw(t)に基づいて、暗号文Cを復号化する復号化アルゴリズムDECFS(PK,t,SKw(t),C)は、以下の(1)および(2)の処理からなる。
(1)時刻tのノードw(t)を計算する。
(2)上述したDECBTE(PK,w(t),SKw(t),C)を実行することによりメッセージMを得る。
Decryption algorithm DEC FS
The decryption algorithm DEC FS (PK, t, SK w (t) , C) for decrypting the ciphertext C based on the public key PK, the secret key SK w (t) at time t, and time t is as follows: The process consists of (1) and (2).
(1) The node w (t) at time t is calculated.
(2) The message M is obtained by executing the above-described DEC BTE (PK, w (t) , SK w (t) , C).

BGW Scheme
BGW Schemeは、D.Boneh,C.Gentry,and B.Waters,"Collusion Resistant Broadcast Encryption With Short Ciphertext and Private Keys",CRYPTO'05,2005.に開示されている技術であり、受信端末装置の総数nや不正な受信端末装置の数(無効化する受信端末装置の数)に拘わらず、常にメッセージ長を2、各受信端末装置がそれぞれ保持する秘密鍵の数を1個にすることが可能な公開鍵型同報通信暗号である。
BGW Scheme
BGW Scheme is a technique disclosed in D.Boneh, C.Gentry, and B.Waters, “Collusion Resistant Broadcast Encryption With Short Ciphertext and Private Keys”, CRYPTO'05,2005. Regardless of n or the number of illegal receiving terminal devices (the number of receiving terminal devices to be invalidated), the message length can always be 2 and the number of secret keys held by each receiving terminal device can be 1 It is a public key type broadcast encryption.

BGW Schemeの安全性は、BTEの安全性と同様に、BDH問題の難しさに基づいている。G1,G2は位数を素数qとした巡回群であって、それぞれは乗法群とした場合、双線形写像e:G1×G1→G2は、∀P,Q∈G1,∀a,b∈Zqについて、e(Pa,Qb)=e(Pb,Qa)=e(P、Q)abである。 The safety of BGW Scheme is based on the difficulty of the BDH problem, as is the safety of BTE. G 1 and G 2 are cyclic groups with orders of prime q, and when each is a multiplicative group, bilinear mapping e: G 1 × G 1 → G 2 is given by ∀P, Q∈G 1 , For ∀a, bεZ q , e (P a , Q b ) = e (P b , Q a ) = e (P, Q) ab

BGW SchemeにおけるセットアップアルゴリズムGENBGW、暗号化アルゴリズムENCBGW、および復号化アルゴリズムDECBGWについて説明する。 A setup algorithm GEN BGW , an encryption algorithm ENC BGW , and a decryption algorithm DEC BGW in BGW Scheme will be described.

セットアップアルゴリズムGENBGW
セキュリティパラメータ1λと受信端末装置の総数nを入力とした場合のセットアップアルゴリズムGENBGW(1λ,n)は、以下の(1)乃至(3)の処理からなる。
(1)BDHパラメータジェネレータIG(1λ)を実行し、位数qの乗法群G1,G2と双線形写像eを生成する。
(2)G1の生成元gとα,β∈Zqをランダムに選択し、gi,ski,vを計算する。

Figure 2007189597

(3)PK=(g,g1,…,gn,gn+2,…,g2n,v)を公開鍵、skiを受信端末装置i(i=1,…,n,n+2,…,2n)の秘密鍵、α,βをシステムの秘密鍵とする。 Setup algorithm GEN BGW
The setup algorithm GEN BGW (1 λ , n) when the security parameter 1 λ and the total number n of receiving terminal devices are input includes the following processes (1) to (3).
(1) The BDH parameter generator IG (1 λ ) is executed to generate the multiplicative groups G 1 and G 2 of order q and the bilinear map e.
(2) G 1 generators α and βεZ q are selected at random, and g i , sk i , and v are calculated.
Figure 2007189597

(3) PK = (g, g 1 ,..., G n , g n + 2 ,..., G 2n , v) is a public key, and sk i is a receiving terminal device i (i = 1,..., N, n + 2, .., 2n) and α and β are system secret keys.

暗号化アルゴリズムENCBGW
正規の受信端末装置の集合S⊆{1,2,…,n}と公開鍵PKを入力とする暗号化アルゴリズムENCBGW(S,PK)は、以下の(1)乃至(3)の処理からなる。なお、正規の受信端末装置の集合S⊆{1,2,…,n}に対するセッション鍵Kを用いた暗号化関数をEKとする。
(1)乱数r∈Zqを発生し、セッション鍵K=e(gn+1,g)rを決定する。なお、e(gn+1,g)は、(gn,g1)に基づいて計算する。
(2)コンテンツMを暗号化関数EKを用いて暗号化し、暗号文C=EK(M)を得る。さらに、Hdrを計算する。

Figure 2007189597

(3)暗号文CとHdrを出力する。 Encryption algorithm ENC BGW
An encryption algorithm ENC BGW (S, PK) that receives a set of regular receiving terminal devices S⊆ {1, 2,..., N} and a public key PK is obtained from the following processes (1) to (3). Become. Note that an encryption function using a session key K for a set S⊆ {1, 2,..., N} of regular receiving terminal devices is E K.
(1) Generate a random number rεZ q and determine a session key K = e (gn + 1 , g) r . Note that e (g n + 1 , g) is calculated based on (g n , g 1 ).
(2) The content M is encrypted using the encryption function E K to obtain a ciphertext C = E K (M). Further, Hdr is calculated.
Figure 2007189597

(3) Output ciphertext C and Hdr.

復号化アルゴリズムDECBGW
暗号文Cを復号化する復号化アルゴリズムDECBGW(C,Hdr,S,i,ski,PK)は、以下の(1)および(2)の処理からなる。
(1)i∈Sを満たす受信端末装置iでは、保持する秘密鍵skiを用いてセッション鍵Kを算出する。

Figure 2007189597

(2)EK(C)でコンテンツMを復号化する。 Decryption algorithm DEC BGW
Decoding algorithm DEC BGW to decrypt the ciphertext C (C, Hdr, S, i, sk i, PK) consists of the following processes (1) and (2).
(1) In the receiving terminal device i satisfying iεS, the session key K is calculated using the held secret key ski i .
Figure 2007189597

(2) The content M is decrypted with E K (C).

次に、本発明を適用した同報通信システム1によって実現される第1乃至3の同報通信暗号について説明する。   Next, first to third broadcast ciphers realized by the broadcast communication system 1 to which the present invention is applied will be described.

第1の同報通信暗号では、送信側において公開鍵を用いるSD法にBTEを適用する。BTEでは、上述したように親の秘密鍵から子の秘密鍵を作成できるので、2分木の内部ノードaを基点として子の秘密鍵を生成する場合、それぞれ異なるρa,cを用いて秘密鍵SKa,cを作成すれば、各カバーリングに対してそれぞれ異なる秘密鍵を割り当てることができる。また、BTEは双線形写像を用いているので、公開鍵を用いて暗号化を行う同報通信暗号が実現できる。 In the first broadcast cipher, BTE is applied to the SD method using a public key on the transmission side. In BTE, as described above, a child secret key can be created from a parent secret key. Therefore, when a child secret key is generated using the internal node a of the binary tree as a base point, the secret is generated using different ρ a, c. If the keys SK a, c are created, different secret keys can be assigned to the respective covers. Also, since BTE uses bilinear mapping, it is possible to realize a broadcast communication cipher that performs encryption using a public key.

第1の同報通信暗号におけるセットアップアルゴリズムGENSD、初期鍵生成アルゴリズムDER_CENTSD、鍵導出アルゴリズムDER_TERMSD、暗号化アルゴリズムENCSD、および復号化アルゴリズムDECSDについて説明する。 The setup algorithm GEN SD , initial key generation algorithm DER_CENT SD , key derivation algorithm DER_TERM SD , encryption algorithm ENC SD , and decryption algorithm DEC SD in the first broadcast encryption will be described.

セットアップアルゴリズムGENSD
セキュリティパラメータ1λと木の高さhを入力とした場合のセットアップアルゴリズムGENSD(1λ,h)は、以下の(1)乃至(4)の処理からなる。
(1)BDHパラメータジェネレータIG(1λ)を実行し、位数qの群G1、G2と双線形写像eを生成する。
(2)ランダムにP∈G1とα∈Zqを選択し、Q=αPとする。ここで、Zqは0以上q未満の整数の集合である。
(3)暗号的ハッシュ関数H1:{0,1}*→G1を選択する。
(4)PK=(G1,G2,e,P,Q,H1)を公開鍵、Sε=αH1(ε)をルートの秘密鍵、Sε'=αH1(ε’)を無効化する受信端末装置がない場合におけるSD法のカバーリングに対応しない秘密鍵とする。
Setup algorithm GEN SD
The setup algorithm GEN SD (1 λ , h) when the security parameter 1 λ and the tree height h are input comprises the following processes (1) to (4).
(1) The BDH parameter generator IG (1 λ ) is executed to generate groups q 1 and G 2 of order q and a bilinear map e.
(2) PεG 1 and αεZ q are selected at random, and Q = αP. Here, Z q is a set of integers of 0 or more and less than q.
(3) Select cryptographic hash function H 1 : {0, 1} * → G 1 .
(4) PK = (G 1 , G 2 , e, P, Q, H 1 ) is the public key, S ε = αH 1 (ε) is the root secret key, and S ε ′ = αH 1 (ε ′) It is assumed that the secret key does not correspond to the SD method covering when there is no receiving terminal device to be invalidated.

初期鍵生成アルゴリズムDER_CENTSD
受信端末装置に保持させる、SD法のカバーリングSDa,bに対応する秘密鍵SKa,bを生成する初期鍵生成アルゴリズムDERSD(PK,a,b)は、以下の(1)および(2)の処理からなる。
(1)ランダムにρa,b∈Zqを選択し、Ra,b=ρa,bP、Sa,b=Sε+ρa,b1(b)を算出する。
(2)SKa,b=(Ra,b,Sa,b)を出力する。
Initial key generation algorithm DER_CENT SD
The initial key generation algorithm DER SD (PK, a, b) for generating the secret key SK a, b corresponding to the SD method covering SD a, b , which is held in the receiving terminal device, is the following (1) and ( 2).
(1) ρ a, b εZ q is selected at random, and R a, b = ρ a, b P, S a, b = S ε + ρ a, b H 1 (b) is calculated.
(2) SK a, b = (R a, b , S a, b ) is output.

なお、受信端末装置にはSD法と同数の秘密鍵SKa,bと秘密鍵Sε'を保持させる。例えば、ノードwに割り当てられた受信端末装置には、ルートからノードwまでのパス上のノードをa、当該パスから分岐するノードをbとした場合、秘密鍵SKa,b=(Ra,b,Sa,b)=(ρa,bP,Sε+ρa,bH(b))が保持される。
aはw|i 0≦i<logn
bはw|jの兄弟ノード 1≦j≦logn
The receiving terminal device holds the same number of secret keys SK a, b and secret keys S ε ′ as in the SD method. For example, in the receiving terminal device assigned to the node w, if the node on the path from the root to the node w is a and the node branching from the path is b, the secret key SK a, b = (R a, b , S a, b ) = (ρ a, b P, S ε + ρ a, b H (b)) is held.
a is w | i 0 ≦ i <logn
b is a sibling node of w | j 1 ≦ j ≦ logn

鍵導出アルゴリズムDER_TERMSD
受信端末装置において親の秘密鍵SKa,bから子の秘密鍵SK’a,b0、SK’a,b1を導出する鍵導出アルゴリズムDER_TERMSD(PK,a,b,SKa,b)は、以下の(1)および(2)の処理からなる。なお、SK’a,b0などの「’」は、受信端末装置において導出した秘密鍵とその鍵成分を意味するものとする。
(1)ランダムにρ’a,b0,ρ’a,b1∈Zqを選択し、R’a,b0=ρ’a,b0P、R’a,b1=ρ’a,b1P、S’a,b0=Sa,b+ρ’a,b01(b0)、S’a,b1=Sa,b+ρ’a,b11(b1)を算出する。
(2)SK’a,b0=(Ra,b,R’a,b0,S’a,b0)、SK’a,b1=(Ra,b,R’a,b1,S’a,b1)を出力する。
Key derivation algorithm DER_TERM SD
The key derivation algorithm DER_TERM SD (PK, a, b, SK a, b ) for deriving the child secret keys SK ′ a, b0 , SK ′ a, b1 from the parent secret key SK a, b in the receiving terminal device is: It consists of the following processes (1) and (2). Note that “′” such as SK ′ a, b0 means a secret key derived in the receiving terminal device and its key component.
(1) ρ ′ a, b0 , ρ ′ a, b1 ∈Z q are selected at random, and R ′ a, b0 = ρ ′ a, b0 P, R ′ a, b1 = ρ ′ a, b1 P, S ' a, b0 = S a, b + ρ' a, b0 H 1 (b0), S ' a, b1 = S a, b + ρ' a, b1 H 1 (b1) are calculated.
(2) SK ′ a, b0 = (R a, b , R ′ a, b0 , S ′ a, b0 ), SK ′ a, b1 = (R a, b , R ′ a, b1 , S ′ a, b1 ) is output.

暗号化アルゴリズムENCSD
コンテンツ鍵K∈G2を入力とし、カバーリングSDa,cに対応する暗号文Ua,Vaを出力する暗号化アルゴリズムENCSD(PK,a,c,K)は、以下の(1)乃至(5)の処理からなる。
(1)乱数ra∈Zqを発生する。
(2)ノードaからノードcまでのパス上に存在するノードaの子ノードbを検出する。
(3)Va=K・daを算出する。ここで、da=e(Q,H1(ε))raである。
(4)Ua=(raP,ra1(c||b|),ra1(c||b|+1),…,ra1(c||c|))=(Ua,0,Ua,c||b|,…,Ua,c||c|)を算出する。
(5)暗号文Ua,Vaと乱数raを出力する。
Encryption algorithm ENC SD
The encryption algorithm ENC SD (PK, a, c, K) that receives the content key KεG 2 and outputs the ciphertexts U a , V a corresponding to the covering SD a, c is as follows (1) To (5).
(1) Generate a random number r a εZ q .
(2) The child node b of the node a existing on the path from the node a to the node c is detected.
(3) V a = K · d a is calculated. Here, d a = e (Q, H 1 (ε)) ra .
(4) U a = (r a P, r a H 1 (c || b | ), r a H 1 (c || b | +1 ), ..., r a H 1 (c || c | ) ) = (U a, 0 , U a, c || b | ,..., U a, c || c | ) is calculated.
(5) for outputting the ciphertext U a, V a and the random number r a.

復号化アルゴリズムDECSD
受信端末装置において秘密鍵SKa,bに基づいて、暗号文Ua,Vaを復号化する復号化アルゴリズムDECSD(PK,a,b,c,SKa,b,Ua,Va)は、以下の(1)および(2)の処理からなる。
(1)受信端末装置が保持している秘密鍵SKa,bを用い、上述した鍵導出アルゴリズムDER_TERMSD(PK,a,b,SKa,b)をノードbからノードcに到るまで繰り返し実行することにより、秘密鍵SK’a,c=(Ra,c||b|,R’a,c||b|+1,…,R’a,c||c|,S’a,c)を得る。
(2)次式に基づいてdaを算出する。

Figure 2007189597

ここで、Dは次式のとおりである。
Figure 2007189597

(3)Va/daを算出することによりコンテンツ鍵Kを得る。K=Va/da
(4)コンテンツ鍵Kを用いて暗号文EK(M)を復号化し、コンテンツMを得る。 Decryption algorithm DEC SD
A decryption algorithm DEC SD (PK, a, b, c, SK a, b , U a , V a ) for decrypting the ciphertext U a , V a based on the secret key SK a, b at the receiving terminal device. Consists of the following processes (1) and (2).
(1) Using the secret key SK a, b held by the receiving terminal device, the above-described key derivation algorithm DER_TERM SD (PK, a, b, SK a, b ) is repeated until the node b reaches the node c. By executing, the secret key SK ′ a, c = (R a, c || b | , R ′ a, c || b | +1 ,..., R ′ a, c || c | , S ′ a , c ).
(2) Calculate d a based on the following equation.
Figure 2007189597

Here, D is as follows.
Figure 2007189597

(3) The content key K is obtained by calculating V a / d a . K = V a / d a
(4) The ciphertext E K (M) is decrypted using the content key K to obtain the content M.

次に、例えば図5に示すように、8台の受信端末装置(リーフ000に割り当てられた受信端末装置をu000と記述する。他も同様とする)のうち、u001,u100,u101の3台を無効化するようにコンテンツを送信し、u010においてコンテンツを再生する場合を例にして、第1の同報通信暗号を具体的に説明する。   Next, as shown in FIG. 5, for example, three of u001, u100, and u101 among eight receiving terminal devices (the receiving terminal device assigned to the leaf 000 is described as u000, and so on). The first broadcast communication cipher will be specifically described by taking as an example a case where content is transmitted so as to invalidate the content and the content is reproduced in u010.

なお、u010には、秘密鍵Sε'と初期鍵生成アルゴリズムDER_CENTSDを用いて生成された秘密鍵SKε,1,SKε,00,SKε,011,SK0,00,SK0,011,SK01,011が予め保持されているものとする。 Note that u010 includes secret keys SK ε, 1 , SK ε, 00 , SK ε, 011 , SK 0,00 , SK 0,011 , SK generated using the secret key S ε ′ and the initial key generation algorithm DER_CENT SD. Assume that 01,011 is held in advance.

図6は、第1の同報通信暗号における送信装置10の処理(第1の暗号化処理)を説明するフローチャートである。   FIG. 6 is a flowchart for explaining the processing (first encryption processing) of the transmission apparatus 10 in the first broadcast encryption.

ステップS1において、暗号化部11は、無効化する受信端末装置のノードに基づいてSD法におけるカバーリングSDa,cを決定する。図5の例の場合、2個のカバーリングSD0,001,SD1,10が決定される。 In step S1, the encryption unit 11 determines the covering SD a, c in the SD method based on the node of the receiving terminal device to be invalidated. In the example of FIG. 5, two coverings SD 0,001 and SD 1,10 are determined.

ステップS2において、暗号化部11は、コンテンツ鍵Kを選択し、選択したコンテンツ鍵Kを用いてコンテンツMを暗号化し、EK(M)を得る。 In step S2, the encryption unit 11 selects the content key K, encrypts the content M using the selected content key K, and obtains E K (M).

ステップS3において、暗号化部11は、ステップS1で決定したカバーリングSDa,cにそれぞれ対応して暗号化アルゴリズムENCSDを実行する。図5の例の場合、暗号化アルゴリズムENCSD(PK,0,001,K),ENCSD(PK,1,10,K)を実行する。そして、暗号化アルゴリズムENCSD(PK,0,001,K)の結果として、U0=(r0P,r01(00),r01(001)),V0=K・d0を得る。また、暗号化アルゴリズムENCSD(PK,1,10,K)の結果として、U1=(r1P,r11(10)),V1=K・d1を得る。ここで、d0=e(Q,H1(ε))r0,d1=e(Q,H1(ε))r1である。 In step S3, the encryption unit 11 executes the encryption algorithm ENC SD corresponding to the coverings SD a and c determined in step S1, respectively. In the example of FIG. 5, the encryption algorithms ENC SD (PK, 0, 001, K) and ENC SD (PK, 1, 10, K) are executed. As a result of the encryption algorithm ENC SD (PK, 0 , 001, K), U 0 = (r 0 P, r 0 H 1 (00), r 0 H 1 (001)), V 0 = K · obtain d 0. Further, U 1 = (r 1 P, r 1 H 1 (10)), V 1 = K · d 1 is obtained as a result of the encryption algorithm ENC SD (PK, 1, 10, K). Here, d 0 = e (Q, H 1 (ε)) r 0 and d 1 = e (Q, H 1 (ε)) r 1 .

ステップS4において、暗号化部11は、ステップS2およびS3の処理結果に、カバーリングSDa,cの個数だけ検索情報iを付加して暗号文CSDを生成し、送信部12に出力する。図5の例の場合、検索情報i0,i1を付加して暗号文CSD=<i0,i1;U0,U1;V0,V1;EK(M)>を生成し、送信部12に出力する。なお、検索情報i0,i1は、受信端末装置において暗号文CSDの中から暗号化鍵U0,U1;V0,V1を検索するためのものである。送信部12は、暗号文CSDを通信網30を介して送信する。以上で、第1の暗号化処理は終了される。 In step S < b > 4, the encryption unit 11 generates the ciphertext C SD by adding the search information i to the processing results of steps S < b > 2 and S < b > 3 by the number of coverings SD a, c and outputs it to the transmission unit 12. In the case of the example in FIG. 5, ciphertext C SD = <i 0 , i 1 ; U 0 , U 1 ; V 0 , V 1 ; E K (M)> is generated by adding search information i 0 and i 1. And output to the transmitter 12. The retrieval information i 0 and i 1 is for retrieving the encryption keys U 0 and U 1 ; V 0 and V 1 from the ciphertext C SD in the receiving terminal device. Transmitter 12 transmits via the communication network 30 the ciphertext C SD. This completes the first encryption process.

図7は、第1の同報通信暗号における受信端末装置u010の処理(第1の復号化処理)を説明するフローチャートである。   FIG. 7 is a flowchart for explaining the process (first decryption process) of the receiving terminal apparatus u010 in the first broadcast cipher.

ステップS11において、受信部21は、送信装置10から送信された暗号文CSDを取得して復号化部22に出力する。ステップS12において、復号化部22は、暗号文CSDに含まれる検索情報i0,i1に基づいて暗号化鍵U0,U1;V0,V1を検索し、予め保持している秘密鍵SK0,00を入力として鍵導出アルゴリズムDER_TERMSD(PK,0,00,SK0,00)を実行し、秘密鍵SK’0,000,SK’0,001を生成する。このうち、秘密鍵SK’0,001が目的の機密鍵である。 In step S11, the receiving unit 21, and outputs the acquired ciphertext C SD transmitted from the transmitting apparatus 10 to the decoder 22. In step S12, the decryption unit 22 retrieves the encryption keys U 0 , U 1 ; V 0 , V 1 based on the retrieval information i 0 , i 1 included in the ciphertext C SD and holds them in advance. The secret key SK 0,00 is input and the key derivation algorithm DER_TERM SD (PK, 0, 00, SK 0,00 ) is executed to generate secret keys SK ′ 0,000 and SK ′ 0,001 . Among these, the secret key SK ′ 0,001 is the target secret key.

ステップS13において、復号化部22は、秘密鍵SK’0,001=(R0,00,R’0,001,S’0,001)を用い、次式のようにd0を計算する。ただし、d0を算出する過程で発生させるρ’0,001は、送信装置10で発生されたρ0,001と異なることに注意が必要である。さらに、復号化部22は、V0/d0を計算することによってコンテンツ鍵Kを取得する。

Figure 2007189597
In step S13, the decryption unit 22 uses the secret key SK ′ 0,001 = (R 0,00 , R ′ 0,001 , S ′ 0,001 ) and calculates d 0 as in the following equation. However, it should be noted that ρ ′ 0,001 generated in the process of calculating d 0 is different from ρ 0,001 generated in the transmission apparatus 10. Further, the decryption unit 22 obtains the content key K by calculating V 0 / d 0 .
Figure 2007189597

ステップS14において、復号化部22は、ステップS13で生成したコンテンツ鍵Kを用い、EK(M)を復号化してコンテンツMを取得する。以上で、受信端末装置u010による第1の復号化処理は終了される。 In step S14, the decryption unit 22 decrypts E K (M) using the content key K generated in step S13, and acquires content M. Thus, the first decoding process by the receiving terminal device u010 is completed.

なお、例えば、受信端末装置u0O0は、予め秘密鍵SK0,001を保持しているので、ステップS12の処理を省略することができる。 For example, since the receiving terminal device u0O0 holds the secret key SK 0,001 in advance, the process of step S12 can be omitted.

次に、第2の同報通信暗号について説明する。第2の同報通信暗号は、上述した第1の同報通信暗号にFSを適用した。すなわち、第2の同報通信暗号では、SD法における親の秘密鍵から子の秘密鍵を生成する2分木と、各秘密鍵を所定の時間周期で更新させる2分木の2つの2分木が用いられる。   Next, the second broadcast communication encryption will be described. As the second broadcast cipher, FS is applied to the first broadcast cipher described above. That is, in the second broadcast cipher, two binary trees for generating a child secret key from a parent secret key in the SD method and two binary trees for updating each secret key at a predetermined time period are used. Wood is used.

第2の同報通信暗号におけるセットアップアルゴリズムGENSD_FS、鍵生成アルゴリズムDER_CENTSD_FS、鍵更新アルゴリズムKUP_TERMSD_FS、暗号化アルゴリズムENCSD_FS、および復号化アルゴリズムDECSD_FSについて説明する。 The setup algorithm GEN SD_FS , key generation algorithm DER_CENT SD_FS , key update algorithm KUP_TERM SD_FS , encryption algorithm ENC SD_FS , and decryption algorithm DEC SD_FS in the second broadcast encryption will be described.

セットアップアルゴリズムGENSD_FS
セキュリティパラメータ1λと木の高さhを入力とした場合のセットアップアルゴリズムGENSD_FS(1λ,h)は、以下の(1)乃至(3)の処理からなる。
(1)セットアップアルゴリズムGENSD(1λ,h)を実行することにより公開鍵PKを得る。
(2)暗号的ハッシュ関数H2:{0,1}*→G1を選択する。
(3)PKにH2を追加し、PK=(G1,G2,e,P,Q,H1,H2)を公開鍵とする。
Setup algorithm GEN SD_FS
The setup algorithm GEN SD_FS (1 λ , h) when the security parameter 1 λ and the tree height h are input comprises the following processes (1) to (3).
(1) The public key PK is obtained by executing the setup algorithm GEN SD (1 λ , h).
(2) Cryptographic hash function H 2 : {0, 1} * → G 1 is selected.
(3) H 2 is added to PK, and PK = (G 1 , G 2 , e, P, Q, H 1 , H 2 ) is used as a public key.

鍵生成アルゴリズムDER_CENTSD_FS
受信端末装置に保持させる、SD法のカバーリングSDa,bに対応する時刻t=0の秘密鍵SKa,b,w(0)を生成する鍵生成アルゴリズムDERSD_FS(PK,a,b,t)は、以下の(1)および(2)の処理からなる。
(1)初期鍵生成アルゴリズムDER_CENTSDを実行してSKa,b=(Ra,b,Sa,b)を得る。
(2)SKa,bを秘密鍵SKa,b,w(0)として出力する。
Key generation algorithm DER_CENT SD_FS
A key generation algorithm DER SD_FS (PK, a, b, which generates a secret key SK a, b, w (0) at time t = 0 corresponding to the SD method covering SD a, b , which is held in the receiving terminal device t) consists of the following processes (1) and (2).
(1) The initial key generation algorithm DER_CENT SD is executed to obtain SK a, b = (R a, b , S a, b ).
(2) Output SK a, b as a secret key SK a, b, w (0) .

鍵更新アルゴリズムKUP_TERMSD_FS
受信端末装置において、保持している時刻tの秘密鍵SKa,b,w(t)を時刻t+1の秘密鍵SKa,b,w(t+1)に更新する鍵更新アルゴリズムKUP_TERMSD_FS(PK,t,SKa,b,w(t))は、以下の(1)乃至(5)の処理からなる。
(1)時刻tに対応するノードw(t)を算出する。
(2)ノードw(t)が2分木の内部ノードであるか、リーフであるかを判定する。
(3)ノードw(t)が2分木の内部ノードである場合、ランダムにσ’w(t)0,σ’w(t)1∈Zqを選択し、R’w(t)0=σ’w(t)0P、R’w(t)1=σ’w(t)1P、S’a,b,w(t)0=Sa,b,w(t)+σ’w(t)02(w(t)0)、S’a,b,w(t)1=Sa,b,w(t)+σ’w(t)12(w(t)1)を算出する。
さらに、秘密鍵SK’a,b,w(t)0
=(Ra,b,R’w|1,…,R’w||w(t)|,R’w(t)0,S’a,b,w(t)0
秘密鍵SK’a,b,w(t)1
=(Ra,b,R’w|1,…,R’w||w(t)|,R’w(t)1,S’a,b,w(t)1
を生成して秘密鍵SK’a,b,w(t)0を時刻t+1の秘密鍵SK’a,b,w(t+1)として使用し、秘密鍵SK’a,b,w(t)1をスタックに蓄積する。
(4)ノードw(t)が2分木のリーフである場合、スタックに蓄積されている秘密鍵を取り出して時刻t+1の秘密鍵秘密鍵SK’a,b,w(t+1)として使用する。
(5)時刻tの秘密鍵SKa,b,w(t)を消去する。
Key update algorithm KUP_TERM SD_FS
In the receiving terminal device, the key update algorithm KUP_TERM SD_FS (PK ) for updating the stored secret key SK a, b, w (t) at time t to the secret key SK a, b, w (t + 1) at time t + 1. , T, SK a, b, w (t) ) includes the following processes (1) to (5).
(1) The node w (t) corresponding to the time t is calculated.
(2) It is determined whether the node w (t) is an internal node or a leaf of the binary tree.
(3) When the node w (t) is an internal node of the binary tree, σ ′ w (t) 0 and σ ′ w (t) 1 ∈Z q are selected at random, and R ′ w (t) 0 = Σ ' w (t) 0 P, R' w (t) 1 = σ ' w (t) 1 P, S' a, b, w (t) 0 = S a, b, w (t) + σ ' w (t) 0 H 2 (w (t) 0), S ′ a, b, w (t) 1 = S a, b, w (t) + σ ′ w (t) 1 H 2 (w (t) 1) is calculated.
Furthermore, the secret key SK ' a, b, w (t) 0
= (R a, b , R ′ w | 1 ,..., R ′ w || w (t) | , R ′ w (t) 0 , S ′ a, b, w (t) 0 )
Secret key SK ' a, b, w (t) 1
= (R a, b , R ′ w | 1 ,..., R ′ w || w (t) | , R ′ w (t) 1 , S ′ a, b, w (t) 1 )
And the secret key SK ′ a, b, w (t) 0 is used as the secret key SK ′ a, b, w (t + 1) at time t + 1, and the secret key SK ′ a, b, w (t ) Accumulate 1 on the stack.
(4) When the node w (t) is a leaf of the binary tree, the secret key stored in the stack is taken out and used as the secret key secret key SK ′ a, b, w (t + 1) at time t + 1 To do.
(5) Delete the secret key SK a, b, w (t) at time t.

暗号化アルゴリズムENCSD_FS
暗号化アルゴリズムENCSD_FSは、カバーリングSDa,bごとに異なる時刻tを設定して実行することができる。受信端末装置が時刻t1の秘密鍵SK’a,b,w(t1)を保持している場合、暗号化アルゴリズムENCSD_FSの実行タイミングは時刻t2とする(t2≧t1)。ただし、「t1」,「t2」などを上付文字や下付文字として使用する場合、表記の都合上、数字の下付を解除して、t1t2t1t2とも記述する。コンテンツ鍵K∈G2を入力とし、カバーリングSDa,c、時刻t=t2に対応する暗号文Ua,Vaを出力する暗号化アルゴリズムENCSD_FS(PK,a,c,t,K)は、以下の(1)乃至(4)の処理からなる。
(1)時刻t2のノードw(t2)を計算する。
(2)ENCSD(PK,a,c,K)を実行し、暗号文Ua,Vaと乱数raを得る。
(3)(ra2(w(t2)1),…,ra2(w(t2)|w(t2)|))=(Ua,w(t2)|1,…,Ua,w(t2)|w(t2),t2)をUaに追加する。
(4)暗号文Ua,Vaを出力する。
Encryption algorithm ENC SD_FS
The encryption algorithm ENC SD_FS can be executed by setting a different time t for each of the covering SDs a and b . When the receiving terminal device holds the secret key SK ′ a, b, w (t1) at time t 1 , the execution timing of the encryption algorithm ENC SD_FS is set to time t 2 (t 2 ≧ t 1 ). However, "t 1", when used as "t 2" superscript and subscript, etc., for the convenience of notation, to release the attached underneath the numbers, t1, t2, t1, t2 both describe. An encryption algorithm ENC SD_FS (PK, a, c, t, K) that receives the content key KεG 2 and outputs ciphertexts U a , V a corresponding to the covering SD a, c and time t = t2 Consists of the following processes (1) to (4).
(1) The node w (t2) at time t 2 is calculated.
(2) ENC SD (PK, a, c, K) was performed to obtain a ciphertext U a, V a and the random number r a.
(3) (r a H 2 (w (t2) | 1 ),..., R a H 2 (w (t2) || w (t2) | )) = (U a, w (t2) | 1,. , U a, w (t2) | w (t2) , t 2 ) are added to U a .
(4) Output ciphertexts U a and V a .

復号化アルゴリズムDECSD_FS
受信端末装置において、保持する時刻t1の秘密鍵SK’a,b,w(t1)に基づいて、暗号文Ua,Vaを復号化する復号化アルゴリズムDECSD_FS(PK,a,b,c,SKa,b,w(t),Ua,Va)は、以下の(1)乃至(4)の処理からなる。
(1)鍵更新アルゴリズムKUP_TERMSD_FS(PK,t,SK’a,b,w(t1))を時刻t2まで適用して秘密鍵SK’a,b,w(t2)を得る。次式に基づいてdaを算出する。

Figure 2007189597

ここで、D1、D2は次式のとおりである。
Figure 2007189597

(2)受信端末装置が保持している秘密鍵SK’a,b,w(t2)を用い、鍵導出アルゴリズムDER_TERMSD(PK,a,b,SK’a,b,w(t2))をノードbからノードcに到るまで繰り返し実行することにより、秘密鍵SK’a,c,w(t2)を得る。
(3)Va/daを算出することによりコンテンツ鍵Kを得る。K=Va/da
(4)コンテンツ鍵Kを用いて暗号文EK(M)を復号化し、コンテンツMを得る。 Decryption algorithm DEC SD_FS
In the receiving terminal apparatus, a private key SK 'a time t 1 for holding, b, based on w (t1), the ciphertext U a, decoding algorithm to decode the V a DEC SD_FS (PK, a , b, c, SK a, b, w (t) , U a , V a ) are composed of the following processes (1) to (4).
(1) The secret key SK ′ a, b, w (t2) is obtained by applying the key update algorithm KUP_TERM SD_FS (PK, t, SK ′ a, b, w (t1) ) until time t 2 . D a is calculated based on the following equation.
Figure 2007189597

Here, D 1 and D 2 are as follows.
Figure 2007189597

(2) Using the secret key SK ′ a, b, w (t2) held by the receiving terminal device, the key derivation algorithm DER_TERM SD (PK, a, b, SK ′ a, b, w (t2) ) By repeatedly executing from the node b to the node c, the secret key SK ′ a, c, w (t2) is obtained.
(3) The content key K is obtained by calculating V a / d a . K = V a / d a
(4) The ciphertext E K (M) is decrypted using the content key K to obtain the content M.

なお、スタックに蓄積する秘密鍵は、受信端末装置に初期に格納された秘密鍵を入力として鍵更新アルゴリズムKUP_TERMSD_FSを実行した結果得られる秘密鍵であり、鍵導出アルゴリズムDER_TERMSDの実行結果を入力として鍵更新アルゴリズムKUP_TERMSD_FSを実行して得る秘密鍵ではないことに注意する。 The secret key stored in the stack is the secret key obtained as a result of executing the key update algorithm KUP_TERM SD_FS with the secret key initially stored in the receiving terminal as input, and the execution result of the key derivation algorithm DER_TERM SD is input Note that it is not a private key obtained by executing the key update algorithm KUP_TERM SD_FS as

次に、上述した図5に示された場合を例にして、第2の同報通信暗号を具体的に説明する。   Next, the second broadcast communication cipher will be specifically described by taking the case shown in FIG. 5 as an example.

なお、u010には、時刻t1に対応する秘密鍵Sε',w(t1)と初期鍵生成アルゴリズムDER_CENTSD_FSを用いて生成された秘密鍵SKε,1,w(t1),SKε,00,w(t1),SKε,011,w(t1),SK0,00,w(t1),SK0,011,w(t1),SK01,011,w(t1)が予め保持されているものとする。 Note that u010 includes secret keys S ε ′, w (t1) corresponding to time t 1 and secret keys SK ε, 1, w (t1) , SK ε, generated using the initial key generation algorithm DER_CENT SD_FS . 00, w (t1) , SK ε, 011, w (t1) , SK 0,00, w (t1) , SK 0,011, w (t1) , SK 01,011, w (t1) To do.

図8は、第2の同報通信暗号における送信装置10の処理(第2の暗号化処理)を説明するフローチャートである。   FIG. 8 is a flowchart for explaining the processing (second encryption processing) of the transmitting apparatus 10 in the second broadcast encryption.

ステップS21において、暗号化部11は、無効化する受信端末装置のノードに基づいてSD法におけるカバーリングSDa,cを決定する。図5の例の場合、2個のカバーリングSD0,001,SD1,10が決定される。 In step S21, the encryption unit 11 determines the covering SD a, c in the SD method based on the node of the receiving terminal device to be invalidated. In the example of FIG. 5, two coverings SD 0,001 and SD 1,10 are determined.

ステップS22において、暗号化部11は、コンテンツ鍵Kを選択し、選択したコンテンツ鍵Kを用いてコンテンツMを暗号化し、EK(M)を得る。 In step S22, the encryption unit 11 selects the content key K, encrypts the content M using the selected content key K, and obtains E K (M).

ステップS23において、暗号化部11は、ステップS21で決定したカバーリングSDa,cにそれぞれ対応し、暗号化アルゴリズムENCSD_FSを実行し、暗号文を得る。図5の例の場合、暗号化アルゴリズムENCSD_FS(PK,0,001,t2,K),ENCSD_FS(PK,1,10,t2,K)を実行し、暗号文U0,V0と暗号文U1,V1を得る。 In step S23, the encryption unit 11 executes the encryption algorithm ENC SD_FS corresponding to the covering SD a, c determined in step S21, and obtains a ciphertext. In the case of the example of FIG. 5, the encryption algorithms ENC SD_FS (PK, 0, 001, t 2 , K), ENC SD_FS (PK, 1, 10, t 2 , K) are executed, and the ciphertexts U 0 , V 0 And ciphertexts U 1 and V 1 are obtained.

ステップS24において、暗号化部11は、ステップS22およびS23の処理結果に、カバーリングSDa,cの個数に対応する検索情報iを付加して暗号文CSDを生成し、送信部12に出力する。図5の例の場合、検索情報i0,i1を付加して暗号文CSD=<i0,i1;U0,U1;V0,V1;EK(M)>を生成し、送信部12に出力する。送信部12は、暗号文CSDを通信網30を介して送信する。以上で、第2の暗号化処理は終了される。 In step S24, the encryption unit 11 adds the search information i corresponding to the number of coverings SD a, c to the processing results of steps S22 and S23 to generate the ciphertext C SD and outputs it to the transmission unit 12 To do. In the case of the example in FIG. 5, ciphertext C SD = <i 0 , i 1 ; U 0 , U 1 ; V 0 , V 1 ; E K (M)> is generated by adding search information i 0 and i 1. And output to the transmitter 12. Transmitter 12 transmits via the communication network 30 the ciphertext C SD. This completes the second encryption process.

図9は、第2の同報通信暗号における受信端末装置u010の処理(第2の復号化処理)を説明するフローチャートである。   FIG. 9 is a flowchart for explaining the process (second decryption process) of the receiving terminal apparatus u010 in the second broadcast cipher.

ステップS31において、受信部21は、送信装置10から送信された暗号文CSDを取得して復号化部22に出力する。ステップS32において、復号化部22は、暗号文CSDに含まれる検索情報i0,i1に基づいて暗号化鍵U0,U1;V0,V1を検索する。そして、予め保持している時刻t1の秘密鍵SK0,00,w(t)を入力として鍵更新アルゴリズムKUP_TERMSD_FS(PK,t,SK’0,00,w(t1))を時刻t2まで適用し、秘密鍵SK’0,00,w(t2)を生成する。さらに生成した秘密鍵SK’0,00,w(t2)を入力として、鍵導出アルゴリズムDER_TERMSD(PK,0,00,SK0,00,w(t2))を実行し、秘密鍵SK’0,000,w(t2),SK’0,001,w(t2)を生成する。 In step S31, the receiving unit 21, and outputs the acquired ciphertext C SD transmitted from the transmitting apparatus 10 to the decoder 22. In step S32, the decoding unit 22, an encryption key U 0, U 1 on the basis of the search information i 0, i 1 included in the ciphertext C SD; Search V 0, V 1. Then, the secret key SK 0,00 of time t 1 held in advance, the key update algorithm KUP_TERM SD_FS w (t) is as an input (PK, t, SK '0,00 , w (t1)) the time t 2 To generate a secret key SK ′ 0,00, w (t2) . Further, the generated secret key SK ′ 0,00, w (t2) is used as an input to execute a key derivation algorithm DER_TERM SD (PK, 0,00, SK 0,00, w (t2) ), and the secret key SK ′ 0,000 , w (t2) , SK ′ 0,001, w (t2) .

ステップS33において、復号化部22は、秘密鍵SK’0,001,w(t2)を用いてd0を計算し、V0/d0を計算することによってコンテンツ鍵Kを取得する。 In step S33, the decryption unit 22 calculates d 0 using the secret key SK ′ 0,001, w (t2) , and obtains the content key K by calculating V 0 / d 0 .

ステップS34において、復号化部22は、ステップS33で生成したコンテンツ鍵Kを用い、EK(M)を復号化してコンテンツMを取得する。以上で、受信端末装置u010による第2の復号化処理は終了される。 In step S34, the decryption unit 22 decrypts E K (M) using the content key K generated in step S33, and acquires the content M. Above, the 2nd decoding process by the receiving terminal device u010 is complete | finished.

なお、時刻t2=t1である場合、ステップS32において実行した鍵更新アルゴリズムKUP_TERMSD_FSを省略することができる。 If time t 2 = t 1 , the key update algorithm KUP_TERM SD_FS executed in step S32 can be omitted.

次に、第3の同報通信暗号について説明する。第3の同報通信暗号は、上述したBGW SchemeにFSを適用した。   Next, the third broadcast communication encryption will be described. As the third broadcast cipher, FS is applied to the above-described BGW Scheme.

第3の同報通信暗号におけるセットアップアルゴリズムGENBGW_FS、鍵更新アルゴリズムKUP_TERMBGW_FS、暗号化アルゴリズムENCBGW_FS、および復号化アルゴリズムDECBGW_FSについて説明する。 A setup algorithm GEN BGW_FS , a key update algorithm KUP_TERM BGW_FS , an encryption algorithm ENC BGW_FS , and a decryption algorithm DEC BGW_FS in the third broadcast cipher will be described.

セットアップアルゴリズムGENBGW_FS
セキュリティパラメータ1λと受信端末装置の総数nを入力とした場合のセットアップアルゴリズムGENBGW_FS(1λ,n)は、以下の(1)乃至(3)の処理からなる。
(1)BDHパラメータジェネレータIG(1λ)を実行し、位数qの乗法群G1,G2と双線形写像eを生成する。
(2)G1の生成元gとα,β∈Zqをランダムに選択し、gi,ski,w(0),vを計算する。

Figure 2007189597

(3)PK=(g,g1,…,gn,gn+2,…,g2n,v)を公開鍵、ski,w(0)を受信端末装置i(i=1,…,n,n+2,…,2n)の時刻t=0における秘密鍵、α,βをシステムの秘密鍵とする。 Setup algorithm GEN BGW_FS
The setup algorithm GEN BGW_FS (1 λ , n) when the security parameter 1 λ and the total number n of receiving terminal devices are input includes the following processes (1) to (3).
(1) The BDH parameter generator IG (1 λ ) is executed to generate the multiplicative groups G 1 and G 2 of order q and the bilinear map e.
(2) G 1 generator g and α, β∈Z q are selected at random, and g i , ski i, w (0) , v are calculated.
Figure 2007189597

(3) PK = (g, g 1 ,..., G n , g n + 2 ,..., G 2n , v) is the public key, and sk i, w (0) is the receiving terminal device i (i = 1,. , N, n + 2,..., 2n) at time t = 0, and α, β are the system secret keys.

鍵更新アルゴリズムKUP_TERMBGW_FS
受信端末装置において、保持している時刻tの秘密鍵SKi,w(t)を時刻t+1の秘密鍵SKi,w(t+1)に更新する鍵更新アルゴリズムKUP_TERMBGW_FS(PK,t,SKi,w(t))は、以下の(1)乃至(5)の処理からなる。
(1)時刻tに対応するノードw(t)を算出する。
(2)ノードw(t)が2分木の内部ノードであるか、リーフであるかを判定する。
(3)ノードw(t)が2分木の内部ノードである場合、ランダムにσ’w(t)0,σ’w(t)1∈Zqを選択し、次式に基づいてR’i,w(t)0,R’i,w(t)1,ski,w(t)0,ski,w(t)1を算出する。

Figure 2007189597

さらに、秘密鍵SK’i,w(t)0
=(R’i,w|1,…,R’i,w||w(t)|,R’i,w(t)0,ski,w(t)0
秘密鍵SK’i,w(t)1
=(R’i,w|1,…,R’i,w||w(t)|,R’i,w(t)1,ski,w(t)1
を生成して、秘密鍵SK’i,w(t)0を時刻t+1の秘密鍵SK’i,w(t+1)として使用し、秘密鍵SK’i,w(t)1をスタックに蓄積する。
(4)ノードw(t)が2分木のリーフである場合、スタックに蓄積されている秘密鍵を取り出して時刻t+1の秘密鍵秘密鍵SK’i,w(t+1)として使用する。
(5)時刻tの秘密鍵SKi,w(t)を消去する。 Key update algorithm KUP_TERM BGW_FS
In the receiving terminal device, the key update algorithm KUP_TERM BGW_FS (PK, t, SK ) for updating the stored secret key SK i, w (t) at time t to the secret key SK i, w (t + 1) at time t + 1. i, w (t) ) includes the following processes (1) to (5).
(1) The node w (t) corresponding to the time t is calculated.
(2) It is determined whether the node w (t) is an internal node or a leaf of the binary tree.
(3) When the node w (t) is an internal node of the binary tree, σ ′ w (t) 0 and σ ′ w (t) 1 ∈Z q are selected at random, and R ′ is based on the following equation: i, w (t) 0 , R'i , w (t) 1 , ski , w (t) 0 , ski , w (t) 1 are calculated.
Figure 2007189597

Furthermore, the private key SK ' i, w (t) 0
= ( R'i, w | 1 ,..., R'i, w || w (t) | , R'i , w (t) 0 , ski , w (t) 0 )
Secret key SK ' i, w (t) 1
= (R ′ i, w | 1 ,..., R ′ i, w || w (t) | , R ′ i, w (t) 1 , sk i, w (t) 1 )
And using the secret key SK ′ i, w (t) 0 as the secret key SK ′ i, w (t + 1) at time t + 1, and using the secret key SK ′ i, w (t) 1 in the stack accumulate.
(4) When the node w (t) is a leaf of the binary tree, the secret key stored in the stack is taken out and used as the secret key secret key SK ′ i, w (t + 1) at time t + 1.
(5) The secret key SK i, w (t) at time t is deleted.

暗号化アルゴリズムENCBGW_FS
正規の受信端末装置の集合S⊆{1,2,…,n}と公開鍵PK、時刻t2を入力とする暗号化アルゴリズムENCBGW_FS(S,PK,t)は、以下の(1)乃至(6)の処理からなる。なお、正規の受信端末装置の集合S⊆{1,2,…,n}に対するセッション鍵Kを用いた暗号化関数をEKとする。
(1)時刻t2に対応するノードw(t2)を算出する。
(2)乱数r∈Zqを発生し、セッション鍵K=e(gn+1,g)rを決定する。なお、e(gn+1,g)は、(gn,g1)に基づいて計算する。
(3)コンテンツMを暗号化関数EKを用いて暗号化し、暗号文C=EK(M)を得る。さらに、Hdrを計算する。

Figure 2007189597

(4)(H(w(t2)1r,…,H(w(t2)|w(t2)|r
=(Uw(t2)|1,…,Uw(t2)||w(t2)|)をHdrに追加する。
(5)tをHdrに追加する。
(6)暗号文CとHdrを出力する。 Encryption algorithm ENC BGW_FS
An encryption algorithm ENC BGW_FS (S, PK, t) that receives a set S 正規 {1, 2,..., N} of regular receiving terminal devices, a public key PK, and a time t 2 has the following (1) to (1) to It consists of the process of (6). Note that an encryption function using a session key K for a set S⊆ {1, 2,..., N} of regular receiving terminal devices is E K.
(1) The node w (t2) corresponding to the time t 2 is calculated.
(2) Generate a random number rεZ q and determine a session key K = e (gn + 1 , g) r . Note that e (g n + 1 , g) is calculated based on (g n , g 1 ).
(3) The content M is encrypted using the encryption function E K to obtain a ciphertext C = E K (M). Further, Hdr is calculated.
Figure 2007189597

(4) (H (w (t2) | 1 ) r , ..., H (w (t2) || w (t2) | ) r )
= ( Uw (t2) | 1 ,..., Uw (t2) || w (t2) | ) is added to Hdr.
(5) t is added to Hdr.
(6) Output ciphertext C and Hdr.

復号化アルゴリズムDECBGW_FS
受信端末装置において、保持している時刻t1の秘密鍵SKi,w(t1)を用いて、暗号文Cを復号化する復号化アルゴリズムDECBGW_FS(C,Hdr,S,i,SKi,w(t1),PK)は、以下の(1)乃至(3)の処理からなる。
(1)i∈Sを満たす受信端末装置iの受信端末装置では、保持する秘密鍵SKi,w(t1)をHdrに含まれている時刻t=t2まで、鍵更新アルゴリズムKUP_TERMBGW_FSを適用して更新し、秘密鍵SKi,w(t2)を得る。
(2)秘密鍵SKi,w(t2)を用いてセッション鍵Kを算出する。

Figure 2007189597

(3)EK(C)でコンテンツMを復号化する。 Decryption algorithm DEC BGW_FS
In the receiving terminal device, the decryption algorithm DEC BGW_FS (C, Hdr, S, i, SK i, w ) that decrypts the ciphertext C using the stored secret key SK i, w (t1) at time t1. (t1) , PK) includes the following processes (1) to (3).
(1) In the receiving terminal device of the receiving terminal device i satisfying i∈S, the key update algorithm KUP_TERM BGW_FS is applied until the time t = t 2 in which the stored secret key SK i, w (t1) is included in Hdr. To obtain a secret key SK i, w (t2) .
(2) The session key K is calculated using the secret key SK i, w (t2) .
Figure 2007189597

(3) Decrypt the content M with E K (C).

次に、受信端末装置の集合を{1,2,3}、正規受信端末装置の集合S={1,2}、時刻の2分木の高さh=3、時刻t=1の場合を例にして、第3の同報通信暗号を具体的に説明する。   Next, a case where the set of receiving terminal devices is {1, 2, 3}, the set of regular receiving terminal devices S = {1, 2}, the height of the binary tree of time h = 3, and the time t = 1. The third broadcast communication cipher will be specifically described as an example.

図10は、第3の同報通信暗号における送信装置10の処理(第3の暗号化処理)を説明するフローチャートである。   FIG. 10 is a flowchart for explaining the processing (third encryption processing) of the transmission device 10 in the third broadcast communication encryption.

ステップS41において、暗号化部11は、ENCBGW_FS(S,PK,1)を実行し、その結果得られる暗号文C,Hdr=(C0,C1,U0,1)を送信部12に出力する。ここで、

Figure 2007189597

である。 In step S41, the encryption unit 11 executes ENC BGW_FS (S, PK, 1) and sends the ciphertext C, Hdr = (C 0 , C 1 , U 0 , 1) obtained as a result to the transmission unit 12. Output. here,
Figure 2007189597

It is.

ステップS42において、送信部12は、暗号文C,Hdrを通信網30を介して送信する。以上で、第3の暗号化処理は終了される。   In step S <b> 42, the transmission unit 12 transmits the ciphertext C and HDR via the communication network 30. This completes the third encryption process.

図11は、第3の同報通信暗号における正規の受信端末装置1による処理(第3の復号化処理)を説明するフローチャートである。   FIG. 11 is a flowchart for explaining processing (third decryption processing) by the legitimate receiving terminal device 1 in the third broadcast communication encryption.

ステップS51において、受信部21は、送信装置10から送信された暗号文C,Hdrを取得して復号化部22に出力する。ステップS52において、復号化部22は、予め保持している秘密鍵SK1,εに復号化アルゴリズムDECBGW_FS(C,Hdr,S,i,SK1,ε,PK)を適用して、セッション鍵Kを取得する。 In step S <b> 51, the reception unit 21 acquires the ciphertext C and Hdr transmitted from the transmission device 10 and outputs the ciphertext C and HDR to the decryption unit 22. In step S52, the decryption unit 22 applies the decryption algorithm DEC BGW_FS (C, Hdr, S, i, SK 1, ε , PK) to the secret key SK 1, ε held in advance, and the session key. Get K.

具体的には、Hdrから時刻情報t=1を読み出し、ノードw(1)=0を計算する。そして、秘密鍵SK1,εを入力として鍵更新アルゴリズムKUP_TERMBGW_FS(PK,1,SK1,ε)を実行する。εは2分木の内部ノードであるので、ランダムにσ’1,0,σ’1,1∈Zqを選択し、次式に基づいてR’1,0,R’1,1,sk1,0,sk1,1を算出する。

Figure 2007189597

さらに、秘密鍵SK’1,0=(R’1,0,sk1,0),SK’1,1=(R’1,1,sk1,1)を生成し、秘密鍵SK’1,0,SK’1,1のうち、一方の秘密鍵SK’1,0を時刻t=1の秘密鍵として使用する。他方の秘密鍵SK’1,1はスタックに蓄積される。そして、時刻t=1の秘密鍵SK’1,0を用いてセッション鍵Kが算出される。
Figure 2007189597
Specifically, time information t = 1 is read from Hdr, and node w (1) = 0 is calculated. Then, the key update algorithm KUP_TERM BGW_FS (PK, 1, SK 1, ε ) is executed with the secret key SK 1, ε as an input. Since ε is an internal node of the binary tree, σ ′ 1,0 , σ ′ 1,1 εZ q is selected at random, and R ′ 1,0 , R ′ 1,1 , sk based on the following equation: 1,0 and sk 1,1 are calculated.
Figure 2007189597

Further, a secret key SK ′ 1,0 = (R ′ 1,0 , sk 1,0 ), SK ′ 1,1 = (R ′ 1,1 , sk 1,1 ) is generated, and a secret key SK ′ 1 , 0 , SK ′ 1,1 , one secret key SK ′ 1,0 is used as a secret key at time t = 1. The other secret key SK ′ 1,1 is stored in the stack. Then, the session key K is calculated using the secret key SK '1,0 of time t = 1.
Figure 2007189597

このようにして得られるセッション鍵Kが得られた後、ステップS53において、復号化部22は、EK(C)でコンテンツMを復号化する。以上で、正規の受信端末装置1による第3の復号化処理は終了される。 After the session key K obtained in this way is obtained, the decrypting unit 22 decrypts the content M with E K (C) in step S53. Above, the 3rd decoding process by the regular receiving terminal device 1 is complete | finished.

なお、正規の受信端末装置2による第3の復号化処理も同様に実行され、処理結果としてコンテンツMを得ることができる。反対に、正規ではない不正な受信端末装置3においてはコンテンツMを得ることができない。この不正な受信端末装置3に対する安全性について説明する。   Note that the third decryption process by the legitimate receiving terminal device 2 is executed in the same manner, and the content M can be obtained as a process result. On the contrary, the content M cannot be obtained by the unauthorized receiving terminal device 3 that is not legitimate. The security against this unauthorized receiving terminal device 3 will be described.

不正な受信端末装置3が復号化アルゴリズムDECBGW_FS(C,Hdr,S,i,SK3,ε,PK)を実行すると、セッション鍵となるKは次式のように算出される。

Figure 2007189597
When the unauthorized receiving terminal device 3 executes the decryption algorithm DEC BGW_FS (C, Hdr, S, i, SK 3, ε , PK), K serving as a session key is calculated as follows.
Figure 2007189597

分子の第1項より、e(g3,(vg32r)=e(gr,vg65)となるので、セッション鍵に相当するe(gr,g4)が得られないことがわかる。したがって、コンテンツMを得ることができない。 Since e (g 3 , (vg 3 g 2 ) r ) = e (g r , vg 6 g 5 ) is obtained from the first term of the numerator, e (g r , g 4 ) corresponding to the session key is obtained. I can't understand. Therefore, the content M cannot be obtained.

仮に、セッション鍵に相当するe(gr,g4)を得るため、アルゴリズムに反してIDを偽造し、分子の第1項をe(g1,(vg32r)にしてみるとセッション鍵となるKは次式のように算出される。

Figure 2007189597
If e (g r , g 4 ) corresponding to the session key is obtained, the ID is forged against the algorithm, and the first term of the numerator is changed to e (g 1 , (vg 3 g 2 ) r ). K as a session key is calculated as follows.
Figure 2007189597

このように、1行目の第1項に用いる公開鍵(いまの場合、g1)を自己のID以外のものに変更してしまうと、4行目の分子の第2項を消すことができない。すなわち、セッション鍵を得ることができない。よって、第3の同報通信暗号の不正な受信端末装置3に対する安全性が証明された。   Thus, if the public key used in the first term on the first line (in this case, g1) is changed to something other than its own ID, the second term of the numerator on the fourth line cannot be deleted. . That is, the session key cannot be obtained. Therefore, the security against the unauthorized receiving terminal device 3 of the third broadcast communication encryption was proved.

次に、第3の同報通信暗号がFS(Forward Security)を満たしていることを説明する。例えば、正規の受信端末装置1の時刻t=1における秘密鍵SK’1,0が漏洩したと仮定し、この秘密鍵SK’1,0に基づいて時刻t=0の暗号文C,Hdrが復号化できないことを示す。 Next, it will be described that the third broadcast communication cipher satisfies FS (Forward Security). For example, 'assuming 1,0 leaks, the secret key SK' secret key SK at time t = 1 the normal of the receiving terminal apparatus 1 ciphertext C at time t = 0 on the basis of 1,0, are Hdr Indicates that it cannot be decrypted.

まず、秘密鍵SK’1,0から時刻t=0の秘密鍵SK’1,εを算出することができないことを示す。漏洩した秘密鍵SK’1,0=(R’1,0,sk1,0)=(gρ'1,0,sk1,ε・H(0)ρ'1,0)である。したがって、秘密鍵SK’1,0からρ’1,0を求めることができない。よってSK’1,0からSK’1,εを算出することができない。 First, it is shown that the secret key SK ′ 1, ε at time t = 0 cannot be calculated from the secret key SK ′ 1,0 . The leaked secret key SK ′ 1,0 = (R ′ 1,0 , sk 1,0 ) = (g ρ′1,0 , sk 1, ε · H (0) ρ′1,0 ). Therefore, ρ ′ 1,0 cannot be obtained from the secret key SK ′ 1,0 . Therefore, SK ′ 1, ε cannot be calculated from SK ′ 1,0 .

次に、秘密鍵SK’1,0を用いて時刻t=0の暗号文C,Hdrからセッション鍵Kが得られないことを示す。ここで、C,K,Hdr,C0,C1は以下のとおりである。

Figure 2007189597

このとき、復号化アルゴリズムDECBGW_FS(C,Hdr,S,i,SK’1,0,PK)を実行して得られるKは、
Figure 2007189597

となる。 Next, a can not be obtained ciphertext C, the session key K from Hdr of time t = 0 by using the secret key SK '1, 0. Here, C, K, Hdr, C 0 and C 1 are as follows.
Figure 2007189597

At this time, K obtained by executing the decoding algorithm DEC BGW_FS (C, HDR , S, i, SK ′ 1,0 , PK) is
Figure 2007189597

It becomes.

この式より、分子にe(R’1,0,H(0)r)を乗算することができれば、これが分母と相殺されて、セッション鍵に相当するe(gr,g4)を得られることになる。しかしながら、漏洩した秘密鍵SK’1,0からR’1,0=gρ'1,0は導出できるものの、H(0)rを導出することはできない。なぜならば、rはコンテンツの送信側のみが知りえる値であるからである。したがって、秘密鍵SK’1,0を用いて時刻t=0の暗号文C,Hdrからセッション鍵Kを得ることができない。よって、秘密鍵SK’1,0に基づいて時刻t=0の暗号文C,Hdrが復号化できないことが証明された。 From this equation, if e (R ′ 1,0 , H (0) r ) can be multiplied by the numerator, this can be canceled with the denominator to obtain e (g r , g 4 ) corresponding to the session key. It will be. However, although R ′ 1,0 = g ρ′1,0 can be derived from the leaked secret key SK ′ 1,0 , H (0) r cannot be derived. This is because r is a value that only the content transmission side can know. Therefore, it is not possible to ciphertext C of time t = 0 by using the secret key SK '1,0, from Hdr obtain the session key K. Thus, it has been proven to not be able to ciphertext C, and Hdr decoding of the time t = 0 on the basis of the secret key SK '1,0.

次に、上述した第1乃至3の同報通信暗号の性能を比較する。   Next, the performances of the first to third broadcast ciphers will be compared.

図12は、第1乃至3の同報通信暗号それぞれのメッセージ長、鍵導出に要する計算量、復号化時に使用される公開鍵数の絶対的な評価とFS機能の有無を示している。第1の同報通信暗号については、その長所として、鍵導出に要する計算量の少なさ、および公開鍵の少なさが挙げられる。第2の同報通信暗号については、その長所として、鍵導出に要する計算量の少なさ、公開鍵の少なさ、およびFS機能を有することを挙げられる。第3の同報通信暗号については、その長所として、正規の受信端末装置の数や不正な受信端末装置の数に拘わらずメッセージ長が短いこと、およびFS機能を有することを挙げられる。   FIG. 12 shows the message length of each of the first to third broadcast ciphers, the amount of calculation required for key derivation, the absolute evaluation of the number of public keys used at the time of decryption, and the presence or absence of the FS function. The advantages of the first broadcast cipher include a small amount of calculation required for key derivation and a small public key. The second broadcast encryption has advantages such as a small amount of calculation required for key derivation, a small number of public keys, and an FS function. The third broadcast cipher cipher has advantages in that the message length is short regardless of the number of legitimate receiving terminal devices and the number of illegal receiving terminal devices, and that it has an FS function.

図13は、第1乃至3の同報通信暗号それぞれの受信端末装置に保持させるデバイス鍵(秘密鍵)数、同報通信される暗号文に含まれるメッセージ長、受信端末装置での鍵導出時の計算量、および暗号化時と復号化時に使用される公開鍵数の評価値を示している。また図13には、SD法に階層型IDベース暗号を適用した同報通信暗号(Y.Dois, and N.Fazio,"Public Key Broadcast Encryption for Stateless Receivers",proceeding of ACM FRM '02,2002参照。以下、DF02と記述する)、およびBGW Schemeに対応するそれぞれの評価値も追記した。   FIG. 13 shows the number of device keys (secret keys) held in the receiving terminal device for each of the first to third broadcast ciphers, the message length included in the encrypted ciphertext, and the key derivation at the receiving terminal device And the evaluation value of the number of public keys used at the time of encryption and decryption. FIG. 13 also shows a broadcast cipher (Y. Dois, and N. Fazio, “Public Key Broadcast Encryption for Stateless Receivers”, proceeding of ACM FRM '02, 2002) in which hierarchical ID-based encryption is applied to the SD method. (Hereinafter referred to as DF02) and the evaluation values corresponding to the BGW Scheme were also added.

なお、評価値は想定される最悪値を示しており、鍵数は、鍵の成分の数も考慮した値である。例えば、第1の同報通信暗号におけるデバイス鍵数は、SKa,b=(Ra,b,Sa,b)であるので、SD法におけるデバイス鍵数の2倍とした。 The evaluation value indicates the worst value that can be assumed, and the number of keys is a value that also considers the number of key components. For example, since the number of device keys in the first broadcast encryption is SK a, b = (R a, b , S a, b ), the number of device keys in the SD method is set to double.

図13より、第1の同報通信暗号は、公開鍵数について、DF02やBGW Schemeよりも有利であることがわかる。反対に、デバイス鍵数とメッセージ長については、DF02およびBGW Schemeよりも不利である。しかしながら、デバイス鍵数はSDF02のわずか2倍に過ぎない。   From FIG. 13, it can be seen that the first broadcast cipher is more advantageous than DF02 and BGW Scheme in terms of the number of public keys. On the other hand, the number of device keys and message length are more disadvantageous than DF02 and BGW Scheme. However, the number of device keys is only twice that of SDF02.

第2および第3の同報通信暗号は、従来考えられていなかったFS機能を持っているので、DF02やBGW Schemeと単純に比較することができないが、第2の同報通信暗号では、FS機能を有するが故に鍵更新の影響でデバイス鍵数が増えているものの、その他の項目については第1の同報通信暗号と同様の性能を維持している。   Since the second and third broadcast ciphers have an FS function that has not been considered in the past, they cannot be simply compared with DF02 or BGW Scheme. Although the number of device keys is increased due to the key update due to the function, the other items maintain the same performance as the first broadcast cipher.

第3の同報通信暗号は、第2の同報通信暗号と同様、FS機能を有するが故にメッセージ長が若干長くなっているものの、その他の項目についてはBGW Schemeと同様の性能を維持している。   The third broadcast cipher has the same FS function as the second broadcast cipher, but the message length is slightly longer because of the FS function. Yes.

以上説明した第1乃至3の同報通信暗号の評価をまとめると以下のとおりである。すなわち、第1の同報通信暗号は、デバイス鍵数、およびメッセージ長を大幅に増やすことなく、公開鍵を用いた同報通信暗号を実現しており、受信端末装置において目的の秘密鍵を得るまでに要する計算量がBGW Schemeよりも大幅に少ない。ここで、無効化する受信端末装置の数rを考慮して比較すると、rが少ない場合、第1の同報通信暗号の方がBGW Schemeよりも有利であると言える。このことからさらに、FS機能を考慮した場合、rが多い場合、第3の同報通信暗号が有利であり、rが少ない場合、第2の同報通信暗号が有利であると言える。   The evaluations of the first to third broadcast communication ciphers described above are summarized as follows. That is, the first broadcast cipher realizes the broadcast cipher using the public key without significantly increasing the number of device keys and the message length, and obtains a target secret key in the receiving terminal device. The amount of calculation required is significantly less than BGW Scheme. Here, when the comparison is made in consideration of the number r of receiving terminal devices to be invalidated, when r is small, it can be said that the first broadcast cipher is more advantageous than BGW Scheme. From this, when the FS function is taken into consideration, it can be said that the third broadcast encryption is advantageous when r is large, and the second broadcast encryption is advantageous when r is small.

ところで、本明細書において、プログラムに基づいて実行されるステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。   By the way, in this specification, the steps executed based on the program are executed in parallel or individually even if they are not necessarily processed in time series, as well as the processes performed in time series according to the described order. It also includes processing.

また、プログラムは、1台のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。   The program may be processed by a single computer, or may be distributedly processed by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.

また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。   Further, in this specification, the system represents the entire apparatus constituted by a plurality of apparatuses.

なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。   The embodiment of the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the gist of the present invention.

本発明を適用した同報通信システムの構成例を示すブロック図である。It is a block diagram which shows the structural example of the broadcast communication system to which this invention is applied. 汎用パーソナルコンピュータの構成例を示すブロック図である。It is a block diagram which shows the structural example of a general purpose personal computer. SD法のカバーリングを説明する図である。It is a figure explaining the cover of SD method. FSで用いる時間の2分木を示す図である。It is a figure which shows the binary tree of the time used by FS. 第1の同報通信暗号の具体例を説明するための図である。It is a figure for demonstrating the specific example of the 1st broadcast communication encryption. 第1の暗号化処理を説明するフローチャートである。It is a flowchart explaining a 1st encryption process. 第1の復号化処理を説明するフローチャートである。It is a flowchart explaining a 1st decoding process. 第2の暗号化処理を説明するフローチャートである。It is a flowchart explaining a 2nd encryption process. 第2の復号化処理を説明するフローチャートである。It is a flowchart explaining a 2nd decoding process. 第3の暗号化処理を説明するフローチャートである。It is a flowchart explaining a 3rd encryption process. 第3の復号化処理を説明するフローチャートである。It is a flowchart explaining a 3rd decoding process. 第1乃至3の同報通信暗号の絶対的な評価を示す図である。It is a figure which shows absolute evaluation of the 1st thru | or 3rd broadcast communication encryption. 第1乃至3の同報通信暗号の評価値を示す図である。It is a figure which shows the evaluation value of the 1st thru | or 3rd broadcast communication encryption.

符号の説明Explanation of symbols

1 同報通信システム, 10 送信装置, 11 暗号化部, 12 送信部, 20 受信端末装置, 21 受信部, 22 復号化部, 30 通信網, 51 CPU   DESCRIPTION OF SYMBOLS 1 Broadcast communication system, 10 Transmission apparatus, 11 Encryption part, 12 Transmission part, 20 Receiving terminal device, 21 Reception part, 22 Decryption part, 30 Communication network, 51 CPU

Claims (16)

2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが復号化できないようにコンテンツを暗号化する暗号化装置において、
SD(Subset Difference)法に基づき、前記不正な復号化装置が割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、
決定されたカバーリングに対応して前記コンテンツ鍵を暗号化する第2の暗号化手段と、
前記コンテンツの暗号化結果、および前記コンテンツ鍵の暗号化結果を含む暗号文を出力する出力手段と
を含む暗号化装置。
Among the plurality of decryption devices assigned to each leaf of the binary tree, in an encryption device that encrypts content so that unauthorized ones cannot be decrypted,
A determination means for determining a covering in the binary tree corresponding to a leaf to which the unauthorized decoding device is assigned based on an SD (Subset Difference) method;
First encryption means for encrypting the content using a content key;
Second encryption means for encrypting the content key corresponding to the determined covering;
And an output unit that outputs ciphertext including the content encryption result and the content key encryption result.
2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが復号化できないようにコンテンツを暗号化する暗号化装置の暗号化方法において、
SD法に基づき、前記不正な復号化装置が割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定ステップと、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化ステップと、
決定されたカバーリングに対応して前記コンテンツ鍵を暗号化する第2の暗号化ステップと、
前記コンテンツの暗号化結果、および前記コンテンツ鍵の暗号化結果を含む暗号文を出力する出力ステップと
を含む暗号化方法。
In an encryption method of an encryption device for encrypting content so that an unauthorized one cannot be decrypted among a plurality of decryption devices assigned to each leaf of a binary tree,
A determination step of determining a covering in the binary tree corresponding to a leaf to which the unauthorized decoding device is assigned based on an SD method;
A first encryption step of encrypting the content using a content key;
A second encryption step for encrypting the content key in response to the determined covering;
An output step of outputting a ciphertext including the result of encrypting the content and the result of encrypting the content key.
SD法に基づき、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、
決定されたカバーリングに対応して前記コンテンツ鍵を暗号化する第2の暗号化手段と
を含む暗号化装置から出力された、前記コンテンツの暗号化結果、および前記コンテンツ鍵の暗号化結果を含む暗号文を復号化する復号化装置において、
予め保持している第1の秘密鍵に基づき、前記カバーリングに対応する第2の秘密鍵を導出する導出手段と、
導出された前記第2の秘密鍵に基づき、前記暗号文から前記コンテンツ鍵を取得する取得手段と、
取得された前記コンテンツ鍵に基づき、前記暗号文を復号化して前記コンテンツを得る復号化手段と
を含む復号化装置。
Determining means for determining covering in the binary tree corresponding to a leaf to which an illegal one is assigned among a plurality of decoding apparatuses assigned to each leaf of the binary tree based on the SD method;
First encryption means for encrypting the content using a content key;
An encryption result of the content, and an encryption result of the content key, output from an encryption device including: a second encryption unit that encrypts the content key corresponding to the determined covering In a decryption device for decrypting ciphertext,
Derivation means for deriving a second secret key corresponding to the covering based on a first secret key held in advance;
Obtaining means for obtaining the content key from the ciphertext based on the derived second secret key;
And a decryption unit that decrypts the ciphertext and obtains the content based on the acquired content key.
SD法に基づき、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、
決定されたカバーリングに対応して前記コンテンツ鍵を暗号化する第2の暗号化手段と
を含む暗号化装置から出力された、前記コンテンツの暗号化結果、および前記コンテンツ鍵の暗号化結果を含む暗号文を復号化する復号化装置の復号化方法において、
予め保持している第1の秘密鍵に基づき、前記カバーリングに対応する第2の秘密鍵を導出する導出ステップと、
導出された前記第2の秘密鍵に基づき、前記暗号文から前記コンテンツ鍵を取得する取得ステップと、
取得された前記コンテンツ鍵に基づき、前記暗号文を復号化して前記コンテンツを得る復号化ステップと
を含む復号化方法。
Determining means for determining covering in the binary tree corresponding to a leaf to which an illegal one is assigned among a plurality of decoding apparatuses assigned to each leaf of the binary tree based on the SD method;
First encryption means for encrypting the content using a content key;
An encryption result of the content, and an encryption result of the content key, output from an encryption device including: a second encryption unit that encrypts the content key corresponding to the determined covering In the decryption method of the decryption device for decrypting the ciphertext,
A derivation step of deriving a second secret key corresponding to the covering based on a first secret key held in advance;
Obtaining the content key from the ciphertext based on the derived second secret key;
A decrypting method comprising: decrypting the ciphertext based on the acquired content key to obtain the content.
2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが復号化できないようにコンテンツを暗号化する暗号化装置において、
SD法に基づき、前記不正な復号化装置が割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、
決定されたカバーリングに対応し、時刻t2において前記コンテンツ鍵を暗号化する第2の暗号化手段と、
前記コンテンツの暗号化結果、前記コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文を出力する出力手段と
を含む暗号化装置。
Among the plurality of decryption devices assigned to each leaf of the binary tree, in an encryption device that encrypts content so that unauthorized ones cannot be decrypted,
Determining means for determining covering in the binary tree corresponding to a leaf to which the unauthorized decoding device is assigned based on an SD method;
First encryption means for encrypting the content using a content key;
Second encryption means for encrypting the content key at time t2 corresponding to the determined covering;
And an output unit that outputs ciphertext including the result of encrypting the content, the result of encrypting the content key, and time t2.
2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが復号化できないようにコンテンツを暗号化する暗号化装置の暗号化方法において、
SD法に基づき、前記不正な復号化装置が割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定ステップと、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化ステップと、
決定されたカバーリングに対応し、時刻t2において前記コンテンツ鍵を暗号化する第2の暗号化ステップと、
前記コンテンツの暗号化結果、前記コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文を出力する出力ステップと
を含む暗号化方法。
In an encryption method of an encryption device for encrypting content so that an unauthorized one cannot be decrypted among a plurality of decryption devices assigned to each leaf of a binary tree,
A determination step of determining a covering in the binary tree corresponding to a leaf to which the unauthorized decoding device is assigned based on an SD method;
A first encryption step of encrypting the content using a content key;
A second encryption step corresponding to the determined covering and encrypting the content key at time t 2 ;
An output step of outputting a ciphertext including the result of encrypting the content, the result of encrypting the content key, and time t 2 .
SD法に基づき、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、
決定されたカバーリングに対応し、時刻t2において前記コンテンツ鍵を暗号化する第2の暗号化手段と
を含む暗号化装置から出力された、前記コンテンツの暗号化結果、前記コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文を復号化する復号化装置において、
予め保持している時刻t1(≦t2)の第1の秘密鍵に基づき、前記カバーリングに対応する時刻t2の第2の秘密鍵を導出する導出手段と、
導出された時刻t2の前記第2の秘密鍵に基づき、前記暗号文から前記コンテンツ鍵を取得する取得手段と、
取得された前記コンテンツ鍵に基づき、前記暗号文を復号化して前記コンテンツを得る復号化手段と
を含む復号化装置。
Determining means for determining covering in the binary tree corresponding to a leaf to which an illegal one is assigned among a plurality of decoding apparatuses assigned to each leaf of the binary tree based on the SD method;
First encryption means for encrypting the content using a content key;
An encryption result of the content output from an encryption device corresponding to the determined covering and output from an encryption device including a second encryption means for encrypting the content key at time t 2 ; In the decryption device for decrypting the ciphertext including the result and time t 2 ,
Derivation means for deriving a second secret key at time t 2 corresponding to the covering based on a first secret key at time t 1 (≦ t 2 ) held in advance;
Obtaining means for obtaining the content key from the ciphertext based on the derived second secret key at time t 2 ;
And a decryption unit that decrypts the ciphertext and obtains the content based on the acquired content key.
前記導出手段は、予め保持している時刻t1の第1の秘密鍵に基づき、前記カバーリングに対応する時刻t1の第2の秘密鍵を生成し、生成した時刻t1の前記第2の秘密鍵を時刻t2の前記第2の秘密鍵に更新する
請求項7に記載の復号化装置。
The deriving means generates a second secret key at time t 1 corresponding to the covering based on the first secret key held at time t 1 and holds the second secret key at the generated time t 1 . The decryption device according to claim 7, wherein the secret key is updated to the second secret key at time t 2 .
前記導出手段は、生成した時刻t1の前記第2の秘密鍵を更新することにより、2つの前記第2の秘密鍵を取得し、一方を時刻t2の前記第2の秘密鍵とし、他方を蓄積する
請求項8に記載の復号化装置。
The derivation means obtains the two second secret keys by updating the generated second secret key at time t 1 , one of which is the second secret key at time t 2 , The decoding device according to claim 8.
前記導出手段は、予め保持している時刻t1の第1の秘密鍵を時刻t2の前記第1の秘密鍵に更新し、更新した時刻t2の前記第1の秘密鍵に基づき、前記カバーリングに対応する時刻t2の第2の秘密鍵を生成する
請求項7に記載の復号化装置。
The deriving means updates the first secret key at time t 1 held in advance to the first secret key at time t 2 , and based on the updated first secret key at time t 2 , decoding apparatus according to claim 7 for generating a second private key time t 2 corresponding to the covering.
SD法に基づき、2分木の各リーフに割り当てられた複数の復号化装置のうち、不正なものが割り当てられているリーフに対応して前記2分木におけるカバーリングを決定する決定手段と、
コンテンツ鍵を用いて前記コンテンツを暗号化する第1の暗号化手段と、
決定されたカバーリングに対応し、時刻t2において前記コンテンツ鍵を暗号化する第2の暗号化手段と
を含む暗号化装置から出力された、前記コンテンツの暗号化結果、前記コンテンツ鍵の暗号化結果、および時刻t2を含む暗号文を復号化する復号化装置の復号化方法において、
予め保持している時刻t1(≦t2)の第1の秘密鍵に基づき、前記カバーリングに対応する時刻t2の第2の秘密鍵を導出する導出ステップと、
導出された時刻t2の前記第2の秘密鍵に基づき、前記暗号文から前記コンテンツ鍵を取得する取得ステップと、
取得された前記コンテンツ鍵に基づき、前記暗号文を復号化して前記コンテンツを得る復号化ステップと
を含む復号化方法。
Determining means for determining covering in the binary tree corresponding to a leaf to which an illegal one is assigned among a plurality of decoding apparatuses assigned to each leaf of the binary tree based on the SD method;
First encryption means for encrypting the content using a content key;
An encryption result of the content output from an encryption device corresponding to the determined covering and output from an encryption device including a second encryption means for encrypting the content key at time t 2 ; In the decryption method of the decryption device for decrypting the ciphertext including the result and time t 2 ,
A derivation step of deriving a second secret key at time t 2 corresponding to the covering based on a first secret key at time t 1 (≦ t 2 ) held in advance;
Obtaining the content key from the ciphertext based on the derived second secret key at time t 2 ;
A decrypting method comprising: decrypting the ciphertext based on the acquired content key to obtain the content.
BGW Schemeに基づいてコンテンツを暗号化する暗号化装置において、
時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrを生成する生成手段と、
生成された暗号文C,Hdrを出力する出力手段とを含み、
前記暗号文Hdrには時刻tが含まれる
暗号化装置。
In an encryption device that encrypts content based on BGW Scheme,
Generating means for generating ciphertexts C and Hdr by the encryption algorithm ENC BGW_FS (S, K, t) at time t = t 2 ;
Output means for outputting the generated ciphertext C, HDR,
The ciphertext Hdr includes a time t.
BGW Schemeに基づいてコンテンツを暗号化する暗号化装置の暗号化方法において、
時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrを生成する生成ステップと、
生成された暗号文C,Hdrを出力する出力ステップとを含み、
前記暗号文Hdrには時刻tが含まれる
暗号化方法。
In the encryption method of the encryption device that encrypts content based on BGW Scheme,
A generation step of generating ciphertexts C and Hdr by the encryption algorithm ENC BGW_FS (S, K, t) at time t = t 2 ;
An output step for outputting the generated ciphertext C and HDR,
The ciphertext Hdr includes a time t.
時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrを生成する生成手段と、
前記暗号文Hdrには時刻tが含まれる暗号化装置から出力された暗号文C,Hdrを復号化する復号化装置において、
予め保持している時刻t1(≦t2)に対応する秘密鍵に基づき、暗号文Hdrに含まれる時刻t=t2に対応する秘密鍵を導出する導出手段と、
導出された時刻t2に対応する秘密鍵に基づき、前記暗号文Hdrからセッション鍵を取得する取得手段と、
取得された前記セッション鍵に基づき、前記暗号文Cを復号化して前記コンテンツを得る復号化手段と
を含む復号化装置。
Generating means for generating ciphertexts C and Hdr by the encryption algorithm ENC BGW_FS (S, K, t) at time t = t 2 ;
In the decryption device for decrypting the ciphertexts C and Hdr output from the encryption device including the time t in the ciphertext Hdr,
Derivation means for deriving a secret key corresponding to time t = t 2 included in the ciphertext Hdr based on a secret key corresponding to time t 1 (≦ t 2 ) held in advance;
Obtaining means for obtaining a session key from the ciphertext Hdr based on a secret key corresponding to the derived time t 2 ;
A decrypting device, comprising: decrypting means for decrypting the ciphertext C based on the acquired session key to obtain the content.
前記導出手段は、予め保持している時刻t1(≦t2)に対応する秘密鍵に基づき、2つの秘密鍵を導出し、一方を暗号文Hdrに含まれる時刻t=t2に対応する秘密鍵として、他方を蓄積する
請求項14に記載の復号化装置。
The derivation means derives two secret keys based on the secret key corresponding to the time t 1 (≦ t 2 ) held in advance, and one of them corresponds to the time t = t 2 included in the ciphertext Hdr. The decryption device according to claim 14, wherein the other is stored as a secret key.
時刻t=t2において暗号化アルゴリズムENCBGW_FS(S、K、t)により暗号文C,Hdrを生成する生成手段と、
前記暗号文Hdrには時刻tが含まれる暗号化装置から出力された暗号文C,Hdrを復号化する復号化装置の復号化方法において、
予め保持している時刻t1(≦t2)に対応する秘密鍵に基づき、暗号文Hdrに含まれる時刻t=t2に対応する秘密鍵を導出する導出ステップと、
導出された時刻t2に対応する秘密鍵に基づき、前記暗号文Hdrからセッション鍵を取得する取得ステップと、
取得された前記セッション鍵に基づき、前記暗号文Cを復号化して前記コンテンツを得る復号化ステップと
を含む復号化方法。
Generating means for generating ciphertexts C and Hdr by the encryption algorithm ENC BGW_FS (S, K, t) at time t = t 2 ;
In the decryption method of the decryption device for decrypting the ciphertexts C and Hdr output from the encryption device including the time t in the ciphertext Hdr,
A derivation step for deriving a secret key corresponding to time t = t 2 included in the ciphertext Hdr based on a secret key corresponding to time t 1 (≦ t 2 ) held in advance;
An acquisition step of acquiring a session key from the ciphertext Hdr based on a secret key corresponding to the derived time t 2 ;
A decrypting method comprising: decrypting the ciphertext C based on the acquired session key to obtain the content.
JP2006007324A 2006-01-16 2006-01-16 Encryption device, encryption method, decoding device, and decoding method Withdrawn JP2007189597A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006007324A JP2007189597A (en) 2006-01-16 2006-01-16 Encryption device, encryption method, decoding device, and decoding method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006007324A JP2007189597A (en) 2006-01-16 2006-01-16 Encryption device, encryption method, decoding device, and decoding method

Publications (1)

Publication Number Publication Date
JP2007189597A true JP2007189597A (en) 2007-07-26

Family

ID=38344449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006007324A Withdrawn JP2007189597A (en) 2006-01-16 2006-01-16 Encryption device, encryption method, decoding device, and decoding method

Country Status (1)

Country Link
JP (1) JP2007189597A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009105853A (en) * 2007-10-25 2009-05-14 Kddi Corp Sd method corresponding to optional tree structure, and program
JP2009201090A (en) * 2007-12-11 2009-09-03 Sony Corp Key generating device, encrypting device, receiving device, key generating method, encrypting method, key processing method, and program
JP2010161523A (en) * 2009-01-07 2010-07-22 Nippon Telegr & Teleph Corp <Ntt> Key generation device, encryption device, decryption device, encryption system, key generation method, encryption method, decryption method, program, and recording medium
CN113807530A (en) * 2020-09-24 2021-12-17 京东科技控股股份有限公司 Information processing system, method and device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009105853A (en) * 2007-10-25 2009-05-14 Kddi Corp Sd method corresponding to optional tree structure, and program
JP2009201090A (en) * 2007-12-11 2009-09-03 Sony Corp Key generating device, encrypting device, receiving device, key generating method, encrypting method, key processing method, and program
JP2010161523A (en) * 2009-01-07 2010-07-22 Nippon Telegr & Teleph Corp <Ntt> Key generation device, encryption device, decryption device, encryption system, key generation method, encryption method, decryption method, program, and recording medium
CN113807530A (en) * 2020-09-24 2021-12-17 京东科技控股股份有限公司 Information processing system, method and device
CN113807530B (en) * 2020-09-24 2024-02-06 京东科技控股股份有限公司 Information processing system, method and device

Similar Documents

Publication Publication Date Title
JP6017501B2 (en) Cryptosystem
JP6363032B2 (en) Key change direction control system and key change direction control method
JP2003289296A (en) Key-generating method, content-providing method, ciphered content deciphering method, pirate user identifying method, content provider side system, user side system, trace system, ciphering apparatus, deciphering apparatus, and program
JP2005286959A (en) Information processing method, decoding processing method, information processor and computer program
JP2006086568A (en) Information processing method, decryption processing method, information processing apparatus, and computer program
JP5492007B2 (en) Content server, content receiving apparatus, attribute key issuing server, user key issuing server, access control system, content distribution program, and content receiving program
JP2007036364A (en) Time device, encrypting device, decrypting device, and encrypting/decrypting system
KR20090127716A (en) Method of tracing device keys for broadcast encryption
JP5289476B2 (en) Communication device and key calculation device
JP2007189597A (en) Encryption device, encryption method, decoding device, and decoding method
JP2009302861A (en) System of transferring authority for decoding encrypted text
JP4561074B2 (en) Information processing apparatus, information processing method, and computer program
WO2019235102A1 (en) Conversion key generation device, ciphertextconversion device, decryption device, ciphertextconversion system, conversion key generation method, ciphertextconversion method, decryption method, and program
JP2012029271A (en) Encryption device, decryption device, encryption system, encryption method and program
JP4452105B2 (en) Decryption information generation device and program thereof, distribution content generation device and program thereof, and content decryption device and program thereof
JP4598437B2 (en) Decryption information generation device and program thereof, distribution content generation device and program thereof, and content decryption device and program thereof
CN112954388A (en) Data file acquisition method and device, terminal equipment and storage medium
JP2007171412A (en) Key generating device, encryption device, decryption device, multiplication type knapsack encryption system, multiplication type knapsack decryption method, and program
JP4635459B2 (en) Information processing method, decoding processing method, information processing apparatus, and computer program
JP2014017763A (en) Encryption update system, encryption update request device, encryption update device, decryption device, encryption update method, and computer program
JP2007020025A (en) Information processing device, information processing method, and computer program
JP2005191805A (en) Encryption message distribution method, information processing device, information processing method, and computer program
KR102651443B1 (en) Federated learning method based on partial decryption key
JP4576824B2 (en) Information processing apparatus and information processing method
JP6949276B2 (en) Re-encrypting device, re-encrypting method, re-encrypting program and cryptosystem

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20090407