摘要:
According to one embodiment, a representation converting unit converts a set of n elements (h0, h1, . . . , hn−1) (hi: a member of a finite field Fp̂m, 0≦i≦n−1) that is a projective representation of a member g of an n-th degree algebraic torus Tn(Fp̂m) (n: positive integer, p: prime number, m: positive integer) into a limited projected representation expressed by a set of n elements (h′0, h′1, . . . , h′n−1) (h′i: a member of the finite field Fp̂m, 0≦i≦n−1) in which at least one element out of the n elements is a zero element 0 or an identity element 1. An arithmetic unit omits part of Fp̂m operation that is arithmetic operation in the finite field Fp̂m based on a fact that an element in the set of n elements (h′0, h′1, . . . , h′n−1) represented by the limited projective representation is a zero element “0” or an identity element “1” when performing Fp̂mn operation that is arithmetic operation of a finite field Fp̂mn in combination with the Fp̂m operation.
摘要:
An input unit inputs encrypted data that elements of a subgroup and expressed in an affine representation. A transforming unit transforms the inputted encrypted data into projective representation data expressed in a projective representation. A plain data calculating unit subjects the projective representation data to a decrypting process previously defined by a cryptosystem, thereby calculating plain data expressed in the projective representation.
摘要:
In a computing device that calculates a square of an element in a finite field, a vector representation of the element in the finite field is accepted. The vector representation includes a plurality of elements. The computing device performs a multiplication operation on a base field using the accepted elements, and obtains a multiplication value. The multiplication operation is determined by a condition under which the element in the finite field is placed in an algebraic torus. The computing device performs an addition and subtraction operation using the obtained multiplication value and the accepted elements, and obtains a calculation result of the square of the element. The addition and subtraction operation is determined by the condition. The computing device then outputs the calculation result.
摘要:
A parameter generating device includes an input receiving unit that receives a degree n of an algebraic torus T including a group G in which a cryptosystem used in a torus-compressed public key cryptosystem is defined, a size W of a finite field F, and a size S of the group G, an extension-degree determining unit that determines an extension degree m of a finite field Fpm in which the algebraic torus T is defined, a first prime-number search unit that searches for a prime number p, a second prime-number search unit that searches for a prime number q, a test unit that checks whether a multiplication value nm is divisible by the prime number q, a security determining unit that determines that the cryptosystem is secure based on the multiplication value nm, and an output unit that outputs parameters when it is determined that the cryptosystem is secure.
摘要:
According to one embodiment, a decompressing apparatus includes an input unit, a calculating unit, a first selecting unit, and a decompressing unit. The input unit inputs additional data, which is obtained based on trace expression data in which an element in a subgroup of a multiplicative group of a finite field is trace-expressed and affine expression data in which the trace expression data is affine-expressed, and the trace expression data. The calculating unit calculates a plurality of solutions of simultaneous equations derived by the trace expression data. The first selecting unit selects any of a plurality of items of affine expression data in which the element is affine-expressed based on the additional data, the affine expression data being found from the solutions. The decompressing unit decompresses the selected affine expression data to the element.
摘要:
According to an embodiment, a computing device includes a receiving unit, a calculating unit, a solving unit, a selecting unit, and a determining unit. The receiving unit is configured to receive pieces of input data indicative of elements of a subgroup of a multiplicative group in a finite field and pieces of first additional data for identifying conjugates of the respective pieces of input data. The elements are represented by traces. The calculating unit is configured to calculate a coefficient of an equation based on the pieces of input data. The solving unit is configured to obtain solutions of the equation. The selecting unit is configured to select one of the solutions as a result of computation, based on the first additional data. The determining unit is configured to determine second additional data for identifying a conjugate of the selected result of computation based on the first additional data.