Public blockchains expose who you paid, when, and how much.
Share selective proofs (view keys / clean-set attestations) instead of your identity.
Solana's high throughput + tiny fees = private payments that feel instant.
Notes & commitments
Hide transaction amounts and links with cryptographic commitments.
Nullifiers
Prevent double-spending without revealing your identity or balance.
Zero-knowledge proofs
Prove validity without disclosing transaction details.
# Example — local proof then submit murena prove --amount 10 --to stealth:3Lh... murena submit proof.json
Real code from the Murena protocol
use anchor_lang::prelude::*;
// Zero-knowledge proof verification
pub fn submit_receipt(
ctx: Context<SubmitReceipt>,
receipt_hash: [u8; 32],
memo_hash: [u8; 32]
) -> Result<()> {
emit!(PaymentReceipt {
payer: ctx.accounts.payer.key(),
merchant: ctx.accounts.merchant.key(),
receipt_hash,
memo_hash,
});
Ok(())
}Deploy the first zero-knowledge verifier contract on Solana.
Launch interactive demo and proof-of-concept relayer infrastructure.
Release SDK for merchants and enable flexible proof sharing.