Skip to content

Latest commit

Β 

History

History
347 lines (292 loc) Β· 8.27 KB

File metadata and controls

347 lines (292 loc) Β· 8.27 KB

CREDIFY

A permissioned blockchain for academic credential verification

Built solo to make credentials easier to issue, harder to fake, and faster to verify.

Solo Project Status Domain Architecture License

Overview

CREDIFY is a blockchain-based credential system for academic institutions, students, and verifiers.

It keeps credential records in a way that makes tampering obvious, verification fast, and trust easier to manage. Instead of relying on email threads, manual checks, and scattered record keeping, the system anchors proof on a permissioned blockchain and lets verifiers check authenticity directly.

Why this exists

Problem What usually happens What CREDIFY does
Fake certificates PDFs get copied or edited Signs records and anchors them on-chain
Slow verification Staff have to respond manually Lets verifiers check proof directly
Scattered records Data lives across different systems Keeps the record flow structured
Trust gaps No clear way to confirm origin Uses permissions, hashes, and signatures

What it does

Part What it handles
Issuance Creates and signs credentials
Storage Stores payloads through IPFS
Blockchain Anchors hashes and keeps the ledger consistent
Verification Checks signature, anchor, and revocation status
Access control Uses OTP-based privileged access for issuer actions

Architecture

flowchart TD
    A[Admin] --> B[Create credential]
    B --> C[Sign record]
    C --> D[Store payload in IPFS]
    D --> E[Anchor hash on blockchain]
    E --> F[Finalize block]
    F --> G[Student receives proof]
    G --> H[Verifier scans QR or link]
    H --> I[Check signature]
    H --> J[Check blockchain anchor]
    H --> K[Check revocation]
Loading

How it works

sequenceDiagram
    participant Admin
    participant IPFS
    participant Chain
    participant Student
    participant Verifier

    Admin->>IPFS: Upload credential payload
    Admin->>Chain: Store hash and metadata
    Chain-->>Student: Credential is finalized
    Student->>Verifier: Share QR or proof link
    Verifier->>Chain: Validate anchor
    Verifier->>IPFS: Validate payload
    Verifier-->>Student: Return result
Loading

Key strengths

Strength Why it matters
Permissioned network Keeps validation controlled
Finalized blocks Makes tampering obvious
Independent verification Reduces manual follow-up
Selective disclosure Shares only what is needed
Cryptographic proof Gives verifiers something concrete to check

Quick start

Docker

docker pull udaycodespace/credify:latest
docker run -d -p 5000:5000 udaycodespace/credify:latest

Local setup

git clone https://github.com/udaycodespace/credify.git
cd credify
python -m venv venv

# Windows
venv\Scripts\activate

# Linux or macOS
source venv/bin/activate

pip install -r requirements.txt
cp .env.example .env
python main.py

Validator nodes

docker-compose up -d
Node Endpoint
Validator 1 http://localhost:5001
Validator 2 http://localhost:5002
Validator 3 http://localhost:5003

Tech stack

Area Tools
Backend Python, Flask, SQLAlchemy
Security RSA, SHA-256
Storage IPFS, SQLite, PostgreSQL
Deployment Docker, Docker Compose
Automation GitHub Actions

Security

Control Purpose
OTP access Protects issuer actions
RSA signatures Proves record authenticity
SHA-256 hashing Detects tampering
Role boundaries Separates admin, student, verifier
Finalized ledger Makes verification easier to trust

Roadmap

Next step What it adds
PBFT-style consensus Stronger validation model
DID support Better identity interoperability
ZK proofs More privacy for sensitive data
Governance controls Cleaner validator management
Audit dashboards Easier monitoring and traceability

Repo positioning

If you are... CREDIFY gives you...
A student A portable credential proof you can share quickly
An institution A cleaner issuance and verification flow
A verifier A direct way to confirm authenticity
A recruiter A faster check than email-based validation

License

Copyright (c) 2026 Uday All rights reserved.

Built solo. Kept practical. Focused on trust, not hype.