Inverting bijective polynomial maps over finite fields Antonio Cafure

Guillermo Matera

Ariel Waissbein

Depto. de Matem´atica, FCEyN, UBA, Ciudad Universitaria, Pabell´on I, (C1428EHA) Buenos Aires, Argentina. Instituto del Desarrollo Humano, Universidad Nac. Gral. Sarmiento, J. M. Guti´errez 1150 (1613) Los Polvorines, Argentina.

Instituto del Desarrollo Humano, Universidad Nac. Gral. Sarmiento, J. M. Guti´errez 1150 (1613) Los Polvorines, Argentina. CONICET, Argentina.

CoreLabs, CORE ST, Humboldt 1967 (C1414CTU) Cdad. de Bs. As., Argentina. Doctorado en Ingenier´ıa, ITBA: Av. Eduardo Madero 399 (C1106ACD) Cdad. de Buenos Aires, Argentina.

Abstract— We study the problem of inverting a bijective polynomial map F : Fqn → Fqn over a finite field Fq . Our interest mainly stems from the case where F encodes a permutation given by some cryptographic scheme. Given y (0) ∈ Fqn , we are able to compute the value x(0) ∈ Fqn for which F (x(0) ) = y (0) holds in time O(LnO(1) δ 4 ) up to logarithmic terms. Here L is the cost of the evaluation of F and δ is a geometric invariant associated to the graph of the polynomial map F , called its degree.

I. I NTRODUCTION Let Fq be the finite field of q elements, let Fq denote its algebraic closure and let An denote the n–dimensional n affine space Fq . Let X := (X1 , . . . , Xn ) be a vector of indeterminates and let F1 , . . . , Fn be polynomials in Fq [X]. n n ¡Assume that the map ¢ F : Fq → Fq defined by F (x) := F1 (x), . . . , Fn (x) is bijective. In this paper we exhibit an algorithm which, on input y (0) ∈ Fqn , computes the point x(0) ∈ Fqn for which F (x(0) ) = y (0) holds. This problem is tightly related to the classical algebraic geometry problem of finding an Fq –rational solution of a polynomial system and has direct applications in the domain of public–key cryptography (see e.g. [1]). Algebrists and other computer scientists have tried to tackle this problem (see e.g. [2], [3], [4]). It is well–known that this is a hard problem, even when restricting to quadratic equations ([5], [6]). Indeed, the solutions proposed in [2], [3] have exponential running time, and only [4] achieves a polynomial complexity in the B´ezout number of the system (which is nevertheless exponential in worst case). [8], [9] and [10] exhibit efficient algorithms for special cases. In the setting of cryptography, since [11] researchers have unsuccessfully tried to construct public–key schemes based on the (allegedly) difficult problem of solving polynomial systems over finite fields, but proposals are typically proved to be weak through ad hoc attacks (see [12], [9]). This might be seen as an indication that the polynomial maps used in public–key cryptography —typically with underlying quadratic polynomials— are not intrinsically difficult to invert, and calls for the study of parameters to measure such difficulty. In [8] Sturtivant and Zhang exhibit an algorithm for inverting a bijective polynomial map F over Fq , assuming that F is an automorphism of Fq [X]n whose inverse has

degree (dn)O(1) , with d := max1≤k≤n deg Fk . The algorithm performs (Lnd)O(1) arithmetic operations in Fq , where L is the number of arithmetic operations necessary to evaluate F . From the cryptographic point of view, the critical problem is that of computing the inverse image of a given point y (0) ∈ Fqn under a map F , rather than that of inverting F itself. In this sense, we solve the former under much less stringent hypotheses than those of [8]. More precisely, we exhibit a (probabilistic) algorithm that, given a point y (0) ∈ Fqn and a straight–line program evaluating F in Fq [X], computes the point x(0) ∈ Fqn for which F (x(0) ) = y (0) holds. For this purpose we make the additional (geometric) hypothesis that the projection of the graph of F on the Y –axis is what in algebraic geometry is called a finite morphism. This assures that the fibers F −1 (y) are nonempty and finite for every y ∈ An . We remark that this is a reasonable assumption from the cryptographic point of view, because it is typically met in the public–key schemes proposed. The complexity of our algorithm is roughly of order O((Ln4 +δ 2 )nδ 2 ), where L is the complexity of the evaluation of F and δ is a geometric invariant associated to the map F : the (geometric) degree of its graph. This invariant is a measure of the complexity of the description of the graph of F (see e.g. [13], [14]), which may play a significant role to assess the difficulty of inverting F . In this sense, δ should be taken into account as a security estimation parameter. Notice that δ is upper bounded by the B´ezout number deg F1 · · · deg Fn , and this bound is attained in worst case (see e.g. [13]). Finally, if the hypotheses of [8] hold, then our algorithm meets also the complexity bound (Lnd)O(1) of [8]. II. N OTIONS AND N OTATIONS Let K be a subfield of Fq containing Fq . Let V be a K– definable affine subvariety of An (a K–variety for short). We denote by I(V ) ⊂ K[X] its defining ideal and by K[V ] its coordinate ring, namely, the quotient ring K[V ] := K[X]/I(V ). If V is an irreducible K–variety, we define its dimension as the transcendence degree of the field extension K ,→ K(V ), where K(V ) is the field of fractions of the domain K[V ], and the degree as the maximum number of points lying in the intersection of V with an affine linear subspace L of An of

codimension dim V for which #(V ∩ L) < ∞ holds. More generally, if V = C1 ∪ · · · ∪ CN is the decomposition of V into irreducible K–components, we define the dimension of V as dim V := max1≤i≤N dim Ci and the degree of V as PN deg V := i=1 deg Ci (cf. [13]). A K–variety V ⊂ An is absolutely irreducible if it is an irreducible Fq –variety. Let V be an irreducible K–variety of An and let π : V → n A be a finite morphism, that is, a morphism which induces an integral ring extension K[An ] ,→ K[V ]. The degree deg π of π is defined as the degree of the field extension K(An ) ,→ K(V ). We say that y ∈ An is a lifting point of π if the number of inverse images of y is equal to the degree of the morphism π. A. Geometric solutions We shall use a representation of K–varieties which is well suited for algorithmic purposes (cf. [15]). Let V ⊂ An be a K–variety of dimension r and degree δ and suppose that the linear projection π : V → Ar defined by π(x) := (x1 , . . . , xr ) is a finite morphism of degree D. Definition 2.1: A geometric solution of V consists of the following items: • a linear form U ∈ K[X] which induces a primitive element of the ring extension K[X1 , . . . , Xr ] ,→ K[V ], i.e. an element u ∈ K[V ] whose (monic) minimal polynomial m ∈ K[X1 , . . . , Xr ][T ] over K[X1 , . . . , Xr ] satisfies the condition degT m = D. Observe that deg m ≤ δ holds. • the minimal polynomial m ∈ K[X1 , . . . , Xr ][T ] of u. • a generic “parametrization” of the variety V by the zeros of m, of the form (∂m/∂T )Xk −vk (r+1 ≤ k ≤ n) with vk ∈ K[X1 , . . . , Xr ][T ]. We require that degT vk < D, degX vk ≤ δ and (∂m/∂T )(U )Xk −vk (U ) ∈ I(V ) hold. The polynomial m can be also defined as follows: consider the linear map πU : V → Ar+1 defined by πU (x) := (x1 , . . . , xr , U (x)). The Zariski closure of πU (V ) is a K– hypersurface H of Ar+1 , which is indeed defined by m. We remark that in the case r = 0, a linear form U induces a primitive element of the ring extension K ,→ K[V ] if and only if U separates the points of V . III. P REPARATION OF THE INPUT DATA Let F1 , . . . , Fn ∈ Fq [X] be polynomials of degree at most d. Let F : An → An be the polynomial map defined by F1 , . . . , Fn . Observe that the restriction of F to Fqn is a well– defined polynomial map from Fqn to Fqn , also denoted by F . Let Y := (Y1 , . . . , Yn ) be a vector of new indeterminates and let V ⊂ A2n be the affine Fq –variety defined by V := {(x, y) ∈ A2n : yi = Fi (x), 1 ≤ i ≤ n}. We make the following assumptions on the map F (usually met in the cryptographic situations we are interested in): (i) F : Fqn → Fqn is a bijective map. (ii) The projection map π : V → An defined by π(y, x) := y is a finite morphism. In particular, the fiber Vy := π −1 (y) is a zero–dimensional subvariety of V for every y ∈ An .

We deduce that V has dimension n and that the image of F is a dense subset of An . Thus Y1 , . . . , Yn are algebraically independent in Fq [V ]. We set δ := deg V and D := deg π. Lemma 3.1: V is an absolutely irreducible Fq –variety. Proof: The ideal I := (Yi − Fi (X) : 1 ≤ i ≤ n) ⊂ Fq [X, Y ] is contained in I(V ). Since Fq [X, Y ]/I is isomorphic to Fq [X], I is a prime ideal, and thus I = I(V ) holds. Suppose that we are given a geometric solution of V . By the remark after Definition 2.1, we see that V is birationally equivalent to the hypersurface H defined by the minimal polynomial m ∈ Fq [Y, T ]. Since V is absolutely irreducible, so is H and then m. Suppose that we are given y (0) ∈ Fqn and let Vy(0) be the corresponding zero–dimensional fiber. In order to compute the point x(0) ∈ Fqn for which (x(0) , y (0) ) ∈ Vy(0) holds, we shall deform the system F (X) = y (0) into a system F (X) = F (x(1) ) (cf. [16]), with a point x(1) randomly chosen in a suitable finite field extension K of Fq to be determined. The next two lemmas state suitable bounds on the degree of the genericity conditions underlying the choice of x(1) . Lemma 3.2: There exists a polynomial A ∈ Fq [X] of degree at most 3dδ 4 such that for any x ∈ An with A(x) 6= 0, the point y := F (x) satisfies the following conditions: (i) y is a lifting point of π : V → An , (ii) The curve C defined by F (X) = y + (S − 1)(y − y (0) ) is absolutely irreducible. Proof: Let L ∈ Fq [X] be a linear form inducing a primitive element of the ring extension Fq [Y ] ,→ Fq [V ] and let mL ∈ Fq [Y ][T ] be its minimal polynomial. Let A˜1 ∈ Fq [Y ] be the discriminant of mL with respect to T . The absolutely irreducibility of mL implies A˜1 6= 0. Let A1 := A˜1 (F (X)) ∈ Fq [X]. Since the image of F is a dense subset of An , there exists x ∈ An such that A1 (x) 6= 0. Hence, A1 is a nonzero polynomial of degree bounded by (2D−1)dδ. Set m e L (S, X, T ) := mL (F (X) + (S − 1)(F (X) − y (0) ), T ) ∈ Fq [S, X, T ]. Since mL is monic in Fq [Y ][T ], we see that m e L is a monic element of Fq [S, X][T ]. This implies e L (1, x, T ) = mL (y, T ) is a separable polynomial of that m Fq [X][T ] for any lifting point y of π and any x ∈ Vy . Following [17, Theorem 5], in the version of [4, Theorem 3.6], there exists a polynomial A2 ∈ Fq [X] of degree bounded by 2dδ 4 such that for any x ∈ An with A2 (x) 6= 0 the polynomial m e L (S, x, T ) is absolutely irreducible. Let A := A1 A2 ∈ Fq [X]. Observe that A has degree at most 3dδ 4 . Let x ∈ An be any point satisfying A(x) 6= 0 and let y := F (x). We claim that conditions (i) and (ii) of the statement of the lemma are satisfied. Indeed, A1 (x) 6= 0 implies that A˜1 (y) 6= 0, that is, the discriminant of mL (y, T ) with respect to T is nonzero. We deduce that mL (y, T ) has D distinct roots and therefore, y is a lifting point of π. Finally, since y is a lifting point of π and A2 (x) 6= 0, then m e L (S, x, T ) is absolutely irreducible and hence, so is C. Suppose that we have chosen a point x ∈ An satisfying the conditions of Lemma 3.2 and let y := F (x). Lemma 3.3: Let Λ := (Λ1 , . . . , Λn ) be indeterminates. There exists a polynomial B ∈ Fq [Λ] \ {0} of degree at most

2D2 such that for any λ ∈ An with B(λ) 6= 0, the linear form U = λ1 X1 + · · · + λn Xn separates the points of Vy and Vy(0) . Proof: Let Vy ∪ Vy(0) := {P1 , . . . , PD0 }. Let UΛ := Λ1 X1 + · · · + Λn Xn , and let B(Λ) := Π1≤i 0 and let K be a finite field extension of Fq of cardinality greater than 4µdδ 4 . Then a random choice (λ, x) ∈ K2n satisfies (AB)(λ, x) 6= 0 with probability at least 1 − 1/µ. Proof: The number of zeros in Kn of the polynomial A 2 is at most 3dδ 4 (#K)n −1 [18, Theorem 6.13]. Then a random choice of x ∈ Kn satisfies A(x) 6= 0 with probability at least 1 − 3dδ 4 /#K ≥ 1 − 3/4µ. Given such a choice, a random choice of λ ∈ Kn satisfies B(λ) 6= 0 with probability at least 1 − 2D2 /#K ≥ 1 − 1/4µ. This shows that a random choice (λ, x) ∈ K2n satisfies (AB)(λ, x) 6= 0 with probability at least (1 − 3/4µ)(1 − 1/4µ) ≥ 1 − 1/µ.

QD mS (1, T ) = i=1 (T −U (Pi )). Since x(1) belongs to the fiber πS−1 (1), we see that there exists i for which U (x(1) ) = σ (i) (1) holds. For simplicity, we shall denote such σ (i) by σ. The algorithm that computes the polynomial mS (S, T ) starts computing the power series σ truncated up to order N := 2Dδ. Let σN be the polynomial of Fq [S] of degree at most N satisfying σ ≡ σN mod (S − 1)N +1 . Our next result shows how to compute mS (S, T ) from σN . Lemma 4.1: Let g ∈ K[S, T ] be a polynomial with degS g ≤ δ and degT g ≤ D such that the congruence relation g(S, σN ) ≡ 0 mod (S − 1)N +1

(2)

In this section we exhibit an algorithm which computes the point x(0) ∈ Fqn for which F (x(0) ) = y (0) holds. By Corollary 3.4 we may assume that we are given (λ, x(1) ) ∈ K2n satisfying the requirements of Lemmas 3.2 and 3.3, where K is a finite field extension of Fq of cardinality O(dδ 4 ). This means that y (1) := F (x(1) ) is a lifting point of π : V → An , the space curve C of An+1 defined by

holds. Then mS divides g in K[S, T ]. Proof: The resultant h ∈ K[S] of g and mS with respect to T has degree at most N and belongs to the ideal generated by mS and g. Since mS (S, σN ) and g(S, σN ) are congruent to 0 mod (S − 1)N +1 , we see that h(S) ≡ 0 mod (S − 1)N +1 holds. Then we have h = 0, which implies that mS and g have a common factor in K(S)[T ]. Combining the irreducibility of mS in K(S)[T ] with the Gauss lemma finishes the proof. From Lemma 4.1 we conclude that mS can be characterized as the nonzero solution of (2) of minimal (total) degree. Notice that (2) is a linear system in the coefficients of g. In order to obtain the equations of (2), we need the powers D σN , . . . , σN truncated at order N + 1. The computation of σN is based on a multivariate Newton iteration over the power series ring K[[S −1]]. Substituting 1 for S in (1), we obtain the system y (1) = F (X). Since y (1) is a lifting point of π, from [4, Lemma 2.1] we see that none of the solutions of y (1) = F (X) annihilates the determinant of the Jacobian matrix JF := (∂Fi )/(∂Xj )1≤i,j≤n . In particular, det JF (x(1) ) 6= 0 holds. Let NG be the Newton–Hensel operator:

F (X) = y (1) + (S − 1)(y (1) − y (0) )

NG (X) := X − JF−1 (X)G(S, X),

IV. T HE ALGORITHM

(1)

is absolutely irreducible, and the linear form U := λ1 X1 + · · ·+λn Xn ∈ K[X] separates the points of Vy(1) and Vy(0) . Let πS : C → A1 be the projection map defined by πS (s, x) := s. We have that πS is a finite morphism of degree D, the identities πS−1 (1) = Vy(1) and πS−1 (0) = Vy(0) hold, and S = 1 is a lifting point of πS . Since U separates the points of Vy(1) and S = 1 is a lifting point of πS , it follows that U is a primitive element of K[S] ,→ K[C]. In the first step of this algorithm we compute the minimal polynomial mS (S, T ) of U in the ring extension K[S] ,→ K[C]. This is a monic absolutely irreducible element of K[S][T ] with degS mS ≤ δ and degT mS = D. A. The computation of the polynomial mS Consider the factorization of mS (S, T ) in K[[S − 1]][T ]. From the fact that mS (1, T ) is separable of degree D, we conclude that mS (S, T ) has a factorization of the form mS = QD (T − σ (i) ) with σ (i) ∈ K[[S − 1]] for 1 ≤ i ≤ i=1 D. Furthermore, mS (1, T ) can be factored as mS (1, T ) = Q D (i) (i) i=1 (T −σ (1)), where σ (1) represents the constant term of σ (i) for 1 ≤ i ≤ D. Let πS−1 (1) = {P1 , . . . , PD }. We have

with G(S, X) := F (X) − y (1) − (S − 1)(y (1) − y (0) ) and (k) let NG denote the k–fold iteration of NG . Then, for Ψk := (k) (1) NG (x ) ∈ K[[S − 1]]n , it is well–known that G(S, Ψk ) ≡ 0 mod (S − 1)2

k

(3)

holds. Since mS (S, U (X)) vanishes on C, it belongs to the ideal of K[S, X] generated by G. Therefore, (3) implies that k mS (S, U (Ψk )) ≡ 0 mod (S − 1)2 holds. From the identity (1) U (Ψk )(1) = U (x ) we deduce that U (Ψk ) ≡ σ mod k (S − 1)2 . Hence, we obtain σN as the power series U (Ψκ ) with κ := dlog2 (N + 1)e truncated at order N + 1. From 2 D σN we easily compute the powers σN , . . . , σN by successive multiplication and truncation. In order to state the complexity of this procedure, we shall use the quantity M(m) := m log2 m log log m. An arithmetic operation in K requires O(M(log #K)) bit operations, and the number of arithmetic operations in K necessary to compute the multiplication, division or gcd of univariate ¡polynomials ¢ of K[T ] of degree at most m is also of order O M(m) (cf. [19], [20]). On the other hand, we shall also use the exponent ω

of the complexity O(nω ) of the multiplication of two (n×n)– matrices with coefficients in K. We have (theoretically) ω < 2.376, but for practical issues it is usually taken ω = log2 7 ∼ 2.81 (cf. [20]). We have: D N +1 Proposition¡ 4.2: σN , . . . , σN mod can be com¢ (S −1) 1+ω puted with O (L + n )M(Dδ) operations in K. Proof: The evaluation of the Newton–Hensel iterator NG requires the inversion of the Jacobian matrix JF . Since the polynomials F1 , . . . , Fn can be evaluated with L arithmetic operations, from the Baur–Strassen theorem [21] we have that the entries of JF can be evaluated with O(L) arithmetic operations and its determinant and adjoint matrix can be evaluated with O(L+n1+ω ) arithmetic operations [20]. In order to com−1 pute Ψk+1 from Ψk we compute the inverse matrix ¡ JF (Ψ ¢ k) −1 −1 as the product JF (Ψk ) = det JF (Ψk ) · Adj JF (Ψk ) of the reciprocal ¡ of the¢ power series det JF (Ψk ) by the adjoint matrix Adj JF (Ψk ) . The truncation of det JF (Ψk )−1 can be computed using fast ¢power series inversion ([19], [20]) with ¡ k O (L+n1+ω )M(2 operations. With similar cost ¡ ) arithmetic ¢ we compute Adj J (Ψ ) and the product det JF (Ψk )−1 · F k ¡ ¢ Adj JF (Ψk ) . Therefore, the computation of Ψ¢k+1 for¡ 0 ≤ ¡ Pκ−1 O (L + n1+ω ) k=0 M(2k ) = O (L + k ≤ κ − 1 requires ¢ n1+ω )M(Dδ) arithmetic operations. The remaining steps do not change the overall asymptotic complexity. Next we discuss how we can solve (2). This is a linear system with N + 1 equations and O(Dδ) unknowns, namely, the coefficients of the solution g ∈ K[S, T ] of (2). Best general– purpose algorithms solving a system of size O(Dδ × Dδ) require O((Dδ)ω ) arithmetic operations [20]. We shall profit from the structure of (2) ¢in order to improve this complexity ¡ estimate to O D2 M(Dδ) . Lemma 4.3: For a suitable ordering of the unknowns, the matrix defining (2) is block–Toeplitz Pδ PDwith D blocks. Proof: Let g(S, T ) := j=0 k=0 Aj,k (S − 1)j T k and PN k σN ≡ h=0 αh,k (S − 1)h mod (S − 1)N +1 . Fix i with 0 ≤ i ≤ N and consider the i–th equation of (2), namely δ X D X

αi−j,k Aj,k = 0,

(4)

j=0 k=0

with αi−j,k = 0 for i − j < 0. This equation expresses the condition that the coefficient of (S − 1)i in g(S, σN ) must vanish. Fix k0 and let M (k0 ) be the (N +1)×(δ+1)–submatrix of the matrix M defining (2) formed by the columns of M corresponding to the unknowns Aj,k0 for 0 ≤ j ≤ δ. From (4) we see that M (k0 ) is a Toeplitz matrix. Arranging the unknowns Aj,k according to the inverse lexicographical order on the set of pairs (k, j) we deduce that M is a block–Toeplitz matrix, with D blocks. Lemma 4.3 enables us to solve (2) using the theory of matrices of fixed displacement rank (cf. [20], [22]). From [22, Chapter 5] it follows that a basis of the null space of a block–Toeplitz (2Dδ × Dδ)–matrix ¡ with D¢blocks can be probabilistically computed with O D2 M(Dδ) operations in K. From such a basis we easily obtain mS within the same asymptotic complexity. In conclusion, we have:

Proposition 4.4:¡ The polynomial mS ∈¢ K[S, T ] can be computed with O (L + nω+1 + D2 )M(Dδ) operations in K. B. Computation of a geometric solution of C In this section we extend the algorithm of the previous section to an algorithm computing a geometric solution of the curve C defined in (1). Let Λ := (Λ1 , . . . , Λn ) be a vector of new indeterminates and let πΛ : An × C → An × A1 be the projection map defined by πΛ (λ, s, x) := (λ, s). Since πS is a finite morphism, we deduce that πΛ is a finite morphism. Furthermore, the minimal polynomial mΛ (Λ, S, T ) ∈ K[Λ, S, T ] of the generic linear form UΛ := Λ1 X1 + · · · + Λn Xn in the ring extension K[Λ, S] ,→ K[An × C] induced by πΛ satisfies degT mΛ ≤ D, degS mΛ ≤ δ and degΛ mΛ ≤ δ (see e.g. [7, Proposition 6.1]). We have that mΛ is a separable element of K[Λ, S][T ] and ∂mΛ /∂T is not a zero divisor of K[An × C] (see e.g. [7, Proposition 6.1]). Let ξ1 , . . . , ξn be the coordinate functions of K[C] defined bΛ := Pn Λk ξk . Taking the partial by X1 , . . . , Xn and let U k=1 derivative with respect to the variable Λk at both sides of the bΛ ) = 0 of K[An × C] for 1 ≤ k ≤ n, we identity mΛ (Λ, S, U see that the following identity holds in K[An × C]: bΛ ) ξk + (∂mΛ /∂Λk )(Λ, S, U bΛ ) = 0. (5) (∂mΛ /∂T )(Λ, S, U Observe that ∂mΛ /∂Λk (Λ, S, T ) satisfies degS ∂mΛ /∂Λk ≤ δ and degT ∂mΛ /∂Λk ≤ D. Substituting λk for Λk in (5), where λk is the value of Corollary 3.4, and setting vk := −(∂mΛ /∂Λk )(λ, S, T ), we obtain the parametrizations (∂mS /∂T )(S, T )Xk − vk (S, T ) (1 ≤ k ≤ n)

(6)

we are looking for. In order to compute v1 , . . . , vn , we observe that the Taylor expansion of mΛ (Λ, S, T ) in powers of Λ − λ := (Λ1 − λ1 , . . . , Λn − λn ) of order one has the expression: mΛ = mS +

n X ∂mΛ k=1

∂Λk

(λ, S, T )(Λk − λk ) mod(Λ − λ)2 .

We shall compute this (truncated) Taylor expansion applying the algorithm underlying Proposition 4.4 to the generic linear form UΛ . Each arithmetic operation in this algorithm now becomes an arithmetic operation between two polynomials of K[Λ], truncated at order (Λ−λ)2 . Since adding or multiplying two polynomials of K[Λ] truncated at order (Λ − λ)2 requires O(n) arithmetic operations in K, we obtain: Proposition¡ 4.5: A geometric solution¢ of C can be computed with O (L + nω+1 + D2 )nM(Dδ) operations in K. C. Computation of the point x(0) In this section we describe the computation of the point x(0) ∈ Fqn for which F (x(0) ) = y (0) holds, given a K– definable geometric solution of the curve C defined in (1). Set πS−1 (0) =: {0} × C0 . Our hypotheses imply that x(0) is the only Fq –rational point of C0 . Since U separates the points of πS−1 (0), from a geometric solution of C we obtain a geometric solution of C0 . Indeed, substituting 0 for S in mS , v1 , . . . , vn , we obtain polynomials

mS (0, T ), v1 (0, T ), . . . , vn (0, T ) ∈ K[T ] which represent a complete description of C0 , eventually including multiplicities. Such multiplicities are represented by multiple factors of mS (0, T ), which are also factors of v1 (0, T ), . . . , vn (0, T ) (cf. [23, §6.5]). They may be removed in the following way: ¡ ¢ first we compute a(T ) := gcd mS (0, T ), (∂mS /∂T )(0, T ) , and we clean the multiplicities of mS (0, T ) by computing m ¡ 0 := mS (0, T )/a(T ). ¢Then we obtain the parametrizations (∂mS /∂T )(0, T )/a(T ) Xk − vk (0, T )/a(T ) (1 ≤ k ≤ n) which form a geometric solution of our input system. Finally, taking into account that m0 and (∂mS /∂T )(0, T )/a(T ) are relatively prime in K[T ], we invert (∂mS /∂T )(0, T )/a(T ) modulo m0 and obtain parametrizations Xk − wk (T ) for 1 ≤ k ≤ n which are better suited for our purposes. Computing the dense representation of mS (0, T ), v1 (0, T ), . . . , vn (0, T ) requires O(nDδ) operations in K. The remaining computations involve multiplications, gcd and modular inversions of univariate polynomials of degree at most D, and hence require ¡ ¢ O nM(D) operations in K. Thus we obtain: Proposition 4.6: Given a geometric solution of C, we can compute a geometric solution m0 (T ), X1 − w1 (T ), . . . , Xn − wn (T ) of C0 with O(nδM(D)) operations in K. Next, we compute the K–rational points of C0 . Let h := #(K) gcd(m − T¢) ∈ K[T ]. The computation of h requires 0, T ¡ O M(D) log #(K) operations in K [19, Corollary 11.16]. The roots of h are the values U (P ) of the K–rational points P of C0 . In particular, U (x(0) ) ∈ K is a root of h. Since h factors into linear factors in K[T¡], its factorization¢ can be probabilistically computed with O M(D) log #(K) operations in K [19, Theorem 14.9]. We evaluate the polynomials wk at the roots α of¡ h and obtain x(0) ¢as the only Fq –rational point of the form w1 (α), . . . , wn (α) . Putting together these considerations and Propositions 4.5 and 4.6 we obtain our main result: Theorem 4.7: The only Fq –rational solution¡ of the input system F (X) = y (0) can be computed with¢ O (L + n1+ω + D2 )nM(Dδ)M(log qδ) + M(D)M2 (log qδ) bit operations. Since D ≤ δ holds, our complexity estimate may be roughly described as polynomial in the complexity L of the evaluation of F1 , . . . , Fn , the quantities n and log q, and a geometric invariant: the degree δ of the graph of the map F . In this sense, we see that the practical convenience of our algorithm, and the subsequent (in)security of cryptosystems based on polynomial maps over a finite field, essentially relies on this geometric invariant. In worst case we have δ = deg F1 · · · deg Fn , which implies that our algorithm is exponential. Furthermore, adapting the arguments of [14] it is possible to prove that any universal algorithm solving F (X) = y (0) has necessarily complexity (deg F1 · · · deg Fn )Ω(1) , showing thus the security of the corresponding cryptosystem with respect to universal decoding algorithms. A universal algorithm is an algorithm which does not distinguish input systems according to geometric invariants and represents a model for the standard algorithms based on rewriting techniques, such as Gr¨obner basis algorithms. Finally, we comment on the behavior of our algorithm under

the hypotheses of [8]. Recall that [8] requires the polynomial map F : An → An to be polynomially invertible, with inverse G := (G1 , . . . , Gn ) of degree (nd)O(1) . Then the authors show that G can be computed with (Lnd)O(1) operations. Under these conditions, we have that the projection map π : V → An has degree 1, i.e., D = 1 holds. Furthermore, it is easy to see that the minimal polynomial mS (S, T ) has degree bounded by e := max1≤k≤n deg Gk , and the algorithms underlying Proposition 4.5 and 4.6 have actually complexity L(nd)O(1) . This shows that our complexity result meets this polynomial bound under the much stronger hypotheses of [8]. R EFERENCES [1] I. Shparlinski, Computational and algorithmic problems in finite fields, Dordrecht Boston London: Kluwer Academic Publishers, 1992. [2] M.-D. Huang and Y.-C. Wong, “Solvability of systems of polynomial congruences modulo a large prime,” Comput. Complexity, vol. 8, no. 3, pp. 227–257, 1999. [3] M. Bardet, J.-C. Faug`ere and B. Salvy, “Complexity of Gr¨obner basis computation for Semi–regular Overdetermined sequences over F2 with solutions in F2 ,” Rapport de Recherche INRIA RR–5049, 2003, http: //www.inria.fr/rrrt/rr-5049.html. [4] A. Cafure and G. Matera, “Fast computation of a rational point of a variety over a finite field,” To appear in Math. Comput., available at www.arxiv.org/pdf/math.AG/0406085, 2005. [5] M. Garey and D. Johnson, Computers and Intractability: A Guide to the Theory of NP–Completeness. San Francisco: Freeman, 1979. [6] J. von zur Gathen, M. Karpinski, and I. Shparlinski, “Counting curves and their projections,” Comput. Complexity, vol. 6, pp. 64–99, 1997. [7] A. Cafure and G. Matera, “Improved explicit estimates on the number of solutions of equations over a finite field,” To appear in Finite Fields Appl., available at www.arxiv.org/pdf/math.NT/0405302, 2005. [8] C. Sturtivant and Z.-L. Zhang, “Efficiently inverting bijections given by straight line programs,” in Proc. FOCS’90. IEEE, 1990, pp. 327–334. [9] A. Kipnis and A. Shamir, “Cryptanalysis of the HFE Public Key Cryptosystem by relinearization,” in Proceedings CRYPTO’99, ser. Lecture Notes in Comput. Sci., vol. 1666. Berlin: Springer, 1999, pp. 19–30. [10] N. Courtois, A. Klimov, J. Patarin, and A. Shamir, “Efficient algorithms for solving overdefined systems of multivariate polynomial equations,” in EUROCRYPT 2000, ser. Lecture Notes in Comput. Sci., B. Preneel, Ed., vol. 1807. Berlin: Springer, 2000, pp. 71–79. [11] T. Matsumoto and H. Imai, “A class of asymmetric crypto-systems based on polynomials over finite rings,” in IEEE Intern. Symp. Inform. Theory, Abstracts of Papers, 1983, pp. 131–132. [12] C. Wolf and B. Preneel, “Taxonomy of public key schemes based on the problem of multivariate quadratic equations,” Cryptology ePrint Archive, Report 2005/077, 2005, http://eprint.iacr.org/. [13] J. Heintz, “Definability and fast quantifier elimination in algebraically closed fields,” Theoret. Comput. Sci., vol. 24, no. 3, pp. 239–277, 1983. [14] D. Castro, M. Giusti, J. Heintz, G. Matera, and L. Pardo, “The hardness of polynomial equation solving,” Found. Comput. Math., vol. 3, no. 4, pp. 347–420, 2003. [15] M. Giusti, K. H¨agele, J. Heintz, J. Morais, J. Monta˜na, and L. Pardo, “Lower bounds for Diophantine approximation,” J. Pure Appl. Algebra, vol. 117,118, pp. 277–317, 1997. [16] L. Pardo and J. San Mart´ın, “Deformation techniques to solve generalized Pham systems,” Theoret. Comput. Sci., vol. 315, 593–625, 2004. [17] E. Kaltofen, “Effective Noether irreducibility forms and applications,” J. Comput. System Sci., vol. 50, no. 2, pp. 274–295, 1995. [18] R. Lidl and H. Niederreiter, Finite fields. Addison–Wesley, 1983. [19] J. von zur Gathen and J. Gerhard, Modern computer algebra. Cambridge: Cambridge Univ. Press, 1999. [20] D. Bini and V. Pan, Polynomial and matrix computations, ser. Progress in Theoretical Computer Science. Boston: Birkh¨auser, 1994. [21] W. Baur and V. Strassen, “The complexity of partial derivatives,” Theoret. Comput. Sci., vol. 22, pp. 317–330, 1983. [22] V. Pan, Structured matrices and polynomials. Unified superfast algorithms. Boston: Birkh¨auser, 2001. [23] M. Giusti, G. Lecerf, and B. Salvy, “A Gr¨obner free alternative for polynomial system solving,” J. Complexity, vol. 17, pp. 154–211, 2001.

Inverting bijective polynomial maps over finite fields

K–variety of dimension r and degree δ and suppose that the linear projection π : V → Ar defined by π(x) := (x1,...,xr) is a finite morphism of degree D. Definition ...

207KB Sizes 0 Downloads 163 Views

Recommend Documents

Efficient inversion of rational maps over finite fields
one or all the q–rational points of F−1(y(0)) could be to apply a general al- gorithm for ...... In the second step we extend the computation of the minimal poly-.

FINITE FIELDS Contents 1. Finite fields 1 2. Direct limits of fields 5 ...
5. References. 6. 1. Finite fields. Suppose that F is a finite field and consider the canonical homomorphism. Z → F. Since F is a field its kernel is a prime ideal of Z ...

Factoring polynomials over p-adic fields
We will factor polynomials over a finite algebraic extension K of Qp. See .... John Cannon told us of developments with MAGMA's local rings and fields pack-.

Inverting Sampled Traffic
ARC Special Research Center for Ultra-Broadband Information Networks. Department of Electrical ... with link speed, increasingly routers and measurement boxes implement ... packet based sampling, even for high sampling rate. We introduce ... Index Te

Lifted Codes over Finite Chain Rings
Jun 22, 2011 - (ii) If i = 1 then R1 = F, and the result follows directly. Now suppose i > 1, let a = a0 + a1γ + ททท + ai−1γi−1 ∈ Ri. We define ρ to be a map from ...

MDS Codes over Finite Principal Ideal Rings
A finite family (ai)n i=1 of ideals of R, such that the canonical homomorphism of R to. ∏n i=1. (R/ai) is an isomorphism is called a direct decomposition of R.

COUNTING CUBIC CURVE COVERS OVER FINITE ...
1. Introduction. Let C be a nice curve over a finite field Fq; here nice means smooth, geometrically irre- .... i(C, π∗O(Z)). (1). Thus the cohomology of such line bundles on our surface is determined by the cohomology of vector bundles on our bas

Type II codes over finite rings
Jun 23, 2011 - II codes over Galois rings GR(2m,r) = Zpm [x]/(g(x)), where r is the degree of the basic irreducible polynomial g(x) in Zpm [x], see [3]. They also discussed interesting connections to unimodular lattices. In this paper, we shall first

Distributed Sum-Rate Maximization Over Finite Rate ... - IEEE Xplore
of a wired backhaul (typically an x-DSL line) to exchange control data to enable a local coordination with the aim of improving spectral efficiency. Since the backhaul is prone to random (un- predictable) delay and packet drop and the exchanged data

Inverting Sampled Traffic
[email protected]. Darryl Veitch ... pending on user requirements and the capabilities of the collection ... and we will use these two terms interchangeably. From a ..... previous stage, and GP will be expanded in a power series centered ...

Polynomial-mal.pdf
+cx+d F¶ _lp]Z ̄nsâ Hcq LSIw (x+1) Bbm a+c=b+d F¶v. sXfnbn¡qI? 16. P(x)= x. 3. +6x2. +11x-6+k bpsS LSI§fmW" (x+1), (x+2) Ch F¦n k bpsS hne F ́v ? 17. P(x)=x15. -1 sâ LSIamtWm (x-2) F¶v ]cntim[n¡qI. 18. P(x)=x2. +1 sâ LSIamtWm (x-2) FÂ

Polynomial Division.pdf
There was a problem previewing this document. Retrying... Download. Connect more apps... Try one of the apps below to open or edit this item. Polynomial ...

Design of Polynomial Basis Multipliers over GF(2^233)
implementations for multiplication over finite field. GF(2233). Multiplication in GF(2n) is very commonly used in cryptography and error correcting codes. An.

Automatic Polynomial Expansions - GitHub
−0.2. 0.0. 0.2. 0.4. 0.6. 0.8. 1.0 relative error. Relative error vs time tradeoff linear quadratic cubic apple(0.125) apple(0.25) apple(0.5) apple(0.75) apple(1.0) ...

Inverting face embeddings with convolutional neural networks
Jul 7, 2016 - of networks e.g. generator and classifier are training in parallel. ... arXiv:1606.04189v2 [cs. ... The disadvantage, is of course, the fact that.

CONSTRAINED POLYNOMIAL OPTIMIZATION ...
The implementation of these procedures in our computer algebra system .... plemented our algorithms in our open source Matlab toolbox NCSOStools freely ...

2.3 Polynomial Division.pdf
Page 1 of 6. 2.3 POLYNOMIAL DIVISION. Objectives. Use long division to divide polynomials by other polynomials. Use the Remainder Theorem and the Factor Theorem. Long Division of Polynomials. *In the previous section, zeros of a function were discuss

Google Maps
and local business information-including business locations, contact information, and driving directions. Start your search in this box: Begin your search with a ...

Additive Self-Dual Codes over Fields of Even Order
Oct 16, 2016 - CTE is an (n + 1,2n+1,dTE ) trace self-dual additive code. GTE = ... It is easy to see that CTE has cardinality 2 rn. 2. +1. .... System Tech. J., 42 ...

The Four Fields - qdk.org
within our adaptation of George Patterson's “Seven Commands of Christ.” It calls on four ..... New Life in Christ, Thomas Wade Akins available for download at:.

Inverting Regulator Takes Inputs Up to 50V and ... - Linear Technology
Design Note 552. Victor Khasiev. 07/16/552. Figure 1. ... but with proper derating, the input voltage of this application can be as low as 4V or as high as 50V.