Skip to content

iam-protocol/executor-node

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

executor-node

IAM Protocol executor node. HTTP relayer service that accepts ZK proofs from the Pulse SDK and submits on-chain verification transactions to Solana. Enables walletless verification — users prove their humanity without a wallet, SOL, or crypto knowledge.

API

POST /verify

Accepts a Groth16 proof, submits create_challenge + verify_proof on-chain, returns the result.

Request:
{
  "proof_bytes": [0, 1, 2, ...],        // 256 bytes
  "public_inputs": [[0, 1, ...], ...],  // 3 × 32 bytes
  "commitment": [0, 1, ...],            // 32 bytes
  "is_first_verification": true
}

Response:
{
  "success": true,
  "tx_signature": "5abc...",
  "verified": true
}

Requires X-API-Key header.

GET /health

Returns service status (no auth required).

Setup

# Prerequisites: Rust, Solana CLI

# Configure environment
cp .env.example .env
# Edit .env: set RPC_URL, RELAYER_KEYPAIR_PATH, API_KEYS

# Build
cargo build --release

# Run
cargo run

# Test
cargo test

License

Proprietary. Not open source.

About

Validation service that manages challenge issuance, ring formation, and on-chain attestation relay

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages