How does ethereum work, anyway ?


#1

Un très bon article pour comprendre le fonctionnement interne d’ethereum - complet et simple.

Peut être utile pour comprendre les propositions de @nanocryk sur la RFC5.


#2

L’article à l’air d’être assez précis, c’est cool :slight_smile:

Par contre il y a des différences fondamentales entre Ethereum et RFC5/FYgg :

  • dans FYgg il n’y a pas de comptes, et tout est représenté par des jetons
  • dans FYgg les scripts ne font que de la vérification. Les nouveaux jetons sont générés à l’exterieur de la chaîne, et la validité de leur contenu est vérifiée par les scripts. Pour les scripts les plus simples où on verifie des égalités, on peut déduire le calcul des nouveaux jetons via le code de vérification, mais ce n’est plus possible pour des situations plus complèxes. Exemple : le jeton de bloc qui devra avoir une proof of work valide. Le script ne fera que vérifier la validité du hash, de l’éméteur, de la date etc, mais le calcul de hash lui n’est pas décrit (ce qui est logique car seule la vérification est importante pour le reste du réseau).
  • les contrats d’Ethereum prendront la forme d’un ensemble de jetons correspondant au “storage” des contrats. Un avantage est qu’il est possible de vérifier plusieurs transactions en parallèle si elles n’ont pas de conflis (si plusieurs transactions “lisent” des jetons sans les consommer, ils n’ont alors aucunes influences entre eux). Le langage de script suivant un style fonctionnel, l’éxécution elle même des scripts est parallélisable. Enfin, via la communication inter-blockchain inclue nativement dans le système, on a une solution de sharding qui n’est toujours pas trouvée dans Ethereum.