mmaker / zkalc

A web tool that helps you compare and visualize the performance of cryptographic operations
https://zka.lc
BSD 3-Clause "New" or "Revised" License
76 stars 12 forks source link

Adding new operations to zkalc + a bug fix #49

Closed Skinbow closed 3 months ago

Skinbow commented 3 months ago

Hello.

As part of our student group project we were asked by a professor in cryptography to implement the functions HashToG1, HashToG2, IsInSubgroupG1 and IsInSubgroupG2 into zkalc, as he felt these functions were useful to him and could turn out useful to other professionsals in cryptography, and zkalc missed those benchmarks.

Therefore this is the implementation he asked for, which only includes gnark-crypto.

We were able to benchmark the implemented functions on an aws_m5.2xlarge machine for the curves BLS12-381 and BLS12-377 in gnark.

We also fixed a tiny bug where running make init in the backend would create one single folder with its name in curly braces, rather than expanding the braces and making separate folders for separate libraries. Stack overflow of the same issue

Sincerely, Our student team

vercel[bot] commented 3 months ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
zkalc ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jun 26, 2024 10:01am
mmaker commented 3 months ago

@Skinbow excellent work!

mmaker commented 3 months ago

Just a small disclaimer: we have a transparent pipeline for adding benchmarks results, where we first upload them to https://github.com/zkCollective/bench-data then we use our (deterministic) parser to add them to the actual json files here This way we can move around different software versions and also have some sort of accountability.

I am merging this one for now as we'll have to update the benchmarks anyways with the new arkworks release and some new runs that we did recently.