On the Performance of Pippenger's algorithm for Multi-Scalar Multiplication

dc.contributor.authorOleksandr, Hrabar
dc.date.accessioned2026-02-25T18:20:57Z
dc.date.available2026-02-25T18:20:57Z
dc.date.issued2026-02-25
dc.date.submitted2026-02-25
dc.description.abstractMulti-scalar multiplication (MSM) is core to many zero-knowledge succinct non-interactive argument of knowledge (zk-SNARK) systems and remains a primary performance bottleneck in proof generation and verification. In practice, zk-SNARK implementations typically rely on Pippenger’s bucket method as the standard algorithm for MSM. This thesis targets high-throughput MSM, computing many scalar–point multiplications and summing them for a large number of scalars, up to $2^{21}$ on a specific curve, with the primary goal of reducing the number of group operations. Our work consists of three main parts. First, we review background and classical MSM algorithms, with more focus on standard Pippenger's method, Pippenger's with Booth encoded digits and the Bos–Coster approach. Second, we apply a family of small-factor scalar recoding techniques that extract small factors to shorten the effective scalar bitlength, and we compare the number of point operations for the afore-mentioned methods. Third, we introduce a strategy to reduce the number of point operations in Pippenger's algorithm. It is based on clustering of scalar window digits across multiple rows. Firstly, we describe the simplest case of window digit clustering in individual columns and then its generalization to window digit clustering in multiple columns. We implement these ideas in Rust, study sensitivity to window size, and evaluate combinations of recoding and reuse. Across our benchmarks, multiple columns window digit clustering reduces total point operations by \(2.59\%\)–\(18.09\%\) relative to Booth encoded Pippenger's method, while individual column clustering yields improvements up to $8 \%$ for small number of scalars. Overall, structured reuse together with modest window tuning provides consistent operation savings, indicating a practical path to faster MSMs at scale.
dc.identifier.urihttps://hdl.handle.net/10012/22953
dc.language.isoen
dc.pendingfalse
dc.publisherUniversity of Waterlooen
dc.titleOn the Performance of Pippenger's algorithm for Multi-Scalar Multiplication
dc.typeMaster Thesis
uws-etd.degreeMaster of Applied Science
uws-etd.degree.departmentElectrical and Computer Engineering
uws-etd.degree.disciplineElectrical and Computer Engineering
uws-etd.degree.grantorUniversity of Waterlooen
uws-etd.embargo.terms0
uws.contributor.advisorHasan, Anwar
uws.contributor.affiliation1Faculty of Engineering
uws.peerReviewStatusUnrevieweden
uws.published.cityWaterlooen
uws.published.countryCanadaen
uws.published.provinceOntarioen
uws.scholarLevelGraduateen
uws.typeOfResourceTexten

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Hrabar_Oleksandr.pdf
Size:
837.86 KB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
6.4 KB
Format:
Item-specific license agreed upon to submission
Description: