@@ -47,10 +47,16 @@ code:
47
47
.. tip ::
48
48
49
49
You can also use :py:class: `~ecdsa.curves.Curve ` to get the curve
50
- parameters from a PEM or DER file. Or use the
50
+ parameters from a PEM or DER file. You can also use
51
+ :py:func: `~ecdsa.curves.curve_by_name ` to get a curve by specifying its
52
+ name.
53
+ Or use the
51
54
:py:func: `~ecdsa.curves.find_curve ` to get a curve by specifying its
52
55
ASN.1 object identifier (OID).
53
56
57
+ Affine coordinates
58
+ ------------------
59
+
54
60
After taking hold of curve parameters you can create a point on the
55
61
curve. The :py:class: `~ecdsa.ellipticcurve.Point ` uses affine coordinates,
56
62
i.e. the :math: `x` and :math: `y` from the curve equation directly.
@@ -82,6 +88,8 @@ methods of the object:
82
88
83
89
print (" x: {0} , y: {1} " .format(point_c.x(), point_c.y()))
84
90
91
+ Projective coordinates
92
+ ----------------------
85
93
86
94
When using the Jacobi coordinates, the point is defined by 3 integers,
87
95
which are related to the :math: `x` and :math: `y` in the following way:
@@ -123,3 +131,7 @@ the regular implementation:
123
131
124
132
point_c = point_a + point_b
125
133
print (" x: {0} , y: {1} " .format(point_c.x(), point_c.y()))
134
+
135
+ All the other operations, like scalar multiplication or point addition work
136
+ on projective points the same as with affine representation, but they
137
+ are much more effective computationally.
0 commit comments