Altcoins Talks - Cryptocurrency Forum

Local => Forum Crypto-Monnaies => Topic started by: BCNewsfrench on January 27, 2023, 10:15:08 AM

Title: Apprenez à créer un réseau Blockchain privé avec XDC Network Codebase.
Post by: BCNewsfrench on January 27, 2023, 10:15:08 AM
La technologie Blockchain a connu une évolution rapide dans ses fonctionnalités et ses applications depuis l'avènement du Bitcoin. La demande de technologie blockchain a également augmenté dans de nombreux nouveaux domaines. Cela a conduit à la transition d'Internet du web2 au web3. Les entreprises explorent de plus en plus les nombreuses applications de la blockchain et la manière dont elles peuvent résoudre leurs problèmes commerciaux. Maintenant, en parlant des bases, les blockchains sont principalement divisées en deux catégories : les blockchains publiques et privées. Et dernièrement, les blockchains privées sont de plus en plus utilisées pour la mise en œuvre de dApp. Ici, vous pourriez vous demander pourquoi vous ne choisiriez pas une blockchain publique pour la mise en œuvre de votre dApp.

Bien que les blockchains publiques offrent de nombreux avantages par rapport aux autres types de blockchains, elles présentent certains inconvénients, car elles sont plus sensibles aux utilisateurs malveillants car elles se trouvent sur un réseau partagé. Les blockchains privées offrent une sécurité et une protection supplémentaires aux données stockées sur la blockchain, ce qui permet de répondre aux exigences réglementaires. Cela seul pourrait être le principal facteur qui motive de nombreuses personnes à choisir de développer des blockchains privées. De plus, les implémentations de blockchain privées donnent aux entreprises un contrôle total sur qui a accès à la chaîne, quelles fonctions elles peuvent exécuter, comment les dApps peuvent être déployées et maintenues, ainsi que l'emplacement géographique des nœuds.

Aujourd'hui, de plus en plus d'entreprises cherchent à mettre en place des réseaux privés basés sur la base de code du réseau XDC. Bien que le processus puisse sembler intimidant, connaître les étapes à suivre simplifie le processus.

C'est pourquoi nous avons décidé de vous donner un coup de main. Grâce à ce guide étape par étape, vous saurez comment configurer un réseau privé sur la base de code du réseau XDC.

Remarque : cet article vous guide pas à pas dans la configuration d'un réseau privé XinFin avec trois masternodes (ou nœuds de réseau). Cependant, vous pouvez configurer un réseau privé avec jusqu'à 5000 nœuds.
Étapes à suivre lors de la configuration d'un réseau de blockchain privé à l'aide de la base de code du réseau XDC
#1. Installer Golang
Téléchargez et installez Golang en suivant les étapes :
i) Téléchargez le programme d'installation de Go pour Windows , Linux ou Mac .
ii) Installez Go sur votre système informatique en suivant les étapes spécifiées, et vous êtes configuré.
Pour plus d'informations, reportez-vous à la page d'installation de GO .
#2. Définir les variables d'environnement
i) set GOROOT=$HOME/usr/local/go
ii) set GOPATH=$HOME/go
#3. Préparer le logiciel client réseau XinFin
Téléchargez le code source et compilez-le ici.
Exécutez les commandes :
i) git clone github.com/XinFinOrg/XDPoSChain
ii) git checkout v1.4.4
iii) make all
#4. Personnaliser le bloc Genesis à l'aide de l'outil Puppeth
Exécutez la commande Puppeth et répondez aux questions sur votre chaîne privée comme suit :

./Puppeth

i) Définissez le nom de la chaîne comme XDPoS
(https://miro.medium.com/max/1100/0*8MM2PAGxJaEABHQe)


ii) Entrez 2 pour configurer la nouvelle genèse
(https://miro.medium.com/max/1100/0*-63zsA2CyLMD6vNa)


iii) Entrez 3 pour sélectionner XDPoS - consensus de preuve de participation déléguée
(https://miro.medium.com/max/1100/0*vki7en4peJ5WpIyR)


iv) Définir le temps de blocage (par défaut 2 secondes)
(https://miro.medium.com/max/1100/0*Ggke1kG0OsI3wMEg)



v) Définir une récompense pour chaque époque
(https://miro.medium.com/max/1100/0*kp1eMOXX2SekHYnC)


vi) Définir les adresses comme étant les masternodes initiaux
(https://miro.medium.com/max/1100/0*OqqlKlZ15mfyvpoK)


vii) Entrez l'adresse des signataires.
(https://miro.medium.com/max/1100/0*5cuZAT08ZT2LxQGl)


viii) Définissez le nombre de blocs de chaque époque (900 par défaut).

(Remarque : si vous souhaitez personnaliser le numéro d'époque, mettez à jour le code ici : common/constants.go:14 EpocBlockRandomize = 900)
(https://miro.medium.com/max/1100/0*v8z2t-hiB3jnjNIx)


ix) Définir l'écart

(C'est-à-dire : combien de blocs sont nécessaires pour préparer un nouvel ensemble de masternodes avant le point de contrôle ?)
L'écart suggéré = 5
(https://miro.medium.com/max/1100/0*GoCw-i-bnXHk9avq)


x) Entrez l'adresse de la fondation dans laquelle vous détenez la clé privée
(https://miro.medium.com/max/1100/0*Bl4jk6XHdyhqcHOy)


xi) Entrez les comptes avec lesquels vous contrôlez les clés privées pour déverrouiller le portefeuille MultiSig
(https://miro.medium.com/max/1100/0*uTMhO5oxJ2pD3nH7)


xii) Entrez le nombre de Foundation MultiSignWallet requis pour confirmer tx default=2
(https://miro.medium.com/max/1100/0*Xhd0HXmcPERoFgXo)


xiii) Entrez les comptes autorisés à confirmer dans Team MultiSignWallet
(https://miro.medium.com/max/1100/0*O6yqZjMWZjMjS0za)


xv) Entrez le nombre de Team MultiSignWallet qui sont nécessaires pour confirmer tx dans Multisig Wallet (par défaut = 2)
(https://miro.medium.com/max/1100/0*-aKWegQwYeBS4_EI)


xvi) Entrez l'adresse du portefeuille d'échange pour le fonds 55 millions XDC
(https://miro.medium.com/max/1100/0*c0x_UdmYSW-1SXY4)


xvii) Entrez l'adresse qui doit être préfinancée
(https://miro.medium.com/max/1100/0*WdEPVkitezV532q_)


xviii) Entrez l'identifiant du réseau
(https://miro.medium.com/max/1100/0*71CWtUolnvleuPuf)


xix) Exportez le fichier genesis en :
Sélectionner 2 pour gérer la genèse existante.
Sélectionner 2 pour exporter la configuration de Genesis
Entrez le nom du fichier Genesis --- XDPOS.json
(https://miro.medium.com/max/1100/0*GECaxhgN5NFiqjv0)



xx) Appuyez sur Control(CtrL) + C pour quitter.
#5. Configurer le nœud de démarrage
i) Initialisez la clé bootnode en saisissant la commande :

./bootnode -genkey bootnode.key

ii) Puis lancez bootnode avec la commande :

./bootnode -nodekey ./bootnode.key

iii) Copiez les informations du bootnode affichées :

auto=enode://c1a13b173d61097ba03c68346c0c761f75095efabe170a55cec427bca83af3c81529b5e6d599c3d594761ea1fac96d291471c805045db385c4c734bc979f6:3bd@3[:1]


#6. Démarrer le Masternode
Suivez les étapes suivantes pour démarrer le masternode :
je). Clonez le référentiel de configuration DPoS local à partir de :
              github.com/XinFinOrg/Local_DPoS_Setup
ii). Remplacez le fichier genesis par le vôtre.
iii). Saisissez la clé du nœud de démarrage.
iv). Modifiez le fichier run.sh en changeant l'identifiant du réseau et en remplaçant l'enode qui a été généré précédemment.
v). Entrez la clé privée des 3 masternodes dans le fichier .env, le masternode et la clé privée des signataires qui ont été mentionnés dans le fichier genesis.
vi). Démarrez votre masternode avec la commande :
  ./bash run.sh

Pour vous aider à comprendre les drapeaux dans le fichier run.sh , voici plusieurs explications.

je). Verbosité --- Le niveau de journalisation varie de 1 à 5. Et, dans ce cas, nous utilisons 4 pour les messages de débogage
ii). Datadir --- C'est le chemin vers votre répertoire de données créé ci-dessus.
iii). Keystore --- C'est le chemin vers le Keystore de votre compte créé ci-dessus.
iv). Identité --- C'est le nom complet de votre nœud.
v). Mot de passe --- C'est le mot de passe de votre compte.
vi). Networkid --- Il s'agit de l'ID de réseau testnet de XinFin.
vii) Port --- Port d'écoute du nœud complet de votre entreprise (30303 par défaut)
viii). rpc, --rpccorsdomain, --rpcaddr, --rpcport, --rpcvhosts ---Votre nœud complet acceptera les requêtes RPC à 8545 TCP.
ix). ws, --wsaddr, --wsport, --wsorigins ---Votre nœud complet acceptera les requêtes Websocket à 8546 TCP.
X). Le mien --- Cela implique que votre nœud complet veut s'inscrire pour être candidat à la sélection du masternode.
xi).Gasprice ---C'est le prix minimal du gaz à accepter pour miner une transaction.
xii). Targetgaslimit --- La limite de gaz cible définit le plancher de gaz cible artificiel pour les blocs à exploiter (par défaut : 4712388)
xiii). Bootnode --- Les informations de Bootnode aident à la découverte d'autres nœuds du réseau
XV). Gcmode --- C'est le mode de récupération de place de la blockchain ("complet", "archive")

Et, pour voir toutes les utilisations des drapeaux, utilisez la commande : XDC  - -  help
#7. Vérifiez votre chaîne privée
Pour vérifier si votre chaîne passe le premier point de contrôle, suivez les étapes suivantes.
je). Connecter RPC
eth.getBlock(0)
eth.getBlock(1)

ii). Vérifiez les points de contrôle.
iii) Attendez 30 minutes pour voir si votre chaîne passe le premier point de contrôle.
Outils utiles à adopter :
Certains outils que vous pouvez utiliser pour exécuter différentes fonctions du réseau blockchain privé incluent :

je). XDCPay
Cette extension permet d'accéder aux applications distribuées compatibles XDPoS de XDC, ou "Dapps" dans votre navigateur. Avec l'extension, vous injectez l'API web3 XDPoS de XDC dans le contexte javascript de chaque site Web, aidant Dapps à lire à partir de la blockchain.

ii) XDC Remix
Avec l'environnement de développement intégré basé sur un navigateur Web, vous pouvez écrire, compiler, déployer et exécuter des contrats intelligents basés sur Solidity sur le réseau XDC.


Pour le support technique, connectons-nous via les communautés de médias sociaux de XDC sur Slack , Twitter et Discord.