Origines et fondamentaux de la Blockchain et des cryptomonnaies
- Contexte historique de la publication de NAKAMOTO.
- Différences avec une bases de données centralisée.
- Cycle de vie d'une transaction Bloackchain.
- Zoom sur la première application : le bitcoin.
- Quelles limites pour les Blockchain dites "1.0".
Travaux pratiques
Utiliser un explorateur de Blockchain (bitcoin).
Blockchain et cryptomonnaies 2ème génération : évolution des cas d'usage
- Blockchain 2.0 et Ethereum
- Qu’est ce qu’un smart-contract.
- Les différents types de comptes Ethereum.
Travaux pratiques
Exécuter une première transaction. Echanger de la cryptomonnaie entre participants.
Déployer un smart contract
- Introduction à la théorie pour connaître et s’aligner sur les termes et les définitions.
- Mise en pratique : utilisation de Metamask.
- Miner et s’échanger des token : comprendre la gestion du gas.
- Rappel théorique clef privée/publique : gestion de la seed.
- OpenZeppelin : comprendre et utiliser l’ERC20/21.
- Utilisation de Remix.
Travaux pratiques
Apprendre à coder et déployer un Smart Contract sur l'un des réseaux de test public d’Ethereum : le réseau Rinkeby.
Coder et déployer sa première DApp (Decentralized Application)
- Utilisation de Truffle.
- Utilisation de Ganache pour le déploiement local.
- Tests unitaires sur les smart contract.
- Utilisation de l’API Web3 pour Contract ABI.
- Utilisation d’Infura (connexion à un noeud).
- Déploiement d’une DApp.
Travaux pratiques
Créer une DApp et la déployer.
Initialiser un réseau Ethereum et faire circuler de la valeur
- Rappel sur les différents types de nœud : light node et full node.
- Les différents types de consensus : proof of work, proof of authority.
- Initialisation de la virtual machine.
- Présentation de Parity.
- Utilisation de Geth.
- Cas d’utilisation concrets : blocs non validés, scan.
- Ethereum 2.0 : enjeux et opportunités.
- Cas d'usage par segment (finance, énergie, logistique, agroalimentaire) et interfaçages possibles (big data, IoT, IA).
Travaux pratiques
Initialiser un nœud, créer un réseau, faire circuler de la valeur.