13 Finite field extension curves described
This chapter covers
- Cardinality of field extension curves
- Structures for polynomial points and curves
- Embedding polynomial points on curves
- Addition and multiplication of field extension points
- A tiny example showing points on a field extension curve
In this chapter, I’ll dive into elliptic curves over finite field extensions. These curves are required to compute pairings. The cryptographic protocols enabled by pairings of points over elliptic curves have a lot of advantages. But before we can compute pairings, we first need a point addition algorithm over a field extension of an elliptic curve.
Elliptic curve subroutines using polynomials are the subject of this chapter. I’ll first cover some of the rules required to create a field extension and then assume we already have found a useful curve. In chapter 14, I’ll go into how that actually happens. As with chapter 3, I will cover routines that manipulate point and curve structures, embed polynomials on a curve, create random points, add points, and multiply points. While most places replace an m*
routine with a poly*
routine, there are a few differences because polynomials are more complicated than numbers.
To help visualize the ideas here and in the next few chapters, I will use a very tiny curve as an illustration. This curve was definitely cherry-picked to contain as many useful examples as possible.