Apprendre EOSIO avec Lena: Webinaire Block.one (1/3)

Block.one a annoncé une série de webinaires qui sont libres d'y assister. Le premier webinaire «En savoir plus sur la blockchain et EOSIO» est terminé. Ne vous inquiétez pas si vous l'avez manqué, l'enregistrement est gratuit pour que chacun récapitule.

Au cours de ce webinaire, nous pouvons apprendre l'essentiel sur la blockchain et EOSIO. Et l'orateur est Angus Maidment. Il est avocat des relations avec les développeurs chez Block.one. Son webinaire a couvert 7 parties. Jetons-y donc un coup d'œil avec le PPT d'Angus.

Qu'est-ce que la blockchain?

Autrement dit, la blockchain est une base de données de registres distribués décentralisée. Nous devons nous concentrer sur deux points: la décentralisation et les bases de données du grand livre distribué. Pour aider les nouveaux arrivants à la blockchain à comprendre ce que cela signifie, faisons une métaphore: dans un village, il y a un comptable qui est chargé d'enregistrer toutes les transactions qui ont lieu dans le village. Ensuite, des problèmes peuvent facilement survenir, par exemple, les villageois et le comptable ont des chances de falsifier le grand livre à des fins lucratives, etc. Mais après l'adoption de la technologie de la blockchain, tout le monde dans le village gardera et mettra à jour le grand livre ensemble. Le grand livre de tout le monde est synchronisé. Si une personne veut manipuler le grand livre général, elle doit convaincre les autres de changer leurs grands livres ensemble. C'est évidemment impossible. Cet exemple explique également ce qu'est la décentralisation. Il n'y a pas de centre, tout le monde est un centre.

Une blockchain est une chaîne de blocs de données. Tous les blocs sont liés entre eux à l'aide de la cryptographie. Chaque bloc contient un hachage cryptographique du bloc précédent, un horodatage et des données de transaction. Jusqu'à présent, nous pouvons facilement comprendre pourquoi la blockchain a des fonctionnalités comme celles-ci: elle est sécurisée, les données enregistrées dans une blockchain sont inviolables, tous les nœuds ont accès pour consulter les données, et il n'est pas nécessaire d'obtenir l'approbation d'un tiers. Angus a également présenté les propriétés de la blockchain dans le webinaire.

Parmi ces propriétés, je voudrais partager avec vous quelques faits amusants sur la tolérance aux pannes byzantine. En 1982, Leslie Lamport a introduit le «problème des généraux byzantins» dans son article. Byzance était la capitale de l'Empire romain oriental. A cette époque, en raison de son vaste territoire, chaque armée était éloignée les unes des autres. La communication entre les armées ne pouvait donc être assurée que par des messagers. Lorsque la guerre éclate, il est inévitable qu'il y ait des traîtres ou des espions dans l'armée. Un général d'une armée reçoit des messages apportés par des messagers d'autres armées, et le général décide d'attaquer ou non en fonction de tous les messages reçus. Nous ne pouvons ni garantir que tous les messages des messagers sont vrais, ni que chaque général est loyal. C'est alors qu'un consensus est nécessaire. Avec le fait qu'il existe des membres peu fiables, nous devons faire de notre mieux pour nous assurer que tous les généraux fidèles ne seront pas affectés par des traîtres ou des espions, donc il y aura plus de chances de succès.

Nous pouvons réellement considérer le général comme chaque ordinateur individuel et le messager comme le réseau. Le «problème des généraux byzantins» peut également amener différents membres du réseau à tirer des conclusions différentes sur la stratégie de l'ensemble de la collaboration, compromettant ainsi la cohérence du système. La technologie byzantine de tolérance aux pannes est conçue pour gérer les comportements anormaux, y compris les erreurs matérielles, la congestion du réseau et les attaques malveillantes.

Comment fonctionne une blockchain

Comme nous l'avons mentionné précédemment, les données enregistrées dans la blockchain sont cryptées par des techniques cryptographiques. Le hachage cryptographique est un algorithme très courant utilisé dans la blockchain pour vérifier l'authenticité des données. Une fonction de hachage est implémentée à l'aide d'un code informatique. Avoir quelques fonctionnalités de base comme:

  1. Vous pouvez entrer une chaîne de n'importe quelle taille et différentes entrées obtiendront différentes sorties.
  2. y = hachage (x), et en entrant la valeur de x, il est facile d'obtenir la valeur de y. Mais connaissant la valeur y, il sera très difficile de revenir à la valeur d'entrée de x. Il faudrait un dénombrement violent et il n'y a pas de raccourcis.

Voici un schéma du webinaire d'Angus pour faciliter une meilleure compréhension. La boîte bleue contient des données sur le bloc. Nous pouvons voir que deux racines Merkle sont incluses ici, une pour les actions et une pour les transactions. Merkle Root est également une valeur de hachage, l'entrée est des données de transaction. J'ai dessiné un schéma ci-dessous pour vous aider à comprendre.

Vous pouvez voir sur le diagramme que le bloc actuel contiendra la valeur de hachage du bloc précédent et le bloc suivant contiendra la valeur de hachage du bloc actuel. Même de petits changements dans les données d'entrée obtiendront une sortie complètement différente. Si vous modifiez les données de transaction, la racine Merkle sera différente. Ainsi, la valeur de hachage de l'en-tête de bloc sera modifiée et affectera successivement tous les blocs suivants. Cela peut également expliquer pourquoi les données stockées sur la blockchain sont immuables.

Explication du consensus

Le consensus est de savoir comment les participants au réseau parviennent à un accord. Un mécanisme de consensus est un noyau de la blockchain, qui est d'assurer la cohérence du système de blockchain dans une architecture distribuée. Le premier mécanisme consensuel est la preuve de travail. Jusqu'à présent, plusieurs mécanismes de consensus communs de la blockchain sont les suivants:

  1. Preuve de travail (POW)
  2. Preuve de participation (POS)
  3. Preuve de participation déléguée (DPOS)
  4. Tolérance de panne byzantine pratique (PBFT)
  5. BFT délégué (dBFT)

Le consensus EOSIO se fait en 2 couches, qui sont des BFT asynchrones (les producteurs de blocs créent efficacement une source de vérité unique pour la blockchain) et un accès et des privilèges flexibles (quels nœuds peuvent être bps et quel accès les autres nœuds ont est contrôlé par smart contrats).  

Ici, Angus a parlé des défis historiques des plateformes de blockchain. Les DApps, les explorations de blocs, les portefeuilles, etc. doivent accéder à l'historique pour fonctionner correctement, mais l'exécution d'un historique complet sur le réseau principal EOS est désormais très coûteuse, complexe et prend du temps. La série EOS Hot Sauce d'EOS Nation couvre également des actualités sur les défis historiques. Le plus récent concerne Hyperion. Il s'agit d'une API d'historique open source développée par EOS Rio qui a été lancée il y a 1 an comme solution à un goulot d'étranglement historique important sur EOS à l'époque. Si cela vous intéresse, n'hésitez pas à consulter l'épisode 56e de sauce piquante EOS et vous pouvez également y trouver d'autres nouvelles épicées.

Blockchain EOSIO, fonctionnalités EOSIO, écosystème EOSIO et outils de développement EOSIO

Tel qu'écrit dans le PPT d'Angus, EOSIO est un protocole de blockchain open source de nouvelle génération, largement reconnu comme la plateforme de blockchain la plus performante pour les développeurs. C'est la solution de blockchain la plus rapide, la plus évolutive et la plus conviviale disponible. J'encourage tout le monde à regarder l'enregistrement du webinaire, afin que vous puissiez mieux connaître EOSIO avec l'introduction détaillée d'Angus.

Et EOS Hot Sauce couvre également les applications et les outils blockchain utilisant EOSIO. Vous pouvez toujours trouver des nouvelles épicées sur certaines applications mentionnées dans le PPT d'Angus. Par exemple, Moonlighting, UPLAND, LiquidApps, etc. Chaque projet inclus dans la sauce piquante EOS est le projet qui, selon nous, peut apporter de la valeur à l'écosystème EOSIO.

Enfin, Angus a présenté la communauté des développeurs. Le portail des développeurs EOSIO est certainement un excellent endroit pour commencer avec EOSIO et essayer EOSIO. Il y a un jeu nommé "Elemental Battles" qui basé sur EOSIO est disponible pour vous d'apprendre. Challenge en ligne et Hackathon sont également disponibles pour vous de participer.

Quel webinaire détaillé et intéressant! Si vous l'avez manqué, vous pouvez toujours trouver du temps et regarder son résumer.

Lena Wang est une stagiaire d'EOS Nation qui est avec nous depuis près de 2 ans maintenant. En 2015, Lena a commencé ses études universitaires à la faculté d'informatique de l'Université du Sichuan. Pour l'instant, elle étudie pour sa maîtrise avec une bourse complète à l'Université du Sichuan, située à Chengdu, en Chine. En raison de son diplôme, elle s'intéresse beaucoup à la blockchain et elle est honorée de faire partie d'EOS Nation et de faire quelques contributions en écrivant et en traduisant des articles sur EOSIO. 

Daniel Keyes

Chef de l'exploitation (COO)
Les responsabilités incluent: gestion de produit, opérations, communauté
Lieu: Toronto, Canada

Avant de fonder la première communauté EOS à Toronto et de cofonder EOS Nation, Daniel a passé une décennie dans le secteur de la technologie financière en jouant divers rôles. Sa vaste expérience dans les domaines du service client, des ventes, du coaching commercial, de la formation des agents, du marketing numérique, de la gestion de processus numériques (ceinture verte maigre) et de la gestion de produits (Scrum Master certifié, propriétaire de produit certifié) l'a finalement amené à consulter pour un magasin de développement Blockchain.

Daniel a obtenu un baccalauréat en journalisme de l'Université Ryerson en 2009 et a travaillé comme chercheur stagiaire à Global TV.

Daniel vit selon les principes de vérité, d'amour et de liberté.