JP5596612B2 - Decoding control system and decoding control method - Google Patents

Decoding control system and decoding control method Download PDF

Info

Publication number
JP5596612B2
JP5596612B2 JP2011087995A JP2011087995A JP5596612B2 JP 5596612 B2 JP5596612 B2 JP 5596612B2 JP 2011087995 A JP2011087995 A JP 2011087995A JP 2011087995 A JP2011087995 A JP 2011087995A JP 5596612 B2 JP5596612 B2 JP 5596612B2
Authority
JP
Japan
Prior art keywords
decoding
input information
output information
unit
calculation unit
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
JP2011087995A
Other languages
Japanese (ja)
Other versions
JP2012220814A (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 JP2011087995A priority Critical patent/JP5596612B2/en
Publication of JP2012220814A publication Critical patent/JP2012220814A/en
Application granted granted Critical
Publication of JP5596612B2 publication Critical patent/JP5596612B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、暗号文の復号技術に関し、特に、暗号文の復号能力を制御する技術に関する。   The present invention relates to a ciphertext decryption technique, and particularly to a technique for controlling ciphertext decryption ability.

公開鍵暗号方式や共通鍵暗号方式などの暗号方式で暗号化された暗号文を復号するためには、特定の復号鍵が必要である(例えば、非特許文献1参照)。これを利用し、復号装置に復号鍵を与えるか否かによって復号装置による暗号文の復号能力を制御することが可能である。   In order to decrypt a ciphertext encrypted by an encryption method such as a public key encryption method or a common key encryption method, a specific decryption key is required (see, for example, Non-Patent Document 1). Using this, it is possible to control the decryption ability of the ciphertext by the decryption device depending on whether or not a decryption key is given to the decryption device.

Taher Elgamal, "A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms," IEEE Transactions on Information Theory, v. IT-31, n. 4, 1985, pp. 469-472 or CRYPTO 84, pp. 10-18, Springer-Verlag.Taher Elgamal, "A Public-Key Cryptosystem and a Signature Scheme Based on Discrete Logarithms," IEEE Transactions on Information Theory, v. IT-31, n. 4, 1985, pp. 469-472 or CRYPTO 84, pp. 10- 18, Springer-Verlag.

しかしながら、復号装置に復号鍵を与えるか否かによって復号装置による暗号文の復号能力を制御する方法では、復号装置に復号鍵を与えることに起因する問題点がある。例えば、この方法では復号装置に復号鍵を与えた後は復号装置の復号能力を再び制限することができず、さらに、復号装置がどのような復号鍵に対応する暗号文を復号しようとしているのかについての情報が復号鍵を提供する側に知られてしまう。   However, in the method of controlling the decryption ability of the ciphertext by the decryption device depending on whether or not the decryption device is given a decryption key, there is a problem caused by giving the decryption device a decryption key. For example, in this method, after giving a decryption key to the decryption device, the decryption capability of the decryption device cannot be restricted again, and what kind of decryption key the decryption device is trying to decrypt? The information about is known to the side providing the decryption key.

本発明はこのような点に鑑みてなされたものであり、復号装置に復号鍵を与えることなく、復号装置による暗号文の復号能力を制御する技術を提供することを目的とする。   The present invention has been made in view of these points, and an object of the present invention is to provide a technique for controlling the decryption capability of a ciphertext by a decryption device without giving a decryption key to the decryption device.

本発明では、G,Hを巡回群、f(x)を群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X,Xを群Gに値を持つ確率変数、xを確率変数Xの実現値、xを確率変数Xの実現値、a,bを互いに素である自然数として、復号装置が、暗号文xに対応する群Hの元である第一入力情報τ及び第二入力情報τを出力し、復号能力提供装置が、第一入力情報τを用い、或る確率より大きな確率でf(τ)を正しく計算し、演算結果を第一出力情報zとして出力可能であり、第二入力情報τを用い、或る確率より大きな確率でf(τ)を正しく計算し、演算結果を第二出力情報zとして出力可能であり、復号装置が、第一出力情報zから演算結果u=f(x)を生成し、第二出力情報zから演算結果v=f(x)を生成し、演算結果u及びvがu=vを満たす場合に、a’a+b’b=1を満たす整数a’,b’についてのub’a’を出力する。復号制御装置は、復号装置の復号処理を制御する復号制御命令を復号能力提供装置に出力し、復号能力提供装置は、復号制御命令に従って第一出力情報z及び第二出力情報zの両方の出力の有無を制御する。 In the present invention, decryption functions X 1 , X 2 for obtaining elements of the group G by decrypting the ciphertext x, which is an element of the group H, with G and H being cyclic groups and f (x) being a specific decryption key Is a random variable having a value in the group G, x 1 is a real value of the random variable X 1 , x 2 is a real value of the random variable X 2 , and a and b are natural numbers that are relatively prime, Output the first input information τ 1 and the second input information τ 2 that are elements of the group H corresponding to, and the decoding capability providing apparatus uses the first input information τ 1 and has a probability larger than a certain probability f ( τ 1 ) can be calculated correctly, and the calculation result can be output as the first output information z 1 , and the second input information τ 2 can be used to correctly calculate f (τ 2 ) with a probability greater than a certain probability. result is capable of outputting as second output information z 2, decoding apparatus, the operation result u = f from the first output information z 1 a (x) b x 1 Form, operation results from the second output information z 2 v = generates f (x) a x 2, the operation result u and v is the case that satisfies u a = v b, meet a'a + b'b = 1 Output u b ′ v a ′ for integers a ′ and b ′. The decoding control device outputs a decoding control command for controlling the decoding process of the decoding device to the decoding capability providing device, and the decoding capability providing device outputs both the first output information z 1 and the second output information z 2 according to the decoding control command. Controls the presence or absence of output.

第一出力情報z及び第二出力情報zが復号装置に与えられた場合、復号装置はある確率でub’a’を出力できる。ub’a’は高い確率で暗号文xの復号値となる。一方、第一出力情報z及び第二出力情報zの両方が復号装置に与えられなかった場合、復号装置は暗号文xの復号値を得ることができない。本発明では、復号能力提供装置による第一出力情報z及び第二出力情報zの両方の出力の有無を制御することで、復号装置に復号鍵を与えることなく、復号装置による暗号文の復号能力を制御できる。 When the first output information z 1 and the second output information z 2 are given to the decoding device, the decoding device can output u b ′ v a ′ with a certain probability. u b ′ v a ′ becomes a decrypted value of the ciphertext x with high probability. On the other hand, when both the first output information z 1 and the second output information z 2 are not given to the decryption device, the decryption device cannot obtain the decrypted value of the ciphertext x. In the present invention, by controlling whether or not both the first output information z 1 and the second output information z 2 are output by the decryption capability providing device, the decryption device provides the decryption key without giving a decryption key. Decoding ability can be controlled.

実施形態の復号制御システムの構成を説明するためのブロック図。The block diagram for demonstrating the structure of the decoding control system of embodiment. 実施形態の復号装置の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the decoding apparatus of embodiment. 実施形態の復号能力提供装置の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the decoding capability provision apparatus of embodiment. 実施形態の復号制御装置の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the decoding control apparatus of embodiment. 実施形態の入力情報提供部の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the input information provision part of embodiment. 実施形態の入力情報提供部の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the input information provision part of embodiment. 実施形態の復号装置の処理を説明するためのフローチャート。The flowchart for demonstrating the process of the decoding apparatus of embodiment. 実施形態の復号能力提供装置の処理を説明するためのフローチャート。The flowchart for demonstrating the process of the decoding capability provision apparatus of embodiment. ステップS2103(S3103)の処理を説明するためのフローチャート。The flowchart for demonstrating the process of step S2103 (S3103). ステップS4103の処理を説明するためのフローチャート。The flowchart for demonstrating the process of step S4103. 実施形態の復号装置の構成を説明するためのブロック図。The block diagram for demonstrating the structure of the decoding apparatus of embodiment. 実施形態の復号装置の処理を説明するためのフローチャート。The flowchart for demonstrating the process of the decoding apparatus of embodiment.

以下、図面を参照して本発明の実施形態を説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

[第一実施形態]
まず、本発明の第一実施形態を説明する。
[First embodiment]
First, a first embodiment of the present invention will be described.

<構成>
図1に例示するように、第一実施形態の復号制御システム1は、例えば、復号鍵を保持していない復号装置11と復号鍵を保持する復号能力提供装置12と復号装置11の復号能力を制御する復号制御装置13とを有する。復号制御装置13は復号能力提供装置12から復号装置11へ提供される復号能力を制御し、復号装置11は復号能力提供装置12から提供された復号能力を用いて暗号文を復号する。復号装置11と復号能力提供装置12と復号制御装置13とは情報のやり取りが可能なように構成される。例えば、復号装置11と復号能力提供装置12と復号制御装置13とは、伝送線やネットワークや可搬型記録媒体などを経由した情報のやり取りが可能とされている。
<Configuration>
As illustrated in FIG. 1, the decryption control system 1 of the first embodiment includes, for example, a decryption device 11 that does not hold a decryption key, a decryption capability providing device 12 that retains a decryption key, and a decryption capability of the decryption device 11. And a decoding control device 13 for controlling. The decryption control device 13 controls the decryption capability provided from the decryption capability providing device 12 to the decryption device 11, and the decryption device 11 decrypts the ciphertext using the decryption capability provided from the decryption capability providing device 12. The decryption device 11, the decryption capability providing device 12, and the decryption control device 13 are configured to exchange information. For example, the decoding device 11, the decoding capability providing device 12, and the decoding control device 13 can exchange information via a transmission line, a network, a portable recording medium, or the like.

図2に例示するように、第一実施形態の復号装置11は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部1104と第一計算部1105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部1108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。復号装置11の例は、カードリーダライタ装置や携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPU(central processing unit)やRAM(random−access memory)を備えた公知又は専用のコンピュータなどである。   As illustrated in FIG. 2, the decoding device 11 of the first embodiment includes, for example, a natural number storage unit 1101, a natural number selection unit 1102, an integer calculation unit 1103, an input information providing unit 1104, a first calculation unit 1105, and a first power. A calculation unit 1106, a first list storage unit 1107, a second calculation unit 1108, a second power calculation unit 1109, a second list storage unit 1110, a determination unit 1111, a final output unit 1112, and a control unit 1113 are included. Examples of the decoding device 11 include a device having a calculation function and a storage function such as a card reader / writer device and a mobile phone, a CPU (central processing unit) and a RAM (random-access memory) loaded with a special program. It is a known or dedicated computer provided.

図3に例示するように、第一実施形態の復号能力提供装置12は、例えば、第一出力情報計算部1201と第二出力情報計算部1202と鍵記憶部1204と制御部1205とを有する。復号能力提供装置12の例は、ICカードやICチップなどの耐タンパ性モジュールや、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。   As illustrated in FIG. 3, the decryption capability providing apparatus 12 according to the first embodiment includes, for example, a first output information calculation unit 1201, a second output information calculation unit 1202, a key storage unit 1204, and a control unit 1205. Examples of the decoding capability providing apparatus 12 include a tamper-resistant module such as an IC card or an IC chip, a device such as a mobile phone having a calculation function and a storage function, and a CPU or RAM into which a special program is read. Or a known or dedicated computer.

図4に例示するように、第一実施形態の復号制御装置13は、例えば、暗号文記憶部1301と制御命令部1302と出力部1303と制御部1304とを有する。復号制御装置13の例は、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。   As illustrated in FIG. 4, the decryption control device 13 of the first embodiment includes, for example, a ciphertext storage unit 1301, a control command unit 1302, an output unit 1303, and a control unit 1304. An example of the decoding control device 13 is a device having a calculation function and a storage function such as a mobile phone, or a known or dedicated computer having a CPU or RAM loaded with a special program.

<復号処理>
次に本形態の復号処理を説明する。復号処理の前提として、G,Hを巡回群、f(x)を群Hの元である暗号文xを特定の復号鍵sで復号して群Gの元を得るための復号関数、群G,Hの生成元をそれぞれμ,μ、X,Xを群Gに値を持つ確率変数、確率変数Xの実現値をx、確率変数Xの実現値をxとする。また、復号装置11の自然数記憶部1101には、互いに素である2つの自然数a,bの組(a,b)が複数種類記憶されているものとする。「自然数」とは0以上の整数を意味する。Iを群Gの位数未満の2つの自然数の組で互いに素なものの集合とすると、自然数記憶部1101にはIの部分集合Sに対応する自然数a,bの組(a,b)が記憶されていると考えることができる。また、復号能力提供装置12の鍵記憶部2104には、特定の復号鍵sが安全に格納されているものとする。また、復号制御装置13の暗号文記憶部1301には暗号文xが格納されているものとする。なお、復号装置11の各処理は制御部1113の制御のもとで実行され、復号能力提供装置12の各処理は制御部1205の制御のもとで実行され、復号制御装置13の各処理は制御部1304の制御のもとで実行される。
<Decryption process>
Next, the decoding process of this embodiment will be described. As a premise of the decryption process, G and H are cyclic groups, f (x) is a decryption function for decrypting a ciphertext x that is an element of the group H with a specific decryption key s, and a group G each mu g the generator of H, mu h, X 1, X 2 a random variable with values in the group G, the realization of the random variable X 1 x 1, the realization of the random variable X 2 and x 2 To do. Further, it is assumed that the natural number storage unit 1101 of the decoding device 11 stores a plurality of sets (a, b) of two prime numbers a and b that are relatively prime. “Natural number” means an integer of 0 or more. Assuming that I is a set of two natural numbers less than the order of the group G and prime to each other, the natural number storage unit 1101 stores a set (a, b) of natural numbers a and b corresponding to the subset S of I. Can be considered. Further, it is assumed that a specific decryption key s is safely stored in the key storage unit 2104 of the decryption capability providing apparatus 12. In addition, it is assumed that the ciphertext x is stored in the ciphertext storage unit 1301 of the decryption control device 13. Each process of the decoding device 11 is executed under the control of the control unit 1113, each process of the decoding capability providing device 12 is executed under the control of the control unit 1205, and each process of the decoding control device 13 is It is executed under the control of the control unit 1304.

図7に例示するように、まず、復号装置11(図2)の自然数選択部1102が、自然数記憶部1101に記憶された複数の自然数の組(a,b)から1つの自然数の組(a,b)をランダムに読み込む。読み込まれた自然数の組(a,b)の少なくとも一部の情報は、整数計算部1103、入力情報提供部1104、第一べき乗計算部1106及び第二べき乗計算部1109に送られる(ステップS1100)。   As illustrated in FIG. 7, first, the natural number selection unit 1102 of the decoding device 11 (FIG. 2) selects one natural number set (a, b) from a plurality of natural number sets (a, b) stored in the natural number storage unit 1101. , B) are read at random. Information of at least a part of the read natural number set (a, b) is sent to the integer calculation unit 1103, the input information providing unit 1104, the first power calculation unit 1106, and the second power calculation unit 1109 (step S1100). .

整数計算部1103は、送られた自然数の組(a,b)を用いて、a’a+b’b=1の関係を満たす整数a’,b’を計算する。自然数a,bは互いに素であるため、a’a+b’b=1の関係を満たす整数a’,b’は必ず存在して、その計算方法もよく知られている。たとえば拡張互除法などのよく知られたアルゴリズムによって整数a’,b’が計算され、自然数の組(a’,b’)の情報は、最終出力部1112に送られる(ステップS1101)。   The integer calculation unit 1103 calculates integers a ′ and b ′ that satisfy the relationship of a′a + b′b = 1 by using the transmitted pair (a, b) of natural numbers. Since the natural numbers a and b are relatively prime, there are always integers a ′ and b ′ that satisfy the relationship of a′a + b′b = 1, and the calculation method is well known. For example, integers a ′ and b ′ are calculated by a well-known algorithm such as the extended mutual division method, and information on a set of natural numbers (a ′ and b ′) is sent to the final output unit 1112 (step S1101).

制御部1113は、t=1とする(ステップS1102)。   The control unit 1113 sets t = 1 (step S1102).

復号制御装置13(図4)の暗号文記憶部1301に格納されている暗号文xが出力部1303から出力され、復号装置11(図2)に入力される。復号装置11の入力情報提供部1104は、入力された暗号文xにそれぞれ対応する群Hの元である第一入力情報τ及び第二入力情報τを生成して出力する。好ましくは、第一入力情報τ及び第二入力情報τはそれぞれ暗号文xとの関係をかく乱させた情報である。これにより、復号装置11は、暗号文xを復号能力提供装置12に対して隠蔽できる。また、好ましくは、本形態の第一入力情報τは自然数選択部1102で選択された自然数bにさらに対応し、第二入力情報τは自然数選択部1102で選択された自然数aにさらに対応する。これにより、復号能力提供装置12から提供された復号能力を復号装置11が高い精度で評価できる(ステップS1103)。 The ciphertext x stored in the ciphertext storage unit 1301 of the decryption control device 13 (FIG. 4) is output from the output unit 1303 and input to the decryption device 11 (FIG. 2). The input information providing unit 1104 of the decryption device 11 generates and outputs first input information τ 1 and second input information τ 2 that are elements of the group H corresponding to the input ciphertext x. Preferably, the first input information τ 1 and the second input information τ 2 are information that disturbs the relationship with the ciphertext x. Thereby, the decryption device 11 can conceal the ciphertext x from the decryption capability providing device 12. Preferably, the first input information τ 1 of this embodiment further corresponds to the natural number b selected by the natural number selection unit 1102, and the second input information τ 2 further corresponds to the natural number a selected by the natural number selection unit 1102. To do. Accordingly, the decoding device 11 can evaluate the decoding capability provided from the decoding capability providing device 12 with high accuracy (step S1103).

図8に例示するように、第一入力情報τは復号能力提供装置12(図3)の第一出力情報計算部1201に入力され、第二入力情報τは第二出力情報計算部1202に入力される(ステップS1200)。 As illustrated in FIG. 8, the first input information τ 1 is input to the first output information calculation unit 1201 of the decoding capability providing apparatus 12 (FIG. 3), and the second input information τ 2 is input to the second output information calculation unit 1202. (Step S1200).

第一出力情報計算部1201は、第一入力情報τと鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた計算結果を第一出力情報zとする(ステップS1201)。第二出力情報計算部1202は、第二入力情報τと鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた演算結果を第二出力情報zとする(ステップS1202)。なお、「或る確率」は100%未満の確率である。「或る確率」の例は無視することができない確率であり、「無視することができない確率」の例は、セキュリティパラメータkについての広義単調増加関数である多項式を多項式ψ(k)とした場合の1/ψ(k)以上の確率である。すなわち、第一出力情報計算部1201や第二出力情報計算部1202は、意図的又は意図的ではない誤差を含んだ計算結果を出力し得る。言い換えると、第一出力情報計算部1201での計算結果がf(τ)の場合もあればf(τ)でない場合もあり、第二出力情報計算部1202での計算結果がf(τ)の場合もあればf(τ)でない場合もある。 The first output information calculation unit 1201 uses the first input information τ 1 and the decryption key s stored in the key storage unit 1204 to correctly calculate f (τ 1 ) with a probability larger than a certain probability. the calculation result to the first output information z 1 (step S1201). The second output information calculation unit 1202 uses the second input information τ 2 and the decryption key s stored in the key storage unit 1204 to correctly calculate f (τ 2 ) with a probability larger than a certain probability. the operation result as the second output information z 2 (step S1202). The “certain probability” is a probability of less than 100%. The example of “certain probability” is a probability that cannot be ignored, and the example of “probability that cannot be ignored” is a case where a polynomial ψ (k) is a polynomial that is a broad monotone increasing function for the security parameter k. Of 1 / ψ (k) or more. That is, the first output information calculation unit 1201 and the second output information calculation unit 1202 can output a calculation result including an intentional or unintentional error. In other words, also when the calculation result in the first output information calculation section 1201 is not f Some cases of (τ 1) f (τ 1 ), the calculation result of the second output information calculation unit 1202 f (tau 2 ) or not f (τ 2 ).

第一出力情報計算部1201は第一出力情報zを出力し、第二出力情報計算部1202は第二出力情報zを出力する(ステップS1203)。 The first output information calculation unit 1201 outputs the first output information z 1, the second output information calculation unit 1202 outputs the second output information z 2 (step S1203).

図7に戻り、第一出力情報zは復号装置11(図2)の第一計算部1105に入力され、第二出力情報zは第二計算部1108に入力される。これらの第一出力情報z及び第二出力情報zが、復号能力提供装置12から復号装置11に与えられた復号能力に相当する(ステップS1104)。 Returning to FIG. 7, the first output information z 1 is input to the first calculation unit 1105 of the decoding device 11 (FIG. 2), and the second output information z 2 is input to the second calculation unit 1108. The first output information z 1 and the second output information z 2 correspond to the decoding capability given from the decoding capability providing apparatus 12 to the decoding apparatus 11 (step S1104).

第一計算部1105は、第一出力情報zから演算結果u=f(x)を生成する。ここで、f(x)を生成(計算)するとは、f(x)と定義される式の値を計算することである。式f(x)の値を最終的に計算することができれば、途中の計算方法は問わない。これは、この出願で登場する他の式の計算についても同様である。演算結果uは第一べき乗計算部1106に送られる(ステップS1105)。 The first calculator 1105 generates the operation result u = f (x) b x 1 from the first output information z 1 . Here, f (x) generates a b x 1 (calculation) that is to calculate the value of the formula is defined as f (x) b x 1. If the value of the expression f (x) b x 1 can be finally calculated, the calculation method in the middle is not limited. The same applies to the calculation of other equations appearing in this application. The calculation result u is sent to the first power calculation unit 1106 (step S1105).

第一べき乗計算部1106はu’=uを計算する。計算結果uとその計算結果に基づいて計算されたu’との組(u,u’)は、第一リスト記憶部1107に記憶される(ステップS1106)。 The first power calculation unit 1106 calculates u ′ = u a . A set (u, u ′) of the calculation result u and u ′ calculated based on the calculation result is stored in the first list storage unit 1107 (step S1106).

判定部1111は、第一リスト記憶部1107に記憶された組(u,u’)及び第二リスト記憶部1110に記憶された組(v,v’)の中で、u’=v’となるものがあるか判定する(ステップS1107)。もし、第二リスト記憶部1110に組(v,v’)が記憶されていない場合には、このステップS1107の処理を行わずに、次のステップS1108の処理を行う。u’=v’となるものがあった場合には、ステップS1114に進む。u’=v’となるものがなかった場合には、ステップS1108に進む。   The determination unit 1111 determines that u ′ = v ′ in the pair (u, u ′) stored in the first list storage unit 1107 and the pair (v, v ′) stored in the second list storage unit 1110. It is determined whether or not there is any (step S1107). If the set (v, v ′) is not stored in the second list storage unit 1110, the process of the next step S1108 is performed without performing the process of step S1107. If there is one that satisfies u ′ = v ′, the process proceeds to step S1114. If there is no u ′ = v ′, the process advances to step S1108.

ステップS1108では、第二計算部1108が、第二出力情報zから演算結果v=f(x)を生成する。演算結果vは第二べき乗計算部1109に送られる(ステップS1108)。 In step S1108, the second calculation unit 1108 generates a calculation result v = f (x) a x 2 from the second output information z 2 . The calculation result v is sent to the second power calculation unit 1109 (step S1108).

第二べき乗計算部1109はv’=vを計算する。計算結果vとその計算結果に基づいて計算されたv’との組(v,v’)は、第二リスト記憶部1110に記憶される(ステップS1109)。 The second power calculation unit 1109 calculates v ′ = v b . A set (v, v ′) of the calculation result v and v ′ calculated based on the calculation result is stored in the second list storage unit 1110 (step S1109).

判定部1111は、第一リスト記憶部1107に記憶された組(u,u’)及び第二リスト記憶部1110に記憶された組(v,v’)の中で、u’=v’となるものがあるか判定する(ステップS1110)。u’=v’となるものがあった場合には、ステップS1114に進む。u’=v’となるものがなかった場合には、ステップS1111に進む。   The determination unit 1111 determines that u ′ = v ′ in the pair (u, u ′) stored in the first list storage unit 1107 and the pair (v, v ′) stored in the second list storage unit 1110. It is determined whether or not there is any (step S1110). If there is one that satisfies u ′ = v ′, the process proceeds to step S1114. If there is no u ′ = v ′, the process proceeds to step S1111.

ステップS1111では、制御部1113がt=Tであるか判定する(ステップS1111)。Tは予め定められた1以上の自然数である。t=Tであれば、最終出力部1112が、計算をすることができなかった旨の情報、例えば記号「⊥」を出力して(ステップS1113)、処理を終える。t=Tでない場合には、制御部1113は、tを1だけインクリメント、すなわちt=t+1(t+1を新たなt)として(ステップS1112)、ステップS1103に戻る。   In step S1111, the control unit 1113 determines whether t = T (step S1111). T is a predetermined natural number of 1 or more. If t = T, the final output unit 1112 outputs information indicating that the calculation could not be performed, for example, the symbol “⊥” (step S1113), and the process ends. If not t = T, the control unit 1113 increments t by 1, that is, sets t = t + 1 (t + 1 is a new t) (step S1112), and returns to step S1103.

計算をすることができなかった旨の情報(この例では記号「⊥」)は、復号能力提供装置12が正しく計算を行う信頼性がTで定められる基準を下回るということを意味する。言い換えれば、T回の繰り返しで正しい演算を行うことができなかったということを意味する。   Information indicating that the calculation could not be performed (in this example, the symbol “⊥”) means that the reliability with which the decoding capability providing apparatus 12 performs the calculation correctly is below the standard defined by T. In other words, it means that a correct operation could not be performed by repeating T times.

ステップS1114では、最終出力部1112が、u’=v’であると判定されたu’及びv’に対応するu及びvを用いてub’a’を計算して、出力する(ステップS1114)。このように計算されたub’a’は高い確率で暗号文xを特定の復号鍵sで復号した復号結果f(x)となる(高い確率でub’a’=f(x)となる理由については後述する)。よって、上述した処理を複数回繰り返し、ステップS1114で得られた値のうち最も頻度の高い値を復号結果とすればよい。また、後述するように、設定によっては圧倒的な確率でub’a’=f(x)となる。その場合にはステップS1114で得られた値をそのまま復号結果としてよい。 In step S1114, the final output unit 1112 calculates and outputs u b ′ v a ′ using u and v corresponding to u ′ and v ′ determined to be u ′ = v ′ (step S1114). S1114). U b ′ v a ′ calculated in this way becomes a decryption result f (x) obtained by decrypting the ciphertext x with the specific decryption key s with a high probability (with high probability u b ′ v a ′ = f (x ) Will be described later). Therefore, the above-described processing is repeated a plurality of times, and the most frequent value among the values obtained in step S1114 may be used as the decoding result. Also, as will be described later, u b ′ v a ′ = f (x) with an overwhelming probability depending on the setting. In that case, the value obtained in step S1114 may be used as a decoding result as it is.

≪高い確率でub’a’=f(x)となる理由について≫
Xを群Gに値を持つ確率変数とする。w∈Gについて、要求を受けるたびに確率変数Xに従った標本x’に対応するwx’を返すものを、wについて誤差Xを持つ標本器(sampler)と呼ぶ。
<< Reason why u b ' v a' = f (x) with high probability >>
Let X be a random variable whose value is in group G. For wεG, the one that returns wx ′ corresponding to the sample x ′ according to the random variable X every time a request is received is called a sampler having an error X for w.

w∈Gについて、自然数aが与えられるたびに確率変数Xに従った標本x’に対応するwx’を返すものを、wについて誤差Xを持つ乱数化可能標本器(randomizable sampler)と呼ぶ。乱数化可能標本器はa=1として用いられれば標本器として機能する。 For w∈G, each time a natural number a is given, the one that returns w a x ′ corresponding to the sample x ′ according to the random variable X is called a randomizable sampler having an error X with respect to w. . A randomizable sampler functions as a sampler if a = 1 is used.

本実施形態の入力情報提供部1104と第一出力情報計算部1201と第一計算部1105との組み合わせが、f(x)について誤差Xを持つ乱数化可能標本器(「第一乱数化可能標本器」と呼ぶ)であり、入力情報提供部1104と第二出力情報計算部1202と第二計算部1108との組み合わせが、f(x)について誤差Xを持つ乱数化可能標本器(「第二乱数化可能標本器」と呼ぶ)である。 The combination of the input information providing unit 1104 of the present embodiment and the first output information calculation unit 1201 and the first calculation unit 1105, f (x) randomization can sampler with an error X 1 for ( "first randomization can a is called a sampler "), the combination of the input information providing unit 1104 and the second output information calculation unit 1202 and the second calculation unit 1108, f (x) randomization can sampler with an error X 2 for (" This is called a “second randomizable sampler”.

u’=v’が成立するのは、すなわちu=vが成立するのは、第一乱数化可能標本器がu=f(x)を正しく計算しており、第二乱数化可能標本器がv=f(x)を正しく計算している(x及びxが群Gの単位元eである)可能性が高いことを発明者は見出した。説明の簡略化の観点から、この証明は第五実施形態で行う。 u ′ = v ′ is satisfied, that is, u a = v b is satisfied because the first randomizable sampler correctly calculates u = f (x) b and can be converted to a second random number. sampler is v = f (x) is correctly calculate a (x 1 and x 2 are the identity e g in the group G) potential inventor that is high found. From the viewpoint of simplifying the explanation, this proof is performed in the fifth embodiment.

第一乱数化可能標本器がu=f(x)を正しく計算しており、第二乱数化可能標本器がv=f(x)を正しく計算しているとき(x及びxが群Gの単位元eであるとき)、ub’a’=(f(x)b’(f(x)a’=(f(x)b’(f(x)a’=f(x)bb’ b’f(x)aa’ a’=f(x)(bb’+aa’)=f(x)となる。 When the first randomizable sampler correctly calculates u = f (x) b and the second randomizable sampler correctly calculates v = f (x) a (x 1 and x 2 Is the unit element e g of the group G), u b ′ v a ′ = (f (x) b x 1 ) b ′ (f (x) a x 2 ) a ′ = (f (x) b e g) b '(f (x ) a e g) a' = f (x) bb 'e g b' f (x) aa 'e g a' = f (x) (bb '+ aa') = f ( x).

また、(q,q)∈Iについて、i=1,2の各々について関数πをπ(q,q)=qで定義する。さらに、L=min(♯π(S),♯π(S))とする。♯・は、集合・の位数である。群Gが巡回群や位数の計算が困難な群であるときには、復号装置11が「⊥」以外を出力するときの出力がf(x)ではない確率は、無視できる程度の誤差の範囲で高々TL/♯S程度と期待することができる。もしL/♯Sが無視できる量でTが多項式オーダー程度の量であれば、復号装置11は圧倒的な確率で正しいf(x)を出力する。L/♯Sが無視できる量になるようなSの例には、例えばS={(1,d)|d∈[2,|G|−1]}がある。 For (q 1 , q 2 ) ∈I, a function π i is defined as π i (q 1 , q 2 ) = q i for each of i = 1 and 2 . Further, L = min (# π 1 (S), # π 2 (S)). # · Is the order of the set. When the group G is a cyclic group or a group whose order is difficult to calculate, the probability that the output when the decoding device 11 outputs anything other than “⊥” is not f (x) is within a negligible error range. It can be expected that it is at most about T 2 L / # S. If L / # S is a negligible amount and T is an amount on the order of polynomial, the decoding device 11 outputs correct f (x) with an overwhelming probability. For example, S = {(1, d) | dε [2, | G | −1]} is an example of S in which L / # S becomes a negligible amount.

<復号制御処理>
次に、本形態の復号制御処理を説明する。
<Decryption control processing>
Next, the decoding control process of this embodiment will be described.

復号制御装置13が復号装置11の復号処理を制御する場合、復号制御装置13は、復号装置11の復号処理を制御する復号制御命令を復号能力提供装置12に出力する。復号能力提供装置12は、入力された復号制御命令に従って、第一出力情報z及び第二出力情報zの両方の出力の有無を制御する。復号装置11は、第一出力情報z及び第二出力情報zが与えられなければ暗号文xを復号することができない。そのため、第一出力情報z及び第二出力情報zの両方の出力の有無を制御することで、復号装置11の復号能力を制御できる。以下に復号処理の制御方法を例示する。 When the decoding control device 13 controls the decoding processing of the decoding device 11, the decoding control device 13 outputs a decoding control command for controlling the decoding processing of the decoding device 11 to the decoding capability providing device 12. The decoding capability providing apparatus 12 controls whether or not both the first output information z 1 and the second output information z 2 are output according to the input decoding control command. The decryption device 11 cannot decrypt the ciphertext x unless the first output information z 1 and the second output information z 2 are given. Therefore, by controlling the presence or absence of the output of both the first output information z 1 and the second output information z 2, it can control the decoding capability of the decoding device 11. Hereinafter, a method for controlling the decoding process will be exemplified.

≪復号処理の制御方法の例1≫
復号処理の制御方法の例1では、復号制御命令が復号装置11の復号能力を制限するための復号制限命令com−1を含み、復号制限命令com−1が復号能力提供装置12の制御部1205に入力された場合に制御部1205が第一出力情報z及び第二出力情報zの両方の出力を禁止する。
<< Example 1 of Decoding Process Control Method >>
In Example 1 of the decoding control method, the decoding control instruction includes a decoding restriction instruction com-1 for limiting the decoding capability of the decoding device 11, and the decoding restriction instruction com-1 is the control unit 1205 of the decoding capability providing apparatus 12. control unit 1205 prohibits the output of both the first output information z 1 and the second output information z 2 when it is entered into.

復号装置11の復号能力を制限する場合、復号制御装置13(図4)の制御命令部1302が復号制限命令com−1を出力する。復号制限命令com−1は出力部1303から復号能力提供装置12に出力される。   When the decoding capability of the decoding device 11 is limited, the control command unit 1302 of the decoding control device 13 (FIG. 4) outputs a decoding limit command com-1. The decryption restriction instruction com-1 is output from the output unit 1303 to the decryption capability providing apparatus 12.

復号能力提供装置12(図3)の制御部1205は、復号制限命令com−1が入力されたか否かを判断し、復号制限命令com−1が制御部1205に入力されない場合には復号制御処理を行わない。一方、復号制限命令com−1が制御部1205に入力された場合には、制御部1205は第一出力情報z及び第二出力情報zの両方の出力を禁止する制御を行う(復号制限モード)。 The control unit 1205 of the decoding capability providing apparatus 12 (FIG. 3) determines whether or not the decoding restriction instruction com-1 has been input. If the decoding restriction instruction com-1 is not input to the control unit 1205, the decoding control process Do not do. On the other hand, the decoding limitations when instruction com-1 is input to the control unit 1205, control unit 1205 performs control to prohibit the output of both the first output information z 1 and the second output information z 2 (decoding limitations mode).

復号制限モードでは、制御部1205が第一出力情報計算部1201による第一出力情報zの出力及び第二出力情報計算部1201による第二出力情報zの出力の両方を禁止する。第一出力情報z及び/又は第二出力情報zの出力を禁止する制御の一例は、第一出力情報z及び/又は第二出力情報zの生成は禁止しないがこれらの出力を禁止する制御である。第一出力情報z及び/又は第二出力情報zの出力を禁止する制御の他の例は、第一出力情報z及び/又は第二出力情報zの代わりにダミー情報を出力させる制御である。なお、ダミー情報の例は、乱数その他の暗号文xに依存しない情報である。第一出力情報z及び/又は第二出力情報zの出力を禁止する制御の別の例は、第一出力情報z及び/又は第二出力情報zの生成自体を禁止する制御である。第一出力情報z及び/又は第二出力情報zの生成自体を禁止する制御を行う場合には、第一出力情報z及び/又は第二出力情報zの生成を行うために必要な情報を無効又は削除してもよいし、しなくてもよい。例えば、鍵記憶部1204に格納された復号鍵sを無効又は削除してもよいし、しなくてもよい。 In the decryption restriction mode, the control unit 1205 prohibits both the output of the first output information z 1 by the first output information calculation unit 1201 and the output of the second output information z 2 by the second output information calculation unit 1201. An example of the first output information z 1 and / or control to prohibit the second output of output information z 2 is generated in the first output information z 1 and / or second output information z 2 does not prohibit these output This control is prohibited. Another example of a control for prohibiting the output of the first output information z 1 and / or second output information z 2 is to output the dummy information in place of the first output information z 1 and / or second output information z 2 Control. Note that examples of dummy information are random numbers and other information that does not depend on the ciphertext x. Another example of a control for prohibiting the output of the first output information z 1 and / or second output information z 2 is the first output information z 1 and / or the second control to prohibit the production itself of the output information z 2 is there. Necessary for generating the first output information z 1 and / or the second output information z 2 when performing control for prohibiting the generation of the first output information z 1 and / or the second output information z 2 itself. Such information may or may not be invalidated or deleted. For example, the decryption key s stored in the key storage unit 1204 may or may not be invalidated or deleted.

第一出力情報z及び第二出力情報zの両方の出力が禁止された場合、復号能力提供装置12はステップS1203で第一出力情報z及び第二出力情報zの両方を出力しない。そのため、復号装置11はステップS1104で第一出力情報z及び第二出力情報zの両方を取得できず、演算結果u及びvを計算できないため、正しい復号結果を得ることができない。これにより、復号装置11の復号能力を制限できる。 When the output of both the first output information z 1 and the second output information z 2 is prohibited, the decoding capability providing apparatus 12 does not output both the first output information z 1 and the second output information z 2 in step S1203. . For this reason, the decoding device 11 cannot obtain both the first output information z 1 and the second output information z 2 in step S1104 and cannot calculate the calculation results u and v, and thus cannot obtain a correct decoding result. Thereby, the decoding capability of the decoding device 11 can be limited.

≪復号処理の制御方法の例2≫
復号処理の制御方法の例2では、復号制御命令が復号装置11の復号能力の制限を開放するための復号開放命令com−2を含み、復号開放命令com−2が復号能力提供装置12の制御部1205に入力された場合、制御部1205は第一出力情報z及び第二出力情報zの少なくとも一方の出力を許可する。復号処理の制御方法の例2は、例えば、復号処理の制御方法の例1によって第一出力情報z及び第二出力情報zの両方の出力が禁止された後、再び、第一出力情報z及び第二出力情報zの出力を許可する場合に行われる。この際、第一出力情報z及び/又は第二出力情報zの生成を行うために必要な情報が無効又は削除されていた場合には、復号開放命令com−2が当該情報を含み、当該情報を復号能力提供装置12に再設定することにしてもよい。その他、復号処理の制御方法の例2は、例えば、初期状態において第一出力情報z及び第二出力情報zの両方の出力が禁止されている場合に、第一出力情報z及び第二出力情報zの出力を許可する場合に行われてもよい。
<< Example 2 of control method of decoding process >>
In example 2 of the control method of the decoding process, the decoding control instruction includes a decoding release instruction com-2 for releasing the restriction of the decoding capability of the decoding device 11, and the decoding release command com-2 is controlled by the decoding capability providing device 12. If input to the section 1205, the control unit 1205 permits the output of at least one of the first output information z 1 and the second output information z 2. For example, after the output of both the first output information z 1 and the second output information z 2 is prohibited by the example 1 of the control method of the decoding process, the example 2 of the decoding process control method is again the first output information. This is performed when output of z 1 and second output information z 2 is permitted. At this time, if the information required for the generation of the first output information z 1 and / or second output information z 2 has been disabled or removed, the decoding open command com-2 contains the information, The information may be reset in the decoding capability providing apparatus 12. In addition, in the control method example 2 of the decoding process, for example, when the output of both the first output information z 1 and the second output information z 2 is prohibited in the initial state, the first output information z 1 and the first output information z 1 it may be performed in case of permitting the output of the second output information z 2.

復号装置11の復号能力の制限を開放する場合、復号制御装置13(図4)の制御命令部1302が復号開放命令com−2を出力する。復号制限命令com−2は出力部1303から復号能力提供装置12に出力される。   When the restriction on the decoding capability of the decoding device 11 is released, the control command unit 1302 of the decoding control device 13 (FIG. 4) outputs the decoding release command com-2. The decryption restriction instruction com-2 is output from the output unit 1303 to the decryption capability providing apparatus 12.

復号能力提供装置12(図3)の制御部1205は、復号開放命令com−2が入力されたか否かを判断し、復号開放命令com−2が制御部1205に入力されていない場合には復号制御処理を行わない。一方、復号開放命令com−2が制御部1205に入力された場合には、制御部1205は第一出力情報z及び第二出力情報zの両方の出力を許可する制御を行う(復号許可モード)。 The control unit 1205 of the decryption capability providing apparatus 12 (FIG. 3) determines whether or not the decryption release command com-2 is input. If the decryption release command com-2 is not input to the control unit 1205, the control unit 1205 performs decryption. Do not perform control processing. On the other hand, decoding opened when the instruction com-2 is input to the control unit 1205, the control unit 1205 performs control to allow the output of both the first output information z 1 and the second output information z 2 (decoding permission mode).

第一出力情報z及び第二出力情報zの両方の出力が許可された場合、復号能力提供装置12はステップS1203で第一出力情報z又は第二出力情報zの両方を出力する。そのため、復号装置11はステップS1104で第一出力情報z又は第二出力情報zの両方を取得でき、演算結果u又はvを計算できるため、高い確率で復号結果を得ることができる。これにより、復号装置11の復号能力の制限を開放することができる。 If both outputs of the first output information z 1 and the second output information z 2 is permitted, the decoding capability providing apparatus 12 outputs both in the first output information z 1 or second output information z 2 step S1203 . Therefore, the decoding apparatus 11 can acquire both at the first output information z 1 or second output information z 2 step S1104, because it can calculate the calculation result u or v, it is possible to obtain the decoding result with high probability. Thereby, the restriction | limiting of the decoding capability of the decoding apparatus 11 can be open | released.

[第二実施形態]
第二実施形態の復号制御システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した例である。以下、第一実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。以下の説明において、同一の参照番号が付された部分は同一の機能を持つものとし、同一の参照番号が付されたステップは同一の処理を表すものとする。
[Second Embodiment]
The decoding control system of the second embodiment is an example in which the first randomizable sampler and the second randomizable sampler described above are embodied. Hereinafter, the description will focus on parts that are different from the first embodiment, and redundant description of common parts such as decoding control processing will be omitted. In the following description, parts denoted by the same reference numbers have the same function, and steps denoted by the same reference numbers represent the same processing.

<構成>
図1に例示するように、第二実施形態の復号制御システム2は、復号装置11が復号装置21に置換され、復号能力提供装置12が復号能力提供装置22に置換されたものである。
<Configuration>
As illustrated in FIG. 1, in the decoding control system 2 of the second embodiment, the decoding device 11 is replaced with a decoding device 21, and the decoding capability providing device 12 is replaced with a decoding capability providing device 22.

図2に例示するように、第二実施形態の復号装置21は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部2104と第一計算部2105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部2108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。図5に例示するように、本形態の入力情報提供部2104は、例えば、第一乱数生成部2104aと第一入力情報計算部2104bと第二乱数生成部2104cと第二入力情報計算部2104dとを有する。   As illustrated in FIG. 2, the decoding device 21 of the second embodiment includes, for example, a natural number storage unit 1101, a natural number selection unit 1102, an integer calculation unit 1103, an input information providing unit 2104, a first calculation unit 2105, and a first power. A calculation unit 1106, a first list storage unit 1107, a second calculation unit 2108, a second power calculation unit 1109, a second list storage unit 1110, a determination unit 1111, a final output unit 1112, and a control unit 1113 are included. As illustrated in FIG. 5, the input information providing unit 2104 of this embodiment includes, for example, a first random number generation unit 2104 a, a first input information calculation unit 2104 b, a second random number generation unit 2104 c, and a second input information calculation unit 2104 d. Have

図3に例示するように、第二実施形態の復号能力提供装置22は、例えば、第一出力情報計算部2201と第二出力情報計算部2202と鍵記憶部1204と制御部1205とを有する。   As illustrated in FIG. 3, the decryption capability providing apparatus 22 according to the second embodiment includes, for example, a first output information calculation unit 2201, a second output information calculation unit 2202, a key storage unit 1204, and a control unit 1205.

<復号処理>
次に本形態の復号処理を説明する。第二実施形態では、復号関数f(x)を準同型関数とし、群Hの生成元をμ、群Hの位数をK、ν=f(μ)とする。復号関数f(x)が準同型関数である例はRSA暗号などである。その他の前提は、復号装置11が復号装置21に置換され、復号能力提供装置12が復号能力提供装置22に置換されている以外、第一実施形態と同一である。
<Decryption process>
Next, the decoding process of this embodiment will be described. In the second embodiment, the decoding function f (x) is a homomorphic function, the generation source of the group H is μ h , the order of the group H is K H , and ν = f (μ h ). An example in which the decryption function f (x) is a homomorphic function is RSA encryption. Other preconditions are the same as those in the first embodiment except that the decoding device 11 is replaced with the decoding device 21 and the decoding capability providing device 12 is replaced with the decoding capability providing device 22.

図7及び図8に例示するように、第二実施形態の処理は第一実施形態のステップS1103〜S1105,S1108,S1200〜S1203が、それぞれ、ステップS2103〜S2105,S2108,S2200〜S2203に置換されたものである。以下ではステップS2103〜S2105,S2108,S2200〜S2203の処理のみを説明する。   As illustrated in FIGS. 7 and 8, in the process of the second embodiment, steps S1103 to S1105, S1108, and S1200 to S1203 of the first embodiment are replaced with steps S2103 to S2105, S2108, and S2200 to S2203, respectively. It is a thing. Only the processing of steps S2103 to S2105, S2108, S2200 to S2203 will be described below.

《ステップS2103の処理》
復号装置21(図2)の入力情報提供部2104は、入力された暗号文xにそれぞれ対応する第一入力情報τ及び第二入力情報τを生成して出力する(図7/ステップS2103)。以下、図9を用いて本形態のステップS2103の処理を説明する。
<< Processing in Step S2103 >>
The input information providing unit 2104 of the decryption device 21 (FIG. 2) generates and outputs the first input information τ 1 and the second input information τ 2 respectively corresponding to the input ciphertext x (FIG. 7 / step S2103). ). Hereinafter, the processing in step S2103 of this embodiment will be described with reference to FIG.

第一乱数生成部2104a(図5)は、0以上K未満の自然数の一様乱数rを生成する。生成された乱数rは、第一入力情報計算部2104b及び第一計算部2105に送られる(ステップS2103a)。第一入力情報計算部2104bは、入力された乱数rと暗号文xと自然数bとを用いて第一入力情報τ=μ r1を計算する(ステップS2103b)。ここで、μの右肩のr1は、rのことである。このように、この出願において、αを第一の文字、βを第二の文字、γを数字として、αβγと表記した場合には、そのβγはβγ、すなわちβの下付きγを意味する。 The first random number generating unit 2104a (FIG. 5) generates a uniform random number r 1 is a natural number from 0 to less than K H. Generated random number r 1 is fed to the first input information calculating unit 2104b and the first calculation unit 2105 (Step S2103a). The first input information calculation unit 2104b calculates first input information τ 1 = μ h r1 x b using the input random number r 1 , ciphertext x, and natural number b (step S2103b). Here, mu superscript r1 of h is that of r 1. Thus, in this application, when α is expressed as α βγ , where α is the first character, β is the second character, γ is a number, βγ means β γ , that is, β subscript γ To do.

第二乱数生成部2104cは、0以上K未満の自然数の一様乱数rを生成する。生成された乱数rは、第二入力情報計算部2104d及び第二計算部2108に送られる(ステップS2103c)。第二入力情報計算部2104dは、入力された乱数rと暗号文xと自然数aとを用いて第二入力情報τ=μ r2を計算する(ステップS2103d)。 Second random number generation unit 2104c generates a uniform random number r 2 of the natural number of 0 or more and less than K H. Generated random number r 2 is fed to the second input information calculation unit 2104d and the second calculation portion 2108 (Step S2103c). The second input information calculation unit 2104d calculates second input information τ 2 = μ h r2 x a using the input random number r 2 , ciphertext x, and natural number a (step S2103d).

第一入力情報計算部2104b及び第二入力情報計算部2104dは、以上のように生成した第一入力情報τ及び第二入力情報τを出力する(ステップS2103e)。なお、本形態の第一入力情報τ及び第二入力情報τは、それぞれ、乱数r,rによって暗号文xとの関係をかく乱させた情報である。これにより、復号装置22は、暗号文xを復号能力提供装置22に対して隠蔽できる。また、本形態の第一入力情報τは自然数選択部1102で選択された自然数bにさらに対応し、第二入力情報τは自然数選択部1102で選択された自然数aにさらに対応する。これにより、復号能力提供装置22から提供された復号能力を復号装置21が高い精度で評価できる。 The first input information calculation unit 2104b and the second input information calculation unit 2104d output the first input information τ 1 and the second input information τ 2 generated as described above (step S2103e). Note that the first input information τ 1 and the second input information τ 2 of this embodiment are information in which the relationship with the ciphertext x is disturbed by random numbers r 1 and r 2 , respectively. Thereby, the decryption device 22 can conceal the ciphertext x from the decryption capability providing device 22. Further, the first input information τ 1 of this embodiment further corresponds to the natural number b selected by the natural number selection unit 1102, and the second input information τ 2 further corresponds to the natural number a selected by the natural number selection unit 1102. Thereby, the decoding device 21 can evaluate the decoding capability provided from the decoding capability providing device 22 with high accuracy.

《ステップS2200〜S2203の処理》
図8に例示するように、まず、第一入力情報τ=μ r1が復号能力提供装置22(図3)の第一出力情報計算部2201に入力され、第二入力情報τ=μ r2が第二出力情報計算部2202に入力される(ステップS2200)。
<< Processes in Steps S2200 to S2203 >>
As illustrated in FIG. 8, first input information τ 1 = μ h r1 x b is first input to the first output information calculation unit 2201 of the decoding capability providing device 22 (FIG. 3), and the second input information τ 2. = Μ h r2 x a is input to the second output information calculation unit 2202 (step S2200).

第一出力情報計算部2201は、第一入力情報τ=μ r1と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(μ r1)を正しく計算し、得られた計算結果を第一出力情報zとする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部2201での計算結果がf(μ r1)となる場合もあれば、f(μ r1)とならない場合もある(ステップS2201)。 The first output information calculation unit 2201 uses the first input information τ 1 = μ h r1 x b and the decryption key s stored in the key storage unit 1204, and f (μ h r1 x b) it was correctly calculated and the calculation results obtained with the first output information z 1. This calculation result may or may not be correct. That is, if even if the calculation results in the first output information calculating unit 2201 is f (μ h r1 x b) , may not become f (μ h r1 x b) ( step S2201).

第二出力情報計算部2202は、第二入力情報τ=μ r2と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(μ r2)を正しく計算し、得られた計算結果を第二出力情報zとする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部2202での計算結果がf(μ r2)となる場合もあれば、f(μ r2)とならない場合もある(ステップS2202)。 The second output information calculation unit 2202 uses the second input information τ 2 = μ h r2 x a and the decryption key s stored in the key storage unit 1204, and f (μ h r2 x a) was calculated correctly, the calculation results obtained with the second output information z 2. This calculation result may or may not be correct. That is, if even if the calculation results of the second output information calculating unit 2202 is f (μ h r2 x a) , may not become f (μ h r2 x a) ( step S2202).

第一出力情報計算部2201は第一出力情報zを出力し、第二出力情報計算部2202は第二出力情報zを出力する(ステップS2203)。 The first output information calculation unit 2201 outputs the first output information z 1, the second output information calculation unit 2202 outputs the second output information z 2 (step S2203).

《ステップS2104及びS2105の処理》
図7に戻り、第一出力情報zは復号装置21(図2)の第一計算部2105に入力され、第二出力情報zは第二計算部2108に入力される。これらの第一出力情報z及び第二出力情報zが、復号能力提供装置22から復号装置21に与えられた復号能力に相当する(ステップS2104)。
<< Processing in Steps S2104 and S2105 >>
Returning to FIG. 7, the first output information z 1 is input to the first calculation unit 2105 of the decoding device 21 (FIG. 2), and the second output information z 2 is input to the second calculation unit 2108. The first output information z 1 and the second output information z 2 correspond to the decoding capability given from the decoding capability providing apparatus 22 to the decoding apparatus 21 (step S2104).

第一計算部2105は、入力された乱数r及び第一出力情報zを用いてzν−r1を計算してその計算結果をuとする。計算結果uは、第一べき乗計算部1106に送られる。ここで、u=zν−r1=f(x)となる。すなわち、zν−r1は、f(x)について誤差Xを持つ乱数化可能標本器の出力となる。その理由については後述する(ステップS2105)。 The first calculation unit 2105 calculates z 1 v −r1 using the input random number r 1 and the first output information z 1 and sets the calculation result to u. The calculation result u is sent to the first power calculation unit 1106. Here, u = z 1 v −r1 = f (x) b x 1 That is, z 1 v −r1 is the output of a randomizable sampler having an error X 1 with respect to f (x). The reason will be described later (step S2105).

《ステップS2108の処理》
第二計算部2108は、入力された乱数r及び第二出力情報zを用いてzν−r2を計算してその計算結果をvとする。計算結果vは、第二べき乗計算部1109に送られる。ここで、v=zν−r2=f(x)となる。すなわち、zν−r2は、f(x)について誤差Xを持つ乱数化可能標本器の出力となる。その理由については後述する(ステップS2108)。
<< Processing in Step S2108 >>
The second calculation unit 2108 calculates z 2 v −r2 using the input random number r 2 and the second output information z 2 and sets the calculation result to v. The calculation result v is sent to the second power calculation unit 1109. Here, v = z 2 ν -r2 = f (x) becomes a x 2. That is, z 2 v −r2 is an output of a randomizable sampler having an error X 2 with respect to f (x). The reason will be described later (step S2108).

≪zν−r1,zν−r2がf(x)についてそれぞれ誤差X,Xを持つ乱数化可能標本器の出力となる理由について≫
cを自然数、R及びR’を乱数として、復号能力提供装置22がμ を用いて行う計算の計算結果をB(μ )とする。すなわち、第一出力情報計算部2201や第二出力情報計算部2202が復号装置21に返す計算結果をz=B(μ )とする。さらに、群Gに値を持つ確率変数XをX=B(μ R’)f(μ R’−1と定義する。
<< Reason why z 1 ν -r 1 and z 2 ν -r 2 are output from a randomizable sampler having errors X 1 and X 2 with respect to f (x), respectively >>
The c is a natural number, as a random number R and R ', the calculation result of the calculation is decoding capability providing apparatus 22 performed using the mu h R x c and B (μ h R x c) . That is, the calculation result returned from the first output information calculation unit 2201 and the second output information calculation unit 2202 to the decoding device 21 is z = B (μ h R x c ). Further, a random variable X having a value in the group G is defined as X = B (μ h R ′ ) f (μ h R ′ ) −1 .

このとき、zν−R=B(μ )f(μ−R=Xf(μ )f(μ−R=Xf(μf(x)f(μ−R=f(x)Xとなる。すなわち、zν−Rは、f(x)について誤差Xを持つ乱数化可能標本器の出力となる。 At this time, zν -R = B (μ h R x c) f (μ h) -R = Xf (μ h R x c) f (μ h) -R = Xf (μ h) R f (x) c f ([mu] h ) -R = f (x) cX . That is, zν− R is an output of a randomizable sampler having an error X with respect to f (x).

上記式展開において、X=B(μ R’)f(μ R’−1=B(μ )f(μ −1であり、B(μ )=Xf(μ )であるという性質を用いている。この性質は、関数f(x)が準同型関数であり、R及びR’が乱数であることに基づく。 In the above formula deployment, X = B (μ h R ') f (μ h R') -1 = B (μ h R x c) f (μ h R x c) is -1, B h R x c ) = Xf (μ h R x c ). This property is based on the fact that the function f (x) is a homomorphic function and R and R ′ are random numbers.

したがって、a,bが自然数、r,rが乱数であることを考慮すると、同様に、zν−r1,zν−r2がf(x)についてそれぞれ誤差X,Xを持つ乱数化可能標本器の出力となるのである。 Accordingly, considering that a and b are natural numbers and r 1 and r 2 are random numbers, similarly, z 1 ν −r1 and z 2 ν −r2 respectively give errors X 1 and X 2 with respect to f (x). This is the output of a randomizable sampler.

[第三実施形態]
第三実施形態は第二実施形態の変形例であり、a=1やb=1のときに前述した標本器によってu又はvの値を計算する。一般に乱数化可能標本器よりも標本器の計算量は小さい。a=1やb=1のときに乱数化可能標本器に代わり、標本器が計算を行うことで、復号制御システムの計算量を小さくすることができる。以下、第一実施形態及び第二実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。
[Third embodiment]
The third embodiment is a modification of the second embodiment, and the value of u or v is calculated by the above-described sampler when a = 1 or b = 1. In general, the amount of calculation of a sampler is smaller than that of a randomizable sampler. When a = 1 or b = 1, the sampler performs the calculation instead of the randomizable sampler, so that the calculation amount of the decoding control system can be reduced. Hereinafter, the description will focus on parts different from those of the first embodiment and the second embodiment, and redundant description of common parts such as decoding control processing will be omitted.

<構成>
図1に例示するように、第三実施形態の復号制御システム3は、復号装置21が復号装置31に置換され、復号能力提供装置22が復号能力提供装置32に置換されたものである。
<Configuration>
As illustrated in FIG. 1, in the decoding control system 3 of the third embodiment, the decoding device 21 is replaced with a decoding device 31, and the decoding capability providing device 22 is replaced with a decoding capability providing device 32.

図2に例示するように、第三実施形態の復号装置31は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部2104と第一計算部2105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部2108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113と第三計算部3109とを有する。   As illustrated in FIG. 2, the decoding device 31 of the third embodiment includes, for example, a natural number storage unit 1101, a natural number selection unit 1102, an integer calculation unit 1103, an input information providing unit 2104, a first calculation unit 2105, and a first power. Calculation unit 1106, first list storage unit 1107, second calculation unit 2108, second power calculation unit 1109, second list storage unit 1110, determination unit 1111, final output unit 1112, control unit 1113, third calculation unit 3109 Have

図3に例示するように、第三実施形態の復号能力提供装置32は、例えば、第一出力情報計算部2201と第二出力情報計算部2202と鍵記憶部1204と制御部1205と第三出力情報計算部3203とを有する。   As illustrated in FIG. 3, the decryption capability providing apparatus 32 according to the third embodiment includes, for example, a first output information calculation unit 2201, a second output information calculation unit 2202, a key storage unit 1204, a control unit 1205, and a third output. And an information calculation unit 3203.

<復号処理>
次に本形態の復号処理を説明する。第二実施形態との相違点を説明する。
<Decryption process>
Next, the decoding process of this embodiment will be described. Differences from the second embodiment will be described.

図7及び図8に例示するように、第三実施形態の処理は第二実施形態のステップS2103〜S2105,S2108,S2200〜S2203が、それぞれ、ステップS3103〜S3105,S3108,S2200〜S2203及びS3205〜S3209に置換されたものである。以下ではステップS3103〜S3105,S3108,S2200〜S2203及びS3205〜S3209の処理を中心に説明する。   As illustrated in FIGS. 7 and 8, the processing of the third embodiment includes steps S2103 to S2105, S2108, S2200 to S2203 of the second embodiment, steps S3103 to S3105, S3108, S2200 to S2203, and S3205, respectively. It has been replaced with S3209. Below, it demonstrates centering on the process of step S3103-S3105, S3108, S2200-S2203, and S3205-S3209.

《ステップS3103の処理》
復号装置31(図2)の入力情報提供部3104は、入力された暗号文xにそれぞれ対応する第一入力情報τ及び第二入力情報τを生成して出力する(図7/ステップS3103)。
<< Processing in Step S3103 >>
The input information providing unit 3104 of the decryption device 31 (FIG. 2) generates and outputs the first input information τ 1 and the second input information τ 2 respectively corresponding to the input ciphertext x (FIG. 7 / step S3103). ).

以下、図9を用いて本形態のステップS3103の処理を説明する。   Hereinafter, the processing in step S3103 of this embodiment will be described with reference to FIG.

制御部1113(図2)は、自然数選択部1102で選択された自然数(a,b)に応じて入力情報提供部3104を制御する。   The control unit 1113 (FIG. 2) controls the input information providing unit 3104 according to the natural number (a, b) selected by the natural number selecting unit 1102.

制御部1113でbが1であるかが判定され(ステップS3103a)、b≠1であると判定された場合、前述のステップS2103a及びS2103bの処理が実行され、ステップS3103gに進む。   Whether or not b is 1 is determined by the control unit 1113 (step S3103a). If it is determined that b ≠ 1, the processes of steps S2103a and S2103b described above are executed, and the process proceeds to step S3103g.

一方、ステップS3103aでb=1であると判定された場合、第三乱数生成部3104eが、0以上K未満の自然数の乱数rを生成する。生成された乱数rは第三入力情報計算部3104f及び第三計算部3109に送られる(ステップS3103b)。第三入力情報計算部3104fは、入力された乱数rと暗号文xとを用いてxr3を計算し、これを第一入力情報τとする(ステップS3103c)。その後、ステップS3103gに進む。 On the other hand, if it is determined that b = 1 in step S3103a, the third random number generation unit 3104e generates a random number r 3 of natural numbers from 0 to less than K H. Random number r 3 generated is sent to the third input information calculating unit 3104f, and a third calculation unit 3109 (step S3103b). Third input information calculating unit 3104f calculates the x r3 by using the random number r 3 is input ciphertext x, which is the first input information tau 1 (step S3103c). Thereafter, the process proceeds to step S3103g.

ステップS3103gでは、制御部1113でaが1であるかが判定され(ステップS3103g)、a≠1であると判定された場合、前述のステップS2103c及びステップS2103dの処理が実行される。   In step S3103g, whether or not a is 1 is determined by the control unit 1113 (step S3103g). If it is determined that a ≠ 1, the processes in steps S2103c and S2103d described above are executed.

一方、ステップS3103gでa=1であると判定された場合、第三乱数生成部3104eが、0以上K未満の自然数の乱数rを生成する。生成された乱数rは第三入力情報計算部3104fに送られる(ステップS3103h)。第三入力情報計算部3104fは、入力された乱数rと暗号文xとを用いてxr3を計算し、これを第二入力情報τとする(ステップS3103i)。 On the other hand, if it is determined that a = 1 at step S3103g, third random number generation unit 3104e generates a random number r 3 of natural numbers from 0 to less than K H. Random number r 3 generated is sent to the third input information calculating section 3104F (step S3103h). Third input information calculating unit 3104f calculates the x r3 by using the random number r 3 is input ciphertext x, which is referred to as second input information tau 2 (step S3103i).

第一入力情報計算部2104b、第二入力情報計算部2104d、第三入力情報計算部3104fは、以上のように生成した第一入力情報τ及び第二入力情報τを対応する自然数(a,b)の情報とともに出力する(ステップS3103e)。なお、本形態の第一入力情報τ及び第二入力情報τは、それぞれ、乱数r,r,rによって暗号文xとの関係をかく乱させた情報である。これにより、復号装置31は、暗号文xを復号能力提供装置32に対して隠蔽できる。 The first input information calculation unit 2104b, the second input information calculation unit 2104d, and the third input information calculation unit 3104f correspond to the first input information τ 1 and the second input information τ 2 generated as described above corresponding to the natural numbers (a , B) and the information (step S3103e). Note that the first input information τ 1 and the second input information τ 2 of this embodiment are information in which the relationship with the ciphertext x is disturbed by random numbers r 1 , r 2 , and r 3 , respectively. Thereby, the decryption device 31 can conceal the ciphertext x from the decryption capability providing device 32.

《S2200〜S2203及びS3205〜S3209の処理》
以下、図8を用いて本形態のS2200〜S2203及びS3205〜S3209の処理を説明する。
<< Processing of S2200 to S2203 and S3205 to S3209 >>
Hereinafter, the processing of S2200 to S2203 and S3205 to S3209 of this embodiment will be described with reference to FIG.

制御部1205(図3)は、入力された自然数(a,b)に応じ、第一出力情報計算部2201、第二出力情報計算部2202、及び第三出力情報計算部3203を制御する。   The control unit 1205 (FIG. 3) controls the first output information calculation unit 2201, the second output information calculation unit 2202, and the third output information calculation unit 3203 according to the input natural numbers (a, b).

制御部1205の制御に基づき、b≠1の場合の第一入力情報τ=μ r1は復号能力提供装置32(図3)の第一出力情報計算部2201に入力され、a≠1の場合の第二入力情報τ=μ r2は第二出力情報計算部2202に入力される。また、b=1の場合の第一入力情報τ=xr3やa=1の場合の第二入力情報τ=xr3は第三出力情報計算部3203に入力される(ステップS3200)。 Based on the control of the control unit 1205, the first input information τ 1 = μ h r1 x b when b ≠ 1 is input to the first output information calculation unit 2201 of the decoding capability providing apparatus 32 (FIG. 3), and a ≠ The second input information τ 2 = μ h r2 x a in the case of 1 is input to the second output information calculation unit 2202. The first input information τ 1 = x r3 when b = 1 and the second input information τ 2 = x r3 when a = 1 are input to the third output information calculation unit 3203 (step S3200).

制御部1113でbが1であるかが判定され(ステップS3205)、b≠1であると判定された場合、前述のステップS2201の処理が実行される。その後、制御部1113でaが1であるかが判定され(ステップS3208)、a≠1であると判定された場合、前述したステップS2202の処理が実行されてステップS3203に進む。   The control unit 1113 determines whether b is 1 (step S3205). If it is determined that b ≠ 1, the process of step S2201 described above is executed. Thereafter, the control unit 1113 determines whether a is 1 (step S3208). If it is determined that a ≠ 1, the process of step S2202 described above is executed, and the process proceeds to step S3203.

一方、ステップS3208でa=1であると判定された場合、第三出力情報計算部3203は、第二入力情報τ=xr3を用い、或る確率より大きな確率でf(xr3)を正しく計算し、得られた計算結果を第三出力情報zとする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部3203での計算結果がf(xr3)となる場合もあれば、f(xr3)とならない場合もある(ステップS3209)。その後、ステップS3203に進む。 On the other hand, if it is determined in step S3208 that a = 1, the third output information calculation unit 3203 uses the second input information τ 2 = x r3 and calculates f (x r3 ) with a probability greater than a certain probability. correctly calculated, the calculation results obtained and the third output information z 3. This calculation result may or may not be correct. That is, if even if the calculation results in the third output information calculating unit 3203 is f (x r3), may not become f (x r3) (step S3209). Thereafter, the process proceeds to step S3203.

また、ステップS3205でb=1であると判定された場合、第三出力情報計算部3203は、第二入力情報τ=xr3を用い、或る確率より大きな確率でf(xr3)を正しく計算し、得られた計算結果を第三出力情報zとする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部3203での計算結果がf(xr3)となる場合もあれば、f(xr3)とならない場合もある(ステップS3206)。 If it is determined in step S3205 that b = 1, the third output information calculation unit 3203 uses the second input information τ 1 = x r3 and calculates f (x r3 ) with a probability greater than a certain probability. correctly calculated, the calculation results obtained and the third output information z 3. This calculation result may or may not be correct. That is, if even if the calculation results in the third output information calculating unit 3203 is f (x r3), may not become f (x r3) (step S3206).

その後、制御部1113でaが1であるかが判定され(ステップS3207)、a=1であると判定された場合にはステップS3203に進み、a≠1であると判定された場合にはステップS2202に進む。   Thereafter, the control unit 1113 determines whether a is 1 (step S3207). When it is determined that a = 1, the process proceeds to step S3203, and when it is determined that a ≠ 1, the process proceeds to step S3203. The process proceeds to S2202.

ステップS3203では、第一出力情報zを生成した第一出力情報計算部2201は第一出力情報zを出力し、第二出力情報zを生成した第二出力情報計算部2202は第二出力情報zを出力し、第三出力情報zを生成した第三出力情報計算部2202は第三出力情報zを出力する(ステップS3203)。 In step S3203, the first output information calculation unit 2201 generates the first output information z 1 outputs the first output information z 1, the second output information calculation unit 2202 to generate a second output information z 2 second outputs the output information z 2, the third output information calculation unit 2202 to generate a third output information z 3 outputs a third output information z 3 (step S3203).

《ステップS3104及びS3105の処理》
図7に戻り、制御部1113の制御のもと、第一出力情報zは復号装置31(図2)の第一計算部2105に入力され、第二出力情報zは第二計算部2108に入力され、第三出力情報zは第三計算部3109に入力される(ステップS3104)。
<< Processing in Steps S3104 and S3105 >>
Returning to FIG. 7, under the control of the control unit 1113, the first output information z 1 is input to the first calculation unit 2105 of the decoding device 31 (FIG. 2), and the second output information z 2 is input to the second calculation unit 2108. is inputted, the third output information z 3 is input to the third calculation unit 3109 (step S3104).

b≠1であれば、第一計算部2105が、前述のステップS2105の処理によってuを生成し、b=1であれば、第三計算部3109が、z 1/r3を計算してその計算結果をuとする。計算結果uは第一べき乗計算部1106に送られる。ここで、b=1の場合、u=z 1/r3=f(x)xとなる。すなわち、z 1/r3は、f(x)について誤差Xを持つ標本器となる。その理由については後述する(ステップS3105)。 If b ≠ 1, the first calculation unit 2105 generates u by the process of step S2105 described above. If b = 1, the third calculation unit 3109 calculates z 3 1 / r3 and Let u be the calculation result. The calculation result u is sent to the first power calculation unit 1106. Here, when b = 1, u = z 3 1 / r 3 = f (x) x 3 . That is, z 3 1 / r3 is a sampler having an error X 3 with respect to f (x). The reason will be described later (step S3105).

《ステップS3108の処理》
a≠1であれば、第二計算部2108が、前述のステップS2108の処理によってvを生成し、a=1であれば、第三計算部3109が、z 1/r3を計算してその計算結果をvとする。計算結果vは第二べき乗計算部1109に送られる。ここで、a=1の場合、v=z 1/r3=f(x)xとなる。すなわち、z 1/r3は、f(x)について誤差Xを持つ標本器となる。その理由については後述する(ステップS3108)。
<< Process of Step S3108 >>
If a ≠ 1, the second calculation unit 2108 generates v by the process of step S2108 described above. If a = 1, the third calculation unit 3109 calculates z 3 1 / r3 and calculates Let v be the calculation result. The calculation result v is sent to the second power calculation unit 1109. Here, when a = 1, v = z 3 1 / r 3 = f (x) x 3 . That is, z 3 1 / r3 is a sampler having an error X 3 with respect to f (x). The reason will be described later (step S3108).

なお、z 1/r3の計算、すなわちzのべき乗根の計算が困難な場合には、次のようにしてu及び/又はvを計算してもよい。第三計算部3109は、乱数rとその乱数rに基づいて計算されたzの組を順次(α,β),(α,β),…,(α,β),…として図示していない記憶部に記憶する。mは1以上の自然数である。第三計算部3109は、α,α,…,αの最小公倍数が1になれば、γ,γ,…,γを整数としてγα+γα+…+γα=1となるγ,γ,…,γを計算して、そのγ,γ,…,γを用いてΠi=1 β γi=β γ1β γ2…β γmを計算して、その計算結果をu及び/又はvとしてもよい。 If calculation of z 3 1 / r 3 , that is, calculation of the power root of z 3 is difficult, u and / or v may be calculated as follows. The third calculation unit 3109 sequentially selects (α 1 , β 1 ), (α 2 , β 2 ),..., (Α m , β) from the random number r 3 and the set of z 3 calculated based on the random number r 3. m ),... are stored in a storage unit (not shown). m is a natural number of 1 or more. When the least common multiple of α 1 , α 2 ,..., Α m becomes 1, the third calculation unit 3109 sets γ 1 , γ 2 ,..., Γ m as integers to γ 1 α 1 + γ 2 α 2 +. m α m = 1 and becomes γ 1, γ 2, ..., γ m is calculated to the gamma, gamma 2, ..., gamma using m Π i = 1 m β i γi = β 1 γ1 β 2 γ2 ... Β m γm may be calculated and the calculation result may be u and / or v.

≪z 1/r3がf(x)について誤差Xを持つ標本器となる理由について≫
Rを乱数として、復号能力提供装置32がxを用いて行う計算の計算結果をB(x)とする。すなわち、第一出力情報計算部2201や第二出力情報計算部2202や第三出力情報計算部3203が復号装置31に返す計算結果をz=B(x)とする。さらに、群Gに値を持つ確率変数XをX=B(x1/Rf(x)−1と定義する。
<< Reason why z 3 1 / r3 is a sampler having an error X 3 with respect to f (x) >>
The R as a random number, the decoding capability providing device 32 the calculation result of the calculation and B (x R) performed using x R. That is, the calculation result returned from the first output information calculation unit 2201, the second output information calculation unit 2202, and the third output information calculation unit 3203 to the decoding device 31 is z = B (x R ). Further, a random variable X having a value in the group G is defined as X = B (x R ) 1 / R f (x) −1 .

このとき、z1/R=B(x1/R=Xf(x)=f(x)Xとなる。すなわち、z1/Rは、f(x)について誤差Xを持つ標本器となる。 In this case, the z 1 / R = B (x R) 1 / R = Xf (x) = f (x) X. That is, z 1 / R becomes a sampler having an error X with respect to f (x).

上記式展開において、X=B(x1/Rf(x−1であり、B(x1/R=Xf(x)であるという性質を用いている。この性質は、Rが乱数であることに基づく。 In the above formula deployment, an X = B (x R) 1 / R f (x R) -1, is used a property that is B (x R) 1 / R = Xf (x R). This property is based on the fact that R is a random number.

したがって、rが乱数であることを考慮すると、同様に、z 1/r3がf(x)について誤差Xを持つ標本器となるのである。 Therefore, considering that r 3 is a random number, similarly, z 3 1 / r 3 becomes a sampler having an error X 3 with respect to f (x).

[第四実施形態]
第四実施形態の復号制御システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、H=G×G、復号関数f(x)がElGamal暗号の復号関数、すなわち復号鍵s及び暗号文x=(c,c)に対してf(c,c)=c −sである場合の第一乱数化可能標本器及び第二乱数化可能標本器の例を具体化したものである。以下、第一実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。
[Fourth embodiment]
The decoding control system of the fourth embodiment is another example in which the first randomizable sampler and the second randomizable sampler described above are embodied. Specifically, H = G × G and the decryption function f (x) is a decryption function of ElGamal encryption, that is, f (c 1 , c 2 ) with respect to the decryption key s and ciphertext x = (c 1 , c 2 ). ) = C 1 c 2 −s is an example of the first randomizable sampler and the second randomizable sampler. Hereinafter, the description will focus on parts that are different from the first embodiment, and redundant description of common parts such as decoding control processing will be omitted.

図1に例示するように、第四実施形態の復号制御システム4は、復号装置11が復号装置41に置換され、復号能力提供装置12が復号能力提供装置42に置換されたものである。   As illustrated in FIG. 1, in the decoding control system 4 of the fourth embodiment, the decoding device 11 is replaced with a decoding device 41, and the decoding capability providing device 12 is replaced with a decoding capability providing device 42.

図2に例示するように、第四実施形態の復号装置41は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部4104と第一計算部4105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部4108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。図6に例示するように、本形態の入力情報提供部4104は、例えば、第四乱数生成部4104aと第五乱数生成部4104bと第一入力情報計算部4104cと第六乱数生成部4104dと第七乱数生成部4104eと第二入力情報計算部4104fとを有する。第一入力情報計算部4104cは、例えば、第四入力情報計算部4104caと第五入力情報計算部4104cbとを有し、第二入力情報計算部4104fは、第六入力情報計算部4104faと第七入力情報計算部4104fbとを有する。   As illustrated in FIG. 2, the decoding device 41 according to the fourth embodiment includes, for example, a natural number storage unit 1101, a natural number selection unit 1102, an integer calculation unit 1103, an input information provision unit 4104, a first calculation unit 4105, and a first power. A calculation unit 1106, a first list storage unit 1107, a second calculation unit 4108, a second power calculation unit 1109, a second list storage unit 1110, a determination unit 1111, a final output unit 1112, and a control unit 1113 are included. As illustrated in FIG. 6, the input information providing unit 4104 of the present embodiment includes, for example, a fourth random number generation unit 4104a, a fifth random number generation unit 4104b, a first input information calculation unit 4104c, a sixth random number generation unit 4104d, A seventh random number generation unit 4104e and a second input information calculation unit 4104f are included. The first input information calculation unit 4104c includes, for example, a fourth input information calculation unit 4104ca and a fifth input information calculation unit 4104cb, and the second input information calculation unit 4104f includes the sixth input information calculation unit 4104fa and the seventh input information calculation unit 4104fa. And an input information calculation unit 4104fb.

図3に例示するように、第四実施形態の復号能力提供装置42は、例えば、第一出力情報計算部4201と第二出力情報計算部4202と鍵記憶部1204と制御部1205とを有する。   As illustrated in FIG. 3, the decryption capability providing apparatus 42 according to the fourth embodiment includes, for example, a first output information calculation unit 4201, a second output information calculation unit 4202, a key storage unit 1204, and a control unit 1205.

<復号処理>
次に本形態の復号処理を説明する。第四実施形態では、群H=G×G、暗号文x=(c,c)∈Hであり、f(c,c)が準同型関数であり、群Gの生成元をμとし、群Gの位数をKとし、同じ復号鍵sに対する暗号文(V,W)∈Hとその暗号文を復号した復号文f(V,W)=Y∈Gとの組が復号装置41及び復号能力提供装置42に事前設定され、復号装置41及び復号能力提供装置42がこの組を利用可能とされているものとする。
<Decryption process>
Next, the decoding process of this embodiment will be described. In the fourth embodiment, the group H = G × G, the ciphertext x = (c 1 , c 2 ) ∈H, f (c 1 , c 2 ) is a homomorphic function, and the generator of the group G is and mu g, the order of the group G and K G, the ciphertext for the same decryption key s (V, W) ∈H and deciphertext f (V, W) obtained by decoding the ciphertext = set of the Y∈G Are preset in the decoding device 41 and the decoding capability providing device 42, and the decoding device 41 and the decoding capability providing device 42 are allowed to use this set.

図7及び図8に例示するように、第四実施形態の処理は第一実施形態のステップS1103〜S1105,S1108,S1200〜S1203が、それぞれ、ステップS4103〜S4105,S4108,S4200〜S4203に置換されたものである。以下ではステップS4103〜S4105,S4108,S4200〜S4203の処理のみを説明する。   As illustrated in FIGS. 7 and 8, in the process of the fourth embodiment, steps S1103 to S1105, S1108, and S1200 to S1203 of the first embodiment are replaced with steps S4103 to S4105, S4108, and S4200 to S4203, respectively. It is a thing. Hereinafter, only the processes of steps S4103 to S4105, S4108, and S4200 to S4203 will be described.

《ステップS4103の処理》
復号装置41(図2)の入力情報提供部4104は、入力された暗号文x=(c,c)に対応する第一入力情報τ及び暗号文x=(c,c)に対応する第二入力情報τを生成して出力する(図7/ステップS4103)。以下、図10を用いて本形態のステップS4103の処理を説明する。
<< Process of Step S4103 >>
Decoder 41 input information providing unit 4104 (FIG. 2) is, ciphertext is input x = (c 1, c 2) a first input information corresponding to tau 1 and the ciphertext x = (c 1, c 2) The second input information τ 2 corresponding to is generated and output (FIG. 7 / step S4103). Hereinafter, the processing in step S4103 of this embodiment will be described with reference to FIG.

第四乱数生成部4104a(図6)は、0以上K未満の自然数の一様乱数rを生成する。生成された乱数rは、第四入力情報計算部4104ca、第五入力情報計算部4104cb、及び第一計算部4105に送られる(ステップS4103a)。第五乱数生成部4104bは、0以上K未満の自然数の一様乱数rを生成する。生成された乱数rは、第五入力情報計算部4104cb、及び第一計算部4105に送られる(ステップS4103b)。 Fourth random number generating unit 4104A (FIG. 6) generates a uniform random number r 4 natural numbers from 0 to less than K G. Random number r 4 generated is sent fourth input information calculating unit 4104Ca, fifth input information calculating unit 4104Cb, and the first calculation unit 4105 (Step S4103a). Fifth random number generating unit 4104b generates a uniform random number r 5 natural numbers from 0 to less than K G. Random number r 5 generated is sent fifth input information calculating unit 4104Cb, and the first calculation unit 4105 (step S4103b).

第四入力情報計算部4104caは、自然数選択部1102で選択された自然数b、暗号文xが含むc、及び乱数rを用い、第四入力情報c r4を計算する(ステップS4103c)。第五入力情報計算部4104cbは、自然数選択部1102で選択された自然数b、暗号文xが含むc、及び乱数r,rを用い、第五入力情報c r4μ r5を計算する(ステップS4103d)。 The fourth input information calculation unit 4104ca calculates the fourth input information c 2 b W r4 using the natural number b selected by the natural number selection unit 1102, the c 2 included in the ciphertext x, and the random number r 4 (step S4103c). ). The fifth input information calculation unit 4104cb uses the natural number b selected by the natural number selection unit 1102, the c 1 included in the ciphertext x, and the random numbers r 4 and r 5 to use the fifth input information c 1 b V r4 μ g r5. Is calculated (step S4103d).

第六乱数生成部4104dは、0以上K未満の自然数の一様乱数rを生成する。生成された乱数rは、第六入力情報計算部4104fa、第七入力情報計算部4104fb、及び第二計算部4108に送られる(ステップS4103e)。第七乱数生成部4104eは、0以上K未満の自然数の一様乱数rを生成する。生成された乱数rは、第七入力情報計算部4104fb、及び第二計算部4108に送られる(ステップS4103f)。 Sixth random number generation unit 4104d generates a uniform random number r 6 of natural numbers from 0 to less than K G. The generated random number r 6 is sent to the sixth input information calculation unit 4104fa, the seventh input information calculation unit 4104fb, and the second calculation unit 4108 (step S4103e). Seventh random number generating unit 4104e generates uniform random numbers r 7 natural numbers from 0 to less than K G. The generated random number r 7 is sent to the seventh input information calculation unit 4104fb and the second calculation unit 4108 (step S4103f).

第六入力情報計算部4104faは、自然数選択部1102で選択された自然数a、暗号文xが含むc、及び乱数rを用い、第六入力情報c r6を計算する(ステップS4103g)。第七入力情報計算部4104fbは、自然数選択部1102で選択された自然数a、暗号文xが含むc、及び乱数r,rを用い、第七入力情報c r6μ r7を計算する(ステップS4103h)。 The sixth input information calculation unit 4104fa calculates the sixth input information c 2 a W r6 using the natural number a selected by the natural number selection unit 1102, the c 2 included in the ciphertext x, and the random number r 6 (step S4103g). ). Seventh input information calculating unit 4104fb is a natural number selected by the natural number selection unit 1102 a, with c 1 and the random number r 6, r 7, the ciphertext x includes, seventh input information c 1 a V r6 μ g r7 Is calculated (step S4103h).

第一入力情報計算部4104cは、以上のように生成した第四入力情報c r4及び第五入力情報c r4μ r5を第一入力情報τ=(c r4,c r4μ r5)として出力する。第二入力情報計算部4104fは、以上のように生成した第六入力情報c r6及び第七入力情報c r6μ r7を第二入力情報τ=(c r6,c r6μ r7)として出力する(ステップS4103i)。 The first input information calculating unit 4104c is more fourth input information was produced as c 2 b W r4 and fifth input information c 1 b V r4 μ g r5 first input information τ 1 = (c 2 b W r4, c 1 b V r4 μ g r5) is output as. Second input information calculating unit 4104f includes more sixth input information c 2 a W r6 and seventh input information c 1 was produced as a V r6 μ g r7 second input information τ 2 = (c 2 a W r6, c 1 a V r6 μ g r7) is output as (step S4103i).

《ステップS4200〜S4203の処理》
図8に例示するように、まず、第一入力情報τ=(c r4,c r4μ r5)が復号能力提供装置42(図3)の第一出力情報計算部4201に入力され、第二入力情報τ=(c r6,c r6μ r7)が第二出力情報計算部4202に入力される(ステップS4200)。
<< Steps S4200 to S4203 >>
As illustrated in FIG. 8, first, the first output information calculating unit of the first input information τ 1 = (c 2 b W r4, c 1 b V r4 μ g r5) is decoding capability providing apparatus 42 (FIG. 3) are input to the 4201, the second input information τ 2 = (c 2 a W r6, c 1 a V r6 μ g r7) is input to the second output information calculation unit 4202 (step S4200).

第一出力情報計算部4201は、第一入力情報τ=(c r4,c r4μ r5)と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(c r4μ r5,c r4)を正しく計算し、計算結果を第一出力情報zとする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部4201での計算結果がf(c r4μ r5,c r4)となる場合もあれば、f(c r4μ r5,c r4)とならない場合もある(ステップS4201)。 First output information calculating unit 4201, using the first input information τ 1 = (c 2 b W r4, c 1 b V r4 μ g r5) and the decryption key s stored in the key storage unit 1204, some the f (c 1 b V r4 μ g r5, c 2 b W r4) with greater probability than the probability to correctly calculate, the calculation results and the first output information z 1. This calculation result may or may not be correct. That is, if even if the calculation results in the first output information calculating unit 4201 is f (c 1 b V r4 μ g r5, c 2 b W r4), f (c 1 b V r4 μ g r5, c 2 b W r4 ) may not be satisfied (step S4201).

第二出力情報計算部4202は、第二入力情報τ=(c r6,c r6μ r7)と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(c r6μ r7,c r6)を正しく計算可能であり、得られた計算結果を第二出力情報zとする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部4202での計算結果がf(c r6μ r7,c r6)となる場合もあれば、f(c r6μ r7,c r6)とならない場合もある(ステップS4202)。 The second output information calculating unit 4202, using the second input information τ 2 = (c 2 a W r6, c 1 a V r6 μ g r7) and the decryption key s stored in the key storage unit 1204, some f with greater probability than the probability a (c 1 a V r6 μ g r7, c 2 a W r6) can correctly calculated and the calculation results obtained with the second output information z 2. This calculation result may or may not be correct. That is, if even if the calculation results of the second output information calculating unit 4202 is f (c 1 a V r6 μ g r7, c 2 a W r6), f (c 1 a V r6 μ g r7, c 2 a W r6 ) may not be satisfied (step S4202).

第一出力情報計算部4201は第一出力情報zを出力し、第二出力情報計算部4202は第二出力情報zを出力する(ステップS4203)。 The first output information calculation unit 4201 outputs the first output information z 1, the second output information calculation unit 4202 outputs the second output information z 2 (step S4203).

《ステップS4104及びS4105の処理》
図7に戻り、第一出力情報zは復号装置41(図2)の第一計算部4105に入力され、第二出力情報zは第二計算部4108に入力される(ステップS4104)。
<< Processing in Steps S4104 and S4105 >>
Returning to FIG. 7, the first output information z 1 is input to the first calculation unit 4105 of the decoding device 41 (FIG. 2), and the second output information z 2 is input to the second calculation unit 4108 (step S4104).

第一計算部4105は、入力された第一出力情報z及び乱数r,rを用い、z−r4μ −r5を計算してその計算結果をuとする(ステップS4105)。計算結果uは、第一べき乗計算部1106に送られる。ここで、u=z−r4μ −r5=f(c,cとなる。すなわち、z−r4μ −r5は、f(c,c)について誤差Xを持つ乱数化可能標本器の出力となる。その理由については後述する。 First calculation unit 4105, using the first output information z 1 and the random number r 4, r 5 inputted, calculates the z 1 Y -r4 μ g -r5 to the calculation result as u (step S4105) . The calculation result u is sent to the first power calculation unit 1106. Here, u = z 1 Y -r4 μ g -r5 = f (c 1, c 2) a b x 1. That, z 1 Y -r4 μ g -r5 becomes the output of the random number of possible sampler with an error X 1 for f (c 1, c 2) . The reason will be described later.

《ステップS4108の処理》
第二計算部4108は、入力された第二出力情報z及び乱数r,rを用い、z−r6μ −r7を計算してその計算結果をvとする。計算結果vは、第二べき乗計算部1109に送られる。ここで、v=z−r6μ −r7=f(c,cとなる。すなわち、z−r6μ −r7は、f(c,c)について誤差Xを持つ乱数化可能標本器の出力となる。その理由については後述する。
<< Process of Step S4108 >>
The second calculation unit 4108, using the second output information z 2 and the random number r 6, r 7 inputted, calculates the z 2 Y -r6 μ g -r7 to the calculation result v. The calculation result v is sent to the second power calculation unit 1109. Here, v = z 2 Y -r6 μ g -r7 = f (c 1, c 2) becomes a x 2. That, z 2 Y -r6 μ g -r7 becomes the output of the random number of possible sampler with an error X 2 for f (c 1, c 2) . The reason will be described later.

≪z−r4μ −r5,z−r6μ −r7がf(c,c)についてそれぞれ誤差X,Xを持つ乱数化可能標本器の出力となる理由について≫
cを自然数、R、R、R’及びR’を乱数として、復号能力提供装置42がc R1μ R2及びc R1を用いて行う計算の計算結果をB(c R1μ R2,c R1)とする。すなわち、第一出力情報計算部4201や第二出力情報計算部4202が復号装置41に返す計算結果をz=B(c R1μ R2,c R1)とする。さらに、群Gに値を持つ確率変数XをX=B(VR1’μ R2’,WR1’)f(VR1’μ R2’,WR1’−1と定義する。
«Z 1 Y -r4 μ g -r5, the reason why the z 2 Y -r6 μ g -r7 is the output of the random number of possible sampler with each error X 1, X 2 for f (c 1, c 2)
The c natural numbers, as R 1, R 2, a random number R 1 'and R 2', the calculation result of the calculation performed decoding capability provides device 42 with c 1 c V R1 μ g R2 and c 2 c W R1 and B (c 1 c V R1 μ g R2, c 2 c W R1). That is, the calculation results of the first output information calculation unit 4201 and the second output information calculation unit 4202 returns to the decoding apparatus 41 z = B (c 1 c V R1 μ g R2, c 2 c W R1). Further, define the random variable X with the value in the group G X = B (V R1 ' μ g R2', W R1 ') f (V R1' μ g R2 ', W R1') -1 and.

このとき、zY−R1μ −R2=B(c R1μ R2,c R1)Y−R1μ −R2=Xf(c R1μ R2,c R1)Y−R1μ −R2=Xf(c,cf(V,W)R1f(μ,eR2−R1μ −R2=Xf(c,cR1μ R2−R1μ −R2=f(c,cXとなる。すなわち、zY−R1μ −R2は、f(x)について誤差Xを持つ乱数化可能標本器の出力となる。なお、eは、群Gの単位元である。 At this time, zY -R1 μ g -R2 = B (c 1 c V R1 μ g R2, c 2 c W R1) Y -R1 μ g -R2 = Xf (c 1 c V R1 μ g R2, c 2 c W R1) Y -R1 μ g -R2 = Xf (c 1, c 2) c f (V, W) R1 f (μ g, e g) R2 Y -R1 μ g -R2 = Xf (c 1, c 2) the c Y R1 μ g R2 Y -R1 μ g -R2 = f (c 1, c 2) c X. That, zY -R1 μ g -R2 becomes the output of the random number of possible sampler with an error X for f (x). Note that eg is a unit element of the group G.

上記式展開において、X=B(VR1’μ R2’,WR1’)f(VR1’μ R2’,WR1’−1=B(c R1μ R2,c R1)f(c R1μ R2,c R1)であり、B(c R1μ R2,c R1)=Xf(c R1μ R2,c R1)であるという性質を用いている。この性質は、R、R、R’及びR’が乱数であることに基づく。 In the above formula deployment, X = B (V R1 ' μ g R2', W R1 ') f (V R1' μ g R2 ', W R1') -1 = B (c 1 c V R1 μ g R2, c 2 c W R1) is f (c 1 c V R1 μ g R2, c 2 c W R1), B (c 1 c V R1 μ g R2, c 2 c W R1) = Xf (c 1 c V R1 μ g R2 , c 2 c W R1 ). This property is based on the fact that R 1 , R 2 , R 1 ′ and R 2 ′ are random numbers.

したがって、a,bが自然数、r,r,r及びrが乱数であることを考慮すると、同様に、z−r4μ −r5,z−r6μ −r7がf(c,c)についてそれぞれ誤差X,Xを持つ乱数化可能標本器の出力となるのである。 Therefore, a, b are natural numbers and r 4, r 5, r 6 and r 7 is considered to be a random number, similarly, z 1 Y -r4 μ g -r5 , z 2 Y -r6 μ g -r7 Is the output of a randomizable sampler with errors X 1 and X 2 for f (c 1 , c 2 ), respectively.

[第五実施形態]
上述の各実施形態では、復号装置の自然数記憶部1101に、互いに素である2つの自然数a,bの組(a,b)が複数種類記憶され、これらの組(a,b)を用いて各処理が実行されることとした。しかしながら、a,bの一方が定数であってもよい。例えば、aが1に固定されていてもよいし、bが1に固定されていてもよい。言い換えると、第一乱数化可能標本器又は第二乱数化可能標本器の一方が標本器に置換されていてもよい。a,bの一方が定数である場合、定数とされたa又はbを選択する処理が不要となり、各処理部は定数とされたa又はbが入力されることなく、それを定数として扱って計算を行うことができる。また、定数とされたa又はbが1である場合には、a’やb’を用いることなく、f(x)=ub’a’をf(x)=v又はf(x)=uとして得ることができる。
[Fifth embodiment]
In each of the above-described embodiments, the natural number storage unit 1101 of the decoding device stores a plurality of types (a, b) of two prime numbers a and b that are relatively prime, and uses these sets (a, b). Each process is to be executed. However, one of a and b may be a constant. For example, a may be fixed to 1, or b may be fixed to 1. In other words, one of the first randomizable sampler and the second randomizable sampler may be replaced with a sampler. When one of a and b is a constant, there is no need to select a or b as a constant, and each processing unit treats it as a constant without inputting a or b as a constant. Calculations can be made. If a or b, which is a constant, is 1, f (x) = u b ′ v a ′ is changed to f (x) = v or f (x) without using a ′ or b ′. = U can be obtained.

第五実施形態は、そのような変形の一例であり、bが1に固定され、第二乱数化可能標本器が標本器に置換された形態である。以下では、第一実施形態との相違点を中心に説明し、復号制御処理などの第一実施形態と共通する事項については説明を省略する。また、第一乱数化可能標本器や標本器の具体例も、第二実施形態から第四実施形態で説明したのと同様であるため、説明を省略する。   The fifth embodiment is an example of such a modification, in which b is fixed to 1 and the second randomizable sampler is replaced with a sampler. Below, it demonstrates centering around difference with 1st embodiment, and abbreviate | omits description about matters common to 1st embodiment, such as a decoding control process. Specific examples of the first randomizable sampler and the sampler are the same as those described in the second to fourth embodiments, and thus the description thereof is omitted.

<構成>
図1に例示するように、第五実施形態の復号制御システム5は、第一実施形態の復号装置11が復号装置51に置換され、復号能力提供装置12が復号能力提供装置52に置換されたものである。
<Configuration>
As illustrated in FIG. 1, in the decoding control system 5 of the fifth embodiment, the decoding device 11 of the first embodiment is replaced with a decoding device 51, and the decoding capability providing device 12 is replaced with a decoding capability providing device 52. Is.

図11に例示するように、第五実施形態の復号装置51は、例えば、自然数記憶部5101と自然数選択部5102と入力情報提供部5104と第一計算部5105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部5108と第二リスト記憶部5110と判定部5111と最終出力部1112と制御部1113とを有する。   As illustrated in FIG. 11, the decoding device 51 of the fifth embodiment includes, for example, a natural number storage unit 5101, a natural number selection unit 5102, an input information providing unit 5104, a first calculation unit 5105, a first power calculation unit 1106, One list storage unit 1107, second calculation unit 5108, second list storage unit 5110, determination unit 5111, final output unit 1112, and control unit 1113 are included.

図3に例示するように、第五実施形態の復号能力提供装置52は、例えば、第一出力情報計算部5201と第二出力情報計算部5202と鍵記憶部1204と制御部1205とを有する。   As illustrated in FIG. 3, the decryption capability providing apparatus 52 of the fifth embodiment includes, for example, a first output information calculation unit 5201, a second output information calculation unit 5202, a key storage unit 1204, and a control unit 1205.

<復号処理>
次に本形態の復号処理を説明する。復号処理の前提として、G,Hを巡回群、f(x)を群Hの元である暗号文xを特定の復号鍵sで復号して群Gの元を得るための復号関数、群G,Hの生成元をそれぞれμ,μ、X,Xを群Gに値を持つ確率変数、確率変数Xの実現値をx、確率変数Xの実現値をxとする。また、復号装置51の自然数記憶部5101には、自然数aが複数種類記憶されているものとする。
<Decryption process>
Next, the decoding process of this embodiment will be described. As a premise of the decryption process, G and H are cyclic groups, f (x) is a decryption function for decrypting a ciphertext x that is an element of the group H with a specific decryption key s, and a group G each mu g the generator of H, mu h, X 1, X 2 a random variable with values in the group G, the realization of the random variable X 1 x 1, the realization of the random variable X 2 and x 2 To do. Also, it is assumed that the natural number storage unit 5101 of the decoding device 51 stores a plurality of types of natural numbers a.

図12に例示するように、まず、復号装置51(図11)の自然数選択部5102が、自然数記憶部5101に記憶された複数の自然数aから1つの自然数aをランダムに読み込む。読み込まれた自然数aの情報は、入力情報提供部5104及び第一べき乗計算部1106に送られる(ステップS5100)。   As illustrated in FIG. 12, first, the natural number selection unit 5102 of the decoding device 51 (FIG. 11) reads one natural number a at random from a plurality of natural numbers a stored in the natural number storage unit 5101. The read information on the natural number a is sent to the input information providing unit 5104 and the first power calculation unit 1106 (step S5100).

制御部1113は、t=1とする(ステップS1102)。   The control unit 1113 sets t = 1 (step S1102).

入力情報提供部5104は、入力された暗号文xにそれぞれ対応する第一入力情報τ及び第二入力情報τを生成して出力する。好ましくは、第一入力情報τ及び第二入力情報τはそれぞれ暗号文xとの関係をかく乱させた情報である。これにより、復号装置51は、暗号文xを復号能力提供装置52に対して隠蔽できる。また、好ましくは、本形態の第二入力情報τは自然数選択部5102で選択された自然数aにさらに対応する。これにより、復号能力提供装置52から提供された復号能力を復号装置51が高い精度で評価できる(ステップS5103)。第一入力情報τ及び第二入力情報τの組みの具体例は、第二実施形態から第四実施形態の何れかのb=1とした第一入力情報τ及び第二入力情報τの組みである。 The input information providing unit 5104 generates and outputs first input information τ 1 and second input information τ 2 corresponding to the input ciphertext x. Preferably, the first input information τ 1 and the second input information τ 2 are information that disturbs the relationship with the ciphertext x. Thereby, the decryption device 51 can conceal the ciphertext x from the decryption capability providing device 52. In addition, preferably, the second input information τ 2 of this embodiment further corresponds to the natural number a selected by the natural number selection unit 5102. Accordingly, the decoding device 51 can evaluate the decoding capability provided from the decoding capability providing device 52 with high accuracy (step S5103). Specific examples of the first input information tau 1 and the second input information tau 2 sets, one of b = 1 and the first input information tau 1 and the second input information of the fourth embodiment from the second embodiment tau It is a set of two .

図8に例示するように、第一入力情報τは復号能力提供装置52(図3)の第一出力情報計算部5201に入力され、第二入力情報τは第二出力情報計算部5202に入力される(ステップS5200)。 As illustrated in FIG. 8, the first input information τ 1 is input to the first output information calculation unit 5201 of the decoding capability providing apparatus 52 (FIG. 3), and the second input information τ 2 is input to the second output information calculation unit 5202. (Step S5200).

第一出力情報計算部5201は、第一入力情報τと鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた計算結果を第一出力情報zとする(ステップS5201)。第二出力情報計算部5202は、第二入力情報τと鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた演算結果を第二出力情報zとする(ステップS5202)。すなわち、第一出力情報計算部5201や第二出力情報計算部5202は、意図的又は意図的ではない誤差を含んだ計算結果を出力する。言い換えると、第一出力情報計算部5201での計算結果がf(τ)の場合もあればf(τ)でない場合もあり、第二出力情報計算部5202での計算結果がf(τ)の場合もあればf(τ)でない場合もある。第一出力情報z及び第二出力情報zの組の具体例は、第二実施形態から第四実施形態の何れかのb=1とした第一出力情報z及び第二出力情報zの組である。 The first output information calculation unit 5201 uses the first input information τ 1 and the decryption key s stored in the key storage unit 1204 to correctly calculate f (τ 1 ) with a probability larger than a certain probability. the calculation result to the first output information z 1 (step S5201). The second output information calculation unit 5202 uses the second input information τ 2 and the decryption key s stored in the key storage unit 1204 to correctly calculate f (τ 2 ) with a probability larger than a certain probability. the operation result as the second output information z 2 (step S5202). That is, the first output information calculation unit 5201 and the second output information calculation unit 5202 output a calculation result including an intentional or unintentional error. In other words, also when the calculation result in the first output information calculation section 5201 is not f Some cases of (τ 1) f (τ 1 ), the calculation result of the second output information calculation unit 5202 f (tau 2 ) or not f (τ 2 ). Specific examples of the set of first output information z 1 and the second output information z 2, the first output information z 1 and the second output information z of the second embodiment is either of b = 1 of the fourth embodiment It is a set of two .

第一出力情報計算部5201は第一出力情報zを出力し、第二出力情報計算部5202は第二出力情報zを出力する(ステップS5203)。 The first output information calculation unit 5201 outputs the first output information z 1, the second output information calculation unit 5202 outputs the second output information z 2 (step S5203).

図12に戻り、第一出力情報zは復号装置51(図11)の第一計算部5105に入力され、第二出力情報zは第二計算部5108に入力される。これらの第一出力情報z及び第二出力情報zが、復号能力提供装置52から復号装置51に与えられた復号能力に相当する(ステップS5104)。 Returning to FIG. 12, the first output information z 1 is input to the first calculator 5105 of the decoding device 51 (FIG. 11), and the second output information z 2 is input to the second calculator 5108. The first output information z 1 and the second output information z 2 correspond to the decoding capability given from the decoding capability providing apparatus 52 to the decoding apparatus 51 (step S5104).

第一計算部5105は、第一出力情報zから演算結果u=f(x)xを生成する。演算結果uの具体例は、第二実施形態から第四実施形態の何れかのb=1とした演算結果uである。演算結果uは第一べき乗計算部1106に送られる(ステップS5105)。 The first calculation unit 5105 generates a calculation result u = f (x) x 1 from the first output information z 1 . A specific example of the calculation result u is the calculation result u in which b = 1 in the second embodiment to the fourth embodiment. The calculation result u is sent to the first power calculation unit 1106 (step S5105).

第一べき乗計算部1106はu’=uを計算する。計算結果uとその計算結果に基づいて計算されたu’との組(u,u’)は、第一リスト記憶部1107に記憶される(ステップS1106)。 The first power calculation unit 1106 calculates u ′ = u a . A set (u, u ′) of the calculation result u and u ′ calculated based on the calculation result is stored in the first list storage unit 1107 (step S1106).

第二計算部5108は、第二出力情報zから演算結果v=f(x)を生成する。演算結果vの具体例は、第二実施形態から第四実施形態の何れかの演算結果vである。演算結果vは第二リスト記憶部5110に記憶される(ステップS5108)。 The second calculation unit 5108 generates a calculation result v = f (x) a x 2 from the second output information z 2 . A specific example of the calculation result v is the calculation result v of any one of the second to fourth embodiments. The calculation result v is stored in the second list storage unit 5110 (step S5108).

判定部5111は、第一リスト記憶部1107に記憶された組(u,u’)及び第二リスト記憶部5110に記憶されたvの中で、u’=vとなるものがあるか判定する(ステップS5110)。u’=vとなるものがあった場合には、ステップS5114に進む。u’=vとなるものがなかった場合には、ステップS1111に進む。   The determination unit 5111 determines whether there is a pair (u, u ′) stored in the first list storage unit 1107 and v stored in the second list storage unit 5110 such that u ′ = v. (Step S5110). If there is one that satisfies u ′ = v, the process proceeds to step S5114. If there is no u ′ = v, the process advances to step S1111.

ステップS1111では、制御部1113がt=Tであるか判定する(ステップS1111)。Tは予め定められた1以上の自然数である。t=Tであれば、最終出力部1112が、計算をすることができなかった旨の情報、例えば記号「⊥」を出力して(ステップS1113)、処理を終える。t=Tでない場合には、制御部1113は、tを1だけインクリメント、すなわちt=t+1として(ステップS1112)、ステップS5103に戻る。   In step S1111, the control unit 1113 determines whether t = T (step S1111). T is a predetermined natural number of 1 or more. If t = T, the final output unit 1112 outputs information indicating that the calculation could not be performed, for example, the symbol “⊥” (step S1113), and the process ends. If not t = T, the control unit 1113 increments t by 1, that is, sets t = t + 1 (step S1112), and returns to step S5103.

ステップS5114では、最終出力部1112が、u’=vであると判定されたu’に対応するuを出力する(ステップS5114)。このように得られたuは、第一実施形態から第四実施形態でb=1とした場合のub’a’に相当する。すなわち、このように得られたuは高い確率で暗号文xを特定の復号鍵sで復号した復号結果f(x)となる。よって、上述した処理を複数回繰り返し、ステップS5114で得られた値のうち最も頻度の高い値を復号結果とすればよい。また、後述するように、設定によっては圧倒的な確率でu=f(x)となる。その場合にはステップS5114で得られた値をそのまま復号結果としてよい。 In step S5114, the final output unit 1112 outputs u corresponding to u ′ determined to be u ′ = v (step S5114). The u thus obtained corresponds to u b ′ v a ′ when b = 1 in the first to fourth embodiments. That is, u thus obtained is a decryption result f (x) obtained by decrypting the ciphertext x with the specific decryption key s with a high probability. Therefore, the above-described processing is repeated a plurality of times, and the most frequently used value among the values obtained in step S5114 may be used as the decoding result. Further, as will be described later, depending on the setting, u = f (x) with an overwhelming probability. In that case, the value obtained in step S5114 may be used as a decoding result as it is.

≪復号結果f(x)が得られる理由について≫
次に、本形態の復号装置51で復号結果f(x)が得られる理由を説明する。まず、説明に必要な事項を定義する。
<< Reason for Decoding Result f (x) >>
Next, the reason why the decoding result f (x) is obtained by the decoding device 51 of this embodiment will be described. First, the matters necessary for explanation are defined.

ブラックボックス(black−box):
f(τ)のブラックボックスF(τ)とは、τ∈Hを入力としてz∈Gを出力する処理部を意味する。本形態では、第一出力情報計算部5201及び第二出力情報計算部5202が、それぞれ復号関数f(τ)のブラックボックスF(τ)に相当する。群Hから任意に選択された元τ∈H及びz=F(τ)に対してz=f(τ)を満たす確率がδ(0<δ≦1)よりも大きい場合、すなわち、
Pr[z=f(τ)|τ∈H,z=F(τ)]>δ …(1)
を満たすf(τ)のブラックボックスF(τ)のことを、信頼性δ(δ−reliable)のf(τ)のブラックボックスF(τ)という。なお、δは正の値であり、前述した「或る確率」に相当する。
Black-box:
The black box F (τ) of f (τ) means a processing unit that inputs τεH and outputs zεG. In this embodiment, the first output information calculation unit 5201 and the second output information calculation unit 5202 correspond to the black box F (τ) of the decoding function f (τ), respectively. If the probability of satisfying z = f (τ) for an element τε U H and z = F (τ) arbitrarily selected from group H is greater than δ (0 <δ ≦ 1),
Pr [z = f (τ) | τ∈ U H, z = F (τ)]> δ ... (1)
A black box F (τ) of f (τ) that satisfies the above is called a black box F (τ) of f (τ) with reliability δ (δ-reliable). Δ is a positive value and corresponds to the “certain probability” described above.

自己訂正器(self−corrector):
自己訂正器C(x)とは、x∈Hを入力とし、f(τ)のブラックボックスF(τ)を用いて計算を行い、j∈G∪⊥を出力する処理部を意味する。本形態では、復号装置51が自己訂正器C(x)に相当する。
Self-corrector:
The self-corrector C F (x) means a processing unit that receives x∈H, performs calculation using the black box F (τ) of f (τ), and outputs j∈G∪⊥. In this embodiment, the decoding device 51 corresponds to the self-corrector C F (x).

オールモスト自己訂正器(almost self−corrector):
自己訂正器C(x)が、x∈Hを入力とし、δ−reliableのf(τ)のブラックボックスF(τ)を用い、正しい値j=f(x)を出力する確率が、誤った値j≠f(x)を出力する確率よりも十分大きい場合を想定する。すなわち、
Pr[j=f(x)|j=C(x),j≠⊥]
>Pr[j≠f(x)|j=C(x),j≠⊥]+Δ …(2)
を満たす場合を想定する。なお、Δは或る正の値(0<Δ<1)である。このような場合、自己訂正器C(x)はオールモスト自己訂正器であるという。例えば、或る正の値Δ’(0<Δ’<1)に対して
Pr[j=f(x)|j=C(x)]>(1/3)+Δ’
Pr[j=⊥|j=C(x)]<1/3
Pr[j≠f(x)かつj≠⊥|j=C(x)]<1/3
を満たす場合、自己訂正器C(x)はオールモスト自己訂正器である。Δ’の例はΔ’=1/12や1/3である。
Almost self-corrector:
If the self-corrector C F (x) receives x∈H and uses the black box F (τ) of f (τ) of δ-reliable, the probability that the correct value j = f (x) is output is incorrect. Assume that the value j ≠ f (x) is sufficiently larger than the probability of outputting. That is,
Pr [j = f (x) | j = C F (x), j ≠ ⊥]
> Pr [j ≠ f (x) | j = C F (x), j ≠ ⊥] + Δ (2)
Assuming that Δ is a certain positive value (0 <Δ <1). In such a case, the self-corrector C F (x) is said to be an all-most self-corrector. For example, Pr [j = f (x) | j = C F (x)]> (1/3) + Δ ′ for a certain positive value Δ ′ (0 <Δ ′ <1)
Pr [j = ⊥ | j = C F (x)] <1/3
Pr [j ≠ f (x) and j ≠ ⊥ | j = C F (x)] <1/3
If the condition is satisfied, the self-corrector C F (x) is an all-most self-corrector. Examples of Δ ′ are Δ ′ = 1/12 and 1/3.

ローバスト自己訂正器(robust self−corrector):
自己訂正器C(x)が、x∈Hを入力とし、δ−reliableのf(τ)のブラックボックスF(τ)を用い、正しい値j=f(x)又はj=⊥を出力する確率が圧倒的である場合を想定する。すなわち、無視することができる誤差ξ(0≦ξ<1)に対して
Pr[j=f(x)またはj=⊥|j=C(x)]>1−ξ …(3)
を満たす場合を想定する。このような場合、自己訂正器C(x)はローバスト自己訂正器であるという。なお、無視することができる誤差ξの例は、セキュリティパラメータkの関数値ξ(k)である。関数値ξ(k)の例は、任意の多項式p(k)について、十分大きいkに対して{ξ(k)p(k)}が0に収束するものである。関数値ξ(k)の具体例は、ξ(k)=2−kやξ(k)=2−√kなどである。
Robust self-corrector:
The self-corrector C F (x) takes x∈H as an input and outputs a correct value j = f (x) or j = ⊥ using a black box F (τ) of f (τ) of δ-reliable. Assume that the probability is overwhelming. That is, Pr [j = f (x) or j = ⊥ | j = C F (x)]> 1-ξ (3) with respect to an error ξ (0 ≦ ξ <1) that can be ignored.
Assuming that In such a case, the self-corrector C F (x) is said to be a robust self-corrector. An example of the error ξ that can be ignored is the function value ξ (k) of the security parameter k. An example of the function value ξ (k) is such that {ξ (k) p (k)} converges to 0 for a sufficiently large k for an arbitrary polynomial p (k). Specific examples of the function value ξ (k) are ξ (k) = 2− k and ξ (k) = 2− √k .

また、オールモスト自己訂正器からローバスト自己訂正器を構成することができる。すなわち、同一のxに対してオールモスト自己訂正器を複数回実行させ、⊥を除いて最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。例えば、同一のxに対してオールモスト自己訂正器をO(log(1/ξ))回実行させ、最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。なお、O(・)はオー記法を表す。   In addition, a robust self-corrector can be constructed from an all-most self-corrector. That is, a robust self-corrector can be configured by executing the all-most self-corrector a plurality of times for the same x and setting j as the most frequent output value excluding wrinkles. For example, a robust self-corrector can be constructed by executing an all-most self-corrector O (log (1 / ξ)) times for the same x and setting j as the most frequent output value. O (•) represents the O-notation.

擬似自由(pseudo−free)な作用:
群G、自然数の集合Ω={0,...,M}(Mは1以上の自然数)、群Gに値を持つ確率変数X,Xの各実現値α∈X(α≠e),β∈X、及びa∈Ωについて、α=βとなる確率
Pr[α=βかつα≠e|a∈Ω,α∈X,β∈X] …(4)
について、あらゆる可能なX,Xに関する上限値を、組(G,Ω)の疑似自由指標とよび、これをP(G,Ω)と表すことにする。ある無視することができる関数ζ(k)が存在して、
P(G,Ω)<ζ(k) …(5)
である場合、組(G,Ω)によって定義される演算は擬似自由な作用であるという。なお、「α」は、群Gで定義された演算をαに対してa回作用させることを意味する。また、無視することができる関数ζ(k)の例は、任意の多項式p(k)について、十分大きいkに対して{ζ(k)p(k)}が0に収束するものである。関数ζ(k)の具体例は、ζ(k)=2−kやζ(k)=2−√kなどである。例えば、セキュリティパラメータkとに対し、式(4)の確率がO(2−k)未満である場合、組(G,Ω)によって定義される演算は擬似自由な作用である。また、例えば、任意のα∈Gでα≠eであるものについて、集合Ω・α={a(α)|a∈Ω}の要素数|Ω・α|が2を超える場合、組(G,Ω)によって定義される演算は擬似自由な作用といえる。なお、a(α)は、aとαに所定の演算を作用させた結果を表す。このような具体例は数多く存在する。例えば、群Gが素数pを法とする剰余群Z/pZであり、素数pが2のオーダーであり、集合Ω={0,...,p−2}であり、a(α)がα∈Z/pZであり、α≠eである場合、Ω・α={α|a=0,...,p−2}={e,α,...,αp−2}となり、|Ω・α|=p−1である。素数pが2のオーダーであるため、ある定数Cが存在して、kが十分大きければ|Ω・α|>C2を満たす。ここで式(4)の確率はC−1−k未満であり、このような組(G,Ω)によって定義される演算は擬似自由な作用である。
Pseudo-free action:
Group G, set of natural numbers Ω = {0,. . . , M} (M is a natural number greater than or equal to 1 ), realization values α∈X 1 (α ≠ e g ), β∈X 2 , and a∈Ω of random variables X 1 and X 2 having values in group G , the probability becomes α a = β Pr [α a = β cutlet α ≠ e g | a∈ U Ω , α∈X 1, β∈X 2] ... (4)
For the upper limit value regarding every possible X 1, X 2, referred to as pseudo-free indicator of the set (G, Omega), which will be expressed as P (G, Ω). There is a function ζ (k) that can be ignored,
P (G, Ω) <ζ (k) (5)
The operation defined by the pair (G, Ω) is a pseudo-free action. “Α a ” means that the operation defined in the group G is applied to α a times. An example of the function ζ (k) that can be ignored is that {ζ (k) p (k)} converges to 0 for a sufficiently large k for an arbitrary polynomial p (k). Specific examples of the function ζ (k) include ζ (k) = 2 −k and ζ (k) = 2 −√k . For example, when the probability of Expression (4) is less than O (2- k ) with respect to the security parameter k, the operation defined by the set (G, Ω) is a pseudo-free action. Further, for example, for those that are alpha ≠ e g in any Arufa∈G, set Ω · α = {a (α ) | a∈Ω} If exceeding 2 k, | number of elements | Omega · alpha The operation defined by the pair (G, Ω) can be said to be a pseudo-free action. Note that a (α) represents the result of applying a predetermined calculation to a and α. There are many such examples. For example, the group G is a residue group Z / pZ modulo a prime number p, the prime number p is on the order of 2 k , and the set Ω = {0,. . . A p-2}, a a (alpha) is alpha a ∈ Z / pZ, if it is α ≠ e g, Ω · α = {α a | a = 0 ,. . . , P-2} = {eg, α 1 ,. . . , Α p−2 }, and | Ω · α | = p−1. Since prime p is of the order of 2 k, then there exists a constant C, if k is sufficiently large | Ω · α |> meet C2 k. Here, the probability of the equation (4) is less than C - 12- k , and the operation defined by such a set (G, [Omega]) is a pseudo-free action.

信頼性δγ(δγ−reliable)の乱数化可能標本器:
自然数aが与えられるたびに、δ−reliableのf(τ)のブラックボックスF(τ)を用い、w∈Gについて、確率変数Xに従った標本x’に対応するwx’を返す乱数化可能標本器であって、wx’=wである確率がδγよりも大きい(γは正定数)、すなわち、
Pr[wx’=w]>δγ …(6)
を満たすものを、信頼性δγな乱数化可能標本器という。本形態の入力情報提供部5104と第二出力情報計算部5202と第二計算部5108との組は、w=f(x)について、信頼性δγな乱数化可能標本器である。
A randomizable sampler with reliability δ γγ -reliable):
Each time a natural number a is given, a random number that uses a black box F (τ) of f (τ) of δ-reliable and returns w a x ′ corresponding to a sample x ′ according to a random variable X for w∈G a reduction can sampler, w a x '= w a is greater than [delta] gamma probability is (gamma positive constant), i.e.,
Pr [w a x ′ = w a ]> δ γ (6)
A sampler satisfying the condition is called a randomizable sampler with reliability δγ. Set of input information providing unit 5104 of the present embodiment and the second output information calculation unit 5202 and the second calculation unit 5108, for w = f (x), a reliability [delta] gamma random number of possible sampler.

次に、これらの定義を用い、本形態の復号装置51で復号結果f(x)が得られる理由を説明する。   Next, the reason why a decoding result f (x) is obtained by the decoding device 51 of this embodiment will be described using these definitions.

本形態のステップS5110ではu’=vであるか、すなわち、u=vであるかを判定している。本形態の入力情報提供部5104と第二出力情報計算部5202と第二計算部5108との組は信頼性δγな乱数化可能標本器であるため(式(6))、Tをk,δ,γから定まる一定値よりも大きい値とすれば、漸近的に大きい確率でu=vが成立する(ステップS5110でyesとなる)場合が生じる。たとえば、T≧4/δγとすれば、u=vが成立する(ステップS5110でyesとなる)確率は1/2よりも大きいことがMarkovの不等式によってわかる。 In step S5110 of this embodiment, it is determined whether u ′ = v, that is, whether u a = v. For set of input information providing unit 5104 of the present embodiment and the second output information calculation unit 5202 and the second calculation portion 5108 is the reliable [delta] gamma random number of possible sampler (equation (6)), the T k, If the value is larger than a constant value determined from δ and γ, there is a case where u a = v is established with an asymptotically large probability (yes in step S5110). For example, if T ≧ 4 / δ γ, (a yes in step S5110) u a = v is established probability can be seen by the inequality of Markov be greater than 1/2.

また、本形態ではu=f(x)x及びv=f(x)なのであるから、u=vが成立する場合にはx =xが成立する。x =xが成立する場合には、x=x=eである場合とx≠eである場合とがある。x=x=eである場合には、u=f(x)となるのであるから、ステップS5114で出力されるuは正しい復号結果f(x)となる。一方、x≠eである場合には、u≠f(x)となるのであるから、ステップS5114で出力されるuは正しい復号結果f(x)ではない。 In this embodiment, since u = f (x) x 1 and v = f (x) a x 2 , when u a = v holds, x 1 a = x 2 holds. if x 1 a = x 2 is established, and a case is x 1 = x 2 = e If a g and x 1e g. If it is x 1 = x 2 = e g, since it is of a u = f (x), u is output in step S5114 is correct decoding result f (x). On the other hand, in the case of x 1e g, since it is of a u ≠ f (x), u is output in step S5114 is not the correct decoding result f (x).

群Gと自然数aが属する集合Ωとの組(G,Ω)によって定義される演算が擬似自由な作用であるか、疑似自由指標P(G,Ω)についてTP(G,Ω)が漸近的に小さい場合、u=vの場合にx≠eである確率(式(4))は漸近的に小さい。したがって、u=vの場合にx=eである確率は漸近的に大きい。よって、組(G,Ω)によって定義される演算が擬似自由な作用であるか、TP(G,Ω)が漸近的に小さい場合、u=vの場合に誤った復号結果f(x)が出力される確率は、u=vの場合に正しい復号結果f(x)が出力される確率よりも十分小さい。この場合の復号装置51はオールモスト自己訂正器であるといえる(式(2)参照)。そのため、前述のように、復号装置51からローバスト自己訂正器を構成することが可能であり、圧倒的な確率で正しい復号結果f(x)を得ることができる。(G,Ω)で定義される演算が疑似自由な作用である場合には、u=vの場合に誤った復号結果f(x)が出力される確率も無視できる。この場合の復号装置51は、圧倒的な確率で正しい復号結果f(x)または⊥を出力する。 Whether the operation defined by the group (G, Ω) of the group G and the set Ω to which the natural number a belongs is a pseudo-free action, or T 2 P (G, Ω) is about the pseudo-free index P (G, Ω) If asymptotically small probability of x 1e g in the case of u a = v (equation (4)) is asymptotically small. Thus, the probability that x 1 = e g in the case of u a = v is asymptotically large. Therefore, if the operation defined by the pair (G, Ω) is a pseudo-free action, or T 2 P (G, Ω) is asymptotically small, an erroneous decoding result f (when u a = v The probability that x) is output is sufficiently smaller than the probability that a correct decoding result f (x) is output when u a = v. It can be said that the decoding device 51 in this case is an all-most self-corrector (see equation (2)). Therefore, as described above, a robust self-corrector can be configured from the decoding device 51, and a correct decoding result f (x) can be obtained with an overwhelming probability. When the operation defined by (G, Ω) is a pseudo-free action, the probability that an erroneous decoding result f (x) is output when u a = v can be ignored. In this case, the decoding device 51 outputs a correct decoding result f (x) or ⊥ with an overwhelming probability.

なお、任意の定数ρに対してkが定まり、このkに対してk<k’を満たす任意のk’に対する関数値η(k’)がρ未満となる場合「η(k’)が漸近的に小さい」という。k’の例はセキュリティパラメータkである。 If k 0 is determined for an arbitrary constant ρ, and the function value η (k ′) for an arbitrary k ′ that satisfies k 0 <k ′ for this k 0 is less than ρ, “η (k ′ ) Is asymptotically small. " An example of k ′ is a security parameter k.

また、任意の定数ρに対してkが定まり、このkに対してk<k’を満たす任意のk’に対する関数値1−η(k’)がρ未満となる場合「η(k’)が漸近的に大きい」という。 Further, Sadamari is k 0 for any constant [rho, for this k 0 k 0 <If function value for 'any k satisfying' k 1-eta of (k ') is less than [rho "eta ( k ′) is asymptotically large ”.

なお、aをa/bに置換すれば分かるように、上述の証明は第一実施形態で述べた「u’=v’が成立するのは、第一乱数化可能標本器がu=f(φ)を正しく計算しており、第二乱数化可能標本器がv=f(φ)を正しく計算している(x及びxが群Gの単位元eである)可能性が高い」ことの証明ともなる。 As can be seen by replacing a with a / b, the above proof is that “u ′ = v ′” described in the first embodiment is established because the first randomizable sampler is u = f ( has correctly calculate phi) b, the second random number of possible sampler is v = f (φ) is correctly calculate a (x 1 and x 2 are the identity e g in the group G) potential It is also a proof that

《信頼性δγな乱数化可能標本器と安全性について》
以下のような攻撃を想定する。
《Reliable δ γ randomizable sampler and safety》
Assume the following attacks.

・ブラックボックスF(τ)又はその部分が意図的に不正なzを出力する、又は、ブラックボックスF(τ)から出力された値が不正なzに改ざんされる。
・不正なzに対応するwx’が乱数化可能標本器から出力される。
・不正なzに対応するwx’は、自己訂正器C(x)でu=vが成立する(ステップS5110でyesなる)にもかかわらず、自己訂正器C(x)が誤った値を出力する確率を増加させる。
The black box F (τ) or its part intentionally outputs an incorrect z, or the value output from the black box F (τ) is altered to an incorrect z.
-W a x 'corresponding to an illegal z is output from a randomizable sampler.
The w a x ′ corresponding to the illegal z is determined by the self corrector C F (x) even though u a = v is satisfied in the self corrector C F (x) (yes in step S5110). Increase the probability of outputting an incorrect value.

このような攻撃は、与えられた自然数aに対して乱数化可能標本器から出力されたwx’の誤差の確率分布D=wx’w−aが自然数aに依存する場合に可能となる。例えば、第二計算部5108から出力されるvがf(x) となるような不正が行われた場合、xの値にかかわらず、必ずu=vが成立することになる。よって、与えられた自然数aに対して乱数化可能標本器から出力されたwx’の誤差の確率分布D=wx’w−aが当該自然数aに依存しないことが望ましい。 Such attacks, if the probability distribution of the error of the output from the random number of possible sampler against natural number a given w a x 'D a = w a x'w -a depends on the natural number a It becomes possible. For example, if a fraud is performed such that v output from the second calculation unit 5108 is f (x) a x 1 a , u a = v always holds regardless of the value of x 1. Become. Therefore, the error probability distribution D a = w a x'w -a given w a x output from the random number of possible sampler against natural number a 'does not depend on the natural number a is desirable.

あるいは、、集合Ωのいかなる元a∈Ωについても、wx’の誤差の確率分布D=wx’w−aと区別することができない群Gに値を持つ確率分布Dが存在する(確率分布Dと確率分布Dとが統計的に近似する(statistically−close))乱数化可能標本器であることが望ましい。なお、確率分布Dは自然数aに依存しない。また、確率分布Dと確率分布Dとを区別することができないとは、多項式時間アルゴリズムによって確率分布Dと確率分布Dとを区別することができないことを意味し、例えば、無視することができるζ(0≦ζ<1)に対して
Σg∈G|Pr[g∈D]−Pr[g∈D]|<ζ …(7)
を満たすならば、多項式時間アルゴリズムによって確率分布Dと確率分布Dとを区別することができない。無視することができるζの例は、セキュリティパラメータkの関数値ζ(k)である。関数値ζ(k)の例は、任意の多項式p(k)について、十分大きいkに対して{ζ(k)p(k)}が0に収束するものである。関数値ζ(k)の具体例は、ζ(k)=2−kやζ(k)=2−√kなどである。また、これらの点は自然数a及びbを使用する第一実施形態から第四実施形態についても同様である。
Or for any original a∈ Ω of ,, set Omega, is w a x error probability distribution D a = w a x'w -a probability distribution D having a value in the group G can not be distinguished in the ' It is desirable that the sampler be a randomizable sampler that exists (statistically-close between the probability distribution Da and the probability distribution D). The probability distribution D does not depend on the natural number a. Further, the inability to distinguish between probability distributions D a probability distribution D, which means that it is impossible to distinguish between the probability distribution D a probability distribution D by a polynomial time algorithm, for example, be ignored For possible ζ (0 ≦ ζ <1), ΣgεG | Pr [gεD] −Pr [gεD a ] | <ζ (7)
If it satisfies, the probability distribution D a and the probability distribution D cannot be distinguished by the polynomial time algorithm. An example of ζ that can be ignored is the function value ζ (k) of the security parameter k. An example of the function value ζ (k) is such that {ζ (k) p (k)} converges to 0 for a sufficiently large k for an arbitrary polynomial p (k). Specific examples of the function value ζ (k) include ζ (k) = 2 −k and ζ (k) = 2 −√k . These points are the same in the first to fourth embodiments using the natural numbers a and b.

[変形例等]
確率変数X、X及びXは、同じでも異なっていてもよい。
[Modifications, etc.]
The random variables X 1 , X 2 and X 3 may be the same or different.

第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部のそれぞれが一様乱数を生成することにより、復号制御システムの安全性を高くできる。しかし、求める安全性のレベルがそれほど高くない場合には、第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部の少なくとも一部が、一様乱数ではない乱数を生成してもよい。また、演算効率上からは、上述の各実施形態のように0以上K未満の自然数である乱数や0以上K未満の自然数である乱数が選択されることが望ましいが、それらの代わりにK以上やK以上の自然数の乱数が選択されてもよい。 Each of the first random number generator, the second random number generator, the third random number generator, the fourth random number generator, the fifth random number generator, the sixth random number generator, and the seventh random number generator generates a uniform random number. As a result, the security of the decoding control system can be increased. However, if the required level of security is not so high, the first random number generator, the second random number generator, the third random number generator, the fourth random number generator, the fifth random number generator, the sixth random number generator And at least a part of the seventh random number generator may generate a random number that is not a uniform random number. Also, from the computational efficiency, it is desirable that a natural number less than the random number and 0 or K G is a natural number from 0 to less than K H as the embodiments described above random number is selected, on their behalf K H above and K G or more natural number of the random number may be selected.

復号装置が同一のa,bに対応する第一入力情報τ及び第二入力情報τを復号能力提供装置に提供するたびに、復号能力提供装置の処理が複数回実行させてもよい。これにより、復号装置が第一入力情報τ及び第二入力情報τを復号能力提供装置に一回提供するたびに、復号装置は第一出力情報zや第二出力情報zや第三出力情報zを複数個得ることができる。これにより、復号装置と復号能力提供装置との間のやり取り回数や通信量を減らすことができる。 Each time the decoding device provides the first input information τ 1 and the second input information τ 2 corresponding to the same a and b to the decoding capability providing device, the processing of the decoding capability providing device may be executed a plurality of times. Thus, each time the decoding device provides the first input information τ 1 and the second input information τ 2 to the decoding capability providing device once, the decoding device can output the first output information z 1 , the second output information z 2 , A plurality of three output information z 3 can be obtained. Thereby, the frequency | count and communication amount of communication between a decoding apparatus and a decoding capability provision apparatus can be reduced.

また、復号装置が複数種類の第一入力情報τ及び第二入力情報τを復号能力提供装置にまとめて提供し、対応する第一出力情報zや第二出力情報zや第三出力情報zを複数個まとめて取得してもよい。これにより、復号装置と復号能力提供装置との間のやり取り回数を減らすことができる。 Also, the decoding device collectively provides a plurality of types of first input information τ 1 and second input information τ 2 to the decoding capability providing device, and the corresponding first output information z 1 , second output information z 2 , third it may acquire the output information z 3 plurality together. Thereby, the frequency | count of the exchange between a decoding apparatus and a decoding capability provision apparatus can be reduced.

復号装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。同様に、復号能力提供装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。   Data exchange between each unit of the decoding device may be performed directly or may be performed via a storage unit (not shown). Similarly, data exchange between the respective units of the decoding capability providing apparatus may be performed directly or may be performed via a storage unit (not shown).

また、各実施形態の第一計算部や第二計算部において得られたuやvが群Gの元であるかを確認し、群Gの元であった場合には上述した処理を続行し、u又はvが群Gの元でなかった場合には、計算をすることができなかった旨の情報、例えば記号「⊥」が出力されてもよい。   In addition, it is confirmed whether u and v obtained in the first calculation unit and the second calculation unit of each embodiment are elements of the group G. If they are elements of the group G, the above-described processing is continued. If u, v or v is not an element of the group G, information indicating that the calculation could not be performed, for example, the symbol “⊥” may be output.

その他、本発明は上述の実施形態に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。   In addition, the present invention is not limited to the above-described embodiment. For example, 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, this computer reads the program stored in its own recording device and executes the 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).

1〜5 復号制御システム
11〜51 復号装置
12〜52 復号能力提供装置
13 復号制御装置
DESCRIPTION OF SYMBOLS 1-5 Decoding control system 11-51 Decoding apparatus 12-52 Decoding capability provision apparatus 13 Decoding control apparatus

Claims (9)

復号装置と復号能力提供装置と復号制御装置とを有し、
G,Hが巡回群、f(x)が群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X,Xが群Gに値を持つ確率変数、xが確率変数Xの実現値、xが確率変数Xの実現値、a,bが互いに素である自然数であり、
前記復号装置が、
前記暗号文xに対応する群Hの元である第一入力情報τ及び第二入力情報τを出力する入力情報提供部を含み、
前記復号能力提供装置が、
前記第一入力情報τを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた演算結果を第一出力情報zとして出力可能な第一出力情報計算部と、
前記第二入力情報τを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた演算結果を第二出力情報zとして出力可能な第二出力情報計算部と、を含み、
前記復号装置が、さらに
前記第一出力情報zから演算結果u=f(x)を生成する第一計算部と、
前記第二出力情報zから演算結果v=f(x)を生成する第二計算部と、
前記演算結果u及びvがu=vを満たす場合に、a’a+b’b=1を満たす整数a’,b’についてのub’a’を出力する最終出力部と、を含み、
前記復号制御装置が、前記復号装置の復号処理を制御する復号制御命令を前記復号能力提供装置に出力する出力部を含み、
前記復号能力提供装置が、さらに、
前記復号制御命令に従って、前記第一出力情報z及び前記第二出力情報zの両方の出力の有無を制御する制御部を含む、
復号制御システム。
A decoding device, a decoding capability providing device, and a decoding control device;
G and H are cyclic groups, and f (x) is a decryption function for decrypting a ciphertext x that is an element of the group H with a specific decryption key to obtain an element of the group G, and X 1 and X 2 are group G A random variable having a value, x 1 is an actual value of the random variable X 1 , x 2 is an actual value of the random variable X 2 , and a and b are natural numbers that are relatively prime,
The decoding device is
An input information providing unit that outputs first input information τ 1 and second input information τ 2 that are elements of the group H corresponding to the ciphertext x,
The decryption capability providing device comprises:
A first output information calculation unit capable of correctly calculating f (τ 1 ) with a probability larger than a certain probability using the first input information τ 1 and outputting the obtained operation result as the first output information z 1 ; ,
A second output information calculation unit capable of correctly calculating f (τ 2 ) with a probability larger than a certain probability using the second input information τ 2 and outputting the obtained calculation result as second output information z 2 ; Including,
The decoding device further generates a calculation result u = f (x) b x 1 from the first output information z 1 ;
A second calculation unit that generates a calculation result v = f (x) a x 2 from the second output information z 2 ;
A final output unit that outputs u b ′ v a ′ for integers a ′ and b ′ satisfying a′a + b′b = 1 when the calculation results u and v satisfy u a = v b ,
The decoding control device includes an output unit that outputs a decoding control instruction for controlling a decoding process of the decoding device to the decoding capability providing device,
The decoding capability providing device further includes:
In accordance with the decoding control instruction, a control unit that controls whether or not both the first output information z 1 and the second output information z 2 are output,
Decryption control system.
請求項1の復号制御システムにおいて、
前記復号装置が、前記自然数a,bの少なくとも一方を選択する自然数選択部を含み、
前記第一入力情報τが前記自然数bにさらに対応し、前記第二入力情報τが前記自然数aにさらに対応する、
復号制御システム。
The decoding control system according to claim 1, wherein
The decoding device includes a natural number selection unit that selects at least one of the natural numbers a and b,
The first input information τ 1 further corresponds to the natural number b, and the second input information τ 2 further corresponds to the natural number a.
Decryption control system.
請求項1又は2の復号制御システムにおいて、
前記入力情報提供部が、前記暗号文xとの関係をかく乱させた情報を前記第一入力情報τ及び前記第二入力情報τとする、
復号制御システム。
In the decoding control system according to claim 1 or 2,
The input information providing unit sets the information that disturbs the relationship with the ciphertext x as the first input information τ 1 and the second input information τ 2 .
Decryption control system.
請求項1から3の何れかの復号制御システムにおいて、
前記復号関数f(x)が準同型関数、群Hの生成元がμ、群Hの位数がK、ν=f(μ)であり、
前記入力情報提供部が、
0以上の自然数の乱数rを生成する第一乱数生成部と、
前記第一入力情報τとしてμ r1を計算する第一入力情報計算部と、
0以上の自然数の乱数rを生成する第二乱数生成部と、
前記第二入力情報τとしてμ r2を計算する第二入力情報計算部と、を含み、
前記第一出力情報計算部は、前記第一入力情報μ r1を用い、或る確率より大きな確率でf(μ r1)を正しく計算し、得られた計算結果を前記第一出力情報zとし、
前記第二出力情報計算部は、前記第二入力情報μ r2を用い、或る確率より大きな確率でf(μ r2)を正しく計算し、得られた計算結果を第二出力情報zとし、
前記第一計算部は、zν−r1を計算してその計算結果を前記uとし、
前記第二計算部は、zν−r2を計算してその計算結果を前記vとする、
復号制御システム。
In the decoding control system according to any one of claims 1 to 3,
The decoding function f (x) is a homomorphic function, the group H generator is μ h , the group H order is K H , and ν = f (μ h ),
The input information providing unit
A first random number generator that generates a random number r 1 of a natural number greater than or equal to 0;
A first input information calculation unit for calculating μ h r1 x b as the first input information τ 1 ;
A second random number generator that generates a random number r 2 of a natural number greater than or equal to 0;
A second input information calculation unit for calculating μ h r2 x a as the second input information τ 2 ,
The first output information calculation unit uses the first input information μ h r1 x b to correctly calculate f (μ h r1 x b ) with a probability larger than a certain probability, and obtains the obtained calculation result as the first output information. One output information z 1
The second output information calculation unit uses the second input information μ h r2 x a to correctly calculate f (μ h r2 x a ) with a probability larger than a certain probability, and obtains the obtained calculation result as a second Output information z 2
The first calculation unit calculates z 1 v −r1 and sets the calculation result as u,
The second calculation unit calculates z 2 v −r2 and sets the calculation result as v.
Decryption control system.
請求項4の復号制御システムにおいて、
前記第一乱数生成部が、b≠1のときに前記乱数rを生成し、
前記第一入力情報計算部が、b≠1のときに前記第一入力情報τとして前記μ r1を計算し、
前記第一出力情報計算部が、b≠1のときに前記第一入力情報μ r1を用いて得られた前記計算結果を前記第一出力情報zとし、
前記第一計算部が、b≠1のときにzν−r1を計算してその計算結果を前記uとし、
前記第二乱数生成部が、a≠1のときに前記乱数rを生成し、
前記第二入力情報計算部が、a≠1のときに前記第二入力情報τとしてμ r2を計算し、
前記第二出力情報計算部が、a≠1のときに前記第二入力情報μ r2を用いて得られた前記計算結果を第二出力情報zとし、
前記第二計算部が、a≠1のときにzν−r2を計算してその計算結果を前記vとし、
前記入力情報提供部が、
0以上の自然数の乱数rを生成する第三乱数生成部と、
b=1のときにxr3を前記第一入力情報τとし、a=1のときにxr3を前記第二入力情報τとする第三入力情報計算部と、を含み、
前記復号能力提供装置が、
前記xr3を用い、或る確率より大きな確率でf(xr3)を正しく計算し、得られた計算結果を第三出力情報zとする第三出力情報計算部を含み、
前記復号装置が、
b=1のときにz 1/r3を前記uとし、a=1のときにz 1/r3を前記vとする第三計算部を含む、
復号制御システム。
The decoding control system according to claim 4,
The first random number generator generates the random number r 1 when b ≠ 1;
The first input information calculation unit calculates the μ h r1 x b as the first input information τ 1 when b ≠ 1;
The first output information calculation unit sets the first output information z 1 as the calculation result obtained using the first input information μ h r1 x b when b ≠ 1.
The first calculation unit calculates z 1 ν −r1 when b ≠ 1, and sets the calculation result as u,
The second random number generator generates the random number r 2 when a ≠ 1,
The second input information calculation unit calculates μ h r2 x a as the second input information τ 2 when a ≠ 1;
The second output information calculation unit sets the calculation result obtained by using the second input information μ h r2 x a when a ≠ 1 as second output information z 2 ,
The second calculation unit calculates z 2 ν −r2 when a ≠ 1, and sets the calculation result as v,
The input information providing unit
A third random number generator that generates a random number r 3 of a natural number greater than or equal to 0;
b = 1 when the x r3 and the first input information tau 1 to include a third input information calculating section to the second input information tau 2 the x r3 to when a = 1,
The decryption capability providing device comprises:
A third output information calculation unit that correctly calculates f (x r3 ) with a probability larger than a certain probability using x r3 and sets the obtained calculation result as third output information z 3 ;
The decoding device is
a third calculation unit including z 3 1 / r3 as u when b = 1 and z 3 1 / r3 as v when a = 1,
Decryption control system.
請求項1から3の何れかの復号制御システムにおいて、
群H=G×G、前記復号関数f(x)が準同型関数、群Gの生成元がμ、群Gの位数がK、x=(c,c),(V,W)が群Hの元、f(V,W)=Yであり、
前記入力情報提供部が、
0以上の自然数の乱数rを生成する第四乱数生成部と、
0以上の自然数の乱数rを生成する第五乱数生成部と、
前記第一入力情報τとしてc r4及びc r4μ r5を計算する第一入力情報計算部と、
0以上の自然数の乱数rを生成する第六乱数生成部と、
0以上の自然数の乱数rを生成する第七乱数生成部と、
前記第二入力情報τとしてc r6及びc r6μ r7を計算する第二入力情報計算部と、を含み、
前記第一出力情報計算部が、前記第一入力情報c r4μ r5及びc r4を用い、或る確率より大きな確率でf(c r4μ r5,c r4)を正しく計算し、得られた計算結果を前記第一出力情報zとし、
前記第二出力情報計算部が、前記第二入力情報c r6μ r7及びc r6を用い、或る確率より大きな確率でf(c r6μ r7,c r6)を正しく計算し、得られた計算結果を前記第二出力情報zとし、
前記第一計算部が、z−r4μ −r5を計算してその計算結果を前記uとし、
前記第二計算部が、z−r6μ −r7を計算してその計算結果を前記vとする、
復号制御システム。
In the decoding control system according to any one of claims 1 to 3,
Group H = G × G, the decoding function f (x) is a homomorphic function, the group G generator is μ g , the group G order is K G , x = (c 1 , c 2 ), (V, W) is an element of group H, f (V, W) = Y,
The input information providing unit
A fourth random number generator that generates a random number r 4 of a natural number greater than or equal to 0;
A fifth random number generator for generating a random number r 5 having a natural number of 0 or more;
A first input information calculation unit for calculating a c 2 b W r4 and c 1 b V r4 μ g r5 as the first input information tau 1,
A sixth random number generator for generating a random number r 6 having a natural number of 0 or more;
A seventh random number generator for generating a random number r 7 having a natural number of 0 or more;
Anda second input information calculation unit for calculating a c 2 a W r6 and c 1 a V r6 μ g r7 as the second input information tau 2,
Said first output information calculating unit, the first input information c 1 b V r4 μ g r5 and c 2 b W using r4, with greater probability than a certain probability f (c 1 b V r4 μ g r5, c 2 b W r4 ) is correctly calculated, and the obtained calculation result is the first output information z 1 .
The second output information calculating unit, the second input information c 1 a V r6 μ g using r7 and c 2 a W r6, with greater probability than a certain probability f (c 1 a V r6 μ g r7, c 2 a W r6 ) is correctly calculated, and the obtained calculation result is the second output information z 2 ,
Wherein the first calculation unit, and the calculation result and the u by calculating the z 1 Y -r4 μ g -r5,
The second calculation unit, and the calculation result and the v by calculating a z 2 Y -r6 μ g -r7,
Decryption control system.
請求項1から6の何れかの復号制御システムにおいて、
前記演算結果uのf(x)に対する誤差の確率分布が前記自然数bに依存しない、並びに/若しくは、前記演算結果vのf(x)に対する誤差の確率分布が前記自然数aに依存しない、又は、前記演算結果uのf(x)に対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、並びに/若しくは、前記演算結果vのf(x)に対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、
復号制御システム。
In the decoding control system according to any one of claims 1 to 6,
The probability distribution of errors of the calculation result u with respect to f (x) b does not depend on the natural number b, and / or the probability distribution of errors of the calculation result v with respect to f (x) a does not depend on the natural number a. Or, there is a probability distribution that does not depend on the natural number b, which cannot be distinguished from the error probability distribution of the calculation result u with respect to f (x) b , and / or the calculation result v of f (x) a with respect to f (x) a There is a probability distribution that does not depend on the natural number a and cannot be distinguished from the probability distribution of errors.
Decryption control system.
請求項1から7の何れかの復号制御システムにおいて、
前記自然数a又は前記自然数bが定数である、
復号制御システム。
In the decoding control system according to any one of claims 1 to 7,
The natural number a or the natural number b is a constant;
Decryption control system.
復号装置と復号能力提供装置と復号制御装置とが実行する復号制御方法であって、
G,Hが巡回群、f(x)が群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X,Xが群Gに値を持つ確率変数、xが確率変数Xの実現値、xが確率変数Xの実現値、a,bが互いに素である自然数であり、
(A)前記復号装置で、前記暗号文xに対応する群Hの元である第一入力情報τ及び第二入力情報τを出力するステップと、
(B)前記復号制御装置から出力された前記復号装置の復号処理を制御する復号制御命令に従って、前記復号能力提供装置で、前記第一入力情報τを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた演算結果を第一出力情報zとして出力する処理と、前記第二入力情報τを用い、或る確率より大きな確率でf(τ)を正しく計算し、得られた演算結果を第二出力情報zとして出力する処理と、の両方の実行の有無を制御するステップと、
(D)前記復号装置で、前記第一出力情報zから演算結果u=f(x)を生成するステップと、
(E)前記復号装置で、前記第二出力情報zから演算結果v=f(x)を生成するステップと、
(F)前記復号装置で、前記演算結果u及びvがu=vを満たす場合に、a’a+b’b=1を満たす整数a’,b’についてのub’a’を出力するステップと、を有する復号制御方法。
A decoding control method executed by a decoding device, a decoding capability providing device, and a decoding control device,
G and H are cyclic groups, and f (x) is a decryption function for decrypting a ciphertext x that is an element of the group H with a specific decryption key to obtain an element of the group G, and X 1 and X 2 are group G A random variable having a value, x 1 is an actual value of the random variable X 1 , x 2 is an actual value of the random variable X 2 , and a and b are natural numbers that are relatively prime,
(A) In the decryption device, outputting first input information τ 1 and second input information τ 2 that are elements of the group H corresponding to the ciphertext x;
(B) In accordance with a decoding control instruction for controlling the decoding process of the decoding device output from the decoding control device, the decoding capability providing device uses the first input information τ 1 and has a probability greater than a certain probability f Using the process of correctly calculating (τ 1 ) and outputting the obtained calculation result as the first output information z 1 and the second input information τ 2 , f (τ 2 ) is calculated with a probability greater than a certain probability. A process of correctly calculating and outputting the obtained calculation result as the second output information z 2 , and a step of controlling whether or not both are executed ,
(D) generating a calculation result u = f (x) b x 1 from the first output information z 1 in the decoding device;
(E) generating a calculation result v = f (x) a x 2 from the second output information z 2 in the decoding device;
(F) In the decoding device, when the calculation results u and v satisfy u a = v b , u b ′ v a ′ is output for integers a ′ and b ′ satisfying a′a + b′b = 1. decoding control method for chromatic comprising the steps of, a.
JP2011087995A 2011-04-12 2011-04-12 Decoding control system and decoding control method Active JP5596612B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011087995A JP5596612B2 (en) 2011-04-12 2011-04-12 Decoding control system and decoding control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011087995A JP5596612B2 (en) 2011-04-12 2011-04-12 Decoding control system and decoding control method

Publications (2)

Publication Number Publication Date
JP2012220814A JP2012220814A (en) 2012-11-12
JP5596612B2 true JP5596612B2 (en) 2014-09-24

Family

ID=47272362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011087995A Active JP5596612B2 (en) 2011-04-12 2011-04-12 Decoding control system and decoding control method

Country Status (1)

Country Link
JP (1) JP5596612B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5562284B2 (en) * 2011-04-12 2014-07-30 日本電信電話株式会社 Re-encryption system, re-encryption device, capability providing device, re-encryption method, capability provision method, and program
JP6006809B2 (en) 2013-01-16 2016-10-12 日本電信電話株式会社 Decoding service providing apparatus, processing apparatus, safety evaluation apparatus, program, and recording medium
EP3010178B1 (en) * 2013-07-18 2018-05-09 Nippon Telegraph And Telephone Corporation Calculation device, calculation method, and program for self-correction

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4254386B2 (en) * 2003-07-08 2009-04-15 トヨタ自動車株式会社 Mobile terminal and remote control device

Also Published As

Publication number Publication date
JP2012220814A (en) 2012-11-12

Similar Documents

Publication Publication Date Title
JP5491638B2 (en) Proxy calculation system, calculation device, capability providing device, proxy calculation method, capability providing method, program, and recording medium
CN107465505B (en) Key data processing method and device and server
CN112016120B (en) Event prediction method and device based on user privacy protection
CN108063756B (en) Key management method, device and equipment
JP5562284B2 (en) Re-encryption system, re-encryption device, capability providing device, re-encryption method, capability provision method, and program
EP3454236B1 (en) Authenticator, authenticatee and authentication method
JP5957095B2 (en) Tamper detection device, tamper detection method, and program
CN110061840A (en) Data ciphering method, device, computer equipment and storage medium
KR101305627B1 (en) Cryptographic apparatus and memory system
CN111159723A (en) Cryptographic data sharing control for blockchains
JP5596612B2 (en) Decoding control system and decoding control method
US9054877B2 (en) Data expansion using an approximate method
JP5972181B2 (en) Tamper detection device, tamper detection method, and program
EP3633656B1 (en) Secret tampering detection system, secret tampering detection apparatus, secret tampering detection method, and program
EP2947813A1 (en) Decryption-service provision device, processing device, safety evaluation device, program, and recording medium
CN101539890B (en) Data processing system, cryptogram management method and data reading and writing method
JP5596616B2 (en) Information providing system, mediating apparatus, mediating method, information providing method, and program
KR102132685B1 (en) Apparatus and method for order-revealing encryption
CN114419719B (en) Biological characteristic processing method and device
CN115550071B (en) Data processing method, device, storage medium and equipment
CN115982742A (en) Service execution method, device, storage medium and electronic equipment
CN117375850A (en) Password integrated application method, system and medium
CN116455657A (en) Service providing method, device, equipment and system
CN117218699A (en) Face information processing method and system
JP5559018B2 (en) Information processing apparatus, pseudorandom number generation apparatus, and program

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130718

A977 Report on retrieval

Effective date: 20140416

Free format text: JAPANESE INTERMEDIATE CODE: A971007

A131 Notification of reasons for refusal

Effective date: 20140422

Free format text: JAPANESE INTERMEDIATE CODE: A131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140618

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140807

R150 Certificate of patent (=grant) or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5596612

Country of ref document: JP