Optimized Multi-Precision Multiplication for Public-Key Cryptography on Embedded Microprocessors

In this paper, we revisit the previous multi-precision multiplication techniques including "operand-scanning", "hybrid-scanning", "operand-caching", "consecutive operand-caching" and "product-scanning." Particularly, the former four methods execute an intermediate result computation which is process for updating the results with a newly computed result by computing a number of addition operations. This operations is expensive, so efficient implementation is required to boost the performance. For this reason, we propose a novel method, i.e., "Carry-Once", which reduces the number of intermediate result computation by size of result accumulation. The main idea is gathering carry values and updating the values at once. This method improves all multi-precision multiplication techniques having intermediate result computation and show performance enhancement in terms of speed by up to 2.5%, compared with best known results.