Inspiration

Academic and professional achievements are often represented by certificates that are difficult to verify and can be altered or misrepresented. Employers may have to rely on manual verification or trust documents provided by applicants. We wanted to build a system where credentials could be issued, stored, and verified digitally without relying entirely on a centralized verification process. This led us to SkillProof — a blockchain-based credential platform where institutions can issue credentials, students can access and share them, and employers can verify their authenticity directly through blockchain data.

What it does

SkillProof is a decentralized credential verification platform. Institutions can: Connect their Web3 wallet. Enter a student's wallet address and credential details. Upload a credential PDF. Generate a SHA-256 hash of the document. Store the document on IPFS using Pinata. Record the credential information, document hash, and IPFS URI on the blockchain. Revoke credentials when necessary. Students can: Retrieve their credentials using a credential ID. View their credential information. Share a QR code for verification. Employers can: Verify credentials using the credential ID or QR code. Check the credential directly against blockchain records. See whether the credential has been revoked.

How we built it

We built SkillProof using a combination of Web3, blockchain, and web technologies. Frontend React JavaScript CSS ethers.js QRCode generation Blockchain Solidity Hardhat EVM-compatible blockchain Smart contracts Web3 MetaMask for wallet connection ethers.js for blockchain interaction Decentralized Storage IPFS Pinata Security / Integrity SHA-256 document hashing The workflow is: PDF → SHA-256 Hash → IPFS Upload → Smart Contract → Blockchain Credential → QR Verification

Challenges we ran into

One of the main challenges was integrating the different components of the system. We had to connect the React frontend with the Solidity smart contract and MetaMask while also handling document uploads through our backend and Pinata. We also encountered challenges related to: Smart contract deployment and changing contract addresses. Connecting MetaMask to the local Hardhat network. Managing authorized issuers. Handling blockchain transaction failures. Connecting the backend to Pinata's IPFS API. Debugging IPFS authentication issues. Generating and storing the document hash correctly. Making the QR verification workflow work with the frontend. These challenges helped us understand how frontend applications, backend services, decentralized storage, and blockchain smart contracts work together.

Accomplishments that we're proud of

We are proud of building a working prototype that connects several technologies into one credential workflow. Some of the features we successfully implemented include: Blockchain-based credential issuance. SHA-256 fingerprint generation for uploaded documents. IPFS document storage through Pinata. MetaMask wallet integration. Smart contract interaction from React. Student credential dashboard. Employer credential verification. QR-based credential sharing. Credential revocation. Blockchain-backed credential records. Instead of creating only a conceptual design, we built an interactive prototype demonstrating how a credential can move from issuance to verification.

What we learned

Through SkillProof, we learned how different Web3 components work together in a practical application. We learned about: Writing and deploying Solidity smart contracts. Working with Hardhat and local blockchain networks. Connecting React applications with blockchain networks. Using MetaMask for wallet-based authentication. Using ethers.js for smart contract interaction. Storing files on IPFS. Using Pinata for decentralized storage. Generating SHA-256 document fingerprints. Using QR codes for credential verification. Handling blockchain transactions and debugging Web3 applications. Most importantly, we learned that building a Web3 application involves connecting multiple layers rather than simply writing a smart contract.

What's next for SkillProof

The current prototype focuses on the core credential issuance and verification workflow. Our next step would be to make SkillProof more scalable and production-ready. Future improvements include: Deploying the smart contract to a public blockchain/testnet. Creating dedicated institution and employer dashboards. Adding multiple credential types. Supporting multiple institutions and authorized issuers. Improving credential ownership and sharing controls. Adding stronger document verification workflows. Improving the user interface and mobile experience. Adding decentralized identity integration. Supporting verifiable digital credentials. Building analytics for institutions to manage issued credentials. Our long-term goal is to develop SkillProof into a platform where academic and professional achievements can be issued once and verified anywhere.

Built With

Share this project:

Updates

Submission history