Documentation

Welcome to zkHole documentation. This guide will help you understand and integrate zkHole's privacy-preserving protocol suite for anonymous Solana transactions, private identity, encrypted messaging, and untraceable token swaps.

⚠️ Important Notice

zkHole is designed for legitimate privacy use cases. Please ensure you comply with all applicable laws and regulations in your jurisdiction.

Product Suite

zkHole offers a comprehensive suite of privacy-preserving tools for Solana:

🌀 BlackHole Mixer

Anonymous transaction proxy that breaks the link between sender and receiver through decentralized routing.

Try Demo →

🆔 HoleID

Unlinkable private identity system with verifiable credentials and zero-knowledge proofs.

Try Demo →

✉️ HoleMail

End-to-end encrypted messaging with anonymous routing and metadata hiding on Solana.

Try Demo →

🔄 HoleSwap

Private decentralized exchange with MEV protection and completely untraceable swap flows.

Try Demo →

Quick Start

Get started with zkHole in under 5 minutes.

Step 1: Connect Your Wallet

// Connect to Phantom or any Solana wallet
const wallet = await window.solana.connect();
console.log('Connected:', wallet.publicKey.toString());

Step 2: Initialize zkHole Client

import { ZkHoleClient } from '@zkhole/sdk';

const client = new ZkHoleClient({
  network: 'mainnet-beta',
  wallet: wallet
});

Step 3: Send Anonymous Transaction

const transaction = await client.sendAnonymous({
  recipient: 'RECIPIENT_WALLET_ADDRESS',
  amount: 1.5,
  memo: 'Optional memo'
});

console.log('Transaction completed:', transaction.signature);

Installation

NPM

npm install @zkhole/sdk @solana/web3.js

Yarn

yarn add @zkhole/sdk @solana/web3.js

How It Works

zkHole uses zero-knowledge proofs and decentralized routing to provide privacy-preserving interactions on Solana.

BlackHole Mixer

1. Transaction Splitting

Your transaction is split into multiple smaller transactions across different proxy nodes.

2. Proxy Routing

Each fragment is routed through multiple proxy nodes. No single node knows the complete transaction details.

3. Reassembly & Delivery

The fragments are reassembled at the destination with no traceable connection to the original sender.

HoleID Identity System

Zero-Knowledge Proofs

Generate verifiable credentials without revealing underlying identity data using ZK-SNARKs.

Unlinkable Identities

Each HoleID interaction uses unique cryptographic commitments, preventing cross-context tracking.

HoleMail Encrypted Messaging

End-to-End Encryption

Messages are encrypted on your device and can only be decrypted by the intended recipient.

Metadata Hiding

Anonymous routing conceals sender, recipient, timestamp, and message size information.

HoleSwap Private DEX

Private Swap Routing

Swaps are routed through private pools with no public order book exposure.

MEV Protection

Zero-knowledge proofs prevent front-running and sandwich attacks while ensuring swap execution.

API Reference

POST/api/v1/transaction

Create a new anonymous transaction

{
  "sender": "wallet_address",
  "recipient": "recipient_address",
  "amount": 1.5
}
GET/api/v1/transaction/:signature

Get transaction status and details

FAQ

What are the fees?

zkHole charges a flat fee of 0.001 SOL per transaction, plus standard Solana network fees.

How long do transactions take?

Most transactions complete in under 3 seconds. Complex multi-proxy routes may take up to 10 seconds.

Is zkHole truly anonymous?

zkHole provides strong privacy guarantees by breaking transaction links. However, no system is 100% anonymous. Follow best practices for maximum privacy.

Can transactions be reversed?

No. Like all blockchain transactions, zkHole transactions are irreversible once confirmed.

Best Practices

Privacy Guidelines

  • Use a fresh wallet address for receiving anonymous transactions
  • Don't immediately move funds from anonymous transactions to known addresses
  • Vary transaction amounts and timing to avoid pattern analysis
  • Always verify the recipient address before sending

Security Guidelines

  • Never share your private keys or seed phrase
  • Use a hardware wallet for large transactions
  • Always verify you're on the official zkHole website
  • Start with small test transactions first

Need More Help?

Join our community for support and updates: