A scalar multiplication can be performed on an elliptic curve cryptosystem
at a high speed. P is set as an initial value of Q[0], and 2.times.P is
set as an initial value of Q[1]. An elliptic curve doubling ECDBL of
Q[d[i]] is performed, and an arithmetic result is stored in Q[2]. An
elliptic curve addition ECADD of Q[0] and Q[1] is performed, and an
arithmetic result is stored in Q[1]. Q[2-d[i]] is stored in Q[0].
Q[1+d[i]] is stored in Q[1]. The elliptic curve addition ECADD and the
elliptic curve doubling ECDBL are concurrently performed in the
respective processors.