Comment créer son nœud Ethereum avec Geth ?

 

Ethereum créer son nœud Geth

 

Ethereum est un système décentralisé qui agit comme un ordinateur mondialisé. Afin de garantir sa décentralisation, et pour des raisons techniques, l’architecture du système Ethereum est une architecture de type peer-to-peer. Ce genre de configuration de réseau informatique s’oppose aux configurations clients-serveurs ou serverless à la mode en ce moment. Le peer-to-peer met en place un réseau dans lequel tous les clients sont des serveurs, et tous les serveurs sont des clients. Un exemple connu est celui des services de téléchargement de médias (parfois illégaux), les torrents. Ces services permettent aux utilisateurs de partager des documents et de les télécharger par le biais d’autres utilisateurs, que l’on peut nommer nœuds. Nous allons voir ensemble ce qu’est précisément un nœud et comment créer son propre nœud Ethereum.

 

noeud-ethereum

 

 

Qu’est-ce qu’un nœud Ethereum ?

Dans le réseau Ethereum, qu’est-ce que l’on appelle un nœud, concrètement ? En fait les nœuds représentent les différents acteurs qui participent au bon fonctionnement du système Ethereum. Les nœuds peuvent prendre de nombreuses formes, et n’ont pas à remplir tous les critères pour se définir comme tel. Laissez-moi vous présenter les différents critères qui existent :

  • En sauvegardant la totalité de la blockchain Ethereum.
  • Par la sauvegarde d’une partie de la blockchain Ethereum.
  • En garantissant la validité des différentes transactions du système Ethereum.

Ces trois critères sont assez simples, et on peut rapidement mieux comprendre qui sont les nœuds qui garantissent le bon fonctionnement du système Ethereum. On retrouve donc les mineurs, qui prêtent de la puissance de calcul afin de valider les transaction du réseau, en échange de paiements en ethers. Mais la sauvegarde partielle, ou totale de la blockchain Ethereum, c’est plus obscur : il suffirait ainsi d’un disque dur et une connexion pour devenir un nœud ? Et bien en quelque sorte oui. Si par exemple vous utilisez un wallet comme Mist pour stocker vos ethers, vous téléchargez la blockchain Ethereum et par définition devenez un nœud de ce réseau.

Toutes les interactions avec la blockchain Ethereum nécessitent l’utilisation d’un nœud faisant partie du réseau. À chaque fois par exemple que vous mettez en place un transfert de token ERC-20, vous allez faire appel à un ou plusieurs nœuds Ethereum. Les mineurs seront rémunérés par les frais de transaction, par l’intermédiaire du fameux gas.

 

Comment créer son nœud Ethereum ?

Bien, ça donne envie de mettre en place notre propre nœud Ethereum avec ces informations. Comme je l’ai expliqué, une simple installation d’un wallet qui télécharge et stocke une partie ou l’entièreté de la blockchain Ethereum suffit pour vous considérer comme le propriétaire d’un nœud Ethereum. Mais ce n’est pas ce qui nous intéresse ici, nous voulons comprendre un peu mieux ce qui se passe lors d’interactions avec la blockchain.

Tout d’abord listons ce dont nous avons besoin pour la mise en place de notre nœud. Il nous faut choisir un réseau sur lequel notre nœud existera, on prendra ici un réseau test d’Ethereum, comme Ropsten ou Rinkeby. Mais nous aurons également besoin de différents outils pour nous aider au niveau du développement, laissez-moi vous présenter Geth que nous allons utiliser.

Geth, ou Go Ethereum, est un client (CLI) qui permet d’être utilisé par tout système d’exploitation, ou sous forme de librairie à la manière de Web3. Go Ethereum est l’une des trois implémentations majeures du protocole Ethereum, les deux autres étant des implémentations en C++ et en Python. Il va nous permettre de prendre part au réseau Ethereum, et nous offrir de nombreuses fonctionnalités. En effet à l’aide de Geth, nous pourrons miner de l’ether certes, mais également de mettre en place des transactions et d’explorer l’historique de la blockchain.

Commençons donc par installer Geth pour pouvoir continuer.

 

Installation pour Windows

Tout d’abord, rendez-vous sur la page de téléchargement de Geth. Ensuite une fois sur le site, téléchargez la dernière version du logiciel pour la plateforme Windows comme sur l’image ci-dessous.

 

telechargement-Geth

 

Maintenant, lancez le logiciel pour l’installer. Attention : Windows peut bloquer l’exécution de ce programme. Une fois installé, le lancement de Geth se fera via console de commande. Si vous n’êtes pas trop habitué à ce genre d’utilisation, c’est une bonne occasion pour en découvrir les subtilités. Lancez le programme Powershield, puis par la suite lancez la commande suivante :

geth

 

Si l’installation s’est bien déroulée, vous devriez avoir en retour quelque chose de ce genre :

console-geth

 

Geth est fonctionnel, il ne va pas tarder à lancer l’importation de la blockchain Ethereum sur votre ordinateur. Plus qu’à attendre ! Le téléchargement de la blockchain n’est pas des plus rapides : comptez entre 3 et 5 heures d’attente, mais vous pouvez prendre ce temps pour vous balader sur le site et me follow sur Twitter.

 

Installation pour Linux

 

Ubuntu

Pour les utilisateurs d’Ubuntu, c’est assez simple : il vous suffit d’utiliser le gestionnaire de paquets apt. Utilisez les commandes suivantes pour pouvoir profiter de l’outil Go Ethereum :

sudo add-apt-repository -y ppa:ethereum/ethereum
sudo apt update
sudo apt install ethereum

 

Fedora

Pour nos amis sur Fedora, c’est un peu plus compliqué, je suis allé me renseigner pour vous. La procédure sera d’installer Go sur votre ordinateur, puis par la suite de compiler directement Geth. Commençons par installer Go, rendez vous directement sur le site de téléchargement de ce dernier, et télécharger la dernière version stable qui a pour extension tar.gz.

Une fois téléchargé, allez à l’emplacement de ce dernier et utilisez cette commande :

tar -C /usr/local -xzf go$VERSION.$OS-$ARCH.tar.gz

 

Puis, ajoutez le chemin à votre répertoire :

export PATH=$PATH:/usr/local/go/bin
dnf install automake make gcc gcc-c++ git gmp-devel kernel-devel

 

Ensuite, récupérez Geth sur leur dépôt Github officiel :

git clone https://github.com/ethereum/go-ethereum

 

Vous pouvez désormais lancer Geth, enfin pas vraiment aussi facilement. Normalement, votre terminal vous indique le chemin qui contient l’accès au programme qui nous intéresse. Mais je vais vous donner les commandes pour ajouter ce dernier dans votre carnet afin de pouvoir lancer plus facilement l’outil Ethereum Go.

export PATH=$PATH:/usr/local/go/bin:$HOME/go-ethereum/build/bin

 

Voilà vous pouvez maintenant lancer Geth avec la simple commande :

geth

 

Utilisation de notre nœud

Une fois Geth installé et la blockchain importée, vous serez propriétaire d’un nœud Ethereum : félicitations ! Mais vous vous en doutez, nous n’allons pas nous arrêter là et allons découvrir ensemble ce que permet ce super outil.

Tout d’abord, regardons rapidement ce que l’on peut faire avec cet outil. Commençons par nous créer une adresse Ethereum. Utilisez une console de programmation sur le système d’exploitation de votre choix. Tant que Geth est installé ça devrait fonctionner.

Utilisez la commande suivante, qui va vous permettre de créer une nouvelle adresse Ethereum :

geth account new

 

Puis indiquez votre mot de passe pour cette adresse, vous devriez voir comme l’image ci-dessous :

 

geth-account-new

 

Voyons si notre adresse a bien été créée, en utilisant cette commande :

geth account list

 

Celle-ci vous retourne le résultat suivant :

geth-account-list

 

Parfait, si vous faites une recherche sur l’adresse que Geth indique sur un site tel que Etherscan, vous verrez que c’est bel et bien une adresse Ethereum, qui ne possède aucun ether. Vous pouvez également vous rendre à l’emplacement indiqué par la seconde commande pour retrouver la clé de votre adresse.

Maintenant, nous sommes réellement sûrs que notre nœud est connecté au réseau Ethereum. Nous avons donc un nœud du réseau Ethereum ! Évidement, ce n’est que le début des festivités pour nous, mais on verra ce que l’on peut en faire par la suite. N’hésitez pas à proposer des idées d’utilisation de notre nœud, ce sera un plaisir d’en discuter avec vous.


Guillaume

Guillaume est un jeune développeur Blockchain, principalement sur Solidity. Il aime partager ses connaissances sur le sujet et il participe activement au rayonnement des aspects techniques de la blockchain au sein de la communauté crypto.

facebook-cryptoast twitter-soothsayerdataProfil linkedinEnvoyer un mail

 



2
Poster un Commentaire

avatar
1 Comment threads
1 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
2 Comment authors
GuillaumeMax Recent comment authors
plus récents plus anciens
Max
Lecteur
Max

En soit ça ne sert à rien d’être un noeud. Mais genre rien du tout.
A part si tu mines, y’a rien à gagner si ce n’est un peu d’insight sur le fonctionnement des noeuds