Skip to content

AssetBlock is a platform revolutionizing asset management through the power of blockchain technology. With AssetBlock, users can track, transfer, and trade assets seamlessly, unlocking new levels of accessibility and liquidity.

License

Notifications You must be signed in to change notification settings

VishalTheHuman/AssetBlock-Assest-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AssetBlock : Assest Management System using SHA-256

Banner

Description 📝 :

AssetBlock is a comprehensive asset management system designed to ensure the security, integrity, and efficiency of asset tracking and management. By utilizing the SHA-256 encryption algorithm, AssetBlock provides a robust mechanism for hashing and authentication, ensuring that all asset data remains secure and tamper-proof; And the same file can't be uploaded by different users. Once issued, the asset can be transferred betweeen the users seemlessly.

Key features of AssetBlock include:

  • Secure Authentication: Leveraging Firebase for secure user authentication, ensuring that only authorized users can access and manage assets.
  • Data Integrity: Utilizing SHA-256 for hashing asset data, ensuring data integrity and providing a secure method for verifying data authenticity.
  • Efficient Asset Management: A user-friendly interface for both clients and administrators to manage and track assets effectively.
  • Database Integration: Integration with PostgreSQL for reliable and efficient data storage, providing a scalable solution for managing large volumes of asset data.

Setup ⚙️ :

Install Requirements 📃

1. Assume the pip is already installed.
2. Run the following script in the terminal

pip install -r requirements.txt

Firebase Setup 🔥

1. Create a Web App in Firebase Console
2. Go to Project Settings and click on manage service account permissions

3. Click on the three dots and select create key.

4. Now create a key and download the JSON File.

5. Now replace the contents inside firebase.json with downloaded JSON.

{
  "type": "",
  "project_id": "",
  "private_key_id": "",
  "private_key": "",
  "client_email": "",
  "client_id": "",
  "auth_uri": "",
  "token_uri": "",
  "auth_provider_x509_cert_url": "",
  "client_x509_cert_url": "",
  "universe_domain": ""
}

6. Open the .env file and replace with your postgre password and username

FIREBASE_WEB_API_KEY=YOUR_API_KEY

PostgreSQL 📬

1. Download PostgreSQL from the Postgre Website
2. Run the following command in the terminal to initialize the database.

python src/process.py

Or

python3 src/process.py

3. Open the .env file and replace with your postgre password and username

POSTGRE_PASSWORD=YOUR_PASSWORD
POSTGRE_USER=YOUR_USERNAME

Running the script

Open a terminal and run the following script from the project directory.

cd src
uvicorn api:app --reload

Open another terminal and run the following srcipt from the project directory.

Client 👨‍💻

streamlit run src/client/client.py

Server 📡

streamlit run src/server/sever.py

Screenshots 💻

FastAPI ⚡

FastAPI

Firebase Authentication 🔥

Firebase

Client 👨‍💻

Client_Login Client_Signup Client_Dashboard Client_Request Client_Search

Server 📡

Server_Authentication Server_Dashboard Server_Search

Credits 🫂🙏

Thanks to Paulo Doms's Article which helped me in the SHA-256 Implementation
https://medium.com/@domspaulo/python-implementation-of-sha-256-from-scratch-924f660c5d57

About

AssetBlock is a platform revolutionizing asset management through the power of blockchain technology. With AssetBlock, users can track, transfer, and trade assets seamlessly, unlocking new levels of accessibility and liquidity.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages