-
Couldn't load subscription status.
- Fork 245
Move function requiring AffinePoint from EdwardsPoint to AffinePoint
#1333
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
deecb76 to
6b929cf
Compare
c452dc0 to
ab14e29
Compare
|
This is definitely pushing my knowledge of both Edwards curves and Ed448-Goldilocks, and sent me on a rabbit hole reading the paper. I think both versions of
Edit: opened an issue about this #1349, and it seems to be the reason you weren't seeing speedups using twisted scalar multiplication in #1337 |
|
To expound on that:
Conversions look like: ...but I think it's fine to preserve methods like Likewise, scalar multiplication would ideally do a more direct conversion from |
|
I hope I'm on the right track here? I'm kinda trying to align things with the other RustCrypto crates, where most types have very few methods and its all mostly implemented through traits. It also makes sense to me, because otherwise we have all those duplicate methods. |
|
Putting on draft until I rebase. Still working on those optimized implementations from #1316. |
d3c7806 to
e3f2bb4
Compare
A bunch of functionality implemented on
EdwardsPointinternally just converts toAffinePoint. This functionality should rather live inAffinePoint.This PR also implement
BatchNormalizeforEdwardsPoint, which wouldn't have much of a point without these changes to begin with.