Maths IA · Algebra and functions · topic 14 of 97
Elliptic curves: the maths inside a crypto wallet · IB Maths IA idea: guide, sample graph and step-by-step plan
chord, third point, flipTake two points on a curve, draw a line, find where it hits the curve again and flip it. That strange recipe is a way to add points, and it is the basis of the keys in many crypto wallets. You will check why the recipe never leaves the curve.
- ✓ you enjoy geometry that turns into algebra
- ✓ you like a rule that looks odd until you see why it works
- ✓ you want to know what a private key and a public key really are, mathematically
The big idea
On a curve such as y² = x³ + 7, a line through two points meets the curve at a third point. Reflect that point in the x-axis and you have defined an addition. Find the sum with algebra: the gradient of the chord, or the tangent gradient 3x²/(2y) found by implicit differentiation, then substitute into the curve and use the sum of the roots of a cubic. The result is a formula that uses only addition, multiplication and division, so it also works with remainders modulo a prime. There you can add a point to itself k times quickly, but undoing that, finding k from the result, has no known quick method on classical computers. Parts of this are beyond the IB courses: the finite field and the group structure need careful, honest explanation. Decide what you prove and what you quote.
Make it yours: pick one twist
Copying a classic won't show your choices. Pick one of these (or invent your own) and your IA becomes yours.
Swipe for more twists →
Find the chord gradient, substitute into y² = x³ + 7 and use the sum of the roots to get the third point.
→ A proof that the sum is again on the curve, with the algebra shown line by line. Treat the case where the two points are equal separately.Differentiate both sides of y² = x³ + 7 to get the tangent gradient, and use it to double a point.
→ Calculus enters the geometry. Check the doubling formula against a numerical value for a chosen point.Repeat the addition over the integers mod p for a small prime, listing every point on the curve.
→ The picture turns into a scatter of dots, but the algebra still works. Count the points and compare with the expected size.Compute kG by repeated doubling and adding, and count the operations compared with k − 1 additions.
→ Fast computation of a hard-to-reverse map. Show with logarithms why a 256-bit k needs only a few hundred steps.Given G and kG on a small curve, find k by searching, and record how the work grows with the number of points.
→ You measure the hardness yourself. Explain why a small curve is useless and what changes at real sizes.Replace the 7 by another constant, or compare with y² = x³ − 2x + 1, and ask which properties survive.
→ Tests whether your argument depends on the constant. Check which curves give a smooth, well-behaved addition.Your Maths IA research question: run the check
reals or mod p?Write your own question first. Then make sure it ticks every box:
- Names the curve and the field you work over: the real numbers, or the integers mod a stated prime.
- Names what you prove or compute: the addition formula, the number of points or the cost of multiplying.
- Says what is checked numerically and what is proved algebraically.
- Is clear about which facts, such as associativity of the addition, you quote rather than prove.
- States what you leave out: real key sizes, the choice of the generator and attacks that do not use brute force.
The model
A curve, a chord and a reflection. Draw the construction for two points of your own on your own curve, and mark the third point before you reflect it.
How your Maths IA could be laid out
The usual order for a topic like this, what each part needs to show, and roughly how much of your 12 to 20 pages it takes. The words are all yours.
What a public key is for, and which part of the maths you will explain or test.
The curve, the chord construction and the reflection. A hand-drawn or plotted example with exact coordinates.
Chord gradient, substitution, sum of roots, and the tangent case by implicit differentiation. Every step shown.
The same formulas with remainders, a complete list of points for a small prime and a count checked against a bound.
Double and add, the operation counts, and your measurement of how hard it is to find k by searching.
Back to your aim: what you proved, what you computed and what the two together say about keys.
What you quoted without proof, how small your examples are compared with real keys, and what would change for a real system. Say which limitation matters most.
Where every theorem and parameter came from.
What your Maths IA graph could look like
average several runsMade-up values to show the form of a strong graph, not the answer: the work to find k by searching against the number of points on the curve, with a model. Yours will use your own searches. example only
- Measured work and model on one set of axes.
- Axis labels give units: a count of points and a count of steps.
- Repeat each search several times and plot the average, not a single run.
- Say how the points were found: exhaustive search, or a method you coded.
- Another graph to consider: steps for double-and-add against the number of binary digits of k.
The maths in action
worked through, not sketched!The graph above was a sketch with made-up numbers. This figure works the idea through from the model itself, so you can see what a finished figure looks like. The source line under it says where every number comes from.
How many points does a curve have?
Count the points on y² = x³ + 7 over the integers mod p, including the point at infinity. Compare each with p + 1 and with the bound that guarantees the count is close to it.
Your game plan
Tick steps off as you go. We'll remember on this device.
0 of 10 done
- Read and predictRead an introduction to elliptic curves and plot y² = x³ + 7. Before any algebra, predict where the line through two points meets the curve.
- Draw the chord ruleChoose two points, draw the chord, read off the third point and reflect it. Write the coordinates as accurately as you can.
- Derive the formulaWrite the chord gradient, substitute into the curve and use the sum of the roots of the cubic to find the third x-coordinate.
- Trial run (1 lesson)Add two points with your formula and check them against your drawing, and check that the result lies on the curve. Fix any mismatch now: the sign of y, the order of the points.
- Double a pointFind the tangent gradient by implicit differentiation and derive the doubling formula. Check it numerically.
- Go modularRepeat with arithmetic mod a small prime. List all the points and look for the pattern when you add a point to itself again and again.
- Multiply and reverseWrite double-and-add, count its operations, then search for k from kG on a small curve and record how the work grows.
- Go further, with a reasonProve one property yourself, such as the sum being on the curve in every case, or compare two curves. HL: justify each case, including the point at infinity.
- Reflect as you goAfter every result, write one line on what it means and what you took on trust. These lines become your evaluation.
- Cut, check, then sendCheck every symbol is defined once, each claim is proved or sourced and the conclusion answers your aim. Then send your teacher one draft.
The maths you'll use
- Implicit differentiation – Differentiate to get the tangent gradient and use it for doubling a point.
- Coordinate geometry and polynomials – Substitute the chord into the curve and use the sum of the roots of the cubic to find the third intersection.
- Proof by cases – Show the sum is on the curve, treating , and vertical lines separately.
- Modular arithmetic – Run the same formulas mod a prime , using modular inverses in place of division, and list all the points.
- Counting operations and logarithms – Compare double-and-add, about doublings, with repeated additions, and measure a brute-force search for .
Key equations
Syllabus links
- 2.1Straight lines
- 2.3Graphs of functions
- 2.12Polynomials, factor and remainder theoremsHL
- 5.4Tangents and normals
- 5.14Implicit differentiation, related rates, optimisationHL
- 2.1Straight lines
- 5.4Tangents and normals
- 5.9Further derivatives; chain, product, quotient rules; related ratesHL
Read up first
Data and sources to start from
Point counts and search times from a program you write for small primes, plus the published parameters of the curve used by Bitcoin.
References to cite
- Koblitz, N. (1987). Elliptic curve cryptosystems. Mathematics of Computation, 48(177), 203-209.
- Miller, V. S. (1986). Use of elliptic curves in cryptography. In Advances in Cryptology: CRYPTO '85 (pp. 417-426). Springer.
- Silverman, J. H., & Tate, J. (2015). Rational points on elliptic curves (2nd ed.). Springer.
Cite what you actually use, in your own format, and say where each number came from.
Traps to avoid in this Maths IA
equal points need the tangent- Adding the y-coordinates and x-coordinates of two points directly. The rule is the chord, the third point and the reflection.
- Forgetting the vertical line case, where two points have the same x and opposite y. Their sum is the point at infinity.
- Using the chord formula when the two points are the same. That needs the tangent.
- Dividing by zero modulo p without noticing. Division is multiplication by an inverse, and some values have none.
- Claiming the associative law from a few numerical checks. Say it is quoted, or prove it.
- Treating a small curve as if it showed real security. Real curves have about 2^256 points.
More Maths IA ideas like this
RSA: why can nobody read your messages?●●●
The birthday problem: how safe are hash codes?●●○
Roots of unity: a pentagon by ruler and compass?●●●
Fonts and logos: how do Bézier curves work?●●○
This guide shows how a topic like this is usually approached. It is not an IA. Your question, choices, data, analysis and words must be your own: change something, tell your teacher where the idea came from, and follow your school's rules on outside help.