Skip to content

Latest commit

 

History

65 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DataFort Inc.

We, DataFort Inc. are presenting a solution to solve a major problem in the cybersecurity space.

Our App provides a way to set up a scalable private-permissioned blockchain that helps us retain data integrity while counteracting the redundant nature of blockchains by using a local Interplanetary File System that works on the Proof of Authority consensus mechanism, keeping efficiency and speed at heart.

We provide a seamless yet secure way for private and government enterprises to store large amounts of data while preventing unauthorized access/ modifications. We believe that this would be especially useful for law enforcement, banking and healthcare where malicious actors looking to modify data can bring about catastrophic consequences.

Repository Structure

•Index.js: This file contains the main backend source code responsible for rendering all project web pages.
•views: This directory contains HTML, CSS, and EJS files, each responsible for a specific web page's layout and functionality.
•assets: Folder with images used throughout the application
•IPFS: This directory contains configuration and files related to InterPlanetary File System (IPFS), enabling decentralized file storage and retrieval.
•exonum_chain: This directory contains configuration and files related to the Exonum Private Blockchain framework, facilitating secure and efficient blockchain transactions.

Development

Technologies integrated to make the website up and running:-

Frontend
•HTML5 (Hypertext Markup Language)
•CSS3 (Cascading Style Sheets)
•Embeded Javascript (EJS)

Backend
•Node.js
•Express.js

Database Management
•MongoDB
Blockchain Frameworks
•Exonum
Decentralized Storage
•IPFS (InterPlanetary File System)

Prerequisites

Before you begin, ensure you have met the following requirements:

  • Node.js installed on your computer (preferably version 14 or higher)
  • npm (Node Package Manager) installed
  • Firewall Configuration

To set up your firewall for both IPFS and Exonum, allow the following ports:

IPFS Firewall Rules

Inbound Rules:

  • TCP:

    • 4001 (IPFS swarm)
    • 4002 (IPFS API)
    • 5001 (IPFS gateway)
    • 8080 (Optional, for additional services)
  • UDP:

    • 4001 (IPFS swarm)

Outbound Rules:

  • TCP:

    • 4001
    • 4002
    • 5001
    • 8080
  • UDP:

    • 4001

Exonum Firewall Rules

Inbound Rules:

  • TCP:
    • 8080 (Exonum API)
    • 8000 (Exonum node service, if applicable)
    • 8001 (Exonum websocket service, if applicable)

Outbound Rules:

  • TCP:
    • 8080
    • 8000
    • 8001

Instructions

1. Clone the Repository:

git clone https://github.com/2SuryaPrakash/DataFort

2. Install requirements

Ensure that your device has npm and node installed. If it is installed,

npm install

This will install all the dependencies.

Note. Every time you are initializing with the IPFS server, update the api_link variable in index.js,upload.ejs and privatenode.js with the current IP address of the IPFS host server.

ipconfig

Copy the IPv4 Address and assign it to the API_LINK variable.

node file_server.js

This will start the ipfs server.

node index.js

This will start the server and the website will work on your localhost.
To view the website, go to:

https://localhost:3000

Important Notes

Please read the separate README files located in the IPFS and exonum_chain directories for detailed instructions on setting up and configuring each component. These documents provide essential information tailored to help you work with IPFS and Exonum effectively.

About

Blockchain Based Distributed Data Storage Application

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages