Abstract
We address several algorithms to perform a double-scalar multiplication on an elliptic curve. All the methods investigated are related to the double-base number system (DBNS) and extend previous work of Doche et al. [25]. We refine and rigorously prove the complexity analysis of the joint binary-ternary (JBT) algorithm. Experiments are in line with the theory and show that the JBT requires approximately 6 percent less field multiplications than the standard joint sparse form (JSF) method to compute [n]P+ [m]Q. We also introduce a randomized version of the JBT, called JBT-Rand, that gives total control of the number of triplings in the expansion that is produced. So it becomes possible with the JBT-Rand to adapt and tune the number of triplings to the coordinate system and bit length that are used, to further decrease the cost of a double-scalar multiplication. Then, we focus on Koblitz curves. For extension degrees enjoying an optimal normal basis of type II, we discuss a Joint τ-DBNS approach that reduces the number of field multiplications by at least 35 percent over the traditional τ-JSF. For other extension degrees represented in polynomial basis, the Joint τ-DBNS is still relevant provided that appropriate bases conversion methods are used. In this situation, tests show that the speedup over the τ-JSF is then larger than 20 percent. Finally, when the use of the τ-DBNS becomes unrealistic, for instance because of the lack of an efficient normal basis or the lack of memory to allow an efficient conversion, we adapt the joint binary-ternary algorithm to Koblitz curves giving rise to the Joint τ-τ method whose complexity is analyzed and proved. The Joint τ-τ induces a speedup of about 10 percent over the τ-JSF.
Original language | English |
---|---|
Pages (from-to) | 230-242 |
Number of pages | 13 |
Journal | IEEE Transactions on Computers |
Volume | 63 |
Issue number | 1 |
DOIs | |
Publication status | Published - Jan 2014 |
Keywords
- Double-base number system
- Double-scalar multiplication
- Elliptic curve cryptography
- Joint sparse form
- Koblitz curves