Skip to main content

Overview

zkToolkit (@zkterm/zktoolkit) provides 10 cryptographic modules for building privacy-preserving applications. All primitives are optimized for ZK circuits.

Module Summary

Terminal Commands

All zkToolkit commands use the format:

Show Help

Shows all available categories and examples.

Category Help

Shows detailed help for a specific category.

Hash Functions

ZK-optimized hash functions with low circuit constraints.
Example:

Commitments

Hide values and reveal them later with proof.
Use Cases: Sealed-bid auctions, voting, commit-reveal randomness

Merkle Trees

Build trees and generate inclusion proofs.
Features:
  • Fixed depth 32
  • Poseidon-based hashing
  • Efficient proof generation

Range Proofs

Prove a value lies within a range without revealing it.
Use Cases: Age verification, credit score ranges, balance thresholds

Signatures

EdDSA signatures on the Baby JubJub curve.

Nullifiers

Prevent double-spending in privacy protocols.
Use Cases: Privacy coins, anonymous voting, one-time credentials

Field Arithmetic

Finite field operations modulo BN254 prime.
Prime:

Elliptic Curves

Baby JubJub twisted Edwards curve operations.
Curve Parameters:

Shamir Secret Sharing

Split secrets into threshold shares.
Example:
Use Cases: Multi-party key management, distributed custody, threshold signatures

Groth16 Proofs

Generate zkSNARK proofs.

API Reference

All zkToolkit endpoints are under /api/zk-toolkit/.

Hash Functions

Response:

Commitments

Response:

Field Arithmetic

Response:

Elliptic Curves

Response:

NPM Package

Install for use in your own applications:

Usage

Why ZK-Friendly Primitives?

Traditional cryptographic functions are inefficient in ZK circuits: zkToolkit uses primitives designed for algebraic operations native to ZK circuits, making proofs 10-100x more efficient.