Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProofAnchor

Discover. Validate. Anchor. Verify.

ProofAnchor is a privacy-conscious evidence pipeline being built for Hacker House Goa 2026 — Task 03: Face Identification & Blockchain Verification.

The goal is to:

  1. Detect and encode a face from a consented input image.
  2. Perform a genuine reverse-image search.
  3. Find a real matching public web/social-media result.
  4. Build a deterministic evidence record.
  5. Anchor a cryptographic fingerprint of that evidence on-chain.
  6. Re-verify the fingerprint later and detect tampering.

ProofAnchor does not claim that blockchain proves a person's identity. The blockchain layer is used to make a specific evidence record tamper-evident.

Current milestone — Gate 1

The first milestone deliberately focuses on the highest-risk dependency:

consented image
    ↓
local face detection + encoding
    ↓
live reverse-image search
    ↓
real public social-media candidate

Blockchain integration comes only after this path is reliable.

Stack

  • Python 3.10+
  • InsightFace
  • ONNX Runtime
  • SerpAPI Image API + Google Lens
  • Rich CLI
  • Base Sepolia + Solidity + web3.py (next milestone)

Setup

1. Create a virtual environment

Windows PowerShell:

py -3.10 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip
pip install -r requirements.txt

Linux/macOS:

python3 -m venv .venv
source .venv/bin/activate
python -m pip install --upgrade pip
pip install -r requirements.txt

2. Configure environment variables

Copy .env.example to .env:

SERPAPI_KEY=your_serpapi_key_here

Never commit .env.

3. Run Gate 1

python main.py --image path/to/your-consented-photo.jpg --search-type exact_matches --save-raw

If exact matches do not surface a social result, test visual matches:

python main.py --image path/to/your-consented-photo.jpg --search-type visual_matches --save-raw

What the CLI shows

  • Input SHA-256
  • Number of faces detected
  • Face detection confidence
  • Embedding dimensions
  • SHA-256 of the local face embedding
  • Fresh SerpAPI upload ID
  • Search result count
  • Public social-media candidates
  • Optional raw API response path for audit/debugging

The raw face embedding itself is never printed or uploaded by ProofAnchor.

Privacy model

  • Use only your own image or an image from a consenting participant.
  • Face analysis happens locally.
  • Raw face embeddings should not be stored on-chain.
  • API keys/private keys belong in .env.
  • Generated API artifacts are ignored by Git by default.
  • A future on-chain record will contain only a cryptographic commitment to the evidence.

Known limitations

  • Reverse-image-search results depend on what the search provider has indexed.
  • A visual/exact search result is not itself proof of a person's identity.
  • Social platforms may block automated retrieval of their media.
  • InsightFace model licensing is separate from the library code; review the applicable model license before distribution/use.
  • Gate 1 currently finds candidates; independent candidate-face validation and blockchain anchoring are subsequent milestones.

Project status

  • Architecture locked
  • Repository created
  • Gate 1: local face detection
  • Gate 1: live reverse-image search
  • Gate 1: real social-media candidate
  • Gate 2: candidate validation
  • Gate 3: evidence fingerprint
  • Gate 4: Base Sepolia anchoring
  • Gate 5: VERIFIED / TAMPERED demo
  • Final reliability test + unedited screen recording

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages