JP5496957B2 - ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM - Google Patents

ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM Download PDF

Info

Publication number
JP5496957B2
JP5496957B2 JP2011140313A JP2011140313A JP5496957B2 JP 5496957 B2 JP5496957 B2 JP 5496957B2 JP 2011140313 A JP2011140313 A JP 2011140313A JP 2011140313 A JP2011140313 A JP 2011140313A JP 5496957 B2 JP5496957 B2 JP 5496957B2
Authority
JP
Japan
Prior art keywords
predetermined method
ciphertext
identification information
key
receiving device
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.)
Active
Application number
JP2011140313A
Other languages
Japanese (ja)
Other versions
JP2013009148A (en
Inventor
健一郎 武藤
盛 知加良
広樹 植田
真一 平田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2011140313A priority Critical patent/JP5496957B2/en
Publication of JP2013009148A publication Critical patent/JP2013009148A/en
Application granted granted Critical
Publication of JP5496957B2 publication Critical patent/JP5496957B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、暗号文の復号履歴を記録するための暗号化システム、復号方法、復号履歴蓄積サーバ、受信装置、送信装置、プログラムに関する。   The present invention relates to an encryption system, a decryption method, a decryption history storage server, a reception device, a transmission device, and a program for recording a decryption history of ciphertext.

暗号文の復号履歴を記録する暗号化方式として非特許文献1が知られている。非特許文献1には、公開サーバに対して復号履歴を残さない限り平文を得られないよう復号処理を制御する方法が示されている(非特許文献1の図3参照)。   Non-Patent Document 1 is known as an encryption method for recording a decryption history of ciphertext. Non-Patent Document 1 discloses a method for controlling decryption processing so that plaintext cannot be obtained unless a decryption history is left for a public server (see FIG. 3 of Non-Patent Document 1).

平井康雅,松尾真一郎,“復号履歴を記録可能な暗号化方式”,信学技報,ISEC2005-109,OIS2005-72,pp.71〜76,2005年11月.Yasumasa Hirai and Shinichiro Matsuo, “Encryption method that can record decryption history”, IEICE Technical Report, ISEC2005-109, OIS2005-72, pp.71-76, November 2005.

しかしながら、非特許文献1の公開サーバは、復号者から受信するEvidenceから復号者が復号しようとしている復号対象を特定できないので、復号対象を特定するための情報をログ証跡として記録できないという課題がある。   However, since the public server of Non-Patent Document 1 cannot identify the decryption target that the decryption person is trying to decrypt from the evidence received from the decryption person, there is a problem that information for identifying the decryption target cannot be recorded as a log trail. .

本発明は、復号履歴として、復号対象である暗号文を識別する情報と復号した受信装置を特定する情報と時刻とを対応付けて記録できる暗号化システムを構築することを目的とする。   It is an object of the present invention to construct an encryption system that can record information identifying a ciphertext to be decrypted, information identifying a decrypted receiving apparatus, and time as a decryption history.

本発明の暗号化システムは、少なくとも送信装置、受信装置、復号履歴蓄積サーバを有する。まず、pは素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、KはK=sQIDのように求められた秘密鍵、K’は0以上p−1以下の整数から選択された分割用乱数、Kは秘密鍵Kと分割用乱数K’を用いて所定の方法1で求められた受信用秘密鍵、Kは分割用乱数K’を用いて所定の方法2で求められた代理計算用秘密鍵、rは0以上p−1以下の整数から選択された乱数、UはU=rPのように求められたセッション情報、gIDはgID=e(QID,PPub)のように求められた値、VはH(gID )を用いて所定の方法3で平文Mを暗号化した暗号文、vは暗号文Vを識別する暗号文識別情報、hは暗号文Vを識別する暗号文識別情報を生成する関数を示す記号とする。 The encryption system of the present invention includes at least a transmission device, a reception device, and a decryption history storage server. First, p is a prime number, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, e is a bilinear pairing function that maps as G 1 × G 1 → G 2 , and H is A symbol indicating a hash function that maps an element of group G 2 to an n-bit bit string, P is a generator of group G 1 , s is an integer of 0 to p−1, P Pub = sP, (P, P Pub ) the public parameters, MaptoPoint G1 function which maps a bit string of arbitrary length to the original group G 1, ID is arbitrary length bit string, Q ID = MaptoPoint G1 (ID ), K 0 is determined as K 0 = sQ ID secret key that is, K 3 'is divided random number selected from 0 or p-1 an integer, K 1 is the secret key K 0 dividing the random number K 3' obtained by the predetermined method 1 using receiving a secret key, K 3 is representative calculation secret key obtained by a predetermined method 2 using the divided random number K 3 ', Random number selected from 0 or p-1 an integer, U is U = session information obtained as rP, g ID is g ID = e (Q ID, P Pub) value determined as , V is a ciphertext obtained by encrypting the plaintext M by the predetermined method 3 using H (g ID r ), v is ciphertext identification information for identifying the ciphertext V, and h is a ciphertext identification for identifying the ciphertext V It is a symbol indicating a function that generates information.

送信装置は、暗号化部、暗号文送信部を備える。受信装置は、復号記録部、リクエスト作成部、リクエスト送信部、復号部を備える。復号履歴蓄積サーバは、代理記録部、セッション情報蓄積部、レスポンス作成部、レスポンス送信部、履歴蓄積部を備える。   The transmission device includes an encryption unit and a ciphertext transmission unit. The receiving device includes a decryption recording unit, a request creation unit, a request transmission unit, and a decryption unit. The decryption history storage server includes a proxy recording unit, a session information storage unit, a response creation unit, a response transmission unit, and a history storage unit.

受信装置は、復号記録部に少なくとも受信装置識別情報RIDに対応付けて受信用秘密鍵Kを記録しておく。復号履歴蓄積サーバは、代理記録部に受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録しておく。 The receiving device records the reception secret key K 1 in association with at least the receiving device identification information R ID in the decryption recording unit. Decoding history storage server, recording the proxy calculation secret key K 3 in association with the receiving apparatus identifying information R ID to the proxy recording unit.

送信装置の暗号文送信部は、受信装置に暗号文Vと暗号文識別情報vとを送信し、復号履歴蓄積サーバにセッション情報Uと暗号文識別情報vとを送信する。なお、受信装置が暗号文識別情報生成部も備えておき、送信装置の暗号文送信部が受信装置に暗号文Vを送信し、受信装置の暗号文識別情報生成部が受信した暗号文Vから暗号文識別情報vをv=h(V)のように生成してもよい。   The ciphertext transmission unit of the transmitting device transmits the ciphertext V and the ciphertext identification information v to the receiving device, and transmits the session information U and the ciphertext identification information v to the decryption history storage server. The receiving device also includes a ciphertext identification information generating unit, the ciphertext transmitting unit of the transmitting device transmits the ciphertext V to the receiving device, and the ciphertext V received by the ciphertext identification information generating unit of the receiving device. The ciphertext identification information v may be generated as v = h (V).

復号履歴蓄積サーバが、セッション情報蓄積部に送信装置から受信したセッション情報Uと暗号文識別情報vとを対応付けて記録する。受信装置のリクエスト作成部が、受信用秘密鍵Kを用いて所定の方法4でリクエストReqを作成する。受信装置のリクエスト送信部が、リクエストReq、暗号文識別情報v、受信装置を特定する受信装置識別情報RIDとを復号履歴蓄積サーバに送信する。 The decryption history storage server records the session information U received from the transmission device and the ciphertext identification information v in association with each other in the session information storage unit. Request creation unit of the receiving device creates a request Req to a predetermined method 4 using the received secret key K 1. The request transmission unit of the reception device transmits the request Req, the ciphertext identification information v, and the reception device identification information R ID that identifies the reception device to the decryption history storage server.

復号履歴蓄積サーバのレスポンス作成部が、受信装置から受信した暗号文識別情報vと一致するセッション情報蓄積部に記録された暗号文識別情報vに対応付けられたセッション情報Uを取得する。また、受信装置から受信した受信装置識別情報RIDと一致する代理記録部に記録された受信装置識別情報RIDに対応付けられた代理計算用秘密鍵Kを取得する。そして、所定の方法1と所定の方法2と所定の方法4に対応した方法である所定の方法7にしたがってセッション情報Uと代理計算用秘密鍵Kを用いた計算を行ってレスポンスResを求める。復号履歴蓄積サーバのレスポンス送信部が、レスポンスResを受信装置に送信する。復号履歴蓄積サーバが、履歴蓄積部に暗号文識別情報vと、受信装置識別情報RIDと、所定の方法8にしたがって取得した時刻tとを対応付けて記録する。 The response creation unit of the decryption history storage server acquires session information U associated with the ciphertext identification information v recorded in the session information storage unit that matches the ciphertext identification information v received from the receiving device. Also obtains the received device identification information R ID surrogate calculation secret key K 3 associated with the receiving apparatus identifying information R ID recorded in the proxy recording unit that matches received from the receiving apparatus. Then, a response Res performing calculation using a proxy calculation secret key K 3 and session information U according to a predetermined method 7 is a method corresponding to a predetermined method 1 and predetermined manner 2 and a predetermined method 4 . The response transmission unit of the decryption history storage server transmits the response Res to the receiving device. The decryption history storage server records the ciphertext identification information v, the receiving device identification information R ID, and the time t acquired according to the predetermined method 8 in association with each other in the history storage unit.

受信装置の復号部が、復号履歴蓄積サーバから受信したレスポンスResを用いて所定の方法2と所定の方法4に対応した方法である所定の方法5にしたがってgID の値Wを求め、H(W)を用いて所定の方法3に対応した方法である所定の方法6にしたがって暗号文Vを復号して平文M’に復号する。 Using the response Res received from the decryption history storage server, the decryption unit of the receiving device obtains the value W of g ID r according to the predetermined method 2 corresponding to the predetermined method 2 and the predetermined method 4, and H Using (W), the ciphertext V is decrypted according to the predetermined method 6 corresponding to the predetermined method 3, and is decrypted into the plaintext M ′.

本発明の暗号化システムによれば、受信装置は暗号文Vを識別する暗号文識別情報vを復号履歴蓄積サーバに送信し、復号履歴蓄積サーバと連携しなければ暗号文Vを復号できない。したがって、復号履歴蓄積サーバは、復号対象の暗号文Vと復号した受信装置とを特定した上で復号に協力した時刻を記録できる。   According to the encryption system of the present invention, the receiving apparatus transmits the ciphertext identification information v for identifying the ciphertext V to the decryption history storage server, and the ciphertext V cannot be decrypted without cooperation with the decryption history storage server. Therefore, the decryption history storage server can record the time when the decryption is performed after the decrypted ciphertext V and the decrypted receiving device are specified.

実施例1、実施例1変形例1、実施例1変形例2、実施例1変形例3の暗号化システムの構成例を示す図。The figure which shows the structural example of the encryption system of Example 1, Example 1 modification 1, Example 1 modification 2, Example 1 modification 3. FIG. 実施例1、実施例1変形例1、実施例2、実施例2変形例1の暗号化システムの秘密鍵を配布する処理フローを示す図。FIG. 6 is a diagram showing a processing flow for distributing the secret key of the encryption system according to the first embodiment, the first embodiment, the first modification, the second embodiment, and the second embodiment. 実施例1、実施例1変形例2の暗号化システムの暗号文の生成から復号までの処理フローを示す図。The figure which shows the processing flow from the production | generation of a ciphertext of the encryption system of Example 1 and Example 1 modification 2 to decoding. 実施例1変形例1、実施例1変形例3の暗号化システムの暗号文の生成から復号までの処理フローを示す図。The figure which shows the processing flow from the production | generation of a ciphertext of a cryptographic system of Example 1 modification 1 and Example 1 modification 3 to decoding. 実施例1変形例2、実施例1変形例3、実施例2変形例2、実施例2変形例3の暗号化システムの秘密鍵を配布する処理フローを示す図。The figure which shows the processing flow which distributes the private key of the encryption system of Example 1 modification 2, Example 1 modification 3, Example 2 modification 2, Example 2 modification 3. FIG. 実施例2、実施例2変形例1、実施例2変形例2、実施例2変形例3の暗号化システムの構成例を示す図。The figure which shows the structural example of the encryption system of Example 2, Example 2 modification 1, Example 2 modification 2, Example 2 modification 3. FIG. 実施例2、実施例2変形例2の暗号化システムの暗号文の生成から復号までの処理フローを示す図。The figure which shows the processing flow from the production | generation of a ciphertext of the encryption system of Example 2 and Example 2 modification 2 to decoding. 実施例2変形例1、実施例2変形例3の暗号化システムの暗号文の生成から復号までの処理フローを示す図。The figure which shows the processing flow from the production | generation of a ciphertext of a cryptographic system of Example 2 modification 1 and Example 2 modification 3 to decoding. 実施例3、実施例3変形例1、実施例3変形例2、実施例3変形例3の暗号化システムの構成例を示す図。The figure which shows the structural example of the encryption system of Example 3, Example 3 modification 1, Example 3 modification 2, Example 3 modification 3. FIG. 実施例3、実施例3変形例1の暗号化システムの秘密鍵を配布する処理フローを示す図。The figure which shows the processing flow which distributes the secret key of the encryption system of Example 3 and Example 3 modification 1. FIG. 実施例3、実施例3変形例2の暗号化システムの暗号文の生成から復号までの処理フローを示す図。The figure which shows the processing flow from the production | generation of a ciphertext of the encryption system of Example 3 and Example 3 modification 2 to a decoding. 実施例3変形例1、実施例3変形例3の暗号化システムの暗号文の生成から復号までの処理フローを示す図。The figure which shows the processing flow from the production | generation of a ciphertext of a cryptographic system of Example 3 modification 1 and Example 3 modification 3 to a decoding. 実施例3変形例2、実施例3変形例3の暗号化システムの秘密鍵を配布する処理フローを示す図。The figure which shows the processing flow which distributes the secret key of the encryption system of Example 3 modification 2 and Example 3 modification 3. FIG.

以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。   Hereinafter, embodiments of the present invention will be described in detail. In addition, the same number is attached | subjected to the structure part which has the same function, and duplication description is abbreviate | omitted.

図1に実施例1の暗号化システムの構成例を示す。図2に実施例1の暗号化システムの秘密鍵を配布する処理フローを、図3に暗号文の生成から復号までの処理フローを示す。実施例1の暗号化システムは、送信装置100、受信装置200、復号履歴蓄積サーバ300、鍵生成装置400で構成される。   FIG. 1 shows a configuration example of the encryption system according to the first embodiment. FIG. 2 shows a processing flow for distributing the secret key of the encryption system of the first embodiment, and FIG. 3 shows a processing flow from generation of ciphertext to decryption. The encryption system according to the first embodiment includes a transmission device 100, a reception device 200, a decryption history storage server 300, and a key generation device 400.

以下の説明では、kは大きな整数、pはkビットの素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは鍵生成装置400が生成した0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、(+)はビット単位の排他的論理和を示す記号、^はべき乗を示す記号、vは暗号文Vを識別する暗号文識別情報、hは暗号文Vを識別する暗号文識別情報を生成する関数を示す記号とする。なお、XとYを群Gの元とし、aとbを整数とすると、
e(aX,bY)=e(X,Y)ab (1)
の関係が成り立つ。双線形ペアリング関数としては、例えばWeilペアリングを用いればよい。また、IDとして受信装置200の属性を示すビット列を用いてもよい。
In the following description, k is a large integer, p is a prime number of k bits, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, and e is G 1 × G 1 → G 2 Bi is a bilinear pairing function that maps to H, H is a symbol indicating a hash function that maps an element of group G 2 to an n-bit bit string, P is a generator of group G 1 , and s is 0 or more generated by key generator 400 An integer less than or equal to p−1, P Pub = sP, (P, P Pub ) is a public parameter, MaptoPoint G1 is a function that maps an arbitrary length bit string to the group G 1 , ID is an arbitrary length bit string, Q ID = MaptoPoint G1 (ID), (+) is a symbol indicating exclusive OR in bit units, ^ is a symbol indicating power, v is ciphertext identification information for identifying ciphertext V, and h is a cipher for identifying ciphertext V A symbol indicating a function for generating sentence identification information. If X and Y are elements of the group G 1 and a and b are integers,
e (aX, bY) = e (X, Y) ab (1)
The relationship holds. For example, Weil pairing may be used as the bilinear pairing function. Further, a bit string indicating the attribute of the receiving apparatus 200 may be used as the ID.

送信装置100は、暗号化部110、暗号文送信部120、暗号化記録部190を備える。受信装置200は、属性送信部210、リクエスト作成部220、リクエスト送信部225、復号部230、復号記録部290を備える。復号履歴蓄積サーバ300は、レスポンス作成部310、レスポンス送信部315、セッション情報蓄積部370、履歴蓄積部380、代理記録部390を備える。鍵生成装置400は、鍵生成部410、鍵分割部420、鍵配布部430、鍵生成記録部490を備える。以下に、処理フローを説明しながら、これらの構成部の機能を説明する。   The transmission device 100 includes an encryption unit 110, a ciphertext transmission unit 120, and an encryption recording unit 190. The receiving device 200 includes an attribute transmission unit 210, a request creation unit 220, a request transmission unit 225, a decryption unit 230, and a decryption recording unit 290. The decryption history storage server 300 includes a response creation unit 310, a response transmission unit 315, a session information storage unit 370, a history storage unit 380, and a proxy recording unit 390. The key generation device 400 includes a key generation unit 410, a key division unit 420, a key distribution unit 430, and a key generation recording unit 490. The functions of these components will be described below while explaining the processing flow.

秘密鍵を配布する処理フロー
受信装置200の属性送信部210は、ビット列IDを鍵生成装置400に送信する(S211)。なお、ビット列IDは、A社の社員、20歳以上などの単独の属性情報を示すビット列でもよいし、A社の社員かつ男性、20歳以上または女性のような属性情報の論理式を示すビット列でもよい。鍵生成装置400の鍵生成部410は、秘密鍵K
=sQID
のように求め、鍵生成記録部490に記録する(S410)。
The attribute transmitting unit 210 of the processing flow receiving apparatus 200 that distributes the secret key transmits the bit string ID to the key generating apparatus 400 (S211). The bit string ID may be a bit string indicating single attribute information such as an employee of company A, 20 years or older, or a bit string indicating a logical expression of attribute information such as an employee of company A, male, 20 years or older, or female. But you can. The key generation unit 410 of the key generation device 400 uses the secret key K 0 as K 0 = sQ ID.
And is recorded in the key generation recording unit 490 (S410).

鍵分割部420は、分割用乱数K’を0以上p−1以下の整数から選択し(S421)、秘密鍵Kと分割用乱数K’を用いて所定の方法1にしたがって受信用秘密鍵Kを求め、鍵生成記録部490に記録する(S422)。なお、分割用乱数K’は、0以上p−1以下の整数からランダムに選択することが望ましいが、あらかじめ定めた他の方法で選択してもよい。鍵配布部430は、分割用乱数K’を用いて所定の方法2で代理計算用秘密鍵Kを求め、鍵生成記録部490に記録する(S434)。そして、鍵配布部430は、受信用秘密鍵Kを受信装置200に送信し、受信用秘密鍵Kを送信した受信装置200を識別する受信装置識別情報RIDと代理計算用秘密鍵Kを復号履歴蓄積サーバ300に送信する(S435)。受信装置200の復号記録部290は、受信用秘密鍵Kを記録する(S291)。復号履歴蓄積サーバ300の代理記録部390は、受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録する(S391)。 The key splitting unit 420 selects a split random number K 3 ′ from integers between 0 and p−1 (S421), and uses the secret key K 0 and the split random number K 3 ′ for reception according to the predetermined method 1. It obtains the secret key K 1, and records the key generation recording unit 490 (S422). The dividing random number K 3 ′ is desirably selected at random from an integer of 0 or more and p−1 or less, but may be selected by another predetermined method. The key distribution unit 430 obtains the proxy calculation secret key K 3 by the predetermined method 2 using the dividing random number K 3 ′, and records it in the key generation recording unit 490 (S434). Then, the key distribution unit 430 transmits the received secret key K 1 to the receiving apparatus 200, the receiving device identification information R ID surrogate calculation secret key K that identifies the receiving device 200 that transmitted the received secret key K 1 3 is transmitted to the decryption history storage server 300 (S435). Decoding the recording unit 290 of the receiving apparatus 200 records the received secret key K 1 (S291). Proxy recording unit 390 of the decoding history storage server 300 records the proxy calculation secret key K 3 in association with the receiving apparatus identifying information R ID (S391).

暗号文の生成から復号までの処理フロー
属性送信部210は、ビット列IDを送信装置100に送信する(S212)。送信装置100の暗号化部110は、乱数rを0以上p−1以下の整数から選択し、セション情報UをU=rPのように計算する。なお、乱数rは、0以上p−1以下の整数からランダムに選択することが望ましいが、あらかじめ定めた他の方法で選択してもよい。また、暗号化部110は、
ID=e(QID,PPub
を計算し、H(gID )を用いて所定の方法3で平文Mを暗号化して暗号文Vを求める。暗号化部110は、さらに暗号文識別情報vをv=h(V)のように生成する。関数hは例えばハッシュ関数とすればよいが、ハッシュ関数に限定する必要はなく、暗号文を一意に識別可能な情報を生成することができる関数であればよい。そして、暗号文送信部120が、受信装置200に暗号文Vと暗号文識別情報vとを送信し、復号履歴蓄積サーバ300にセッション情報Uと暗号文識別情報vとを送信する(S120)。
The processing flow attribute transmission unit 210 from generation of ciphertext to decryption transmits the bit string ID to the transmission device 100 (S212). The encryption unit 110 of the transmission device 100 selects the random number r from an integer between 0 and p−1 and calculates the session information U as U = rP. The random number r is desirably selected at random from an integer of 0 or more and p−1 or less, but may be selected by another predetermined method. In addition, the encryption unit 110
g ID = e (Q ID , P Pub )
And plaintext M is encrypted by a predetermined method 3 using H (g ID r ) to obtain ciphertext V. The encryption unit 110 further generates the ciphertext identification information v as v = h (V). The function h may be a hash function, for example. However, the function h need not be limited to the hash function, and may be any function that can generate information that can uniquely identify the ciphertext. Then, the ciphertext transmitting unit 120 transmits the ciphertext V and the ciphertext identification information v to the receiving device 200, and transmits the session information U and the ciphertext identification information v to the decryption history storage server 300 (S120).

復号履歴蓄積サーバ300は、セッション情報蓄積部370に送信装置100から受信したセッション情報Uと暗号文識別情報vとを対応付けて記録する(S370)。受信装置200のリクエスト作成部220が、受信用秘密鍵Kを用いて所定の方法4でリクエストReqを作成する。なお、リクエスト作成部220は、乱数rtmpを0以上p−1以下の整数から選択し(S221)、所定の方法4で乱数rtmpも用いてもよい。このようにすることで、受信用秘密鍵Kに関する情報を隠蔽できる。なお、乱数rtmpは、0以上p−1以下の整数からランダムに選択することが望ましいが、あらかじめ定めた他の方法で選択してもよい。そして、リクエスト送信部225が、リクエストReq、暗号文識別情報v、受信装置を特定する受信装置識別情報RIDとを復号履歴蓄積サーバに送信する(S222)。 The decryption history storage server 300 records the session information U received from the transmission device 100 and the ciphertext identification information v in the session information storage unit 370 in association with each other (S370). Request creation unit 220 of the receiving apparatus 200, creates a request Req to a predetermined method 4 using the received secret key K 1. Note that the request creation unit 220 may select the random number r tmp from an integer between 0 and p−1 (S221), and may also use the random number r tmp by the predetermined method 4. In this way, it concealed the information about the received secret key K 1. The random number r tmp is desirably selected at random from an integer of 0 or more and p−1 or less, but may be selected by another predetermined method. Then, the request transmission unit 225 transmits the request Req, the ciphertext identification information v, and the reception device identification information R ID that identifies the reception device to the decryption history storage server (S222).

復号履歴蓄積サーバ300のレスポンス作成部310は、受信装置200から受信した暗号文識別情報vと一致するセッション情報蓄積部370に記録された暗号文識別情報vに対応付けられたセッション情報Uを取得する。また、レスポンス作成部310は、受信装置200から受信した受信装置識別情報RIDと一致する代理記録部390に記録された受信装置識別情報RIDに対応付けられた代理計算用秘密鍵Kを取得する。そして、レスポンス作成部310は、所定の方法1と所定の方法2と所定の方法4に対応した方法である所定の方法7にしたがってセッション情報Uと代理計算用秘密鍵Kを用いた計算を行ってレスポンスResを求める。レスポンス送信部315は、レスポンスResを受信装置200に送信する(S310)。 The response creation unit 310 of the decryption history storage server 300 acquires the session information U associated with the ciphertext identification information v recorded in the session information storage unit 370 that matches the ciphertext identification information v received from the receiving device 200. To do. In addition, the response creation unit 310 uses the proxy calculation secret key K 3 associated with the reception device identification information R ID recorded in the proxy recording unit 390 that matches the reception device identification information R ID received from the reception device 200. get. Then, the response creation unit 310 performs a calculation using the session information U and the proxy calculation secret key K 3 according to the predetermined method 7, which is a method corresponding to the predetermined method 1, the predetermined method 2, and the predetermined method 4. Go to find the response Res. The response transmission unit 315 transmits the response Res to the reception device 200 (S310).

復号履歴蓄積サーバ300は、履歴蓄積部380に暗号文識別情報vと、受信装置識別情報RIDと、所定の方法8にしたがって取得した時刻tとを対応付けて記録する(S380)。所定の方法8とは、例えばリクエストReqを受信した時にタイムサーバから時刻tを取得してもよいし、レスポンスResを送信したときに復号履歴蓄積サーバ自身のタイマから時刻tを取得してもよい。また、時刻tを取得するタイミングは、レスポンス作成部310の処理が終了したときとしてもよい。なお、時刻tは、タイムサーバから取得してもよいし、復号履歴蓄積サーバ300自身のタイマから取得してもよい。そして、時刻tの取得のタイミングと取得先は、任意に組み合わせればよく、所定の方法8を決めるときに定めればよい。 The decryption history storage server 300 records the ciphertext identification information v, the receiving device identification information R ID, and the time t acquired according to the predetermined method 8 in the history storage unit 380 in association with each other (S380). For example, the predetermined method 8 may acquire the time t from the time server when the request Req is received, or may acquire the time t from the timer of the decoding history storage server itself when the response Res is transmitted. . Moreover, the timing which acquires the time t is good also when the process of the response preparation part 310 is complete | finished. The time t may be acquired from a time server or may be acquired from the timer of the decryption history storage server 300 itself. The timing of obtaining the time t and the acquisition destination may be arbitrarily combined, and may be determined when the predetermined method 8 is determined.

受信装置200の復号部230は、復号履歴蓄積サーバから受信したレスポンスResを用いて所定の方法2と所定の方法4に対応した方法である所定の方法5にしたがってgID の値Wを求める。そして、H(W)を用いて所定の方法3に対応した方法である所定の方法6にしたがって暗号文Vを復号して平文M’に復号する(S230)。 The decrypting unit 230 of the receiving device 200 obtains the value W of g ID r using the response Res received from the decryption history storage server according to the predetermined method 2 that is a method corresponding to the predetermined method 2 and the predetermined method 4. . Then, the ciphertext V is decrypted according to the predetermined method 6 which is a method corresponding to the predetermined method 3 using H (W), and is decrypted into the plaintext M ′ (S230).

上述のように、実施例1の暗号化システムでは、以下のような特徴がある。
(1)送信装置100が受信装置200には暗号文Vを送信し、復号履歴蓄積サーバ300にセッション情報Uと暗号文識別情報vを送信する。つまり、復号に必要なセッション情報Uは受信装置200には送信されない。
(2)復号履歴蓄積サーバ300のセッション情報蓄積部370がセッション情報Uと暗号文識別情報vとを対応付けて記録する。
(3)受信装置200が暗号文識別情報vと受信装置識別情報RIDを復号履歴蓄積サーバ300に送信することで、復号履歴蓄積サーバ300が暗号文Vの復号に必要なセッション情報Uと代理計算用秘密鍵Kを取得する。したがって、復号履歴蓄積サーバ300は、どの受信装置200がどの暗号文Vを復号しようとしているのか把握できる。
(4)復号履歴蓄積サーバ300が、履歴蓄積部380に暗号文識別情報vと受信装置識別情報RIDと時刻tとを対応付けて記録する。したがって、復号履歴蓄積サーバは、復号が実行されるごとに、暗号文Vと復号した受信装置とを特定した上で復号に協力した時刻を記録できる。
As described above, the encryption system according to the first embodiment has the following characteristics.
(1) The transmission device 100 transmits the ciphertext V to the reception device 200 and transmits the session information U and the ciphertext identification information v to the decryption history storage server 300. That is, session information U necessary for decoding is not transmitted to receiving apparatus 200.
(2) Session information storage section 370 of decryption history storage server 300 records session information U and ciphertext identification information v in association with each other.
(3) The reception device 200 transmits the ciphertext identification information v and the reception device identification information R ID to the decryption history storage server 300, so that the decryption history storage server 300 and the session information U necessary for decryption of the ciphertext V and the proxy to get the calculation for the secret key K 3. Therefore, the decryption history storage server 300 can grasp which receiving device 200 is trying to decrypt which ciphertext V.
(4) The decryption history storage server 300 records the ciphertext identification information v, the receiving device identification information R ID, and the time t in the history storage unit 380 in association with each other. Therefore, every time decryption is performed, the decryption history storage server can record the time when the decryption is performed after identifying the ciphertext V and the decrypted receiving device.

次に、上述の所定の方法1〜7について説明する。所定の方法1〜7は「秘密鍵Kから複数の復号鍵(受信用秘密鍵K,代理計算用秘密鍵K)を生成する方式」と「鍵を伴う一部の演算機能のリソースを外部装置(復号履歴蓄積サーバ)に安全に代行させる方式」を組み合わせて構成するために互いに対応していればよい。例えば、以下に示すような組み合わせがあり得る。ただし、「秘密鍵Kから複数の復号鍵(受信用秘密鍵K,代理計算用秘密鍵K)を生成する方式」と「鍵を伴う一部の演算機能のリソースを外部装置(復号履歴蓄積サーバ)に安全に代行させる方式」とが機能する範囲ならば、これらの組み合わせに限定する必要はない。 Next, the predetermined methods 1 to 7 will be described. The predetermined methods 1 to 7 are “a method for generating a plurality of decryption keys (reception secret key K 1 , proxy calculation secret key K 3 ) from the secret key K 0 ” and “resources of some calculation functions with keys. In order to configure a combination of “a method for safely proxying an external device (decoding history storage server)”, it is only necessary to correspond to each other. For example, the following combinations are possible. However, the “method for generating a plurality of decryption keys (reception private key K 1 , proxy calculation private key K 3 ) from the private key K 0 ” and “partial operation function resources with the key are external devices (decryption It is not necessary to limit to these combinations as long as the “method for safely substituting the history storage server” functions.

所定の方法の組み合わせ1−1
所定の方法1では、受信用秘密鍵K
=K’ K
のように求める。所定の方法2では、代理計算用秘密鍵K
=K−1
のように求める。所定の方法3では、暗号文Vを
V=M(+)H(gID
のように求める。所定の方法4では、リクエストReqを受信用秘密鍵Kを含む情報とする。所定の方法5では、値Wを
W=Res
のように求める。所定の方法6では、平文M’を
M’=V(+)H(W)
のように求める。所定の方法7では、レスポンスResを
Res=e(K,U)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(K,U) または Res=e(K,KU)
のようにレスポンスResを求めてもよい。
Combination of predetermined methods 1-1
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 ′ K 0
Seek like. In the predetermined method 2, the proxy calculation private key K 3 is set to K 3 = K 3 ' −1
Seek like. In the predetermined method 3, the ciphertext V is changed to V = M (+) H (g ID r )
Seek like. In certain methods 4, the information including the received secret key K 1 a request Req. In the predetermined method 5, the value W is set to W = Res
Seek like. In the predetermined method 6, plaintext M ′ is changed to M ′ = V (+) H (W)
Seek like. In the predetermined method 7, the response Res is Res = e (K 1 , U) ^ K 3
Seek like. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K 1 , U) or Res = e (K 1 , K 3 U)
The response Res may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2を
=K
とし、所定の方法7を
Res=e(K,U)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e((K −1)K,U) または Res=e(K,(K −1)U)
のようにレスポンスResを求めてもよい。
In the first example, the predetermined method 2 is changed to K 3 = K 3
And the predetermined method 7 is Res = e (K 1 , U) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res = e ((K 3 −1 ) K 1 , U) or Res = e (K 1 , (K 3 −1 ) U)
The response Res may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2を
=K
とし、所定の方法7を
Res=e(K,U)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(K,U) または Res=e(K,KU)
のようにレスポンスResを求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 is K 3 = K 3
And the predetermined method 7 is Res = e (K 1 , U) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K 1 , U) or Res = e (K 1 , K 3 U)
The response Res may be obtained as follows.

第3の例では、所定の方法3を、H(gID )を共通鍵として平文Mを暗号化し、暗号文Vを求めてもよい。この場合は、所定の方法6は、H(W)を共通鍵として暗号文Vを平文M’に復号するとすればよい。 In the third example, the ciphertext V may be obtained by encrypting the plaintext M using the predetermined method 3 with H (g ID r ) as a common key. In this case, the predetermined method 6 may decrypt the ciphertext V into the plaintext M ′ using H (W) as a common key.

所定の方法の組み合わせ1−2
所定の方法1では、受信用秘密鍵K
=K’ K
のように求める。所定の方法2では、代理計算用秘密鍵K
=K−1
のように求める。所定の方法3では、暗号文Vを
V=M(+)H(gID
のように求める。所定の方法4では、リクエスト作成部220が、乱数rtmpを0以上p−1以下の整数から選択し(S221)、隠蔽鍵Ktmp
tmp=rtmp
を求め、リクエストReqを隠蔽鍵Ktmpを含む情報とする。所定の方法5では、値Wを
W=Res^rtmp −1
のように求める。所定の方法6では、平文M’を
M’=V(+)H(W)
のように求める。所定の方法7では、レスポンスResを
Res=e(Ktmp,U)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(Ktmp,U) または Res=e(Ktmp,KU)
のようにレスポンスResを求めてもよい。
Combination of predetermined methods 1-2
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 ′ K 0
Seek like. In the predetermined method 2, the proxy calculation private key K 3 is set to K 3 = K 3 ' −1
Seek like. In the predetermined method 3, the ciphertext V is changed to V = M (+) H (g ID r )
Seek like. In the predetermined method 4, the request creation unit 220 selects a random number r tmp from integers between 0 and p−1 (S221), and sets the concealment key K tmp as K tmp = r tmp K 1
And request Req as information including concealment key K tmp . In the predetermined method 5, the value W is set to W = Res ^ r tmp −1
Seek like. In the predetermined method 6, plaintext M ′ is changed to M ′ = V (+) H (W)
Seek like. In the predetermined method 7, the response Res is Res = e (K tmp , U) ^ K 3.
Seek like. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K tmp , U) or Res = e (K tmp , K 3 U)
The response Res may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2を
=K
とし、所定の方法7を
Res=e(Ktmp,U)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e((K −1)Ktmp,U) または Res=e(Ktmp,(K −1)U)
のようにレスポンスResを求めてもよい。
In the first example, the predetermined method 2 is changed to K 3 = K 3
And the predetermined method 7 is Res = e (K tmp , U) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res = e ((K 3 −1 ) K tmp , U) or Res = e (K tmp , (K 3 −1 ) U)
The response Res may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2を
=K
とし、所定の方法7を
Res=e(Ktmp,U)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(Ktmp,U) または Res=e(Ktmp,KU)
のようにレスポンスResを求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 is K 3 = K 3
And the predetermined method 7 is Res = e (K tmp , U) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K tmp , U) or Res = e (K tmp , K 3 U)
The response Res may be obtained as follows.

第3の例では、所定の方法3を、H(gID )を共通鍵として平文Mを暗号化し、暗号文Vを求めてもよい。この場合は、所定の方法6は、H(W)を共通鍵として暗号文Vを平文M’に復号するとすればよい。 In the third example, the ciphertext V may be obtained by encrypting the plaintext M using the predetermined method 3 with H (g ID r ) as a common key. In this case, the predetermined method 6 may decrypt the ciphertext V into the plaintext M ′ using H (W) as a common key.

[変形例1]
図1に実施例1変形例1の暗号化システムの構成例を示す。図2に実施例1変形例1の暗号化システムの秘密鍵を配布する処理フローを、図4に暗号文の生成から復号までの処理フローを示す。実施例1との違いは、受信装置200自体が暗号文識別情報vを生成する点(暗号文識別情報vを受信しない点)である。秘密鍵を配布する処理フローは実施例1と同じである。
[Modification 1]
FIG. 1 shows a configuration example of an encryption system according to a first modification of the first embodiment. FIG. 2 shows a processing flow for distributing the secret key of the encryption system of the first modification of the first embodiment, and FIG. 4 shows a processing flow from generation of ciphertext to decryption. The difference from the first embodiment is that the receiving device 200 itself generates the ciphertext identification information v (does not receive the ciphertext identification information v). The processing flow for distributing the secret key is the same as in the first embodiment.

この変形例では、受信装置200が暗号文識別情報生成部240も備えている。そして、送信装置100の暗号文送信部121が、受信装置200に暗号文Vを送信し、復号履歴蓄積サーバ300にセッション情報Uと暗号文識別情報vとを送信する(S121)。そして、受信装置200の暗号文識別情報生成部240が、v=h(V)のように暗号文識別情報vを生成する(S240)。その他の構成部と処理は実施例1と同じであり、隠蔽用乱数rtmpを生成するか否かや所定の方法1〜8のバリエーションなども実施例1と同じである。したがって、実施例1と同様の効果が得られる。 In this modification, the receiving device 200 also includes a ciphertext identification information generation unit 240. Then, the ciphertext transmission unit 121 of the transmission device 100 transmits the ciphertext V to the reception device 200 and transmits the session information U and the ciphertext identification information v to the decryption history storage server 300 (S121). Then, the ciphertext identification information generation unit 240 of the receiving device 200 generates the ciphertext identification information v as v = h (V) (S240). Other components and processes are the same as those in the first embodiment, and whether to generate the concealing random number r tmp and variations of the predetermined methods 1 to 8 are the same as those in the first embodiment. Therefore, the same effect as in the first embodiment can be obtained.

[変形例2]
図1に実施例1変形例2の暗号化システムの構成例を示す。図5に実施例1変形例2の暗号化システムの秘密鍵を配布する処理フローを、図3に暗号文の生成から復号までの処理フローを示す。実施例1との違いは、鍵生成装置400が、保護用秘密鍵Kも生成する点である。そのため、鍵配布部430と復号部230の処理、および復号記録部290に記録される情報が実施例1と異なる。
[Modification 2]
FIG. 1 shows a configuration example of an encryption system according to a first modification of the first embodiment. FIG. 5 shows a processing flow for distributing the secret key of the encryption system of the first embodiment and FIG. 3 shows a processing flow from generation of ciphertext to decryption. The difference from the first embodiment, the key generation device 400, protective secret key K 2 is also a point to be generated. Therefore, the processing of the key distribution unit 430 and the decryption unit 230 and the information recorded in the decryption recording unit 290 are different from those in the first embodiment.

秘密鍵を配布する処理フロー
ステップS211〜S422までは実施例1と同じである。ステップS422が終了すると、鍵配布部430は、分割用乱数K’を用いて所定の方法2で代理計算用秘密鍵Kを求める。本変形例の所定の方法2では、保護用秘密鍵Kを0以上p−1以下の整数から選択する(S431)。分割用乱数K’と保護用秘密鍵Kを用いて所定の方法2’にしたがって代理計算用秘密鍵Kを求める(S432)。なお、保護用秘密鍵Kは、鍵配布部430が単純に乱数として求める方法以外に、次のように求めてもよい。鍵配布部430が受信装置200から保護用秘密鍵Kを求めるための情報Passを受信する。そして、鍵配布部430が情報Passを用いて保護用秘密鍵Kを求めてもよい。例えば、情報Passとハッシュ関数を用いて保護用秘密鍵Kを求めてもよいし、情報Pass自体を保護用秘密鍵Kとしてもよい。また、情報Passとして、例えば受信装置200の利用者(受信者)が設定したパスワードを用いてもよい。また、保護用秘密鍵Kは、0以上p−1以下の整数からランダムに選択することが望ましいが、あらかじめ定めた他の方法で選択してもよい。
Processing flow steps S211 to S422 for distributing the secret key are the same as those in the first embodiment. When step S422 ends, the key distribution unit 430 obtains the proxy calculation secret key K 3 by the predetermined method 2 using the dividing random number K 3 ′. In certain methods 2 of this modification, the protective secret key K 2 selected from 0 or p-1 an integer (S431). A proxy calculation secret key K 3 is obtained according to a predetermined method 2 ′ using the split random number K 3 ′ and the protection secret key K 2 (S432). The protective secret key K 2 is other than the method key distribution unit 430 obtains a simply random, may be determined as follows. The key distribution unit 430 receives information Pass for obtaining the protection secret key K 2 from the receiving device 200. Then, the key distribution unit 430 may seek protection for the private key K 2 with the information Pass. For example, it may be obtained with a protective secret key K 2 with the information Pass and the hash function, the information Pass itself may protect secret key K 2. Further, as the information Pass, for example, a password set by a user (recipient) of the receiving device 200 may be used. The protective secret key K 2, it is desirable to randomly selected from 0 or p-1 an integer, may be selected in a predetermined other methods.

鍵配布部430は、受信用秘密鍵Kと保護用秘密鍵Kを受信装置200に送信し、受信用秘密鍵Kと保護用秘密鍵Kを送信した受信装置200を識別する受信装置識別情報RIDと代理計算用秘密鍵Kを復号履歴蓄積サーバ300に送信する(S433)。受信装置200の復号記録部290は、受信用秘密鍵Kと保護用秘密鍵Kを記録する(S292)。なお、復号記録部290は、物理的に別の2つ以上の記録装置で構成してもよい。例えば、復号記録部290をICカードとパソコンのハードディスクで構成してもよい。そして、受信用秘密鍵KをICカードに記録し、保護用秘密鍵Kをパソコンのハードディスクに記録するようにしてもよい。このように物理的に別々に受信用秘密鍵Kと保護用秘密鍵Kを記録すれば、両方を同時に漏洩・紛失するリスクを低減できる。復号履歴蓄積サーバ300の代理記録部390は、受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録する(S391)。 Key distribution unit 430 transmits the received secret key K 1 and the protective secret key K 2 to the receiving apparatus 200, receiving identifying the receiving device 200 that transmitted the received secret key K 1 and the protective secret key K 2 transmitting the device identification information R ID surrogate calculation secret key K 3 to decode history storage server 300 (S433). Decoding the recording unit 290 of the receiving apparatus 200 records the received secret key K 1 and the protective secret key K 2 (S292). Note that the decryption recording unit 290 may be configured by two or more physically different recording devices. For example, the decryption / recording unit 290 may be composed of an IC card and a personal computer hard disk. Then, record the receiving secret key K 1 to the IC card, may be recorded in a protective secret key K 2 in the computer's hard disk. Thus physically separately records the received secret key K 1 and the protective secret key K 2, both simultaneously reduce the risk of leakage or lost. Proxy recording unit 390 of the decoding history storage server 300 records the proxy calculation secret key K 3 in association with the receiving apparatus identifying information R ID (S391).

暗号文の生成から復号までの処理フロー
ステップS230以外は実施例1と同じである。ステップS230では、受信装置200の復号部230は、復号履歴蓄積サーバ300から受信したレスポンスResを用いて所定の方法2と所定の方法4に対応した方法である所定の方法5にしたがって、保護用秘密鍵Kを用いてgID の値Wを求める。そして、H(W)を用いて所定の方法3に対応した方法である所定の方法6にしたがって暗号文Vを復号して平文M’に復号する(S230)。本変形例はこのような構成なので、実施例1と同様の効果が得られる。
Except for the processing flow step S230 from generation of ciphertext to decryption, it is the same as the first embodiment. In step S230, the decryption unit 230 of the reception device 200 uses the response Res received from the decryption history storage server 300 according to the predetermined method 2 that is a method corresponding to the predetermined method 2 and the predetermined method 4, and performs protection. determine the value W of g ID r using the secret key K 2. Then, the ciphertext V is decrypted according to the predetermined method 6 which is a method corresponding to the predetermined method 3 using H (W), and is decrypted into the plaintext M ′ (S230). Since the present modification has such a configuration, the same effect as in the first embodiment can be obtained.

次に、上述の所定の方法1〜7について説明する。所定の方法1〜7は「秘密鍵Kから複数の復号鍵(受信用秘密鍵K,保護用秘密鍵K,代理計算用秘密鍵K)を生成する方式」と「鍵を伴う一部の演算機能のリソースを外部装置(復号履歴蓄積サーバ)に安全に代行させる方式」を組み合わせて構成するために互いに対応していればよい。例えば、以下に示すような組み合わせがあり得る。ただし、「秘密鍵Kから複数の復号鍵(受信用秘密鍵K,保護用秘密鍵K,代理計算用秘密鍵K)を生成する方式」と「鍵を伴う一部の演算機能のリソースを外部装置(復号履歴蓄積サーバ)に安全に代行させる方式」とが機能する範囲ならば、これらの組み合わせに限定する必要はない。 Next, the predetermined methods 1 to 7 will be described. The predetermined methods 1 to 7 include “a method for generating a plurality of decryption keys (reception secret key K 1 , protection secret key K 2 , proxy calculation secret key K 3 ) from the secret key K 0 ” and “with key In order to configure a combination of “methods for safely substituting resources of some arithmetic functions to an external device (decoding history storage server)”, they need only correspond to each other. For example, the following combinations are possible. However, “a method for generating a plurality of decryption keys (reception secret key K 1 , protection secret key K 2 , proxy calculation secret key K 3 ) from the secret key K 0 ” and “partial calculation function with key” It is not necessary to limit to these combinations as long as the “method of safely substituting resources for the external device (decoding history storage server)” functions.

所定の方法の組み合わせ1−3
所定の方法1では、受信用秘密鍵K
=K’K
のように求める。所定の方法2’では、代理計算用秘密鍵K
=(K’)−1
のように求める。所定の方法3では、暗号文Vを
V=M(+)H(gID
のように求める。所定の方法4では、リクエストReqを受信用秘密鍵Kを含む情報とする。所定の方法5では、値Wを
W=Res^K
のように求める。所定の方法6では、平文M’を
M’=V(+)H(W)
のように求める。所定の方法7では、レスポンスResを
Res=e(K,U)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(K,U) または Res=e(K,KU)
のようにレスポンスResを求めてもよい。
Combination of predetermined methods 1-3
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 'K 0
Seek like. In the predetermined method 2 ′, the proxy calculation private key K 3 is set to K 3 = (K 2 K 3 ′) −1.
Seek like. In the predetermined method 3, the ciphertext V is changed to V = M (+) H (g ID r )
Seek like. In certain methods 4, the information including the received secret key K 1 a request Req. In the predetermined method 5, the value W is set to W = Res ^ K 2
Seek like. In the predetermined method 6, plaintext M ′ is changed to M ′ = V (+) H (W)
Seek like. In the predetermined method 7, the response Res is Res = e (K 1 , U) ^ K 3
Seek like. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K 1 , U) or Res = e (K 1 , K 3 U)
The response Res may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2’を
=(K−1
とし、所定の方法7を
Res=e(K,U)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e((K −1)K,U) または Res=e(K,(K −1)U)
のようにレスポンスResを求めてもよい。
In the first example, the predetermined method 2 ′ is changed to K 3 = (K 2 ) −1 K 3 ′.
And the predetermined method 7 is Res = e (K 1 , U) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res = e ((K 3 −1 ) K 1 , U) or Res = e (K 1 , (K 3 −1 ) U)
The response Res may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2’を
=(K−1
とし、所定の方法7を
Res=e(K,U)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(K,U) または Res=e(K,KU)
のようにレスポンスResを求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 ′ is K 3 = (K 2 ) −1 K 3
And the predetermined method 7 is Res = e (K 1 , U) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K 1 , U) or Res = e (K 1 , K 3 U)
The response Res may be obtained as follows.

第3の例では、所定の方法3を、H(gID )を共通鍵として平文Mを暗号化し、暗号文Vを求めてもよい。この場合は、所定の方法6は、H(W)を共通鍵として暗号文Vを平文M’に復号するとすればよい。 In the third example, the ciphertext V may be obtained by encrypting the plaintext M using the predetermined method 3 with H (g ID r ) as a common key. In this case, the predetermined method 6 may decrypt the ciphertext V into the plaintext M ′ using H (W) as a common key.

所定の方法の組み合わせ1−4
所定の方法1では、受信用秘密鍵K
=K’K
のように求める。所定の方法2’では、代理計算用秘密鍵K
=(K’)−1
のように求める。所定の方法3では、暗号文Vを
V=M(+)H(gID
のように求める。所定の方法4では、リクエスト作成部220が、乱数rtmpを0以上p−1以下の整数から選択し(S221)、隠蔽鍵Ktmp
tmp=rtmp
を求め、リクエストReqを隠蔽鍵Ktmpを含む情報とする。所定の方法5では、値Wを
W=Res^(rtmp −1
のように求める。所定の方法6では、平文M’を
M’=V(+)H(W)
のように求める。所定の方法7では、レスポンスResを
Res=e(Ktmp,U)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(Ktmp,U) または Res=e(Ktmp,KU)
のようにレスポンスResを求めてもよい。
Combination of predetermined methods 1-4
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 'K 0
Seek like. In the predetermined method 2 ′, the proxy calculation private key K 3 is set to K 3 = (K 2 K 3 ′) −1.
Seek like. In the predetermined method 3, the ciphertext V is changed to V = M (+) H (g ID r )
Seek like. In the predetermined method 4, the request creation unit 220 selects a random number r tmp from integers between 0 and p−1 (S221), and sets the concealment key K tmp as K tmp = r tmp K 1
And request Req as information including concealment key K tmp . In the predetermined method 5, the value W is set to W = Res ^ (r tmp −1 K 2 )
Seek like. In the predetermined method 6, plaintext M ′ is changed to M ′ = V (+) H (W)
Seek like. In the predetermined method 7, the response Res is Res = e (K tmp , U) ^ K 3.
Seek like. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K tmp , U) or Res = e (K tmp , K 3 U)
The response Res may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2’を
=(K−1
とし、所定の方法7を
Res=e(Ktmp,U)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e((K −1)Ktmp,U) または Res=e(Ktmp,(K −1)U)
のようにレスポンスResを求めてもよい。
In the first example, the predetermined method 2 ′ is changed to K 3 = (K 2 ) −1 K 3 ′.
And predetermined method 7 is Res = e (K tmp , U) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res = e ((K 3 −1 ) K tmp , U) or Res = e (K tmp , (K 3 −1 ) U)
The response Res may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2’を
=(K−1
とし、所定の方法7を
Res=e(Ktmp,U)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res=e(Ktmp,U) または Res=e(Ktmp,KU)
のようにレスポンスResを求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 ′ is K 3 = (K 2 ) −1 K 3
And the predetermined method 7 is Res = e (K tmp , U) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res = e (K 3 K tmp , U) or Res = e (K tmp , K 3 U)
The response Res may be obtained as follows.

第3の例では、所定の方法3を、H(gID )を共通鍵として平文Mを暗号化し、暗号文Vを求めてもよい。この場合は、所定の方法6は、H(W)を共通鍵として暗号文Vを平文M’に復号するとすればよい。 In the third example, the ciphertext V may be obtained by encrypting the plaintext M using the predetermined method 3 with H (g ID r ) as a common key. In this case, the predetermined method 6 may decrypt the ciphertext V into the plaintext M ′ using H (W) as a common key.

[変形例3]
図1に実施例1変形例3の暗号化システムの構成例を示す。図5に実施例1変形例3の暗号化システムの秘密鍵を配布する処理フローを、図4に暗号文の生成から復号までの処理フローを示す。実施例1変形例2との違いは、受信装置200自体が暗号文識別情報vを生成する点(暗号文識別情報vを受信しない点)である。秘密鍵を配布する処理フローは実施例1変形例2と同じである。
[Modification 3]
FIG. 1 shows a configuration example of an encryption system according to a first modification of the first embodiment. FIG. 5 shows a processing flow for distributing the secret key of the encryption system according to the first modification of the first embodiment, and FIG. 4 shows a processing flow from generation of ciphertext to decryption. The difference from the first embodiment and the second modification is that the receiving device 200 itself generates the ciphertext identification information v (the ciphertext identification information v is not received). The processing flow for distributing the secret key is the same as that in the first embodiment and the second modification.

この変形例では、受信装置200が暗号文識別情報生成部240も備えている。そして、送信装置100の暗号文送信部121が、受信装置200に暗号文Vを送信し、復号履歴蓄積サーバ300にセッション情報Uと暗号文識別情報vとを送信する(S121)。そして、受信装置200の暗号文識別情報生成部240が、v=h(V)のように暗号文識別情報vを生成する(S240)。その他の構成部と処理は実施例1変形例2と同じであり、隠蔽用乱数rtmpを生成するか否かや所定の方法1〜8のバリエーションなども実施例1変形例2と同じである。したがって、実施例1と同様の効果が得られる。 In this modification, the receiving device 200 also includes a ciphertext identification information generation unit 240. Then, the ciphertext transmission unit 121 of the transmission device 100 transmits the ciphertext V to the reception device 200 and transmits the session information U and the ciphertext identification information v to the decryption history storage server 300 (S121). Then, the ciphertext identification information generation unit 240 of the receiving device 200 generates the ciphertext identification information v as v = h (V) (S240). The other components and processing are the same as in the first modification example 2, and whether to generate the concealing random number r tmp and variations of the predetermined methods 1 to 8 are the same as in the first modification example 2. . Therefore, the same effect as in the first embodiment can be obtained.

実施例1では、復号履歴蓄積サーバはレスポンスResを送信したときには履歴蓄積部に復号履歴を記録していた。しかし、受信装置が正しい受信用秘密鍵Kを保有していなかった場合(つまり、実際には暗号文Vを復号できなかった場合)であっても復号履歴が記録されることになる。そこで、実施例2では、復号履歴蓄積サーバがリクエストReqを送信してきた受信装置が正しい受信用秘密鍵Kを保有しているのかを確認する機能も備えた例を示す。 In the first embodiment, the decryption history storage server records the decryption history in the history storage unit when the response Res is transmitted. However, if the receiver did not have the correct reception secret key K 1 (i.e., actually if it can not decrypt the ciphertext V) would be a decoding history is recorded. In a second embodiment, an example of functions provided to check whether the decoding history storage server owns the received secret key K 1 received has transmitted device is correct request Req.

図6に実施例2の暗号化システムの構成例を示す。図2に実施例2の暗号化システムの秘密鍵を配布する処理フローを、図7に暗号文の生成から復号までの処理フローを示す。実施例2の暗号化システムは、送信装置100、受信装置500、復号履歴蓄積サーバ600、鍵生成装置400で構成される。   FIG. 6 shows a configuration example of the encryption system according to the second embodiment. FIG. 2 shows a processing flow for distributing the secret key of the encryption system according to the second embodiment, and FIG. 7 shows a processing flow from generation of ciphertext to decryption. The encryption system according to the second embodiment includes a transmission device 100, a reception device 500, a decryption history storage server 600, and a key generation device 400.

以下の説明では、kは大きな整数、pはkビットの素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは鍵生成装置400が生成した0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、(+)はビット単位の排他的論理和を示す記号、^はべき乗を示す記号、vは暗号文Vを識別する暗号文識別情報、hは暗号文Vを識別する暗号文識別情報を生成する関数を示す記号、‖はビット列の結合を示す記号とする。 In the following description, k is a large integer, p is a prime number of k bits, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, and e is G 1 × G 1 → G 2 Bi is a bilinear pairing function that maps to H, H is a symbol indicating a hash function that maps an element of group G 2 to an n-bit bit string, P is a generator of group G 1 , and s is 0 or more generated by key generator 400 An integer less than or equal to p−1, P Pub = sP, (P, P Pub ) is a public parameter, MaptoPoint G1 is a function that maps an arbitrary length bit string to the group G 1 , ID is an arbitrary length bit string, Q ID = MaptoPoint G1 (ID), (+) is a symbol indicating exclusive OR in bit units, ^ is a symbol indicating power, v is ciphertext identification information for identifying ciphertext V, and h is a cipher for identifying ciphertext V A symbol indicating a function that generates sentence identification information, and ‖ is a symbol indicating a combination of bit strings. The

送信装置100は、暗号化部110、暗号文送信部120、暗号化記録部190を備える。受信装置500は、属性送信部210、リクエスト作成部220、リクエスト送信部225、復号部230、第2リクエスト作成部520、第2復号部530、ハッシュ値計算部550、復号記録部290を備える。復号履歴蓄積サーバ600は、レスポンス作成部310、レスポンス送信部315、認証鍵生成部610、チャレンジ生成部620、第2レスポンス作成部630、認証部640、セッション情報蓄積部370、履歴蓄積部380、代理記録部390を備える。鍵生成装置400は、鍵生成部410、鍵分割部420、鍵配布部430、鍵生成記録部490を備える。以下に、処理フローを説明しながら、これらの構成部の機能を説明する。秘密鍵を配布する処理フローは実施例1と同じなので説明を省略する。   The transmission device 100 includes an encryption unit 110, a ciphertext transmission unit 120, and an encryption recording unit 190. The receiving device 500 includes an attribute transmission unit 210, a request creation unit 220, a request transmission unit 225, a decryption unit 230, a second request creation unit 520, a second decryption unit 530, a hash value calculation unit 550, and a decryption recording unit 290. The decryption history storage server 600 includes a response generation unit 310, a response transmission unit 315, an authentication key generation unit 610, a challenge generation unit 620, a second response generation unit 630, an authentication unit 640, a session information storage unit 370, a history storage unit 380, A proxy recording unit 390 is provided. The key generation device 400 includes a key generation unit 410, a key division unit 420, a key distribution unit 430, and a key generation recording unit 490. The functions of these components will be described below while explaining the processing flow. Since the processing flow for distributing the secret key is the same as in the first embodiment, the description thereof is omitted.

暗号文の生成から復号までの処理フロー
ステップS212からS222までの処理は実施例1と同じである。ステップS222のあと、復号履歴蓄積サーバ600の認証鍵生成部610は、認証鍵Aと0以上p−1以下の整数である乱数aを生成する。また、認証鍵生成部610は、H(gID )を用いて所定の方法3’で認証鍵Aを暗号化して暗号化認証鍵V’を求める。認証鍵生成部610はさらに、U’=aPのようにセッション情報U’を計算し、暗号化認証鍵V’のみ若しくは暗号化認証鍵V’とセッション情報U’を受信装置500に送信する(S610)。
Processing flow from generation of ciphertext to decryption The processing from step S212 to S222 is the same as in the first embodiment. After step S222, the authentication key generation unit 610 of the decryption history storage server 600 generates an authentication key A and a random number a that is an integer between 0 and p−1. Also, the authentication key generation unit 610 obtains an encrypted authentication key V ′ by encrypting the authentication key A by a predetermined method 3 ′ using H (g ID a ). The authentication key generation unit 610 further calculates session information U ′ such that U ′ = aP, and transmits only the encrypted authentication key V ′ or the encrypted authentication key V ′ and the session information U ′ to the receiving device 500 ( S610).

第2リクエスト作成部520は、受信用秘密鍵Kを用いて所定の方法4’でリクエストReq’を作成し、復号履歴蓄積サーバ600に送信する(S520)。復号履歴蓄積サーバ600の第2レスポンス作成部630は、所定の方法1と所定の方法2と所定の方法4’に対応した方法である所定の方法7’にしたがってセッション情報U’と代理計算用秘密鍵Kを用いた計算を行ってレスポンスRes’を求め、受信装置500に送信する(S630)。受信装置500の第2復号部530は、復号履歴蓄積サーバ600から受信したレスポンスRes’を用いて所定の方法2と所定の方法4’に対応した方法である所定の方法5’にしたがってgID の値Wを求める。そして、H(W)を用いて所定の方法3’に対応した方法である所定の方法6’にしたがって暗号化認証鍵V’を復号して認証鍵A’に復号する(S530)。なお、以下では、暗号化前の認証鍵と復号した認証鍵とを区別する必要があるときは、暗号化前の認証鍵をAと記載し、復号した認証鍵をA’と記載して区別する。 The second request creation unit 520, using the received secret key K 1 to create a 'request Req in' a predetermined method 4, and transmits the decoding history storage server 600 (S520). The second response creation unit 630 of the decryption history storage server 600 performs session information U ′ and proxy calculation according to a predetermined method 7 ′ that is a method corresponding to the predetermined method 1, the predetermined method 2, and the predetermined method 4 ′. seeking a response Res' performs calculation using the secret key K 3, and transmits to the receiving apparatus 500 (S630). The second decryption unit 530 of the receiving device 500 uses the response Res ′ received from the decryption history storage server 600 to perform g ID according to the predetermined method 5 ′ that is a method corresponding to the predetermined method 2 and the predetermined method 4 ′. determine the value W of a. Then, using H (W), the encrypted authentication key V ′ is decrypted according to the predetermined method 6 ′, which is a method corresponding to the predetermined method 3 ′, and is decrypted into the authentication key A ′ (S530). In the following, when it is necessary to distinguish between the authentication key before encryption and the decrypted authentication key, the authentication key before encryption is described as A, and the decrypted authentication key is described as A ′. To do.

復号履歴蓄積サーバ600のチャレンジ生成部620は、チャレンジBを生成し、受信装置500に送信する(S620)。なお、ステップS620は、ステップS610〜S530の前に行ってもよいし、並行して行ってもよい。受信装置500のハッシュ値計算部550は、D’=H’(A’‖B)のようにハッシュ値D’を求め、復号履歴蓄積サーバ600に送信する。   The challenge generation unit 620 of the decryption history storage server 600 generates a challenge B and transmits it to the receiving device 500 (S620). Note that step S620 may be performed before steps S610 to S530 or in parallel. The hash value calculation unit 550 of the receiving device 500 obtains the hash value D ′ as D ′ = H ′ (A′‖B) and transmits it to the decryption history storage server 600.

復号履歴蓄積サーバの認証部640は、D=H’(A‖B)のようにハッシュ値Dを求め、D=D’であることを確認し、D≠D’の場合は処理を中止する(S640)。D=D’の場合はステップS310に進む。ステップS310、S230、S380は実施例1と同じである。   The authentication unit 640 of the decryption history storage server obtains the hash value D as D = H ′ (A‖B), confirms that D = D ′, and stops processing if D ≠ D ′. (S640). If D = D ', the process proceeds to step S310. Steps S310, S230, and S380 are the same as those in the first embodiment.

実施例2はこのような処理なので、実施例1の効果が得られた上で、さらに受信装置が実際に復号できるときのみ復号履歴を記録できる。例えば、受信装置に成りすました装置から大量のリクエストReqが送信されるなどの攻撃があった場合でも、履歴蓄積部380にはこれらのリクエストReqについての復号履歴は記録されない。   Since the second embodiment is such a process, the decoding history can be recorded only when the receiving apparatus can actually perform decoding after obtaining the effects of the first embodiment. For example, even when there is an attack such as a large amount of request Req being transmitted from a device impersonating a receiving device, the history accumulation unit 380 does not record the decryption history for these requests Req.

なお、実施例2の所定の方法1〜7は、実施例1で説明した所定の方法1〜7と同じである。そして、実施例2で説明した所定の方法3’、4’、5’、6’、7’も、「秘密鍵Kから複数の復号鍵(受信用秘密鍵K,代理計算用秘密鍵K)を生成する方式」と「鍵を伴う一部の演算機能のリソースを外部装置(復号履歴蓄積サーバ)に安全に代行させる方式」を組み合わせて構成するために互いに対応していればよい。例えば以下のようなバリエーションがある。 The predetermined methods 1 to 7 of the second embodiment are the same as the predetermined methods 1 to 7 described in the first embodiment. The predetermined methods 3 ′, 4 ′, 5 ′, 6 ′, and 7 ′ described in the second embodiment also use “a plurality of decryption keys (reception secret key K 1 , proxy calculation secret key”) from the secret key K 0. K 3 ) ”and“ method for safely substituting resources of some computing functions with keys to an external device (decryption history storage server) ”need only be compatible with each other. . For example, there are the following variations.

所定の方法の組み合わせ2−1
所定の方法1では、受信用秘密鍵K
=K’ K
のように求める。所定の方法2では、代理計算用秘密鍵K
=K−1
のように求める。このような場合であれば、所定の方法3’では、暗号化認証鍵V’を
V’=A(+)H(gID
のように求める。所定の方法4’では、リクエストReq’を受信用秘密鍵Kを含む情報とする。所定の方法5’では、値Wを
W=Res’
のように求める。所定の方法6’では、認証鍵A’を
A’=V’(+)H(W)
のように求める。所定の方法7’では、レスポンスRes’を
Res’=e(K,U’)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(K,U’) または Res’=e(K,KU’)
のようにレスポンスRes’を求めてもよい。
Combination of predetermined methods 2-1
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 ′ K 0
Seek like. In the predetermined method 2, the proxy calculation private key K 3 is set to K 3 = K 3 ' −1
Seek like. In such a case, in the predetermined method 3 ′, the encrypted authentication key V ′ is changed to V ′ = A (+) H (g ID r ).
Seek like. ', The request Req' predetermined method 4, information including the reception secret key K 1 a. In the predetermined method 5 ′, the value W is set to W = Res ′
Seek like. In the predetermined method 6 ′, the authentication key A ′ is set to A ′ = V ′ (+) H (W)
Seek like. In the predetermined method 7 ′, the response Res ′ is set to Res ′ = e (K 1 , U ′) ^ K 3.
Seek like. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K 1 , U ′) or Res ′ = e (K 1 , K 3 U ′)
The response Res ′ may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2を
=K
とし、所定の方法7’を
Res’=e(K,U’)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e((K −1)K,U’) または Res’=e(K,(K −1)U’)
のようにレスポンスRes’を求めてもよい。
In the first example, the predetermined method 2 is changed to K 3 = K 3
And the predetermined method 7 ′ is Res ′ = e (K 1 , U ′) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e ((K 3 −1 ) K 1 , U ′) or Res ′ = e (K 1 , (K 3 −1 ) U ′)
The response Res ′ may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2を
=K
とし、所定の方法7’を
Res’=e(K,U’)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(K,U’) または Res’=e(K,KU’)
のようにレスポンスRes’を求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 is K 3 = K 3
And the predetermined method 7 ′ is Res ′ = e (K 1 , U ′) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K 1 , U ′) or Res ′ = e (K 1 , K 3 U ′)
The response Res ′ may be obtained as follows.

第3の例では、所定の方法3’を、H(gID )を共通鍵として認証鍵Aを暗号化し、暗号化認証鍵V’を求めてもよい。この場合は、所定の方法6’は、H(W)を共通鍵として暗号化認証鍵V’を認証鍵A’に復号するとすればよい。 In the third example, a predetermined method 3 ′ may be used to encrypt the authentication key A using H (g ID r ) as a common key to obtain the encrypted authentication key V ′. In this case, the predetermined method 6 ′ may decrypt the encrypted authentication key V ′ into the authentication key A ′ using H (W) as a common key.

第4の例では、ステップS610でセッション情報U’も受信装置500に送信し、所定の方法4’では、リクエストReq’を
Req’=e(K,U’)
のように求める。そして、所定の方法7’では、レスポンスRes’を
Res’=Req’^K
のように求めるとしてもよい。
In the fourth example, the session information U ′ is also transmitted to the receiving device 500 in step S610, and in the predetermined method 4 ′, the request Req ′ is Req ′ = e (K 1 , U ′).
Seek like. Then, in the predetermined method 7 ′, the response Res ′ is changed to Res ′ = Req ′ ^ K 3
You may ask as follows.

所定の方法の組み合わせ2−2
所定の方法1では、受信用秘密鍵K
=K’ K
のように求める。所定の方法2では、代理計算用秘密鍵K
=K−1
のように求める。所定の方法3’では、暗号化認証鍵V’を
V’=A(+)H(gID
のように求める。所定の方法4’では、第2リクエスト作成部520が、乱数rtmpを0以上p−1以下の整数から選択し、隠蔽鍵Ktmp
tmp=rtmp
を求め、リクエストReq’を隠蔽鍵Ktmpを含む情報とする。所定の方法5’では、値Wを
W=Res’^rtmp −1
のように求める。所定の方法6’では、認証鍵A’を
A’=V’(+)H(W)
のように求める。所定の方法7’では、レスポンスRes’を
Res’=e(Ktmp,U’)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(Ktmp,U’) または Res’=e(Ktmp,KU’)
のようにレスポンスResを求めてもよい。
Combination of predetermined methods 2-2
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 ′ K 0
Seek like. In the predetermined method 2, the proxy calculation private key K 3 is set to K 3 = K 3 ' −1
Seek like. In the predetermined method 3 ′, the encrypted authentication key V ′ is set to V ′ = A (+) H (g ID r )
Seek like. In the predetermined method 4 ′, the second request creation unit 520 selects a random number r tmp from integers not less than 0 and not more than p−1, and sets the concealment key K tmp as K tmp = r tmp K 1
And request Req ′ as information including concealment key K tmp . In the predetermined method 5 ′, the value W is changed to W = Res ′ ^ r tmp −1
Seek like. In the predetermined method 6 ′, the authentication key A ′ is set to A ′ = V ′ (+) H (W)
Seek like. In the predetermined method 7 ′, the response Res ′ is set to Res ′ = e (K tmp , U ′) ^ K 3.
Seek like. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K tmp , U ′) or Res ′ = e (K tmp , K 3 U ′)
The response Res may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2を
=K
とし、所定の方法7’を
Res’=e(Ktmp,U’)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e((K −1)Ktmp,U’) または Res’=e(Ktmp,(K −1)U’)
のようにレスポンスRes’を求めてもよい。
In the first example, the predetermined method 2 is changed to K 3 = K 3
And the predetermined method 7 ′ is Res ′ = e (K tmp , U ′) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e ((K 3 −1 ) K tmp , U ′) or Res ′ = e (K tmp , (K 3 −1 ) U ′)
The response Res ′ may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2を
=K
とし、所定の方法7’を
Res’=e(Ktmp,U’)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(Ktmp,U’) または Res’=e(Ktmp,KU’)
のようにレスポンスRes’を求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 is K 3 = K 3
And the predetermined method 7 ′ is Res ′ = e (K tmp , U ′) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K tmp , U ′) or Res ′ = e (K tmp , K 3 U ′)
The response Res ′ may be obtained as follows.

第3の例では、所定の方法3’を、H(gID )を共通鍵として認証鍵Aを暗号化し、暗号化認証鍵V’を求めてもよい。この場合は、所定の方法6’は、H(W)を共通鍵として暗号化認証鍵V’を認証鍵A’に復号するとすればよい。 In the third example, a predetermined method 3 ′ may be used to encrypt the authentication key A using H (g ID r ) as a common key to obtain the encrypted authentication key V ′. In this case, the predetermined method 6 ′ may decrypt the encrypted authentication key V ′ into the authentication key A ′ using H (W) as a common key.

第4の例では、ステップS610でセッション情報U’も受信装置500に送信し、所定の方法4’では、リクエストReq’を
Req’=e(rtmp,U’)
のように求める。そして、所定の方法7’では、レスポンスRes’を
Res’=Req’^K
のように求めるとしてもよい。
In the fourth example, the session information U ′ is also transmitted to the receiving apparatus 500 in step S610, and in the predetermined method 4 ′, the request Req ′ is Req ′ = e (r tmp K 1 , U ′).
Seek like. Then, in the predetermined method 7 ′, the response Res ′ is changed to Res ′ = Req ′ ^ K 3
You may ask as follows.

[変形例1]
実施例2は暗号文Vを復号する前に受信装置の認証を行う点が実施例1と異なる。しかし、秘密鍵を配布する処理と、復号対象の暗号文Vの生成と復号自体は実施例1と同じである。したがって、実施例1で説明した変形例1〜3は実施例2でも適用できる。
[Modification 1]
The second embodiment is different from the first embodiment in that the receiving device is authenticated before the ciphertext V is decrypted. However, the process of distributing the secret key and the generation and decryption of the ciphertext V to be decrypted are the same as in the first embodiment. Therefore, the first to third modifications described in the first embodiment can be applied to the second embodiment.

実施例2変形例1は、受信装置500自体が暗号文識別情報vを生成する点(暗号文識別情報vを受信しない点)を変更した暗号化システムである(実施例1変形例1に相当する)。実施例2変形例1の暗号化システムの構成例は図6である。この場合は、受信装置500は、暗号文識別情報生成部240も備える。そして、秘密鍵を配布する処理フローが図2、暗号文の生成から復号までの処理フローが図8である。実施例2と実施例2変形例1との相違点は、実施例1と実施例1変形例1との相違点と同じなので、説明は省略する。   Embodiment 2 Modification 1 is an encryption system in which the receiving device 500 itself generates the ciphertext identification information v (the point that the ciphertext identification information v is not received) is changed (corresponding to the first embodiment modification 1). To do). Example 2 FIG. 6 shows a configuration example of an encryption system according to a first modification. In this case, the receiving device 500 also includes a ciphertext identification information generation unit 240. FIG. 2 shows a processing flow for distributing a secret key, and FIG. 8 shows a processing flow from generation of ciphertext to decryption. The differences between the second embodiment and the second variation of the second embodiment are the same as the differences between the first embodiment and the first variation of the first embodiment, and thus the description thereof is omitted.

[変形例2]
実施例2変形例2は、鍵生成装置400が保護用秘密鍵Kも生成する暗号化システムである(実施例1変形例2に相当する)。実施例2変形例2の暗号化システムの構成例は図6である。実施例2変形例2では、受信装置500は、暗号文識別情報生成部240は備えていない。そして、秘密鍵を配布する処理フローが図5、暗号文の生成から復号までの処理フローが図7である。実施例2と実施例2変形例2との相違点は、実施例1と実施例1変形例2との相違点と同じなので、秘密鍵を配布する処理フローと暗号文の生成から復号までの処理フローの説明は省略する。また、所定の方法1〜7は実施例1変形例2と同じなので説明を省略する。所定の方法3’、4’、5’、6’、7’の具体例については以下に説明する。ただし、「秘密鍵Kから複数の復号鍵(受信用秘密鍵K,保護用秘密鍵K,代理計算用秘密鍵K)を生成する方式」と「鍵を伴う一部の演算機能のリソースを外部装置(復号履歴蓄積サーバ)に安全に代行させる方式」とが機能する範囲ならば、これらの組み合わせに限定する必要はない。
[Modification 2]
Embodiment 2 Modification 2 is an encryption system in which the key generation device 400 also generates a protection secret key K 2 (corresponding to Modification 2 of Embodiment 1). Embodiment 2 FIG. 6 shows a configuration example of an encryption system according to a second modification. Second Embodiment In the second modification, the receiving device 500 does not include the ciphertext identification information generation unit 240. FIG. 5 shows a processing flow for distributing a secret key, and FIG. 7 shows a processing flow from generation of ciphertext to decryption. Since the difference between the second embodiment and the second variation is the same as the first embodiment and the second variation, the process flow for distributing the secret key and the process from generation to decryption of ciphertext are described. Description of the processing flow is omitted. In addition, since the predetermined methods 1 to 7 are the same as those in the first modification 2 of the first embodiment, description thereof is omitted. Specific examples of the predetermined methods 3 ′, 4 ′, 5 ′, 6 ′, and 7 ′ will be described below. However, “a method for generating a plurality of decryption keys (reception secret key K 1 , protection secret key K 2 , proxy calculation secret key K 3 ) from the secret key K 0 ” and “partial calculation function with key” It is not necessary to limit to these combinations as long as the “method of safely substituting resources for the external device (decoding history storage server)” functions.

所定の方法の組み合わせ2−3
所定の方法1では、受信用秘密鍵K
=K’K
のように求める。所定の方法2’では、代理計算用秘密鍵K
=(K’)−1
のように求める。所定の方法3’では、暗号化認証鍵V’を
V’=A(+)H(gID
のように求める。所定の方法4’では、リクエストReq’を受信用秘密鍵Kを含む情報とする。所定の方法5’では、値Wを
W=Res’^K
のように求める。所定の方法6’では、認証鍵A’を
A’=V’(+)H(W)
のように求める。所定の方法7’では、レスポンスRes’を
Res’=e(K,U’)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(K,U’) または Res’=e(K,KU’)
のようにレスポンスRes’を求めてもよい。
Combination 2-3 of predetermined methods
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 'K 0
Seek like. In the predetermined method 2 ′, the proxy calculation private key K 3 is set to K 3 = (K 2 K 3 ′) −1.
Seek like. In the predetermined method 3 ′, the encrypted authentication key V ′ is set to V ′ = A (+) H (g ID r )
Seek like. ', The request Req' predetermined method 4, information including the reception secret key K 1 a. In the predetermined method 5 ′, the value W is set to W = Res ′ ^ K 2
Seek like. In the predetermined method 6 ′, the authentication key A ′ is set to A ′ = V ′ (+) H (W)
Seek like. In the predetermined method 7 ′, the response Res ′ is set to Res ′ = e (K 1 , U ′) ^ K 3.
Seek like. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K 1 , U ′) or Res ′ = e (K 1 , K 3 U ′)
The response Res ′ may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2’を
=(K−1
とし、所定の方法7’を
Res’=e(K,U’)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e((K −1)K,U’) または Res’=e(K,(K −1)U’)
のようにレスポンスRes’を求めてもよい。
In the first example, the predetermined method 2 ′ is changed to K 3 = (K 2 ) −1 K 3 ′.
And the predetermined method 7 ′ is Res ′ = e (K 1 , U ′) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e ((K 3 −1 ) K 1 , U ′) or Res ′ = e (K 1 , (K 3 −1 ) U ′)
The response Res ′ may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2’を
=(K−1
とし、所定の方法7’を
Res’=e(K,U’)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(K,U’) または Res’=e(K,KU’)
のようにレスポンスRes’を求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 ′ is K 3 = (K 2 ) −1 K 3
And the predetermined method 7 ′ is Res ′ = e (K 1 , U ′) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K 1 , U ′) or Res ′ = e (K 1 , K 3 U ′)
The response Res ′ may be obtained as follows.

第3の例では、所定の方法3’を、H(gID )を共通鍵として認証鍵Aを暗号化し、暗号化認証鍵V’を求めてもよい。この場合は、所定の方法6’は、H(W)を共通鍵として暗号文Vを平文M’に復号するとすればよい。 In the third example, a predetermined method 3 ′ may be used to encrypt the authentication key A using H (g ID r ) as a common key to obtain the encrypted authentication key V ′. In this case, the predetermined method 6 ′ may decrypt the ciphertext V into the plaintext M ′ using H (W) as a common key.

第4の例では、ステップS610でセッション情報U’も受信装置500に送信し、所定の方法4’では、リクエストReq’を
Req’=e(K,U’)
のように求める。そして、所定の方法7’では、レスポンスRes’を
Res’=Req’^K
のように求めるとしてもよい。
In the fourth example, the session information U ′ is also transmitted to the receiving device 500 in step S610, and in the predetermined method 4 ′, the request Req ′ is Req ′ = e (K 1 , U ′).
Seek like. Then, in the predetermined method 7 ′, the response Res ′ is changed to Res ′ = Req ′ ^ K 3
You may ask as follows.

所定の方法の組み合わせ2−4
所定の方法1では、受信用秘密鍵K
=K’K
のように求める。所定の方法2’では、代理計算用秘密鍵K
=(K’)−1
のように求める。所定の方法3’では、暗号化認証鍵V’を
V’=A(+)H(gID
のように求める。所定の方法4’では、第2リクエスト作成部520が、乱数rtmpを0以上p−1以下の整数から選択し、隠蔽鍵Ktmp
tmp=rtmp
を求め、リクエストReq’を隠蔽鍵Ktmpを含む情報とする。所定の方法5’では、値Wを
W=Res’^(rtmp −1
のように求める。所定の方法6’では、認証鍵A’を
A’=V’(+)H(W)
のように求める。所定の方法7’では、レスポンスRes’を
Res’=e(Ktmp,U’)^K
のように求める。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(Ktmp,U’) または Res’=e(Ktmp,KU’)
のようにレスポンスRes’を求めてもよい。
Combination of predetermined methods 2-4
In the predetermined method 1, the reception private key K 1 is set to K 1 = K 3 'K 0
Seek like. In the predetermined method 2 ′, the proxy calculation private key K 3 is set to K 3 = (K 2 K 3 ′) −1.
Seek like. In the predetermined method 3 ′, the encrypted authentication key V ′ is set to V ′ = A (+) H (g ID r )
Seek like. In the predetermined method 4 ′, the second request creation unit 520 selects a random number r tmp from integers not less than 0 and not more than p−1, and sets the concealment key K tmp as K tmp = r tmp K 1
And request Req ′ as information including concealment key K tmp . In the predetermined method 5 ′, the value W is set to W = Res ′ ^ (r tmp −1 K 2 )
Seek like. In the predetermined method 6 ′, the authentication key A ′ is set to A ′ = V ′ (+) H (W)
Seek like. In the predetermined method 7 ′, the response Res ′ is set to Res ′ = e (K tmp , U ′) ^ K 3.
Seek like. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K tmp , U ′) or Res ′ = e (K tmp , K 3 U ′)
The response Res ′ may be obtained as follows.

なお、上述の所定の方法の組み合わせの一部を以下の例のように変更してもよい。   In addition, you may change a part of combination of the above-mentioned predetermined method like the following examples.

第1の例では、所定の方法2’を
=(K−1
とし、所定の方法7’を
Res=e(Ktmp,U’)^(K −1
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e((K −1)Ktmp,U’) または Res’=e(Ktmp,(K −1)U’)
のようにレスポンスRes’を求めてもよい。
In the first example, the predetermined method 2 ′ is changed to K 3 = (K 2 ) −1 K 3 ′.
And the predetermined method 7 ′ is Res = e (K tmp , U ′) ^ (K 3 −1 )
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e ((K 3 −1 ) K tmp , U ′) or Res ′ = e (K tmp , (K 3 −1 ) U ′)
The response Res ′ may be obtained as follows.

第2の例では、所定の方法1を
=(K’)−1
とし、所定の方法2’を
=(K−1
とし、所定の方法7’を
Res’=e(Ktmp,U’)^K
としてもよい。ただし、ペアリングeでは式(1)が成り立つので、
Res’=e(Ktmp,U’) または Res’=e(Ktmp,KU’)
のようにレスポンスRes’を求めてもよい。
In the second example, the predetermined method 1 is changed to K 1 = (K 3 ′) −1 K 0
And the predetermined method 2 ′ is K 3 = (K 2 ) −1 K 3
And the predetermined method 7 ′ is Res ′ = e (K tmp , U ′) ^ K 3
It is good. However, since the formula (1) is established in the pairing e,
Res ′ = e (K 3 K tmp , U ′) or Res ′ = e (K tmp , K 3 U ′)
The response Res ′ may be obtained as follows.

第3の例では、所定の方法3を、H(gID )を共通鍵として認証鍵Aを暗号化し、暗号化認証鍵V’を求めてもよい。この場合は、所定の方法6’は、H(W)を共通鍵として暗号化認証鍵V’を認証鍵A’に復号するとすればよい。 In the third example, the predetermined method 3 may be such that the authentication key A is encrypted using H (g ID r ) as a common key to obtain the encrypted authentication key V ′. In this case, the predetermined method 6 ′ may decrypt the encrypted authentication key V ′ into the authentication key A ′ using H (W) as a common key.

第4の例では、ステップS610でセッション情報U’も受信装置500に送信し、所定の方法4’では、リクエストReq’を
Req’=e(rtmp,U’)
のように求める。そして、所定の方法7’では、レスポンスRes’を
Res’=Req’^K
のように求めるとしてもよい。
In the fourth example, the session information U ′ is also transmitted to the receiving apparatus 500 in step S610, and in the predetermined method 4 ′, the request Req ′ is Req ′ = e (r tmp K 1 , U ′).
Seek like. Then, in the predetermined method 7 ′, the response Res ′ is changed to Res ′ = Req ′ ^ K 3
You may ask as follows.

[変形例3]
実施例2変形例3は、受信装置500自体が暗号文識別情報vを生成する点(暗号文識別情報vを受信しない点)と、鍵生成装置400が保護用秘密鍵Kも生成する点を変更した暗号化システムである(実施例1変形例3に相当する)。実施例2変形例3の暗号化システムの構成例は図6である。この場合は、受信装置500は、暗号文識別情報生成部240も備える。そして、秘密鍵を配布する処理フローが図5、暗号文の生成から復号までの処理フローが図8である。実施例2変形例2と実施例2変形例3との相違点は、実施例1変形例2と実施例1変形例3との相違点と同じなので、説明は省略する。
[Modification 3]
Example 2 Modification 3 are that the receiving apparatus 500 itself generates a ciphertext identifier v and (that does not receive the encrypted identification information v), that the key generation device 400 also generates protecting secret key K 2 Is an encryption system (corresponding to the third modification of the first embodiment). Embodiment 2 FIG. 6 shows a configuration example of an encryption system according to a third modification. In this case, the receiving device 500 also includes a ciphertext identification information generation unit 240. FIG. 5 shows a processing flow for distributing a secret key, and FIG. 8 shows a processing flow from generation of ciphertext to decryption. Since the difference between the second modification example and the second modification example 3 is the same as the difference between the first modification example 2 and the first modification example 3, the description thereof will be omitted.

実施例3では、実施例2とは異なる方法で復号履歴蓄積サーバが認証する暗号化システムを示す。図9に実施例3の暗号化システムの構成例を示す。図10に実施例3の暗号化システムの秘密鍵を配布する処理フローを、図11に暗号文の生成から復号までの処理フローを示す。実施例3の暗号化システムは、送信装置100、受信装置501、復号履歴蓄積サーバ601、鍵生成装置700で構成される。   The third embodiment shows an encryption system in which the decryption history storage server authenticates by a method different from that of the second embodiment. FIG. 9 shows a configuration example of the encryption system according to the third embodiment. FIG. 10 shows a processing flow for distributing the secret key of the encryption system according to the third embodiment, and FIG. 11 shows a processing flow from generation of ciphertext to decryption. The encryption system according to the third embodiment includes a transmission device 100, a reception device 501, a decryption history storage server 601, and a key generation device 700.

以下の説明では、kは大きな整数、pはkビットの素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは鍵生成装置400が生成した0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、(+)はビット単位の排他的論理和を示す記号、^はべき乗を示す記号、vは暗号文Vを識別する暗号文識別情報、hは暗号文Vを識別する暗号文識別情報を生成する関数を示す記号、‖はビット列の結合を示す記号とする。 In the following description, k is a large integer, p is a prime number of k bits, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, and e is G 1 × G 1 → G 2 Bi is a bilinear pairing function that maps to H, H is a symbol indicating a hash function that maps an element of group G 2 to an n-bit bit string, P is a generator of group G 1 , and s is 0 or more generated by key generator 400 An integer less than or equal to p−1, P Pub = sP, (P, P Pub ) is a public parameter, MaptoPoint G1 is a function that maps an arbitrary length bit string to the group G 1 , ID is an arbitrary length bit string, Q ID = MaptoPoint G1 (ID), (+) is a symbol indicating exclusive OR in bit units, ^ is a symbol indicating power, v is ciphertext identification information for identifying ciphertext V, and h is a cipher for identifying ciphertext V A symbol indicating a function that generates sentence identification information, and ‖ is a symbol indicating a combination of bit strings. The

送信装置100は、暗号化部110、暗号文送信部120、暗号化記録部190を備える。受信装置501は、属性送信部210、リクエスト作成部220、リクエスト送信部225、復号部230、鍵識別子送信部560、復号記録部295を備える。復号履歴蓄積サーバ601は、レスポンス作成部310、レスポンス送信部315、鍵識別子照合部660、セッション情報蓄積部370、履歴蓄積部380、代理記録部395を備える。鍵生成装置700は、鍵生成部410、鍵分割部420、鍵配布部730、鍵識別子生成部740、鍵生成記録部490を備える。以下に、処理フローを説明しながら、これらの構成部の機能を説明する。   The transmission device 100 includes an encryption unit 110, a ciphertext transmission unit 120, and an encryption recording unit 190. The receiving device 501 includes an attribute transmission unit 210, a request creation unit 220, a request transmission unit 225, a decryption unit 230, a key identifier transmission unit 560, and a decryption recording unit 295. The decryption history storage server 601 includes a response creation unit 310, a response transmission unit 315, a key identifier verification unit 660, a session information storage unit 370, a history storage unit 380, and a proxy recording unit 395. The key generation device 700 includes a key generation unit 410, a key division unit 420, a key distribution unit 730, a key identifier generation unit 740, and a key generation recording unit 490. The functions of these components will be described below while explaining the processing flow.

秘密鍵を配布する処理フロー
ステップS211からS434までは実施例1と同じである。ステップS434の後、鍵識別子生成部740が、受信用秘密鍵Kと代理計算用秘密鍵Kから鍵識別子KIDを生成する(S740)。なお、鍵識別子KIDは、受信用秘密鍵Kと代理計算用秘密鍵Kから特定できる情報であればよい。例えば、K‖Kのハッシュ値を鍵識別子KIDとしてもよいし、K‖K‖Xのように他の情報X(例えば、受信装置200の属性を示すビット列ID)も付加したビット列のハッシュ値を鍵識別子KIDとしてもよい。さらには、後述する実施例3変形例2のように保護用秘密鍵Kも生成するときは、K‖K‖Kのハッシュ値を鍵識別子KIDとしてもよい。
Processing flow steps S211 to S434 for distributing the secret key are the same as those in the first embodiment. After step S434, the key identifier generation unit 740 generates a key identifier K ID from the reception secret key K 1 and the proxy calculation secret key K 3 (S740). The key identifier K ID may be any information that can be specified from the reception secret key K 1 and the proxy calculation secret key K 3 . For example, a hash value of K 1 ‖K 3 may be a key identifier K ID, other information X as K 1 ‖K 3 ‖X (e.g., the bit string ID that indicates the attribute of the receiving apparatus 200) was also added A hash value of the bit string may be used as the key identifier K ID . Further, when the protection secret key K 2 is also generated as in the second modification of the third embodiment described later, the hash value of K 1 ‖K 2 ‖K 3 may be used as the key identifier K ID .

そして、鍵配布部730は、受信用秘密鍵Kと鍵識別子KIDを受信装置501に送信し、受信用秘密鍵Kを送信した受信装置501を識別する受信装置識別情報RIDと代理計算用秘密鍵Kと鍵識別子KIDを復号履歴蓄積サーバ601に送信する(S735)。受信装置501の復号記録部295は、受信用秘密鍵Kを記録する(S293)。復号履歴蓄積サーバ601の代理記録部395は、受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録する(S393)。 Then, the key distribution unit 730 transmits the reception private key K 1 and the key identifier K ID to the reception device 501, and receives the reception device identification information R ID that identifies the reception device 501 that has transmitted the reception private key K 1 and the proxy. transmitting the calculated secret key K 3 and the key identifier K ID to the decoding history storage server 601 (S735). Decoding the recording unit 295 of the receiving apparatus 501 records the received secret key K 1 (S293). Proxy recording unit 395 of the decoding history storage server 601 records the proxy calculation secret key K 3 in association with the receiving apparatus identifying information R ID (S393).

暗号文の生成から復号までの処理フロー
ステップS212からS222までの処理は実施例1と同じである。受信装置501の鍵識別子送信部560は、復号履歴蓄積サーバ601に鍵識別子KIDを送信する(S560)。なお、鍵識別子KIDの送信は、リクエストReqと一緒でもよい。また、何らかの安全な通信手段を利用すればよい。復号履歴蓄積サーバ601の鍵識別子照合部660は、鍵識別子KIDが正しいかを照合する(正しい受信用秘密鍵Kを所有している受信装置501かを確認する)(S560)。照合が失敗した場合は処理を中止する。照合が成功した場合はステップS310に進む。ステップS310、S230、S380は実施例1と同じである。
Processing flow from generation of ciphertext to decryption The processing from step S212 to S222 is the same as in the first embodiment. The key identifier transmission unit 560 of the reception device 501 transmits the key identifier K ID to the decryption history storage server 601 (S560). The key identifier K ID may be transmitted together with the request Req. Any safe communication means may be used. The key identifier verification unit 660 of the decryption history storage server 601 verifies whether the key identifier K ID is correct (confirms whether the reception device 501 owns the correct reception private key K 1 ) (S560). If verification fails, stop processing. If the verification is successful, the process proceeds to step S310. Steps S310, S230, and S380 are the same as those in the first embodiment.

なお、上述の方法に限定する必要はなく、あらかじめ受信装置501と復号履歴蓄積サーバ601が鍵識別子KIDを共有し、受信装置501と復号履歴蓄積サーバ601が、鍵識別子KIDを照合する照合手段を備えていればよい。実施例3はこのような処理なので、実施例1の効果が得られた上で、さらに受信装置が実際に復号できるときのみ復号履歴を記録できる。 It is not necessary to limit to the above-described method, and collation in which the receiving device 501 and the decryption history storage server 601 share the key identifier K ID in advance, and the receiving device 501 and the decryption history storage server 601 collate the key identifier K ID. What is necessary is just to have a means. Since the third embodiment is such a process, the decoding history can be recorded only when the receiving apparatus can actually perform decoding after obtaining the effects of the first embodiment.

[変形例1]
実施例3も暗号文Vを復号する前に受信装置の認証を行う点が実施例1と異なる。しかし、秘密鍵を配布する処理と、復号対象の暗号文Vの生成と復号自体は実施例1と同じである。したがって、実施例1で説明した変形例1〜3は実施例3でも適用できる。
[Modification 1]
The third embodiment also differs from the first embodiment in that the receiving device is authenticated before the ciphertext V is decrypted. However, the process of distributing the secret key and the generation and decryption of the ciphertext V to be decrypted are the same as in the first embodiment. Therefore, the first to third modifications described in the first embodiment can be applied to the third embodiment.

実施例3変形例1は、受信装置501自体が暗号文識別情報vを生成する点(暗号文識別情報vを受信しない点)を変更した暗号化システムである(実施例1変形例1に相当する)。実施例3変形例1の暗号化システムの構成例は図9である。この場合は、受信装置501は、暗号文識別情報生成部240も備える。そして、秘密鍵を配布する処理フローが図10、暗号文の生成から復号までの処理フローが図12である。実施例3と実施例3変形例1との相違点は、実施例1と実施例1変形例1との相違点と同じなので、説明は省略する。   Embodiment 3 Modification 1 is an encryption system in which the receiving device 501 itself generates the ciphertext identification information v (the point that the ciphertext identification information v is not received) is changed (corresponding to the first embodiment modification 1). To do). Embodiment 3 FIG. 9 shows a configuration example of an encryption system according to a first modification. In this case, the receiving device 501 also includes a ciphertext identification information generation unit 240. FIG. 10 shows a processing flow for distributing a secret key, and FIG. 12 shows a processing flow from generation of ciphertext to decryption. The differences between the third embodiment and the third variation of the third embodiment are the same as the differences between the first embodiment and the first variation of the first embodiment.

[変形例2]
実施例3変形例2は、鍵生成装置700が保護用秘密鍵Kも生成する暗号化システムである(実施例1変形例2に相当する)。実施例3変形例2の暗号化システムの構成例は図9である。実施例3変形例2では、受信装置501は、暗号文識別情報生成部240は備えていない。そして、秘密鍵を配布する処理フローが図13、暗号文の生成から復号までの処理フローが図11である。実施例3と実施例3変形例2との相違点は、実施例1と実施例1変形例2との相違点と同じなので、説明は省略する。
[Modification 2]
Embodiment 3 Modification 2 is an encryption system in which the key generation device 700 also generates a protection secret key K 2 (corresponding to Modification 2 of Embodiment 1). Embodiment 3 FIG. 9 shows a configuration example of an encryption system according to a second modification. Third Embodiment In the second modification, the receiving device 501 does not include the ciphertext identification information generation unit 240. FIG. 13 shows a processing flow for distributing a secret key, and FIG. 11 shows a processing flow from generation of ciphertext to decryption. The differences between the third embodiment and the third modification of the third embodiment are the same as the differences between the first embodiment and the second modification of the first embodiment, and the description thereof will be omitted.

[変形例3]
実施例3変形例3は、受信装置501自体が暗号文識別情報vを生成する点(暗号文識別情報vを受信しない点)と、鍵生成装置700が保護用秘密鍵Kも生成する点を変更した暗号化システムである(実施例1変形例3に相当する)。実施例3変形例3の暗号化システムの構成例は図9である。この場合は、受信装置501は、暗号文識別情報生成部240も備える。そして、秘密鍵を配布する処理フローが図13、暗号文の生成から復号までの処理フローが図12である。実施例3変形例2と実施例3変形例3との相違点は、実施例1変形例2と実施例1変形例3との相違点と同じなので、説明は省略する。
[Modification 3]
Example 3 Modification 3 are that the receiving apparatus 501 itself generates a ciphertext identifier v and (that does not receive the encrypted identification information v), that the key generation apparatus 700 generates also protect secret key K 2 Is an encryption system (corresponding to the third modification of the first embodiment). Embodiment 3 FIG. 9 shows a configuration example of an encryption system according to a third modification. In this case, the receiving device 501 also includes a ciphertext identification information generation unit 240. FIG. 13 shows a processing flow for distributing a secret key, and FIG. 12 shows a processing flow from generation of ciphertext to decryption. Since the difference between the third modification example 2 and the third modification example 3 is the same as the difference between the first modification example 2 and the first modification example 3, the description thereof will be omitted.

[プログラム、記録媒体]
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
[Program, recording medium]
The various processes described above are not only executed in time series according to the description, but may also be executed in parallel or individually as required by the processing capability of the apparatus that executes the processes. Needless to say, other modifications are possible without departing from the spirit of the present invention.

また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。   Further, when the above-described configuration is realized by a computer, processing contents of functions that each device should have are described by a program. The processing functions are realized on the computer by executing the program on the computer.

この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。   The program describing the processing contents can be recorded on a computer-readable recording medium. As the computer-readable recording medium, for example, any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.

また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。   The program is distributed by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.

このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。   A computer that executes such a program first stores, for example, a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, the computer reads a program stored in its own recording medium and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially. Also, the program is not transferred from the server computer to the computer, and the above-described processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good. Note that the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).

また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。   In this embodiment, the present apparatus is configured by executing a predetermined program on a computer. However, at least a part of these processing contents may be realized by hardware.

100 送信装置 110 暗号化部
120、121 暗号文送信部 190 暗号化記録部
200、500、501 受信装置 210 属性送信部
220 リクエスト作成部 225 リクエスト送信部
230 復号部 240 暗号文識別情報生成部
290、295 復号記録部
300、600、601 復号履歴蓄積サーバ
310 レスポンス作成部 315 レスポンス送信部
370 セッション情報蓄積部 380 履歴蓄積部
390、395 代理記録部 400、700 鍵生成装置
410 鍵生成部 420 鍵分割部
430、730 鍵配布部 490 鍵生成記録部
520 第2リクエスト作成部 530 第2復号部
550 ハッシュ値計算部 560 鍵識別子送信部
610 認証鍵生成部 620 チャレンジ生成部
630 第2レスポンス作成部 640 認証部
660 鍵識別子照合部 740 鍵識別子生成部
DESCRIPTION OF SYMBOLS 100 Transmission apparatus 110 Encryption part 120, 121 Ciphertext transmission part 190 Encryption recording part 200, 500, 501 Reception apparatus 210 Attribute transmission part 220 Request creation part 225 Request transmission part 230 Decryption part 240 Ciphertext identification information generation part 290, 295 Decryption recording unit 300, 600, 601 Decryption history accumulation server 310 Response creation unit 315 Response transmission unit 370 Session information accumulation unit 380 History accumulation unit 390, 395 Proxy recording unit 400, 700 Key generation device 410 Key generation unit 420 Key division unit 430, 730 Key distribution unit 490 Key generation recording unit 520 Second request generation unit 530 Second decryption unit 550 Hash value calculation unit 560 Key identifier transmission unit 610 Authentication key generation unit 620 Challenge generation unit 630 Second response generation unit 640 Authentication unit 660 keys Besshi collating section 740 key identifier generating unit

Claims (10)

少なくとも送信装置、受信装置、復号履歴蓄積サーバを有する暗号化システムであって、
pは素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、KはK=sQIDのように求められた秘密鍵、K’は0以上p−1以下の整数から選択された分割用乱数、Kは秘密鍵Kと分割用乱数K’を用いて所定の方法1で求められた受信用秘密鍵、Kは分割用乱数K’を用いて所定の方法2で求められた代理計算用秘密鍵、rは0以上p−1以下の整数から選択された乱数、UはU=rPのように求められたセッション情報、gIDはgID=e(QID,PPub)のように求められた値、VはH(gID )を用いて所定の方法3で平文Mを暗号化した暗号文、vは暗号文Vを識別する暗号文識別情報、hは暗号文Vを識別する暗号文識別情報を生成する関数を示す記号であり、
前記送信装置は、少なくとも前記受信装置に暗号文Vを送信し、前記復号履歴蓄積サーバにセッション情報Uと暗号文識別情報vとを送信する暗号文送信部を備え、
前記受信装置は、
受信用秘密鍵Kを記録する復号記録部と、
受信用秘密鍵Kを用いて所定の方法4でリクエストReqを作成するリクエスト作成部と、
前記リクエストReq、v=h(V)を満たす暗号文識別情報v、当該受信装置を特定する受信装置識別情報RIDとを前記復号履歴蓄積サーバに送信するリクエスト送信部と、
前記復号履歴蓄積サーバから受信したレスポンスResを用いて前記所定の方法2と前記所定の方法4に対応した方法である所定の方法5にしたがってgID の値Wを求め、H(W)を用いて前記所定の方法3に対応した方法である所定の方法6にしたがって暗号文Vを復号して平文M’に復号する復号部と、
を備え、
前記復号履歴蓄積サーバは、
受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録する代理記録部と、
前記送信装置から受信したセッション情報Uと暗号文識別情報vとを対応付けて記録するセッション情報蓄積部と、
前記受信装置から受信した暗号文識別情報vと一致する前記セッション情報蓄積部に記録された暗号文識別情報vに対応付けられたセッション情報Uを取得し、前記受信装置から受信した受信装置識別情報RIDと一致する前記代理記録部に記録された受信装置識別情報RIDに対応付けられた代理計算用秘密鍵Kを取得し、前記所定の方法1と前記所定の方法2と前記所定の方法4に対応した方法である所定の方法7にしたがって前記セッション情報Uと前記代理計算用秘密鍵Kを用いた計算を行ってレスポンスResを求めるレスポンス作成部と、
前記レスポンスResを前記受信装置に送信するレスポンス送信部と、
レスポンスResを前記受信装置に送信したときは、暗号文識別情報vと、受信装置識別情報RIDと、時刻とを対応付けて記録する履歴蓄積部と、
を備える
暗号化システム。
An encryption system having at least a transmission device, a reception device, and a decryption history storage server,
p is a prime number, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, e is a bilinear pairing function that maps as G 1 × G 1 → G 2 , and H is a group G A symbol indicating a hash function that maps an element of 2 to an n-bit bit string, P is a generator of the group G 1 , s is an integer of 0 to p−1, P Pub = sP, (P, P Pub ) is public parameter, MaptoPoint G1 function which maps a bit string of arbitrary length to the original group G 1, ID is arbitrary length bit string, Q ID = MaptoPoint G1 (ID ), K 0 was determined as K 0 = sQ ID The secret key, K 3 ′ is a random number for division selected from an integer between 0 and p−1, and K 1 is for reception obtained by the predetermined method 1 using the secret key K 0 and the random number for division K 3 ′. secret key, K 3 is representative calculation secret key obtained by a predetermined method 2 using the divided random number K 3 ', r is 0 Random number chosen from the upper p-1 an integer, U is U = session information obtained as rP, g ID is g ID = e (Q ID, P Pub) values were obtained as, V Is the ciphertext obtained by encrypting the plaintext M by the predetermined method 3 using H (g ID r ), v is the ciphertext identification information for identifying the ciphertext V, and h is the ciphertext identification information for identifying the ciphertext V A symbol indicating the function to be generated,
The transmitting device includes a ciphertext transmitting unit that transmits ciphertext V to at least the receiving device and transmits session information U and ciphertext identification information v to the decryption history storage server,
The receiving device is:
A decryption recording unit for recording the reception private key K 1 ;
A request creation unit that creates a request Req by a predetermined method 4 using the reception private key K 1 ;
A request transmission unit that transmits the request Req, ciphertext identification information v that satisfies v = h (V), and reception device identification information R ID that identifies the reception device, to the decryption history storage server;
Using the response Res received from the decryption history storage server, the value W of g ID r is determined according to the predetermined method 2 corresponding to the predetermined method 2 and the predetermined method 4, and H (W) is obtained. A decryption unit that decrypts the ciphertext V according to the predetermined method 6 that is a method corresponding to the predetermined method 3 and decrypts it into the plaintext M ′;
With
The decryption history storage server
A proxy recording unit that records the proxy calculation secret key K 3 in association with the receiving device identification information R ID ;
A session information storage unit that records session information U and ciphertext identification information v received from the transmission device in association with each other;
Receiving device identification information received from the receiving device by acquiring session information U associated with the ciphertext identifying information v recorded in the session information storage unit that matches the ciphertext identifying information v received from the receiving device. A proxy calculation secret key K 3 associated with the receiving device identification information R ID recorded in the proxy recording unit that matches the R ID is acquired, and the predetermined method 1, the predetermined method 2, and the predetermined A response creation unit that calculates a response Res by performing calculation using the session information U and the proxy calculation secret key K 3 according to a predetermined method 7 that is a method corresponding to the method 4;
A response transmitter for transmitting the response Res to the receiving device;
When the response Res is transmitted to the receiving device, the history storage unit records the ciphertext identification information v, the receiving device identification information R ID, and the time in association with each other,
An encryption system comprising:
請求項1記載の暗号化システムであって、
前記所定の方法2では、
保護用秘密鍵Kを0以上p−1以下の整数から選択し、分割用乱数K’と保護用秘密鍵Kを用いて所定の方法2’にしたがって代理計算用秘密鍵Kを求め、
前記復号記録部は保護用秘密鍵Kも記録し、
前記所定の方法5は、前記所定の方法2’にも対応した方法で、保護用秘密鍵Kも用いて値Wを求める
ことを特徴とする暗号化システム。
The encryption system according to claim 1,
In the predetermined method 2,
The protection secret key K 2 is selected from an integer between 0 and p−1, and the proxy calculation secret key K 3 is selected according to the predetermined method 2 ′ using the split random number K 3 ′ and the protection secret key K 2. Seeking
The decryption recording unit also records a protective secret key K 2 ,
The predetermined method 5 is a method corresponding to the predetermined method 2 ′, and the value W is obtained using the protective secret key K 2 as well.
請求項1記載の暗号化システムであって、
(+)はビット単位の排他的論理和を示す記号、^はべき乗を示す記号とし、
前記所定の方法1では、受信用秘密鍵K
=K’K
のように求め、
前記所定の方法2では、代理計算用秘密鍵K
=K−1
のように求め、
前記所定の方法3では、暗号文Vを
V=M(+)H(gID
のように求め、
前記所定の方法4では、前記リクエスト作成部が、乱数rtmpを0以上p−1以下の整数から選択し、隠蔽鍵Ktmp
tmp=rtmp
を求め、リクエストReqを隠蔽鍵Ktmpを含む情報とし、
前記所定の方法5では、値Wを
W=Res^rtmp −1
のように求め、
前記所定の方法6では、平文M’を
M’=V(+)H(W)
のように求め、
前記所定の方法7では、レスポンスResを
Res=e(Ktmp,U)^K
のように求める
ことを特徴とする暗号化システム。
The encryption system according to claim 1,
(+) Is a symbol indicating a bitwise exclusive OR, ^ is a symbol indicating a power,
In the predetermined method 1, the reception private key K 1 is set as K 1 = K 3 'K 0
Asking,
Wherein the predetermined method 2, the proxy calculation secret key K 3 K 3 = K 3 ' -1
Asking,
In the predetermined method 3, the ciphertext V is changed to V = M (+) H (g ID r )
Asking,
In the predetermined method 4, the request creation unit selects a random number r tmp from an integer of 0 to p−1 and sets a concealment key K tmp as K tmp = r tmp K 1
And request Req as information including the concealment key K tmp ,
In the predetermined method 5, the value W is set to W = Res ^ r tmp −1
Asking,
In the predetermined method 6, the plaintext M ′ is changed to M ′ = V (+) H (W)
Asking,
In the predetermined method 7, the response Res is Res = e (K tmp , U) ^ K 3.
An encryption system characterized by
請求項2記載の暗号化システムであって、
(+)はビット単位の排他的論理和を示す記号、^はべき乗を示す記号とし、
前記所定の方法1では、受信用秘密鍵K
=K’K
のように求め、
前記所定の方法2’では、代理計算用秘密鍵K
=(K’)−1
のように求め、
前記所定の方法3では、暗号文Vを
V=M(+)H(gID
のように求め、
前記所定の方法4では、前記リクエスト作成部が、乱数rtmpを0以上p−1以下の整数から選択し、隠蔽鍵Ktmp
tmp=rtmp
を求め、リクエストReqを隠蔽鍵Ktmpを含む情報とし、
前記所定の方法5では、値Wを
W=Res^rtmp −1
のように求め、
前記所定の方法6では、平文M’を
M’=V(+)H(W)
のように求め、
前記所定の方法7では、レスポンスResを
Res=e(Ktmp,U)^K
のように求める
ことを特徴とする暗号化システム。
The encryption system according to claim 2, wherein
(+) Is a symbol indicating a bitwise exclusive OR, ^ is a symbol indicating a power,
In the predetermined method 1, the reception private key K 1 is set as K 1 = K 3 'K 0
Asking,
In the predetermined method 2 ′, the proxy calculation private key K 3 is set to K 3 = (K 2 K 3 ′) −1.
Asking,
In the predetermined method 3, the ciphertext V is changed to V = M (+) H (g ID r )
Asking,
In the predetermined method 4, the request creation unit selects a random number r tmp from an integer of 0 to p−1 and sets a concealment key K tmp as K tmp = r tmp K 1
And request Req as information including the concealment key K tmp ,
In the predetermined method 5, the value W is changed to W = Res ^ r tmp −1 K 2.
Asking,
In the predetermined method 6, the plaintext M ′ is changed to M ′ = V (+) H (W)
Asking,
In the predetermined method 7, the response Res is Res = e (K tmp , U) ^ K 3.
An encryption system characterized by
請求項1から4のいずれかに記載の暗号化システムであって、
‖はビット列の結合を示す記号、H’はビット列に対するハッシュ値を求めるハッシュ関数を示す記号であり、
前記復号履歴蓄積サーバは、
認証鍵Aと0以上p−1以下の整数である乱数aを生成し、H(gID )を用いて所定の方法3’で認証鍵Aを暗号化して暗号化認証鍵V’を求め、U’=aPのようにセッション情報U’を計算し、前記暗号化認証鍵V’のみ若しくは前記暗号化認証鍵V’と前記セッション情報U’を前記受信装置に送信する認証鍵生成部と、
チャレンジBを生成し、前記受信装置に送信するチャレンジ生成部
も備え、
前記受信装置は、さらに
受信用秘密鍵Kを用いて所定の方法4’でリクエストReq’を作成する第2リクエスト作成部と、
前記復号履歴蓄積サーバから受信したレスポンスRes’を用いて前記所定の方法2と前記所定の方法4’に対応した方法である所定の方法5’にしたがってgID の値Wを求め、H(W)を用いて前記所定の方法3’に対応した方法である所定の方法6’にしたがって暗号化認証鍵V’を復号して認証鍵A’に復号する第2復号部と、
D’=H’(A’‖B)のようにハッシュ値D’を求め、前記復号履歴蓄積サーバに送信するハッシュ値計算部と
を備え、
前記復号履歴蓄積サーバは、さらに
前記所定の方法1と前記所定の方法2と前記所定の方法4’に対応した方法である所定の方法7’にしたがって前記セッション情報U’と前記代理計算用秘密鍵Kを用いた計算を行ってレスポンスRes’を求める第2レスポンス作成部と、
D=H’(A‖B)のようにハッシュ値Dを求め、D=D’であることを確認する認証部
を備える
ことを特徴とする暗号化システム。
The encryption system according to any one of claims 1 to 4,
‖ Is a symbol indicating a combination of bit strings, H ′ is a symbol indicating a hash function for obtaining a hash value for the bit strings,
The decryption history storage server
An authentication key A and a random number a that is an integer between 0 and p−1 are generated, and an encrypted authentication key V ′ is obtained by encrypting the authentication key A by a predetermined method 3 ′ using H (g ID a ). , U ′ = aP, and calculates the session information U ′ and sends only the encrypted authentication key V ′ or the encrypted authentication key V ′ and the session information U ′ to the receiving device; ,
A challenge generator for generating challenge B and transmitting it to the receiving device;
The receiving device further includes a second request creating unit that creates a request Req ′ by a predetermined method 4 ′ using the reception secret key K 1 ;
Using the response Res ′ received from the decryption history storage server, a value W of g ID a is obtained according to a predetermined method 5 ′ that is a method corresponding to the predetermined method 2 and the predetermined method 4 ′, and H ( A second decryption unit that decrypts the encrypted authentication key V ′ into the authentication key A ′ according to a predetermined method 6 ′ that is a method corresponding to the predetermined method 3 ′ using W);
A hash value calculation unit that obtains a hash value D ′ as D ′ = H ′ (A′‖B) and transmits the hash value D ′ to the decryption history storage server,
The decryption history storage server further includes the session information U ′ and the proxy calculation secret according to a predetermined method 7 ′ that is a method corresponding to the predetermined method 1, the predetermined method 2, and the predetermined method 4 ′. A second response creation unit for calculating a response Res ′ by performing a calculation using the key K 3 ;
An encryption system comprising: an authentication unit that obtains a hash value D as D = H ′ (A‖B) and confirms that D = D ′.
送信装置、受信装置、復号履歴蓄積サーバを用いた復号方法であって、
pは素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、KはK=sQIDのように求められた秘密鍵、K’は0以上p−1以下の整数から選択された分割用乱数、Kは秘密鍵Kと分割用乱数K’を用いて所定の方法1で求められた受信用秘密鍵、Kは分割用乱数K’を用いて所定の方法2で求められた代理計算用秘密鍵、rは0以上p−1以下の整数から選択された乱数、UはU=rPのように求められたセッション情報、gIDはgID=e(QID,PPub)のように求められた値、VはH(gID )を用いて所定の方法3で平文Mを暗号化した暗号文、vは暗号文Vを識別する暗号文識別情報、hは暗号文Vを識別する暗号文識別情報を生成する関数を示す記号であり、
前記受信装置は、復号記録部に受信用秘密鍵Kを記録しておき、
前記復号履歴蓄積サーバは、代理記録部に受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録しておき、
前記送信装置が、少なくとも前記受信装置に暗号文Vを送信し、前記復号履歴蓄積サーバにセッション情報Uと暗号文識別情報vとを送信する暗号文送信ステップと、
前記復号履歴蓄積サーバが、セッション情報蓄積部に前記送信装置から受信したセッション情報Uと暗号文識別情報vとを対応付けて記録するセッション情報蓄積ステップと、
前記受信装置が、受信用秘密鍵Kを用いて所定の方法4でリクエストReqを作成するリクエスト作成ステップと、
前記受信装置が、前記リクエストReq、v=h(V)を満たす暗号文識別情報v、当該受信装置を特定する受信装置識別情報RIDとを前記復号履歴蓄積サーバに送信するリクエスト送信ステップと、
前記復号履歴蓄積サーバが、前記受信装置から受信した暗号文識別情報vと一致する前記セッション情報蓄積部に記録された暗号文識別情報vに対応付けられたセッション情報Uを取得し、前記受信装置から受信した受信装置識別情報RIDと一致する前記代理記録部に記録された受信装置識別情報RIDに対応付けられた代理計算用秘密鍵Kを取得し、前記所定の方法1と前記所定の方法2と前記所定の方法4に対応した方法である所定の方法7にしたがって前記セッション情報Uと前記代理計算用秘密鍵Kを用いた計算を行ってレスポンスResを求めるレスポンス作成ステップと、
前記復号履歴蓄積サーバが、前記レスポンスResを前記受信装置に送信するレスポンス送信ステップと、
前記復号履歴蓄積サーバが、履歴蓄積部に暗号文識別情報vと、受信装置識別情報RIDと、時刻とを対応付けて記録する履歴蓄積ステップと、
前記受信装置が、前記復号履歴蓄積サーバから受信したレスポンスResを用いて前記所定の方法2と前記所定の方法4に対応した方法である所定の方法5にしたがってgID の値Wを求め、H(W)を用いて前記所定の方法3に対応した方法である所定の方法6にしたがって暗号文Vを復号して平文M’に復号する復号ステップと、
を有する復号方法。
A decoding method using a transmission device, a reception device, and a decoding history storage server,
p is a prime number, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, e is a bilinear pairing function that maps as G 1 × G 1 → G 2 , and H is a group G A symbol indicating a hash function that maps an element of 2 to an n-bit bit string, P is a generator of the group G 1 , s is an integer of 0 to p−1, P Pub = sP, (P, P Pub ) is public parameter, MaptoPoint G1 function which maps a bit string of arbitrary length to the original group G 1, ID is arbitrary length bit string, Q ID = MaptoPoint G1 (ID ), K 0 was determined as K 0 = sQ ID The secret key, K 3 ′ is a random number for division selected from an integer between 0 and p−1, and K 1 is for reception obtained by the predetermined method 1 using the secret key K 0 and the random number for division K 3 ′. secret key, K 3 is representative calculation secret key obtained by a predetermined method 2 using the divided random number K 3 ', r is 0 Random number chosen from the upper p-1 an integer, U is U = session information obtained as rP, g ID is g ID = e (Q ID, P Pub) values were obtained as, V Is the ciphertext obtained by encrypting the plaintext M by the predetermined method 3 using H (g ID r ), v is the ciphertext identification information for identifying the ciphertext V, and h is the ciphertext identification information for identifying the ciphertext V A symbol indicating the function to be generated,
The receiving device records the reception secret key K 1 in the decryption recording unit,
The decryption history storage server records the proxy calculation secret key K 3 in the proxy recording unit in association with the receiving device identification information R ID ,
A ciphertext transmitting step in which the transmitting device transmits ciphertext V to at least the receiving device and transmits session information U and ciphertext identification information v to the decryption history storage server;
A session information storage step in which the decryption history storage server records the session information U received from the transmission device and the ciphertext identification information v in association with each other in a session information storage unit;
A request creating step in which the receiving device creates a request Req by a predetermined method 4 using the reception private key K 1 ;
A request transmission step in which the receiving device transmits ciphertext identification information v satisfying the request Req, v = h (V), and receiving device identification information R ID specifying the receiving device to the decryption history storage server;
The decryption history storage server acquires session information U associated with the ciphertext identification information v recorded in the session information storage unit that matches the ciphertext identification information v received from the receiving device, and the receiving device It said proxy recording unit acquires the proxy computing for the secret key K 3 associated with the recorded received device identification information R ID to the said predetermined method 1 given that matches the received device identification information R ID received from A response creation step of calculating a response Res by performing calculation using the session information U and the proxy calculation private key K 3 according to the predetermined method 7 corresponding to the method 2 and the predetermined method 4;
A response sending step in which the decryption history storage server sends the response Res to the receiving device;
A history accumulation step in which the decryption history accumulation server records the ciphertext identification information v, the reception device identification information R ID, and the time in association with each other in the history accumulation unit;
The receiving device obtains a value W of g ID r according to a predetermined method 5 that is a method corresponding to the predetermined method 2 and the predetermined method 4 using the response Res received from the decryption history storage server, A decrypting step of decrypting the ciphertext V according to a predetermined method 6 that is a method corresponding to the predetermined method 3 using H (W) and decrypting it into a plaintext M ′;
A decryption method.
pは素数、Gは位数pの巡回加算群、Pは群Gの生成元、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、KはK=sQIDのように求められた秘密鍵、K’は0以上p−1以下の整数から選択された分割用乱数、Kは秘密鍵Kと分割用乱数K’を用いて所定の方法1で求められた受信用秘密鍵、Kは分割用乱数K’を用いて所定の方法2で求められた代理計算用秘密鍵、rは0以上p−1以下の整数から選択された乱数、UはU=rPのように求められたセッション情報、vは暗号文Vを識別する暗号文識別情報、Reqは受信用秘密鍵Kを用いて所定の方法4で作成されたリクエストであり、
受信装置識別情報RIDに対応付けて代理計算用秘密鍵Kを記録する代理記録部と、
送信装置から受信したセッション情報Uと暗号文識別情報vとを対応付けて記録するセッション情報蓄積部と、
受信装置からリクエストReqと暗号文識別情報vと受信装置識別情報RIDを受信し、前記受信装置から受信した暗号文識別情報vと一致する前記セッション情報蓄積部に記録された暗号文識別情報vに対応付けられたセッション情報Uを取得し、前記受信装置の受信装置識別情報RIDと一致する前記代理記録部に記録された受信装置識別情報RIDに対応付けられた代理計算用秘密鍵Kを取得し、前記所定の方法1と前記所定の方法2と前記所定の方法4に対応した方法である所定の方法7にしたがって前記セッション情報Uと前記代理計算用秘密鍵Kを用いた計算を行ってレスポンスResを求めるレスポンス作成部と、
前記レスポンスResを前記受信装置に送信するレスポンス送信部と、
レスポンスResを前記受信装置に送信したときは、暗号文識別情報vと、受信装置識別情報RIDと、時刻とを対応付けて記録する履歴蓄積部と、
を備える復号履歴蓄積サーバ。
p is a prime number, G 1 is cyclic addition group of order p, P is generator of the group G 1, MaptoPoint G1 function which maps a bit string of arbitrary length to the original group G 1, ID is arbitrary length bit string, Q ID = MaptoPoint G1 (ID), K 0 is a secret key obtained as K 0 = sQ ID , K 3 ′ is a random number for division selected from integers of 0 to p−1, and K 1 is a secret key The reception private key obtained by the predetermined method 1 using K 0 and the dividing random number K 3 ′, and K 3 the proxy calculation private key obtained by the predetermined method 2 using the dividing random number K 3 ′ , R is a random number selected from integers between 0 and p−1, U is session information obtained as U = rP, v is ciphertext identification information for identifying ciphertext V, and Req is a reception private key A request made by the predetermined method 4 using K 1 ,
A proxy recording unit that records the proxy calculation secret key K 3 in association with the receiving device identification information R ID ;
A session information storage unit that records session information U and ciphertext identification information v received from the transmission device in association with each other;
The request Req, the ciphertext identification information v, and the reception device identification information R ID are received from the receiving device, and the ciphertext identification information v recorded in the session information storage unit that matches the ciphertext identification information v received from the receiving device. The proxy information secret key K associated with the receiving device identification information R ID recorded in the proxy recording unit that matches the receiving device identification information R ID of the receiving device is obtained. 3 and using the session information U and the proxy calculation private key K 3 according to a predetermined method 7 corresponding to the predetermined method 1, the predetermined method 2 and the predetermined method 4. A response creation unit that calculates and obtains a response Res;
A response transmitter for transmitting the response Res to the receiving device;
When the response Res is transmitted to the receiving device, the history storage unit records the ciphertext identification information v, the receiving device identification information R ID, and the time in association with each other,
A decryption history storage server comprising:
pは素数、Gは位数pの巡回加算群、Gは位数pの巡回群、eはG×G→Gのように写像する双線形ペアリング関数、Hは群Gの元をnビットのビット列に写像するハッシュ関数を示す記号、Pは群Gの生成元、sは0以上p−1以下の整数、PPub=sP、(P,PPub)は公開パラメータ、MaptoPointG1は任意長のビット列を群Gの元に写像する関数、IDは任意長のビット列、QID=MaptoPointG1(ID)、KはK=sQIDのように求められた秘密鍵、K’は0以上p−1以下の整数から選択された分割用乱数、Kは秘密鍵Kと分割用乱数K’を用いて所定の方法1で求められた受信用秘密鍵、Kは分割用乱数K’を用いて所定の方法2で求められた代理計算用秘密鍵、rは0以上p−1以下の整数から選択された乱数、UはU=rPのように求められたセッション情報、gIDはgID=e(QID,PPub)のように求められた値、VはH(gID )を用いて所定の方法3で平文Mを暗号化した暗号文、vは暗号文Vを識別する暗号文識別情報であり、
受信用秘密鍵Kを記録する復号記録部と、
受信用秘密鍵Kを用いて所定の方法4でリクエストReqを作成するリクエスト作成部と、
前記リクエストReq、暗号文識別情報v、受信装置識別情報RIDを復号履歴蓄積サーバに送信するリクエスト送信部と、
前記所定の方法1と前記所定の方法2と前記所定の方法4に対応した方法である所定の方法7にしたがって前記セッション情報Uと前記代理計算用秘密鍵Kを用いた計算を行って求められたレスポンスResを前記復号履歴蓄積サーバから受信し、レスポンスResを用いて前記所定の方法2と前記所定の方法4に対応した方法である所定の方法5にしたがってgID の値Wを求め、H(W)を用いて前記所定の方法3に対応した方法である所定の方法6にしたがって暗号文Vを復号して平文M’に復号する復号部と、
を備える受信装置。
p is a prime number, G 1 is a cyclic addition group of order p, G 2 is a cyclic group of order p, e is a bilinear pairing function that maps as G 1 × G 1 → G 2 , and H is a group G A symbol indicating a hash function that maps an element of 2 to an n-bit bit string, P is a generator of the group G 1 , s is an integer of 0 to p−1, P Pub = sP, (P, P Pub ) is public parameter, MaptoPoint G1 function which maps a bit string of arbitrary length to the original group G 1, ID is arbitrary length bit string, Q ID = MaptoPoint G1 (ID ), K 0 was determined as K 0 = sQ ID The secret key, K 3 ′ is a random number for division selected from an integer between 0 and p−1, and K 1 is for reception obtained by the predetermined method 1 using the secret key K 0 and the random number for division K 3 ′. secret key, K 3 is representative calculation secret key obtained by a predetermined method 2 using the divided random number K 3 ', r is 0 Random number chosen from the upper p-1 an integer, U is U = session information obtained as rP, g ID is g ID = e (Q ID, P Pub) values were obtained as, V Is a ciphertext obtained by encrypting the plaintext M by the predetermined method 3 using H (g ID r ), v is ciphertext identification information for identifying the ciphertext V,
A decryption recording unit for recording the reception private key K 1 ;
A request creation unit that creates a request Req by a predetermined method 4 using the reception private key K 1 ;
A request transmission unit that transmits the request Req, ciphertext identification information v, and reception device identification information R ID to a decryption history storage server;
Obtained by performing a calculation using the session information U and the proxy calculation secret key K 3 according to a predetermined method 7 corresponding to the predetermined method 1, the predetermined method 2 and the predetermined method 4. The response Res received is received from the decryption history storage server, and the value W of g ID r is obtained using the response Res according to the predetermined method 2 that is a method corresponding to the predetermined method 2 and the predetermined method 4. A decryption unit that decrypts the ciphertext V according to a predetermined method 6 that is a method corresponding to the predetermined method 3 using H (W), and decrypts it into a plaintext M ′;
A receiving device.
請求項1から5のいずれかに記載の暗号化システムに含まれる送信装置であって、
平文Mを前記所定の方法3で暗号化して暗号文Vを求める暗号化部と、
受信装置に少なくとも暗号文Vを送信し、復号履歴蓄積サーバにセッション情報Uと暗号文識別情報vとを送信する暗号文送信部と
を備える送信装置。
A transmission device included in the encryption system according to any one of claims 1 to 5,
An encryption unit for encrypting the plaintext M by the predetermined method 3 to obtain the ciphertext V;
A transmission apparatus comprising: a ciphertext transmission unit that transmits at least ciphertext V to a reception apparatus and transmits session information U and ciphertext identification information v to a decryption history storage server.
請求項7記載の復号履歴蓄積サーバ、請求項8記載の受信装置、請求項9記載の送信装置のいずれかとしてコンピュータを機能させるためのプログラム。
A program for causing a computer to function as any one of the decoding history storage server according to claim 7, the receiving device according to claim 8, and the transmitting device according to claim 9.
JP2011140313A 2011-06-24 2011-06-24 ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM Active JP5496957B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011140313A JP5496957B2 (en) 2011-06-24 2011-06-24 ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011140313A JP5496957B2 (en) 2011-06-24 2011-06-24 ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM

Publications (2)

Publication Number Publication Date
JP2013009148A JP2013009148A (en) 2013-01-10
JP5496957B2 true JP5496957B2 (en) 2014-05-21

Family

ID=47676147

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011140313A Active JP5496957B2 (en) 2011-06-24 2011-06-24 ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM

Country Status (1)

Country Link
JP (1) JP5496957B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002359615A (en) * 2001-06-01 2002-12-13 Toshiba Corp Private key control method for public key encryption system
JP2006178125A (en) * 2004-12-22 2006-07-06 Hitachi Ltd Method and apparatus for computing elliptic curve tate pairing
JP5161177B2 (en) * 2009-09-04 2013-03-13 日本電信電話株式会社 Proxy calculation request device, proxy calculation request method, proxy calculation request program, recording medium
JP5469618B2 (en) * 2011-01-19 2014-04-16 日本電信電話株式会社 Encryption system, decryption method, key update method, key generation device, reception device, proxy calculation device, program

Also Published As

Publication number Publication date
JP2013009148A (en) 2013-01-10

Similar Documents

Publication Publication Date Title
US10785019B2 (en) Data transmission method and apparatus
AU2017396530B2 (en) Addressing a trusted execution environment using encryption key
CN110214440B (en) Computing system, method for transmitting protected data and readable storage medium
US8462955B2 (en) Key protectors based on online keys
JP5562687B2 (en) Securing communications sent by a first user to a second user
AU2017396531B2 (en) Addressing a trusted execution environment using signing key
WO2018025991A1 (en) Communication system, communication client, communication server, communication method, and program
US20110194698A1 (en) Key Sharing System
JP6497747B2 (en) Key exchange method, key exchange system
KR20170035665A (en) Apparatus and method for exchanging encryption key
JP2013207376A (en) Information processing device and program
JP2012150378A (en) Proxy re-encryption system, key generation device, re-encryption device, proxy re-encryption method, and program
WO2018140171A1 (en) Addressing a trusted execution environment using clean room provisioning
KR101016009B1 (en) Method for data encryption and decryption using location information
JP2024511236A (en) Computer file security encryption method, decryption method and readable storage medium
JPWO2016199507A1 (en) KEY EXCHANGE METHOD, KEY EXCHANGE SYSTEM, KEY DISTRIBUTION DEVICE, COMMUNICATION DEVICE, AND PROGRAM
JP5469618B2 (en) Encryption system, decryption method, key update method, key generation device, reception device, proxy calculation device, program
JP2012029271A (en) Encryption device, decryption device, encryption system, encryption method and program
JP5337076B2 (en) Secret calculation system, secret calculation method, unauthorized use prevention method
JP5496957B2 (en) ENCRYPTION SYSTEM, DECRYPTION METHOD, DECRYPTION HISTORY SERVER, RECEPTION DEVICE, TRANSMISSION DEVICE, PROGRAM
JP6165044B2 (en) User authentication apparatus, system, method and program
KR101188659B1 (en) Method for protecting the digital contents between player and cartridges
NZ754540B2 (en) Addressing a trusted execution environment using signing key
Makvandi Microcontroller-based Implementation of ParseKey+ for Limited Resources Embedded Applications
JP2005269587A (en) Key sharing system, encryption system and file authentication system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130722

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140213

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20140225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140305

R150 Certificate of patent or registration of utility model

Ref document number: 5496957

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150