Description

There are a some enhancements related to finite field arithmetic that are needed for both the ECDH/ECDSA implementation and EdDSA. In order to decompose these problems, and to allow multiple ECC efforts to run in parallel, these enhancements will be developed under a separate ticket.

1) Develop a code generator for finite fields that can produce efficient implementations in Java for all the required fields. This includes the underlying field for ECC operations as well as the field of integers modulo the order of the group, which is used in signature operations.
2) Generalize the finite field implementation to allow an arbitrary number of additions before each multiplication/reduction.
3) Add some new useful operations to the field arithmetic API, including conditional assignment and reduction.

In addition, the new 6 new fields for ECDH/ECDSA will be generated and tested under this ticket.