Afin de démocratiser le staking solo sur Ethereum (ETH), la DAO de Lido a lancé une nouvelle fonctionnalité permettant de déployer son validateur à prix réduit. Comment cela fonctionne-t-il ?
Lâarticle Ethereum : Lido lance un module de staking pour dĂ©ployer son nĆud validateur dĂšs 1,3 ETH est apparu en premier sur Cryptoast.
La blockchain Bitcoin a rĂ©cemment connu une flambĂ©e des frais de transaction avec le lancement de Babylon, un protocole de staking de BTC. Ce dernier permet aux blockchains en preuve dâenjeu (PoS) de bĂ©nĂ©ficier de la sĂ©curitĂ© de Bitcoin, mais soulĂšve des questions quant Ă ses implications et ses risques. Voici tout ce que vous devez savoir.
Lâarticle Babylon et staking de Bitcoin : RĂ©volution ou arnaque ? est apparu en premier sur Cryptoast.
Suite aux critiques de sa communauté, le protocole de restaking EigenLayer a finalement revu le systÚme d'allocation de son airdrop de tokens EIGEN. Quels sont les changements prévus ?
Lâarticle EigenLayer distribuera 100 tokens EIGEN de plus Ă chaque adresse Ă©ligible Ă son airdrop est apparu en premier sur Cryptoast.
Eigenpie, un protocole de restaking d'Ether (ETH), élargit son offre pour attirer les institutionnels. Baptisée Eigenpie Entreprise, cette solution est disponible à travers 2 versions : la premiÚre met l'accent sur la sécurité pour permettre aux institutions de s'ouvrir à la DeFi, tandis que la seconde offre plus de flexibilité, mais nécessite une gestion plus experte des risques. Tour d'horizon.
Lâarticle Liquid Restaking d'Ether : Eigenpie dĂ©voile sa solution dĂ©diĂ©e aux institutionnels est apparu en premier sur Cryptoast.
Lido, leader historique du staking dâEther (ETH), voit sa part de marchĂ© chuter sous les 30 %. Cette Ă©volution est due Ă lâĂ©mergence de certains acteurs sur le marchĂ©, comme Swell et Ether.fi, ainsi quâĂ l'essor du staking non-custodial.
Lâarticle Staking Ethereum : Lido voit sa part de marchĂ© chuter sous les 30 % est apparu en premier sur Cryptoast.
La dĂ©centralisation du rĂ©seau Ethereum ne cesse de sâĂ©roder depuis le passage en Proof of Stake. Vitalik Buterin propose dâaggraver les choses
Lâarticle Ethereum â Plus de centralisation en vue est apparu en premier sur Cointribune.
La mise à jour Shapella, également connue sous le nom EIP-4895, facilite les retraits de jalonnement des validateurs sur Ethereum. Désactivée en septembre 2022 lors du passage au proof of stake (PoS), cette fonctionnalité avait été relancée aprÚs sa mise à niveau en avril 2023. Une opération qui a eu un impact positif sur le staking sur Ethereum.
Lâarticle Ethereum : Le staking explose suite Ă la derniĂšre mise Ă jour ! est apparu en premier sur Cointribune.
En raison de plusieurs Ă©vĂ©nements majeurs concernant la mise en place dâun ETF Bitcoin au comptant, le secteur crypto a bĂ©nĂ©ficiĂ© dâune forte progression au cours du troisiĂšme trimestre 2023. Cette Ă©volution positive sâest Ă©galement rĂ©percutĂ©e sur le nombre de jetons placĂ©s dans des protocoles de staking. Au cours de cet article, nous allons Ă©tudier en dĂ©tail les diffĂ©rents rĂ©seaux qui profitent de ce phĂ©nomĂšne.
GrĂące Ă la publication dâune nouvelle Ă©tude au sujet du staking au sein de lâĂ©cosystĂšme crypto, Aptos et Sui sont apparus comme les altcoins les plus stakĂ©s sur la base du pourcentage de lâoffre en circulation ayant Ă©tĂ© bloquĂ©e.
En outre, ce rapport souligne que le taux de staking moyen pour les 35 altcoins les plus importants de lâĂ©cosystĂšme a atteint un niveau record de 52,4 % dans le courant du troisiĂšme trimestre 2023. Il apparait comme crucial de noter que ce niveau correspond Ă une progression dâun peu plus de 49,3 % par rapport aux donnĂ©es du second trimestre 2023.
APTOS is now available for staking on Coinbase Prime: https://t.co/zleJ9OF1h1
Availability of this asset may be restricted based on custodian entity and customer jurisdiction. https://t.co/TwCWUHoIuf pic.twitter.com/G2AAYFAWoc
â Coinbase Institutional
(@CoinbaseInsto) October 5, 2023
Pour la période actuelle, on constate que les blockchains Aptos et Sui se sont positionnées aux premiÚres places du classement, avec un pourcentage de jetons placés en staking qui était respectivement de 84,1 % et 80,5 %. Par ailleurs, ces derniÚres étaient talonnées par les blockchains Mina, Solana, et Cosmos.
Pour rappel, le principe du staking consiste Ă dĂ©tenir des fonds dans un portefeuille crypto pour sĂ©curiser les opĂ©rations du rĂ©seau dâune blockchain. Il est utilisĂ© dans les rĂ©seaux disposant dâun systĂšme Proof of Stake (PoS) et remplace le travail de minage qui est traditionnellement mis en place dans les blockchains Proof of Work (PoW) comme le Bitcoin. En clair, il sâagit dâun moyen pour les utilisateurs de gĂ©nĂ©rer un flux de revenus passifs et dâobtenir des rĂ©compenses en dĂ©tenant certaines cryptomonnaies.
Toujours selon le rapport, on constate une dĂ©prĂ©ciation minimale du rendement du staking moyen sur lâensemble du paysage crypto. Celle-ci a enregistrĂ© une baisse de 0,4 % de façon Ă chuter Ă 10,2 %. Ă noter que cette chute sâinscrit dans une dynamique orientĂ©e vers le sud depuis le mois de mars 2022. Ă ce moment, le taux de rendement moyen se trouvait Ă prĂšs de 15,4 %.
Parmi les 10 premiÚres cryptomonnaies par capitalisation boursiÚre, seuls Polkadot et Cosmos offrent des rendements supérieurs à 7,5 %.
Voici la liste complÚte des cryptomonnaies ayant le rendement le plus élevé au troisiÚme trimestre 2023 :
Cryptomonnaie   | Symbole   | Taux de rendement   |
Liverpeer | LPT | 28.70% |
Secret | SCRT | 25.50% |
Audius | AUDIO | 19.20% |
Cosmos | ATOM | 18.90% |
Kava | KAVA | 18.90% |
Injective | INJ | 15.90% |
Polkadot | DOT | 15.10% |
Mina | MINA | 14.80% |
Thorchain | RUNE | 11.50% |
Harmony | ONE | 11.00% |
Skale | SKL | 10.90% |
Osmosis | OSMO | 10.60% |
Flow | FLOW | 9.80% |
Stacks | STX | 9% |
Decred | DCR | 9.00% |
Radix | XRD | 8.60% |
NEAR | NEAR | 8.30% |
Oasis | ROSE | 8.00% |
Kusama | KSM | 8.00% |
Avalanche | AVAX | 7.90% |
MultiversX | EGLD | 7.90% |
Solana | SOL | 7.60% |
Algorand | ALGO | 7.50% |
Aptos | APT | 7.30% |
The Graph | GRT | 6.40% |
Tezos | XTZ | 6.20% |
Fantom | FTM | 6.10% |
Celo | CELO | 6.00% |
Dash | DASH | 5.80% |
SEI | SEI | 5.50% |
Polygon | MATIC | 5.20% |
Sui | SUI | 4.90% |
Ethereum | ETH | 4.20% |
TRON | TRX | 3.90% |
Cardano | ADA | 3.30% |
Source : Beincrypto
Sur le mĂȘme sujet :
The post Voici les altcoins les plus stakés au troisiÚme trimestre 2023 appeared first on Cryptonews France.
Pour mieux consolider sa position par rapport Ă dâautres blockchains concurrentes, telles Solana, Polygon a procĂ©dĂ© Ă des mises Ă jour de son staking.
Lâarticle Tout savoir sur la derniĂšre mise Ă jour de staking de Polygon (MATIC) est apparu en premier sur Cointribune.
English version available here.
TLDR; Ethereum a fusionnĂ© avec succĂšs. Une prouesse technique qui permet au rĂ©seau de fonctionner en Proof-Of-Stake et ainsi rĂ©duire de 99.95% sa consommation dâĂ©lectricitĂ© et son Ă©mission dâETH de 90%, tout en rendant le rĂ©seau plus sĂ©curisĂ© et dĂ©centralisĂ©. Nous revenons sur ce quâest le Merge, son dĂ©roulement, ses bĂ©nĂ©fices et les prochaines Ă©tapes de la feuille de route dâEthereum.
Merci à Philippe Honigman, Bettina Boon Falleur, Jean Zundel, Jimmy Ragosa et Simon Polrot pour la révision.
Le Merge correspond Ă la fusion des chaĂźnes dâEthereum qui sâest opĂ©rĂ©e le 15 septembre 2022.
La blockchain Ethereum comportait Ă sa crĂ©ation une seule chaĂźne qui fonctionnait Ă lâaide dâun mĂ©canisme de consensus associĂ© au Proof-of-Work (PoW ou Preuve de Travail).Â
En dĂ©cembre 2020, en vue du passage au Proof-Of-Stake (PoS ou Preuve dâEnjeu) anticipĂ© depuis sa crĂ©ation, une autre chaĂźne Ă Ă©tĂ© lancĂ©e: la âBeacon Chainâ (chaine dâaccroche, chaĂźne phare, chaĂźne balise) aussi appelĂ©e la « Consensus Layer ».Â
Depuis le lancement de la Beacon Chain, deux chaĂźnes tournaient en parallĂšle :
Le Merge marque la fusion de ces deux chaĂźnes et le changement de mĂ©canisme de consensus dâEthereum avec la fin du PoW et le passage au PoS. Cette fusion entraĂźne plusieurs amĂ©liorations telles que la rĂ©duction de consommation dâĂ©nergie de 99.95%, et prĂ©pare le terrain pour les mises Ă jour Ă venir de scalabilitĂ© qui deviendront plus faciles Ă implĂ©menter.
La TTD (Terminal Total Difficulty, qui reprĂ©sente schĂ©matiquement la puissance de calcul globale dĂ©ployĂ©e par les mineurs depuis la crĂ©ation dâEthereum â plus de dĂ©tails dans cet article), dĂ©terminĂ© par les Core Devs le 18 AoĂ»t 2022, a permis dâestimer la chronologie du Merge prĂ©vu entre le 10 et le 20 septembre 2022.
Nous suivions les prévisions du TTD via https://bordel.wtf (en référence à la communauté de hackers tchÚques du Paralelni Polis), mais un grand nombre de trackers étaient disponibles (cf. liste).
Le TTD à finalement été atteint le 15 septembre 2022 à 8h42:59 au block #15537394
Si ces termes vous sont Ă©trangers, pas dâinquiĂ©tude, nous les dĂ©taillons dans la suite de lâarticle.
Deux mises à jour critiques ont précédé le Merge :
Passons en revue quelques éléments primordiaux du PoS :
Le PoS ou le PoW, le mĂ©canisme anti-Sybil associĂ© au consensus des blockchains, est central Ă leur fonctionnement : câest ce qui permet de dĂ©terminer leur Ă©tat, câest-Ă -dire dâorganiser la blockchain en produisant ses blocs, qui contiennent des transactions.
Contrairement au PoW qui fonctionne avec des mineurs, le PoS fait appel Ă des validateurs pour dĂ©terminer lâĂ©tat de la blockchain.
Chaque bloc (regroupement de transactions dâutilisateurs) de la blockchain Ethereum est soumis Ă un groupe de validateurs choisis alĂ©atoirement, qui vĂ©rifient les transactions en les rĂ©-exĂ©cutant, vĂ©rifient leur signature et soumettent au rĂ©seau leur vote (sous forme dâattestations) afin de proposer la validation des blocs. Le temps de validation des blocs sur Ethereum sous PoW Ă©tait de 13/14 secondes. Maintenant, le temps par bloc est dĂ©terminĂ© par « slots » fixes de 12s, 1 bloc par slot, validĂ© par un validateur choisi alĂ©atoirement. Plusieurs slots forment une epoch, une Ă©poque. 2 epochs sont nĂ©cessaires afin que les blocs soient considĂ©rĂ©s comme finaux et irrĂ©versibles.
Les validateurs sont rĂ©munĂ©rĂ©s pour plusieurs Ă©lĂ©ments :Â
âą Lorsquâils sont choisis alĂ©atoirement pour proposer des blocs
âą Lorsquâils Ă©mettent des attestations, correspondant Ă un vote du validateur sur ce que reprĂ©sente lâĂ©tat de la chaĂźne
âą Via les tips (pourboires) ou frais supplĂ©mentaires payĂ©s par les utilisateurs (instaurĂ©s grĂące Ă lâEIP-1559)
Le PoS engendre un changement pour les mineurs/validateurs. Il nây a pas de changement majeur pour les utilisateurs ni pour les dĂ©veloppeurs dâapplications, ni mĂȘme dâinterruption du rĂ©seau.
Pour en savoir plus sur le mĂ©canisme de consensus de PoS, nous lâavons expliquĂ© en dĂ©tail ici : https://www.ethereum-france.com/le-mecanisme-de-consensus-dethereum-apres-la-fusion/Â
Plus dâinformations via le site de la fondation.
Aussi, lâaccĂšs aux ressources nĂ©cessaires Ă la validation (ETH) est accessible Ă tous, de la mĂȘme maniĂšre, contrairement au matĂ©riel informatique et Ă©lectricitĂ© du PoW.
ModĂšles de Consensus | POW (Pre-merge) | POS (Post-merge) |
Acteurs | Mineurs | Validateurs |
Hardware | Mining rigs | Ordinateur |
Ressource | Electricité | ETH |
Revenus | Exponentiels (Ăconomie dâĂ©chelle) | LinĂ©aires (IncrĂ©mental) |
FinalitĂ©* | Probabilistique â6min | Explicite >12.8min |
Temps de validation des blocs | â13s | =12s |
ContrĂŽle complet** | 51% (>Âœ) | >66% (>â ) |
*https://hackmd.io/@prysmaticlabs/finality
**https://medium.com/@Beosin_com/ethereum-pos-and-pow-security-fd52a6153b1e
La scalabilitĂ© dâEthereum est au centre des discussions depuis sa crĂ©ation et le prochain challenge des core devs.
Le Merge a dâailleurs pu ĂȘtre priorisĂ© grĂące Ă lâĂ©mergence des solutions de scaling telles que les Rollups qui ont dĂ©sengorgĂ© la L1 dâEthereum et permis au Merge dâĂ©merger ( ) en prioritĂ©. Câest autour des Rollups que se construit la feuille de route dâEthereum depuis des annĂ©es ; Vitalik parlait en 2020 de ârollup-centric ethereum roadmapâ. Plus dâinformations sur les rollups : https://www.ethereum-france.com/un-guide-incomplet-des-rollups/.
Le Merge reprĂ©sentait une Ă©tape majeure. Par la suite, les core devs vont pouvoir sâattaquer aux prochaines grandes Ă©tapes de la roadmap dâEthereum, Ă savoir :
Comme le montre ce schéma (publié par Vitalik en Décembre 2021, pas à jour), le développement des grandes étapes de la roadmap a avancé en parallÚle.
Nous nous attendons à une cadence de mise à jour soutenue dans les mois et années à venir.
Nous suivrons cela de prĂšs.Â
En tant quâutilisateur, comment cela mâimpacte t-il ? Que dois-je faire ?
Rien ! Les applications sâen chargent pour vous.Â
Vous aurez les mĂȘmes donnĂ©es, tokens etc. au mĂȘme endroit.
Le modĂšle de pricing de gas reste Ă©galement le mĂȘme, câest-Ă -dire celui de lâEIP-1559.
Est-ce que le Merge amĂ©liore la scalabilitĂ© dâEthereum?
Pas immĂ©diatement (mĂȘme si les blocs se valident 1 seconde plus rapidement en moyenne). Le merge apporte cependant des changements critiques aux futures mises Ă jour de scalabilitĂ© dâEthereum, notamment le sharding. Les frais de gas et la capacitĂ© dâexĂ©cution des transactions restent les mĂȘmes.
Comment devenir validateur ?
Il existe 3 maniĂšres de participer Ă la validation dâEthereum sous PoS, chacun reprĂ©sentant un compromis. La fondation a fait de trĂšs bons guides que nous vous invitons Ă suivre.
Si lâinvestissement initial du solo staking de 32 ETH est consĂ©quent, cela reste le moyen le plus trustless et sĂ©curisĂ© pour staker ses ETH.
A noter : ces ETH sont bloquĂ©s jusquâĂ ce quâune nouvelle mise Ă jour permette de les dĂ©bloquer (la Shanghai upgrade). Les validateurs reçoivent quand mĂȘme une partie de leurs rĂ©compenses sur une adresse mainnet dĂšs maintenant.
Quel avenir pour EthPoW/ETHW?
slot
: le numéro du blocproposer_index
: le validateur qui le proposeparent_root
: le hash du précédent blocstate_root
: le hash dâun Merkle Root qui stocke lâĂ©tat de la BeaconChain (BeaconState)randao_reveal
: un nombre gĂ©nĂ©rĂ© de maniĂšre alĂ©atoire au niveau du protocole, proposĂ© grĂące Ă plusieurs proposants de bloc dâune Ă©poque.graffiti
: du texte de 32-byte (optionnel) soumis par les proposeurs de blocsignature
: la signature du validateur qui propose le bloc, qui permet de le responsabiliser : le rĂ©munĂšre sâil se comporte bien, le punit le cas inverse.difficulty
: passe à 0, le PoS ne nécessite pas ce paramÚtre qui correspondait à la puissance de hachage nécessaire aux mineurs afin de miner le bloc.sha3Uncles
et uncles
: disparaissent car le PoS ne produit pas naturellement de uncle blocks, ces blocs minĂ©s mais dĂ©passĂ©s par une autre branche.via https://ethereum.org/en/developers/docs/consensus-mechanisms/pos/attestationsÂ
Article de foobar/The Variable publié sur https://0xfoobar.substack.com/p/ethereum-proof-of-stake, traduit par Jean Zundel
Pour Ethereum, le passage au PoS ou preuve dâenjeu reprĂ©sente un changement majeur, tellement fondamental et aux implications tellement profondes quâil a fallu 5 ans pour mettre en Ćuvre le Merge, la fusion entre la couche dâexĂ©cution dâETH1 et la couche de consensus dâETH2. Exit le consensus Nakamoto, câest un lointain dĂ©rivĂ© du consensus dit «classique» (depuis les premiers travaux de Leslie Lamport et al.) qui a Ă©tĂ© choisi en lâaugmentant entre autres dâun roulement des validateurs actifs choisis alĂ©atoirement parmi toute la population des stakers, des «miseurs». Cet article analyse le fonctionnement du consensus dâETH 2.0 dans le contexte du PoS (stricto sensu, PoS, PoW et PoA sont en fait des mĂ©canismes anti-Sybil) et les parades contre les attaques possibles, ainsi que la controverse que ce choix engendre.
Bienvenue ! Dans cet article, nous allons nous plonger dans les domaines suivants :
Un mĂ©canisme de consensus dĂ©finit la maniĂšre dont un rĂ©seau distribuĂ© de nĆuds dĂ©cide de lâĂ©tat courant du rĂ©seau, des blocs qui se trouvent dans la chaĂźne ainsi que de leur ordre. La production de blocs est un terme gĂ©nĂ©rique qui dĂ©crit lâaction de chercher dans la mempool pour rĂ©cupĂ©rer les transactions qui sây trouvent en attente, les ordonner en blocs et attacher le nouveau bloc Ă la blockchain existante. Il existe trois catĂ©gories courantes de mĂ©canismes de consensus : la preuve dâenjeu, la preuve de travail et la preuve dâautoritĂ©.
Le PoS a Ă©tĂ© annoncĂ©e pour Ethereum il y a bien des annĂ©es dĂ©jĂ , mais avec la beacon chain ou chaĂźne phare fonctionnant depuis 18 mois dâaffilĂ©e et des merges ou fusions rĂ©ussies sur plusieurs rĂ©seaux de test, lâimplĂ©mentation initiale est quasiment finalisĂ©e. Je me concentrerai sur les spĂ©cificitĂ©s du fonctionnement de la chaĂźne PoS en rĂ©gime de croisiĂšre plutĂŽt que de me perdre dans les dĂ©tails de lâimplĂ©mentation de la fusion.
Il y a environ 400 000 validateurs sur la beacon chain et vous pouvez suivre en direct les statistiques et les blocs ici. Un validateur fait rĂ©fĂ©rence Ă un dĂ©pĂŽt spĂ©cifique de 32 eth dans le contrat de dĂ©pĂŽt de la beacon chain sur le mainnet ; un utilisateur peut gĂ©rer plusieurs validateurs. Les retraits de blocs ne sont pas activĂ©s aujourdâhui, ni au moment de la Fusion, mais seront activĂ©s lors du hard fork Shanghai qui suivra. Un slot se produit toutes les 12 secondes, et un validateur et un seul est choisi au hasard pour soumettre un bloc dans le slot. Une Ă©poque (epoch) est composĂ©e de 32 slots, soit 6,4 minutes. Si un validateur est hors ligne et ne propose pas de bloc dans son slot, ce slot est laissĂ© vide. Ainsi, les temps de bloc Ethereum passeront dâune distribution de Poisson avec un temps de bloc moyen de 13 secondes, Ă exactement 12 secondes avec des slots vides occasionnels. Le premier bloc de chaque Ă©poque est traitĂ© comme le bloc de contrĂŽle.
Si un seul validateur propose un bloc dans chaque slot, que font les autres en attendant leur tour ? Ils crĂ©ent des attestations, qui sont des votes signĂ©s dĂ©crivant ce quâils pensent ĂȘtre head (tĂȘte) actuelle de la chaĂźne, et des liens vers un bloc de contrĂŽle parent. Comme les attestations sont signĂ©es de maniĂšre cryptographique par un validateur spĂ©cifique, les validateurs peuvent devoir rendre des comptes sâils sont Ă©quivoques, sâils votent pour deux blocs Ă la mĂȘme hauteur. Les frais de communication et de stockage pour 400 000 attestations sont extrĂȘmement Ă©levĂ©s, de sorte quâĂ chaque Ă©poque, chaque validateur nâest affectĂ© quâĂ lâattestation dâun seul emplacement. Les validateurs de chaque crĂ©neau sont affectĂ©s Ă des comitĂ©s, qui sont des regroupements supplĂ©mentaires dâau moins 128 validateurs. Les agrĂ©gateurs combinent ensuite les signatures de plusieurs validateurs Ă lâaide dâune agrĂ©gation BLS avant de ne stocker que les donnĂ©es de synthĂšse dans le bloc.
LâalĂ©a est gĂ©nĂ©rĂ© par la RANDAO, une balise dâaccumulation dâalĂ©as (dans ce contexte, une balise, beacon, est un service) oĂč les proposants de blocs rĂ©vĂšlent une signature BLS du numĂ©ro de lâĂ©poque actuelle signĂ©e par la clĂ© privĂ©e de leur validateur. Cela signifie quâil y a trĂšs peu de choix pour lâalĂ©a gĂ©nĂ©rĂ©Â ; les validateurs peuvent soit contribuer une valeur unique vĂ©rifiable, soit voir leur bloc complĂštement ignorĂ©. La signature de hachage est mĂ©langĂ©e Ă la RANDAO de la chaĂźne par XOR, qui offre une amĂ©lioration supplĂ©mentaire marginale de la sĂ©curitĂ© grĂące Ă sa commutativitĂ©. Ben Edgington fournit plus de dĂ©tails sur cette spĂ©cification.
Une supermajoritĂ© (2/3) de validateurs est nĂ©cessaire pour finaliser un bloc. En cas de partage du rĂ©seau Ă 50-50, les blocs cessent dâĂȘtre finalisĂ©s et les rĂ©compenses dâattestation sâarrĂȘtent. Les validateurs non participants laissent lentement fuiter de lâenjeu du fait de leur inactivitĂ© jusquâĂ ce que les validateurs en ligne obtiennent Ă nouveau une supermajoritĂ©. Il sâagit du mĂ©canisme «dâauto-rĂ©paration» qui permet Ă la fois la sĂ©curitĂ© et la vitalitĂ© (liveness).
Les Ă©poques sont des groupes de 32 slots, et elles passent par trois Ă©tapes : proposĂ©e, justifiĂ©e, finalisĂ©e. Une fois quâune supermajoritĂ©, soit les deux tiers des validateurs actuels, atteste une Ă©poque, celle-ci peut progresser. Les attestations sont liĂ©es Ă des paires de blocs de contrĂŽle, lâun dâune Ă©poque prĂ©cĂ©dente et lâautre de lâĂ©poque actuelle. Nous les dĂ©signons par une paire constituĂ©e du bloc source et du bloc cible. Un bloc est proposĂ© par un seul validateur, et lorsquâune supermajoritĂ© dâattestations le marque comme head, il est considĂ©rĂ© comme justifiĂ©. Lorsquâune supermajoritĂ© dâattestations marque une Ă©poque justifiĂ©e comme lâĂ©poque prĂ©cĂ©dente, elle est considĂ©rĂ©e comme finalisĂ©e. Câest ainsi que les blocs dâune Ă©poque sont gĂ©nĂ©ralement finalisĂ©s une Ă©poque plus tard, soit 15 minutes au total.
Les transactions sont finalisĂ©es lorsquâelles ne peuvent pas ĂȘtre rĂ©organisĂ©es sans brĂ»ler une quantitĂ© importante dâETH. Comme les deux tiers des validateurs ont attestĂ© du bloc finalisĂ©, deux tiers des validateurs devraient Ă©galement attester dâun bloc diffĂ©rent Ă la mĂȘme hauteur pour crĂ©er une Ă©poque finalisĂ©e distincte Ă la mĂȘme hauteur. Ainsi, au moins un tiers des validateurs aurait fait preuve dâĂ©quivoque, de double vote incompatible. LâĂ©quivoque est punie par le slashing, la suppression de la totalitĂ© de la mise du validateur, de sorte que lâattaquant doit sâengager Ă dĂ©truire au moins un tiers de tous les ETH mis en jeu. Le coĂ»t de la rĂ©organisation dâun bloc finalisĂ© est de plusieurs milliards de dollars, mĂȘme aux prix plancher actuels.
Un acteur malveillant pourrait Ă©galement empĂȘcher la finalisation en retenant les attestations de sorte que la supermajoritĂ© ne soit jamais atteinte. Lorsque la chaĂźne ne parvient pas Ă finaliser pendant 4 Ă©poques ou plus, les validateurs inactifs sont pĂ©nalisĂ©s par une inactivity leak, une fuite dâinactivitĂ©. Il sâagit de brĂ»ler lentement les soldes de lâensemble des validateurs hors ligne jusquâĂ ce que les validateurs en ligne aient Ă nouveau une supermajoritĂ© et puissent rĂ©tablir la vitalitĂ©. La rĂ©compense dâattestation est suspendue jusquâĂ ce que la chaĂźne recommence Ă finaliser, afin de rendre la censure et les attaques par DoS plus coĂ»teuses.
Nombreux sont ceux qui ont une impression dĂ©formĂ©e du staking, de la mise en jeu, en raison de lâutilisation gĂ©nĂ©reuse de ce terme dans la DeFi et les NFT. Dans beaucoup de ces protocoles, le staking signifie le dĂ©pĂŽt de jetons dans un contrat de sĂ©questre, rĂ©duisant ainsi la liquiditĂ© du cĂŽtĂ© de la vente pendant que les jetons restent passifs. Il nây a pas de risque de perte et pas de participation active, uniquement des rĂ©tributions pour les personnes ayant une faible prĂ©fĂ©rence pour le temps. Voir le remarquable dĂ©montage de Cobie des raisons pour lesquelles ces structures sont finalement inutiles.
Pour ĂȘtre tout Ă fait clair, ces jeux nâont rien Ă voir avec ce dont nous discutons. Un vĂ©ritable enjeu au niveau du protocole implique un engagement avec des avantages et des inconvĂ©nients, qui nĂ©cessite une participation active et constante pour proposer de nouveaux blocs et attester les blocs crĂ©Ă©s par dâautres. Cela signifie que vous pouvez ĂȘtre rĂ©compensĂ© pour une participation honnĂȘte avec un temps de fonctionnement Ă©levĂ©, ou que vous pouvez perdre de lâargent si vous vous dĂ©connectez ou si vous soutenez un fork malveillant. Les rĂšgles ne sont pas appliquĂ©es de maniĂšre capricieuse par une entitĂ© centralisĂ©e ; elles sont clairement dĂ©finies Ă lâavance et intĂ©grĂ©es au cĆur du protocole dĂ©centralisĂ© lui-mĂȘme.
Il existe deux rĂšgles clĂ©s dâĂ©quivoque quâun validateur doit suivre, tirĂ©es de la spĂ©cification de Gasper :
Si le slashing nâest appliquĂ© quâaux erreurs de commission, dâactivitĂ© nĂ©faste, il existe Ă©galement des pĂ©nalitĂ©s moins importantes appelĂ©es inactivity leaks, fuites dâinactivitĂ©, pour les erreurs dâomission. Les utilisateurs honnĂȘtes doivent prĂȘter une attention particuliĂšre au temps de fonctionnement de leur validateur, car un validateur hors ligne est pire que rien du tout. Si plus dâun tiers des validateurs sont hors ligne, les blocs ne peuvent pas ĂȘtre finalisĂ©s, et il devient plausible que ces nĆuds hors ligne construisent en fait leur propre chaĂźne dans lâombre en prĂ©tendant quâune partition du rĂ©seau existe. Les pĂ©nalitĂ©s de temps dâarrĂȘt servent Ă Ă©viter de telles situations.
La combinaison de la rĂ©duction de lâĂ©quivoque, des fuites dâinactivitĂ© et des soft forks activĂ©s par les utilisateurs est trĂšs efficace. La rĂ©duction de lâĂ©quivoque traite les erreurs de sĂ©curitĂ©, les fuites dâinactivitĂ© sâoccupent des erreurs de vitalitĂ©, et les UASF (user activated soft forks) permettent mĂȘme Ă une minoritĂ© honnĂȘte de se remettre dâune supermajoritĂ© malveillante.
On parle dâĂ©quivoque lorsquâun validateur atteste deux blocs distincts Ă la mĂȘme hauteur, ce qui a le potentiel de crĂ©er des fourches de chaĂźnes parallĂšles et dâĂ©ventuels rĂ©organisations. Il sâagit dâun Ă©lĂ©ment clĂ© du problĂšme de lâabsence dâenjeu (nothing-at-stake) qui consiste Ă construire sur toutes les bifurcations possibles parce que cela ne leur coĂ»te rien. En recueillant des attestations signĂ©es, les chiens de garde du rĂ©seau peuvent en apporter la preuve quand cela se produit et dĂ©truire lâenjeu du responsable de lâĂ©quivoque.
On parle de fuite dâinactivitĂ© lorsquâun validateur ne fournit pas dâattestation. On ne peut pas prouver quâil sâagit dâun acte malveillant, car le validateur pourrait sâĂȘtre accidentellement dĂ©connectĂ©, mais ce fait est dommageable pour le rĂ©seau.
On parle de soft forks activĂ©s par les utilisateurs lorsquâun sous-ensemble de validateurs estime que la chaĂźne principale les ignore, eux et leurs transactions, et quâils se regroupent pour former leur propre fork (branche) de production de blocs.
Examinons quelques scénarios théoriques dans lesquels un sous-ensemble de validateurs malveillants souhaite censurer certaines transactions indésirables. Comment cela se passerait-il à divers niveaux de détention ?
Une baleine (whale ou gros dĂ©tenteur) possĂ©dant 10% de lâĂ©ther mis en jeu veut censurer des transactions en refusant dâinclure celles provenant dâune liste noire dans les blocs quâil propose. Ces transactions sont incluses dans les 90% restants des blocs. La baleine gagne un peu moins dâargent parce quâelle laisse tomber certaines transactions de mempool trĂšs rĂ©munĂ©ratrices.
Une baleine possĂ©dant 10 % de lâĂ©ther misĂ© refuse dâinclure les transactions dâune liste noire dans ses propositions de blocs, et refuse Ă©galement dâattester les autres blocs qui incluent ces transactions. Les blocs continuent Ă ĂȘtre finalisĂ©s parce quâune supermajoritĂ© dâattestations soutient les blocs honnĂȘtes. La baleine perd de lâargent Ă la fois sur les rĂ©tributions de transactions et les rĂ©compenses dâattestation manquĂ©es.
Un cartel de baleines avec 40% de participation totale veut censurer les transactions, mais veut attester les blocs honnĂȘtes proposĂ©s par les autres. MĂȘme chose que dans le cas de la censure limitĂ©e de la sous-minoritĂ©.
Un cartel de baleines avec 40% de participation totale veut censurer les transactions, et refuse dâattester des blocs honnĂȘtes. Les blocs cessent dâĂȘtre finalisĂ©s car il nây a plus de supermajoritĂ© honnĂȘte. La chaĂźne se divise en deux chaĂźnes filles, comme sâil y avait eu une partition propre du rĂ©seau. Les validateurs honnĂȘtes voient les deux bifurcations mais se basent sur la branche honnĂȘte car elle a plus de poids dans la rĂšgle de choix en cas de bifurcation de LMD-GHOST. Les validateurs censeurs verront Ă©galement les deux branches mais passeront manuellement outre la rĂšgle de choix de la bifurcation de LMD-GHOST et choisiront de continuer sur la chaĂźne censurĂ©e, en prĂ©tendant quâils ne sont pas au courant de la chaĂźne honnĂȘte.
Sur la chaĂźne honnĂȘte, la fuite dâinactivitĂ© se dĂ©clencherait dĂšs que les blocs cesseraient dâĂȘtre finalisĂ©s. Cela signifie que tous les validateurs censeurs apparaĂźtraient comme hors ligne par leur refus dâattester les blocs honnĂȘtes. Les validateurs censeurs verraient leur mise brĂ»ler lentement jusquâĂ ce que leurs soldes tombent suffisamment bas pour quâils soient retirĂ©s de lâensemble des validateurs. Ă ce moment-lĂ , les validateurs honnĂȘtes auraient maintenant une supermajoritĂ© et les blocs recommencent Ă ĂȘtre finalisĂ©s.
Notez que cela nâa pas nĂ©cessitĂ© un hard fork. Les pĂ©nalitĂ©s et les fuites dâinactivitĂ© existantes Ă©liminent progressivement les validateurs malveillants ou hors ligne de lâensemble, et les autres peuvent retrouver une supermajoritĂ© sans que la chaĂźne ne sâarrĂȘte un instant.
Nous avons vu que mĂȘme si les validateurs honnĂȘtes nâont pas une supermajoritĂ©, en proposant des blocs honnĂȘtes que les validateurs censeurs refusent dâattester, ces derniers seront Ă©vincĂ©s de lâensemble des validateurs. Que se passe-t-il si les validateurs honnĂȘtes ont une sous-majoritĂ© et les validateurs censeurs une supermajoritĂ© ?
Il est intĂ©ressant de noter que les mĂ©canismes sont presque identiques ! La principale diffĂ©rence rĂ©side dans le fait que les validateurs honnĂȘtes doivent se regrouper explicitement pour reconnaĂźtre leurs attestations respectives et passer outre la rĂšgle du choix de la branche, mais Ă part cela, ils peuvent former leur propre chaĂźne fille et la supermajoritĂ© malveillante Ă©limine lentement les enjeux de lâensemble des validateurs jusquâĂ ce que la sous-minoritĂ© honnĂȘte retrouve une supermajoritĂ©.
Une fois de plus, il convient de noter quâaucun changement explicite au niveau du protocole nâa Ă©tĂ© effectuĂ© pour dĂ©tourner explicitement les jetons de certains utilisateurs, comme nous lâavons vu dans lâattaque de The DAO en 2016. Câest plutĂŽt la combinaison de lâĂ©limination des enjeux des validateurs Ă©quivoques, dâune part, et des fuites dâinactivitĂ©, dâautre part, qui fait que les validateurs qui ne construisent pas sur la mĂȘme chaĂźne perdent progressivement leur mise. Câest un mĂ©canisme assez Ă©lĂ©gant qui permet Ă une minoritĂ© honnĂȘte de se remettre dâune majoritĂ© malveillante.
Bien sĂ»r, le PoS dâEthereum peut encore ĂȘtre amĂ©liorĂ© dans plusieurs domaines. Par exemple :
Ethereum nâa pas de gouvernance onchain, intĂ©grĂ©e au protocole de base, mĂȘme si un sous-ensemble de protocoles PoS en a une. Tout comme les nĆuds complets de Bitcoin font en sorte que les mineurs restent honnĂȘtes pour produire des blocs valides conformes Ă la fonction de transition dâĂ©tat, les nĆuds complets dâEthereum font en sorte que les validateurs restent honnĂȘtes pour produire des blocs valides conformes Ă la fonction de transition dâĂ©tat. MĂȘme une supermajoritĂ© de validateurs malveillants ne peut pas tromper un nĆud complet honnĂȘte.
Les mĂ©canismes de consensus permettent dâajouter de nouvelles transactions Ă la chaĂźne, et nâont pas le pouvoir de contraindre arbitrairement lâĂ©tat de la blockchain. Les rĂšgles de transition dâĂ©tat sont codĂ©es dans le protocole lui-mĂȘme et restent inviolables Ă moins que la couche sociale ne crĂ©e elle-mĂȘme un fork. Lâun des invariants de transition dâĂ©tat du Bitcoin est que la somme des sorties dâUTXO doit ĂȘtre Ă©gale aux entrĂ©es ; lâun des invariants de transition dâĂ©tat dâEthereum est quâun compte ne peut dĂ©placer que son propre Ether. Ni les mineurs ni les stakers (miseurs) ne peuvent enfreindre ces rĂšgles, mĂȘme avec une supermajoritĂ©, tant que les non-validateurs font tourner leurs propres nĆuds sur le rĂ©seau pour vĂ©rifier les transitions dâĂ©tat honnĂȘtes.
Ce que les gens entendent par lĂ nâest pas clair. Je pense quâil sâagit dâune rĂ©fĂ©rence Ă la manipulation par la planification centrale de facteurs macroĂ©conomiques tels que la masse monĂ©taire et les taux dâintĂ©rĂȘt. Comme on lâa mentionnĂ© ci-dessus, les validateurs nâont pas la capacitĂ© de changer la fonction de transition dâĂ©tat et les changements de mĂ©canisme dâEthereum sont longuement dĂ©battus en public des mois, voire des annĂ©es Ă lâavance. La gouvernance est hors chaĂźne, au niveau de la couche sociale, et non sur la chaĂźne. Les validateurs nâont aucun pouvoir ici.
Câest faux. Les prix du gaz reflĂštent lâoffre et la demande dâespace dans les blocs. La modification du mĂ©canisme de consensus nâaugmente pas lâoffre dâespace de blocs, mais le sharding ou fragmentation pourrait le faire. La fragmentation Ă©tait Ă lâorigine une partie importante de la feuille de route dâEthereum, mais a ensuite Ă©tĂ© relĂ©guĂ©e au second plan et ne sera pas rĂ©alisĂ©e avant un certain temps aprĂšs la fusion. Consultez les notes sur le proto-danksharding pour suivre lâĂ©tat actuel des plans sur la disponibilitĂ© des donnĂ©es.
LâidĂ©e de CPU, de GPU et dâASIC qui sâaffrontent dans une compĂ©tition mathĂ©matique pour trouver le plus rapidement des prĂ©images de hachage a une Ă©lĂ©gance Ă©galitaire. Des individus souverains utilisant des ordinateurs personnels peuvent rivaliser avec des Ă©tats-nations pour le droit de gagner 6,25 BTC fraĂźchement Ă©mis.
Malheureusement, les chaĂźnes dâapprovisionnement en ASIC sont facilement contrĂŽlĂ©es par les rĂ©glementations en matiĂšre dâimportation et dâexportation, sans parler de la dangereuse dĂ©pendance vis-Ă -vis de TaĂŻwan. La nĂ©cessitĂ© dâune Ă©nergie abondante et bon marchĂ© est un autre point faible qui empĂȘche les particuliers de mettre en place des installations miniĂšres discrĂštes. Et comme nous ne sommes pas encore entrĂ©s dans une utopie de post-pĂ©nurie, il faut un capital initial pour acheter des installations de minage. Pire encore, les progrĂšs technologiques obligent les mineurs Ă mettre constamment Ă niveau leurs installations pour rester compĂ©titifs, ce qui signifie que la dĂ©pendance Ă la chaĂźne dâapprovisionnement est un point faible permanent si jamais les choses tournent mal.
Le PoW peut ĂȘtre considĂ©rĂ© comme une instanciation spĂ©cifique du PoS, oĂč les utilisateurs mettent du capital en jeu pour acheter des appareils de minage qui sont ensuite en concurrence pour les droits de proposition de blocs. Le capital mis en jeu peut ĂȘtre retirĂ© Ă tout moment, mais sa valeur suit une courbe de dĂ©croissance correspondant Ă la valeur marchande actuelle des puces informatiques. La nĂ©cessitĂ© dâun capital initial est identique dans le PoW et le PoS, la principale diffĂ©rence Ă©tant que le capital est forcĂ© de passer par une chaĂźne dâapprovisionnement en puces informatiques dans le PoW, alors quâil peut ĂȘtre purement misĂ© dans le PoS.
Le PoS rĂ©sout le problĂšme de lâabsence dâenjeu en pĂ©nalisant sĂ©vĂšrement les validateurs qui construisent sur deux blocs parents Ă la fois.
On souligne souvent les faibles marges des mineurs de PoW en les comparant aux rendements Ă©levĂ©s gĂ©nĂ©rĂ©s par les «miseurs». Cependant, les marchĂ©s sont efficaces et rien nâest gratuit dans la vie. Ce qui semble ĂȘtre de lâargent gratuit pour les stakers est en fait un coĂ»t dâopportunitĂ© important du capital, en choisissant de placer leur argent dans lâETH plutĂŽt que dans des milliers dâautres opportunitĂ©s dâinvestissement, et un risque rĂ©el de dĂ©prĂ©ciation du capital. La mĂȘme dynamique de marchĂ© qui conduit Ă de faibles marges par rapport Ă dâautres opportunitĂ©s dâinvestissement avec lâextraction de BTC sâapplique Ă©galement aux faibles marges par rapport Ă dâautres opportunitĂ©s dâinvestissement avec la mise en jeu dâETH.
Cela tend Ă venir de personnes qui nâont jamais essayĂ© de dĂ©placer des carnets dâordres de taille significative. Il est Ă©vident quâon ne peut pas acheter toute lâoffre au prix au comptant du moment, pas plus que lâon ne peut acheter tous les ASIC au prix au comptant du moment. Lorsque la demande augmente, le prix augmente de maniĂšre trĂšs convexe.
Recommandez la note de Vitalik sur la «faible subjectivité» et la description de lâEF. La premiĂšre fois quâun nĆud se connecte, il doit avoir un certain cadre de rĂ©fĂ©rence pour savoir comment sâamorcer. Il ne sâagit pas dâun problĂšme propre au PoS ; mĂȘme un nĆud complet de bitcoins doit savoir quel logiciel client est valide, Ă partir de quelles IP dĂ©marrer son historique, etc. Le PoS nâajoute ici que des hypothĂšses de confiance supplĂ©mentaires mineures.
Il existe un fossé mental fascinant entre les personnes qui considÚrent les liens avec le «monde réel» comme le seul attribut pouvant conférer une légitimité à un actif numérique, et les personnes qui considÚrent les liens avec le «monde réel» comme des dépendances dangereuses à éviter lors de la construction de systÚmes autosuffisants.
La comprĂ©hension des implĂ©mentations actuelles reprĂ©sente clairement une vĂ©ritable odyssĂ©e, avec un maĂ«lstrom de mots nouveaux et de connaissances en matiĂšre de systĂšmes distribuĂ©s Ă assimiler. Pourtant, aprĂšs un examen en profondeur de tous les composants, rien ne semble inutile et un travail actif est en cours pour simplifier tout ce qui est possible. La sociĂ©tĂ© moderne est construite sur une sĂ©rie dâabstractions de plus en plus complexes ; les rejeter en raison de leur inaccessibilitĂ© initiale reviendrait Ă renoncer Ă une innovation massive.
Alors quâEthereum nâa pas de PoS dĂ©lĂ©guĂ© au niveau de la couche du protocole, des remplacements au niveau de la couche application sont apparus. Lido a pris la tĂȘte des parts de mise en jeu, suivi par une poignĂ©e dâĂ©changes centralisĂ©s. PlutĂŽt que dâutiliser leurs propres validateurs, les utilisateurs envoient de lâETH Ă ces fournisseurs de mise en jeu et reçoivent un dĂ©rivĂ© dâenjeu sous forme de jeton, tel que stETH. Ces fournisseurs de mise en jeu ont alors gĂ©nĂ©ralement un contrĂŽle total sur la façon dont les validateurs sont gĂ©rĂ©s. Les dĂ©positaires ayant un contrĂŽle de vote dĂ©mesurĂ© sont la voie la plus probable pour la capture rĂ©glementaire. DerniĂšrement du moins, ils ont fait exploser les fonds de leurs clients dans des manipulations Ă effet de levier, de sorte que les seules personnes qui auront de lâargent Ă la fin de tout cela seront les auto-dĂ©positaires, pratiquant le self-custody.
Lorsquâun actif maintient son ancrage non pas grĂące Ă des mĂ©canismes onchain, mais grĂące Ă la possibilitĂ© de rachat 1:1 hors chaĂźne auprĂšs dâun Ă©metteur centralisĂ©, lâĂ©metteur choisit une chaĂźne canonique pour honorer les rachats et les crĂ©ations. Le meilleur exemple aujourdâhui est un stablecoin comme USDC ou USDT, mais dâautres actifs du monde rĂ©el tokenisĂ©s suivront sĂ»rement dans les annĂ©es Ă venir. MakerDAO est Ă la tĂȘte de nombreux efforts exploratoires.
Lâargent et les ressources ont tendance Ă sâaccumuler entre les mains dâune poignĂ©e de personnes en lâabsence de redistribution ou de rĂ©volution occasionnelle. Lâeffet de levier personnel implicite crĂ©Ă© par des technologies de pointe exacerbe empiriquement la dynamique de la loi de puissance. Ainsi, bien que le PoS soit une abstraction plus propre que le PoW, ces deux mĂ©canismes empĂȘcheront une grande partie du monde de participer. Ătant donnĂ©es les limites de notre horizon actuel, il est difficile dâimaginer que dâautres mĂ©canismes de consensus pourraient apparaĂźtre avec une participation encore plus Ă©quitable, mais ce nâest pas Ă exclure.
Une derniĂšre section sur les aspects pratiques. Si vous ĂȘtes intĂ©ressĂ© par la mise en jeu de vos propres ETH, les rendements annuels sont estimĂ©s entre 5 et 15 %, en fonction du nombre de participants et de lâimportance des rĂ©tributions dues Ă la MEV. Il est possible dâeffectuer une opĂ©ration intĂ©ressante de «maintien jusquâĂ lâĂ©chĂ©ance» en ce moment, car de nombreux dĂ©rivĂ©s liquides de mise en jeu se nĂ©gocient en dessous de leur valeur de rachat Ă©ventuelle de 1 ETH. Pourquoi cela se produit-il ? Beaucoup de gens ont effectuĂ© une transaction stETH/ETH Ă effet de levier dans lâespoir dâaugmenter leurs rendements, mais comme les retraits ne seront pas autorisĂ©s avant le hard fork Shanghai aprĂšs la fusion, les besoins en liquiditĂ©s sont apparus et il nây a pas assez dâacheteurs. Il faut savoir que les produits dĂ©rivĂ©s liquides de mise en jeu ne sont en aucun cas arrimĂ©s Ă la valeur de lâETH, si ce nâest quâĂ lâĂ©chĂ©ance ils devraient ĂȘtre remboursables 1:1. Mais les acheteurs courageux qui sont prĂȘts Ă prendre un risque inconnu sur la durĂ©e ont une possibilitĂ© dâĂȘtre dĂ»ment rĂ©compensĂ©s.
Ce conseil peut paraĂźtre Ă©trange car tout cet article incite Ă Ă©viter les collusions malveillantes, et maintenant nous dĂ©crivons une maniĂšre de diriger de lâargent vers un dĂ©rivĂ© dâun dĂ©positaire. Mais il serait nĂ©gligent de notre part de demander aux gens dâentrer dans un verrouillage Ă 1:1 sans savoir quâils peuvent ĂȘtre payĂ©s pour prendre le risque de la durĂ©e, de la gouvernance et des contrats autonomes pour ramasser les jetons bon marchĂ© des fonds surendettĂ©s.
Enfin, si vous ĂȘtes intĂ©ressĂ© par lâexploitation de votre propre nĆud de validation, voici un excellent guide pour la mise en jeu par soi-mĂȘme.
De nombreux protocoles en PoS existent dĂ©jĂ , mais Ethereum Ă©tablit une nouvelle norme de qualitĂ©. Lâaccent est mis sur la prise en charge dâun ensemble Ă©tendu de validateurs, sur des pĂ©nalitĂ©s explicites, sur un compromis clair entre la vitalitĂ© et la sĂ©curitĂ©, et sur le travail pĂ©nible au dĂ©part que reprĂ©sente la maintenance de plusieurs clients logiciels. Le systĂšme nâest pas parfait mais câest lâune des innovations les plus Ă©lĂ©gantes dont nous disposons. Nous espĂ©rons que ce rĂ©sumĂ© explicatif vous aidera Ă comprendre comment tous les Ă©lĂ©ments sâassemblent .
LMD-GHOST : latest message driven â greediest heaviest observed subtree, la rĂšgle de choix de la branche dĂ©terminant quel bloc est considĂ©rĂ© comme head de chaĂźne courante.
Casper FFG : le gadget de finalitĂ© utilisĂ© dans le PoS dâEthereum qui fait passer les blocs du stade «proposé» à «justifié» puis à «finalisé».
Gasper : le nom de lâimplĂ©mentation PoS dâEthereum, une combinaison de la rĂšgle de choix de la branche LMD-GHOST, du FFG Casper et du systĂšme spĂ©cifique de rĂ©compense/pĂ©nalitĂ©.
RANDAO : le mécanisme de génération de nombres aléatoires utilisé pour sélectionner les proposants des blocs, trier les validateurs en comités, etc.
BLS : le mécanisme de signature cryptographique utilisé pour les attestations des validateurs.
fuite dâinactivitĂ© : les validateurs qui ne soumettent pas dâattestations sont pĂ©nalisĂ©s si la chaĂźne cesse de se finaliser.
slashing : les validateurs qui proposent ou attestent malicieusement de plusieurs blocs Ă la mĂȘme hauteur voient leur mise rĂ©duite.
proposer boost : une modification de LMD-GHOST donnant un poids supplĂ©mentaire aux blocs proposĂ©s plus tĂŽt dans le crĂ©neau pour se dĂ©fendre contre les attaques par avalanche, voir cette explication dâune rĂ©organisation de 7 blocs dans la beacon chain alors que cette mise Ă jour Ă©tait en cours de dĂ©ploiement.
The post Le mĂ©canisme de consensus dâEthereum aprĂšs la Fusion first appeared on Ethereum France.Aujourdâhui nous revoyons ensemble le principe du staking au travers du rĂ©seau dĂ©centralisĂ© Cardano (ADA). Cardano (ADA), un rĂ©seau dĂ©centralisĂ© Le rĂ©seau Cardano est âdĂ©centralisĂ©â, ce qui signifie quâaucune entitĂ©, organisation ou personne nâest responsable de son fonctionnement et de sa sĂ©curitĂ© contrairement au systĂšme bancaire traditionnel, oĂč nous faisons confiance Ă une institution financiĂšre, [âŠ]
Lâarticle Cardano (ADA), le principe du staking est apparu en premier sur CoinTribune.
Guide dĂ©taillĂ© de A Ă Z de mise en place dâun validateur sur Ethereum 2.
Devenir un validateur sur Ethereum 2 nâest pas quelque chose Ă prendre Ă la lĂ©gĂšre. Vous allez devoir bloquer 32 ETH (ou plus), sans pouvoir les retirer pendant un certain moment, et devoir vous assurer que votre validateur continue Ă ĂȘtre actif sur toute cette pĂ©riode, sans quoi vous perdrez une partie de vos ETH placĂ©s.
De grands pouvoirs impliquent de grandes responsabilités
Avant de vous jeter Ă lâeau, assurez-vous de pouvoir rĂ©pondre Ă lâaffirmatif Ă ces questions:
Si vous nâavez pas 32 ETH, ou que vous ne vous sentez pas de devenir validateurs, vous pourrez toujours rejoindre des « staking pool« .
Prenez cependant le soin de vous renseigner sur les staking pool avant dây sĂ©questrer vos ETH ! Il y a beaucoup dâarnaques
PremiĂšre Ă©tape : mettre en place une machine qui servira de validateur.
Deux options sâoffrent Ă vous: vous pouvez utiliser une machine chez vous, ou bien un serveur hĂ©bergĂ© ailleurs. Les deux ont leurs avantages et inconvĂ©nients : facilitĂ© dâaccĂšs, stabilitĂ© de la connexion Ă internet, taille du disque dur, confiance en lâhĂ©bergeur⊠je vous laisse faire votre choix. Dans ce guide, je vais utiliser un hĂ©bergeur (aucun lien dâaffiliation, câest juste celui que jâutilise personellement), afin de montrer cette Ă©tape aussi. Si vous avez dĂ©jĂ un ordinateur chez vous (ou votre serveur est dĂ©jĂ mis en place), vous pouvez procĂ©der Ă lâĂ©tape « Mise en place des logiciels » directement !
Vous vous apprĂȘtez Ă sĂ©questrer au moins 32 ETH. Mais ĂȘtes-vous sĂ»r de connaĂźtre les risques et les pĂ©nalitĂ©s ? Plus de dĂ©tail dans lâappendice en bas de la page.
Cette partie va vous montrer comment:
Allez câest parti ! Rendons-nous chez netcup.eu (ce guide nâest en aucun cas affiliĂ© ! Câest simplement lâoption que jâutilise personellement).
SĂ©lectionnez « Server », et cherchez lâoption VPS 6000 G9.
Ce qui importe, câest dâĂȘtre sĂ»r que le serveur tiendra la route en cas de perturbation sur le rĂ©seau. Aujourdâhui, il est recommandĂ© dâavoir au moins 4 CĆurs, 16 GB de RAM, 256Gb de SSD, juste pour faire tourner le Beacon Node (plus dâinfo sur ce terme plus tard dans le tutoriel) et les validateurs.
Cependant, à ça il faut ajouter lâinstance dâETH1, qui nĂ©cessite elle-mĂȘme 16Gb de RAM et 500 GB de SSD. Et si vous voulez, vous pouvez aussi lancer un slasher, ce qui prend des ressources supplĂ©mentaires.
Lâoption VPS 6000 est une option avec laquelle vous nâaurez pas de problĂšmes dans les annĂ©es Ă venir. Elle a largement de quoi faire, et tiendra la route mĂȘme en cas de conditions etrĂȘmes sur le rĂ©seau. Lâoption VPS 4000 est correcte et devrait ĂȘtre suffisante. Lâoption VPS 3000 fera pile lâaffaire pour le moment, mais il faudra sâattendre Ă devoir changer de plan dâici 1 an ou deux. Enfin, si vous ne comptez pas lancer dâinstance eth1 (si vous utilisez Infura par exemple), lâoption VPS 2000 sera suffisante.
Si pour vous les termes eth1, Infura, beacon node et validateurs sont du charabia, vous pouvez allez lire le « Petit récapitulatif » dan « Mise en place des logiciels ».
Une fois votre offre sĂ©lectionnĂ©e, vous devrez procĂ©der Ă la crĂ©ation de compte. Retenez bien les informations que vous entrez : une fois la demande effectuĂ©e, vous recevrez un appel de netcup.eu en anglais (ils sont allemands) et ils vous demanderont de bien confirmer : votre nom / prĂ©nom, votre adresse, votre code postale. Câest tout Ă fait normal (bien que dĂ©routant je vous le concĂšde !).
Une fois ces informations confirmĂ©es par tĂ©lĂ©phone, ils vous enverront vos identifiants de connexion par e-mail : les e-mails sont en allemand et en anglais, donc il faudra scroller jusquâen bas pour trouver la version anglaise !
Connectons-nous dâabord Ă notre espace client. Comme Ă©crit dans le mail, le lien est celui-lĂ : https://www.customercontrolpanel.de . Vos identifiants figurent aussi dans le mail (en orange sur la photo).
La premiĂšre Ă©tape Ă suivre est de sĂ©curiser notre compte client mettant en place le 2FA : un mĂ©chanisme de sĂ©curitĂ© qui vous demandera dâentrer un code fournit par votre tĂ©lĂ©phone lors de vos prochaines connexions. Pour ce faire, cliquez sur Master Data en bas Ă gauche.
Là vous pouvez cliquer sur le bouton « Enable two factor authentication ».
Bien maintenant que votre compte est sĂ©curisĂ©, vous pouvez procĂ©der au rĂšglement. La facture devrait ĂȘtre Ă peu prĂšs Ă©gale Ă trois fois le montant mensuel : pas de panique, cela suit une pĂ©riode de facturation trimestrielle.
Une fois le rÚglement effectué, vous devriez recevoir de nouvelles informations par e-mail : un e-mail intitulé « Access data for SCP » et un autre intitulé « Ihr vServer bei netcup ist bereit gestellt.
Dâabord par mesure de sĂ©curitĂ©, rendez-vous sur le servercontrolpanel (https://www.servercontrolpanel.de/SCP), connectez-vous avec les identifiants contenus dans le mail, et changez votre mot de passe (menu dĂ©roulant en haut Ă droite, puis Option).
Sur ce paneau de contrĂŽle, vous avez accĂšs Ă vos machines, et si vous cliquez sur lâune de vos machines, vous aurez un dĂ©tail de lâutilisation de celle-ci.
Vous pouvez maintenant vous connecter Ă la machine !
Fini la rigolade ! On passe aux choses sérieuses ! Pour ce faire, nous allons utiliser ssh ! ssh est un programme qui permet de se connecter de façon sécurisée à un serveur.
Pour lâutiliser, rien de plus simple : depuis le terminal de votre machine, tapez ceci (en remplaçant « adresseip » par lâadresse IP de votre propre machine, qui vous a Ă©tĂ© communiquĂ©e dans le deuxiĂšme e-mail)
ssh root@adresseip
Le mot de passe demandĂ© est celui qui apparaĂźt dans lâemail que netcup vous a envoyĂ©. Ensuite, vous devriez avoir un message vous signalant que lâauthenticitĂ© de la machine ne peut pas ĂȘtre prouvĂ©e⊠câest normal, tapez « yes » !
PremiĂšre Ă©tapeâŠ. changer de mot de passe ! Et oui, sĂ©curitĂ©, sĂ©curitĂ©, sĂ©curitĂ© !
Entrez simplement :
passwd
Et choisissez un mot de passe solide (différent des autres mot de passe que vous utilisez habituellement !)
Nous sommes actuellement connectĂ© en tant que lâutilisateur « root« . Câest en quelque sorte le superman de votre ordinateur : il a tous les droits. Câest une trĂšs mauvaise habitude, et un grand risque de sĂ©curitĂ© dâĂȘtre connectĂ© en tant que root, câest pourquoi nous allons crĂ©er un utilisateur !
La commande a entrer est celle-ci (en changeant utilisateur pour le nom dâutilisateur que vous dĂ©sirez crĂ©er).
adduser utilisateur
Suivez les instructions du terminal (soyez sĂ»rs de choisir un mot de passe solide !). Puis, ajoutez cet utilisateur Ă la liste des « sudoers » : câest la liste des utilisateurs qui sont autorisĂ©s Ă effectuer des actions en tant quâadministrateur (parfois). Tapez la commande ci-dessous (en remplaçant utilisateur par votre nom dâutilisateur choisi, Ă©videmment).
usermod -aG sudo utilisateur
Pour ĂȘtre sĂ»r que cela fonctionne correctement, dĂ©connectez-vous de la machine en tappant :
exit
Puis connectez-vous cette fois-ci en utilisant votre nom dâutilisateur :
ssh utilisateur@adresseip
La sĂ©curitĂ©, câest important ! Câest pourquoi nous allons procĂ©der Ă la mise en place de trois mesures de sĂ©curitĂ© : lâauthentification par clĂ©, le changement de port SSH, et lâinstallation dâun pare-feu.
Je vais tenter dâexpliquer simplement Ă quoi servent ces deux mesures.
Nous allons créer votre clé SSH qui vous servira à vous connecter au serveur. Commencez par vous déconnecter de votre serveur (exit). Ensuite, tappez cette commande :
ssh-keygen -t ed25519
Ensuite suivez les instructions sur votre console. Une fois terminé, il vous faudra ajouter cette clé à la liste des clés autorisées par votre serveur :
ssh-copy-id -i ~/.ssh/id_ed25519.pub utilisatur@adresseip
Et voilĂ le travail ! Votre clĂ© apparaĂźt dĂ©sormais parmi les clĂ©s autorisĂ©es sur votre serveur. Cependant, le serveur autorise toujours Ă se connecter en fournissant le mot de passe de lâutilisateur : nous allons modifierons cela quand nous effectuerons le changement de port SSH.
Commençons par mettre à jour notre systÚme.. Je ne vais pas détailler ces commandes mais en gros, elles mettent à jour le systÚme, retirent les logiciels dont on ne se sert pas et installent UFW
Nous avons crĂ©Ă© un utilisateur qui nâest pas root car câest risquĂ© de lancer toutes les commandes en tant quâadministrateur. Cependant, de temps en temps nous avons besoin de lancer des commandes en tant quâadministrateur. La solution : ajouter « sudo » au dĂ©but de la commande que nous lançons. Il se peut que lancer sudo vous demande votre mot de passe : câest tout Ă fait normal !
sudo apt update && sudo apt upgrade
sudo apt dist-upgrade && sudo apt autoremove
sudo apt install -y ufw
Maintenant nous pouvons changer le port SSH. Vous nâavez quâĂ choisir un numĂ©ro de port entre 1024 et 49151, et vous assurez quâil ne sort pas en rouge lorsque vous tapez cette commande (en remplaçant numerodeport par le numĂ©ro de port que vous avez choisi) :
sudo ss -tulpn | grep numerodeport
Sâil sort en rouge, câest quâil est dĂ©jĂ utilisĂ© par votre ordinateur. Choisissez en un nouveau et recommencez !
Ensuite, mettez Ă jour votre fichier de configuration SSH. Lancez lâediteur de nexte nano:
sudo nano /etc/ssh/sshd_config
Ici vous aurez 4 lignes Ă modifier :
Appuyez ensuite sur CTRL+o (la touche contrĂŽle et la touche o en mĂȘme temps), puis Entrer, puis CTRL+x (la touche contrĂŽle et la touche x en mĂȘme temps). Câest la suite Ă tapper si lâon veut enregistrer un fichier et le fermer avec Nano.
Voici un GIF du dĂ©roulĂ© de lâopĂ©ration (avec comme exemple de port 39889).
Maintenant, nous pouvons redĂ©marrer le service SSH. Il suffit dâentrer cette commande :
sudo systemctl restart ssh
Attention, à compter de maintenant, pour vous connecter au serveur, la commande ne sera plus « ssh utilisateur@ip » mais « ssh -p NUMERODEPORT utilisateur @ip ».
Si vous vous retrouvez dans un cas ou vous ne parvenez plus Ă vous connecter Ă la machine en SSH, sachez que vous pouvez toujours vous reconnecter en passant par lâinterface de de netcup.eu .
Plus dâinformation en bas de la page dans lâappendice.
Pour vous déconnecter, tapez:
exit
Puis reconnectez-vous :
ssh -p numerodeport utilisateur@adresseip
Maintenant faisons en sorte de rejeter les connexions par défaut :
sudo ufw default deny incoming
Acceptons les connections sur notre port SSH choisi :
sudo ufw allow numerodeportssh/tcp
Puisque nous allons utiliser Geth et Lighthouse, nous allons ouvrir les ports 30303 et 9000 (respectivement)
sudo ufw allow 30303
sudo ufw allow 9000
Mettons maintenant en marche ces pare-feu :
sudo ufw enable
Maintenant, en tapant « sudo ufw status verbose« , vous devriez avoir un rendu similaire (mon port choisi pour SSH est le 38998) :
Et voilà ! Votre machine est désormais installée et sécurisée. Nous pouvons passer à la prochaine étape : créer les clés des validateurs.
Ce guide dĂ©tail les Ă©tapes nĂ©cessaires pour la mise en place dâun validateur sur le « mainnet », câest-Ă -dire le rĂ©sau officiel Ethereum 2. Il existe cependant des « testnet », câest-Ă -dire des rĂ©seaux qui permettent de tester, sans mettre en jeu des « vrais » ETH. Je vous recommande dâabord dâessayer dâinstaller et de lancer correctement un validateur sur un testnet. Pour ce faire, il suffit de remplacer « mainnet » par le nom du testnet (au moment de lâĂ©criture, « pyrmont »).
Une fois le validateur ayant été correctement lancé sur le testnet, vous pourrez passer au mainnet !
Rendez-visite à ce site : https://github.com/ethereum/eth2.0-deposit-cli/releases/ et trouvez la version du logiciel pour linux : elle devrait se terminer par « linux-amd64.tar.gz« .
Voici à quoi elle ressemble au jour de création de ce guide :
Ensuite copiez-en le lien :
Maintenant, reprenez le terminal et tapez ces commandes (en remplaçant le lien « https:// » par le contenu de votre presse-papier (le lien que vous avez copiĂ© lors de lâĂ©tape prĂ©cĂ©dente)).
cd ~
sudo apt install -y curl
curl -LO https://github.com/ethereum/eth2.0-deposit-cli/releases/download/v1.1.0/eth2deposit-cli-ed5a6d3-linux-amd64.tar.gz
Vous venez de télécharger la version compressée du logiciel qui va vous servir à créer les clés de vos validateurs. Pour le décompresser, il vous suffit de taper :
tar xvf eth2deposit-cli-ed5a6d3-linux-amd64.tar.gz
rm -rf eth2deposit-cli-ed5a6d3-linux-amd64.tar.gz
cd eth2deposit-cli-ed5a6d3-linux-amd64
Les noms des fichiers pourraient diffĂ©rer sur votre machine : ici câest eth2deposit-cli-ed5q6d3 car câest la version actuelle, mais elle pourrait changer dans le futur. Pour lâafficher, lancez simplement la commande ls
.
Vous pouvez maintenant créer vos clés ! Entrez cette commande (en changeant nombredevalidateurs par le nombre de validateurs que vous comptez lancer) :
./deposit new-mnemonic --num_validators nombredevalidateurs --mnemonic_language=english --chain mainnet
Prenez le temps de bien vérifier la commande que vous venez de taper. Avez-vous bien remplacé le NOMBREDEVALIDATEURS par le nombre de validateurs que vous comptez lancer ? Avez vous bien bien écrit « mainnet » ?
Dans cette commande, vous allez devoir noter vos mots de passe. Je vous recommande de les Ă©crire sur un bout de papier, dâen faire une deuxiĂšme copie et garder les deux copies dans deux endroits diffĂ©rents.
Personne ne pourra vous sauver si vous oubliez vos mot de passe ou vos mnemonics : câest donc dâune importance capitale pour vous de vous appliquer pendant cette opĂ©ration.
PremiÚre étape : créer un mot de passe. Choisissez-en un (de préférence au hasard), de bonne qualité, et notez le sur le bout de papier. Ensuite lisez le bout de papier, et tapez-le ici. Soyez sûrs que ça correspond à ce que vous avez noté sur le bout de papier !
Ensuite vous verrez apparaĂźtre une liste de mots : câest ce que lâon appelle votre mnemonic. Notez-le prĂ©cieusement, en faisant bien attention Ă lâorthographe des mots (ils sont en anglais, attention aux faux amis!).
Vous devrez ensuite entrer, dans lâordre, le mnemonic (suite de mots) que vous venez de noter. Soyez sĂ»rs de taper ce que vous avez Ă©crit sur votre papier !
Si vous tapez la commande ls, vous devriez avoir le mĂȘme rendu :
Dans le dossier validator_keys se trouvent plusieurs fichier : un fichier deposit_dataâŠjson, et autant de keystore-mâŠjson que vous avez entrĂ© de numĂ©ro de validateurs. Le fichier deposit_data est un fichier unique qui contient des informations nĂ©cessaires pour pouvoir dĂ©poser des ETH pour staker : les fichier keystore-m sont des fichiers reprĂ©sentants vos clĂ©s de validateur. Ils seront utilisĂ©s par la suite !
Vous avez crĂ©Ă© vos clĂ© de validateur (ainsi que le fichier de deposit associĂ©, nous y reviendrons plus tard). Maintenant il est temps dâinstaller les logiciels !
TroisiÚme étape: mettre en place les logiciels nécessaires au staking.
Ces instructions sont Ă©crites pour Ubuntu (Linux). Si vous utilisez une autre machine, il faudra probablement adapter quelques commandes !
Il y a trois logiciels principaux qui vont ĂȘtre exĂ©cutĂ©s par votre machine:
Ce qui est intĂ©ressant, câest que plusieurs VC peuvent se connecter au mĂȘme BN: en effet, on peut faire tourner des centaines de validateurs, qui se connectent tous au mĂȘme BN. Un VC ne consomme pas beaucoup (rappelez-vous, câest le BN qui fait la majoritĂ© du travail), en lancer plusieurs sur la mĂȘme machine permet donc dâaugmenter un peu la rentabilitĂ©.
Une question devrait vous traverser lâesprit : est-il possible de connecter son VC a un BN sur une autre machine ? La rĂ©ponse est oui ! Vous pourriez trĂšs bien connecter vos VCs au BN dâun ami, ou dâune entreprise, si vous leur faites confiance. Vous nâĂȘtes donc pas OBLIGE de faire tourner un BN, si vous faites confiance Ă un autre BN. Attention cependant : si le BN dans lequel vous avez confiance se met Ă mal agir (se dĂ©connecter, ĂȘtre piratĂ©âŠ), vous pourriez en faire les frais ! Câest pourquoi il est recommandĂ© de faire tourner son propre BN.
Le paragraphe prĂ©cĂ©dent sâapplique tout aussi bien au nĆud Ethereum 1 que vous devez lancer: vous pouvez dĂ©cider de ne pas en lancer, et de vous remettre Ă un ami / une entreprise (par exemple Infura). Cependant, comme pour le BN, câest dĂ©conseillĂ©, car on nâest jamais mieux servi que par soi-mĂȘme !
Si votre machine est peu performante, une solution pourrait ĂȘtre de ne pas lancer geth et dâutiliser un autre accĂšs Ă la chaĂźne Eth 1.
Un des services les plus connus est Infura. Un tutoriel est disponible dans lâappendix afin dâen savoir plus. Cependant, comme Ă©crit just au-dessus, il est FORTEMENT recommandĂ© de lancer son propre client Ethereum 1
Il y a plusieurs implĂ©mentations de clients pour Ethereum 2 : les plus connus sont Lighthouse, Prysm, Teku, et Nimbus. Chaque client a ses spĂ©cificitĂ©s (que ce soit lâĂ©quipe derriĂšre, lâhistoire, les buts recherchĂ©s, le langage utilisĂ©, les caractĂ©ristiques techniques, la communautĂ© etcâŠ). Dans cet article, nous allons utiliser lâimplĂ©mentation Lighthouse, de lâĂ©quipe Sigma Prime.
De la mĂȘme maniĂšre que diffĂ©rent clients Ethereum 2 existent, il existe aussi plusieurs implĂ©mentations de client Ethereum 1. Les plus connus sont geth et openethereum (anciennement parity-ethereum). Dans ce tutoriel, jâutiliserai geth et parlerai de geth mais ce quâil faut comprendre câest « client Ethereum 1 ».
Nous avons deux possibilités pour lancer notre client :
Jâai personellement optĂ© pour lâutilisation de docker-compose : ça rend la tĂąche trĂšs simple Ă utiliser, installer, et mettre Ă jour.
Afin de nous faciliter la tĂąche, nous allons utiliser un logiciel qui sâoccupera de lancer les autres logiciels Ă notre place. Je vous prĂ©sente : Docker !
Pour installer Docker sur Ubuntu, câest tout simple :
sudo apt install -y docker.io
Assurons-nous que Docker a bien été installé en lançant cette commande en la comparant au screenshot en-dessous.
sudo docker run hello-world
Si cette commande ne fonctionne pas, câest probablement que docker nâa pas Ă©tĂ© correctement installĂ©. Dans ce cas, veuillez suivre les instructions dâinstallations officielles.
Profitons-en pour aussi installer Docker-Compose
sudo apt install -y docker-compose
Maintenant que nous avons installĂ© le logiciel docker-compose, il ne nous reste plus quâĂ lui dire ce que nous voulons lui faire faire (lancer geth, un BN et un VC). Ca tombe bien : lâĂ©quipe de lighthouse a un dossier avec tout de dĂ©jĂ prĂ©parĂ© !
Assurons-nous dâabord dâĂȘtre dans le bon rĂ©pertoire :
cd ~
Puis téléchargeons le dossier de configuration
git clone https://github.com/sigp/lighthouse-docker/
La commande ls (qui liste les fichier du répertoire) devrait ressembler à cela maintenant :
Allez maintenant éditer le fichier de configuration. Déplacez-vous dans le bon répertoire :
cd lighthouse-docker
Faites une copie du fichier de configuration :
cp default.env .env
Et allez Ă©diter le fichier de configuration : (nâoubliez pas, pour quitter câest CTRL+O, Enter, CTRL+X)
nano .env
Voici la liste des paramĂštres Ă Ă©diter. Si le paramĂštre nâapparaĂźt pas dans cette liste, câest quâil doit ĂȘtre laissĂ© Ă sa valeur par dĂ©faut. Attention, si vous voulez vous mettre sur le rĂ©seau de test, alors le paramĂštre NETWORK ne sera pas mainnet mais le nom du testnet (par exemple pyrmont).
NETWORK=mainnet
START_VALIDATOR=YES
VALIDATOR_COUNT=2
START_GETH=YES
ENABLE_METRICS=YES
Bien entendu je vous laisse Ă©diter VALIDATOR_COUNT pour ĂȘtre Ă©gal au nombre de validateurs que vous avez choisi de crĂ©er.
Si vous avez une machine puissante, vous pouvez aussi mettre SLASHER=YES afin de mettre en route un slasher.
Maintenant notre fichier de configuraiton prĂȘt, nous devons importer les validateurs. Pour ce faire, copiez dâabord les clĂ©s de validateurs dans le fichier courant.
cp -r ../eth2deposit-cli-ed5a6d3-linux-amd64/validator_keys/ .
Bien entendu il se peut que le nom de votre dossier varie : comme précisé au-dessus le mien est eth2deposit-cli-ed5a6d3-linux-amd64 mais je vous laisse adapter la commande à votre machine.
Puis initialisez les clés grùce à cette commande :
sudo docker run -it -v $(pwd)/lighthouse-data:/root/.lighthouse -v $(pwd)/validator_keys:/root/validator_keys sigp/lighthouse lighthouse --network mainnet account validator import --directory /root/validator_keys
Nous sommes fin prĂȘts ! Nous allons ouvrir un gestionnaire de fenĂȘtre, afin de conserver notre fenĂȘtre ouverte (plus dâinfo dans lâencart juste en-dessous).
Dâabord installons tmux :
sudo apt install -y tmux
Puis lançons-le !
tmux
Et maintenant, la commande finale :
sudo docker-compose up
Et voilĂ ! Vous devriez voir plein de messages fuser dans tous les sens. Ces messages sont des « logs », câest-Ă -dire des messages qui dĂ©crivent le statut des diffĂ©rents logiciels (rappelez-vous, geth, BN et VC) qui tournent.
Si ces logs ne vous conviennent pas et vous voulez isoler seulement les logs du BN ou du VC, tappez :
sudo docker container ls --format '{{.Names}}'
Vous devriez avoir cela en sorite (peut-ĂȘtre deux lignes en plus si vous avez dĂ©jĂ lancĂ© grafana / prometheus).
Pour suivre seulement les logs du validateurs par exemple :
sudo docker logs lighthouse-docker_validator_client_1 --follow
Et pour suivre le BN :
sudo docker logs lighthouse-docker_beacon_node_1
Ces commandes est lançable mĂȘme si vous nâĂȘtes pas dans tmux, et vous pouvez les quitter Ă tout moment en appuyant sur CTRL+c .
Nous avons lancĂ© les logiciels Ă lâaide dâun gestionnaire de fenĂȘtre (appelĂ© tmux). Il permet aux logiciels de continuer Ă tourner en tĂąche de fond. Pour vous dĂ©tacher de cette fenĂȘtre et la laisser tourner en tĂąche de fond, il vous suffit dâappuyer sur CTRL+b puis la lettre d.
A chaque fois que vous voudrez retrouver vos logiciels (pour les arrĂȘter, ou les mettre Ă jour etc), il suffira de tapper tmux a. Vous pourrez donc faire des aller-retours jusquâĂ vos logiciels grĂące Ă ce gestionnaire de fenĂȘtre.
Vous pouvez quitter cet Ă©cran en appuyant sur CTRL+b puis d. Cela « dĂ©tache » lâĂ©cran tmux et vous renvoie vers lâĂ©cran de dĂ©part. Les logiciels continuer donc de tourner en tĂąche de fond. Pour retourner sur lâĂ©cran de tmux, tappez :
tmux a
Si vous voulez arrĂȘter complĂštement les logiciels : appuyez sur CTRL+c, puis entrez :
sudo docker-compose down
En tant que validateur sur le rĂ©seau, vous avez comme devoir de tenir vos logiciels Ă jour. Un tutoriel sur comment le faire est disponible dans lâappendix, en bas de la page
Maintenant que nous avons nos logiciels qui tournent, il ne nous reste plus quâune Ă©tape : effectuer le(s) dĂ©pĂŽt(s) dâETH sur le rĂ©seau ! Rendez-vous sur le site officiel : https://launchpad.ethereum.org/overview (vous pouvez prĂ©fixer le nom du testnet dĂ©sirĂ©, par exemple : https://pyrmont.launchpad.ethereum.org/overview pour le testnet de pyrmont).
Lisez attentivement les 10 étapes (un récapitulatif ne fais jamais de mal), et vous devriez arriver sur cette page:
Vous pouvez choisir les logiciels que lâon utilise : geth, puis Lighthouse
Maintenant indiquez le nombre de validateurs que vous voulez lancer (dans mon cas, 2)
Puis cochez la case qui certifie que vous avez copié vos mnemoniques et votre mot de passe, et cliquez sur Continue.
Sur la page suivante, vous allez uploader votre fichier deposit_data dont on a parlĂ© Ă tout Ă lâheure. Mais comment faire ? Le fichier se trouve sur mon serveur, pas du mon ordinateur ! Pas de panique ! Jâai la solution : scp !
scp est un programme qui permet de copier des fichiers depuis un serveur vers votre ordinateur (ou dans lâautre sens) de façon sĂ©curisĂ©.
Dâabord crĂ©ons un dossier pour stocker nos fichiers :
cd ~
mkdir validateurs
cd validateurs
Sur votre terminal, dĂ©connectez-vous de votre machine (tapez exit), puis entrez simplement (en remplacant, comme dâhabitudeâŠ) :
scp -r -P numerodeport utilisateur@adresseip:lighthouse-docker/validator_keys .
Et voilĂ le travail ! Vous devriez maintenant pouvoir cliquer sur le gros bouton + prĂ©sent sur la page, et aller chercher le fichier deposit_data qui se trouve dans le dossier validateurs, dans votre rĂ©pertoire dâutilisateur (home directory).
Maintenant vous devriez pouvoir uploader le fichier deposit_data :
Et vous devriez voir cet Ă©cran ! (si vous ne vous ĂȘtes pas trompĂ©s de rĂ©seau !)
Maintenant il faut faire le dĂ©pĂŽt. Je vous laisse suivre le tutoriel dâinstallation de Metamask (vous pouvez y connecter votre Ledger si jamais câest cela que vous utilisez)
Si vous vous apprĂȘtez Ă faire un dĂ©pĂŽt sur un testnet, la monnaie utilisĂ©e nâest pas lâETH mais le gETH (görli-ETH). Il peut sâobtenir via des faucets, ou en rejoignant le Discord dâEthStaker.
Une fois Metamask installĂ©, soyez sĂ»rs dâĂȘtre sur la bonne chaĂźne : Ethereum Mainnet pour un dĂ©pĂŽt sur le mainnet, et Goerli pour un dĂ©pĂŽt sur un testnet.
Vous nâavez plus quâĂ lancer la transaction⊠et tada ! Votre dĂ©pĂŽt aura Ă©tĂ© effectuĂ© ! Vous pouvez dĂ©sormais suivre lâĂ©tat de vos validateurs : dans metamask, cliquez sur la transaction que vous venez dâeffectuer.
Puis cliquez sur la flĂšche qui vous mĂšnera Ă lâexplorateur de block :
Et ici vous pouvez voir les clĂ©s publique associĂ©es ! Vous pouvez consulter lâĂ©tat de votre validateur en cliquant dessus.
Ici nous utilisons le site beaconscan. Un autre explorateur connu est beaconcha.in. Dans cette photo, mon dĂ©pĂŽt nâa pas encore Ă©tĂ© inclus : en effet, une votre dĂ©pĂŽt effectuĂ©, il faut du temps afin quâil soit « inclus » et que votre validateur apparaisse dans la liste « officielle » des validateurs. Plus dâinfo sur ce procĂ©dĂ©.
Cette partie est optionelle : il sâagit de mettre en place un systĂšme de monitoring (afin de garder un oeil sur sa machine !). Nous allons utiliser Grafana et Prometheus : Prometheus va se charger de rĂ©cupĂ©rer des donnĂ©es de nos logiciels (mĂ©moire utilisĂ©e etc), et Grafana se chargera de les afficher.
Encore une fois, docker va nous sauver ! Nous allons cloner le repo lighthouse-metrics qui a déjà tout de préparé pour nous :
cd ~
git clone https://github.com/sigp/lighthouse-metrics
cd lighthouse-metrics
Ensuite, nous allons lancer grafana et prometheus grĂące Ă la commande⊠docker-compose ! Notez lâutilisation de -d, qui permet de le lancer en tĂąche de fond.
sudo docker-compose up -d
Maintenant nous pouvons passer Ă la derniĂšre Ă©tape : visualiser les donnĂ©es ! DĂ©connectez-vous du serveur (tappez exit), et tappez la commande suivante (en remplacant, comme dâhabitude):
ssh -p numerodeport -L 127.0.0.1:3000:127.0.0.1:3000 utillisateur@adresseip
Et maintenant, sur votre navigateur, tapez cette URL : localhost:3000 ! Vous devriez arriver sur un panneau de configuration ! Le nom dâutilisateur est admin et le mot de passe changeme. Ensuite, vous devrez cliquer sur le bouton Manage
Puis cliquez sur le bouton Import
Maintenant vous devez visiter cette page et en copier le contenu, et le coller le contenu dans la box « Import panel via JSON »
Puis cliquez sur Load et Import et⊠tada !!
Câest un panneau de monitoring global, il vous est bien sĂ»r possible de modifier et lâadapter Ă vore convenance !
Des amĂ©liorations sont toujours possibles ! Vous pourriez crĂ©er des services qui se relancent automatiquement, avoir un systĂšme de sauvegarde, avoir un meilleur systĂšme de logging⊠cependant ce guide nâest lĂ que pour couvrir les bases. Il ne faut vraiment pas hĂ©siter Ă aller chercher de lâaide et poser des questions, voici donc quelques recommandations de site / communautĂ©s qui pourraient vous intĂ©resser :
https://reddit.com/r/ethstaker/ : Le subreddit dâune communautĂ© de staker (je vous recommande de rejoindre le Discord, câest un des meilleurs endroits pour poser des questions)
https://reddit.com/r/ethereum : Le subreddit officiel dâEthereum
https://lighthouse-book.sigmaprime.io/ : La documentation officielle de Lighthouse
https://docs.prylabs.network/docs/getting-started/ : La documentation officielle de Prysm
https://docs.teku.consensys.net/en/latest/ : La documentation officielle de Teku
https://status-im.github.io/nimbus-eth2/ : La documentation officielle de Nimbus
Pour se renseigner sur le protocole en général il y a bien entendu :
â La spĂ©cification officielle : https://github.com/ethereum/eth2.0-specs
â Cet article que jâai particuliĂšrement apprĂ©ciĂ© : https://ethos.dev/beacon-chain/
â Les spĂ©cifications commentĂ©es de Vitalik et de Ben Edgington
Une des rĂšgles du rĂ©seau est quâun validateur ne doit jamais publier deux messages conflictuels pour un mĂȘme block. Pour ĂȘtre sĂ»r quâil ne publie jamais de messages conflictuels, un validateur tient Ă jour une base de donnĂ©e de tous les messages quâil a envoyĂ©. Cette base de donnĂ©e (souvent appellĂ©e slashing protection database, et situĂ©e dans ~/lighthouse-docker/lighthouse-data) est TRES importante, car si vous la perdez, votre validateur pourrait bien publier deux messages conflictuels et se faire pĂ©naliser !
Il est donc recommandĂ© dâen faire une sauvegarde rĂ©guliĂšrement ! Et si vous la perdez, il est recommandĂ© dâattendre plusieurs heures avant de relancer votre validateur, afin de rĂ©duire les chances quâil produise des messages conflictuels.
Il y a deux grosses catégories de pénalités que vous pourriez encourir :
Rendez-vous sur le servercontrolpanel et cliquez sur votre machine. Ensuite cliquez sur la « Console » en haut Ă droite de lâĂ©cran (entourĂ© en rouge sur la photo).
Une fenĂȘtre pop-up devrait sâouvrir (si elle ne sâouvre pas vĂ©rifiez les paramĂštres de votre navigateur). Ici, il vous suffit de vous connecter en entrant dâabord le nom dâutilisateur, puis le mot de passe de votre utilisateur. Si vous nâavez pas encore dâutilisateur, utilisez les identifiants de root.
Cela vous donne accĂšs Ă un shell classique : Ă vous de rĂ©soudre les problĂšmes afin de pouvoir vous reconnecter depuis votre interprĂȘteur ! (Probablement un problĂšme de port SSH / pare-feuâŠ)
Si votre machine est peu performante, une solution possible est dâutiliser un « fournisseur » dâaccĂšs Ă ETH1 plutĂŽt que de faire tourner votre propre instance de geth. Câest plus risquĂ© (car vous devez faire confiance Ă votre fournisseur plutĂŽt que de lancer un client par vous-mĂȘme), mais cela devrait rĂ©duire les ressouces utilisĂ©es par votre machine.
Je vais ici donner un exemple de mise en place avec Infura. Si vous avez dĂ©jĂ votre fournisseur dâaccĂšs Ă Ethereum 1, vous pouvez passer cette Ă©tape.
Rendez-vous sur le site infura.io et créez un nouveau compte.
Une fois votre compte crĂ©Ă©, cliquer sur lâonglet Ethereum dans la barre de gauche.
CrĂ©ez ensuite un nouveau projet en cliquant sur « Create New Project » (il se peut que lâinterface soit diffĂ©rente si câest votre premier projet)
Ensuite cliquez sur votre projet et allez dans lâonglet Settings.
En bas de la page vous trouverez les informations qui nous intĂ©ressent : le menu dĂ©roulant vous permet de choisir le rĂ©seau (mainnet pour le rĂ©seau officiel, Görli pour les testnets). Puis vous pouvez copier lâURL (entourĂ© en rouge) qui vous servira dans lâĂ©tape suivante.
GrĂące Ă docker-compose, cette modification est un rĂ©el jeu dâenfant : il nây a que deux lignes Ă modifier !
nano .env
Ensuite les deux lignes Ă modifier sont : START_GETH qui doit ĂȘtre vide, et VOTING_ETH1_NODES qui doit ĂȘtre mis Ă lâURL du fournisseur dâaccĂšs Ă ETH1 (celui que vous avez copiĂ© si vous avez suivi le tutoriel Infura).
START_GETH=
VOTING_ETH1_NODES=urldufournisseur
Les autres paramÚtres sont à laisser comme dans décrit plus haut dans le guide.
Et voilà le travail ! Maintenant lorsque vous lancerez vos logiciels (sudo docker-compose up), vous passerez par votre fournisseur plutÎt que par geth ! Vous pouvez donc supprimer le dossier geth maintenant pour libérer de la place sur votre machine :
sudo rm -rf ~/lighthouse-docker/geth-data
La migration de validateurs dâun serveur Ă un autre est une opĂ©ration facile mais qui nĂ©cessite une attention particuliĂšre. Le dossier important Ă copier se trouve dans lighthouse-data/mainnet/validators
(ou /testnet/ si sur testnet).
Attention, cette migration ne sert que si vous changez de machine mais comptez utiliser le meme client (Lighthouse). En attendant lâEIP-3076, changer de client nâest PAS recommandĂ©.
De plus nous copierons aussi le dossier secret
afin dâĂ©viter de devoir importer les validateurs de nouveau.
Ok premiĂšre Ă©tape : sâassurer que nos validateurs sont Ă©teints. Pour ça :
tmux a
Puis CTRL+c et ensuite
sudo docker-compose down
Pour vous assurer que vos validateurs sont Ă©teints, vous pouvez entrer la commande sudo docker container ls --format {{.Names}}
et vĂ©rifier que rien la sortie de cette commande est vide (ou au moins quâelle ne contient pas « validator_client ».
Nous allons devoir autoriser la connexion en tant que root. Oui câest une mauvaise pratique, et nous ne le ferons que temporairement, car les fichiers qui se trouvent dans validators
appartiennent Ă root.
Pour ce faire, il faut aller éditer le fichier /etc/ssh/sshd_config et changer la ligne « PermitRootLogin no » en « PermitRootLogin yes« . Pour que cette modification ait lieu, il faut ensuite redémarrer le service ssh : sudo systemctl restart ssh.
Maintenant vous pouvez vous déconnecter de la machine (exit), et vous déplacer dans le dossier Validateurs que nous avions créé précédemment.
cd ~/validateurs
De lĂ il ne nous reste plus quâĂ copier le dossiers validators ainsi que les dossiers secrets et wallets (les derniers ne sont pas nĂ©cessaires mais ils son pratiques). Bien sĂ»r il vous faut remplacer numerodeportssh, utilisateur, et adresseip (et mainnet si vous utilisez un testnet).
scp -r -P numerodeportssh root@adresseip:/home/utilisateur/lighthouse-docker/lighthouse-data/mainnet/validators .
scp -r -P numerodeportssh root@adresseip:/home/utilisateur/lighthouse-docker/lighthouse-data/mainnet/secrets .
scp -r -P numerodeportssh root@adresseip:/home/utilisateur/lighthouse-docker/lighthouse-data/mainnet/wallets .
Une fois cette opération effectuée, vous pouvez retourner sur le serveur et retirer le login en tant que root (PermitRootLogin).
Maintenant il faut faire le chemin inverse : câest Ă dire envoyer vos dossiers validators et secrets sur votre nouvelle machine, dans le bon rĂ©pertoire. Je pars du principe ici que la nouvelle machine est dĂ©jĂ crĂ©e, et que vous avez dĂ©jĂ clonĂ© les repo lighthouse-docker (que vous avez suivi ce tuto quoi !). Assurez-vous aussi que PermitRootLogin est mis sur yes. La manipulation est simple :
scp -r -P numerodeportssh validators root@adresseip:/home/utilisateur/lighthouse-docker/lighthouse-data/mainnet/validators
scp -r -P numerodeportssh wallets utilisateur@adresseip:/home/utilisateur/lighthouse-docker/lighthouse-data/mainnet/wallets
scp -r -P numerodeportssh secrets utilisateur@adresseip:/home/utilisateur/lighthouse-docker/lighthouse-data/mainnet/secrets
Enfin nous allons copier le dossier validator_keys afin quâil soit sur notre serveur aussi :
scp -r -P numerodeport ~/validateurs/validator_keys utilisateur@adresseip:lighthouse-docker/validator_keys
Et voilà ! Le tour est joué ! Vous pouvez commencer à valider sur cette nouvelle machine ! Assurez-vous de bien avoir remis PermitRootLogin no, et assurez-vous de bien avoir éteint votre ancienne machine !
Eh oui, en tant que validateur sur le rĂ©seau, il vous faudra vous assurer dâĂȘtre Ă jour !
Dâabord Ă©teindre grafana et prometheus :
cd ~/lighthouse-metrics
sudo docker-compose down
Puis Ă©teindre le BN, geth et les VC en attachant tmux
tmux a
Puis en lâinterrompant (CTRL+c), puis en le stoppant :
sudo docker-compose down
Quittez votre session tmux en appuyant sur CTRL+d.
Maintenant vous pouvez mettre Ă jour les paquets :
sudo apt update && sudo apt upgrade
Puis mettre Ă jour les logiciels :
cd ~/lighthouse-metrics && git checkout . && git pull origin stable && sudo docker-compose pull
cd ~/lighthouse-docker && git checkout . && git pull && sudo docker-compose pull
Maintenant il faut retourner Ă lâĂ©tape de crĂ©ation du fichier .env (en haut de cette page !), puis vous pourrez relancer les logiciels : dâabord tmux, puis sudo docker-compose up, puis CTRL+b, puis d, ensuite cd ~/lighthouse-metrics, puis sudo docker-compose up -d !
The post Guide pour dĂ©butants : staker sur Ethereum 2 ! first appeared on Ethereum France.Temps de lecture : 6 minutes Nexo est une plateforme de lending, elle vous permet de dĂ©poser vos cryptomonnaies et de gagner des intĂ©rĂȘts dessus, elle vous permet Ă©galement dâemprunter des cryptomonnaies Ă hauteur de vos fonds. Quâest-ce que Nexo ? Nexo est une application disponible
Lâarticle Nexo : avis et tutoriel est apparu en premier sur Cryptogains.fr.
Temps de lecture : 4 minutes BlockFi est une plateforme de lending, elle vous permet de dĂ©poser vos cryptomonnaies et de gagner des intĂ©rĂȘts dessus, elle vous permet Ă©galement dâemprunter des cryptomonnaies Ă hauteur de vos fonds. Quâest-ce que BlockFi ? BlockFi est une application disponible
Lâarticle BlockFi : avis et tutoriel est apparu en premier sur Cryptogains.fr.
Le testnet d'Ethereum 2.0 a connu des problÚmes ces derniers jours. De quoi repousser à nouveau la mise à jour du deuxiÚme réseau de crypto-monnaie ?
Lâarticle Couacs sur le testnet dâEthereum 2.0 : la stabilitĂ© du rĂ©seau en question est apparu en premier sur Cryptoast.