Skip to content

eshan-sud/secureIt

Repository files navigation

SecureIt - Blockchain-Based Storage Platform

Overview

This project is a decentralized application designed to securely manage personal data using blockchain technology. It provides users with the ability to upload, manage, and control access to their data while leveraging the Ethereum blockchain for secure, immutable transactions.

Core Features

  • User Authentication: Secure login using blockchain wallets (e.g., MetaMask).
  • Data Upload and Storage: Users can upload personal data (e.g., files, text).
  • Permission Management: Set permissions on who can access their data.
  • Blockchain Integration: Store permission settings and audit trails on the blockchain.
  • Audit Trail: Immutable log showing who accessed the data and when.
  • Compensation Simulation: Simulate rewards for users who share their data.

Technology Stack

  • Frontend: React.js for the user interface.
  • Backend: Node.js with Express for the server.
  • Blockchain: Used Solidity to write Smart Contracts and Web3.js for interaction.
  • Database: MongoDB for storing non-sensitive user data.
  • Wallet Integration: MetaMask for user authentication and transaction signing.

Future Scaling

  • Decentralized Database: Plan to implement a decentralized database for storing user files and data.
  • UI: Plan to improve the UI for better user experience

Getting Started

Prerequisites

Ensure you have Node.js and npm installed. You will also need MetaMask for blockchain interactions.

Installing

  1. Clone the repository:

    git clone https://github.com/your-repo/blockchain-based-storage-platform.git
    cd blockchain-based-storage-platform
  2. Install Dependencies

    npm install
  3. Run the app

    npm start
  4. Test the app

    npm test
  5. Build the app

    npm run build

    License

    This project is licensed under the MIT License. See the LICENSE file for details.