RustCrypto / RustCrypto/elliptic-curves
Optimize point multiplication using larger window size
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 874
- Forks
- 299
- Avg merge
- 1d 4h
- Merged PRs (30d)
- 12
Description
Hey there!
I noticed we could improve the performance of point multiplication in the primeorder crate by using a larger window size in the sliding window algorithm.
Currently we're using a 4-bit window which requires more point additions than necessary.
By increasing the window size to 5 or 6 bits, we can reduce the number of point additions while keeping the precomputation table size reasonable.
This should give us a nice performance boost for scalar multiplication operations.
I'd be happy to implement this change if you think it's a good idea!
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the primeorder crate's sliding-window point multiplication implementation and its current 4-bit window configuration. Compare 5- and 6-bit options, then verify that scalar multiplication performance improves while precomputation remains reasonable; the issue does not name a specific file or benchmark.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cryptography, performance
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100