Skip to content

Une application qui implémente les principales fonctions de Blockchain / An application that implements the main functions of Blockchain

License

Notifications You must be signed in to change notification settings

iliyasalve/Mini-Blockchain

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Mini-Blockchain

Description du projet

Une application qui implémente les principales fonctions de Blockchain.

Principales fonctionnalités de l'application :

  • Exploitation minière de pièces ;

  • Effectuer des transactions entre utilisateurs ;

  • Affichage du réseau blockchain complet stocké par l'utilisateur dans le noeud ;

  • Vérifier si le réseau Blockchain est valide (personne n'a tenté de compromettre une transaction) ;

  • Ajout d'autres nœuds à la liste de l'utilisateur pour les futures transactions entre nœuds ;

  • Résoudre les conflits dans les données stockées par différents nœuds afin de stocker la même version du réseau Blockchain ;

  • Consulter les pièces de coins d'un utilisateur.

Comment démarrer un projet

Pour réussir le lancement d'un projet, vous devez suivre les étapes suivantes dans l'ordre :

  1. Lancer le noeud

Pour démarrer un nœud, utilisez la console et entrez une commande au format suivant :

python noeud.py filename port

où,

  • port : numéro de port, par exemple 80

  • filename: le nom du fichier où seront stockées les clés privées et publiques

Remarque : si vous le souhaitez, vous pouvez exécuter plusieurs nœuds à l'aide de plusieurs consoles.

  1. Lancez l'application Pour exécuter l'application, utilisez la console et entrez une commande au format suivant :

application python.py

Remarques

Tip

Le côté serveur de l'application est écrit à l'aide de la bibliothèque Flask.

Important

Toutes les bibliothèques nécessaires qui nécessitent une installation sont stockées dans le fichier requirements.txt

Note

Ce code s'est exécuté et a fonctionné correctement sous Windows 10 et Python version 3.12.1

Warning

Ce projet a été créé pour se familiariser avec les principes de fonctionnement du réseau Blockchain et son utilisation pour des projets réels est fortement déconseillée.


Project Description

An application that implements the main functions of Blockchain.

Main features of the application:

  • Coin Mining;

  • Making transactions between users;

  • Showing the complete blockchain network stored by the user in the node;

  • Checking whether the Blockchain network is valid (no one tried to compromise any transaction);

  • Adding other nodes to the user's list for future transactions between nodes;

  • Resolving conflicts in data stored by different nodes in order to store the same version of the Blockchain network;

  • Viewing a user's coins.

How to start a project

To successfully launch a project, you need to take the following steps sequentially:

  1. Launch Node

To start a node, use the console and enter a command in the following format:

python noeud.py port filename

Or,

  • port: port number, for example 80
  • filename: the name of the file where the private and public keys will be stored

Note: if desired, you can run multiple nodes using multiple consoles

  1. Launch the application

To run the application, use the console and enter a command in the following format:

python application.py

Notes

Tip

The server side of the application is written using the Flask library.

Important

All necessary libraries that require installation are stored in the requirements.txt file.

Note

This code ran and worked correctly on Windows 10 and Python version 3.12.1

Warning

This project was created to get acquainted with the principles of operation of the Blockchain network and it is highly not recommended for use for real projects.

About

Une application qui implémente les principales fonctions de Blockchain / An application that implements the main functions of Blockchain

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages