SDK v0.6.26Production Ready

Privacy SDK for Web3

Add privacy to any dApp with one toggle. Stealth addresses, Pedersen commitments, and viewing keys for compliance.

Quick Start
import { SIP, PrivacyLevel } from '@sip-protocol/sdk'

const sip = new SIP({ network: 'mainnet' })

// Create a shielded intent
const intent = await sip.createIntent({
  fromChain: 'solana',
  toChain: 'ethereum',
  amount: 100,
  privacyLevel: PrivacyLevel.SHIELDED,
})

Cryptographic Primitives

Battle-tested cryptography based on proven standards

Stealth Addresses

EIP-5564

Generate one-time addresses that are unlinkable to your public wallet. Supports both secp256k1 (Ethereum) and ed25519 (Solana/NEAR) curves.

const stealth = generateStealthAddress({
  recipientMeta: 'sip:solana:0x02abc...123:0x03def...456',
  curve: 'ed25519',
})

Pedersen Commitments

Homomorphic

Hide transaction amounts while keeping them verifiable. Supports homomorphic addition for range proofs.

Pedersen CommitmentAmount Hidden

Enter any amount to see how it gets hidden in a cryptographic commitment.

SDK Usage:
import { commit, verifyOpening } from '@sip-protocol/sdk'

// Create commitment
const { commitment, blinding } = commit(100n)

// Verify opening
const valid = verifyOpening(commitment, 100n, blinding)

Viewing Keys

Selective Disclosure

Enable compliance without sacrificing privacy. Share viewing keys with auditors to prove transaction details while keeping spending authority private.

// Generate viewing key for compliance
const { viewingKey, keyHash } = generateViewingKey({
  intentId: intent.id,
  purpose: 'audit',
})

// Share with auditor - they can view but not spend
await shareWithAuditor(viewingKey, auditorPublicKey)

Network Integration

Production-ready adapters for major protocols

NEAR Intents

Mainnet
Live

1Click API integration for cross-chain settlement

Zcash

Mainnet/Testnet
Live

Shielded transactions via zcashd RPC

Solana

All networks
Live

Phantom, Solflare wallet adapters

Ethereum

Mainnet/L2s
Live

MetaMask, WalletConnect support

Hardware Wallets

All chains
Coming

Ledger, Trezor integration

Noir Circuits

M8
Coming

ZK proofs for validity and funding

Zcash SDK Integration

@sip-protocol/sdk Zcash capabilities

Connecting...
import { ZcashShieldedService, createZcashClient } from '@sip-protocol/sdk'

Unified Address Generation

Demo

Generate sample unified addresses (Sapling + Orchard format demo).

Transparent

t1/t3 prefix - Public on chain

Sapling

zs prefix - Shielded (legacy)

Orchard

u prefix - Unified (latest)

Powered by @sip-protocol/sdk v0.6.26View Docs →

Use Cases

Privacy solutions for every Web3 scenario

Private Payments

Send funds without revealing sender, amount, or recipient to chain observers.

  • Stealth addresses
  • Hidden amounts
  • No transaction linking

DAO Treasury

Manage treasury operations privately while maintaining auditability for governance.

  • Compliant mode
  • Viewing key sharing
  • Multi-sig support

Enterprise Compliance

Meet regulatory requirements with selective disclosure and audit trails.

  • Viewing key export
  • Transaction proofs
  • Auditor access
1,208+
Test Cases
6
Chains Supported
3
Privacy Levels
<50ms
Intent Creation

Integration Examples

Copy-paste code to add privacy to your dApp

Create Shielded Swap
import { SIP, PrivacyLevel } from '@sip-protocol/sdk'
import { PhantomWalletAdapter } from '@sip-protocol/sdk/adapters'

const sip = new SIP({
  network: 'mainnet',
  walletAdapter: new PhantomWalletAdapter(),
})

const intent = await sip.createIntent({
  fromChain: 'solana',
  toChain: 'ethereum',
  fromToken: 'SOL',
  toToken: 'ETH',
  amount: 100,
  privacyLevel: PrivacyLevel.SHIELDED,
})

// Execute through NEAR Intents
const result = await sip.executeIntent(intent)
Compliant Mode with Viewing Key
import { SIP, PrivacyLevel } from '@sip-protocol/sdk'

const intent = await sip.createIntent({
  fromChain: 'ethereum',
  toChain: 'solana',
  amount: 1000,
  privacyLevel: PrivacyLevel.COMPLIANT,
})

// Get viewing key for auditors
const viewingKey = intent.getViewingKey()

// Share with compliance team
await shareWithAuditor({
  key: viewingKey,
  purpose: 'quarterly-audit',
  expiry: Date.now() + 30 * 24 * 60 * 60 * 1000,
})

Ready to Add Privacy?

Start building with the SIP Protocol SDK today. One toggle, full privacy.