We present a novel technique which allows a virtual increase of the bitlength of a crypto-coprocessor in an efficient and elegant way. The proposed algorithms assume that the coprocessor is equipped with a special modular multiplication instruction. This instruction, called MultModDiv(A, B, N) computes A * B mod N and ⌊(A*B)/N⌋. In addition to the doubling algorithm, we also present two conceivable economic implementations of the MultModDiv instruction: one hardware and one software realization. The hardware realization of the MultModDiv instruction has the same performance as the modular multiplication presented in the paper. The software realization requires two calls of the modular multiplication instruction. Our most efficient algorithm needs only six calls to an n-bit MultModDiv instruction to compute a modular 2n-bit multiplication. Obviously, special variants of our algorithm, e.g., squaring, require fewer calls. Keywords: Arithmetical coprocessor, Hardware architecture, Modular multiplication, Hardware/Software codesign. © Springer-Verlag 2003.
CITATION STYLE
Fischer, W., & Seifert, J. P. (2003). Increasing the Bitlength of a Crypto-Coprocessor. Lecture Notes in Computer Science (Including Subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics), 2523, 71–81. https://doi.org/10.1007/3-540-36400-5_7
Mendeley helps you to discover research relevant for your work.