when (k
i
,l
i
,s
i
) = (1,1,1):
nine point additions are required.
out of these nine, five require (3M+ 2S)
operations each i.e.,
5(3M + 2S) = 15M + 10S.
the other four require 4M+ 2S
operations each i.e.,
4(4M + 2S) = 16M + 8S.
resulting in a total of (31M + 18S) operations.
Thus on the average
(5(15M + 10S) + 2(27M+ 16S) + (31M+ 18S))
8
= (20M + 12.5S) operations would be required to
run Algorithm 4 for every bit of the exponent.
To compute x-coordinate of kP + lQ + uR using the
straight forward method, we require the following
steps:
1. Compute kP using Algorithm 1(Binary ladder).
2. Recover Y-coordinate of kP.
3. Compute lQ using Algorithm 1(Binary ladder).
4. Recover Y-coordinate of lQ.
5. Compute uR using Algorithm 1(Binary ladder).
6. Recover Y-coordinate of uR.
7. Compute kP+ lQ+ uR in projective coordinates.
8. Compute x-coordinate of kP+ lQ+ uR as x = X/Z
We will assume the bit length of all the three
scalars k, l and u to be the same. The algorithm
for recovery of the Y-coordinate is described in
(Okeya and Sakurai, 2001) and this costs (12M + S)
operations. Then, the computational cost of step
1, 3 and 5 together is 3
(6|k| − 3)M + (4|k| − 2)S
.
Steps 2, 4 and 6 together costs 3(12M + S). Step
7 costs 2(10M + 2S) while step 8 costs M + I
where I denotes a field inversion. Thus the cost
of computing the x-coordinate of kP + lQ + sR
is (18|k| + 48)M + (12|k| + 3)S + I. Ignoring the
costs of recovering the individual Y-coordinates and
adding the resulting sums, the approximate cost per
bit when the straight forward algorithm is used to
compute the triple exponentiation is (18M + 12S)
operations. Then on the average, the above straight
forward method performs better than Schoenmakers’
algorithm for triple scalar multiplication.
In the best case, the per bit cost of running
Algorithm 4 is 5(3M + 2S) = (15M + 10S) and
this occurs when (k
i
,l
i
,s
i
) = (0,0,0) or (0,0,1)
or (0,1,0) or (1, 0, 0) or (1,1,0). Under these
circumstances Schoenmakers’ algorithm performs
better than the straight forward algorithm.
Worst case per bit cost of Schoenmakers’
algorithm is 31M + 18S and this occurs when all
of (k
i
,l
i
,s
i
) = (1,1, 1). Thus under worst case
conditions, the straight forward algorithm would
perform better than Schoenmakers’ algorithm for
triple scalar multiplication.
The best case, average and worst case
comparisons between Schoenmakers’ algorithm
and the straight forward method can be summarized
as in the table below. The table lists the better option
between Schoenmakers’ algorithm and the straight
forward method under best case, average and worst
case conditions.
Table 1: Straight Forward Vs Schoenmakers’.
Double scalar Triple scalar
Schoenmaker Schoenmaker
Vs Vs
Straight Straight
Forward Forward
Best Case Schoenmaker Schoenmaker
Average Schoenmaker Straight Forward
Worst Straight Forward Straight Forward
5 CONCLUSION
In this paper, we showed the derivation of
Schoenmakers’ algorithm for double scalar
multiplication and used this to construct the
analogue of Schoenmakers’ algorithm for triple
scalar multiplication. We further showed
that Schoenmakers’ algorithm for triple scalar
multiplication is more expensive than the
straight forward method except under best case
conditions. Thus Schoenmakers’ algorithm for
triple exponentiation may not be the best option for
implementation in smart cards and mobile devices.
In (Brown, 2014), the author constructed higher
degree analogues of Bernstein’s binary double
scalar multiplication algorithm, but this algorithm
is currently patented. Moreover, the x-coordinate
only formulae that was initially developed for
Montgomery curves have been generalized for other
types of elliptic curves as well. For instance, the
authors in (Lopez and Dahab, 1999) generalized
this idea to Weierstrass form binary curves and the
authors in (Brier and Joye, 2002) generalized it to
Weierstrass Curves defined over GF(p). In addition,
Montgomery curves themselves have been the focus
of recent research (Bernstein, 2006a) and there is
potential for the Montgomery curve Curve25519 to
be standardized. These reasons motivate the need
to construct triple scalar multiplication analogues of
other double scalar multiplication algorithms such as
SECRYPT2015-InternationalConferenceonSecurityandCryptography
390