La blockchain Tezos
- Introduction à la blockchain et au consensus.
- Architecture et enjeux.
- Gouvernance en chaîne.
- Discussion vérification formelle.
- Les cas d'usage par segment (finance, énergie, logistique, agroalimentaire...).
- Les interfaçages possibles de la blockchain avec d'autres technologies comme le big data, l'Internet des objets, l'IA.
Interactions avec la blockchain Tezos
- Installation.
- Lancement d'un nœud.
- Outil de ligne de commande.
- Interactions par HTTP.
Travaux pratiques
Création d'un nœud en sandbox et transactions.
Les langages Michelson et Ligolang
- Michelson : smart contract (paramètres, storage, code).
- Michelson : langage et commandes, point d'accès, typage.
Travaux pratiques
Exécution d’un exemple simple avec Michelson.
Le langage Ligolang (Pascaligo)
- Les bases de la programmation fonctionnelle.
- Le langage.
- Storage, entrypoint, transaction.
- Outil de transpilation.
- Fonction anonyme.
- Bonnes pratiques.
Travaux pratiques
Simulation d’un smart contract Ligo avec manipulation de counter smart contract, smart contrat de vote.
Tests unitaires
- Paramètres d’appel et storage.
- Gestion des exceptions.
- Mise en place et utilisation de PyTezos.
Travaux pratiques
Manipulation avec counter smart contract.
Déploiement de smart contracts
- Préparation des paramètres et storage.
- Comptes et faucet.
- Simulation du déploiement.
- Déploiement/baking.
Travaux pratiques
Premier déploiement.
Invocation de smart contract
- Préparation des paramètres d'invocation.
- Exécution.
Travaux pratiques
Invocation et accès au storage.
Vérification formelle et modèle de smart contract avec Tezos
- Coq et Mi-Cho-Coq.
- Démarche et modélisation pour la vérification formelle.
- La librairie SmartPy.
- Interactions entre smart contracts et "polymorphism".
Travaux pratiques
Exemple de vote. Multisig et proxy.