[curves] General Curve25519 and Ed25519 Libraries

Mike Hamburg mike at shiftleft.org
Thu Jun 18 10:39:10 PDT 2015


Basically there are three reasons:

For portability, the code is usually written in C, which is not the best 
language for templating.

Usually the field arithmetic is specialized to the field for performance 
reasons, so you'd have to rewrite it.

Each curve has its own special quirks: extension fields, endomorphisms, 
different cofactors, Edwards vs Weierstrass form, etc.

The upshot is that most libraries support either one curve, or a few 
curves that are basically the same shape.

-- Mike

On 06/18/2015 10:05 AM, Ray Dillinger wrote:
> I may be ignorant here but I'm wondering why adding support for
> a different curve is such a big deal for all these libraries and
> programs.
>
> Isn't a curve just a block of static parameters which some
> generic ECC code can work on?  Why isn't adding a curve just a
> matter of defining a data block?
>
> 				Bear
>
>
>
> _______________________________________________
> Curves mailing list
> Curves at moderncrypto.org
> https://moderncrypto.org/mailman/listinfo/curves

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://moderncrypto.org/mail-archive/curves/attachments/20150618/71e6cc4b/attachment.html>


More information about the Curves mailing list