submitted by :
SAJID HUSAIN PATIL
CSE
acknowledgement:
I would like to express gratitude and thanks to Adrian Isaac and coordinators, marvel, and towards MARVEL for helping me in completing my project.
The "C3RTiFY" project is a blockchain-based Web3 platform designed to issue and verify certificates securely and efficiently. It replaces traditional methods by leveraging blockchain to store certificates on a decentralized ledger, ensuring they are immutable and easily verifiable. Fraud is minimized, as any attempt to alter certificates is immediately visible on the blockchain. Authorized parties can verify certificates using methods like QR code scanning.
The platform is applicable to education, healthcare, government, and intellectual property, providing a wide range of uses. The tech stack includes Ganache for a local blockchain network, Solidity for smart contract development, and Pinata for IPFS-based certificate storage. The project is expected to be completed in four months, covering smart contract creation, website development, integration, and testing.
The users of this website are of 3 categories:
• institute users : will have access to
./dashboard:
.actions> view issued certificates, verify and revoke certificates.
./issuenew: to issue new certificates.
• student users : will have access to
./dashboard:
.actions> view profile information ,view certificates recieved, and verify them.
• anyone can verify the certificate by entering the ipfs hash/certificate id
• only institute account can access issuecertificate route.
Background:
The traditional process of manually generating and validating certificates is often inefficient, prone to errors, and susceptible to fraud. Institutions spend significant time creating and issuing certificates, while students and third parties face challenges in verifying the authenticity of these documents. This manual process also increases the risk of unauthorized alterations, leading to trust issues.
Objective:
The objective of the project is to automate certificate creation and validation using blockchain technology. By utilizing a decentralized ledger, it ensures that certificates are immutable and easily verifiable, streamlining the process for institutions and students alike.
Scope:
The project targets key stakeholders including educational institutions, students, and certificate validators (employers, universities, or third parties). Institutions will benefit from automated issuance, while students gain secure, blockchain-backed certificates. Validators can easily check the authenticity of any certificate in real time, reducing the risk of forgery and simplifying the verification process.
The project follows a modular structure with key components for authentication, certificate management, and verification. The backend, built using Express.js, handles routing, user sessions, and Firebase for data storage, where user roles (student/institute) are assigned based on login. Certificates are generated as PDFs, stored in an IPFS directory via Pinata, and their hash is stored on the Ethereum blockchain for verification. Frontend views are rendered using EJS templates for pages like the dashboard, where users can view/download certificates. The system ensures role-based access, allowing institutes to manage certificates they've issued and enabling verification through a unique certificate ID.
Tech stack used:
• ejs,html,css-for frontend
• node,express,-backend
• firebase for user auth and database
• pinata ipfs as a database for certificate storing
• ganache - local blockchain server
• truffle- set of tools for blockchain development
code : https://github.com/MPSAJID/C3RTiFY
images: https://github.com/MPSAJID/C3RTiFY/blob/main/Screenshot%20(58).png
https://github.com/MPSAJID/C3RTiFY/blob/main/Screenshot%20(59).png https://github.com/MPSAJID/C3RTiFY/blob/main/Screenshot%20(60).png
update till july :
added firebase userauth
update till 27/7:
used pdf-lib node library for pdf genration.
update till 30/7:
corrected broken css links and styling .
restricted /issuenew route only acccessible for institute acc.
update till 9/8:
wrote solidity code for certificate generation contract .
further updates:
connected blockchain(ganache)to server.
added certificate uploading to pinata ipfs.
added dashboard for both student and institute.
added verify and revoke routes
The project successfully automates the certificate creation and validation process, providing a secure and efficient solution through blockchain technology. Key benefits include enhanced security, real-time verification, and reduced fraud risks. By simplifying certificate management for institutions and stakeholders, it improves efficiency and trust. While the system offers scalability and real-time performance, potential limitations may arise in integrating with legacy systems or addressing specific user needs. Overall, the project demonstrates significant advancements in certificate management.
Enhancements: Features such as batch certificate generation, analytics for institutions, QR scannable certificate verifying.
Scalability: Future plans to scale the system for multiple institutions and integrate with external services.
changing from ejs to react , check for any vulnerabilities, host the website , optimise smart contracts to charge less gasfee and move to ethereum mainnet from local network.
• SMART INDIA HACKATHON 2023 : https://www.sih.gov.in/
• Smart contract development : https://cryptozombies.io/en/solidity , https://docs.soliditylang.org/en/v0.8.25/
• Overall help: https://medium.com/@sahilkadam257/certificate-validation-using-blockchain-3c560fd1738c
• More help: https://tokenminds.co/blog/blockchain-projects/blockchain-based-digital-certificates , https://www.chaincodeconsulting.com/insights/blog/transforming-credentials-blockchain-based-digital-certificates , https://robots.net/ai/how-to-build-a-blockchain-website/ , https://www.blockcerts.org/guide/quick-start.html