Explicit-Formulas Database
Genus-1 curves over large-characteristic fields
Montgomery curves
EFD / Genus-1 large-characteristic / XZ coordinates for Montgomery curves
XZ coordinates for Montgomery curves
An elliptic curve in Montgomery form
[more information]
has parameters
a
b
and coordinates
x
y
satisfying the following equations:
b*y^2=x^3+a*x^2+x
XZ coordinates
[database entry]
represent
x
y
as
X
Z
satisfying the following equations:
x=X/Z
Best operation counts
Smallest multiplication counts assuming I=100M, S=1M, *param=0M, add=0M, *const=0M:
- 4M for doubling: 2M+2S.
- 3M for doubling with Z1=1: 1M+2S.
- 6M for differential addition: 4M+2S.
- 5M for differential addition with Z1=1: 3M+2S.
- 10M for differential addition and doubling: 6M+4S.
- 9M for differential addition and doubling with Z1=1: 5M+4S.
- 101M for scaling: 1I+1M.
Smallest multiplication counts assuming I=100M, S=0.8M, *param=0M, add=0M, *const=0M:
- 3.6M for doubling: 2M+2S.
- 2.6M for doubling with Z1=1: 1M+2S.
- 5.6M for differential addition: 4M+2S.
- 4.6M for differential addition with Z1=1: 3M+2S.
- 9.2M for differential addition and doubling: 6M+4S.
- 8.2M for differential addition and doubling with Z1=1: 5M+4S.
- 101M for scaling: 1I+1M.
Smallest multiplication counts assuming I=100M, S=0.67M, *param=0M, add=0M, *const=0M:
- 3.34M for doubling: 2M+2S.
- 2.34M for doubling with Z1=1: 1M+2S.
- 5.34M for differential addition: 4M+2S.
- 4.34M for differential addition with Z1=1: 3M+2S.
- 8.68M for differential addition and doubling: 6M+4S.
- 7.68M for differential addition and doubling with Z1=1: 5M+4S.
- 101M for scaling: 1I+1M.
Summary of all explicit formulas
Explicit formulas for addition
Explicit formulas for doubling
The "mdbl-1987-m" doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "dbl-1987-m-3" doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "dbl-1987-m-2" doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "dbl-1987-m" doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
Explicit formulas for tripling
Explicit formulas for differential addition
The "mdadd-1987-m" differential-addition formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "dadd-1987-m-3" differential-addition formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "dadd-1987-m" differential-addition formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "dadd-1987-m-2" differential-addition formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
Explicit formulas for differential addition and doubling
The "mladd-1987-m" differential-addition-and-doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "ladd-1987-m-3" differential-addition-and-doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "ladd-1987-m-2" differential-addition-and-doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
The "ladd-1987-m" differential-addition-and-doubling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
Explicit formulas for scaling
The "scale" scaling formulas
[database entry;
Sage verification script;
Sage output;
three-operand code]:
- Cost: 1I + 1M + 0add.
- Explicit formulas:
X3 = X1/Z1
Z3 = 1