Defining a subgroup of elliptic curves with specific characteristics

asked 7 years ago

Shalec gravatar image

updated 6 years ago

FrédéricC gravatar image

Hey,

is there a way, to define a subgroup of an elliptic curve with two or more characteristics? I would like to take an elliptic curve over a finite field of order p and p4, define the r-torsion subgroup (where r is a prime, too) and reduce those to the set of points, which also lays in the Frobenius-eigenspace.

For example:

p= 13
r=5
R=GF(p)
_.<x> = PolynomialRing(R)
R4.<x> = R.extension(x^4 - 2, 'x')
_.<y> = PolynomialRing(R)

b= x^-1

E = EllipticCurve(R, [1,0]) # y^2 = x^3+x
E4 = EllipticCurve(R4, [b,0])

Well, it is easy to find a point on QE4, such that rQ=(0:1:0), use

Q=ZZ(E4.order()/r *Q

, but checking, if (x(Q)p,y(Q)p)=π(Q)=pQ is hard. I only need one point of that group at all, but my p is even larger (~340 bits), so brute-forcing would be an option, if I could start it 6-12 month ago :)

Furthermore, if I concider to evaluate the secant or tangent on E and let me return a point on that curve, it will have projective coordinates, with z(P)1. Shall I apply π to all three coordinates?

Preview: (hide)

Comments

What is the projection π?

The order of E4 is not divisible by r = 5:

sage: E4.order().factor()
2 * 14401

Please edit the question, so that these two sensible points become clear.

The "real case" has to do with a prime p like - say - p = ZZ(10^50).next_prime()? (Or bigger...)

dan_fulea gravatar imagedan_fulea ( 7 years ago )

Ok, I do. :) π is the p-Frobenius, that means: π(P)=(x(P)p,y(P)p) and the prime is around 340 bits of size. You can find that in the edit also.

Shalec gravatar imageShalec ( 7 years ago )

Things are still somehow unclear for me. I'll try to write sentences, please correct me where i am going wrong...

Let K=Fp4 for some prime p. Let F be the Frobenius morphism, Fx=xp, on K, xK.

Let E be the elliptic curve over K defined by the equation y2=x3+bx for some suitable b not in the prime field Fp inside K.

So we fix a point Q=(xQ,yQ) in E(K), it satisfies: y2Q=x3Q+bxQ . Applying F on the above, we get a point πQ=(xpQ,ypQ) on the curve E, y2=x3+bpx . And bpb.

On the other side, the point pQ is on the curve E. An equality πQ=pQ leads to bpxQ=bxQ...

Please give a ...(more)

dan_fulea gravatar imagedan_fulea ( 7 years ago )

Ok. You got it right. I might produce an example in the next hours. For instance the parameters "p=13" and "r=5" should do it. Consider E: y2=x3+(21/4)x over Fp4. This curve becomes isomorphic over Fp16 to E: y2=x3+x, where E(Fp)[r]=E(Fp16)[r]PE: π(P)=O. (Twist)

Shalec gravatar imageShalec ( 7 years ago )

I'm on generating an example from now on.

Shalec gravatar imageShalec ( 7 years ago )