Ethereum (ETH)

Ethereum est un environnement qui permet de créer des applications distribuées, conçu en 2014. C'est un système informatique décentralisé qui permet d’exécuter des programmes appelés contrats intelligents. Il se base sur la chaîne de blocs pour synchroniser l’état du système entre tous les nœuds participants ainsi que pour utiliser sa cryptomonnaie appelée ether.


Ethereum fournit une couche d’application décentralisée au-dessus de la chaîne de blocs pour prendre en charge les opérations au-delà de la cryptomonnaie. Cela est possible grâce à des contrats intelligents autonomes exécutés par des transactions. Étant donné que le bytecode exécutable du contrat intelligent est lui-même stocké sous forme de données en chaîne, la propriété d’immuabilité des chaînes de blocs garantit une exécution fiable du programme de contrat intelligent. De plus, la transparence du bytecode exécutable permet de vérifier son intégrité par rapport au code source compilé.


Il existe deux types de comptes dans Ethereum, chaque compte ayant une adresse de 20 octets :
  • compte détenu en externe (EOA) : Ce compte est contrôlé par un utilisateur Ethereum et possède une paire de clés publique/privée;
  • compte de contrat : Ce compte appartient à un contrat intelligent et est contrôlé par son code. Un compte de contrat contient une combinaison de bytecode de contrat intelligent et de données spécifiques au contrat et est déployé par un compte externe sur la chaîne de blocs.
Les contrats intelligents sont écrits en code Ethereum Virtual Machine (code EVM) et fournissent une interface binaire d’application (ABI) qui permet aux utilisateurs d’interagir avec elle. Un appel de fonction de contrat inclus dans une transaction est exécuté par le mineur qui a inclus la transaction dans un bloc, et est vérifié par chaque nœud qui obtient une copie du bloc. Afin d’envoyer des pièces à un autre compte, de déployer un contrat intelligent ou d’exécuter le contrat, un compte externe crée une transaction qui contient les champs indiqués dans la tableau

Le gaz est l’unité permettant de calculer le coût de chaque opération à Ethereum. Cela comprend l’exécution des codes d’opération (Opcodes) dans une fonction de contrat intelligent et le stockage des données dans l’état du compte. Le prix du gaz est calculé en ether et est librement défini par l’expéditeur de la transaction; cependant, les utilisateurs devraient définir un prix élevé de gaz afin d’encourager les mineurs à ajouter rapidement leurs transactions à un bloc.


nonce Le nombre de transactions envoyées par le compte. Il incrémente chaque fois que ce compte envoie une transaction prix du gaz
Ressources
State Channels
  • https://www.jeffcoleman.ca/state-channels/
  • https://tik-old.ee.ethz.ch/file//716b955c130e6c703fac336ea17b1670/duplex-micropayment-channels.pdf
  • Ethereum Yellow Paper : https://ethereum.github.io/yellowpaper/paper.pdf
  • Ethereum Wiki : https://eth.wiki/en/fundamentals/
  • Sharding : https://vitalik.ca/general/2017/12/31/sharding_faq.html

Commentaires

Posts les plus consultés de ce blog

Sécurité des Applications

Principes de la Programmation Orientée Objet

Principe de Responsabilité Unique