Protocol · Whitepaper · V0.1

How ZKSol Works

ZKSol is a zero-knowledge credit scoring protocol on Solana that lets users prove their creditworthiness without exposing their underlying financial data. By combining zero-knowledge proofs of off-chain assets (exchange and bank balances) with direct on-chain analysis of Solana wallet activity, ZKSol produces a self-sovereign credit score that the user owns, controls, and can present without surrendering privacy. This document describes the problem ZKSol addresses, its privacy model, verification flow, scoring methodology, and technical architecture.

Version 0.1 · 2026 · Built on Solana

01

The Problem


Prove facts, not identities.

Traditional credit scoring is broken in four ways:

  1. It is centralized and opaque. A handful of credit bureaus hold scoring power over billions of people, using proprietary models that consumers cannot inspect, audit, or contest.
  2. It is privacy-invasive. Building a credit profile requires surrendering sensitive financial data — balances, income, identity — to intermediaries who store, share, and monetize it.
  3. It excludes the crypto-native and the global. Hundreds of millions of people are “credit invisible,” and on-chain wealth is invisible to traditional bureaus. A user with substantial digital assets may have no credit score at all.
  4. It is not self-sovereign. Consumers do not own their credit data. They cannot port it, control who sees it, or prove a fact about it selectively.

ZKSol addresses all four: it is decentralized (on Solana), privacy-preserving (zero-knowledge), inclusive of on-chain and off-chain wealth, and self-sovereign (the user holds and controls their score).

02

The ZKSol Approach


ZKSol builds a credit score from two independent signals:

  • Asset Score — a measure of verified off-chain liquid assets (exchange and bank balances), proven with zero-knowledge proofs.
  • On-Chain Score — a measure of Solana wallet activity and holdings, read directly from the blockchain.

These combine into a credit score that is recorded on-chain, owned by the user’s wallet, and verifiable by anyone — without revealing the raw data behind it. The core principle: prove facts, not identities. ZKSol verifies that a statement is true (“this user holds ≥ $5,000 in assets”) without exposing the underlying account, balance, or identity.

03

Privacy Model


Privacy is not a single switch; it is a spectrum. ZKSol applies different privacy guarantees to different data, aligned with Solana’s privacy framework.

DataPrivacy levelMechanism
Exchange & bank balancesConfidential / selective disclosureZero-knowledge proofs via Reclaim Protocol — the raw account data is never revealed; only the attested fact is proven.
Solana wallet activityPseudonymous (public)On-chain data is public by design; ZKSol reads it directly. The wallet is pseudonymous — not linked to identity unless the user chooses to link it.
The credit score recordPublic (on-chain)The score is recorded on Solana, tied to the user's wallet, and verifiable by anyone.

The privacy guarantee that matters most is on the off-chain asset data: your Binance balance or bank account is private, behind a login, and ZKSol never sees or stores the raw values. The zero-knowledge proof attests to a derived fact (a balance tier) without disclosing the account, the exact balance, or the credentials. This is selective disclosure — the foundation of privacy-preserving credit.

04

How Verification Works


A full verification proceeds as follows:

1.

Connect

The user connects a Solana wallet (Phantom). The wallet address becomes the identity to which the score is bound.

2.

Verify off-chain assets (Asset Score)

The user selects a provider (Binance, OKX, Bank of America, or JP Morgan Chase). Reclaim Protocol opens an authenticated session with the provider and generates a zero-knowledge proof of the account balance. The proof is delivered to the ZKSol backend, which extracts the attested balance and computes the Asset Score. The raw account data is never exposed.

3.

Verify on-chain activity (On-Chain Score)

The backend reads the connected wallet's Solana data directly via RPC — SOL balance, token accounts, transaction count, and account age — and computes the On-Chain Score.

4.

Score & record

The backend builds a Solana transaction recording the score against the user's wallet. The user signs it with Phantom, and the score is written on-chain.

5.

Present

The user views their scores on the dashboard and can present their on-chain credit record to any counterparty.

05

Data Sources


ZKSol draws from three categories of data:

CategorySourceData
Crypto exchanges (ZK proofs)BinanceSpot and futures balances
Crypto exchanges (ZK proofs)OKXAccount balance
Traditional finance (ZK proofs)Bank of AmericaAccount balance
Traditional finance (ZK proofs)JP Morgan ChaseAvailable balance, current balance, account metadata
On-chain (direct RPC)SolanaSOL balance, SPL token accounts, transaction count, account age

The exchange and bank sources are private and require zero-knowledge verification. The on-chain source is public and requires only a direct read. Together they produce a holistic picture spanning TradFi, crypto, and on-chain behavior.

06

Scoring Methodology


06.1

Asset Score


The Asset Score maps verified off-chain liquid assets to a score using tiered thresholds:

Verified assets (USD)Asset Score
≥ $20,000850
≥ $5,000700
≥ $1,000550
≥ $100420
< $100300

A verified dollar is a verified dollar: whether assets sit in an exchange or a bank, they represent liquid wealth backing creditworthiness, so both feed the same Asset Score. For bank accounts, the most conservative liquid measure (available balance) is preferred. Card type is captured to distinguish assets (debit/checking) from liabilities (credit) in future refinements.

06.2

On-Chain Score


The On-Chain Score is computed from four factors of Solana wallet behavior, each contributing to a score capped at 850:

  • SOL balance — holdings of Solana’s native asset
  • Token accounts — breadth of SPL token holdings
  • Transaction count — volume of on-chain activity
  • Account age — length of on-chain history

These factors reward established, active, and well-capitalized wallets — the on-chain analog of traditional credit history and capacity.

06.3

Combined View


The Asset Score and On-Chain Score are presented as two complementary dimensions of creditworthiness: off-chain verified wealth and on-chain reputation. Together they form a holistic, self-sovereign credit profile.

07

Zero-Knowledge Proofs (Reclaim Protocol)


ZKSol uses Reclaim Protocol to convert private web2 data into verifiable zero-knowledge proofs. Reclaim uses TLSNotary-style proofs (zkTLS): it cryptographically attests to the contents of an authenticated HTTPS session — such as a user’s exchange balance page — without exposing the full session, the credentials, or the raw data.

The result is a proof that a specific fact is true (e.g., “the authenticated user’s available balance is ≥ $X”) that anyone can verify, while the underlying account remains private. Reclaim is YC-backed and live on Solana, making it a production-grade foundation for selective-disclosure verification.

08

The Smart Contract


ZKSol’s on-chain program is an Anchor (Rust) program deployed on Solana (currently devnet; program ID 32bR3NQzJ7Gxnw1DCJqAHVfBPRyUck6BUGy12CKv8RP4). The program:

  • Records a user’s credit score against their wallet address.
  • Stores the score as a permanent, verifiable on-chain record.
  • Enables any counterparty to read and verify a user’s on-chain credit.

The program is the trust anchor: once a score is recorded on-chain, it is immutable and censorship-resistant. The backend builds the score-recording transaction; the user signs it with their wallet, so the user always authorizes what is written.

09

System Architecture


ZKSol is a full-stack protocol:

FrontendNext.js (Vercel)
Wallet connection, verification UI, score dashboard
BackendExpress (Render)
Proof processing, score computation, transaction building, on-chain listener
DatabaseNeon Postgres
Report and score history storage
BlockchainSolana (devnet → mainnet)
On-chain score records, wallet data
VerificationReclaim Protocol
Zero-knowledge proofs of off-chain assets

The backend runs a continuous on-chain listener that watches the ZKSol program for new score records, keeping the system’s view of on-chain state current.

10

Security & Trust Model


What is verified: Off-chain asset claims are verified by zero-knowledge proofs (cryptographically sound). On-chain data is verified by direct reads from Solana (trustless).

Trust assumptions: The user trusts Reclaim Protocol’s proof infrastructure for off-chain verification, and the Solana network for on-chain state. The backend computes scores and builds transactions, but the user signs every transaction, retaining final authorization.

Current limitations (devnet MVP): Scores are recorded on devnet (no economic value; state may be reset). The smart contract has not been audited. The scoring model is a calibrated heuristic, not a financially validated credit model. Bank card-type handling (credit vs. debit) is logged but not yet scored. Mainnet deployment and a security audit are prerequisites for production use.

11

Roadmap


ZKSol’s long-term vision is to become the leading zero-knowledge verification and on-chain reputation layer on Solana.

Near-term:

  • Mainnet deployment of the smart contract.
  • Security audit of the program.
  • Refine bank scoring (card-type awareness: assets vs. liabilities).
  • Score dashboard and verification history UX.

Mid-term:

  • Adopt ZK Compression (Light Protocol / Helius) to reduce on-chain storage costs by up to 99% as score records scale.
  • Integrate Confidential Token Extensions for privacy-preserving on-chain reputation — proving on-chain facts without exposing the wallet.
  • Expand data providers (additional exchanges, banks, and TradFi sources).

Long-term:

  • Evaluate MPC / FHE computation (Arcium, Inco) for fully private score computation on encrypted inputs.
  • Build ZKSol into a general selective-disclosure verification layer: prove any financial fact, reveal nothing.
12

Glossary


Zero-knowledge proof (ZKP)
A cryptographic proof that a statement is true without revealing any information beyond the statement itself.
Selective disclosure
Proving specific facts about data without revealing the underlying data.
Reclaim Protocol
A YC-backed protocol that turns private web2 data into verifiable ZK proofs on Solana.
TLSNotary / zkTLS
A technique for cryptographically attesting to the contents of an authenticated HTTPS session.
Anchor
A framework for writing Solana smart contracts in Rust.
ZK Compression
A Solana technique (Light Protocol / Helius) that compresses on-chain state with ZK proofs, drastically reducing storage costs.
Confidential Token Extensions
Solana Token-2022 extensions that hide token balances and transfer amounts on-chain.
Self-sovereign
Owned and controlled by the user, not by a central authority.