Skip to content

udaycodespace/credify

Repository files navigation


 β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•—   β–ˆβ–ˆβ•—
β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•β•β•β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•β•β•β•šβ–ˆβ–ˆβ•— β–ˆβ–ˆβ•”β•
β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—  β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—   β•šβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•
β–ˆβ–ˆβ•‘     β–ˆβ–ˆβ•”β•β•β–ˆβ–ˆβ•—β–ˆβ–ˆβ•”β•β•β•  β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•”β•β•β•    β•šβ–ˆβ–ˆβ•”β•
β•šβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ•‘  β–ˆβ–ˆβ•‘β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•—β–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ–ˆβ•”β•β–ˆβ–ˆβ•‘β–ˆβ–ˆβ•‘        β–ˆβ–ˆβ•‘
 β•šβ•β•β•β•β•β•β•šβ•β•  β•šβ•β•β•šβ•β•β•β•β•β•β•β•šβ•β•β•β•β•β• β•šβ•β•β•šβ•β•        β•šβ•β•

Permissioned Private Blockchain for Academic Credential Verification


Docker Pulls GitHub Stars License


Python Flask IPFS Docker


Controlled Trust Β· Deterministic Verification Β· Institutional Auditability

A permissioned blockchain infrastructure for secure academic credential issuance, verification, and tamper-evident record validation.


Overview β€’ Architecture β€’ Workflow β€’ Security β€’ Quick Start β€’ Roadmap


πŸ“˜ Overview

Note

Credify v2 is a permissioned blockchain platform designed to solve credential forgery, verification delays, and uncontrolled academic record exposure in traditional verification systems.

Traditional verification systems still rely heavily on:

  • manual verification workflows
  • institution-dependent approvals
  • paper-based trust
  • delayed verification cycles
  • centralized record handling

Credify replaces that flow with:

  • deterministic blockchain anchoring
  • validator-controlled trust
  • finalized tamper-evident blocks
  • cryptographic proof validation
  • selective credential disclosure

🎯 Stakeholder Outcomes

🏫 Institutions

  • Issue signed credentials
  • Maintain controlled trust boundaries
  • Reduce manual verification overhead
  • Preserve institutional auditability
  • Track credential lifecycle events

πŸŽ“ Students

  • Own credential proofs
  • Share records selectively
  • Verify instantly using QR flows
  • Avoid repetitive paperwork
  • Access portable verification links

βœ… Verifiers

  • Validate authenticity quickly
  • Detect tampering immediately
  • Verify without institution dependency
  • Check revocation status
  • Validate cryptographic signatures

✨ Core Capabilities

πŸ”— Blockchain Layer

  • Permissioned validator network
  • Deterministic consensus sequencing
  • Finalized tamper-evident blocks
  • Multi-node propagation
  • Hash-linked integrity model
  • Validator participation controls

πŸ” Security Layer

  • RSA-2048 digital signatures
  • SHA-256 hashing
  • OTP-based privileged access
  • Revocation-aware verification
  • Controlled access boundaries
  • Validation pipelines

πŸ“¦ Credential Layer

  • QR-based verification
  • PDF credential generation
  • Selective proof disclosure
  • Student proof sharing
  • Independent verification flows
  • Blockchain anchor validation

πŸ—οΈ System Architecture

Important

Credify prioritizes deterministic distributed behavior, institutional trust, explainability, and auditability over public-chain decentralization complexity.


πŸ”„ High-Level Credential Lifecycle

flowchart LR

A[Issuer] --> B[Credential Generation]
B --> C[Digital Signature]

C --> D[IPFS Storage]
D --> E[Blockchain Anchor]

E --> F[Finalized Block]

F --> G[Student Holder]
G --> H[Verifier]

H --> I[Signature Validation]
H --> J[Anchor Integrity Validation]
H --> K[Revocation Validation]
Loading

🌐 Validator Network

graph TD

V1[Validator Node 1]
V2[Validator Node 2]
V3[Validator Node 3]

V1 --> V2
V2 --> V3
V3 --> V1

B[Finalized Block]

V1 --> B
V2 --> B
V3 --> B
Loading

πŸ” Trust Boundary Model

flowchart TD

Admin -->|Creates| Student
Admin -->|Issues| Credential

Student -->|Shares| Proof

Verifier -->|Checks| Blockchain
Verifier -->|Validates| Signature
Verifier -->|Checks| Revocation
Loading

🧠 Architecture Principles

Principle Why It Exists
Deterministic Consensus Removes probabilistic confirmation delays and creates predictable validator sequencing.
Permissioned Validators Maintains institutional trust boundaries and prevents uncontrolled participation.
Finalized Blocks Strengthens tamper evidence and reduces ambiguity in verification flows.
Independent Verification Reduces operational coupling between issuance and verification systems.
Selective Disclosure Allows proof validation without exposing unnecessary academic information.

πŸ”„ System Evolution

🚧 Phase 1 β€” BlockCred Prototype

Note

Initial prototype created to validate feasibility and core verification flows quickly.

Foundations Introduced

  • IPFS-based credential storage
  • SHA-256 / Keccak hashing
  • React dashboard workflows
  • Dockerized deployment
  • Initial credential anchoring

Prototype Limitations

Warning

The prototype exposed architectural limitations in:

  • deterministic state progression
  • validator trust control
  • institutional audit guarantees
  • finalized verification guarantees
  • synchronization consistency

These limitations directly shaped the redesign into Credify v2.


⚑ Phase 2 β€” Credify v2

Architectural Improvements

  • Permissioned validator architecture
  • Deterministic consensus sequencing
  • Finalized tamper-evident blocks
  • Validator orchestration model
  • Multi-node synchronization support
  • Stronger verification guarantees

πŸ”Ž Phase 3 β€” Verification Client

Tip

Verification was intentionally separated into an independent trust boundary.

Verification Client Characteristics

  • Independent verification frontend
  • QR-based proof validation
  • No backend dependency during verification
  • Reduced operational coupling
  • Public verification accessibility

πŸ” Authentication & Access Model

Note

Credify follows institution-controlled onboarding rather than public self-registration.


πŸ‘¨β€πŸ’Ό Admin / Issuer

Responsibilities

  • Create student identities
  • Issue credentials
  • Manage blockchain records
  • Control onboarding lifecycle

Access Model

  • OTP-based authentication
  • Privileged environment access
  • Administrative issuance control

πŸŽ“ Student

Permissions

  • View credentials
  • Share proof references
  • Access issued documents

Restrictions

  • No self-registration
  • Cannot modify records
  • Cannot issue credentials

βœ… Verifier

Verification Methods

  • QR verification
  • Credential ID validation
  • Proof verification

Access Characteristics

  • Public access
  • No login required
  • Read-only verification flows

βš™οΈ Workflow

πŸ“Œ Operational Lifecycle

sequenceDiagram

participant Admin
participant Storage
participant Blockchain
participant Student
participant Verifier

Admin->>Storage: Store credential payload
Admin->>Blockchain: Anchor metadata hash

Blockchain-->>Student: Credential finalized

Student->>Verifier: Share proof / QR

Verifier->>Blockchain: Validate anchor
Verifier->>Storage: Validate payload

Verifier-->>Student: Verification result
Loading

πŸš€ Quick Start

🐳 Docker Deployment

Tip

Recommended setup for validator synchronization demos and distributed-system evaluation.

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

Application Endpoint

http://localhost:5000

πŸ§ͺ Local Development

git clone https://github.com/udaycodespace/credify.git

cd credify

python -m venv venv

# Windows
venv\Scripts\activate

# Linux/macOS
source venv/bin/activate

pip install -r requirements.txt

cp .env.example .env

python main.py

🌐 Validator Cluster Deployment

docker-compose up -d

Validator Endpoints


πŸ› οΈ Tech Stack

Backend

Technology Purpose
Python 3.10+ Runtime
Flask REST backend
SQLAlchemy ORM & persistence
RSA Cryptography Digital signatures
SHA-256 Integrity hashing

Blockchain

Technology Purpose
Permissioned Ledger Controlled validator trust
Deterministic Consensus Predictable sequencing
Finalized Blocks Tamper evidence
Validator Orchestration Distributed synchronization

Storage

Technology Purpose
IPFS Decentralized storage
SQLite/PostgreSQL Persistence layer
Local Fallback Reliability support

DevOps

Technology Purpose
Docker Containerization
Docker Compose Validator orchestration
GitHub Actions CI/CD automation

πŸ“‚ Project Structure

credify/
β”‚
β”œβ”€β”€ app/                 # Flask routes and services
β”œβ”€β”€ core/                # Blockchain and cryptographic logic
β”œβ”€β”€ data/                # Runtime storage artifacts
β”œβ”€β”€ docs/                # Engineering documentation
β”œβ”€β”€ static/              # Frontend assets
β”œβ”€β”€ templates/           # HTML templates
β”œβ”€β”€ tests/               # Automated tests
β”‚
β”œβ”€β”€ Dockerfile
β”œβ”€β”€ docker-compose.yml
β”œβ”€β”€ pyproject.toml
└── README.md

πŸ§ͺ Testing

Run Test Suite

pytest -v

Coverage

pytest --cov=app --cov=core --cov-report=html

Validation Areas

  • authentication flows
  • blockchain integrity
  • validator synchronization
  • consensus sequencing
  • propagation consistency
  • signature validation
  • revocation verification

πŸ“¦ Deployment Posture

Tip

Suitable for:

  • academic demonstrations
  • institutional pilot environments
  • distributed systems showcases
  • blockchain engineering portfolios
  • verification workflow evaluation

Environment Configuration

SECRET_KEY=
OTP_SECRET=
DATABASE_URL=
IPFS_GATEWAY=
VALIDATOR_NODE_ID=
PEER_NODES=

πŸ”’ Security

Implemented Controls

Control Purpose
OTP-based Privileged Access Restricts administrative onboarding and issuance.
RSA Digital Signatures Validates credential authenticity and integrity.
SHA-256 Hashing Provides tamper-evident hashing guarantees.
Role-based Boundaries Prevents unauthorized credential operations.
Finalized Block Model Strengthens verification defensibility.

Operational Recommendations

Warning

Production deployments should:

  • enforce HTTPS/TLS
  • rotate secrets regularly
  • isolate validator infrastructure
  • monitor verification failures
  • avoid default development secrets
  • separate staging and production validators

πŸ›£οΈ Roadmap

Planned Enhancements

  • PBFT-style consensus evolution
  • Validator governance controls
  • Validator slashing mechanisms
  • IPFS cluster integration
  • DID interoperability
  • Advanced zero-knowledge proof systems
  • Distributed audit dashboards

πŸ‘₯ Team

Core Contributors

udaycodespace

Architecture Blockchain Backend Integration

πŸ’» ⚑ πŸ”

shashikiran47

Validation Implementation Testing

πŸ§ͺ πŸ’» πŸ“–

tejavarshith

Debugging Testing Documentation

πŸ› πŸ§ͺ πŸ“š


πŸ™Œ Academic Guidance

Note

This project was developed with academic mentorship and institutional guidance from faculty members at G. Pulla Reddy Engineering College (Autonomous), Kurnool.


Faculty Contribution
Dr. B. Thimma Reddy Sir Distributed systems and engineering guidance
Dr. G. Rajeswarappa Sir Academic evaluation and technical mentorship
Shri K. Bala Chowdappa Sir Institutional support and project guidance

🌍 Technical Ecosystem

  • Python ecosystem
  • Flask community
  • IPFS contributors
  • Open-source maintainers
  • Cryptography libraries ecosystem

πŸ“œ License

Note

Project classification: B.Tech Final Year Engineering Project.

Maintained for:

  • academic evaluation
  • blockchain engineering demonstration
  • distributed systems showcase
  • portfolio presentation


Built as a flagship blockchain engineering project

If this project helped you, consider giving it a ⭐


Python

About

Authenticity You Can Verify

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors