zks_wasm 0.1.0

WebAssembly bindings for ZKS Protocol SDK
Documentation

zks_wasm

WebAssembly bindings for the ZKS Protocol.

Overview

This crate provides JavaScript/TypeScript bindings for browser usage:

  • ML-DSA Signatures - Post-quantum digital signatures
  • ML-KEM Key Exchange - Post-quantum key encapsulation
  • Utility Functions - Encoding, hashing, random generation

Installation

npm install zks-wasm

Usage

import init, { ZksWasmUtils } from 'zks-wasm';

await init();

// Generate post-quantum keypair
const keypair = ZksWasmUtils.generate_ml_dsa_keypair();

// Sign a message
const message = new TextEncoder().encode("Hello ZKS!");
const signature = ZksWasmUtils.ml_dsa_sign(message, keypair.signing_key);

// Verify signature
const isValid = ZksWasmUtils.ml_dsa_verify(message, signature, keypair.verifying_key);
console.log("Valid:", isValid);

Building

wasm-pack build --target web

License

AGPL-3.0-only