I am doing a school project about Bitcoin and more specifically point addition on the Elliptic Curve. I am very new to all this so please forgive my mistakes.
I have been reading that when adding points together the result can go "outside of the bounds before intersecting a third point" as in this image.
This is fascinating but also a little confusing and I would like to know more.
So my questions are:
1. Is it possible to know when the point addition process has gone outside of the field?
And
2. Is there a way (like a Python script or something) that I could use to add 2 points and it would tell me if the result went outside of the field?
I know that the result of the addition is still a valid point on the curve, but I would love to know if it passed out of bounds first.
This would be fantastic for my project to show others how this works.
I hope that made sense and thanks in advance for your help.
The math involves different kinds of objects and so the meaning which is understood as "add" is different. When we say add two numbers in a finite field, which is what you have to do for this to work, we really mean add like integers and then divide by the special modulus value and keep the remainder.
So take the clock and consider neither the minute nor day but only the hour. 7+7 is considered 2 rather than 14. So they're right. You cannot get above 12. But 7+7 is 14 (in normal addition). So I think you want to know whether you can determine when the you get different results. In the case of the clock, you overflow at 12. Now not only is addition different but so is division, multiplication and subtraction.
[1] You can calculate the slope the normal way, find the other point on the graph and you'll get some rational number for the slope and the x and y for the new point may not even be integers. If they are not both integers, this means you would have to follow the slope outside of the field size and wrap around (perhaps many times) in order to get to the field bounded answer.
Follow the instructions of how to calculate a sum of points (now the points have yet another different meaning for add). Start with say y^2=x^3-x+7. Figure out two integer points with trial and error. The desmos graph will give you some points to try. Plug in numbers that look like they are in integer spots. Do your point addition as if they are all real numbers. Post your third point here. You'll most probably get some non-integer value.
Use a small modulus like 1999 or 113. Do this the modulus way and you'll get integers smaller than 113. How to do division modulus 113 is something you should search for yourself also. Go search for finite fields.