ZKredit
A private credit marketplace on Solana, anchored to ENS. Borrowers prove a lender's underwriting policy over their real portfolio with a Groth16 (Zero Knowledge Proof) proof generated in the browser, and lenders compete on rate without ever seeing a balance.
The Solana program re-verifies the proof on chain and pays out to a one-time address derived from the borrower's ENS payout key, so no two loans to the same person are linkable.
Discord: mauries
Telegram: @MauriceBoendermaker
https://github.com/MauriceBoendermaker/common_s3nse_hackathon_2026
Video demo (90 seconds max): https://youtu.be/F1YF5CP8OA8
or
Presentation (5 slides max): https://docs.google.com/presentation/d/1FwrCztcSRYNUHZTslz7Oo50usE6CQjvv/edit?usp=sharing&ouid=114008170578415192159&rtpof=true&sd=true
Application:
Not publicly hosted. Runs locally (npm install && npm run zk:build && npm run dev). Portfolio reads hit Solana mainnet, ENS is read and written on Ethereum Sepolia from the user's own wallet, and settlement goes to the devnet program below.
Network:
Solana devnet (settlement program) and Ethereum Sepolia (ENSv2 beta, identity and payout-key record)
Contract address(es):
- private_credit program (Solana devnet): 69qmzHFdDMP8hGFNcJcKpduGbdjEnAhdrvLrLaydvvRc
https://explorer.solana.com/address/69qmzHFdDMP8hGFNcJcKpduGbdjEnAhdrvLrLaydvvRc?cluster=devnet
- Program config, holds the verifying key hash (Solana devnet): 96eG9se9E1c4GD1f8GwupfchnsTETPAkrioVxT3fPeh5
initialize tx: https://explorer.solana.com/tx/4Qskn8SaE1vZDdaTDCAqCgbgFJnEPxjN5rHaBJf9UVrPRHks5sFBN3RajtFXYWBw7iENWNF2FKAVihRFNhGgBvHP?cluster=devnet
- Settlement mint PCUSD, 6 decimals, a test token this project minted (Solana devnet): 55rT4eYNd7V98vti9L76MhKfygRT3EYXuZ2xNotgGRz
https://explorer.solana.com/address/55rT4eYNd7V98vti9L76MhKfygRT3EYXuZ2xNotgGRz?cluster=devnet
- Verifying-key hash baked into the program: 0x251cf26a7971932a09d69657cab4013b57a92e978d61d5e73727c20049c6a1c5
- Borrower identity: maurice.eth on ENSv2 Sepolia (owner 0x266C002fd57F76138dAAf2c107202377e4C3B5A7, Permissioned Resolver 0x29Ae3fB26FC459dC4B99d7c9d0Fd361C08CF68b8), payout key published under text record privatecredit.payout-key[501]
- ENS contracts used, none deployed by us: UniversalResolverV2 0x4a1817d13e9cf196f471725176355c1234b63c70, ETHRegistry 0xbdc85dd5b15d7ecb354cd7cb6f2c50b4f2c4f0e2 (Sepolia)