project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5
project screenshot 6

DocVault

DocVault is a decentralized credential issuance platform using Web3Auth for onboarding and Sign and Lit protocols for issuing and encrypting certificates by authorized institutions. Credential holders can decrypt and view their certificates on their dashboards.

DocVault

Created At

ETHOnline 2024

Project Description

DocVault is a decentralized platform designed to revolutionize how credentials, such as degrees and certificates, are issued, stored, and verified. It bridges the gap between educational institutions and students by providing a secure, efficient, and user-friendly system that leverages blockchain technology to ensure authenticity and privacy.

The platform is built on a decentralized architecture, meaning it does not rely on a central authority to manage or verify data. Instead, it uses blockchain technology, which ensures that all credentials are tamper-proof and can be independently verified by anyone with access to the network. This setup provides a high level of trust and security, making it ideal for educational institutions and students who want to maintain the integrity of their certifications.

Smooth Onboarding with Web3Auth: DocVault integrates Web3Auth to streamline the onboarding process, allowing users to create digital wallets quickly and securely using their existing social media accounts, like Google or Facebook. This eliminates the complexities typically associated with setting up a blockchain wallet, making the platform accessible even for those unfamiliar with blockchain technology. Once onboarded, both institutions and students are given their own dashboard tailored to their specific needs.

Institution Dashboard Features: The institution dashboard is designed for universities, colleges, and other organizations that issue credentials. This dashboard offers a comprehensive view of the institution's profile, including its name, email, wallet address, and crypto balance. Institutions are guided through simple steps to add cryptocurrency to their wallets if needed. The core functionality lies in the "Issue Certificates" section, where institutions can choose to issue certificates in two ways. First, they can manually enter each student's details, such as name, course, and grade, to generate a certificate. Alternatively, for larger batches, institutions can upload a .csv file containing all the necessary data, allowing them to issue multiple certificates at once with a single click. This flexibility makes it easy for institutions to manage both small and large-scale credential issuance efficiently. Additionally, the dashboard includes a feature for rewarding students with cryptocurrency for outstanding achievements or contributions. This is seamlessly integrated into the system—administrators only need to enter the recipient’s wallet address and the amount of ETH they wish to send, making the process quick and easy.

Secure Certificate Issuance and Storage: Once a certificate is ready to be issued, the platform ensures its security and integrity through a multi-step process. Before any data is written to the blockchain, it is first encrypted using Lit Protocol. This protocol ensures that sensitive information remains private and can only be accessed by authorized users. After encryption, the data is sent to the blockchain using Sign Protocol, which ensures that all transactions are secure, transparent, and verifiable. The encrypted data is then stored on Tableland, a decentralized database solution that allows for efficient storage and retrieval of data. This layered approach ensures that all certificates are not only securely stored but also easily retrievable and verifiable, adding an extra layer of trust and transparency to the entire process.

Student Dashboard Features: The student dashboard is designed to be simple and intuitive, providing students with an easy way to access and manage their credentials. Upon logging in, students can see a "View Certificates" button that, when clicked, initiates a secure decryption process using the Lit Protocol's decrypt action. This process allows students to decrypt their encrypted certificates and view them directly on their profile. Because all data is encrypted before being sent to the blockchain, students can be confident that their information remains private and secure.

Conclusion: DocVault offers a comprehensive solution for decentralized credential issuance and verification, combining the ease of Web3Auth onboarding, the security of Lit and Sign Protocols, and the flexibility of issuing and managing certificates. Institutions benefit from a secure, scalable system for issuing credentials, while students have a straightforward way to access and prove their qualifications. By leveraging the power of blockchain, DocVault not only protects the integrity of academic achievements but also creates a more connected, transparent, and trustworthy ecosystem for education.

How it's Made

DocVault was developed as a decentralized platform for credential issuance and verification, leveraging blockchain technology to provide a secure and user-friendly experience for institutions and students. The project integrates various technologies to ensure a smooth user interface, secure data handling, and seamless interactions between all stakeholders. Given that this was our first hackathon, we aimed to create a functional prototype that effectively demonstrates the core capabilities of a decentralized credential system.

Frontend Development: The frontend of DocVault is built using ReactJS, a powerful JavaScript library known for its component-based architecture, which allowed us to develop reusable and modular components for the application. This made it easier to manage and scale different parts of the project, such as the institution and student dashboards. Each dashboard is designed to cater to specific user needs—institutions can issue credentials, and students can view them. We utilized vanilla CSS to style the web application, focusing on a clean and straightforward design that enhances user experience. The use of ReactJS also allowed for dynamic rendering, ensuring that data displayed on the dashboard is always up-to-date and responsive to user actions.

Backend Architecture and API Integration: The backend is powered by Node.js, which handles the core functionalities of the platform. We now leverage Firebase Firestore for data storage and management. Firestore is a scalable, real-time database that allows us to store encrypted data securely and retrieve it efficiently. When an institution uploads form data, it is encrypted using the Lit Protocol and stored directly in Firestore. The decision to use Node.js was driven by its asynchronous, non-blocking nature, which is well-suited for handling multiple requests and operations typical in a decentralized application (dApp) setting. Node.js also simplifies the integration with various blockchain technologies we employed.

Partner Technologies for Decentralized Functionality: To achieve decentralized functionality, we integrated several partner technologies. Web3Auth is used for user onboarding, allowing users to create wallets using their social login credentials like Google or Facebook. This simplifies the onboarding process by abstracting away complex blockchain concepts and making the platform accessible to non-technical users. Once an institution uploads certificate data, it goes through the Lit Protocol for encryption, ensuring that sensitive information is protected before storage. The encrypted data is then transferred to the blockchain using Sign Protocol. This step guarantees the authenticity and immutability of the credentials issued. The data is further stored on Tableland, a decentralized storage solution for efficient data retrieval and management.

Data Flow and Certificate Management: When an institution uploads form data, it is first encrypted using the Lit Protocol to protect sensitive information. This encrypted data is then stored directly in Firebase Firestore, a scalable, real-time database for efficient data management. Once securely stored in Firestore, the data is sent to the blockchain via the Sign Protocol, ensuring the authenticity and immutability of the credentials. The data is also stored on Tableland, a decentralized storage solution for efficient retrieval.To manage and retrieve this data, we developed a function that queries Firestore for certificates associated with the user’s wallet address. When a student clicks “View Certificate” on their dashboard, the system queries Firestore for the encrypted certificates linked to their wallet address. The Lit Protocol is then used to decrypt these certificates, which are subsequently displayed to the student, ensuring a seamless and secure user experience.

Challenges and Insights: One of the challenges we faced was ensuring secure data management while maintaining a user-friendly experience. Integrating multiple blockchain protocols added complexity, but it was necessary to meet our goals for data privacy, authenticity, and decentralization. The current architecture, while functional, highlights areas for future scalability improvements, such as optimizing data storage and retrieval processes. Despite these limitations, DocVault successfully demonstrates how blockchain technology can be applied to securely manage and verify educational credentials, paving the way for further innovation in this space.

background image mobile

Join the mailing list

Get the latest news and updates