Skip to content

Frontier-Compute/zap1-js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@frontiercompute/zap1

ci npm downloads license

ZAP1 Merkle proof verification for JavaScript and TypeScript. WASM-powered BLAKE2b-256 with ZAP1 domain-separated personalizations.

Client-side verification of on-chain commitments. All cryptography runs in WebAssembly compiled from the zap1-verify Rust crate.

Install

npm install @frontiercompute/zap1

Usage

Verify a proof bundle

import { verifyProof, parseBundle } from "@frontiercompute/zap1";

const res = await fetch("https://pay.frontiercompute.io/verify/075b00df.../proof.json");
const raw = await res.json();
const bundle = parseBundle(raw);

const valid = await verifyProof(bundle);
console.log(valid ? "VERIFIED" : "FAILED");

Compute a leaf hash

import { computeLeafHash } from "@frontiercompute/zap1";

const hash = await computeLeafHash("PROGRAM_ENTRY", {
  walletHash: "e2e_wallet_20260327",
});
// "075b00df286038a7b3f6bb70054df61343e3481fba579591354a00214e9e019b"

Node hash (Merkle tree)

import { nodeHash } from "@frontiercompute/zap1";

const parent = await nodeHash(leftHex, rightHex);
// BLAKE2b-256 with "NordicShield_MRK" personalization

API

Function Description
init() Preload the WASM module (called automatically on first use)
computeLeafHash(type, payload) Compute leaf hash for PROGRAM_ENTRY or OWNERSHIP_ATTEST
verifyProof(bundle) Verify a Merkle inclusion proof
nodeHash(left, right) Compute a Merkle node hash
parseBundle(json) Parse and normalize an API proof bundle
EVENT_TYPES Array of all 18 ZAP1 event types

Personalizations (protocol constants)

Context Value (16 bytes)
Leaf hash NordicShield_\x00\x00\x00
Node hash NordicShield_MRK

Protocol

See ONCHAIN_PROTOCOL.md for the full ZAP1 specification.

Related Packages

Package What it does
@frontiercompute/zcash-ika Zcash + Bitcoin signing via Ika 2PC-MPC
@frontiercompute/zcash-mcp MCP server for Zcash (22 tools)
@frontiercompute/openclaw-zap1 OpenClaw skill for ZAP1 attestation
@frontiercompute/silo-zap1 Silo agent attestation via ZAP1

License

MIT

About

ZAP1 Merkle proof verification SDK for JavaScript - WASM backend

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors