Why prime fields? Why binary fields?

From this document, now I can answer one of the questions from the previous posting:

Why prime fields?

  1. Commonly used for software implementations because
    the integer arithmetic is more optimized in today’s
    microprocessors
  2. Desktops: favour fast multipliers
  3. Embedded: varies based on processor architecture‏
  4. Hardware implementations benefit from the full size
    operands but the area impact may be significant
  5. Hardware implementations carry chain timing challenges

Why binary fields?

  1. Not as efficient in SW implementations compared to
    prime fields where large multipliers are available

    • Integer multipliers can deal with word size data
    • Not true for smaller processors with inefficient integer

    multipliers

  2. Even more challenging for custom SW implementations if
    m is a large value

    • Challenging for SW implementations with reduced register

    space

  3. Usually use a sliding window dbl/add to speed up
    multiplication
Advertisements