« previous | Thursday, April 18, 2013 | next »
Last Time
We worked with the field
realized as
.
We also looked at
.
Note:
is an elliptic curve because its discriminant is non-zero: 
Recall the addition law (for this elliptic curve)
If
but
,
is the point at infinity
Surprise Quiz
Compute the following:
![{\displaystyle \left[2\right]\left(0,\pm 1\right)=\left(1,0\right)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/264884eec7708d4973bd7034d4ce146eadacd828)
![{\displaystyle \left[2\right]\left(2,\pm T\right)=\left(1,0\right)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/186a605205791d206b2b30d8d61d875c50c8e3dd)
![{\displaystyle \left[2\right]\left(T,\pm 1\right)=\left(1+T,0\right)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f52a252a6187756910f9f066f2066c5ad771c2b2)
![{\displaystyle \left[2\right]\left(T+2,\pm T\right)=\left(1+T,0\right)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b03fc5cbe7b5f8e0b1b82f0f3e138e827e70feb3)
![{\displaystyle \left[2\right]\left(2T,\pm 1\right)=\left(1+2T,0\right)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f3ca948c510519030c3cd6c6852884b5276f4c82)
![{\displaystyle \left[2\right]\left(2T+2,\pm T\right)=\left(1+2T,0\right)}](https://wikimedia.org/api/rest_v1/media/math/render/svg/b87d5df760ecbffd93a153e4bbef328c4e445e75)
All of the RHS points have order 2 because if you add these points to themselves, you get the point at infinity.
All of the LHS points have order 4 because the RHS has order 2 (
)
Lagrange's theorem states that the order must divide the number of points on the curve.
Factoring Using Groups
Suppose we want to factor
.
We can easily compute
and find that
is composite.
Lenstra's Method
- Pick a random point
, with small integer coordinates
and
.
- Pick a random
, then solve for
with
lying on 
- Pick a "moderate"
and compute
. For example,
gives 
- Compute (if you can)
- If this succeeds, you've "failed" (go back and pick new
or new
.
- If this fails, you will have found a non-trivial factor of
!
For example, let's choose
,
, which gives
:
Choose
, so
So now we have to compute
... use analogue of recursive squaring (hence binary expansion above) with only 24 doublings and 12 additions
it turns out that
is well-defined, so it tells us nothing about the factorization of
.
- Retry with
, same well-defined result
- Retry with
, same well-defined result
- …
- Retry with
, something interesting happens:
,
:
What happens is in the addition formula, you wind up computing
, and it turns out that
is our factor: