Reordering computation sequences for memory-efficient binary field multiplication

Finite field multiplication is a crucial building block for cryptography, especially the elliptic curve public key cryptosystem. Recently, various algorithms for efficient finite field multiplication over devices whose resources are extremely constrained have been proposed. However, most of these proposals only take speed optimization into account, but they do not pay much attention to optimization of memory usage. In this paper, we propose a multiplication algorithm on $F_{2^{m}}$, which minimizes the RAM requirement by rescheduling operation sequences. According to our experimental results on the ATmega128L microprocessor, the proposed algorithm reduces the amount of required RAM by up to 50 % while maintaining the speed at the same level. We also verify the feasibility of our algorithm by applying it to the elliptic curve cryptosystem.