Cryptography Reference
In-Depth Information
computable” (see below for a clarification of this term) group homomorphism ψ and replace
the computation g a in a group of order r by t he multi-exponentiation g a 0 ψ ( g ) a 1
for suitable
a 1 |≈ r . Typical choices for ψ are an automorphism
of an elliptic curve or the Frobenius map on an elliptic curve or torus over an extension
field.
More precisely, let g
integers a 0 and a 1 such that
|
a 0 |
,
|
F q ) be an element of prime order r in an algebraic
group and let ψ be a group homomorphism such that ψ ( g )
G (
g
(this is automatic if
g λ for some λ
ψ : G (
. The meaning
of “efficiently computable” is essentially that computing ψ ( g ) is much faster than com-
puting g λ using exponentiation algorithms. Hence, we require that λ and r
F q )
G (
F q ) and r
# G (
F q )). Then ψ ( g )
=
∈ Z
/r
Z
λ are not
=−
small; in particular, the map ψ ( P )
P on an elliptic curve is not interesting for this
application.
Example 11.3.21 Consider
T 2 (
F p 2 ), with eleme n ts represented as in Definition 6.3.7
so that u
∈ F p 2 corresponds to g
=
( u
+
θ ) / ( u
+
θ )
∈ F p 4 . It follows by L emma 6.3.12
u p
( w here θ 2
to g p
( u p
θ ) / ( u p
that A
+
+
B
=
0)
corresponds
=
+
+
θ )
=
( u p
θ ) 1 . Since computing u p for u
u p
is a useful efficiently computable group homomorphism with respect to the torus group
operation.
One can also perform exponentiation in G q 2 , 2 ⊆ F p 4 using Frobenius. Given an exponent
a such that 1
θ )( u p
+
+
∈ F p 2 is easy, the map ψ ( u )
=
A
a<p 2 one lets a 0 and a 1 be the coefficients in the base- p representation
of a and computes g a as g a 0 ( g p ) a 1 . Note that g p is efficient to compute as it is a linear map
on the four-dimensional vector space
F p 4 over
F p .
Other examples include the automorphism ζ 3 on y 2
x 3
B in Example 9.4.2 and
the automorphisms in Exercises 9.4.5 and 10.2.8 . Computing the eigenvalue λ for ψ is
usually easy in practice: for elliptic curves λ is a root of the characteristic polynomial of ψ
modulo r .
In some applications (e.g.,
=
+
F p 3 ) or some automorphisms on genus 2 curves such as
the one in Exercise 10.2.8 ) one can replace g a by g a 0 ψ ( g ) a 1
T 2 (
ψ l 1 ( g ) a l 1 for some l> 2.
We call this the l -dimensional GLV method. We stress that l cannot be chosen arbitrarily;
in Example 11.3.21 the map ψ 2 is the identity map and so is not useful.
In the previous section we sketched, for elliptic curves, the GLV method to represent an
integer as a short Frobenius expansion with relatively small coefficients. One can do the
same for any endomorphism ψ as long as ψ ( P )
···
=
=
g λ in multiplicative
[ λ ] P (or ψ ( g )
notation). The GLV lattice is
l
+
1
x l λ l
L
={
( x 0 ,...,x l )
∈ Z
: x 0 +
x 1 λ
+···+
0(mod r )
}
.
A basis for L is given in Exercise 11.3.22 . As explained earlier, to convert an integer a
into GLV representation one finds a lattice vector ( a 0 ,a 1 ,...,a l )
L close to ( a, 0 ,..., 0)
a 0
a i for 1
(using Babai rounding) then sets a 0 =
a
and a i =−
i
l .
Search WWH ::




Custom Search