Blockchain certificate verification with QR scanning, hash-based fraud detection and admin dashboard. Complete source code for final year projects.
A degree certificate is just a PDF, and a PDF can be edited in ten minutes by anyone with the right tool. HR teams end up calling colleges, waiting weeks for a reply, and sometimes hiring people whose documents were never real. The Blockchain Certificate Verification System removes that guesswork by storing a cryptographic fingerprint of every certificate on the blockchain, where it cannot be edited, deleted or duplicated by anyone, including the issuing college.
You get the complete working source code, smart contracts, admin dashboard, QR generation module, database file and a step-by-step setup guide.
| Traditional Problem | Blockchain Solution |
|---|---|
| Certificates edited with image or PDF tools | Any change alters the hash and fails verification instantly |
| Manual verification takes days or weeks | Scan a QR code and get a result in seconds |
| Duplicate certificates with identical details | Every certificate gets a unique hash, so no two can match |
| No trusted central record of issued degrees | Decentralized ledger accessible to any authorized verifier |
| Records lost or corrupted over time | Blockchain entries are permanent and never expire |
| Institution itself could alter past records | Immutability applies to the issuer as well |
| Component | Technology |
|---|---|
| Frontend | HTML5, CSS3, JavaScript, Bootstrap |
| Backend | Python Flask (Node.js variant included) |
| Blockchain | Ethereum |
| Smart Contracts | Solidity |
| File Storage | IPFS |
| Database | MySQL |
| Verification | QR code generation and scanning |
The university admin logs in and uploads a student certificate along with its details. The system hashes the certificate data, pushes the document to IPFS, and writes the resulting hash to the smart contract on the blockchain. A QR code carrying the hash ID is then generated and attached to the certificate handed to the student.
When an employer wants to verify, they scan the QR code or upload the certificate file. The system recomputes the hash from the submitted document and compares it against the value stored on-chain. If even a single character was altered, the two hashes will not match and the certificate is flagged as fake. Nothing depends on trusting the person presenting the document.
The project can be extended with multi-university integration under one platform, DigiLocker or government ID linking, a mobile app for one-tap QR scanning, an AI layer for fraud pattern detection, support for international certificate formats, and email or SMS notification on certificate issuance.
Watch the full project walkthrough here: Blockchain Certificate Verification System - Demo
Read the complete write-up on our blog: Blockchain Certificate Verification System
Note: This project is provided for educational and academic purposes. Basic knowledge of Python or Node.js, MetaMask and smart contract deployment will help you set it up faster.
1. Download and extract the ZIP file 2. Install and open Ganache, then create a new workspace 3. Install the MetaMask extension and connect it to the local network 4. Create the MySQL database and import the provided .sql file 5. Install Truffle globally: npm install -g truffle 6. Run npm install in the project root folder 7. Create a virtual environment and run: pip install -r requirements.txt 8. Update database credentials and IPFS settings in the config or .env file 9. Compile the smart contracts: truffle compile 10. Deploy the contracts: truffle migrate 11. Copy the deployed contract address into the config file 12. Start the backend server: python app.py 13. Open the local URL in your browser and log in as admin 14. Upload a test certificate, then verify it from the public page
FAQ for this project coming soon.
No reviews yet. Be the first to review!