Apprendre a faire des noeuds

Comment

Author: Admin | 2025-04-27

Implémentation du protocole Bitcoin en JavaL'objectif de ce projet est la vulgarisation de la blockchain. C'est purement a titre éducatif, cependant l'application peut se connecter au reseau bitcoin en tant que pair (peer).Le noeud crée se connecte en mode noeud complet (Full Node) .......prérequisJava 8+ maven 3.6.2Lancement# mvn clean install# java -jar target/blockchain.jarRecommandationLors du premier lancement,le processus Initial Block Download ou processus de synchronisation permet de recuperer la blockchain (260 Go) actuellement. Cette phase de telechargement est tres long une semaine environ c'est une opération assez lourde qui peut se heurter à quatre limitations de votre machine :Votre connexion Internetpuissance processeurMemoire vive 4 GoDisque Dur (300 Go de libre minimum )Cependant fonctionne avec une Raspeberry Pi 2 model BBlockchain | Taille(octet) | Nom | Type | Description | | ------------ :| ------------:| --------: | ---------------------------: | | 4 | VERSION |int32_t | version du block | | 32 | PREV HASH |char[32] | SHA256(SHA256()) hash du bloc precedent | | 32 | MERKLE ROOT |char[32] | SHA256(SHA256()) merkle root transaction | | 4 | TIME |int32_t | unix epoch generation du bloc | | 4 | DIFFICULTE |int32_t | diffuclté lors de la generation du block | | 4 | NONCE |int32_t | nombre aleatoire |TransactionProtocole peer to peerLe réseau bitcoin a une architecture de réseau pair-à-pair (peer to peer). Les noeuds du réseau s'interconnectent en réseau maillé, les noeuds fournissent et consomment des services a la fois.Au demarrage le noeud doit s'annoncer au réseau. Pour cela il doit trouver la liste des noeuds bitcoinsLe DNS lookUp se fait via l'adresse seed.bitcoin.sipa.be qui est une sorte de DNS des noeuds bitcoins gérée par bitcoin.orgprotocole d'echange entre pairComme une trame IP , les messages envoyés ont un format bien defini par le protocole (cf https://en.bitcoin.it). Tous les messages bitcoins doivent avoir

Add Comment