hackquest logo

privascore

Privacy-Preserving Credit Scoring.

Videos

Project image 1

Tech Stack

React
Solidity
Ethers
Python

Description

PrivaScore

Privacy-Preserving Credit Scoring for DeFi

PrivaScore enables underbanked individuals to prove their creditworthiness without exposing their financial history. By processing sensitive data in Trusted Execution Environments (TEE), we unlock undercollateralized lending in DeFi while preserving user privacy.

The Problem

2 billion people globally are underbanked, yet they have valuable financial history:

- Mobile money payments (M-Pesa, PayPal)

- Gig economy earnings (Uber, Stripe)

- Utility and rent payments

In DeFi, they're invisible. Current lending requires:

- Over-collateralization (lock $150 to borrow $100), OR

- Exposing entire financial history on-chain forever

PrivaScore solves this by enabling credit verification without data exposure.

Our Solution

Financial Data (Private) → TEE Processing → Credit Score (Verifiable)

↓ ↓ ↓

Bank Statements AI Analysis zkProof Published

M-Pesa History Risk Assessment Score Hash On-Chain

PayPal Earnings Privacy Preserved Portable Identity

How It Works

1. Upload & Encrypt - User uploads financial documents (CSV, PDF)

2. TEE Processing - Data processed in secure enclave via iExec

3. Credit Scoring - Algorithm analyzes:

- Payment consistency (40%)

- Income stability (30%)

- Debt management (30%)

4. Verifiable Output - Only score hash published on-chain

5. Borrow - Use score across DeFi protocols

Architecture

┌─────────────────┐

│ Frontend │

│ (Next.js) │

└────────┬────────┘

┌─────────────────┐

│ iExec Data │

│ Protector │

└────────┬────────┘

┌─────────────────┐

│ TEE Worker │

│ (Confidential) │

│ │

│ ┌───────────┐ │

│ │ Python │ │

│ │ Credit │ │

│ │ Scorer │ │

│ └───────────┘ │

└────────┬────────┘

┌─────────────────┐

│ Smart Contract │

│ Score Storage │

└─────────────────┘

Tech Stack

Frontend:

- Next.js 14 (App Router)

- TypeScript

- Tailwind CSS

- iExec DataProtector SDK

- ethers.js

Backend (TEE):

- Python 3.13

- iExec TEE (SCONE)

- Docker

- Arbitrum Sepolia

Blockchain:

- Arbitrum Sepolia Testnet

- iExec Protocol

- Smart Contracts for score storage

Demo Data

Sample CSV format for testing:

csv

date,amount,description

01/01/2024,2500,Salary Deposit

01/05/2024,-800,Rent Payment

01/10/2024,-200,Groceries

01/15/2024,2500,Salary Deposit

01/20/2024,-150,Utilities

02/01/2024,2500,Salary Deposit

02/05/2024,-800,Rent Payment

02/15/2024,2500,Salary Deposit

Format Requirements:

- Header row: date,amount,description

- Positive amounts = income

- Negative amounts = expenses

- Minimum 5 transactions for meaningful score

Demo Flow

1. Connect Wallet - MetaMask on Arbitrum Sepolia

2. Upload CSV - Bank statement or financial history

3. Process in TEE - Data encrypted and analyzed privately

4. View Score - Credit score (300-850) with tier classification

5. Request Loan - Use score for undercollateralized borrowing

Processing Time: 2-5 minutes

Privacy: Raw data never leaves TEE, only score hash on-chain

Privacy & Security

How Privacy is Preserved

Data Encryption - End-to-end encryption before upload

TEE Processing - Computation in hardware-isolated environment

Zero-Knowledge Proof - Only score hash published

User Control - Data owner decides who can access

No Data Storage - Raw data deleted after processing

Team Leader
TTed Adams
Project Link
Sector
DeFiRWAInfra