RustCrypto / traits

Collection of cryptography-related traits
580 stars 189 forks source link

Affine y-coordinate access #1019

Open nickray opened 2 years ago

nickray commented 2 years ago

Understanding the arguments pro/con coordinates from https://github.com/RustCrypto/traits/pull/817...

For a generic-ish Frost implementation, I have need to determine if the output of distributed keygen has even y-coordinate, to perform the Taproot adjustment. I can get away with a local AffineYCoordinateParity trait (fn has_even_y(&self) -> bool) that I implement on k256 and bound on, but maybe "for symmetry" it wouldn't be that horrible to add either AffineYCoordinate or at least AffineYCoordinateParity to the AffineArithmetic::AffinePoint bounds?

tarcieri commented 2 years ago

See this PR for some additional context: https://github.com/RustCrypto/elliptic-curves/pull/50

tarcieri commented 2 years ago

Some discussion of solving this in the group crate: https://github.com/zkcrypto/group/issues/30

tarcieri commented 1 year ago

1237 has the best description of the current state of affairs and the evolution of these traits