While coding for Edwards curve, I noticed that, the addition formula and the doubling formula return what seems to be different result.

I took the adding and doubling formula from both RFC-8032 and https://eprint.iacr.org/2008/522 and confirmed this difference.

Why is that? How does it, if it does effect computations within EdDSA?

  • $\begingroup$ If you wanted to set P to the Ed25519 base point, what 4 component values would you use for P? I'm guessing the problem is related to confusion between coordinate systems. When you add, normally the Augend is in P3 coordinate space, and the Addend is converted to "cached" coordinate space first, where the conversion is (X,Y,Z,T)->(Y + X, Y - X, Z, 2*d*T). $\endgroup$
    – knaccc
    May 3, 2022 at 6:23
  • 1
    $\begingroup$ Sorry, my fault. It's neither the addition nor the doubling that's incorrect. It's that I'm generating points with random coordinates which are not valid curve points $\endgroup$
    – DannyNiu
    May 3, 2022 at 9:53


Browse other questions tagged or ask your own question.