FiloSottile / edwards25519

filippo.io/edwards25519 — A safer, faster, and more powerful low-level edwards25519 Go implementation.
https://filippo.io/edwards25519
BSD 3-Clause "New" or "Revised" License
131 stars 30 forks source link

edwards25519: add (*Scalar).MultiplyAdd #7

Closed lukechampine closed 3 years ago

lukechampine commented 3 years ago

This saves a scMulAdd in some places, namely ed25519.Sign.

btw, do you think there's significant value in an asm implementation of scMulAdd? It stuck out to me as a particularly long and math-heavy function, so I wondered how much faster an asm version might be.

FiloSottile commented 3 years ago

btw, do you think there's significant value in an asm implementation of scMulAdd? It stuck out to me as a particularly long and math-heavy function, so I wondered how much faster an asm version might be.

I've been planning to replace the Scalar implementation with fiat-crypto, and see how fast we can get that to go.

FiloSottile commented 3 years ago

I might end up using this code in the Go tree, so would you mind signing the Google CLA and confirming you are ok with submitting all code you contribute to this repository now and in the future under that CLA? This is the same process as contributing to Go.

lukechampine commented 3 years ago

I've signed it previously when contributing to Go, but sure, I'll reaffirm that now.

FiloSottile commented 3 years ago

Ah, I didn't find it bound to your GitHub account, I will look under your email address. Thank you!