Zkalc
A web tool that helps you compare and visualize the performance of cryptographic operations
Install / Use
/learn @mmaker/ZkalcREADME
zkalc is a cryptographic calculator!
zkalc helps you calculate how much time cryptographic operations take on a real computer. If you use our software, consider citing us!
Why?
Cryptographers tend to be good at cryptography but they can be quite bad at estimating the time it takes a computer to run their schemes.
We hope that zkalc can help shorten the gap between cryptography and practice:
- Cryptographers can use the simple zkalc UX to learn how fast their paper will run on various machines
- Protocol designers can more easily tune the parameters of their protocol depending on their requirements
Please see the various pages of the website for more information on how zkalc works.
Prerequisites
To run benchmarks, we assume that make, git, rust (nightly!) and go (> 1.17) are installed in the system.
Installing Go. To install go, you can download the binaries at go.dev/dl and add go/bin to your PATH environment variable.
Installing Rust. To install rust, you can follow rustup.rs and then type rustup default nightly.
Benchmarks
All benchmarks are listed and run inside the benchmarks/ folder. To run them, type:
$ cd backend
$ make
The files generated will end up stored in perf/data/new/
Processing Benchmarks
For this step, we require python3. Benchmarks are assumed to be in a parent folder called bench-data resembling our raw data repository.
$ cd perf
$ make
Fronted development
To develop the frontend, npm is required.
Run:
$ cd frontend
$ npm i
$ npm run dev
To start a local development server
Acknowledgements
We thank NLnet, who supported part of this work via the NGI0 Entrust fund.
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
