PanAI

Free, privacy-first notarization for any message — AI or even human. Craft it. Sign it. Prove it on-chain. Your words, forever verifiable! A verifiable AI provenance layer (FHE-ready).

  • 0 Raised
  • 238 Views
  • 0 Judges

Categories

  • 1inch
  • Base
  • ENS
  • Chainbound
  • 🔒 Privacy [MAIN TRACK]
  • 💸 Finance [MAIN TRACK]

Description

PROJECT NAME 

PanAI — Protocol for AI Notarization

DESCRIPTION OF THE PROJECT 

PanAI is an open standard for AI provenance with public verification: each message is normalized, hashed, placed in a per-session Merkle tree, and the root is anchored on Base (Sepolia) via events only. With Zama FHE, messages are also vectorized and encrypted; an off-chain FHE worker compares encrypted summaries and returns a confidence score—everything stays encrypted; decryption happens client-side.

TELEGRAM USER NAME 

tg: cripsbo

REPOSITORY WITH THE PROJECT'S CODE : 

https://github.com/fcarlucc/PanAI

VIDEO DEMO (3 min max) : https://www.loom.com/share/e03d1a6d5f664154b38151178a525de2?sid=f601652f-189b-4d60-b5e5-b3a45dec0fba

Website URLs of your deployed application Web App (Vercel): Base Miniapp (Bounty): Sample Tx (Explorer): Evidence (IPFS/Arweave):

https://pan-ai-p8p9.vercel.app/chat

The contract address(es) you deployed and the chain(s) where you deployed it. 

Chain: Base Mainnet
PANAI (ERC-20, cap 1B):0x6b3F666806Fb0F79D23E6668e90D5DE2675E9cCc
PanSoul SBT (ERC-721, soulbound): 0xe3aCCDA4B18D797feDD687b884B3d2b95580FFF2 
Rewards Distributor: 0x879E7BB5a35d9C702F11B81443FD13233bE89809

Chain: Base Sepolia 
Bring data on chain, and does hash verification: 0x3A59756F5272124f46d01779Afa21F0851fec408

Bounties (how we integrated sponsors’ tech)

AI <> Web3 Track

Integration: Multi-model chat (OpenRouter + backup provider), deterministic normalization/hashing, per-session Merkle, event-only anchoring on Base, public verification (UI + Verify CLI), plus confidential similarity via FHE for “is this what I said?” checks that survive screenshots. Demo path: chat → finalize → on-chain event → verify (CLI/UI) → FHE compare → score → optional verdict publish.

Privacy Track — Zama FHE (Fully Homomorphic Encryption)

Integration: Client computes embeddings/summaries → FHE encrypt (project public key). We store only commitments/IDs and manifests; no plaintext server-side. A Zama FHE worker watches on-chain events, fetches ciphertexts (via CIDs/IPFS or S3), and computes similarity under encryption; returns an encrypted score. User decrypts locally and can optionally publish a threshold verdict (“match ≥ τ”) as signed metadata. What judges see: trigger FHE compare → “encrypted compute” log → receive score_enc → decrypt in browser → optionally publish signed verdict → miniapp displays the verdict on the session. Why it’s strong: privacy-by-design without TEE; practical anti-spoof/duplicate comparison powered by Zama.

1inch — Utilize 1inch APIs (beyond Extension login)

Integration:

  • Login via 1inch Extension + SIWE (contract for swap implemented)
  • Contract for rewards implemented (links to web 3 track)
  • Profile uses 1inch Token/Web3 APIs: PANAI metadata/price/balance and optional swap-to-gas quotes on Base.
     Proof in demo: profile screen shows PANAI balance and price from 1inch API; API snippets in README and screenshots in the Evidence Pack.

ENS

Integration: ENS reverse for author/owner; handles appear in certificates and the Base miniapp (profiles/verifications). Proof: certificate with resolved ENS + miniapp UI showing owner → ENS.

Chainbound (creative FHE dApp)

Integration: PanSoul SBT reputation increases after finalize; optional publication of the FHE verdict (match/non-match) as signed metadata → a new social primitive: proof-of-consistency across content versions. Proof: profile with trustScore levels and a history of signed verdicts.

Notes for Judges (security, privacy, and flow)

Security & Privacy

  • No plaintext on the server; content blobs are client-side encrypted (AES-GCM).
  • FHE keys: public/evaluation for encrypt/evaluate; secret stays on the client for decrypt.
  • On-chain has no PII, only commitments/IDs and Merkle roots (events).

Core provenance (protocol-level)

  • Normalization (NFC/LF, canonical JSON) → contentHash.
  • leaf = sha256(contentHash || sha256(modelIdOrRole) || sha256(metaMin)).
  • Merkle per session (lexicographic pairing; duplicate last on odd) → sessionRoot.
  • On-chain: roots only via RootSigned(...) event.

FHE pipeline (Zama)

  • Client-side embedding/summaries (quantized).
  • Encrypt(FHE) both the session summary and the user’s comparison input.
  • FHE watcher reads CIDs from the manifest referenced by the on-chain event, fetches ciphertexts, and computes similarity / cosine proxy in-cipher.
  • Output: encrypted score → client decrypts → (optional) publish a signed threshold verdict (or keep UI-only).

Base — Social Miniapp (not deployed)

Integration: A Base miniapp shows user profiles with a Trust Badge (PanSoul SBT), the history of RootSigned events, and a “Verify with PanAI” action. It listens to RootSigned and resolves ENS names to display proofs and session status. What judges see: finalize a session → RootSigned on Base Sepolia → miniapp profile updates (latest root, tx link, proof available) → tap Verify to open verification (UI/CLI). Why it matters: a verifiable social primitive (badge + leaderboard) with minimal on-chain data (roots only) and production-ready UX.

Attachments