Prochaine étape de notre tutoriel : Electrum Personal Server.

Jusqu'à maintenant, nous avons :

  • un nœud pour valider la blockchain (Bitcoin Core)
  • une interface pour gérer nos adresses et faire nos transactions (Electrum)
  • un hardware wallet pour protéger nos clés privées (Ledger)

Nous avons un problème : Electrum est un client léger, c'est-à-dire qu'il ne contient pas la blockchain et ne valide pas les transactions. Electrum est incapable de trouver les outputs rattachés aux adresses de votre wallet, ni de construire des transactions car cela nécessite un accès à la blockchain.

Les serveurs Electrum

Lorsque vous lancez Electrum, vous vous connectez en fait à un serveur qui contient un nœud Bitcoin et peut vous fournir les informations dont vous avez besoin. Par défaut Electrum va se connecter automatiquement à un serveur parmi une liste de serveurs disponibles que vous pouvez consulter en cliquant sur le gros point vert en bas à droite de la fenêtre d'Electrum. En décochant la case "Sélectionner un serveur automatiquement", vous pouvez choisir vous-mêmes le serveur auquel vous allez vous connecter.

Le problème, c'est que nous avons installé Bitcoin Core exprès pour être autonome sur le réseau Bitcoin, mais en utilisant Electrum nous ne pouvons pas tirer parti de notre nœud pour obtenir les informations dont Electrum a besoin sur la blockchain !

Une solution serait de faire tourner notre propre serveur Electrum, mais cela est coûteux et demande une machine puissante, car il faut garder en mémoire l'intégralité des outputs non dépensés pour pouvoir répondre rapidement aux requêtes de plusieurs clients.

C'est pourquoi Chris Belcher a développé Electrum Personal Server (Github du projet), qui comme son nom l'indique est un serveur Electrum personnel, donc simplifié et plus léger que vous pouvez installer avec votre propre nœud Bitcoin Core pour remplacer les serveurs Electrum "publics".

 

Récupérer la clé publique principale de votre wallet

Pour suivre notre wallet créé (ou importé) dans Electrum à l'intérieur d'EPS, nous avons besoin de sa clé publique principale (master pubkey).

Aujourd'hui la plupart des wallets sont Hierarchical Deterministic (HD). Ce terme barbare signifie simplement qu'ils créent toujours les mêmes adresses Bitcoin dans le même ordre, ce qui n'était pas le cas des wallets antérieurs qui généraient des adresses aléatoirement.

Pour ce faire, un wallet HD utilise une clé publique "maître" ou principale, dont sont dérivées toutes les adresses. Pour le dire autrement, cela signifie que si deux logiciels ou même deux machines différentes possèdent cette clé publique, ils généreront touts les deux les mêmes adresses dans le même ordre.

EPS utilise cette fonctionnalité pour suivre vos adresses. C'est pourquoi nous allons récupérer la clé publique dans Electrum pour pouvoir la rentrer dans EPS plus tard :

  1. Dans Electrum, cliquez sur le menu "Portefeuille", puis "Informations"
  2. Une nouvelle fenêtre s'ouvre, avec une longue suite de caractères en apparence aléatoire
  3. Copiez cette suite de caractère et collez-la à un endroit où vous pourrez la récupérer facilement

Télécharger Electrum Personal Server

Vous trouverez le fichier Windows de la version 1.7 sur ce lien.

Une fois téléchargé, dézippez-le dans un nouveau dossier, il suffira de l'exécuter en double-cliquant dessus comme n'importe quel programme.

Le fichier de configuration

Je vous conseille tout d'abord de faire une copie du fichier config.ini_sample que vous appellerez tout simplement config.ini.

Ouvrez maintenant config.ini avec le bloc-note et effectuez les modifications suivantes :

  • Dans la section [master-public-key], ajoutez une ligne sous la forme suivante dans laquelle vous allez coller la master pubkey que nous avons mis de côté dans Electrum tout à l'heure : [nom_du_wallet] [espace] = [espace] [master pubkey]

Vous pouvez ajouter autant de master pubkey que vous le souhaitez, faites juste bien attention à bien faire un retour ligne à chaque fois !

  • Dans la section [bitcoin-rpc], ajoutez le chemin vers le datadir de Bitcoin Core (c'est le chemin que vous avez donné lors du premier lancement de Bitcoin Core, voir le tuto), par exemple D:\bitcoin

Normalement, les configurations par défaut devraient suffire pour le reste.

 

Lancer EPS

Cliquez sur le fichier config.ini, gardez la souris appuyée et glissez jusqu'à electrum-personal-server.exe, puis relâchez.

Lors du premier lancement, EPS va d'abord importer toutes les adresses à suivre dans votre nœud et s'arrêter, il faudra ensuite recommencer cette opération pour le lancer.

S'il s'agit d'un wallet sur lequel vous n'avez effectué aucune transaction, c'est tout ce qu'il y a à faire. Sinon, il faudra rescanner la blockchain pour trouver les transactions antérieures.

Si vous avez besoin d'un rescan, faites glisser le fichier de configuration sur electrum-personal-server-rescan.bat.

 

Connexion depuis Electrum

Côté Electrum, nous devons maintenant nous connecter à EPS.

Cliquez sur le gros point vert (ou rouge si vous n'êtes connecté à aucun serveur) en bas à droite de la fenêtre. Dans la nouvelle fenêtre qui s'ouvre, cliquez sur l'onglet "serveur" et décochez la case "Sélectionner un serveur automatiquement" si ce n'est pas déjà fait.

Dans le champ "serveur", ajoutez 127.0.0.1, puis 50002.

Normalement vous devriez être connecté en quelques secondes.

 

J'espère que tout est clair, si ce n'est pas le cas postez un commentaire.

Suite de notre série d'article ci-dessous :

(4/4) La multisignature, un outil indispensable pour la sécurité de vos bitcoins

 

Article précédent :

(2/4) -Installer votre nœud Bitcoin

 

A propos de l'auteur : Sosthene

twitter-soothsayerdatatwitter-soothsayerdata

Je m'appelle Sosthène, quoique d'aucuns pensent que ce ne serait pas mon Vrai Nom. J'observe Bitcoin depuis 2012, et j'ai acquis en quelques années la conviction qu'il s'agissait d'une révolution majeure. J'anime aujourd'hui des événements éducatifs destinés à la communauté Bitcoin francophone, et publie régulièrement des articles de fond sur le sujet.
Tous les articles de Sosthene.

guest
0 Commentaires
Inline Feedbacks
View all comments