You can use CypherCalc to compute the Montgomery Product of two numbers. The Montgomery Product of a' and b' is defined as:

MontPro(a', b'):  (for odd n)
  t = a' * b'
  m = t * n' mod r
  u = (t + m * n) / r
  if u >= n then
    c' = u - n,
  else
    c' = u
  endif
  return c',

where n is the modulus, r is the next power of 2 greater than na' and b' are the Montgomery Images of the numbers we wish to multiply, and c' is the result. You provide a', b', and n, and CypherCalc chooses r, computes n' and does the rest. The modulus n is assumed to be loaded into CypherCalc's "N" operand memory.

Here's the procedure:

  • Enter the numbers to be multiplied into the "Operand (a')" and "Operand (b')" boxes. You can either type these numbers, drag them from another CypherCalc window, (such as the "Montgomery Image (a')" box on the Montgomery Image Form, or paste them from another application.
  • Click the "Compute" button. CypherCalc will compute the Montgomery Product of a' and b' and display the result in the "Result (c')" box.

The result is left as a Montgomery Image, in anticipation of subsequent Montgomery operations. See Normal Images to convert the final result into Normal representation.



| Home | Features | Tools | Programming | System Requirements | Ordering Info |